@@ -49,13 +49,13 @@ pxor %xmm2, %xmm2
49
49
50
50
# CHECK: Iterations: 1
51
51
# CHECK-NEXT: Instructions: 35
52
- # CHECK-NEXT: Total Cycles: 39
52
+ # CHECK-NEXT: Total Cycles: 37
53
53
# CHECK-NEXT: Total uOps: 35
54
54
55
55
# CHECK: Dispatch Width: 4
56
- # CHECK-NEXT: uOps Per Cycle: 0.90
57
- # CHECK-NEXT: IPC: 0.90
58
- # CHECK-NEXT: Block RThroughput: 11 .0
56
+ # CHECK-NEXT: uOps Per Cycle: 0.95
57
+ # CHECK-NEXT: IPC: 0.95
58
+ # CHECK-NEXT: Block RThroughput: 10 .0
59
59
60
60
# CHECK: Instruction Info:
61
61
# CHECK-NEXT: [1]: #uOps
@@ -79,7 +79,7 @@ pxor %xmm2, %xmm2
79
79
# CHECK-NEXT: 1 0 0.25 pcmpgtw %xmm2, %xmm2
80
80
# CHECK-NEXT: 1 3 1.00 psubb %mm2, %mm2
81
81
# CHECK-NEXT: 1 3 1.00 psubd %mm2, %mm2
82
- # CHECK-NEXT: 1 3 1.00 psubq %mm2, %mm2
82
+ # CHECK-NEXT: 1 1 0.50 psubq %mm2, %mm2
83
83
# CHECK-NEXT: 1 3 1.00 psubw %mm2, %mm2
84
84
# CHECK-NEXT: 1 0 0.25 psubb %xmm2, %xmm2
85
85
# CHECK-NEXT: 1 0 0.25 psubd %xmm2, %xmm2
@@ -118,7 +118,7 @@ pxor %xmm2, %xmm2
118
118
119
119
# CHECK: Resource pressure per iteration:
120
120
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]
121
- # CHECK-NEXT: - - 2 .00 12 .00 - 6.00 - -
121
+ # CHECK-NEXT: - - 3 .00 11 .00 - 6.00 - -
122
122
123
123
# CHECK: Resource pressure by instruction:
124
124
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:
@@ -135,7 +135,7 @@ pxor %xmm2, %xmm2
135
135
# CHECK-NEXT: - - - - - - - - pcmpgtw %xmm2, %xmm2
136
136
# CHECK-NEXT: - - - 1.00 - - - - psubb %mm2, %mm2
137
137
# CHECK-NEXT: - - - 1.00 - - - - psubd %mm2, %mm2
138
- # CHECK-NEXT: - - - 1.00 - - - - psubq %mm2, %mm2
138
+ # CHECK-NEXT: - - - - - 1.00 - - psubq %mm2, %mm2
139
139
# CHECK-NEXT: - - - 1.00 - - - - psubw %mm2, %mm2
140
140
# CHECK-NEXT: - - - - - - - - psubb %xmm2, %xmm2
141
141
# CHECK-NEXT: - - - - - - - - psubd %xmm2, %xmm2
@@ -155,48 +155,48 @@ pxor %xmm2, %xmm2
155
155
# CHECK-NEXT: - - 1.00 - - - - - pandn %xmm2, %xmm2
156
156
# CHECK-NEXT: - - - - - - - - xorps %xmm0, %xmm0
157
157
# CHECK-NEXT: - - - - - - - - xorpd %xmm1, %xmm1
158
- # CHECK-NEXT: - - - - - 1.00 - - pxor %mm2, %mm2
158
+ # CHECK-NEXT: - - 1.00 - - - - - pxor %mm2, %mm2
159
159
# CHECK-NEXT: - - - - - - - - pxor %xmm2, %xmm2
160
160
161
161
# CHECK: Timeline view:
162
- # CHECK-NEXT: 0123456789 012345678
162
+ # CHECK-NEXT: 0123456789 0123456
163
163
# CHECK-NEXT: Index 0123456789 0123456789
164
164
165
- # CHECK: [0,0] DR . . . . . . . . subl %eax, %eax
166
- # CHECK-NEXT: [0,1] DR . . . . . . . . subq %rax, %rax
167
- # CHECK-NEXT: [0,2] DR . . . . . . . . xorl %eax, %eax
168
- # CHECK-NEXT: [0,3] DR . . . . . . . . xorq %rax, %rax
169
- # CHECK-NEXT: [0,4] .DeeeER . . . . . . . pcmpgtb %mm2, %mm2
170
- # CHECK-NEXT: [0,5] .D===eeeER. . . . . . . pcmpgtd %mm2, %mm2
171
- # CHECK-NEXT: [0,6] .D======eeeER . . . . . . pcmpgtw %mm2, %mm2
172
- # CHECK-NEXT: [0,7] .D----------R . . . . . . pcmpgtb %xmm2, %xmm2
173
- # CHECK-NEXT: [0,8] . D---------R . . . . . . pcmpgtd %xmm2, %xmm2
174
- # CHECK-NEXT: [0,9] . D---------R . . . . . . pcmpgtq %xmm2, %xmm2
175
- # CHECK-NEXT: [0,10] . D---------R . . . . . . pcmpgtw %xmm2, %xmm2
176
- # CHECK-NEXT: [0,11] . D========eeeER . . . . . psubb %mm2, %mm2
177
- # CHECK-NEXT: [0,12] . D==========eeeER . . . . . psubd %mm2, %mm2
178
- # CHECK-NEXT: [0,13] . D=============eeeER . . . . psubq %mm2, %mm2
179
- # CHECK-NEXT: [0,14] . D================ eeeER. . . . psubw %mm2, %mm2
180
- # CHECK-NEXT: [0,15] . D--------------------R . . . . psubb %xmm2, %xmm2
181
- # CHECK-NEXT: [0,16] . D-------------------R . . . . psubd %xmm2, %xmm2
182
- # CHECK-NEXT: [0,17] . D-------------------R . . . . psubq %xmm2, %xmm2
183
- # CHECK-NEXT: [0,18] . D-------------------R . . . . psubw %xmm2, %xmm2
184
- # CHECK-NEXT: [0,19] . D================== eeeER . . . psubsb %mm2, %mm2
185
- # CHECK-NEXT: [0,20] . D==================== eeeER . . psubsw %mm2, %mm2
186
- # CHECK-NEXT: [0,21] . DeE----------------------R . . psubsb %xmm2, %xmm2
187
- # CHECK-NEXT: [0,22] . D=eE---------------------R . . psubsw %xmm2, %xmm2
188
- # CHECK-NEXT: [0,23] . D======================= eeeER . . psubusb %mm2, %mm2
189
- # CHECK-NEXT: [0,24] . .D========================= eeeER . psubusw %mm2, %mm2
190
- # CHECK-NEXT: [0,25] . .D=eE--------------------------R . psubusb %xmm2, %xmm2
191
- # CHECK-NEXT: [0,26] . .D==eE-------------------------R . psubusw %xmm2, %xmm2
192
- # CHECK-NEXT: [0,27] . .D==eE-------------------------R . andnps %xmm0, %xmm0
193
- # CHECK-NEXT: [0,28] . . D==eE------------------------R . andnpd %xmm1, %xmm1
194
- # CHECK-NEXT: [0,29] . . D=========================== eER. pandn %mm2, %mm2
195
- # CHECK-NEXT: [0,30] . . D==eE------------------------- R. pandn %xmm2, %xmm2
196
- # CHECK-NEXT: [0,31] . . D----------------------------- R. xorps %xmm0, %xmm0
197
- # CHECK-NEXT: [0,32] . . D---------------------------- R. xorpd %xmm1, %xmm1
198
- # CHECK-NEXT: [0,33] . . D=========================== eER pxor %mm2, %mm2
199
- # CHECK-NEXT: [0,34] . . D----------------------------- R pxor %xmm2, %xmm2
165
+ # CHECK: [0,0] DR . . . . . . .. subl %eax, %eax
166
+ # CHECK-NEXT: [0,1] DR . . . . . . .. subq %rax, %rax
167
+ # CHECK-NEXT: [0,2] DR . . . . . . .. xorl %eax, %eax
168
+ # CHECK-NEXT: [0,3] DR . . . . . . .. xorq %rax, %rax
169
+ # CHECK-NEXT: [0,4] .DeeeER . . . . . .. pcmpgtb %mm2, %mm2
170
+ # CHECK-NEXT: [0,5] .D===eeeER. . . . . .. pcmpgtd %mm2, %mm2
171
+ # CHECK-NEXT: [0,6] .D======eeeER . . . . .. pcmpgtw %mm2, %mm2
172
+ # CHECK-NEXT: [0,7] .D----------R . . . . .. pcmpgtb %xmm2, %xmm2
173
+ # CHECK-NEXT: [0,8] . D---------R . . . . .. pcmpgtd %xmm2, %xmm2
174
+ # CHECK-NEXT: [0,9] . D---------R . . . . .. pcmpgtq %xmm2, %xmm2
175
+ # CHECK-NEXT: [0,10] . D---------R . . . . .. pcmpgtw %xmm2, %xmm2
176
+ # CHECK-NEXT: [0,11] . D========eeeER . . . .. psubb %mm2, %mm2
177
+ # CHECK-NEXT: [0,12] . D==========eeeER . . . .. psubd %mm2, %mm2
178
+ # CHECK-NEXT: [0,13] . D=============eER. . . .. psubq %mm2, %mm2
179
+ # CHECK-NEXT: [0,14] . D==============eeeER . . .. psubw %mm2, %mm2
180
+ # CHECK-NEXT: [0,15] . D------------------R . . .. psubb %xmm2, %xmm2
181
+ # CHECK-NEXT: [0,16] . D-----------------R . . .. psubd %xmm2, %xmm2
182
+ # CHECK-NEXT: [0,17] . D-----------------R . . .. psubq %xmm2, %xmm2
183
+ # CHECK-NEXT: [0,18] . D-----------------R . . .. psubw %xmm2, %xmm2
184
+ # CHECK-NEXT: [0,19] . D================eeeER . . . psubsb %mm2, %mm2
185
+ # CHECK-NEXT: [0,20] . D==================eeeER . . . psubsw %mm2, %mm2
186
+ # CHECK-NEXT: [0,21] . DeE--------------------R . . . psubsb %xmm2, %xmm2
187
+ # CHECK-NEXT: [0,22] . D=eE-------------------R . . . psubsw %xmm2, %xmm2
188
+ # CHECK-NEXT: [0,23] . D=====================eeeER . . psubusb %mm2, %mm2
189
+ # CHECK-NEXT: [0,24] . .D=======================eeeER. . psubusw %mm2, %mm2
190
+ # CHECK-NEXT: [0,25] . .D=eE------------------------R. . psubusb %xmm2, %xmm2
191
+ # CHECK-NEXT: [0,26] . .D==eE-----------------------R. . psubusw %xmm2, %xmm2
192
+ # CHECK-NEXT: [0,27] . .D==eE-----------------------R. . andnps %xmm0, %xmm0
193
+ # CHECK-NEXT: [0,28] . . D==eE----------------------R. . andnpd %xmm1, %xmm1
194
+ # CHECK-NEXT: [0,29] . . D=========================eER. pandn %mm2, %mm2
195
+ # CHECK-NEXT: [0,30] . . D==eE-----------------------R. pandn %xmm2, %xmm2
196
+ # CHECK-NEXT: [0,31] . . D---------------------------R. xorps %xmm0, %xmm0
197
+ # CHECK-NEXT: [0,32] . . D--------------------------R. xorpd %xmm1, %xmm1
198
+ # CHECK-NEXT: [0,33] . . D=========================eER pxor %mm2, %mm2
199
+ # CHECK-NEXT: [0,34] . . D---------------------------R pxor %xmm2, %xmm2
200
200
201
201
# CHECK: Average Wait times (based on the timeline view):
202
202
# CHECK-NEXT: [0]: Executions
@@ -219,25 +219,25 @@ pxor %xmm2, %xmm2
219
219
# CHECK-NEXT: 11. 1 9.0 0.0 0.0 psubb %mm2, %mm2
220
220
# CHECK-NEXT: 12. 1 11.0 0.0 0.0 psubd %mm2, %mm2
221
221
# CHECK-NEXT: 13. 1 14.0 0.0 0.0 psubq %mm2, %mm2
222
- # CHECK-NEXT: 14. 1 17 .0 0.0 0.0 psubw %mm2, %mm2
223
- # CHECK-NEXT: 15. 1 0.0 0.0 20 .0 psubb %xmm2, %xmm2
224
- # CHECK-NEXT: 16. 1 0.0 0.0 19 .0 psubd %xmm2, %xmm2
225
- # CHECK-NEXT: 17. 1 0.0 0.0 19 .0 psubq %xmm2, %xmm2
226
- # CHECK-NEXT: 18. 1 0.0 0.0 19 .0 psubw %xmm2, %xmm2
227
- # CHECK-NEXT: 19. 1 19 .0 0.0 0.0 psubsb %mm2, %mm2
228
- # CHECK-NEXT: 20. 1 21 .0 0.0 0.0 psubsw %mm2, %mm2
229
- # CHECK-NEXT: 21. 1 1.0 1.0 22 .0 psubsb %xmm2, %xmm2
230
- # CHECK-NEXT: 22. 1 2.0 0.0 21 .0 psubsw %xmm2, %xmm2
231
- # CHECK-NEXT: 23. 1 24 .0 0.0 0.0 psubusb %mm2, %mm2
232
- # CHECK-NEXT: 24. 1 26 .0 0.0 0.0 psubusw %mm2, %mm2
233
- # CHECK-NEXT: 25. 1 2.0 0.0 26 .0 psubusb %xmm2, %xmm2
234
- # CHECK-NEXT: 26. 1 3.0 0.0 25 .0 psubusw %xmm2, %xmm2
235
- # CHECK-NEXT: 27. 1 3.0 3.0 25 .0 andnps %xmm0, %xmm0
236
- # CHECK-NEXT: 28. 1 3.0 3.0 24 .0 andnpd %xmm1, %xmm1
237
- # CHECK-NEXT: 29. 1 28 .0 0.0 0.0 pandn %mm2, %mm2
238
- # CHECK-NEXT: 30. 1 3.0 0.0 25 .0 pandn %xmm2, %xmm2
239
- # CHECK-NEXT: 31. 1 0.0 0.0 29 .0 xorps %xmm0, %xmm0
240
- # CHECK-NEXT: 32. 1 0.0 0.0 28 .0 xorpd %xmm1, %xmm1
241
- # CHECK-NEXT: 33. 1 28 .0 0.0 0.0 pxor %mm2, %mm2
242
- # CHECK-NEXT: 34. 1 0.0 0.0 29 .0 pxor %xmm2, %xmm2
243
- # CHECK-NEXT: 1 6.5 0.2 10.5 <total>
222
+ # CHECK-NEXT: 14. 1 15 .0 0.0 0.0 psubw %mm2, %mm2
223
+ # CHECK-NEXT: 15. 1 0.0 0.0 18 .0 psubb %xmm2, %xmm2
224
+ # CHECK-NEXT: 16. 1 0.0 0.0 17 .0 psubd %xmm2, %xmm2
225
+ # CHECK-NEXT: 17. 1 0.0 0.0 17 .0 psubq %xmm2, %xmm2
226
+ # CHECK-NEXT: 18. 1 0.0 0.0 17 .0 psubw %xmm2, %xmm2
227
+ # CHECK-NEXT: 19. 1 17 .0 0.0 0.0 psubsb %mm2, %mm2
228
+ # CHECK-NEXT: 20. 1 19 .0 0.0 0.0 psubsw %mm2, %mm2
229
+ # CHECK-NEXT: 21. 1 1.0 1.0 20 .0 psubsb %xmm2, %xmm2
230
+ # CHECK-NEXT: 22. 1 2.0 0.0 19 .0 psubsw %xmm2, %xmm2
231
+ # CHECK-NEXT: 23. 1 22 .0 0.0 0.0 psubusb %mm2, %mm2
232
+ # CHECK-NEXT: 24. 1 24 .0 0.0 0.0 psubusw %mm2, %mm2
233
+ # CHECK-NEXT: 25. 1 2.0 0.0 24 .0 psubusb %xmm2, %xmm2
234
+ # CHECK-NEXT: 26. 1 3.0 0.0 23 .0 psubusw %xmm2, %xmm2
235
+ # CHECK-NEXT: 27. 1 3.0 3.0 23 .0 andnps %xmm0, %xmm0
236
+ # CHECK-NEXT: 28. 1 3.0 3.0 22 .0 andnpd %xmm1, %xmm1
237
+ # CHECK-NEXT: 29. 1 26 .0 0.0 0.0 pandn %mm2, %mm2
238
+ # CHECK-NEXT: 30. 1 3.0 0.0 23 .0 pandn %xmm2, %xmm2
239
+ # CHECK-NEXT: 31. 1 0.0 0.0 27 .0 xorps %xmm0, %xmm0
240
+ # CHECK-NEXT: 32. 1 0.0 0.0 26 .0 xorpd %xmm1, %xmm1
241
+ # CHECK-NEXT: 33. 1 26 .0 0.0 0.0 pxor %mm2, %mm2
242
+ # CHECK-NEXT: 34. 1 0.0 0.0 27 .0 pxor %xmm2, %xmm2
243
+ # CHECK-NEXT: 1 6.1 0.2 9.7 <total>
0 commit comments