]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - test/src/tsx-commit.ptt
Import Intel Processor Trace library.
[FreeBSD/FreeBSD.git] / test / src / tsx-commit.ptt
1 ; Copyright (c) 2013-2018, Intel Corporation
2 ;
3 ; Redistribution and use in source and binary forms, with or without
4 ; modification, are permitted provided that the following conditions are met:
5 ;
6 ;  * Redistributions of source code must retain the above copyright notice,
7 ;    this list of conditions and the following disclaimer.
8 ;  * Redistributions in binary form must reproduce the above copyright notice,
9 ;    this list of conditions and the following disclaimer in the documentation
10 ;    and/or other materials provided with the distribution.
11 ;  * Neither the name of Intel Corporation nor the names of its contributors
12 ;    may be used to endorse or promote products derived from this software
13 ;    without specific prior written permission.
14 ;
15 ; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
16 ; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
17 ; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
18 ; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
19 ; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
20 ; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
21 ; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
22 ; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
23 ; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
24 ; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
25 ; POSSIBILITY OF SUCH DAMAGE.
26
27 ; Test that TSX commits are shown correctly.
28 ;
29
30 org 0x100000
31 bits 64
32
33 ; @pt p1: psb()
34 ; @pt p2: fup(3: %l1)
35 ; @pt p3: mode.exec(64bit)
36 ; @pt p4: psbend()
37 l1:     nop
38
39 ; @pt p5: mode.tsx(begin)
40 ; @pt p6: fup(1: %l2)
41 l2:     nop
42
43 ; @pt p7: mode.tsx(commit)
44 ; @pt p8: fup(1: %l3)
45 l3:     nop
46
47 ; @pt p9: fup(1: %l4)
48 ; @pt p10: tip.pgd(0: %l5)
49 l4:     nop
50 l5:     hlt
51
52 ; @pt .exp(ptxed)
53 ;%0l1 # nop
54 ;[begin transaction]
55 ;? %0l2 # nop
56 ;[committed]
57 ;%0l3 # nop
58 ;[disabled]
59
60
61 ; @pt .exp(ptdump)
62 ;%0p1   psb
63 ;%0p2   fup        3: %0l1
64 ;%0p3   mode.exec  cs.l
65 ;%0p4   psbend
66 ;%0p5   mode.tsx   intx
67 ;%0p6   fup        1: %?l2.2
68 ;%0p7   mode.tsx
69 ;%0p8   fup        1: %?l3.2
70 ;%0p9   fup        1: %?l4.2
71 ;%0p10  tip.pgd    0: %?l5.0