diff options
Diffstat (limited to 'lib/CodeGen/TargetInstrInfoImpl.cpp')
-rw-r--r-- | lib/CodeGen/TargetInstrInfoImpl.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/CodeGen/TargetInstrInfoImpl.cpp b/lib/CodeGen/TargetInstrInfoImpl.cpp index 349d43c724..102e2a34a9 100644 --- a/lib/CodeGen/TargetInstrInfoImpl.cpp +++ b/lib/CodeGen/TargetInstrInfoImpl.cpp @@ -142,8 +142,10 @@ void TargetInstrInfoImpl::reMaterialize(MachineBasicBlock &MBB, if (TargetRegisterInfo::isVirtualRegister(DestReg)) { MO.setReg(DestReg); MO.setSubReg(SubIdx); - } else { + } else if (SubIdx) { MO.setReg(TRI->getSubReg(DestReg, SubIdx)); + } else { + MO.setReg(DestReg); } MBB.insert(I, MI); } |