@@ -1320,6 +1320,30 @@ define <2 x i16> @undef_cvt_pknorm_i16() {
1320
1320
ret <2 x i16 > %cvt
1321
1321
}
1322
1322
1323
+ define <2 x i16 > @poison_lhs_cvt_pknorm_i16 (float %y ) {
1324
+ ; CHECK-LABEL: @poison_lhs_cvt_pknorm_i16(
1325
+ ; CHECK-NEXT: ret <2 x i16> poison
1326
+ ;
1327
+ %cvt = call <2 x i16 > @llvm.amdgcn.cvt.pknorm.i16 (float poison, float %y )
1328
+ ret <2 x i16 > %cvt
1329
+ }
1330
+
1331
+ define <2 x i16 > @poison_rhs_cvt_pknorm_i16 (float %x ) {
1332
+ ; CHECK-LABEL: @poison_rhs_cvt_pknorm_i16(
1333
+ ; CHECK-NEXT: ret <2 x i16> poison
1334
+ ;
1335
+ %cvt = call <2 x i16 > @llvm.amdgcn.cvt.pknorm.i16 (float %x , float poison)
1336
+ ret <2 x i16 > %cvt
1337
+ }
1338
+
1339
+ define <2 x i16 > @poison_cvt_pknorm_i16 () {
1340
+ ; CHECK-LABEL: @poison_cvt_pknorm_i16(
1341
+ ; CHECK-NEXT: ret <2 x i16> poison
1342
+ ;
1343
+ %cvt = call <2 x i16 > @llvm.amdgcn.cvt.pknorm.i16 (float poison, float poison)
1344
+ ret <2 x i16 > %cvt
1345
+ }
1346
+
1323
1347
; --------------------------------------------------------------------
1324
1348
; llvm.amdgcn.cvt.pknorm.u16
1325
1349
; --------------------------------------------------------------------
@@ -1352,6 +1376,30 @@ define <2 x i16> @undef_cvt_pknorm_u16() {
1352
1376
ret <2 x i16 > %cvt
1353
1377
}
1354
1378
1379
+ define <2 x i16 > @poison_lhs_cvt_pknorm_u16 (float %y ) {
1380
+ ; CHECK-LABEL: @poison_lhs_cvt_pknorm_u16(
1381
+ ; CHECK-NEXT: ret <2 x i16> poison
1382
+ ;
1383
+ %cvt = call <2 x i16 > @llvm.amdgcn.cvt.pknorm.u16 (float poison, float %y )
1384
+ ret <2 x i16 > %cvt
1385
+ }
1386
+
1387
+ define <2 x i16 > @poison_rhs_cvt_pknorm_u16 (float %x ) {
1388
+ ; CHECK-LABEL: @poison_rhs_cvt_pknorm_u16(
1389
+ ; CHECK-NEXT: ret <2 x i16> poison
1390
+ ;
1391
+ %cvt = call <2 x i16 > @llvm.amdgcn.cvt.pknorm.u16 (float %x , float poison)
1392
+ ret <2 x i16 > %cvt
1393
+ }
1394
+
1395
+ define <2 x i16 > @poison_cvt_pknorm_u16 () {
1396
+ ; CHECK-LABEL: @poison_cvt_pknorm_u16(
1397
+ ; CHECK-NEXT: ret <2 x i16> poison
1398
+ ;
1399
+ %cvt = call <2 x i16 > @llvm.amdgcn.cvt.pknorm.u16 (float poison, float poison)
1400
+ ret <2 x i16 > %cvt
1401
+ }
1402
+
1355
1403
; --------------------------------------------------------------------
1356
1404
; llvm.amdgcn.cvt.pk.i16
1357
1405
; --------------------------------------------------------------------
@@ -1384,6 +1432,30 @@ define <2 x i16> @undef_cvt_pk_i16() {
1384
1432
ret <2 x i16 > %cvt
1385
1433
}
1386
1434
1435
+ define <2 x i16 > @poison_lhs_cvt_pk_i16 (i32 %y ) {
1436
+ ; CHECK-LABEL: @poison_lhs_cvt_pk_i16(
1437
+ ; CHECK-NEXT: ret <2 x i16> poison
1438
+ ;
1439
+ %cvt = call <2 x i16 > @llvm.amdgcn.cvt.pk.i16 (i32 poison, i32 %y )
1440
+ ret <2 x i16 > %cvt
1441
+ }
1442
+
1443
+ define <2 x i16 > @poison_rhs_cvt_pk_i16 (i32 %x ) {
1444
+ ; CHECK-LABEL: @poison_rhs_cvt_pk_i16(
1445
+ ; CHECK-NEXT: ret <2 x i16> poison
1446
+ ;
1447
+ %cvt = call <2 x i16 > @llvm.amdgcn.cvt.pk.i16 (i32 %x , i32 poison)
1448
+ ret <2 x i16 > %cvt
1449
+ }
1450
+
1451
+ define <2 x i16 > @poison_cvt_pk_i16 () {
1452
+ ; CHECK-LABEL: @poison_cvt_pk_i16(
1453
+ ; CHECK-NEXT: ret <2 x i16> poison
1454
+ ;
1455
+ %cvt = call <2 x i16 > @llvm.amdgcn.cvt.pk.i16 (i32 poison, i32 poison)
1456
+ ret <2 x i16 > %cvt
1457
+ }
1458
+
1387
1459
; --------------------------------------------------------------------
1388
1460
; llvm.amdgcn.cvt.pk.u16
1389
1461
; --------------------------------------------------------------------
@@ -1416,6 +1488,30 @@ define <2 x i16> @undef_cvt_pk_u16() {
1416
1488
ret <2 x i16 > %cvt
1417
1489
}
1418
1490
1491
+ define <2 x i16 > @poison_lhs_cvt_pk_u16 (i32 %y ) {
1492
+ ; CHECK-LABEL: @poison_lhs_cvt_pk_u16(
1493
+ ; CHECK-NEXT: ret <2 x i16> poison
1494
+ ;
1495
+ %cvt = call <2 x i16 > @llvm.amdgcn.cvt.pk.u16 (i32 poison, i32 %y )
1496
+ ret <2 x i16 > %cvt
1497
+ }
1498
+
1499
+ define <2 x i16 > @poison_rhs_cvt_pk_u16 (i32 %x ) {
1500
+ ; CHECK-LABEL: @poison_rhs_cvt_pk_u16(
1501
+ ; CHECK-NEXT: ret <2 x i16> poison
1502
+ ;
1503
+ %cvt = call <2 x i16 > @llvm.amdgcn.cvt.pk.u16 (i32 %x , i32 poison)
1504
+ ret <2 x i16 > %cvt
1505
+ }
1506
+
1507
+ define <2 x i16 > @poison_cvt_pk_u16 () {
1508
+ ; CHECK-LABEL: @poison_cvt_pk_u16(
1509
+ ; CHECK-NEXT: ret <2 x i16> poison
1510
+ ;
1511
+ %cvt = call <2 x i16 > @llvm.amdgcn.cvt.pk.u16 (i32 poison, i32 poison)
1512
+ ret <2 x i16 > %cvt
1513
+ }
1514
+
1419
1515
; --------------------------------------------------------------------
1420
1516
; llvm.amdgcn.ubfe
1421
1517
; --------------------------------------------------------------------
0 commit comments