@@ -10,7 +10,7 @@ define <4 x half> @test1(<4 x half> %A, <4 x half> %B) {
1010; CHECK: vmaxnm.f16 d0, d0, d1
1111; CHECK-NEXT: bx lr
1212 %tmp3 = fcmp fast ogt <4 x half > %A , %B
13- %tmp4 = select <4 x i1 > %tmp3 , <4 x half > %A , <4 x half > %B
13+ %tmp4 = select nsz <4 x i1 > %tmp3 , <4 x half > %A , <4 x half > %B
1414 ret <4 x half > %tmp4
1515}
1616
@@ -19,7 +19,7 @@ define <4 x half> @test2(<4 x half> %A, <4 x half> %B) {
1919; CHECK: vminnm.f16 d0, d0, d1
2020; CHECK-NEXT: bx lr
2121 %tmp3 = fcmp fast ogt <4 x half > %A , %B
22- %tmp4 = select <4 x i1 > %tmp3 , <4 x half > %B , <4 x half > %A
22+ %tmp4 = select nsz <4 x i1 > %tmp3 , <4 x half > %B , <4 x half > %A
2323 ret <4 x half > %tmp4
2424}
2525
@@ -28,7 +28,7 @@ define <4 x half> @test3(<4 x half> %A, <4 x half> %B) {
2828; CHECK: vminnm.f16 d0, d0, d1
2929; CHECK-NEXT: bx lr
3030 %tmp3 = fcmp fast oge <4 x half > %A , %B
31- %tmp4 = select <4 x i1 > %tmp3 , <4 x half > %B , <4 x half > %A
31+ %tmp4 = select nsz <4 x i1 > %tmp3 , <4 x half > %B , <4 x half > %A
3232 ret <4 x half > %tmp4
3333}
3434
@@ -37,7 +37,7 @@ define <4 x half> @test4(<4 x half> %A, <4 x half> %B) {
3737; CHECK: vmaxnm.f16 d0, d0, d1
3838; CHECK-NEXT: bx lr
3939 %tmp3 = fcmp fast oge <4 x half > %A , %B
40- %tmp4 = select <4 x i1 > %tmp3 , <4 x half > %A , <4 x half > %B
40+ %tmp4 = select nsz <4 x i1 > %tmp3 , <4 x half > %A , <4 x half > %B
4141 ret <4 x half > %tmp4
4242}
4343
@@ -46,7 +46,7 @@ define <4 x half> @test5(<4 x half> %A, <4 x half> %B) {
4646; CHECK: vminnm.f16 d0, d0, d1
4747; CHECK-NEXT: bx lr
4848 %tmp3 = fcmp fast olt <4 x half > %A , %B
49- %tmp4 = select <4 x i1 > %tmp3 , <4 x half > %A , <4 x half > %B
49+ %tmp4 = select nsz <4 x i1 > %tmp3 , <4 x half > %A , <4 x half > %B
5050 ret <4 x half > %tmp4
5151}
5252
@@ -55,7 +55,7 @@ define <4 x half> @test6(<4 x half> %A, <4 x half> %B) {
5555; CHECK: vmaxnm.f16 d0, d0, d1
5656; CHECK-NEXT: bx lr
5757 %tmp3 = fcmp fast olt <4 x half > %A , %B
58- %tmp4 = select <4 x i1 > %tmp3 , <4 x half > %B , <4 x half > %A
58+ %tmp4 = select nsz <4 x i1 > %tmp3 , <4 x half > %B , <4 x half > %A
5959 ret <4 x half > %tmp4
6060}
6161
@@ -64,7 +64,7 @@ define <4 x half> @test7(<4 x half> %A, <4 x half> %B) {
6464; CHECK: vminnm.f16 d0, d0, d1
6565; CHECK-NEXT: bx lr
6666 %tmp3 = fcmp fast ole <4 x half > %A , %B
67- %tmp4 = select <4 x i1 > %tmp3 , <4 x half > %A , <4 x half > %B
67+ %tmp4 = select nsz <4 x i1 > %tmp3 , <4 x half > %A , <4 x half > %B
6868 ret <4 x half > %tmp4
6969}
7070
@@ -73,7 +73,7 @@ define <4 x half> @test8(<4 x half> %A, <4 x half> %B) {
7373; CHECK: vmaxnm.f16 d0, d0, d1
7474; CHECK-NEXT: bx lr
7575 %tmp3 = fcmp fast ole <4 x half > %A , %B
76- %tmp4 = select <4 x i1 > %tmp3 , <4 x half > %B , <4 x half > %A
76+ %tmp4 = select nsz <4 x i1 > %tmp3 , <4 x half > %B , <4 x half > %A
7777 ret <4 x half > %tmp4
7878}
7979
@@ -84,7 +84,7 @@ define <4 x half> @test11(<4 x half> %A, <4 x half> %B) {
8484; CHECK: vmaxnm.f16 d0, d0, d1
8585; CHECK-NEXT: bx lr
8686 %tmp3 = fcmp fast ugt <4 x half > %A , %B
87- %tmp4 = select <4 x i1 > %tmp3 , <4 x half > %A , <4 x half > %B
87+ %tmp4 = select nsz <4 x i1 > %tmp3 , <4 x half > %A , <4 x half > %B
8888 ret <4 x half > %tmp4
8989}
9090
@@ -93,7 +93,7 @@ define <4 x half> @test12(<4 x half> %A, <4 x half> %B) {
9393; CHECK: vminnm.f16 d0, d0, d1
9494; CHECK-NEXT: bx lr
9595 %tmp3 = fcmp fast ugt <4 x half > %A , %B
96- %tmp4 = select <4 x i1 > %tmp3 , <4 x half > %B , <4 x half > %A
96+ %tmp4 = select nsz <4 x i1 > %tmp3 , <4 x half > %B , <4 x half > %A
9797 ret <4 x half > %tmp4
9898}
9999
@@ -102,7 +102,7 @@ define <4 x half> @test13(<4 x half> %A, <4 x half> %B) {
102102; CHECK: vminnm.f16 d0, d0, d1
103103; CHECK-NEXT: bx lr
104104 %tmp3 = fcmp fast uge <4 x half > %A , %B
105- %tmp4 = select <4 x i1 > %tmp3 , <4 x half > %B , <4 x half > %A
105+ %tmp4 = select nsz <4 x i1 > %tmp3 , <4 x half > %B , <4 x half > %A
106106 ret <4 x half > %tmp4
107107}
108108
@@ -111,7 +111,7 @@ define <4 x half> @test14(<4 x half> %A, <4 x half> %B) {
111111; CHECK: vmaxnm.f16 d0, d0, d1
112112; CHECK-NEXT: bx lr
113113 %tmp3 = fcmp fast uge <4 x half > %A , %B
114- %tmp4 = select <4 x i1 > %tmp3 , <4 x half > %A , <4 x half > %B
114+ %tmp4 = select nsz <4 x i1 > %tmp3 , <4 x half > %A , <4 x half > %B
115115 ret <4 x half > %tmp4
116116}
117117
@@ -120,7 +120,7 @@ define <4 x half> @test15(<4 x half> %A, <4 x half> %B) {
120120; CHECK: vminnm.f16 d0, d0, d1
121121; CHECK-NEXT: bx lr
122122 %tmp3 = fcmp fast ult <4 x half > %A , %B
123- %tmp4 = select <4 x i1 > %tmp3 , <4 x half > %A , <4 x half > %B
123+ %tmp4 = select nsz <4 x i1 > %tmp3 , <4 x half > %A , <4 x half > %B
124124 ret <4 x half > %tmp4
125125}
126126
@@ -129,7 +129,7 @@ define <4 x half> @test16(<4 x half> %A, <4 x half> %B) {
129129; CHECK: vmaxnm.f16 d0, d0, d1
130130; CHECK-NEXT: bx lr
131131 %tmp3 = fcmp fast ult <4 x half > %A , %B
132- %tmp4 = select <4 x i1 > %tmp3 , <4 x half > %B , <4 x half > %A
132+ %tmp4 = select nsz <4 x i1 > %tmp3 , <4 x half > %B , <4 x half > %A
133133 ret <4 x half > %tmp4
134134}
135135
@@ -138,7 +138,7 @@ define <4 x half> @test17(<4 x half> %A, <4 x half> %B) {
138138; CHECK: vminnm.f16 d0, d0, d1
139139; CHECK-NEXT: bx lr
140140 %tmp3 = fcmp fast ule <4 x half > %A , %B
141- %tmp4 = select <4 x i1 > %tmp3 , <4 x half > %A , <4 x half > %B
141+ %tmp4 = select nsz <4 x i1 > %tmp3 , <4 x half > %A , <4 x half > %B
142142 ret <4 x half > %tmp4
143143}
144144
@@ -147,7 +147,7 @@ define <4 x half> @test18(<4 x half> %A, <4 x half> %B) {
147147; CHECK: vmaxnm.f16 d0, d0, d1
148148; CHECK-NEXT: bx lr
149149 %tmp3 = fcmp fast ule <4 x half > %A , %B
150- %tmp4 = select <4 x i1 > %tmp3 , <4 x half > %B , <4 x half > %A
150+ %tmp4 = select nsz <4 x i1 > %tmp3 , <4 x half > %B , <4 x half > %A
151151 ret <4 x half > %tmp4
152152}
153153
@@ -160,7 +160,7 @@ define <8 x half> @test201(<8 x half> %A, <8 x half> %B) {
160160; CHECK: vmaxnm.f16 q0, q0, q1
161161; CHECK-NEXT: bx lr
162162 %tmp3 = fcmp fast ogt <8 x half > %A , %B
163- %tmp4 = select <8 x i1 > %tmp3 , <8 x half > %A , <8 x half > %B
163+ %tmp4 = select nsz <8 x i1 > %tmp3 , <8 x half > %A , <8 x half > %B
164164 ret <8 x half > %tmp4
165165}
166166
@@ -169,7 +169,7 @@ define <8 x half> @test202(<8 x half> %A, <8 x half> %B) {
169169; CHECK: vminnm.f16 q0, q0, q1
170170; CHECK-NEXT: bx lr
171171 %tmp3 = fcmp fast ogt <8 x half > %A , %B
172- %tmp4 = select <8 x i1 > %tmp3 , <8 x half > %B , <8 x half > %A
172+ %tmp4 = select nsz <8 x i1 > %tmp3 , <8 x half > %B , <8 x half > %A
173173 ret <8 x half > %tmp4
174174}
175175
@@ -178,7 +178,7 @@ define <8 x half> @test203(<8 x half> %A, <8 x half> %B) {
178178; CHECK: vmaxnm.f16 q0, q0, q1
179179; CHECK-NEXT: bx lr
180180 %tmp3 = fcmp fast oge <8 x half > %A , %B
181- %tmp4 = select <8 x i1 > %tmp3 , <8 x half > %A , <8 x half > %B
181+ %tmp4 = select nsz <8 x i1 > %tmp3 , <8 x half > %A , <8 x half > %B
182182 ret <8 x half > %tmp4
183183}
184184
@@ -187,7 +187,7 @@ define <8 x half> @test204(<8 x half> %A, <8 x half> %B) {
187187; CHECK: vminnm.f16 q0, q0, q1
188188; CHECK-NEXT: bx lr
189189 %tmp3 = fcmp fast oge <8 x half > %A , %B
190- %tmp4 = select <8 x i1 > %tmp3 , <8 x half > %B , <8 x half > %A
190+ %tmp4 = select nsz <8 x i1 > %tmp3 , <8 x half > %B , <8 x half > %A
191191 ret <8 x half > %tmp4
192192}
193193
@@ -196,7 +196,7 @@ define <8 x half> @test205(<8 x half> %A, <8 x half> %B) {
196196; CHECK: vminnm.f16 q0, q0, q1
197197; CHECK-NEXT: bx lr
198198 %tmp3 = fcmp fast olt <8 x half > %A , %B
199- %tmp4 = select <8 x i1 > %tmp3 , <8 x half > %A , <8 x half > %B
199+ %tmp4 = select nsz <8 x i1 > %tmp3 , <8 x half > %A , <8 x half > %B
200200 ret <8 x half > %tmp4
201201}
202202
@@ -205,7 +205,7 @@ define <8 x half> @test206(<8 x half> %A, <8 x half> %B) {
205205; CHECK: vmaxnm.f16 q0, q0, q1
206206; CHECK-NEXT: bx lr
207207 %tmp3 = fcmp fast olt <8 x half > %A , %B
208- %tmp4 = select <8 x i1 > %tmp3 , <8 x half > %B , <8 x half > %A
208+ %tmp4 = select nsz <8 x i1 > %tmp3 , <8 x half > %B , <8 x half > %A
209209 ret <8 x half > %tmp4
210210}
211211
@@ -214,7 +214,7 @@ define <8 x half> @test207(<8 x half> %A, <8 x half> %B) {
214214; CHECK: vminnm.f16 q0, q0, q1
215215; CHECK-NEXT: bx lr
216216 %tmp3 = fcmp fast ole <8 x half > %A , %B
217- %tmp4 = select <8 x i1 > %tmp3 , <8 x half > %A , <8 x half > %B
217+ %tmp4 = select nsz <8 x i1 > %tmp3 , <8 x half > %A , <8 x half > %B
218218 ret <8 x half > %tmp4
219219}
220220
@@ -223,7 +223,7 @@ define <8 x half> @test208(<8 x half> %A, <8 x half> %B) {
223223; CHECK: vmaxnm.f16 q0, q0, q1
224224; CHECK-NEXT: bx lr
225225 %tmp3 = fcmp fast ole <8 x half > %A , %B
226- %tmp4 = select <8 x i1 > %tmp3 , <8 x half > %B , <8 x half > %A
226+ %tmp4 = select nsz <8 x i1 > %tmp3 , <8 x half > %B , <8 x half > %A
227227 ret <8 x half > %tmp4
228228}
229229
@@ -234,7 +234,7 @@ define <8 x half> @test209(<8 x half> %A, <8 x half> %B) {
234234; CHECK: vmaxnm.f16 q0, q0, q1
235235; CHECK-NEXT: bx lr
236236 %tmp3 = fcmp fast ugt <8 x half > %A , %B
237- %tmp4 = select <8 x i1 > %tmp3 , <8 x half > %A , <8 x half > %B
237+ %tmp4 = select nsz <8 x i1 > %tmp3 , <8 x half > %A , <8 x half > %B
238238 ret <8 x half > %tmp4
239239}
240240
@@ -243,7 +243,7 @@ define <8 x half> @test210(<8 x half> %A, <8 x half> %B) {
243243; CHECK: vminnm.f16 q0, q0, q1
244244; CHECK-NEXT: bx lr
245245 %tmp3 = fcmp fast ugt <8 x half > %A , %B
246- %tmp4 = select <8 x i1 > %tmp3 , <8 x half > %B , <8 x half > %A
246+ %tmp4 = select nsz <8 x i1 > %tmp3 , <8 x half > %B , <8 x half > %A
247247 ret <8 x half > %tmp4
248248}
249249
@@ -252,7 +252,7 @@ define <8 x half> @test211(<8 x half> %A, <8 x half> %B) {
252252; CHECK: vmaxnm.f16 q0, q0, q1
253253; CHECK-NEXT: bx lr
254254 %tmp3 = fcmp fast uge <8 x half > %A , %B
255- %tmp4 = select <8 x i1 > %tmp3 , <8 x half > %A , <8 x half > %B
255+ %tmp4 = select nsz <8 x i1 > %tmp3 , <8 x half > %A , <8 x half > %B
256256 ret <8 x half > %tmp4
257257}
258258
@@ -261,7 +261,7 @@ define <8 x half> @test214(<8 x half> %A, <8 x half> %B) {
261261; CHECK: vminnm.f16 q0, q0, q1
262262; CHECK-NEXT: bx lr
263263 %tmp3 = fcmp fast uge <8 x half > %A , %B
264- %tmp4 = select <8 x i1 > %tmp3 , <8 x half > %B , <8 x half > %A
264+ %tmp4 = select nsz <8 x i1 > %tmp3 , <8 x half > %B , <8 x half > %A
265265 ret <8 x half > %tmp4
266266}
267267
@@ -270,7 +270,7 @@ define <8 x half> @test215(<8 x half> %A, <8 x half> %B) {
270270; CHECK: vminnm.f16 q0, q0, q1
271271; CHECK-NEXT: bx lr
272272 %tmp3 = fcmp fast ult <8 x half > %A , %B
273- %tmp4 = select <8 x i1 > %tmp3 , <8 x half > %A , <8 x half > %B
273+ %tmp4 = select nsz <8 x i1 > %tmp3 , <8 x half > %A , <8 x half > %B
274274 ret <8 x half > %tmp4
275275}
276276
@@ -279,7 +279,7 @@ define <8 x half> @test216(<8 x half> %A, <8 x half> %B) {
279279; CHECK: vmaxnm.f16 q0, q0, q1
280280; CHECK-NEXT: bx lr
281281 %tmp3 = fcmp fast ult <8 x half > %A , %B
282- %tmp4 = select <8 x i1 > %tmp3 , <8 x half > %B , <8 x half > %A
282+ %tmp4 = select nsz <8 x i1 > %tmp3 , <8 x half > %B , <8 x half > %A
283283 ret <8 x half > %tmp4
284284}
285285
@@ -288,7 +288,7 @@ define <8 x half> @test217(<8 x half> %A, <8 x half> %B) {
288288; CHECK: vminnm.f16 q0, q0, q1
289289; CHECK-NEXT: bx lr
290290 %tmp3 = fcmp fast ule <8 x half > %A , %B
291- %tmp4 = select <8 x i1 > %tmp3 , <8 x half > %A , <8 x half > %B
291+ %tmp4 = select nsz <8 x i1 > %tmp3 , <8 x half > %A , <8 x half > %B
292292 ret <8 x half > %tmp4
293293}
294294
@@ -297,6 +297,6 @@ define <8 x half> @test218(<8 x half> %A, <8 x half> %B) {
297297; CHECK: vmaxnm.f16 q0, q0, q1
298298; CHECK-NEXT: bx lr
299299 %tmp3 = fcmp fast ule <8 x half > %A , %B
300- %tmp4 = select <8 x i1 > %tmp3 , <8 x half > %B , <8 x half > %A
300+ %tmp4 = select nsz <8 x i1 > %tmp3 , <8 x half > %B , <8 x half > %A
301301 ret <8 x half > %tmp4
302302}
0 commit comments