@@ -9,7 +9,7 @@ define zeroext i16 @test_mm_test_epi8_mask(<2 x i64> %__A, <2 x i64> %__B) {
9
9
; CHECK: # %bb.0: # %entry
10
10
; CHECK-NEXT: vptestmb %xmm0, %xmm1, %k0
11
11
; CHECK-NEXT: kmovd %k0, %eax
12
- ; CHECK-NEXT: movzwl %ax, % eax
12
+ ; CHECK-NEXT: # kill: def $ax killed $ax killed $ eax
13
13
; CHECK-NEXT: ret{{[l|q]}}
14
14
entry:
15
15
%and.i.i = and <2 x i64 > %__B , %__A
@@ -25,15 +25,15 @@ define zeroext i16 @test_mm_mask_test_epi8_mask(i16 zeroext %__U, <2 x i64> %__A
25
25
; X86-NEXT: kmovw {{[0-9]+}}(%esp), %k1
26
26
; X86-NEXT: vptestmb %xmm0, %xmm1, %k0 {%k1}
27
27
; X86-NEXT: kmovd %k0, %eax
28
- ; X86-NEXT: movzwl %ax, % eax
28
+ ; X86-NEXT: # kill: def $ax killed $ax killed $ eax
29
29
; X86-NEXT: retl
30
30
;
31
31
; X64-LABEL: test_mm_mask_test_epi8_mask:
32
32
; X64: # %bb.0: # %entry
33
33
; X64-NEXT: kmovd %edi, %k1
34
34
; X64-NEXT: vptestmb %xmm0, %xmm1, %k0 {%k1}
35
35
; X64-NEXT: kmovd %k0, %eax
36
- ; X64-NEXT: movzwl %ax, % eax
36
+ ; X64-NEXT: # kill: def $ax killed $ax killed $ eax
37
37
; X64-NEXT: retq
38
38
entry:
39
39
%and.i.i = and <2 x i64 > %__B , %__A
@@ -91,7 +91,7 @@ define zeroext i8 @test_mm_test_epi16_mask(<2 x i64> %__A, <2 x i64> %__B) {
91
91
; CHECK: # %bb.0: # %entry
92
92
; CHECK-NEXT: vptestmw %xmm0, %xmm1, %k0
93
93
; CHECK-NEXT: kmovd %k0, %eax
94
- ; CHECK-NEXT: movzbl %al, % eax
94
+ ; CHECK-NEXT: # kill: def $al killed $al killed $ eax
95
95
; CHECK-NEXT: ret{{[l|q]}}
96
96
entry:
97
97
%and.i.i = and <2 x i64 > %__B , %__A
@@ -108,15 +108,15 @@ define zeroext i8 @test_mm_mask_test_epi16_mask(i8 zeroext %__U, <2 x i64> %__A,
108
108
; X86-NEXT: kmovd %eax, %k1
109
109
; X86-NEXT: vptestmw %xmm0, %xmm1, %k0 {%k1}
110
110
; X86-NEXT: kmovd %k0, %eax
111
- ; X86-NEXT: movzbl %al, % eax
111
+ ; X86-NEXT: # kill: def $al killed $al killed $ eax
112
112
; X86-NEXT: retl
113
113
;
114
114
; X64-LABEL: test_mm_mask_test_epi16_mask:
115
115
; X64: # %bb.0: # %entry
116
116
; X64-NEXT: kmovd %edi, %k1
117
117
; X64-NEXT: vptestmw %xmm0, %xmm1, %k0 {%k1}
118
118
; X64-NEXT: kmovd %k0, %eax
119
- ; X64-NEXT: movzbl %al, % eax
119
+ ; X64-NEXT: # kill: def $al killed $al killed $ eax
120
120
; X64-NEXT: retq
121
121
entry:
122
122
%and.i.i = and <2 x i64 > %__B , %__A
@@ -133,7 +133,7 @@ define zeroext i16 @test_mm256_test_epi16_mask(<4 x i64> %__A, <4 x i64> %__B) {
133
133
; CHECK: # %bb.0: # %entry
134
134
; CHECK-NEXT: vptestmw %ymm0, %ymm1, %k0
135
135
; CHECK-NEXT: kmovd %k0, %eax
136
- ; CHECK-NEXT: movzwl %ax, % eax
136
+ ; CHECK-NEXT: # kill: def $ax killed $ax killed $ eax
137
137
; CHECK-NEXT: vzeroupper
138
138
; CHECK-NEXT: ret{{[l|q]}}
139
139
entry:
@@ -150,7 +150,7 @@ define zeroext i16 @test_mm256_mask_test_epi16_mask(i16 zeroext %__U, <4 x i64>
150
150
; X86-NEXT: kmovw {{[0-9]+}}(%esp), %k1
151
151
; X86-NEXT: vptestmw %ymm0, %ymm1, %k0 {%k1}
152
152
; X86-NEXT: kmovd %k0, %eax
153
- ; X86-NEXT: movzwl %ax, % eax
153
+ ; X86-NEXT: # kill: def $ax killed $ax killed $ eax
154
154
; X86-NEXT: vzeroupper
155
155
; X86-NEXT: retl
156
156
;
@@ -159,7 +159,7 @@ define zeroext i16 @test_mm256_mask_test_epi16_mask(i16 zeroext %__U, <4 x i64>
159
159
; X64-NEXT: kmovd %edi, %k1
160
160
; X64-NEXT: vptestmw %ymm0, %ymm1, %k0 {%k1}
161
161
; X64-NEXT: kmovd %k0, %eax
162
- ; X64-NEXT: movzwl %ax, % eax
162
+ ; X64-NEXT: # kill: def $ax killed $ax killed $ eax
163
163
; X64-NEXT: vzeroupper
164
164
; X64-NEXT: retq
165
165
entry:
@@ -177,7 +177,7 @@ define zeroext i16 @test_mm_testn_epi8_mask(<2 x i64> %__A, <2 x i64> %__B) {
177
177
; CHECK: # %bb.0: # %entry
178
178
; CHECK-NEXT: vptestnmb %xmm0, %xmm1, %k0
179
179
; CHECK-NEXT: kmovd %k0, %eax
180
- ; CHECK-NEXT: movzwl %ax, % eax
180
+ ; CHECK-NEXT: # kill: def $ax killed $ax killed $ eax
181
181
; CHECK-NEXT: ret{{[l|q]}}
182
182
entry:
183
183
%and.i.i = and <2 x i64 > %__B , %__A
@@ -193,15 +193,15 @@ define zeroext i16 @test_mm_mask_testn_epi8_mask(i16 zeroext %__U, <2 x i64> %__
193
193
; X86-NEXT: kmovw {{[0-9]+}}(%esp), %k1
194
194
; X86-NEXT: vptestnmb %xmm0, %xmm1, %k0 {%k1}
195
195
; X86-NEXT: kmovd %k0, %eax
196
- ; X86-NEXT: movzwl %ax, % eax
196
+ ; X86-NEXT: # kill: def $ax killed $ax killed $ eax
197
197
; X86-NEXT: retl
198
198
;
199
199
; X64-LABEL: test_mm_mask_testn_epi8_mask:
200
200
; X64: # %bb.0: # %entry
201
201
; X64-NEXT: kmovd %edi, %k1
202
202
; X64-NEXT: vptestnmb %xmm0, %xmm1, %k0 {%k1}
203
203
; X64-NEXT: kmovd %k0, %eax
204
- ; X64-NEXT: movzwl %ax, % eax
204
+ ; X64-NEXT: # kill: def $ax killed $ax killed $ eax
205
205
; X64-NEXT: retq
206
206
entry:
207
207
%and.i.i = and <2 x i64 > %__B , %__A
@@ -259,7 +259,7 @@ define zeroext i8 @test_mm_testn_epi16_mask(<2 x i64> %__A, <2 x i64> %__B) {
259
259
; CHECK: # %bb.0: # %entry
260
260
; CHECK-NEXT: vptestnmw %xmm0, %xmm1, %k0
261
261
; CHECK-NEXT: kmovd %k0, %eax
262
- ; CHECK-NEXT: movzbl %al, % eax
262
+ ; CHECK-NEXT: # kill: def $al killed $al killed $ eax
263
263
; CHECK-NEXT: ret{{[l|q]}}
264
264
entry:
265
265
%and.i.i = and <2 x i64 > %__B , %__A
@@ -276,15 +276,15 @@ define zeroext i8 @test_mm_mask_testn_epi16_mask(i8 zeroext %__U, <2 x i64> %__A
276
276
; X86-NEXT: kmovd %eax, %k1
277
277
; X86-NEXT: vptestnmw %xmm0, %xmm1, %k0 {%k1}
278
278
; X86-NEXT: kmovd %k0, %eax
279
- ; X86-NEXT: movzbl %al, % eax
279
+ ; X86-NEXT: # kill: def $al killed $al killed $ eax
280
280
; X86-NEXT: retl
281
281
;
282
282
; X64-LABEL: test_mm_mask_testn_epi16_mask:
283
283
; X64: # %bb.0: # %entry
284
284
; X64-NEXT: kmovd %edi, %k1
285
285
; X64-NEXT: vptestnmw %xmm0, %xmm1, %k0 {%k1}
286
286
; X64-NEXT: kmovd %k0, %eax
287
- ; X64-NEXT: movzbl %al, % eax
287
+ ; X64-NEXT: # kill: def $al killed $al killed $ eax
288
288
; X64-NEXT: retq
289
289
entry:
290
290
%and.i.i = and <2 x i64 > %__B , %__A
@@ -301,7 +301,7 @@ define zeroext i16 @test_mm256_testn_epi16_mask(<4 x i64> %__A, <4 x i64> %__B)
301
301
; CHECK: # %bb.0: # %entry
302
302
; CHECK-NEXT: vptestnmw %ymm0, %ymm1, %k0
303
303
; CHECK-NEXT: kmovd %k0, %eax
304
- ; CHECK-NEXT: movzwl %ax, % eax
304
+ ; CHECK-NEXT: # kill: def $ax killed $ax killed $ eax
305
305
; CHECK-NEXT: vzeroupper
306
306
; CHECK-NEXT: ret{{[l|q]}}
307
307
entry:
@@ -318,7 +318,7 @@ define zeroext i16 @test_mm256_mask_testn_epi16_mask(i16 zeroext %__U, <4 x i64>
318
318
; X86-NEXT: kmovw {{[0-9]+}}(%esp), %k1
319
319
; X86-NEXT: vptestnmw %ymm0, %ymm1, %k0 {%k1}
320
320
; X86-NEXT: kmovd %k0, %eax
321
- ; X86-NEXT: movzwl %ax, % eax
321
+ ; X86-NEXT: # kill: def $ax killed $ax killed $ eax
322
322
; X86-NEXT: vzeroupper
323
323
; X86-NEXT: retl
324
324
;
@@ -327,7 +327,7 @@ define zeroext i16 @test_mm256_mask_testn_epi16_mask(i16 zeroext %__U, <4 x i64>
327
327
; X64-NEXT: kmovd %edi, %k1
328
328
; X64-NEXT: vptestnmw %ymm0, %ymm1, %k0 {%k1}
329
329
; X64-NEXT: kmovd %k0, %eax
330
- ; X64-NEXT: movzwl %ax, % eax
330
+ ; X64-NEXT: # kill: def $ax killed $ax killed $ eax
331
331
; X64-NEXT: vzeroupper
332
332
; X64-NEXT: retq
333
333
entry:
0 commit comments