Fix bug: test/Regression/Transforms/LevelRaise/2002-07-16-RaiseCrash2.ll
authorChris Lattner <sabre@nondot.org>
Tue, 16 Jul 2002 21:41:31 +0000 (21:41 +0000)
committerChris Lattner <sabre@nondot.org>
Tue, 16 Jul 2002 21:41:31 +0000 (21:41 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2932 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Transforms/LevelRaise.cpp

index 54a2930fc0d474ba69642545b10e8efd0a3a783c..1defda4d8453ab006116b9fed4a110e69d9f6aa5 100644 (file)
@@ -68,7 +68,9 @@ static bool HandleCastToPointer(BasicBlock::iterator BI,
   for (Value::use_iterator I = CI.use_begin(), E = CI.use_end();
        I != E; ++I) {
     if (BinaryOperator *BO = dyn_cast<BinaryOperator>(*I)) {
-      if (BO->getOpcode() != Instruction::Add)
+      if (BO->getOpcode() != Instruction::Add ||
+          // Avoid add sbyte* %X, %X cases...
+          BO->getOperand(0) == BO->getOperand(1))
         return false;
     } else {
       return false;