These ones need to have the size on the pseudo instruction set for
getInstSizeInBytes to work correctly. These also have a statically
known size.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@283437
91177308-0d34-0410-b5e6-
96231b3b80d8
if (MI.isDebugValue())
continue;
- CodeSize += TII->getInstSizeInBytes(MI);
+ if (isVerbose())
+ CodeSize += TII->getInstSizeInBytes(MI);
unsigned numOperands = MI.getNumOperands();
for (unsigned op_idx = 0; op_idx < numOperands; op_idx++) {
let isPseudo = 1;
let isCodeGenOnly = 1;
+ let Size = 8;
let UseNamedOperandTable = 1;
string Mnemonic = opName;
let Uses = [EXEC];
let hasSideEffects = 0;
- let UseNamedOperandTable = 1;
let SchedRW = [WriteVMEM];
}
let isPseudo = 1;
let isCodeGenOnly = 1;
+ let Size = 8;
let UseNamedOperandTable = 1;
string Mnemonic = opName;
let LGKM_CNT = 1;
let DS = 1;
+ let Size = 8;
let UseNamedOperandTable = 1;
let Uses = [M0, EXEC];
def S_SETREG_IMM32_B32 : SOPK_Pseudo <
"s_setreg_imm32_b32",
(outs), (ins i32imm:$imm, hwreg:$simm16),
- "$simm16, $imm"
-> {
+ "$simm16, $imm"> {
+ let Size = 8; // Unlike every other SOPK instruction.
let has_sdst = 0;
}
let hasSideEffects = 0;
let SALU = 1;
let SOPP = 1;
+ let Size = 4;
let SchedRW = [WriteSALU];
let UseNamedOperandTable = 1;