Use 16-bit tMOVgpr2gpr instead of tMOVr to copy GPR registers in Thumb2 mode.
authorEvan Cheng <evan.cheng@apple.com>
Fri, 7 Aug 2009 19:34:35 +0000 (19:34 +0000)
committerEvan Cheng <evan.cheng@apple.com>
Fri, 7 Aug 2009 19:34:35 +0000 (19:34 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78398 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/ARM/README-Thumb2.txt
lib/Target/ARM/Thumb2InstrInfo.cpp

index 48b5278122816dd31571a414cad60590dc648baf..6a51e7ce8200e2c91e25ba3c743f0164d1655914 100644 (file)
@@ -3,5 +3,3 @@
 //===---------------------------------------------------------------------===//
 
 We should be using ADD / SUB rd, sp, rm <shift> instructions.
-
-copyRegToReg should use tMOVgpr2gpr instead of t2MOVr?
index 2b329e03db3dd40eafd4e40e7b3a123fb41df964..783e65053b2ac36bdd619b1f59206919cc557b06 100644 (file)
@@ -65,12 +65,7 @@ Thumb2InstrInfo::copyRegToReg(MachineBasicBlock &MBB,
 
   if (DestRC == ARM::GPRRegisterClass &&
       SrcRC == ARM::GPRRegisterClass) {
-    // FIXME: Just use tMOVgpr2gpr since it's shorter?
-    if (SrcReg == ARM::SP || DestReg == ARM::SP)
-      BuildMI(MBB, I, DL, get(ARM::tMOVgpr2gpr), DestReg).addReg(SrcReg);
-    else
-      AddDefaultCC(AddDefaultPred(BuildMI(MBB, I, DL, get(ARM::t2MOVr),
-                                          DestReg).addReg(SrcReg)));
+    BuildMI(MBB, I, DL, get(ARM::tMOVgpr2gpr), DestReg).addReg(SrcReg);
     return true;
   } else if (DestRC == ARM::GPRRegisterClass &&
              SrcRC == ARM::tGPRRegisterClass) {