Fix a bug in my previous patch, thanks to Jay Foad for
pointing this out and correcting the patch!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44907 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Analysis/ConstantFolding.cpp b/lib/Analysis/ConstantFolding.cpp
index ebf2786..a810b0f 100644
--- a/lib/Analysis/ConstantFolding.cpp
+++ b/lib/Analysis/ConstantFolding.cpp
@@ -427,10 +427,10 @@
       // there is a truncation or extension that we aren't modeling.
       if ((CE0->getOpcode() == Instruction::IntToPtr &&
            CE0->getOperand(0)->getType() == IntPtrTy &&
-           CE0->getOperand(1)->getType() == IntPtrTy) ||
+           Ops[1]->getOperand(0)->getType() == IntPtrTy) ||
           (CE0->getOpcode() == Instruction::PtrToInt &&
            CE0->getType() == IntPtrTy &&
-           CE0->getOperand(0)->getType() == CE0->getOperand(1)->getType())) {
+           CE0->getOperand(0)->getType() == Ops[1]->getOperand(0)->getType())) {
         Constant *NewOps[] = { 
           CE0->getOperand(0), cast<ConstantExpr>(Ops[1])->getOperand(0) 
         };