Skip to content

Commit 1e786fb

Browse files
authored
AMDGPU: Reorder arguments of DS_Real_gfx12 (NFC) (#156405)
This helps shrink the diff in a future change.
1 parent 442b14d commit 1e786fb

File tree

1 file changed

+26
-15
lines changed

1 file changed

+26
-15
lines changed

llvm/lib/Target/AMDGPU/DSInstructions.td

Lines changed: 26 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1361,8 +1361,10 @@ class Base_DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<bits<8> op, DS_Pseudo ps, int ef,
13611361
// GFX12.
13621362
//===----------------------------------------------------------------------===//
13631363

1364-
multiclass DS_Real_gfx12<bits<8> op, string name = !tolower(NAME)> {
1365-
defvar ps = !cast<DS_Pseudo>(NAME);
1364+
multiclass DS_Real_gfx12<bits<8> op,
1365+
DS_Pseudo ps = !cast<DS_Pseudo>(NAME),
1366+
string name = !tolower(NAME)> {
1367+
13661368
let AssemblerPredicate = isGFX12Plus in {
13671369
let DecoderNamespace = "GFX12" in
13681370
def _gfx12 :
@@ -1373,14 +1375,20 @@ multiclass DS_Real_gfx12<bits<8> op, string name = !tolower(NAME)> {
13731375
} // End AssemblerPredicate
13741376
}
13751377

1376-
defm DS_MIN_F32 : DS_Real_gfx12<0x012, "ds_min_num_f32">;
1377-
defm DS_MAX_F32 : DS_Real_gfx12<0x013, "ds_max_num_f32">;
1378-
defm DS_MIN_RTN_F32 : DS_Real_gfx12<0x032, "ds_min_num_rtn_f32">;
1379-
defm DS_MAX_RTN_F32 : DS_Real_gfx12<0x033, "ds_max_num_rtn_f32">;
1380-
defm DS_MIN_F64 : DS_Real_gfx12<0x052, "ds_min_num_f64">;
1381-
defm DS_MAX_F64 : DS_Real_gfx12<0x053, "ds_max_num_f64">;
1382-
defm DS_MIN_RTN_F64 : DS_Real_gfx12<0x072, "ds_min_num_rtn_f64">;
1383-
defm DS_MAX_RTN_F64 : DS_Real_gfx12<0x073, "ds_max_num_rtn_f64">;
1378+
// Helper to avoid repeating the pseudo-name if we only need to set
1379+
// the gfx12 name.
1380+
multiclass DS_Real_gfx12_with_name<bits<8> op, string name> {
1381+
defm "" : DS_Real_gfx12<op, !cast<DS_Pseudo>(NAME), name>;
1382+
}
1383+
1384+
defm DS_MIN_F32 : DS_Real_gfx12_with_name<0x012, "ds_min_num_f32">;
1385+
defm DS_MAX_F32 : DS_Real_gfx12_with_name<0x013, "ds_max_num_f32">;
1386+
defm DS_MIN_RTN_F32 : DS_Real_gfx12_with_name<0x032, "ds_min_num_rtn_f32">;
1387+
defm DS_MAX_RTN_F32 : DS_Real_gfx12_with_name<0x033, "ds_max_num_rtn_f32">;
1388+
defm DS_MIN_F64 : DS_Real_gfx12_with_name<0x052, "ds_min_num_f64">;
1389+
defm DS_MAX_F64 : DS_Real_gfx12_with_name<0x053, "ds_max_num_f64">;
1390+
defm DS_MIN_RTN_F64 : DS_Real_gfx12_with_name<0x072, "ds_min_num_rtn_f64">;
1391+
defm DS_MAX_RTN_F64 : DS_Real_gfx12_with_name<0x073, "ds_max_num_rtn_f64">;
13841392
defm DS_COND_SUB_U32 : DS_Real_gfx12<0x098>;
13851393
defm DS_SUB_CLAMP_U32 : DS_Real_gfx12<0x099>;
13861394
defm DS_COND_SUB_RTN_U32 : DS_Real_gfx12<0x0a8>;
@@ -1396,7 +1404,7 @@ defm DS_LOAD_TR6_B96 : DS_Real_gfx12<0x0fb>;
13961404
defm DS_LOAD_TR16_B128 : DS_Real_gfx12<0x0fc>;
13971405
defm DS_LOAD_TR8_B64 : DS_Real_gfx12<0x0fd>;
13981406

1399-
defm DS_BVH_STACK_RTN_B32 : DS_Real_gfx12<0x0e0,
1407+
defm DS_BVH_STACK_RTN_B32 : DS_Real_gfx12_with_name<0x0e0,
14001408
"ds_bvh_stack_push4_pop1_rtn_b32">;
14011409
defm DS_BVH_STACK_PUSH8_POP1_RTN_B32 : DS_Real_gfx12<0x0e1>;
14021410
defm DS_BVH_STACK_PUSH8_POP2_RTN_B64 : DS_Real_gfx12<0x0e2>;
@@ -1425,8 +1433,8 @@ def : MnemonicAlias<"ds_load_tr_b128", "ds_load_tr16_b128">, Requires<[isGFX1250
14251433
// GFX11.
14261434
//===----------------------------------------------------------------------===//
14271435

1428-
multiclass DS_Real_gfx11<bits<8> op, string name = !tolower(NAME)> {
1429-
defvar ps = !cast<DS_Pseudo>(NAME);
1436+
multiclass DS_Real_gfx11<bits<8> op, DS_Pseudo ps = !cast<DS_Pseudo>(NAME),
1437+
string name = !tolower(NAME)> {
14301438
let AssemblerPredicate = isGFX11Only in {
14311439
let DecoderNamespace = "GFX11" in
14321440
def _gfx11 :
@@ -1437,8 +1445,11 @@ multiclass DS_Real_gfx11<bits<8> op, string name = !tolower(NAME)> {
14371445
} // End AssemblerPredicate
14381446
}
14391447

1440-
multiclass DS_Real_gfx11_gfx12<bits<8> op, string name = !tolower(NAME)>
1441-
: DS_Real_gfx11<op, name>, DS_Real_gfx12<op, name>;
1448+
multiclass DS_Real_gfx11_gfx12<bits<8> op,
1449+
string name = !tolower(NAME),
1450+
DS_Pseudo ps = !cast<DS_Pseudo>(NAME)>
1451+
: DS_Real_gfx11<op, ps, name>,
1452+
DS_Real_gfx12<op, ps, name>;
14421453

14431454
defm DS_WRITE_B32 : DS_Real_gfx11_gfx12<0x00d, "ds_store_b32">;
14441455
defm DS_WRITE2_B32 : DS_Real_gfx11_gfx12<0x00e, "ds_store_2addr_b32">;

0 commit comments

Comments
 (0)