diff --git a/llvm/lib/Target/AMDGPU/SMInstructions.td b/llvm/lib/Target/AMDGPU/SMInstructions.td --- a/llvm/lib/Target/AMDGPU/SMInstructions.td +++ b/llvm/lib/Target/AMDGPU/SMInstructions.td @@ -132,7 +132,6 @@ offsets.Ins, (ins CPol:$cpol)), " $sdata, $sbase, " # offsets.Asm # "$cpol"> { RegisterClass BaseClass = baseClass; - RegisterClass SrcClass = srcClass; let mayLoad = 0; let mayStore = 1; let has_glc = 1; @@ -472,9 +471,7 @@ } defvar sgprPs = !cast(ps#_SGPR); - def _SGPR_si : SMRD_Real_si { - let InOperandList = (ins sgprPs.BaseClass:$sbase, SReg_32:$soffset, CPol:$cpol); - } + def _SGPR_si : SMRD_Real_si ; } defm S_LOAD_DWORD : SM_Real_Loads_si <0x00, "S_LOAD_DWORD">; @@ -541,10 +538,7 @@ } class SMEM_Real_Load_vi op, string ps, OffsetMode offsets> - : SMEM_Real_vi(ps # offsets.Variant)> { - RegisterClass BaseClass = !cast(ps # offsets.Variant).BaseClass; - let InOperandList = !con((ins BaseClass:$sbase), offsets.Ins, (ins CPol:$cpol)); -} + : SMEM_Real_vi(ps # offsets.Variant)>; // The alternative GFX9 SGPR encoding using soffset to encode the // offset register. Not available in assembler and goes to the GFX9 @@ -575,12 +569,7 @@ } class SMEM_Real_Store_vi op, string ps, OffsetMode offsets> - : SMEM_Real_Store_Base_vi (ps # offsets.Variant)> { - RegisterClass SrcClass = !cast(ps # offsets.Variant).SrcClass; - RegisterClass BaseClass = !cast(ps # offsets.Variant).BaseClass; - let InOperandList = !con((ins SrcClass:$sdata, BaseClass:$sbase), - offsets.Ins, (ins CPol:$cpol)); -} + : SMEM_Real_Store_Base_vi (ps # offsets.Variant)>; multiclass SM_Real_Stores_vi op, string ps> { def _IMM_vi : SMEM_Real_Store_vi ; @@ -981,8 +970,6 @@ class SMEM_Real_Load_gfx10 op, string ps, OffsetMode offsets> : SMEM_Real_gfx10(ps # offsets.Variant)> { - RegisterClass BaseClass = !cast(ps # offsets.Variant).BaseClass; - let InOperandList = !con((ins BaseClass:$sbase), offsets.Ins, (ins CPol:$cpol)); } multiclass SM_Real_Loads_gfx10 op, string ps> { @@ -1000,20 +987,13 @@ multiclass SM_Real_Stores_gfx10 op, string ps> { defvar immPs = !cast(ps#_IMM); - def _IMM_gfx10 : SMEM_Real_Store_gfx10 { - let InOperandList = (ins immPs.SrcClass:$sdata, immPs.BaseClass:$sbase, smem_offset:$offset, CPol:$cpol); - } + def _IMM_gfx10 : SMEM_Real_Store_gfx10 ; defvar sgprPs = !cast(ps#_SGPR); - def _SGPR_gfx10 : SMEM_Real_Store_gfx10 { - let InOperandList = (ins sgprPs.SrcClass:$sdata, sgprPs.BaseClass:$sbase, SReg_32:$soffset, CPol:$cpol); - } + def _SGPR_gfx10 : SMEM_Real_Store_gfx10 ; defvar sgprImmPs = !cast(ps#_SGPR_IMM); - def _SGPR_IMM_gfx10 : SMEM_Real_Store_gfx10 { - let InOperandList = (ins sgprImmPs.SrcClass:$sdata, sgprImmPs.BaseClass:$sbase, - SReg_32:$soffset, smem_offset_mod:$offset, CPol:$cpol); - } + def _SGPR_IMM_gfx10 : SMEM_Real_Store_gfx10 ; } defm S_LOAD_DWORD : SM_Real_Loads_gfx10<0x000, "S_LOAD_DWORD">; @@ -1184,10 +1164,7 @@ } class SMEM_Real_Load_gfx11 op, string ps, string opName, OffsetMode offsets> : - SMEM_Real_gfx11(ps # offsets.Variant), opName> { - RegisterClass BaseClass = !cast(ps # offsets.Variant).BaseClass; - let InOperandList = !con((ins BaseClass:$sbase), offsets.Ins, (ins CPol:$cpol)); -} + SMEM_Real_gfx11(ps # offsets.Variant), opName>; multiclass SM_Real_Loads_gfx11 op, string ps, string opName> { def _IMM_gfx11 : SMEM_Real_Load_gfx11;