xref: /llvm-project/llvm/test/tools/llvm-mca/X86/BdVer2/resources-tbm.s (revision 9db0e72570f73e4e8aaf870201f2c1bc738baee3)
1# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
2# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=bdver2 -instruction-tables < %s | FileCheck %s
3
4bextr        $8192, %ebx, %ecx
5bextr        $8192, (%rbx), %ecx
6
7bextr        $16384, %rbx, %rcx
8bextr        $16384, (%rbx), %rcx
9
10blcfill      %eax, %ecx
11blcfill      (%rax), %ecx
12
13blcfill      %rax, %rcx
14blcfill      (%rax), %rcx
15
16blci         %eax, %ecx
17blci         (%rax), %ecx
18
19blci         %rax, %rcx
20blci         (%rax), %rcx
21
22blcic        %eax, %ecx
23blcic        (%rax), %ecx
24
25blcic        %rax, %rcx
26blcic        (%rax), %rcx
27
28blcmsk       %eax, %ecx
29blcmsk       (%rax), %ecx
30
31blcmsk       %rax, %rcx
32blcmsk       (%rax), %rcx
33
34blcs         %eax, %ecx
35blcs         (%rax), %ecx
36
37blcs         %rax, %rcx
38blcs         (%rax), %rcx
39
40blsfill      %eax, %ecx
41blsfill      (%rax), %ecx
42
43blsfill      %rax, %rcx
44blsfill      (%rax), %rcx
45
46blsic        %eax, %ecx
47blsic        (%rax), %ecx
48
49blsic        %rax, %rcx
50blsic        (%rax), %rcx
51
52t1mskc       %eax, %ecx
53t1mskc       (%rax), %ecx
54
55t1mskc       %rax, %rcx
56t1mskc       (%rax), %rcx
57
58tzmsk        %eax, %ecx
59tzmsk        (%rax), %ecx
60
61tzmsk        %rax, %rcx
62tzmsk        (%rax), %rcx
63
64# CHECK:      Instruction Info:
65# CHECK-NEXT: [1]: #uOps
66# CHECK-NEXT: [2]: Latency
67# CHECK-NEXT: [3]: RThroughput
68# CHECK-NEXT: [4]: MayLoad
69# CHECK-NEXT: [5]: MayStore
70# CHECK-NEXT: [6]: HasSideEffects (U)
71
72# CHECK:      [1]    [2]    [3]    [4]    [5]    [6]    Instructions:
73# CHECK-NEXT:  2      2     2.00                        bextrl	$8192, %ebx, %ecx
74# CHECK-NEXT:  2      2     2.50    *                   bextrl	$8192, (%rbx), %ecx
75# CHECK-NEXT:  2      2     2.00                        bextrq	$16384, %rbx, %rcx
76# CHECK-NEXT:  2      2     2.50    *                   bextrq	$16384, (%rbx), %rcx
77# CHECK-NEXT:  2      2     1.00                        blcfilll	%eax, %ecx
78# CHECK-NEXT:  2      6     1.50    *                   blcfilll	(%rax), %ecx
79# CHECK-NEXT:  2      2     1.00                        blcfillq	%rax, %rcx
80# CHECK-NEXT:  2      6     1.50    *                   blcfillq	(%rax), %rcx
81# CHECK-NEXT:  2      2     1.00                        blcil	%eax, %ecx
82# CHECK-NEXT:  2      6     1.50    *                   blcil	(%rax), %ecx
83# CHECK-NEXT:  2      2     1.00                        blciq	%rax, %rcx
84# CHECK-NEXT:  2      6     1.50    *                   blciq	(%rax), %rcx
85# CHECK-NEXT:  2      2     1.00                        blcicl	%eax, %ecx
86# CHECK-NEXT:  2      6     1.50    *                   blcicl	(%rax), %ecx
87# CHECK-NEXT:  2      2     1.00                        blcicq	%rax, %rcx
88# CHECK-NEXT:  2      6     1.50    *                   blcicq	(%rax), %rcx
89# CHECK-NEXT:  2      2     1.00                        blcmskl	%eax, %ecx
90# CHECK-NEXT:  2      6     1.50    *                   blcmskl	(%rax), %ecx
91# CHECK-NEXT:  2      2     1.00                        blcmskq	%rax, %rcx
92# CHECK-NEXT:  2      6     1.50    *                   blcmskq	(%rax), %rcx
93# CHECK-NEXT:  2      2     1.00                        blcsl	%eax, %ecx
94# CHECK-NEXT:  2      6     1.50    *                   blcsl	(%rax), %ecx
95# CHECK-NEXT:  2      2     1.00                        blcsq	%rax, %rcx
96# CHECK-NEXT:  2      6     1.50    *                   blcsq	(%rax), %rcx
97# CHECK-NEXT:  2      2     1.00                        blsfilll	%eax, %ecx
98# CHECK-NEXT:  2      6     1.50    *                   blsfilll	(%rax), %ecx
99# CHECK-NEXT:  2      2     1.00                        blsfillq	%rax, %rcx
100# CHECK-NEXT:  2      6     1.50    *                   blsfillq	(%rax), %rcx
101# CHECK-NEXT:  2      2     1.00                        blsicl	%eax, %ecx
102# CHECK-NEXT:  2      6     1.50    *                   blsicl	(%rax), %ecx
103# CHECK-NEXT:  2      2     1.00                        blsicq	%rax, %rcx
104# CHECK-NEXT:  2      6     1.50    *                   blsicq	(%rax), %rcx
105# CHECK-NEXT:  2      2     1.00                        t1mskcl	%eax, %ecx
106# CHECK-NEXT:  2      6     1.50    *                   t1mskcl	(%rax), %ecx
107# CHECK-NEXT:  2      2     1.00                        t1mskcq	%rax, %rcx
108# CHECK-NEXT:  2      6     1.50    *                   t1mskcq	(%rax), %rcx
109# CHECK-NEXT:  2      2     1.00                        tzmskl	%eax, %ecx
110# CHECK-NEXT:  2      6     1.50    *                   tzmskl	(%rax), %ecx
111# CHECK-NEXT:  2      2     1.00                        tzmskq	%rax, %rcx
112# CHECK-NEXT:  2      6     1.50    *                   tzmskq	(%rax), %rcx
113
114# CHECK:      Resources:
115# CHECK-NEXT: [0.0] - PdAGLU01
116# CHECK-NEXT: [0.1] - PdAGLU01
117# CHECK-NEXT: [1]   - PdBranch
118# CHECK-NEXT: [2]   - PdCount
119# CHECK-NEXT: [3]   - PdDiv
120# CHECK-NEXT: [4]   - PdEX0
121# CHECK-NEXT: [5]   - PdEX1
122# CHECK-NEXT: [6]   - PdFPCVT
123# CHECK-NEXT: [7.0] - PdFPFMA
124# CHECK-NEXT: [7.1] - PdFPFMA
125# CHECK-NEXT: [8.0] - PdFPMAL
126# CHECK-NEXT: [8.1] - PdFPMAL
127# CHECK-NEXT: [9]   - PdFPMMA
128# CHECK-NEXT: [10]  - PdFPSTO
129# CHECK-NEXT: [11]  - PdFPU0
130# CHECK-NEXT: [12]  - PdFPU1
131# CHECK-NEXT: [13]  - PdFPU2
132# CHECK-NEXT: [14]  - PdFPU3
133# CHECK-NEXT: [15]  - PdFPXBR
134# CHECK-NEXT: [16.0] - PdLoad
135# CHECK-NEXT: [16.1] - PdLoad
136# CHECK-NEXT: [17]  - PdMul
137# CHECK-NEXT: [18]  - PdStore
138
139# CHECK:      Resource pressure per iteration:
140# CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]
141# CHECK-NEXT: 27.00  27.00   -      -      -     54.00  54.00   -      -      -      -      -      -      -      -      -      -      -      -     27.00  27.00   -      -
142
143# CHECK:      Resource pressure by instruction:
144# CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]   Instructions:
145# CHECK-NEXT:  -      -      -      -      -     2.00   2.00    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     bextrl	$8192, %ebx, %ecx
146# CHECK-NEXT:  -      -      -      -      -     2.50   2.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     bextrl	$8192, (%rbx), %ecx
147# CHECK-NEXT:  -      -      -      -      -     2.00   2.00    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     bextrq	$16384, %rbx, %rcx
148# CHECK-NEXT:  -      -      -      -      -     2.50   2.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     bextrq	$16384, (%rbx), %rcx
149# CHECK-NEXT:  -      -      -      -      -     1.00   1.00    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     blcfilll	%eax, %ecx
150# CHECK-NEXT: 1.50   1.50    -      -      -     1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -     1.50   1.50    -      -     blcfilll	(%rax), %ecx
151# CHECK-NEXT:  -      -      -      -      -     1.00   1.00    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     blcfillq	%rax, %rcx
152# CHECK-NEXT: 1.50   1.50    -      -      -     1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -     1.50   1.50    -      -     blcfillq	(%rax), %rcx
153# CHECK-NEXT:  -      -      -      -      -     1.00   1.00    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     blcil	%eax, %ecx
154# CHECK-NEXT: 1.50   1.50    -      -      -     1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -     1.50   1.50    -      -     blcil	(%rax), %ecx
155# CHECK-NEXT:  -      -      -      -      -     1.00   1.00    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     blciq	%rax, %rcx
156# CHECK-NEXT: 1.50   1.50    -      -      -     1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -     1.50   1.50    -      -     blciq	(%rax), %rcx
157# CHECK-NEXT:  -      -      -      -      -     1.00   1.00    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     blcicl	%eax, %ecx
158# CHECK-NEXT: 1.50   1.50    -      -      -     1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -     1.50   1.50    -      -     blcicl	(%rax), %ecx
159# CHECK-NEXT:  -      -      -      -      -     1.00   1.00    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     blcicq	%rax, %rcx
160# CHECK-NEXT: 1.50   1.50    -      -      -     1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -     1.50   1.50    -      -     blcicq	(%rax), %rcx
161# CHECK-NEXT:  -      -      -      -      -     1.00   1.00    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     blcmskl	%eax, %ecx
162# CHECK-NEXT: 1.50   1.50    -      -      -     1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -     1.50   1.50    -      -     blcmskl	(%rax), %ecx
163# CHECK-NEXT:  -      -      -      -      -     1.00   1.00    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     blcmskq	%rax, %rcx
164# CHECK-NEXT: 1.50   1.50    -      -      -     1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -     1.50   1.50    -      -     blcmskq	(%rax), %rcx
165# CHECK-NEXT:  -      -      -      -      -     1.00   1.00    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     blcsl	%eax, %ecx
166# CHECK-NEXT: 1.50   1.50    -      -      -     1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -     1.50   1.50    -      -     blcsl	(%rax), %ecx
167# CHECK-NEXT:  -      -      -      -      -     1.00   1.00    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     blcsq	%rax, %rcx
168# CHECK-NEXT: 1.50   1.50    -      -      -     1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -     1.50   1.50    -      -     blcsq	(%rax), %rcx
169# CHECK-NEXT:  -      -      -      -      -     1.00   1.00    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     blsfilll	%eax, %ecx
170# CHECK-NEXT: 1.50   1.50    -      -      -     1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -     1.50   1.50    -      -     blsfilll	(%rax), %ecx
171# CHECK-NEXT:  -      -      -      -      -     1.00   1.00    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     blsfillq	%rax, %rcx
172# CHECK-NEXT: 1.50   1.50    -      -      -     1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -     1.50   1.50    -      -     blsfillq	(%rax), %rcx
173# CHECK-NEXT:  -      -      -      -      -     1.00   1.00    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     blsicl	%eax, %ecx
174# CHECK-NEXT: 1.50   1.50    -      -      -     1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -     1.50   1.50    -      -     blsicl	(%rax), %ecx
175# CHECK-NEXT:  -      -      -      -      -     1.00   1.00    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     blsicq	%rax, %rcx
176# CHECK-NEXT: 1.50   1.50    -      -      -     1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -     1.50   1.50    -      -     blsicq	(%rax), %rcx
177# CHECK-NEXT:  -      -      -      -      -     1.00   1.00    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     t1mskcl	%eax, %ecx
178# CHECK-NEXT: 1.50   1.50    -      -      -     1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -     1.50   1.50    -      -     t1mskcl	(%rax), %ecx
179# CHECK-NEXT:  -      -      -      -      -     1.00   1.00    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     t1mskcq	%rax, %rcx
180# CHECK-NEXT: 1.50   1.50    -      -      -     1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -     1.50   1.50    -      -     t1mskcq	(%rax), %rcx
181# CHECK-NEXT:  -      -      -      -      -     1.00   1.00    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     tzmskl	%eax, %ecx
182# CHECK-NEXT: 1.50   1.50    -      -      -     1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -     1.50   1.50    -      -     tzmskl	(%rax), %ecx
183# CHECK-NEXT:  -      -      -      -      -     1.00   1.00    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     tzmskq	%rax, %rcx
184# CHECK-NEXT: 1.50   1.50    -      -      -     1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -     1.50   1.50    -      -     tzmskq	(%rax), %rcx
185