the darwin9-powerpc buildbot keeps consistently crashing,
authorGabor Greif <ggreif@gmail.com>
Wed, 15 Sep 2010 16:53:07 +0000 (16:53 +0000)
committerGabor Greif <ggreif@gmail.com>
Wed, 15 Sep 2010 16:53:07 +0000 (16:53 +0000)
backing out following to get it back to green,
so I can investigate in peace:

svn merge -c -113840  llvm/test/CodeGen/ARM/arm-and-tst-peephole.ll
svn merge -c -113876 -c -113839 llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113980 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/ARM/ARMBaseInstrInfo.cpp
test/CodeGen/ARM/arm-and-tst-peephole.ll

index 315ddcbc7e1d1bdf00903c47970e6792782ab4c0..864c5f9dbbd8bd62d43351f4306c9ce98f79ef37 100644 (file)
@@ -1352,20 +1352,6 @@ AnalyzeCompare(const MachineInstr *MI, unsigned &SrcReg, int &CmpValue) const {
     SrcReg = MI->getOperand(0).getReg();
     CmpValue = MI->getOperand(1).getImm();
     return true;
-  case ARM::TSTri: {
-      if (&*MI->getParent()->begin() == MI)
-        return false;
-      const MachineInstr *AND = llvm::prior(MI);
-      if (AND->getOpcode() != ARM::ANDri)
-        return false;
-      if (MI->getOperand(0).getReg() == AND->getOperand(1).getReg() &&
-          MI->getOperand(1).getImm() == AND->getOperand(2).getImm()) {
-        SrcReg = AND->getOperand(0).getReg();
-        CmpValue = 0;
-        return true;
-      }
-    }
-    break;
   }
 
   return false;
@@ -1415,8 +1401,6 @@ OptimizeCompareInstr(MachineInstr *CmpInstr, unsigned SrcReg, int CmpValue,
   switch (MI->getOpcode()) {
   default: break;
   case ARM::ADDri:
-  case ARM::ANDri:
-  case ARM::t2ANDri:
   case ARM::SUBri:
   case ARM::t2ADDri:
   case ARM::t2SUBri:
index 8d42a794feee0c1c1af985b758de63031b1fd1e8..77bc9eec1afb150b806f4e4d9a99206630d77ac9 100644 (file)
@@ -17,7 +17,8 @@ tailrecurse:                                      ; preds = %sw.bb, %entry
   %tmp2 = load i8** %scevgep5
   %0 = ptrtoint i8* %tmp2 to i32
 
-; CHECK:      ands r12, r12, #3
+; CHECK:      and lr, r12, #3
+; CHECK-NEXT: tst r12, #3
 ; CHECK-NEXT: beq LBB0_4
 
 ; T2:      movs r5, #3