@@ -67,11 +67,9 @@ define <16 x i32> @combine_mask_with_abs(<16 x i32> %v0) {
6767define <16 x i32 > @combine_mask_with_umin (<16 x i32 > %v0 ) {
6868; CHECK-LABEL: combine_mask_with_umin:
6969; CHECK: # %bb.0:
70- ; CHECK-NEXT: vpshufd {{.*#+}} zmm1 = zmm0[1,0,3,2,5,4,7,6,9,8,11,10,13,12,15,14]
71- ; CHECK-NEXT: movw $-21846, %ax # imm = 0xAAAA
72- ; CHECK-NEXT: kmovw %eax, %k1
73- ; CHECK-NEXT: vpblendmd %zmm1, %zmm0, %zmm2 {%k1}
74- ; CHECK-NEXT: vpminud %zmm2, %zmm1, %zmm1
70+ ; CHECK-NEXT: vpshufd {{.*#+}} zmm1 = zmm0[0,0,2,2,4,4,6,6,8,8,10,10,12,12,14,14]
71+ ; CHECK-NEXT: vpshufd {{.*#+}} zmm2 = zmm0[1,0,3,2,5,4,7,6,9,8,11,10,13,12,15,14]
72+ ; CHECK-NEXT: vpminud %zmm1, %zmm2, %zmm1
7573; CHECK-NEXT: movw $-3856, %ax # imm = 0xF0F0
7674; CHECK-NEXT: kmovw %eax, %k1
7775; CHECK-NEXT: vpopcntd %zmm0, %zmm1 {%k1}
@@ -88,11 +86,9 @@ define <16 x i32> @combine_mask_with_umin(<16 x i32> %v0) {
8886define <16 x i32 > @combine_mask_with_umax (<16 x i32 > %v0 ) {
8987; CHECK-LABEL: combine_mask_with_umax:
9088; CHECK: # %bb.0:
91- ; CHECK-NEXT: vpshufd {{.*#+}} zmm1 = zmm0[1,0,3,2,5,4,7,6,9,8,11,10,13,12,15,14]
92- ; CHECK-NEXT: movw $-21846, %ax # imm = 0xAAAA
93- ; CHECK-NEXT: kmovw %eax, %k1
94- ; CHECK-NEXT: vpblendmd %zmm1, %zmm0, %zmm2 {%k1}
95- ; CHECK-NEXT: vpmaxud %zmm2, %zmm1, %zmm1
89+ ; CHECK-NEXT: vpshufd {{.*#+}} zmm1 = zmm0[0,0,2,2,4,4,6,6,8,8,10,10,12,12,14,14]
90+ ; CHECK-NEXT: vpshufd {{.*#+}} zmm2 = zmm0[1,0,3,2,5,4,7,6,9,8,11,10,13,12,15,14]
91+ ; CHECK-NEXT: vpmaxud %zmm1, %zmm2, %zmm1
9692; CHECK-NEXT: movw $-3856, %ax # imm = 0xF0F0
9793; CHECK-NEXT: kmovw %eax, %k1
9894; CHECK-NEXT: vpopcntd %zmm0, %zmm1 {%k1}
@@ -109,11 +105,9 @@ define <16 x i32> @combine_mask_with_umax(<16 x i32> %v0) {
109105define <16 x i32 > @combine_mask_with_smin (<16 x i32 > %v0 ) {
110106; CHECK-LABEL: combine_mask_with_smin:
111107; CHECK: # %bb.0:
112- ; CHECK-NEXT: vpshufd {{.*#+}} zmm1 = zmm0[1,0,3,2,5,4,7,6,9,8,11,10,13,12,15,14]
113- ; CHECK-NEXT: movw $-21846, %ax # imm = 0xAAAA
114- ; CHECK-NEXT: kmovw %eax, %k1
115- ; CHECK-NEXT: vpblendmd %zmm1, %zmm0, %zmm2 {%k1}
116- ; CHECK-NEXT: vpminsd %zmm2, %zmm1, %zmm1
108+ ; CHECK-NEXT: vpshufd {{.*#+}} zmm1 = zmm0[0,0,2,2,4,4,6,6,8,8,10,10,12,12,14,14]
109+ ; CHECK-NEXT: vpshufd {{.*#+}} zmm2 = zmm0[1,0,3,2,5,4,7,6,9,8,11,10,13,12,15,14]
110+ ; CHECK-NEXT: vpminsd %zmm1, %zmm2, %zmm1
117111; CHECK-NEXT: movw $-3856, %ax # imm = 0xF0F0
118112; CHECK-NEXT: kmovw %eax, %k1
119113; CHECK-NEXT: vpopcntd %zmm0, %zmm1 {%k1}
@@ -130,11 +124,9 @@ define <16 x i32> @combine_mask_with_smin(<16 x i32> %v0) {
130124define <16 x i32 > @combine_mask_with_smax (<16 x i32 > %v0 ) {
131125; CHECK-LABEL: combine_mask_with_smax:
132126; CHECK: # %bb.0:
133- ; CHECK-NEXT: vpshufd {{.*#+}} zmm1 = zmm0[1,0,3,2,5,4,7,6,9,8,11,10,13,12,15,14]
134- ; CHECK-NEXT: movw $-21846, %ax # imm = 0xAAAA
135- ; CHECK-NEXT: kmovw %eax, %k1
136- ; CHECK-NEXT: vpblendmd %zmm1, %zmm0, %zmm2 {%k1}
137- ; CHECK-NEXT: vpmaxsd %zmm2, %zmm1, %zmm1
127+ ; CHECK-NEXT: vpshufd {{.*#+}} zmm1 = zmm0[0,0,2,2,4,4,6,6,8,8,10,10,12,12,14,14]
128+ ; CHECK-NEXT: vpshufd {{.*#+}} zmm2 = zmm0[1,0,3,2,5,4,7,6,9,8,11,10,13,12,15,14]
129+ ; CHECK-NEXT: vpmaxsd %zmm1, %zmm2, %zmm1
138130; CHECK-NEXT: movw $-3856, %ax # imm = 0xF0F0
139131; CHECK-NEXT: kmovw %eax, %k1
140132; CHECK-NEXT: vpopcntd %zmm0, %zmm1 {%k1}
0 commit comments