@@ -1972,30 +1972,30 @@ class Select_gfx6_gfx7<string opName> : SIMCInstr<opName, SIEncodingFamily.SI> {
1972
1972
multiclass SOP1_Real_gfx11<bits<8> op, string name = !tolower(NAME)> {
1973
1973
defvar ps = !cast<SOP1_Pseudo>(NAME);
1974
1974
def _gfx11 : SOP1_Real<op, ps, name>,
1975
- Select_gfx11<ps.Mnemonic >;
1975
+ Select_gfx11<ps.PseudoInstr >;
1976
1976
if !ne(ps.Mnemonic, name) then
1977
1977
def : MnemonicAlias<ps.Mnemonic, name>, Requires<[isGFX11Only]>;
1978
1978
}
1979
1979
1980
1980
multiclass SOP1_Real_gfx12<bits<8> op, string name = !tolower(NAME)> {
1981
1981
defvar ps = !cast<SOP1_Pseudo>(NAME);
1982
1982
def _gfx12 : SOP1_Real<op, ps, name>,
1983
- Select_gfx12<ps.Mnemonic >;
1983
+ Select_gfx12<ps.PseudoInstr >;
1984
1984
if !ne(ps.Mnemonic, name) then
1985
1985
def : MnemonicAlias<ps.Mnemonic, name>, Requires<[isGFX12Plus]>;
1986
1986
}
1987
1987
1988
1988
multiclass SOP1_M0_Real_gfx12<bits<8> op> {
1989
1989
def _gfx12 : SOP1_Real<op, !cast<SOP1_Pseudo>(NAME)>,
1990
- Select_gfx12<!cast<SOP1_Pseudo>(NAME).Mnemonic > {
1990
+ Select_gfx12<!cast<SOP1_Pseudo>(NAME).PseudoInstr > {
1991
1991
let Inst{7-0} = M0_gfx11plus.HWEncoding{7-0}; // Set Src0 encoding to M0
1992
1992
}
1993
1993
}
1994
1994
1995
1995
multiclass SOP1_IMM_Real_gfx12<bits<8> op> {
1996
1996
defvar ps = !cast<SOP1_Pseudo>(NAME);
1997
1997
def _gfx12 : SOP1_Real<op, ps>,
1998
- Select_gfx12<ps.Mnemonic >;
1998
+ Select_gfx12<ps.PseudoInstr >;
1999
1999
}
2000
2000
2001
2001
multiclass SOP1_Real_gfx11_gfx12<bits<8> op, string name = !tolower(NAME)> :
@@ -2106,7 +2106,7 @@ defm S_RNDNE_F16 : SOP1_Real_gfx11_gfx12<0x06e>;
2106
2106
multiclass SOP1_Real_gfx10<bits<8> op> {
2107
2107
defvar ps = !cast<SOP1_Pseudo>(NAME);
2108
2108
def _gfx10 : SOP1_Real<op, ps>,
2109
- Select_gfx10<ps.Mnemonic >;
2109
+ Select_gfx10<ps.PseudoInstr >;
2110
2110
}
2111
2111
2112
2112
multiclass SOP1_Real_gfx10_gfx11_gfx12<bits<8> op> :
@@ -2139,7 +2139,7 @@ defm S_MOVRELSD_2_B32 : SOP1_Real_gfx10<0x049>;
2139
2139
multiclass SOP1_Real_gfx6_gfx7<bits<8> op> {
2140
2140
defvar ps = !cast<SOP1_Pseudo>(NAME);
2141
2141
def _gfx6_gfx7 : SOP1_Real<op, ps>,
2142
- Select_gfx6_gfx7<ps.Mnemonic >;
2142
+ Select_gfx6_gfx7<ps.PseudoInstr >;
2143
2143
}
2144
2144
2145
2145
multiclass SOP1_Real_gfx6_gfx7_gfx10<bits<8> op> :
@@ -2205,7 +2205,7 @@ defm S_ABS_I32 : SOP1_Real_gfx6_gfx7_gfx10<0x034>;
2205
2205
multiclass SOP2_Real_gfx12<bits<7> op, string name = !tolower(NAME)> {
2206
2206
defvar ps = !cast<SOP2_Pseudo>(NAME);
2207
2207
def _gfx12 : SOP2_Real32<op, ps, name>,
2208
- Select_gfx12<ps.Mnemonic >;
2208
+ Select_gfx12<ps.PseudoInstr >;
2209
2209
if !ne(ps.Mnemonic, name) then
2210
2210
def : MnemonicAlias<ps.Mnemonic, name>, Requires<[isGFX12Plus]>;
2211
2211
}
@@ -2222,7 +2222,7 @@ defm S_MAXIMUM_F16 : SOP2_Real_gfx12<0x052>;
2222
2222
multiclass SOP2_Real_gfx11<bits<7> op, string name = !tolower(NAME)> {
2223
2223
defvar ps = !cast<SOP2_Pseudo>(NAME);
2224
2224
def _gfx11 : SOP2_Real32<op, ps, name>,
2225
- Select_gfx11<ps.Mnemonic >;
2225
+ Select_gfx11<ps.PseudoInstr >;
2226
2226
if !ne(ps.Mnemonic, name) then
2227
2227
def : MnemonicAlias<ps.Mnemonic, name>, Requires<[isGFX11Only]>;
2228
2228
}
@@ -2283,12 +2283,12 @@ defm S_MUL_U64 : SOP2_Real_gfx12<0x055>;
2283
2283
2284
2284
multiclass SOP2_Real_FMAK_gfx12<bits<7> op> {
2285
2285
def _gfx12 : SOP2_Real64<op, !cast<SOP2_Pseudo>(NAME)>,
2286
- Select_gfx12<!cast<SOP2_Pseudo>(NAME).Mnemonic >;
2286
+ Select_gfx12<!cast<SOP2_Pseudo>(NAME).PseudoInstr >;
2287
2287
}
2288
2288
2289
2289
multiclass SOP2_Real_FMAK_gfx11<bits<7> op> {
2290
2290
def _gfx11 : SOP2_Real64<op, !cast<SOP2_Pseudo>(NAME)>,
2291
- Select_gfx11<!cast<SOP2_Pseudo>(NAME).Mnemonic >;
2291
+ Select_gfx11<!cast<SOP2_Pseudo>(NAME).PseudoInstr >;
2292
2292
}
2293
2293
2294
2294
multiclass SOP2_Real_FMAK_gfx11_gfx12<bits<7> op> :
@@ -2325,7 +2325,7 @@ defm S_MAX_F16 : SOP2_Real_gfx11_Renamed_gfx12<0x04c, "s_max_num_f16">;
2325
2325
multiclass SOP2_Real_gfx10<bits<7> op> {
2326
2326
defvar ps = !cast<SOP2_Pseudo>(NAME);
2327
2327
def _gfx10 : SOP2_Real32<op, ps>,
2328
- Select_gfx10<ps.Mnemonic >;
2328
+ Select_gfx10<ps.PseudoInstr >;
2329
2329
}
2330
2330
2331
2331
multiclass SOP2_Real_gfx10_gfx11_gfx12<bits<7> op> :
@@ -2348,7 +2348,7 @@ defm S_MUL_HI_I32 : SOP2_Real_gfx10<0x036>;
2348
2348
multiclass SOP2_Real_gfx6_gfx7<bits<7> op> {
2349
2349
defvar ps = !cast<SOP2_Pseudo>(NAME);
2350
2350
def _gfx6_gfx7 : SOP2_Real32<op, ps>,
2351
- Select_gfx6_gfx7<ps.Mnemonic >;
2351
+ Select_gfx6_gfx7<ps.PseudoInstr >;
2352
2352
}
2353
2353
2354
2354
multiclass SOP2_Real_gfx6_gfx7_gfx10<bits<7> op> :
@@ -2410,24 +2410,24 @@ defm S_ABSDIFF_I32 : SOP2_Real_gfx6_gfx7_gfx10<0x02c>;
2410
2410
multiclass SOPK_Real32_gfx12<bits<5> op, string name = !tolower(NAME)> {
2411
2411
defvar ps = !cast<SOPK_Pseudo>(NAME);
2412
2412
def _gfx12 : SOPK_Real32<op, ps, name>,
2413
- Select_gfx12<ps.Mnemonic >;
2413
+ Select_gfx12<ps.PseudoInstr >;
2414
2414
if !ne(ps.Mnemonic, name) then
2415
2415
def : MnemonicAlias<ps.Mnemonic, name>, Requires<[isGFX12Plus]>;
2416
2416
}
2417
2417
2418
2418
multiclass SOPK_Real32_gfx11<bits<5> op> {
2419
2419
def _gfx11 : SOPK_Real32<op, !cast<SOPK_Pseudo>(NAME)>,
2420
- Select_gfx11<!cast<SOPK_Pseudo>(NAME).Mnemonic >;
2420
+ Select_gfx11<!cast<SOPK_Pseudo>(NAME).PseudoInstr >;
2421
2421
}
2422
2422
2423
2423
multiclass SOPK_Real64_gfx12<bits<5> op> {
2424
2424
def _gfx12 : SOPK_Real64<op, !cast<SOPK_Pseudo>(NAME)>,
2425
- Select_gfx12<!cast<SOPK_Pseudo>(NAME).Mnemonic >;
2425
+ Select_gfx12<!cast<SOPK_Pseudo>(NAME).PseudoInstr >;
2426
2426
}
2427
2427
2428
2428
multiclass SOPK_Real64_gfx11<bits<5> op> {
2429
2429
def _gfx11 : SOPK_Real64<op, !cast<SOPK_Pseudo>(NAME)>,
2430
- Select_gfx11<!cast<SOPK_Pseudo>(NAME).Mnemonic >;
2430
+ Select_gfx11<!cast<SOPK_Pseudo>(NAME).PseudoInstr >;
2431
2431
}
2432
2432
2433
2433
multiclass SOPK_Real32_gfx11_gfx12<bits<5> op> :
@@ -2454,13 +2454,13 @@ defm S_WAITCNT_LGKMCNT : SOPK_Real32_gfx11<0x01b>;
2454
2454
multiclass SOPK_Real32_gfx10<bits<5> op> {
2455
2455
defvar ps = !cast<SOPK_Pseudo>(NAME);
2456
2456
def _gfx10 : SOPK_Real32<op, ps>,
2457
- Select_gfx10<ps.Mnemonic >;
2457
+ Select_gfx10<ps.PseudoInstr >;
2458
2458
}
2459
2459
2460
2460
multiclass SOPK_Real64_gfx10<bits<5> op> {
2461
2461
defvar ps = !cast<SOPK_Pseudo>(NAME);
2462
2462
def _gfx10 : SOPK_Real64<op, ps>,
2463
- Select_gfx10<ps.Mnemonic >;
2463
+ Select_gfx10<ps.PseudoInstr >;
2464
2464
}
2465
2465
2466
2466
multiclass SOPK_Real32_gfx10_gfx11<bits<5> op> :
@@ -2485,13 +2485,13 @@ defm S_SUBVECTOR_LOOP_END : SOPK_Real32_gfx10<0x01c>;
2485
2485
multiclass SOPK_Real32_gfx6_gfx7<bits<5> op> {
2486
2486
defvar ps = !cast<SOPK_Pseudo>(NAME);
2487
2487
def _gfx6_gfx7 : SOPK_Real32<op, ps>,
2488
- Select_gfx6_gfx7<ps.Mnemonic >;
2488
+ Select_gfx6_gfx7<ps.PseudoInstr >;
2489
2489
}
2490
2490
2491
2491
multiclass SOPK_Real64_gfx6_gfx7<bits<5> op> {
2492
2492
defvar ps = !cast<SOPK_Pseudo>(NAME);
2493
2493
def _gfx6_gfx7 : SOPK_Real64<op, ps>,
2494
- Select_gfx6_gfx7<ps.Mnemonic >;
2494
+ Select_gfx6_gfx7<ps.PseudoInstr >;
2495
2495
}
2496
2496
2497
2497
multiclass SOPK_Real32_gfx6_gfx7_gfx10<bits<5> op> :
@@ -2539,7 +2539,7 @@ defm S_SETREG_IMM32_B32 : SOPK_Real64_gfx6_gfx7_gfx10<0x015>;
2539
2539
multiclass SOPP_Real_32_gfx12<bits<7> op, string name = !tolower(NAME)> {
2540
2540
defvar ps = !cast<SOPP_Pseudo>(NAME);
2541
2541
def _gfx12 : SOPP_Real_32<op, ps, name>,
2542
- Select_gfx12<ps.Mnemonic >;
2542
+ Select_gfx12<ps.PseudoInstr >;
2543
2543
if !ne(ps.Mnemonic, name) then
2544
2544
def : MnemonicAlias<ps.Mnemonic, name>, Requires<[isGFX12Plus]>;
2545
2545
}
@@ -2564,21 +2564,21 @@ defm S_WAIT_STORECNT_DSCNT : SOPP_Real_32_gfx12<0x049>;
2564
2564
multiclass SOPP_Real_32_gfx11<bits<7> op, string name = !tolower(NAME)> {
2565
2565
defvar ps = !cast<SOPP_Pseudo>(NAME);
2566
2566
def _gfx11 : SOPP_Real_32<op, ps, name>,
2567
- Select_gfx11<ps.Mnemonic >,
2567
+ Select_gfx11<ps.PseudoInstr >,
2568
2568
SOPPRelaxTable<0, ps.KeyName, "_gfx11">;
2569
2569
if !ne(ps.Mnemonic, name) then
2570
2570
def : MnemonicAlias<ps.Mnemonic, name>, Requires<[isGFX11Only]>;
2571
2571
}
2572
2572
2573
2573
multiclass SOPP_Real_64_gfx12<bits<7> op> {
2574
2574
def _gfx12 : SOPP_Real_64<op, !cast<SOPP_Pseudo>(NAME), !cast<SOPP_Pseudo>(NAME).Mnemonic>,
2575
- Select_gfx12<!cast<SOPP_Pseudo>(NAME).Mnemonic >,
2575
+ Select_gfx12<!cast<SOPP_Pseudo>(NAME).PseudoInstr >,
2576
2576
SOPPRelaxTable<1, !cast<SOPP_Pseudo>(NAME).KeyName, "_gfx12">;
2577
2577
}
2578
2578
2579
2579
multiclass SOPP_Real_64_gfx11<bits<7> op> {
2580
2580
def _gfx11 : SOPP_Real_64<op, !cast<SOPP_Pseudo>(NAME), !cast<SOPP_Pseudo>(NAME).Mnemonic>,
2581
- Select_gfx11<!cast<SOPP_Pseudo>(NAME).Mnemonic >,
2581
+ Select_gfx11<!cast<SOPP_Pseudo>(NAME).PseudoInstr >,
2582
2582
SOPPRelaxTable<1, !cast<SOPP_Pseudo>(NAME).KeyName, "_gfx11">;
2583
2583
}
2584
2584
@@ -2654,21 +2654,21 @@ defm S_SINGLEUSE_VDST : SOPP_Real_32_gfx11_gfx12<0x013>;
2654
2654
multiclass SOPP_Real_32_gfx6_gfx7<bits<7> op> {
2655
2655
defvar ps = !cast<SOPP_Pseudo>(NAME);
2656
2656
def _gfx6_gfx7 : SOPP_Real_32<op, ps, !cast<SOPP_Pseudo>(NAME).Mnemonic>,
2657
- Select_gfx6_gfx7<ps.Mnemonic >,
2657
+ Select_gfx6_gfx7<ps.PseudoInstr >,
2658
2658
SOPPRelaxTable<0, ps.KeyName, "_gfx6_gfx7">;
2659
2659
}
2660
2660
2661
2661
multiclass SOPP_Real_32_gfx8_gfx9<bits<7> op> {
2662
2662
defvar ps = !cast<SOPP_Pseudo>(NAME);
2663
2663
def _vi : SOPP_Real_32<op, ps>,
2664
- Select_vi<ps.Mnemonic >,
2664
+ Select_vi<ps.PseudoInstr >,
2665
2665
SOPPRelaxTable<0, ps.KeyName, "_vi">;
2666
2666
}
2667
2667
2668
2668
multiclass SOPP_Real_32_gfx10<bits<7> op> {
2669
2669
defvar ps = !cast<SOPP_Pseudo>(NAME);
2670
2670
def _gfx10 : SOPP_Real_32<op, ps>,
2671
- Select_gfx10<ps.Mnemonic >,
2671
+ Select_gfx10<ps.PseudoInstr >,
2672
2672
SOPPRelaxTable<0, ps.KeyName, "_gfx10">;
2673
2673
}
2674
2674
@@ -2691,21 +2691,21 @@ multiclass SOPP_Real_32_gfx10_gfx11_gfx12<bits<7> op> :
2691
2691
multiclass SOPP_Real_64_gfx6_gfx7<bits<7> op> {
2692
2692
defvar ps = !cast<SOPP_Pseudo>(NAME);
2693
2693
def _gfx6_gfx7 : SOPP_Real_64<op, ps>,
2694
- Select_gfx6_gfx7<ps.Mnemonic >,
2694
+ Select_gfx6_gfx7<ps.PseudoInstr >,
2695
2695
SOPPRelaxTable<1, ps.KeyName, "_gfx6_gfx7">;
2696
2696
}
2697
2697
2698
2698
multiclass SOPP_Real_64_gfx8_gfx9<bits<7> op> {
2699
2699
defvar ps = !cast<SOPP_Pseudo>(NAME);
2700
2700
def _vi : SOPP_Real_64<op, ps>,
2701
- Select_vi<ps.Mnemonic >,
2701
+ Select_vi<ps.PseudoInstr >,
2702
2702
SOPPRelaxTable<1, ps.KeyName, "_vi">;
2703
2703
}
2704
2704
2705
2705
multiclass SOPP_Real_64_gfx10<bits<7> op> {
2706
2706
defvar ps = !cast<SOPP_Pseudo>(NAME);
2707
2707
def _gfx10 : SOPP_Real_64<op, ps>,
2708
- Select_gfx10<ps.Mnemonic >,
2708
+ Select_gfx10<ps.PseudoInstr >,
2709
2709
SOPPRelaxTable<1, ps.KeyName, "_gfx10">;
2710
2710
}
2711
2711
@@ -2771,12 +2771,12 @@ defm S_CBRANCH_CDBGSYS_AND_USER : SOPP_Real_With_Relaxation_gfx6_gfx7_gfx8_gfx9_
2771
2771
2772
2772
multiclass SOPC_Real_gfx12<bits<7> op> {
2773
2773
def _gfx12 : SOPC_Real<op, !cast<SOPC_Pseudo>(NAME)>,
2774
- Select_gfx12<!cast<SOPC_Pseudo>(NAME).Mnemonic >;
2774
+ Select_gfx12<!cast<SOPC_Pseudo>(NAME).PseudoInstr >;
2775
2775
}
2776
2776
2777
2777
multiclass SOPC_Real_gfx11<bits<7> op> {
2778
2778
def _gfx11 : SOPC_Real<op, !cast<SOPC_Pseudo>(NAME)>,
2779
- Select_gfx11<!cast<SOPC_Pseudo>(NAME).Mnemonic >;
2779
+ Select_gfx11<!cast<SOPC_Pseudo>(NAME).PseudoInstr >;
2780
2780
}
2781
2781
2782
2782
multiclass SOPC_Real_gfx11_gfx12<bits<7> op> :
@@ -2826,19 +2826,19 @@ defm S_CMP_NLT_F16 : SOPC_Real_gfx11_gfx12<0x5e>;
2826
2826
multiclass SOPC_Real_gfx6_gfx7<bits<7> op> {
2827
2827
defvar ps = !cast<SOPC_Pseudo>(NAME);
2828
2828
def _gfx6_gfx7 : SOPC_Real<op, ps>,
2829
- Select_gfx6_gfx7<ps.Mnemonic >;
2829
+ Select_gfx6_gfx7<ps.PseudoInstr >;
2830
2830
}
2831
2831
2832
2832
multiclass SOPC_Real_gfx8_gfx9<bits<7> op> {
2833
2833
defvar ps = !cast<SOPC_Pseudo>(NAME);
2834
2834
def _vi : SOPC_Real<op, ps>,
2835
- Select_vi<ps.Mnemonic >;
2835
+ Select_vi<ps.PseudoInstr >;
2836
2836
}
2837
2837
2838
2838
multiclass SOPC_Real_gfx10<bits<7> op> {
2839
2839
defvar ps = !cast<SOPC_Pseudo>(NAME);
2840
2840
def _gfx10 : SOPC_Real<op, ps>,
2841
- Select_gfx10<ps.Mnemonic >;
2841
+ Select_gfx10<ps.PseudoInstr >;
2842
2842
}
2843
2843
2844
2844
multiclass SOPC_Real_gfx8_gfx9_gfx10<bits<7> op> :
@@ -2878,15 +2878,15 @@ defm S_CMP_LG_U64 : SOPC_Real_gfx8_gfx9_gfx10<0x13>;
2878
2878
2879
2879
class SOP1_Real_vi<bits<8> op, SOP1_Pseudo ps> :
2880
2880
SOP1_Real<op, ps>,
2881
- Select_vi<ps.Mnemonic >;
2881
+ Select_vi<ps.PseudoInstr >;
2882
2882
2883
2883
class SOP2_Real_vi<bits<7> op, SOP2_Pseudo ps> :
2884
2884
SOP2_Real32<op, ps>,
2885
- Select_vi<ps.Mnemonic >;
2885
+ Select_vi<ps.PseudoInstr >;
2886
2886
2887
2887
class SOPK_Real_vi<bits<5> op, SOPK_Pseudo ps> :
2888
2888
SOPK_Real32<op, ps>,
2889
- Select_vi<ps.Mnemonic >;
2889
+ Select_vi<ps.PseudoInstr >;
2890
2890
2891
2891
def S_MOV_B32_vi : SOP1_Real_vi <0x00, S_MOV_B32>;
2892
2892
def S_MOV_B64_vi : SOP1_Real_vi <0x01, S_MOV_B64>;
@@ -3007,7 +3007,7 @@ def S_GETREG_B32_vi : SOPK_Real_vi <0x11, S_GETREG_B32>;
3007
3007
def S_SETREG_B32_vi : SOPK_Real_vi <0x12, S_SETREG_B32>;
3008
3008
//def S_GETREG_REGRD_B32_vi : SOPK_Real_vi <0x13, S_GETREG_REGRD_B32>; // see pseudo for comments
3009
3009
def S_SETREG_IMM32_B32_vi : SOPK_Real64<0x14, S_SETREG_IMM32_B32>,
3010
- Select_vi<S_SETREG_IMM32_B32.Mnemonic >;
3010
+ Select_vi<S_SETREG_IMM32_B32.PseudoInstr >;
3011
3011
3012
3012
def S_CALL_B64_vi : SOPK_Real_vi <0x15, S_CALL_B64>;
3013
3013
0 commit comments