@@ -174,7 +174,7 @@ class VFLAT_Real <bits<8> op, FLAT_Pseudo ps, string opName = ps.Mnemonic> :
174
174
bits<8> vaddr;
175
175
bits<24> offset;
176
176
177
- let Inst{6-0} = !if(ps.enabled_saddr, saddr, 0x7f );
177
+ let Inst{6-0} = !if(ps.enabled_saddr, saddr, SGPR_NULL_gfx11plus.Index );
178
178
let Inst{21-14} = op;
179
179
let Inst{31-26} = 0x3b;
180
180
let Inst{39-32} = !if(ps.has_vdst, vdst, ?);
@@ -2353,6 +2353,7 @@ class FLAT_Real_gfx11 <bits<7> op, FLAT_Pseudo ps, string opName = ps.Mnemonic>
2353
2353
let Inst{14} = !if(ps.has_glc, cpol{CPolBit.GLC}, ps.glcValue);
2354
2354
let Inst{15} = cpol{CPolBit.SLC};
2355
2355
let Inst{17-16} = seg;
2356
+ let Inst{54-48} = !if(ps.enabled_saddr, saddr, SGPR_NULL_gfx11plus.Index);
2356
2357
let Inst{55} = ps.sve;
2357
2358
}
2358
2359
@@ -2363,15 +2364,11 @@ multiclass FLAT_Aliases_gfx11<string ps, string opName, int renamed> {
2363
2364
2364
2365
multiclass FLAT_Real_Base_gfx11<bits<7> op, string ps, string opName, int renamed = false> :
2365
2366
FLAT_Aliases_gfx11<ps, opName, renamed> {
2366
- def _gfx11 : FLAT_Real_gfx11<op, !cast<FLAT_Pseudo>(ps), opName> {
2367
- let Inst{54-48} = SGPR_NULL_gfx11plus.Index;
2368
- }
2367
+ def _gfx11 : FLAT_Real_gfx11<op, !cast<FLAT_Pseudo>(ps), opName>;
2369
2368
}
2370
2369
2371
2370
multiclass FLAT_Real_RTN_gfx11<bits<7> op, string ps, string opName> {
2372
- def _RTN_gfx11 : FLAT_Real_gfx11<op, !cast<FLAT_Pseudo>(ps#"_RTN"), opName> {
2373
- let Inst{54-48} = SGPR_NULL_gfx11plus.Index;
2374
- }
2371
+ def _RTN_gfx11 : FLAT_Real_gfx11<op, !cast<FLAT_Pseudo>(ps#"_RTN"), opName>;
2375
2372
}
2376
2373
2377
2374
multiclass FLAT_Real_SADDR_gfx11<bits<7> op, string ps, string opName> {
@@ -2384,7 +2381,6 @@ multiclass FLAT_Real_SADDR_RTN_gfx11<bits<7> op, string ps, string opName> {
2384
2381
2385
2382
multiclass FLAT_Real_ST_gfx11<bits<7> op, string ps, string opName> {
2386
2383
def _ST_gfx11 : FLAT_Real_gfx11<op, !cast<FLAT_Pseudo>(ps#"_ST"), opName> {
2387
- let Inst{54-48} = SGPR_NULL_gfx11plus.Index;
2388
2384
let OtherPredicates = [HasFlatScratchSTMode];
2389
2385
}
2390
2386
}
@@ -2579,15 +2575,11 @@ multiclass VFLAT_Aliases_gfx12<string ps, string opName, int renamed, string ali
2579
2575
multiclass VFLAT_Real_Base_gfx12<bits<8> op, string ps = NAME, string opName = !tolower(NAME),
2580
2576
int renamed = false, string alias = ""> :
2581
2577
VFLAT_Aliases_gfx12<ps, opName, renamed, alias> {
2582
- def _gfx12 : VFLAT_Real_gfx12<op, !cast<FLAT_Pseudo>(ps), opName> {
2583
- let Inst{6-0} = !cast<int>(SGPR_NULL_gfx11plus.HWEncoding);
2584
- }
2578
+ def _gfx12 : VFLAT_Real_gfx12<op, !cast<FLAT_Pseudo>(ps), opName>;
2585
2579
}
2586
2580
2587
2581
multiclass VFLAT_Real_RTN_gfx12<bits<8> op, string ps, string opName> {
2588
- def _RTN_gfx12 : VFLAT_Real_gfx12<op, !cast<FLAT_Pseudo>(ps#"_RTN"), opName> {
2589
- let Inst{6-0} = !cast<int>(SGPR_NULL_gfx11plus.HWEncoding);
2590
- }
2582
+ def _RTN_gfx12 : VFLAT_Real_gfx12<op, !cast<FLAT_Pseudo>(ps#"_RTN"), opName>;
2591
2583
}
2592
2584
2593
2585
multiclass VFLAT_Real_SADDR_gfx12<bits<8> op, string ps, string opName> {
@@ -2600,7 +2592,6 @@ multiclass VFLAT_Real_SADDR_RTN_gfx12<bits<8> op, string ps, string opName> {
2600
2592
2601
2593
multiclass VFLAT_Real_ST_gfx12<bits<8> op, string ps, string opName> {
2602
2594
def _ST_gfx12 : VFLAT_Real_gfx12<op, !cast<FLAT_Pseudo>(ps#"_ST"), opName> {
2603
- let Inst{6-0} = !cast<int>(SGPR_NULL_gfx11plus.HWEncoding);
2604
2595
let OtherPredicates = [HasFlatScratchSTMode];
2605
2596
}
2606
2597
}
0 commit comments