@@ -245,8 +245,8 @@ define <2 x i32> @umin4_vec(<2 x i32> %n) {
245
245
246
246
define i64 @smax_sext (i32 %a ) {
247
247
; CHECK-LABEL: @smax_sext(
248
- ; CHECK-NEXT: [[TMP1 :%.*]] = call i32 @llvm.smax.i32(i32 [[A:%.*]], i32 0)
249
- ; CHECK-NEXT: [[MAX:%.*]] = zext i32 [[TMP1 ]] to i64
248
+ ; CHECK-NEXT: [[NARROW :%.*]] = call i32 @llvm.smax.i32(i32 [[A:%.*]], i32 0)
249
+ ; CHECK-NEXT: [[MAX:%.*]] = zext i32 [[NARROW ]] to i64
250
250
; CHECK-NEXT: ret i64 [[MAX]]
251
251
;
252
252
%a_ext = sext i32 %a to i64
@@ -257,8 +257,8 @@ define i64 @smax_sext(i32 %a) {
257
257
258
258
define <2 x i64 > @smax_sext_vec (<2 x i32 > %a ) {
259
259
; CHECK-LABEL: @smax_sext_vec(
260
- ; CHECK-NEXT: [[TMP1 :%.*]] = call <2 x i32> @llvm.smax.v2i32(<2 x i32> [[A:%.*]], <2 x i32> zeroinitializer)
261
- ; CHECK-NEXT: [[MAX:%.*]] = zext <2 x i32> [[TMP1 ]] to <2 x i64>
260
+ ; CHECK-NEXT: [[NARROW :%.*]] = call <2 x i32> @llvm.smax.v2i32(<2 x i32> [[A:%.*]], <2 x i32> zeroinitializer)
261
+ ; CHECK-NEXT: [[MAX:%.*]] = zext <2 x i32> [[NARROW ]] to <2 x i64>
262
262
; CHECK-NEXT: ret <2 x i64> [[MAX]]
263
263
;
264
264
%a_ext = sext <2 x i32 > %a to <2 x i64 >
@@ -269,8 +269,8 @@ define <2 x i64> @smax_sext_vec(<2 x i32> %a) {
269
269
270
270
define i64 @smin_sext (i32 %a ) {
271
271
; CHECK-LABEL: @smin_sext(
272
- ; CHECK-NEXT: [[TMP1 :%.*]] = call i32 @llvm.smin.i32(i32 [[A:%.*]], i32 0)
273
- ; CHECK-NEXT: [[MIN:%.*]] = sext i32 [[TMP1 ]] to i64
272
+ ; CHECK-NEXT: [[NARROW :%.*]] = call i32 @llvm.smin.i32(i32 [[A:%.*]], i32 0)
273
+ ; CHECK-NEXT: [[MIN:%.*]] = sext i32 [[NARROW ]] to i64
274
274
; CHECK-NEXT: ret i64 [[MIN]]
275
275
;
276
276
%a_ext = sext i32 %a to i64
@@ -281,8 +281,8 @@ define i64 @smin_sext(i32 %a) {
281
281
282
282
define <2 x i64 >@smin_sext_vec (<2 x i32 > %a ) {
283
283
; CHECK-LABEL: @smin_sext_vec(
284
- ; CHECK-NEXT: [[TMP1 :%.*]] = call <2 x i32> @llvm.smin.v2i32(<2 x i32> [[A:%.*]], <2 x i32> zeroinitializer)
285
- ; CHECK-NEXT: [[MIN:%.*]] = sext <2 x i32> [[TMP1 ]] to <2 x i64>
284
+ ; CHECK-NEXT: [[NARROW :%.*]] = call <2 x i32> @llvm.smin.v2i32(<2 x i32> [[A:%.*]], <2 x i32> zeroinitializer)
285
+ ; CHECK-NEXT: [[MIN:%.*]] = sext <2 x i32> [[NARROW ]] to <2 x i64>
286
286
; CHECK-NEXT: ret <2 x i64> [[MIN]]
287
287
;
288
288
%a_ext = sext <2 x i32 > %a to <2 x i64 >
@@ -293,8 +293,8 @@ define <2 x i64>@smin_sext_vec(<2 x i32> %a) {
293
293
294
294
define i64 @umax_sext (i32 %a ) {
295
295
; CHECK-LABEL: @umax_sext(
296
- ; CHECK-NEXT: [[TMP1 :%.*]] = call i32 @llvm.umax.i32(i32 [[A:%.*]], i32 3)
297
- ; CHECK-NEXT: [[MAX:%.*]] = sext i32 [[TMP1 ]] to i64
296
+ ; CHECK-NEXT: [[NARROW :%.*]] = call i32 @llvm.umax.i32(i32 [[A:%.*]], i32 3)
297
+ ; CHECK-NEXT: [[MAX:%.*]] = sext i32 [[NARROW ]] to i64
298
298
; CHECK-NEXT: ret i64 [[MAX]]
299
299
;
300
300
%a_ext = sext i32 %a to i64
@@ -305,8 +305,8 @@ define i64 @umax_sext(i32 %a) {
305
305
306
306
define <2 x i64 > @umax_sext_vec (<2 x i32 > %a ) {
307
307
; CHECK-LABEL: @umax_sext_vec(
308
- ; CHECK-NEXT: [[TMP1 :%.*]] = call <2 x i32> @llvm.umax.v2i32(<2 x i32> [[A:%.*]], <2 x i32> <i32 3, i32 3>)
309
- ; CHECK-NEXT: [[MAX:%.*]] = sext <2 x i32> [[TMP1 ]] to <2 x i64>
308
+ ; CHECK-NEXT: [[NARROW :%.*]] = call <2 x i32> @llvm.umax.v2i32(<2 x i32> [[A:%.*]], <2 x i32> <i32 3, i32 3>)
309
+ ; CHECK-NEXT: [[MAX:%.*]] = sext <2 x i32> [[NARROW ]] to <2 x i64>
310
310
; CHECK-NEXT: ret <2 x i64> [[MAX]]
311
311
;
312
312
%a_ext = sext <2 x i32 > %a to <2 x i64 >
@@ -317,8 +317,8 @@ define <2 x i64> @umax_sext_vec(<2 x i32> %a) {
317
317
318
318
define i64 @umin_sext (i32 %a ) {
319
319
; CHECK-LABEL: @umin_sext(
320
- ; CHECK-NEXT: [[TMP1 :%.*]] = call i32 @llvm.umin.i32(i32 [[A:%.*]], i32 2)
321
- ; CHECK-NEXT: [[MIN:%.*]] = zext i32 [[TMP1 ]] to i64
320
+ ; CHECK-NEXT: [[NARROW :%.*]] = call i32 @llvm.umin.i32(i32 [[A:%.*]], i32 2)
321
+ ; CHECK-NEXT: [[MIN:%.*]] = zext i32 [[NARROW ]] to i64
322
322
; CHECK-NEXT: ret i64 [[MIN]]
323
323
;
324
324
%a_ext = sext i32 %a to i64
@@ -329,8 +329,8 @@ define i64 @umin_sext(i32 %a) {
329
329
330
330
define <2 x i64 > @umin_sext_vec (<2 x i32 > %a ) {
331
331
; CHECK-LABEL: @umin_sext_vec(
332
- ; CHECK-NEXT: [[TMP1 :%.*]] = call <2 x i32> @llvm.umin.v2i32(<2 x i32> [[A:%.*]], <2 x i32> <i32 2, i32 2>)
333
- ; CHECK-NEXT: [[MIN:%.*]] = zext <2 x i32> [[TMP1 ]] to <2 x i64>
332
+ ; CHECK-NEXT: [[NARROW :%.*]] = call <2 x i32> @llvm.umin.v2i32(<2 x i32> [[A:%.*]], <2 x i32> <i32 2, i32 2>)
333
+ ; CHECK-NEXT: [[MIN:%.*]] = zext <2 x i32> [[NARROW ]] to <2 x i64>
334
334
; CHECK-NEXT: ret <2 x i64> [[MIN]]
335
335
;
336
336
%a_ext = sext <2 x i32 > %a to <2 x i64 >
@@ -341,8 +341,8 @@ define <2 x i64> @umin_sext_vec(<2 x i32> %a) {
341
341
342
342
define i64 @umax_sext2 (i32 %a ) {
343
343
; CHECK-LABEL: @umax_sext2(
344
- ; CHECK-NEXT: [[TMP1 :%.*]] = call i32 @llvm.umax.i32(i32 [[A:%.*]], i32 2)
345
- ; CHECK-NEXT: [[MIN:%.*]] = sext i32 [[TMP1 ]] to i64
344
+ ; CHECK-NEXT: [[NARROW :%.*]] = call i32 @llvm.umax.i32(i32 [[A:%.*]], i32 2)
345
+ ; CHECK-NEXT: [[MIN:%.*]] = sext i32 [[NARROW ]] to i64
346
346
; CHECK-NEXT: ret i64 [[MIN]]
347
347
;
348
348
%a_ext = sext i32 %a to i64
@@ -353,8 +353,8 @@ define i64 @umax_sext2(i32 %a) {
353
353
354
354
define <2 x i64 > @umax_sext2_vec (<2 x i32 > %a ) {
355
355
; CHECK-LABEL: @umax_sext2_vec(
356
- ; CHECK-NEXT: [[TMP1 :%.*]] = call <2 x i32> @llvm.umax.v2i32(<2 x i32> [[A:%.*]], <2 x i32> <i32 2, i32 2>)
357
- ; CHECK-NEXT: [[MIN:%.*]] = sext <2 x i32> [[TMP1 ]] to <2 x i64>
356
+ ; CHECK-NEXT: [[NARROW :%.*]] = call <2 x i32> @llvm.umax.v2i32(<2 x i32> [[A:%.*]], <2 x i32> <i32 2, i32 2>)
357
+ ; CHECK-NEXT: [[MIN:%.*]] = sext <2 x i32> [[NARROW ]] to <2 x i64>
358
358
; CHECK-NEXT: ret <2 x i64> [[MIN]]
359
359
;
360
360
%a_ext = sext <2 x i32 > %a to <2 x i64 >
@@ -365,8 +365,8 @@ define <2 x i64> @umax_sext2_vec(<2 x i32> %a) {
365
365
366
366
define i64 @umin_sext2 (i32 %a ) {
367
367
; CHECK-LABEL: @umin_sext2(
368
- ; CHECK-NEXT: [[TMP1 :%.*]] = call i32 @llvm.umin.i32(i32 [[A:%.*]], i32 3)
369
- ; CHECK-NEXT: [[MIN:%.*]] = zext i32 [[TMP1 ]] to i64
368
+ ; CHECK-NEXT: [[NARROW :%.*]] = call i32 @llvm.umin.i32(i32 [[A:%.*]], i32 3)
369
+ ; CHECK-NEXT: [[MIN:%.*]] = zext i32 [[NARROW ]] to i64
370
370
; CHECK-NEXT: ret i64 [[MIN]]
371
371
;
372
372
%a_ext = sext i32 %a to i64
@@ -377,8 +377,8 @@ define i64 @umin_sext2(i32 %a) {
377
377
378
378
define <2 x i64 > @umin_sext2_vec (<2 x i32 > %a ) {
379
379
; CHECK-LABEL: @umin_sext2_vec(
380
- ; CHECK-NEXT: [[TMP1 :%.*]] = call <2 x i32> @llvm.umin.v2i32(<2 x i32> [[A:%.*]], <2 x i32> <i32 3, i32 3>)
381
- ; CHECK-NEXT: [[MIN:%.*]] = zext <2 x i32> [[TMP1 ]] to <2 x i64>
380
+ ; CHECK-NEXT: [[NARROW :%.*]] = call <2 x i32> @llvm.umin.v2i32(<2 x i32> [[A:%.*]], <2 x i32> <i32 3, i32 3>)
381
+ ; CHECK-NEXT: [[MIN:%.*]] = zext <2 x i32> [[NARROW ]] to <2 x i64>
382
382
; CHECK-NEXT: ret <2 x i64> [[MIN]]
383
383
;
384
384
%a_ext = sext <2 x i32 > %a to <2 x i64 >
@@ -389,8 +389,8 @@ define <2 x i64> @umin_sext2_vec(<2 x i32> %a) {
389
389
390
390
define i64 @umax_zext (i32 %a ) {
391
391
; CHECK-LABEL: @umax_zext(
392
- ; CHECK-NEXT: [[TMP1 :%.*]] = call i32 @llvm.umax.i32(i32 [[A:%.*]], i32 3)
393
- ; CHECK-NEXT: [[MAX:%.*]] = zext i32 [[TMP1 ]] to i64
392
+ ; CHECK-NEXT: [[NARROW :%.*]] = call i32 @llvm.umax.i32(i32 [[A:%.*]], i32 3)
393
+ ; CHECK-NEXT: [[MAX:%.*]] = zext i32 [[NARROW ]] to i64
394
394
; CHECK-NEXT: ret i64 [[MAX]]
395
395
;
396
396
%a_ext = zext i32 %a to i64
@@ -401,8 +401,8 @@ define i64 @umax_zext(i32 %a) {
401
401
402
402
define <2 x i64 > @umax_zext_vec (<2 x i32 > %a ) {
403
403
; CHECK-LABEL: @umax_zext_vec(
404
- ; CHECK-NEXT: [[TMP1 :%.*]] = call <2 x i32> @llvm.umax.v2i32(<2 x i32> [[A:%.*]], <2 x i32> <i32 3, i32 3>)
405
- ; CHECK-NEXT: [[MAX:%.*]] = zext <2 x i32> [[TMP1 ]] to <2 x i64>
404
+ ; CHECK-NEXT: [[NARROW :%.*]] = call <2 x i32> @llvm.umax.v2i32(<2 x i32> [[A:%.*]], <2 x i32> <i32 3, i32 3>)
405
+ ; CHECK-NEXT: [[MAX:%.*]] = zext <2 x i32> [[NARROW ]] to <2 x i64>
406
406
; CHECK-NEXT: ret <2 x i64> [[MAX]]
407
407
;
408
408
%a_ext = zext <2 x i32 > %a to <2 x i64 >
@@ -413,8 +413,8 @@ define <2 x i64> @umax_zext_vec(<2 x i32> %a) {
413
413
414
414
define i64 @umin_zext (i32 %a ) {
415
415
; CHECK-LABEL: @umin_zext(
416
- ; CHECK-NEXT: [[TMP1 :%.*]] = call i32 @llvm.umin.i32(i32 [[A:%.*]], i32 2)
417
- ; CHECK-NEXT: [[MIN:%.*]] = zext i32 [[TMP1 ]] to i64
416
+ ; CHECK-NEXT: [[NARROW :%.*]] = call i32 @llvm.umin.i32(i32 [[A:%.*]], i32 2)
417
+ ; CHECK-NEXT: [[MIN:%.*]] = zext i32 [[NARROW ]] to i64
418
418
; CHECK-NEXT: ret i64 [[MIN]]
419
419
;
420
420
%a_ext = zext i32 %a to i64
@@ -425,8 +425,8 @@ define i64 @umin_zext(i32 %a) {
425
425
426
426
define <2 x i64 > @umin_zext_vec (<2 x i32 > %a ) {
427
427
; CHECK-LABEL: @umin_zext_vec(
428
- ; CHECK-NEXT: [[TMP1 :%.*]] = call <2 x i32> @llvm.umin.v2i32(<2 x i32> [[A:%.*]], <2 x i32> <i32 2, i32 2>)
429
- ; CHECK-NEXT: [[MIN:%.*]] = zext <2 x i32> [[TMP1 ]] to <2 x i64>
428
+ ; CHECK-NEXT: [[NARROW :%.*]] = call <2 x i32> @llvm.umin.v2i32(<2 x i32> [[A:%.*]], <2 x i32> <i32 2, i32 2>)
429
+ ; CHECK-NEXT: [[MIN:%.*]] = zext <2 x i32> [[NARROW ]] to <2 x i64>
430
430
; CHECK-NEXT: ret <2 x i64> [[MIN]]
431
431
;
432
432
%a_ext = zext <2 x i32 > %a to <2 x i64 >
0 commit comments