Fix a bug in the "expect" intrinsic lowering.
authorJakub Staszak <jstaszak@apple.com>
Wed, 6 Jul 2011 23:50:16 +0000 (23:50 +0000)
committerJakub Staszak <jstaszak@apple.com>
Wed, 6 Jul 2011 23:50:16 +0000 (23:50 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134566 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Transforms/Utils/LowerExpectIntrinsic.cpp

index fd94c84413bad8d6c2b1903ac23210d3f6dbbce0..563f7f4490a3c8c1ddeda3b2dbd29b171bd04795 100644 (file)
@@ -145,8 +145,11 @@ bool LowerExpectIntrinsic::runOnFunction(Function &F) {
         continue;
 
       Function *Fn = CI->getCalledFunction();
-      if (Fn && Fn->getIntrinsicID() == Intrinsic::expect)
+      if (Fn && Fn->getIntrinsicID() == Intrinsic::expect) {
+        Value *Exp = CI->getArgOperand(0);
+        CI->replaceAllUsesWith(Exp);
         CI->eraseFromParent();
+      }
     }
   }