@@ -1147,12 +1147,11 @@ define amdgpu_kernel void @test_call_external_void_func_v2i64() #0 {
1147
1147
; VI-NEXT: s_mov_b32 s37, SCRATCH_RSRC_DWORD1
1148
1148
; VI-NEXT: s_mov_b32 s38, -1
1149
1149
; VI-NEXT: s_mov_b32 s39, 0xe80000
1150
- ; VI-NEXT: s_mov_b64 s[6:7], s[0:1]
1151
- ; VI-NEXT: s_mov_b32 s0, 0
1152
1150
; VI-NEXT: s_add_u32 s36, s36, s3
1151
+ ; VI-NEXT: s_mov_b64 s[6:7], s[0:1]
1152
+ ; VI-NEXT: s_mov_b64 s[0:1], 0
1153
1153
; VI-NEXT: s_mov_b32 s3, 0xf000
1154
1154
; VI-NEXT: s_mov_b32 s2, -1
1155
- ; VI-NEXT: s_mov_b32 s1, s0
1156
1155
; VI-NEXT: buffer_load_dwordx4 v[0:3], off, s[0:3], 0
1157
1156
; VI-NEXT: s_addc_u32 s37, s37, 0
1158
1157
; VI-NEXT: s_mov_b64 s[0:1], s[36:37]
@@ -1170,12 +1169,11 @@ define amdgpu_kernel void @test_call_external_void_func_v2i64() #0 {
1170
1169
; CI-NEXT: s_mov_b32 s37, SCRATCH_RSRC_DWORD1
1171
1170
; CI-NEXT: s_mov_b32 s38, -1
1172
1171
; CI-NEXT: s_mov_b32 s39, 0xe8f000
1173
- ; CI-NEXT: s_mov_b64 s[6:7], s[0:1]
1174
- ; CI-NEXT: s_mov_b32 s0, 0
1175
1172
; CI-NEXT: s_add_u32 s36, s36, s3
1173
+ ; CI-NEXT: s_mov_b64 s[6:7], s[0:1]
1174
+ ; CI-NEXT: s_mov_b64 s[0:1], 0
1176
1175
; CI-NEXT: s_mov_b32 s3, 0xf000
1177
1176
; CI-NEXT: s_mov_b32 s2, -1
1178
- ; CI-NEXT: s_mov_b32 s1, s0
1179
1177
; CI-NEXT: buffer_load_dwordx4 v[0:3], off, s[0:3], 0
1180
1178
; CI-NEXT: s_addc_u32 s37, s37, 0
1181
1179
; CI-NEXT: s_mov_b64 s[0:1], s[36:37]
@@ -1193,12 +1191,11 @@ define amdgpu_kernel void @test_call_external_void_func_v2i64() #0 {
1193
1191
; GFX9-NEXT: s_mov_b32 s37, SCRATCH_RSRC_DWORD1
1194
1192
; GFX9-NEXT: s_mov_b32 s38, -1
1195
1193
; GFX9-NEXT: s_mov_b32 s39, 0xe00000
1196
- ; GFX9-NEXT: s_mov_b64 s[6:7], s[0:1]
1197
- ; GFX9-NEXT: s_mov_b32 s0, 0
1198
1194
; GFX9-NEXT: s_add_u32 s36, s36, s3
1195
+ ; GFX9-NEXT: s_mov_b64 s[6:7], s[0:1]
1196
+ ; GFX9-NEXT: s_mov_b64 s[0:1], 0
1199
1197
; GFX9-NEXT: s_mov_b32 s3, 0xf000
1200
1198
; GFX9-NEXT: s_mov_b32 s2, -1
1201
- ; GFX9-NEXT: s_mov_b32 s1, s0
1202
1199
; GFX9-NEXT: buffer_load_dwordx4 v[0:3], off, s[0:3], 0
1203
1200
; GFX9-NEXT: s_addc_u32 s37, s37, 0
1204
1201
; GFX9-NEXT: s_mov_b64 s[0:1], s[36:37]
@@ -1212,10 +1209,9 @@ define amdgpu_kernel void @test_call_external_void_func_v2i64() #0 {
1212
1209
;
1213
1210
; GFX11-LABEL: test_call_external_void_func_v2i64:
1214
1211
; GFX11: ; %bb.0:
1215
- ; GFX11-NEXT: s_mov_b32 s4 , 0
1212
+ ; GFX11-NEXT: s_mov_b64 s[4:5] , 0
1216
1213
; GFX11-NEXT: s_mov_b32 s7, 0x31016000
1217
1214
; GFX11-NEXT: s_mov_b32 s6, -1
1218
- ; GFX11-NEXT: s_mov_b32 s5, s4
1219
1215
; GFX11-NEXT: s_getpc_b64 s[2:3]
1220
1216
; GFX11-NEXT: s_add_u32 s2, s2, external_void_func_v2i64@rel32@lo+4
1221
1217
; GFX11-NEXT: s_addc_u32 s3, s3, external_void_func_v2i64@rel32@hi+12
@@ -1229,11 +1225,10 @@ define amdgpu_kernel void @test_call_external_void_func_v2i64() #0 {
1229
1225
; HSA: ; %bb.0:
1230
1226
; HSA-NEXT: s_add_i32 s6, s6, s9
1231
1227
; HSA-NEXT: s_lshr_b32 flat_scratch_hi, s6, 8
1232
- ; HSA-NEXT: s_mov_b32 s8, 0
1233
1228
; HSA-NEXT: s_add_u32 s0, s0, s9
1229
+ ; HSA-NEXT: s_mov_b64 s[8:9], 0
1234
1230
; HSA-NEXT: s_mov_b32 s11, 0x1100f000
1235
1231
; HSA-NEXT: s_mov_b32 s10, -1
1236
- ; HSA-NEXT: s_mov_b32 s9, s8
1237
1232
; HSA-NEXT: buffer_load_dwordx4 v[0:3], off, s[8:11], 0
1238
1233
; HSA-NEXT: s_addc_u32 s1, s1, 0
1239
1234
; HSA-NEXT: s_mov_b32 flat_scratch_lo, s7
@@ -1357,12 +1352,11 @@ define amdgpu_kernel void @test_call_external_void_func_v3i64() #0 {
1357
1352
; VI-NEXT: s_mov_b32 s37, SCRATCH_RSRC_DWORD1
1358
1353
; VI-NEXT: s_mov_b32 s38, -1
1359
1354
; VI-NEXT: s_mov_b32 s39, 0xe80000
1360
- ; VI-NEXT: s_mov_b64 s[6:7], s[0:1]
1361
- ; VI-NEXT: s_mov_b32 s0, 0
1362
1355
; VI-NEXT: s_add_u32 s36, s36, s3
1356
+ ; VI-NEXT: s_mov_b64 s[6:7], s[0:1]
1357
+ ; VI-NEXT: s_mov_b64 s[0:1], 0
1363
1358
; VI-NEXT: s_mov_b32 s3, 0xf000
1364
1359
; VI-NEXT: s_mov_b32 s2, -1
1365
- ; VI-NEXT: s_mov_b32 s1, s0
1366
1360
; VI-NEXT: buffer_load_dwordx4 v[0:3], off, s[0:3], 0
1367
1361
; VI-NEXT: s_addc_u32 s37, s37, 0
1368
1362
; VI-NEXT: s_mov_b64 s[0:1], s[36:37]
@@ -1382,12 +1376,11 @@ define amdgpu_kernel void @test_call_external_void_func_v3i64() #0 {
1382
1376
; CI-NEXT: s_mov_b32 s37, SCRATCH_RSRC_DWORD1
1383
1377
; CI-NEXT: s_mov_b32 s38, -1
1384
1378
; CI-NEXT: s_mov_b32 s39, 0xe8f000
1385
- ; CI-NEXT: s_mov_b64 s[6:7], s[0:1]
1386
- ; CI-NEXT: s_mov_b32 s0, 0
1387
1379
; CI-NEXT: s_add_u32 s36, s36, s3
1380
+ ; CI-NEXT: s_mov_b64 s[6:7], s[0:1]
1381
+ ; CI-NEXT: s_mov_b64 s[0:1], 0
1388
1382
; CI-NEXT: s_mov_b32 s3, 0xf000
1389
1383
; CI-NEXT: s_mov_b32 s2, -1
1390
- ; CI-NEXT: s_mov_b32 s1, s0
1391
1384
; CI-NEXT: buffer_load_dwordx4 v[0:3], off, s[0:3], 0
1392
1385
; CI-NEXT: s_addc_u32 s37, s37, 0
1393
1386
; CI-NEXT: s_mov_b64 s[0:1], s[36:37]
@@ -1407,12 +1400,11 @@ define amdgpu_kernel void @test_call_external_void_func_v3i64() #0 {
1407
1400
; GFX9-NEXT: s_mov_b32 s37, SCRATCH_RSRC_DWORD1
1408
1401
; GFX9-NEXT: s_mov_b32 s38, -1
1409
1402
; GFX9-NEXT: s_mov_b32 s39, 0xe00000
1410
- ; GFX9-NEXT: s_mov_b64 s[6:7], s[0:1]
1411
- ; GFX9-NEXT: s_mov_b32 s0, 0
1412
1403
; GFX9-NEXT: s_add_u32 s36, s36, s3
1404
+ ; GFX9-NEXT: s_mov_b64 s[6:7], s[0:1]
1405
+ ; GFX9-NEXT: s_mov_b64 s[0:1], 0
1413
1406
; GFX9-NEXT: s_mov_b32 s3, 0xf000
1414
1407
; GFX9-NEXT: s_mov_b32 s2, -1
1415
- ; GFX9-NEXT: s_mov_b32 s1, s0
1416
1408
; GFX9-NEXT: buffer_load_dwordx4 v[0:3], off, s[0:3], 0
1417
1409
; GFX9-NEXT: s_addc_u32 s37, s37, 0
1418
1410
; GFX9-NEXT: s_mov_b64 s[0:1], s[36:37]
@@ -1428,10 +1420,9 @@ define amdgpu_kernel void @test_call_external_void_func_v3i64() #0 {
1428
1420
;
1429
1421
; GFX11-LABEL: test_call_external_void_func_v3i64:
1430
1422
; GFX11: ; %bb.0:
1431
- ; GFX11-NEXT: s_mov_b32 s4 , 0
1423
+ ; GFX11-NEXT: s_mov_b64 s[4:5] , 0
1432
1424
; GFX11-NEXT: s_mov_b32 s7, 0x31016000
1433
1425
; GFX11-NEXT: s_mov_b32 s6, -1
1434
- ; GFX11-NEXT: s_mov_b32 s5, s4
1435
1426
; GFX11-NEXT: v_dual_mov_b32 v4, 1 :: v_dual_mov_b32 v5, 2
1436
1427
; GFX11-NEXT: buffer_load_b128 v[0:3], off, s[4:7], 0
1437
1428
; GFX11-NEXT: s_getpc_b64 s[2:3]
@@ -1446,11 +1437,10 @@ define amdgpu_kernel void @test_call_external_void_func_v3i64() #0 {
1446
1437
; HSA: ; %bb.0:
1447
1438
; HSA-NEXT: s_add_i32 s6, s6, s9
1448
1439
; HSA-NEXT: s_lshr_b32 flat_scratch_hi, s6, 8
1449
- ; HSA-NEXT: s_mov_b32 s8, 0
1450
1440
; HSA-NEXT: s_add_u32 s0, s0, s9
1441
+ ; HSA-NEXT: s_mov_b64 s[8:9], 0
1451
1442
; HSA-NEXT: s_mov_b32 s11, 0x1100f000
1452
1443
; HSA-NEXT: s_mov_b32 s10, -1
1453
- ; HSA-NEXT: s_mov_b32 s9, s8
1454
1444
; HSA-NEXT: buffer_load_dwordx4 v[0:3], off, s[8:11], 0
1455
1445
; HSA-NEXT: s_addc_u32 s1, s1, 0
1456
1446
; HSA-NEXT: s_mov_b32 flat_scratch_lo, s7
@@ -1477,12 +1467,11 @@ define amdgpu_kernel void @test_call_external_void_func_v4i64() #0 {
1477
1467
; VI-NEXT: s_mov_b32 s37, SCRATCH_RSRC_DWORD1
1478
1468
; VI-NEXT: s_mov_b32 s38, -1
1479
1469
; VI-NEXT: s_mov_b32 s39, 0xe80000
1480
- ; VI-NEXT: s_mov_b64 s[6:7], s[0:1]
1481
- ; VI-NEXT: s_mov_b32 s0, 0
1482
1470
; VI-NEXT: s_add_u32 s36, s36, s3
1471
+ ; VI-NEXT: s_mov_b64 s[6:7], s[0:1]
1472
+ ; VI-NEXT: s_mov_b64 s[0:1], 0
1483
1473
; VI-NEXT: s_mov_b32 s3, 0xf000
1484
1474
; VI-NEXT: s_mov_b32 s2, -1
1485
- ; VI-NEXT: s_mov_b32 s1, s0
1486
1475
; VI-NEXT: buffer_load_dwordx4 v[0:3], off, s[0:3], 0
1487
1476
; VI-NEXT: s_addc_u32 s37, s37, 0
1488
1477
; VI-NEXT: s_mov_b64 s[0:1], s[36:37]
@@ -1504,12 +1493,11 @@ define amdgpu_kernel void @test_call_external_void_func_v4i64() #0 {
1504
1493
; CI-NEXT: s_mov_b32 s37, SCRATCH_RSRC_DWORD1
1505
1494
; CI-NEXT: s_mov_b32 s38, -1
1506
1495
; CI-NEXT: s_mov_b32 s39, 0xe8f000
1507
- ; CI-NEXT: s_mov_b64 s[6:7], s[0:1]
1508
- ; CI-NEXT: s_mov_b32 s0, 0
1509
1496
; CI-NEXT: s_add_u32 s36, s36, s3
1497
+ ; CI-NEXT: s_mov_b64 s[6:7], s[0:1]
1498
+ ; CI-NEXT: s_mov_b64 s[0:1], 0
1510
1499
; CI-NEXT: s_mov_b32 s3, 0xf000
1511
1500
; CI-NEXT: s_mov_b32 s2, -1
1512
- ; CI-NEXT: s_mov_b32 s1, s0
1513
1501
; CI-NEXT: buffer_load_dwordx4 v[0:3], off, s[0:3], 0
1514
1502
; CI-NEXT: s_addc_u32 s37, s37, 0
1515
1503
; CI-NEXT: s_mov_b64 s[0:1], s[36:37]
@@ -1531,12 +1519,11 @@ define amdgpu_kernel void @test_call_external_void_func_v4i64() #0 {
1531
1519
; GFX9-NEXT: s_mov_b32 s37, SCRATCH_RSRC_DWORD1
1532
1520
; GFX9-NEXT: s_mov_b32 s38, -1
1533
1521
; GFX9-NEXT: s_mov_b32 s39, 0xe00000
1534
- ; GFX9-NEXT: s_mov_b64 s[6:7], s[0:1]
1535
- ; GFX9-NEXT: s_mov_b32 s0, 0
1536
1522
; GFX9-NEXT: s_add_u32 s36, s36, s3
1523
+ ; GFX9-NEXT: s_mov_b64 s[6:7], s[0:1]
1524
+ ; GFX9-NEXT: s_mov_b64 s[0:1], 0
1537
1525
; GFX9-NEXT: s_mov_b32 s3, 0xf000
1538
1526
; GFX9-NEXT: s_mov_b32 s2, -1
1539
- ; GFX9-NEXT: s_mov_b32 s1, s0
1540
1527
; GFX9-NEXT: buffer_load_dwordx4 v[0:3], off, s[0:3], 0
1541
1528
; GFX9-NEXT: s_addc_u32 s37, s37, 0
1542
1529
; GFX9-NEXT: s_mov_b64 s[0:1], s[36:37]
@@ -1554,10 +1541,9 @@ define amdgpu_kernel void @test_call_external_void_func_v4i64() #0 {
1554
1541
;
1555
1542
; GFX11-LABEL: test_call_external_void_func_v4i64:
1556
1543
; GFX11: ; %bb.0:
1557
- ; GFX11-NEXT: s_mov_b32 s4 , 0
1544
+ ; GFX11-NEXT: s_mov_b64 s[4:5] , 0
1558
1545
; GFX11-NEXT: s_mov_b32 s7, 0x31016000
1559
1546
; GFX11-NEXT: s_mov_b32 s6, -1
1560
- ; GFX11-NEXT: s_mov_b32 s5, s4
1561
1547
; GFX11-NEXT: v_dual_mov_b32 v4, 1 :: v_dual_mov_b32 v5, 2
1562
1548
; GFX11-NEXT: buffer_load_b128 v[0:3], off, s[4:7], 0
1563
1549
; GFX11-NEXT: v_dual_mov_b32 v6, 3 :: v_dual_mov_b32 v7, 4
@@ -1573,11 +1559,10 @@ define amdgpu_kernel void @test_call_external_void_func_v4i64() #0 {
1573
1559
; HSA: ; %bb.0:
1574
1560
; HSA-NEXT: s_add_i32 s6, s6, s9
1575
1561
; HSA-NEXT: s_lshr_b32 flat_scratch_hi, s6, 8
1576
- ; HSA-NEXT: s_mov_b32 s8, 0
1577
1562
; HSA-NEXT: s_add_u32 s0, s0, s9
1563
+ ; HSA-NEXT: s_mov_b64 s[8:9], 0
1578
1564
; HSA-NEXT: s_mov_b32 s11, 0x1100f000
1579
1565
; HSA-NEXT: s_mov_b32 s10, -1
1580
- ; HSA-NEXT: s_mov_b32 s9, s8
1581
1566
; HSA-NEXT: buffer_load_dwordx4 v[0:3], off, s[8:11], 0
1582
1567
; HSA-NEXT: s_addc_u32 s1, s1, 0
1583
1568
; HSA-NEXT: s_mov_b32 flat_scratch_lo, s7
0 commit comments