Add two new calling conventions for runtime calls
[oota-llvm.git] / lib / Target / R600 / SIInstrInfo.cpp
index cf84df860a659b4cb58b8fa247e56ad275a73daf..68292afc9a47cf79ea3d1187f369fc9ede25b123 100644 (file)
@@ -275,8 +275,10 @@ MachineInstr *SIInstrInfo::commuteInstruction(MachineInstr *MI,
       return 0;
 
     unsigned Reg = MI->getOperand(1).getReg();
+    unsigned SubReg = MI->getOperand(1).getSubReg();
     MI->getOperand(1).ChangeToImmediate(MI->getOperand(2).getImm());
     MI->getOperand(2).ChangeToRegister(Reg, false);
+    MI->getOperand(2).setSubReg(SubReg);
   } else {
     MI = TargetInstrInfo::commuteInstruction(MI, NewMI);
   }