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
4vfmaddpd    %xmm0, %xmm1, %xmm2, %xmm3
5vfmaddpd    (%rax), %xmm1, %xmm2, %xmm3
6vfmaddpd    %xmm0, (%rax), %xmm2, %xmm3
7
8vfmaddpd    %ymm0, %ymm1, %ymm2, %ymm3
9vfmaddpd    (%rax), %ymm1, %ymm2, %ymm3
10vfmaddpd    %ymm0, (%rax), %ymm2, %ymm3
11
12vfmaddps    %xmm0, %xmm1, %xmm2, %xmm3
13vfmaddps    (%rax), %xmm1, %xmm2, %xmm3
14vfmaddps    %xmm0, (%rax), %xmm2, %xmm3
15
16vfmaddps    %ymm0, %ymm1, %ymm2, %ymm3
17vfmaddps    (%rax), %ymm1, %ymm2, %ymm3
18vfmaddps    %ymm0, (%rax), %ymm2, %ymm3
19
20vfmaddsd    %xmm0, %xmm1, %xmm2, %xmm3
21vfmaddsd    (%rax), %xmm1, %xmm2, %xmm3
22vfmaddsd    %xmm0, (%rax), %xmm2, %xmm3
23
24vfmaddss    %xmm0, %xmm1, %xmm2, %xmm3
25vfmaddss    (%rax), %xmm1, %xmm2, %xmm3
26vfmaddss    %xmm0, (%rax), %xmm2, %xmm3
27
28vfmaddsubpd %xmm0, %xmm1, %xmm2, %xmm3
29vfmaddsubpd (%rax), %xmm1, %xmm2, %xmm3
30vfmaddsubpd %xmm0, (%rax), %xmm2, %xmm3
31
32vfmaddsubpd %ymm0, %ymm1, %ymm2, %ymm3
33vfmaddsubpd (%rax), %ymm1, %ymm2, %ymm3
34vfmaddsubpd %ymm0, (%rax), %ymm2, %ymm3
35
36vfmaddsubps %xmm0, %xmm1, %xmm2, %xmm3
37vfmaddsubps (%rax), %xmm1, %xmm2, %xmm3
38vfmaddsubps %xmm0, (%rax), %xmm2, %xmm3
39
40vfmaddsubps %ymm0, %ymm1, %ymm2, %ymm3
41vfmaddsubps (%rax), %ymm1, %ymm2, %ymm3
42vfmaddsubps %ymm0, (%rax), %ymm2, %ymm3
43
44vfmsubaddpd %xmm0, %xmm1, %xmm2, %xmm3
45vfmsubaddpd (%rax), %xmm1, %xmm2, %xmm3
46vfmsubaddpd %xmm0, (%rax), %xmm2, %xmm3
47
48vfmsubaddpd %ymm0, %ymm1, %ymm2, %ymm3
49vfmsubaddpd (%rax), %ymm1, %ymm2, %ymm3
50vfmsubaddpd %ymm0, (%rax), %ymm2, %ymm3
51
52vfmsubaddps %xmm0, %xmm1, %xmm2, %xmm3
53vfmsubaddps (%rax), %xmm1, %xmm2, %xmm3
54vfmsubaddps %xmm0, (%rax), %xmm2, %xmm3
55
56vfmsubaddps %ymm0, %ymm1, %ymm2, %ymm3
57vfmsubaddps (%rax), %ymm1, %ymm2, %ymm3
58vfmsubaddps %ymm0, (%rax), %ymm2, %ymm3
59
60vfmsubpd    %xmm0, %xmm1, %xmm2, %xmm3
61vfmsubpd    (%rax), %xmm1, %xmm2, %xmm3
62vfmsubpd    %xmm0, (%rax), %xmm2, %xmm3
63
64vfmsubpd    %ymm0, %ymm1, %ymm2, %ymm3
65vfmsubpd    (%rax), %ymm1, %ymm2, %ymm3
66vfmsubpd    %ymm0, (%rax), %ymm2, %ymm3
67
68vfmsubps    %xmm0, %xmm1, %xmm2, %xmm3
69vfmsubps    (%rax), %xmm1, %xmm2, %xmm3
70vfmsubps    %xmm0, (%rax), %xmm2, %xmm3
71
72vfmsubps    %ymm0, %ymm1, %ymm2, %ymm3
73vfmsubps    (%rax), %ymm1, %ymm2, %ymm3
74vfmsubps    %ymm0, (%rax), %ymm2, %ymm3
75
76vfmsubsd    %xmm0, %xmm1, %xmm2, %xmm3
77vfmsubsd    (%rax), %xmm1, %xmm2, %xmm3
78vfmsubsd    %xmm0, (%rax), %xmm2, %xmm3
79
80vfmsubss    %xmm0, %xmm1, %xmm2, %xmm3
81vfmsubss    (%rax), %xmm1, %xmm2, %xmm3
82vfmsubss    %xmm0, (%rax), %xmm2, %xmm3
83
84vfnmaddpd   %xmm0, %xmm1, %xmm2, %xmm3
85vfnmaddpd   (%rax), %xmm1, %xmm2, %xmm3
86vfnmaddpd   %xmm0, (%rax), %xmm2, %xmm3
87
88vfnmaddpd   %ymm0, %ymm1, %ymm2, %ymm3
89vfnmaddpd   (%rax), %ymm1, %ymm2, %ymm3
90vfnmaddpd   %ymm0, (%rax), %ymm2, %ymm3
91
92vfnmaddps   %xmm0, %xmm1, %xmm2, %xmm3
93vfnmaddps   (%rax), %xmm1, %xmm2, %xmm3
94vfnmaddps   %xmm0, (%rax), %xmm2, %xmm3
95
96vfnmaddps   %ymm0, %ymm1, %ymm2, %ymm3
97vfnmaddps   (%rax), %ymm1, %ymm2, %ymm3
98vfnmaddps   %ymm0, (%rax), %ymm2, %ymm3
99
100vfnmaddsd   %xmm0, %xmm1, %xmm2, %xmm3
101vfnmaddsd   (%rax), %xmm1, %xmm2, %xmm3
102vfnmaddsd   %xmm0, (%rax), %xmm2, %xmm3
103
104vfnmaddss   %xmm0, %xmm1, %xmm2, %xmm3
105vfnmaddss   (%rax), %xmm1, %xmm2, %xmm3
106vfnmaddss   %xmm0, (%rax), %xmm2, %xmm3
107
108vfnmsubpd   %xmm0, %xmm1, %xmm2, %xmm3
109vfnmsubpd   (%rax), %xmm1, %xmm2, %xmm3
110vfnmsubpd   %xmm0, (%rax), %xmm2, %xmm3
111
112vfnmsubpd   %ymm0, %ymm1, %ymm2, %ymm3
113vfnmsubpd   (%rax), %ymm1, %ymm2, %ymm3
114vfnmsubpd   %ymm0, (%rax), %ymm2, %ymm3
115
116vfnmsubps   %xmm0, %xmm1, %xmm2, %xmm3
117vfnmsubps   (%rax), %xmm1, %xmm2, %xmm3
118vfnmsubps   %xmm0, (%rax), %xmm2, %xmm3
119
120vfnmsubps   %ymm0, %ymm1, %ymm2, %ymm3
121vfnmsubps   (%rax), %ymm1, %ymm2, %ymm3
122vfnmsubps   %ymm0, (%rax), %ymm2, %ymm3
123
124vfnmsubsd   %xmm0, %xmm1, %xmm2, %xmm3
125vfnmsubsd   (%rax), %xmm1, %xmm2, %xmm3
126vfnmsubsd   %xmm0, (%rax), %xmm2, %xmm3
127
128vfnmsubss   %xmm0, %xmm1, %xmm2, %xmm3
129vfnmsubss   (%rax), %xmm1, %xmm2, %xmm3
130vfnmsubss   %xmm0, (%rax), %xmm2, %xmm3
131
132# CHECK:      Instruction Info:
133# CHECK-NEXT: [1]: #uOps
134# CHECK-NEXT: [2]: Latency
135# CHECK-NEXT: [3]: RThroughput
136# CHECK-NEXT: [4]: MayLoad
137# CHECK-NEXT: [5]: MayStore
138# CHECK-NEXT: [6]: HasSideEffects (U)
139
140# CHECK:      [1]    [2]    [3]    [4]    [5]    [6]    Instructions:
141# CHECK-NEXT:  1      5     1.50                        vfmaddpd	%xmm0, %xmm1, %xmm2, %xmm3
142# CHECK-NEXT:  1      10    1.50    *                   vfmaddpd	(%rax), %xmm1, %xmm2, %xmm3
143# CHECK-NEXT:  1      10    1.50    *                   vfmaddpd	%xmm0, (%rax), %xmm2, %xmm3
144# CHECK-NEXT:  2      5     1.50                        vfmaddpd	%ymm0, %ymm1, %ymm2, %ymm3
145# CHECK-NEXT:  2      10    1.50    *                   vfmaddpd	(%rax), %ymm1, %ymm2, %ymm3
146# CHECK-NEXT:  2      10    1.50    *                   vfmaddpd	%ymm0, (%rax), %ymm2, %ymm3
147# CHECK-NEXT:  1      5     1.50                        vfmaddps	%xmm0, %xmm1, %xmm2, %xmm3
148# CHECK-NEXT:  1      10    1.50    *                   vfmaddps	(%rax), %xmm1, %xmm2, %xmm3
149# CHECK-NEXT:  1      10    1.50    *                   vfmaddps	%xmm0, (%rax), %xmm2, %xmm3
150# CHECK-NEXT:  2      5     1.50                        vfmaddps	%ymm0, %ymm1, %ymm2, %ymm3
151# CHECK-NEXT:  2      10    1.50    *                   vfmaddps	(%rax), %ymm1, %ymm2, %ymm3
152# CHECK-NEXT:  2      10    1.50    *                   vfmaddps	%ymm0, (%rax), %ymm2, %ymm3
153# CHECK-NEXT:  1      5     1.50                        vfmaddsd	%xmm0, %xmm1, %xmm2, %xmm3
154# CHECK-NEXT:  1      10    1.50    *                   vfmaddsd	(%rax), %xmm1, %xmm2, %xmm3
155# CHECK-NEXT:  1      10    1.50    *                   vfmaddsd	%xmm0, (%rax), %xmm2, %xmm3
156# CHECK-NEXT:  1      5     1.50                        vfmaddss	%xmm0, %xmm1, %xmm2, %xmm3
157# CHECK-NEXT:  1      10    1.50    *                   vfmaddss	(%rax), %xmm1, %xmm2, %xmm3
158# CHECK-NEXT:  1      10    1.50    *                   vfmaddss	%xmm0, (%rax), %xmm2, %xmm3
159# CHECK-NEXT:  1      5     1.50                        vfmaddsubpd	%xmm0, %xmm1, %xmm2, %xmm3
160# CHECK-NEXT:  1      10    1.50    *                   vfmaddsubpd	(%rax), %xmm1, %xmm2, %xmm3
161# CHECK-NEXT:  1      10    1.50    *                   vfmaddsubpd	%xmm0, (%rax), %xmm2, %xmm3
162# CHECK-NEXT:  2      5     1.50                        vfmaddsubpd	%ymm0, %ymm1, %ymm2, %ymm3
163# CHECK-NEXT:  2      10    1.50    *                   vfmaddsubpd	(%rax), %ymm1, %ymm2, %ymm3
164# CHECK-NEXT:  2      10    1.50    *                   vfmaddsubpd	%ymm0, (%rax), %ymm2, %ymm3
165# CHECK-NEXT:  1      5     1.50                        vfmaddsubps	%xmm0, %xmm1, %xmm2, %xmm3
166# CHECK-NEXT:  1      10    1.50    *                   vfmaddsubps	(%rax), %xmm1, %xmm2, %xmm3
167# CHECK-NEXT:  1      10    1.50    *                   vfmaddsubps	%xmm0, (%rax), %xmm2, %xmm3
168# CHECK-NEXT:  2      5     1.50                        vfmaddsubps	%ymm0, %ymm1, %ymm2, %ymm3
169# CHECK-NEXT:  2      10    1.50    *                   vfmaddsubps	(%rax), %ymm1, %ymm2, %ymm3
170# CHECK-NEXT:  2      10    1.50    *                   vfmaddsubps	%ymm0, (%rax), %ymm2, %ymm3
171# CHECK-NEXT:  1      5     1.50                        vfmsubaddpd	%xmm0, %xmm1, %xmm2, %xmm3
172# CHECK-NEXT:  1      10    1.50    *                   vfmsubaddpd	(%rax), %xmm1, %xmm2, %xmm3
173# CHECK-NEXT:  1      10    1.50    *                   vfmsubaddpd	%xmm0, (%rax), %xmm2, %xmm3
174# CHECK-NEXT:  2      5     1.50                        vfmsubaddpd	%ymm0, %ymm1, %ymm2, %ymm3
175# CHECK-NEXT:  2      10    1.50    *                   vfmsubaddpd	(%rax), %ymm1, %ymm2, %ymm3
176# CHECK-NEXT:  2      10    1.50    *                   vfmsubaddpd	%ymm0, (%rax), %ymm2, %ymm3
177# CHECK-NEXT:  1      5     1.50                        vfmsubaddps	%xmm0, %xmm1, %xmm2, %xmm3
178# CHECK-NEXT:  1      10    1.50    *                   vfmsubaddps	(%rax), %xmm1, %xmm2, %xmm3
179# CHECK-NEXT:  1      10    1.50    *                   vfmsubaddps	%xmm0, (%rax), %xmm2, %xmm3
180# CHECK-NEXT:  2      5     1.50                        vfmsubaddps	%ymm0, %ymm1, %ymm2, %ymm3
181# CHECK-NEXT:  2      10    1.50    *                   vfmsubaddps	(%rax), %ymm1, %ymm2, %ymm3
182# CHECK-NEXT:  2      10    1.50    *                   vfmsubaddps	%ymm0, (%rax), %ymm2, %ymm3
183# CHECK-NEXT:  1      5     1.50                        vfmsubpd	%xmm0, %xmm1, %xmm2, %xmm3
184# CHECK-NEXT:  1      10    1.50    *                   vfmsubpd	(%rax), %xmm1, %xmm2, %xmm3
185# CHECK-NEXT:  1      10    1.50    *                   vfmsubpd	%xmm0, (%rax), %xmm2, %xmm3
186# CHECK-NEXT:  2      5     1.50                        vfmsubpd	%ymm0, %ymm1, %ymm2, %ymm3
187# CHECK-NEXT:  2      10    1.50    *                   vfmsubpd	(%rax), %ymm1, %ymm2, %ymm3
188# CHECK-NEXT:  2      10    1.50    *                   vfmsubpd	%ymm0, (%rax), %ymm2, %ymm3
189# CHECK-NEXT:  1      5     1.50                        vfmsubps	%xmm0, %xmm1, %xmm2, %xmm3
190# CHECK-NEXT:  1      10    1.50    *                   vfmsubps	(%rax), %xmm1, %xmm2, %xmm3
191# CHECK-NEXT:  1      10    1.50    *                   vfmsubps	%xmm0, (%rax), %xmm2, %xmm3
192# CHECK-NEXT:  2      5     1.50                        vfmsubps	%ymm0, %ymm1, %ymm2, %ymm3
193# CHECK-NEXT:  2      10    1.50    *                   vfmsubps	(%rax), %ymm1, %ymm2, %ymm3
194# CHECK-NEXT:  2      10    1.50    *                   vfmsubps	%ymm0, (%rax), %ymm2, %ymm3
195# CHECK-NEXT:  1      5     1.50                        vfmsubsd	%xmm0, %xmm1, %xmm2, %xmm3
196# CHECK-NEXT:  1      10    1.50    *                   vfmsubsd	(%rax), %xmm1, %xmm2, %xmm3
197# CHECK-NEXT:  1      10    1.50    *                   vfmsubsd	%xmm0, (%rax), %xmm2, %xmm3
198# CHECK-NEXT:  1      5     1.50                        vfmsubss	%xmm0, %xmm1, %xmm2, %xmm3
199# CHECK-NEXT:  1      10    1.50    *                   vfmsubss	(%rax), %xmm1, %xmm2, %xmm3
200# CHECK-NEXT:  1      10    1.50    *                   vfmsubss	%xmm0, (%rax), %xmm2, %xmm3
201# CHECK-NEXT:  1      5     1.50                        vfnmaddpd	%xmm0, %xmm1, %xmm2, %xmm3
202# CHECK-NEXT:  1      10    1.50    *                   vfnmaddpd	(%rax), %xmm1, %xmm2, %xmm3
203# CHECK-NEXT:  1      10    1.50    *                   vfnmaddpd	%xmm0, (%rax), %xmm2, %xmm3
204# CHECK-NEXT:  2      5     1.50                        vfnmaddpd	%ymm0, %ymm1, %ymm2, %ymm3
205# CHECK-NEXT:  2      10    1.50    *                   vfnmaddpd	(%rax), %ymm1, %ymm2, %ymm3
206# CHECK-NEXT:  2      10    1.50    *                   vfnmaddpd	%ymm0, (%rax), %ymm2, %ymm3
207# CHECK-NEXT:  1      5     1.50                        vfnmaddps	%xmm0, %xmm1, %xmm2, %xmm3
208# CHECK-NEXT:  1      10    1.50    *                   vfnmaddps	(%rax), %xmm1, %xmm2, %xmm3
209# CHECK-NEXT:  1      10    1.50    *                   vfnmaddps	%xmm0, (%rax), %xmm2, %xmm3
210# CHECK-NEXT:  2      5     1.50                        vfnmaddps	%ymm0, %ymm1, %ymm2, %ymm3
211# CHECK-NEXT:  2      10    1.50    *                   vfnmaddps	(%rax), %ymm1, %ymm2, %ymm3
212# CHECK-NEXT:  2      10    1.50    *                   vfnmaddps	%ymm0, (%rax), %ymm2, %ymm3
213# CHECK-NEXT:  1      5     1.50                        vfnmaddsd	%xmm0, %xmm1, %xmm2, %xmm3
214# CHECK-NEXT:  1      10    1.50    *                   vfnmaddsd	(%rax), %xmm1, %xmm2, %xmm3
215# CHECK-NEXT:  1      10    1.50    *                   vfnmaddsd	%xmm0, (%rax), %xmm2, %xmm3
216# CHECK-NEXT:  1      5     1.50                        vfnmaddss	%xmm0, %xmm1, %xmm2, %xmm3
217# CHECK-NEXT:  1      10    1.50    *                   vfnmaddss	(%rax), %xmm1, %xmm2, %xmm3
218# CHECK-NEXT:  1      10    1.50    *                   vfnmaddss	%xmm0, (%rax), %xmm2, %xmm3
219# CHECK-NEXT:  1      5     1.50                        vfnmsubpd	%xmm0, %xmm1, %xmm2, %xmm3
220# CHECK-NEXT:  1      10    1.50    *                   vfnmsubpd	(%rax), %xmm1, %xmm2, %xmm3
221# CHECK-NEXT:  1      10    1.50    *                   vfnmsubpd	%xmm0, (%rax), %xmm2, %xmm3
222# CHECK-NEXT:  2      5     1.50                        vfnmsubpd	%ymm0, %ymm1, %ymm2, %ymm3
223# CHECK-NEXT:  2      10    1.50    *                   vfnmsubpd	(%rax), %ymm1, %ymm2, %ymm3
224# CHECK-NEXT:  2      10    1.50    *                   vfnmsubpd	%ymm0, (%rax), %ymm2, %ymm3
225# CHECK-NEXT:  1      5     1.50                        vfnmsubps	%xmm0, %xmm1, %xmm2, %xmm3
226# CHECK-NEXT:  1      10    1.50    *                   vfnmsubps	(%rax), %xmm1, %xmm2, %xmm3
227# CHECK-NEXT:  1      10    1.50    *                   vfnmsubps	%xmm0, (%rax), %xmm2, %xmm3
228# CHECK-NEXT:  2      5     1.50                        vfnmsubps	%ymm0, %ymm1, %ymm2, %ymm3
229# CHECK-NEXT:  2      10    1.50    *                   vfnmsubps	(%rax), %ymm1, %ymm2, %ymm3
230# CHECK-NEXT:  2      10    1.50    *                   vfnmsubps	%ymm0, (%rax), %ymm2, %ymm3
231# CHECK-NEXT:  1      5     1.50                        vfnmsubsd	%xmm0, %xmm1, %xmm2, %xmm3
232# CHECK-NEXT:  1      10    1.50    *                   vfnmsubsd	(%rax), %xmm1, %xmm2, %xmm3
233# CHECK-NEXT:  1      10    1.50    *                   vfnmsubsd	%xmm0, (%rax), %xmm2, %xmm3
234# CHECK-NEXT:  1      5     1.50                        vfnmsubss	%xmm0, %xmm1, %xmm2, %xmm3
235# CHECK-NEXT:  1      10    1.50    *                   vfnmsubss	(%rax), %xmm1, %xmm2, %xmm3
236# CHECK-NEXT:  1      10    1.50    *                   vfnmsubss	%xmm0, (%rax), %xmm2, %xmm3
237
238# CHECK:      Resources:
239# CHECK-NEXT: [0.0] - PdAGLU01
240# CHECK-NEXT: [0.1] - PdAGLU01
241# CHECK-NEXT: [1]   - PdBranch
242# CHECK-NEXT: [2]   - PdCount
243# CHECK-NEXT: [3]   - PdDiv
244# CHECK-NEXT: [4]   - PdEX0
245# CHECK-NEXT: [5]   - PdEX1
246# CHECK-NEXT: [6]   - PdFPCVT
247# CHECK-NEXT: [7.0] - PdFPFMA
248# CHECK-NEXT: [7.1] - PdFPFMA
249# CHECK-NEXT: [8.0] - PdFPMAL
250# CHECK-NEXT: [8.1] - PdFPMAL
251# CHECK-NEXT: [9]   - PdFPMMA
252# CHECK-NEXT: [10]  - PdFPSTO
253# CHECK-NEXT: [11]  - PdFPU0
254# CHECK-NEXT: [12]  - PdFPU1
255# CHECK-NEXT: [13]  - PdFPU2
256# CHECK-NEXT: [14]  - PdFPU3
257# CHECK-NEXT: [15]  - PdFPXBR
258# CHECK-NEXT: [16.0] - PdLoad
259# CHECK-NEXT: [16.1] - PdLoad
260# CHECK-NEXT: [17]  - PdMul
261# CHECK-NEXT: [18]  - PdStore
262
263# CHECK:      Resource pressure per iteration:
264# 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]
265# CHECK-NEXT: 96.00  96.00   -      -      -      -      -      -     144.00 144.00  -      -      -      -     24.00  24.00  24.00  24.00   -     96.00  96.00   -      -
266
267# CHECK:      Resource pressure by instruction:
268# 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:
269# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfmaddpd	%xmm0, %xmm1, %xmm2, %xmm3
270# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmaddpd	(%rax), %xmm1, %xmm2, %xmm3
271# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmaddpd	%xmm0, (%rax), %xmm2, %xmm3
272# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfmaddpd	%ymm0, %ymm1, %ymm2, %ymm3
273# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmaddpd	(%rax), %ymm1, %ymm2, %ymm3
274# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmaddpd	%ymm0, (%rax), %ymm2, %ymm3
275# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfmaddps	%xmm0, %xmm1, %xmm2, %xmm3
276# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmaddps	(%rax), %xmm1, %xmm2, %xmm3
277# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmaddps	%xmm0, (%rax), %xmm2, %xmm3
278# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfmaddps	%ymm0, %ymm1, %ymm2, %ymm3
279# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmaddps	(%rax), %ymm1, %ymm2, %ymm3
280# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmaddps	%ymm0, (%rax), %ymm2, %ymm3
281# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfmaddsd	%xmm0, %xmm1, %xmm2, %xmm3
282# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmaddsd	(%rax), %xmm1, %xmm2, %xmm3
283# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmaddsd	%xmm0, (%rax), %xmm2, %xmm3
284# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfmaddss	%xmm0, %xmm1, %xmm2, %xmm3
285# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmaddss	(%rax), %xmm1, %xmm2, %xmm3
286# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmaddss	%xmm0, (%rax), %xmm2, %xmm3
287# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfmaddsubpd	%xmm0, %xmm1, %xmm2, %xmm3
288# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmaddsubpd	(%rax), %xmm1, %xmm2, %xmm3
289# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmaddsubpd	%xmm0, (%rax), %xmm2, %xmm3
290# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfmaddsubpd	%ymm0, %ymm1, %ymm2, %ymm3
291# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmaddsubpd	(%rax), %ymm1, %ymm2, %ymm3
292# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmaddsubpd	%ymm0, (%rax), %ymm2, %ymm3
293# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfmaddsubps	%xmm0, %xmm1, %xmm2, %xmm3
294# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmaddsubps	(%rax), %xmm1, %xmm2, %xmm3
295# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmaddsubps	%xmm0, (%rax), %xmm2, %xmm3
296# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfmaddsubps	%ymm0, %ymm1, %ymm2, %ymm3
297# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmaddsubps	(%rax), %ymm1, %ymm2, %ymm3
298# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmaddsubps	%ymm0, (%rax), %ymm2, %ymm3
299# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfmsubaddpd	%xmm0, %xmm1, %xmm2, %xmm3
300# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmsubaddpd	(%rax), %xmm1, %xmm2, %xmm3
301# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmsubaddpd	%xmm0, (%rax), %xmm2, %xmm3
302# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfmsubaddpd	%ymm0, %ymm1, %ymm2, %ymm3
303# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmsubaddpd	(%rax), %ymm1, %ymm2, %ymm3
304# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmsubaddpd	%ymm0, (%rax), %ymm2, %ymm3
305# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfmsubaddps	%xmm0, %xmm1, %xmm2, %xmm3
306# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmsubaddps	(%rax), %xmm1, %xmm2, %xmm3
307# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmsubaddps	%xmm0, (%rax), %xmm2, %xmm3
308# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfmsubaddps	%ymm0, %ymm1, %ymm2, %ymm3
309# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmsubaddps	(%rax), %ymm1, %ymm2, %ymm3
310# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmsubaddps	%ymm0, (%rax), %ymm2, %ymm3
311# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfmsubpd	%xmm0, %xmm1, %xmm2, %xmm3
312# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmsubpd	(%rax), %xmm1, %xmm2, %xmm3
313# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmsubpd	%xmm0, (%rax), %xmm2, %xmm3
314# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfmsubpd	%ymm0, %ymm1, %ymm2, %ymm3
315# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmsubpd	(%rax), %ymm1, %ymm2, %ymm3
316# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmsubpd	%ymm0, (%rax), %ymm2, %ymm3
317# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfmsubps	%xmm0, %xmm1, %xmm2, %xmm3
318# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmsubps	(%rax), %xmm1, %xmm2, %xmm3
319# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmsubps	%xmm0, (%rax), %xmm2, %xmm3
320# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfmsubps	%ymm0, %ymm1, %ymm2, %ymm3
321# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmsubps	(%rax), %ymm1, %ymm2, %ymm3
322# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmsubps	%ymm0, (%rax), %ymm2, %ymm3
323# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfmsubsd	%xmm0, %xmm1, %xmm2, %xmm3
324# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmsubsd	(%rax), %xmm1, %xmm2, %xmm3
325# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmsubsd	%xmm0, (%rax), %xmm2, %xmm3
326# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfmsubss	%xmm0, %xmm1, %xmm2, %xmm3
327# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmsubss	(%rax), %xmm1, %xmm2, %xmm3
328# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfmsubss	%xmm0, (%rax), %xmm2, %xmm3
329# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfnmaddpd	%xmm0, %xmm1, %xmm2, %xmm3
330# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfnmaddpd	(%rax), %xmm1, %xmm2, %xmm3
331# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfnmaddpd	%xmm0, (%rax), %xmm2, %xmm3
332# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfnmaddpd	%ymm0, %ymm1, %ymm2, %ymm3
333# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfnmaddpd	(%rax), %ymm1, %ymm2, %ymm3
334# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfnmaddpd	%ymm0, (%rax), %ymm2, %ymm3
335# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfnmaddps	%xmm0, %xmm1, %xmm2, %xmm3
336# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfnmaddps	(%rax), %xmm1, %xmm2, %xmm3
337# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfnmaddps	%xmm0, (%rax), %xmm2, %xmm3
338# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfnmaddps	%ymm0, %ymm1, %ymm2, %ymm3
339# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfnmaddps	(%rax), %ymm1, %ymm2, %ymm3
340# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfnmaddps	%ymm0, (%rax), %ymm2, %ymm3
341# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfnmaddsd	%xmm0, %xmm1, %xmm2, %xmm3
342# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfnmaddsd	(%rax), %xmm1, %xmm2, %xmm3
343# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfnmaddsd	%xmm0, (%rax), %xmm2, %xmm3
344# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfnmaddss	%xmm0, %xmm1, %xmm2, %xmm3
345# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfnmaddss	(%rax), %xmm1, %xmm2, %xmm3
346# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfnmaddss	%xmm0, (%rax), %xmm2, %xmm3
347# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfnmsubpd	%xmm0, %xmm1, %xmm2, %xmm3
348# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfnmsubpd	(%rax), %xmm1, %xmm2, %xmm3
349# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfnmsubpd	%xmm0, (%rax), %xmm2, %xmm3
350# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfnmsubpd	%ymm0, %ymm1, %ymm2, %ymm3
351# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfnmsubpd	(%rax), %ymm1, %ymm2, %ymm3
352# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfnmsubpd	%ymm0, (%rax), %ymm2, %ymm3
353# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfnmsubps	%xmm0, %xmm1, %xmm2, %xmm3
354# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfnmsubps	(%rax), %xmm1, %xmm2, %xmm3
355# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfnmsubps	%xmm0, (%rax), %xmm2, %xmm3
356# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfnmsubps	%ymm0, %ymm1, %ymm2, %ymm3
357# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfnmsubps	(%rax), %ymm1, %ymm2, %ymm3
358# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfnmsubps	%ymm0, (%rax), %ymm2, %ymm3
359# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfnmsubsd	%xmm0, %xmm1, %xmm2, %xmm3
360# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfnmsubsd	(%rax), %xmm1, %xmm2, %xmm3
361# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfnmsubsd	%xmm0, (%rax), %xmm2, %xmm3
362# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -     vfnmsubss	%xmm0, %xmm1, %xmm2, %xmm3
363# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfnmsubss	(%rax), %xmm1, %xmm2, %xmm3
364# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.25   0.25   0.25   0.25    -     1.50   1.50    -      -     vfnmsubss	%xmm0, (%rax), %xmm2, %xmm3
365