[PM] Change LowerExpectIntrinsic to actually return true when it has
[oota-llvm.git] / lib / Transforms / Scalar / LowerExpectIntrinsic.cpp
index 5d3bbbc6047cfedc50a2fbcd806622d8a34db68f..0cea5c5bc59088cb978063f5fb3d75fff4ad7f23 100644 (file)
@@ -144,6 +144,8 @@ static bool handleBranchExpect(BranchInst &BI) {
 }
 
 bool LowerExpectIntrinsic::runOnFunction(Function &F) {
+  bool Changed = false;
+
   for (BasicBlock &BB : F) {
     // Create "block_weights" metadata.
     if (BranchInst *BI = dyn_cast<BranchInst>(BB.getTerminator())) {
@@ -165,11 +167,12 @@ bool LowerExpectIntrinsic::runOnFunction(Function &F) {
         Value *Exp = CI->getArgOperand(0);
         CI->replaceAllUsesWith(Exp);
         CI->eraseFromParent();
+        Changed = true;
       }
     }
   }
 
-  return false;
+  return Changed;
 }
 
 char LowerExpectIntrinsic::ID = 0;