diff --git a/llvm/lib/Target/AMDGPU/BUFInstructions.td b/llvm/lib/Target/AMDGPU/BUFInstructions.td --- a/llvm/lib/Target/AMDGPU/BUFInstructions.td +++ b/llvm/lib/Target/AMDGPU/BUFInstructions.td @@ -110,6 +110,10 @@ let isPseudo = 0; let isCodeGenOnly = 0; + let VM_CNT = 1; + let EXP_CNT = 1; + let MTBUF = 1; + // copy relevant pseudo op flags let UseNamedOperandTable = ps.UseNamedOperandTable; let SubtargetPredicate = ps.SubtargetPredicate; @@ -341,6 +345,10 @@ let isPseudo = 0; let isCodeGenOnly = 0; + let VM_CNT = 1; + let EXP_CNT = 1; + let MUBUF = 1; + // copy relevant pseudo op flags let SubtargetPredicate = ps.SubtargetPredicate; let AsmMatchConverter = ps.AsmMatchConverter; diff --git a/llvm/lib/Target/AMDGPU/DSInstructions.td b/llvm/lib/Target/AMDGPU/DSInstructions.td --- a/llvm/lib/Target/AMDGPU/DSInstructions.td +++ b/llvm/lib/Target/AMDGPU/DSInstructions.td @@ -58,6 +58,7 @@ let isPseudo = 0; let isCodeGenOnly = 0; + let LGKM_CNT = 1; let DS = 1; let UseNamedOperandTable = 1; diff --git a/llvm/lib/Target/AMDGPU/FLATInstructions.td b/llvm/lib/Target/AMDGPU/FLATInstructions.td --- a/llvm/lib/Target/AMDGPU/FLATInstructions.td +++ b/llvm/lib/Target/AMDGPU/FLATInstructions.td @@ -81,6 +81,8 @@ let isPseudo = 0; let isCodeGenOnly = 0; + let FLAT = 1; + // copy relevant pseudo op flags let SubtargetPredicate = ps.SubtargetPredicate; let AsmMatchConverter = ps.AsmMatchConverter; @@ -88,6 +90,8 @@ let TSFlags = ps.TSFlags; let UseNamedOperandTable = ps.UseNamedOperandTable; let SchedRW = ps.SchedRW; + let VM_CNT = ps.VM_CNT; + let LGKM_CNT = ps.LGKM_CNT; // encoding fields bits<8> vaddr; 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 @@ -57,11 +57,15 @@ Instruction Opcode = !cast(NAME); // copy relevant pseudo op flags - let SubtargetPredicate = ps.SubtargetPredicate; - let AsmMatchConverter = ps.AsmMatchConverter; - let UseNamedOperandTable = ps.UseNamedOperandTable; + let LGKM_CNT = ps.LGKM_CNT; let SMRD = ps.SMRD; + let mayStore = ps.mayStore; + let mayLoad = ps.mayLoad; + let hasSideEffects = ps.hasSideEffects; + let UseNamedOperandTable = ps.UseNamedOperandTable; let SchedRW = ps.SchedRW; + let SubtargetPredicate = ps.SubtargetPredicate; + let AsmMatchConverter = ps.AsmMatchConverter; let TSFlags = ps.TSFlags; @@ -700,12 +704,6 @@ let DecoderNamespace = "GFX7"; let InOperandList = (ins ps.BaseClass:$sbase, smrd_literal_offset:$offset, CPol:$cpol); - let LGKM_CNT = ps.LGKM_CNT; - let mayLoad = ps.mayLoad; - let mayStore = ps.mayStore; - let hasSideEffects = ps.hasSideEffects; - let SchedRW = ps.SchedRW; - let Inst{7-0} = 0xff; let Inst{8} = 0; let Inst{14-9} = sbase{6-1};