Index: llvm/trunk/lib/Target/AMDGPU/SIInstrInfo.h =================================================================== --- llvm/trunk/lib/Target/AMDGPU/SIInstrInfo.h +++ llvm/trunk/lib/Target/AMDGPU/SIInstrInfo.h @@ -730,6 +730,11 @@ /// This form should usually be preferred since it handles operands /// with unknown register classes. unsigned getOpSize(const MachineInstr &MI, unsigned OpNo) const { + const MachineOperand &MO = MI.getOperand(OpNo); + if (MO.isReg()) { + if (unsigned SubReg = MO.getSubReg()) + return RI.getSubRegIndexLaneMask(SubReg).getNumLanes() * 4; + } return RI.getRegSizeInBits(*getOpRegClass(MI, OpNo)) / 8; }