diff options
Diffstat (limited to 'llvm/lib/Transforms/Utils')
-rw-r--r-- | llvm/lib/Transforms/Utils/Local.cpp | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/llvm/lib/Transforms/Utils/Local.cpp b/llvm/lib/Transforms/Utils/Local.cpp index 756b60bb6fa..6264724312f 100644 --- a/llvm/lib/Transforms/Utils/Local.cpp +++ b/llvm/lib/Transforms/Utils/Local.cpp @@ -1717,9 +1717,19 @@ void llvm::insertReplacementDbgValues( // that the old debug users will be erased later. DIBuilder DIB(*InsertBefore.getModule()); for (auto *OldDII : Users) - if (DIExpression *Expr = RewriteExpr(*OldDII)) - DIB.insertDbgValueIntrinsic(&To, OldDII->getVariable(), Expr, - OldDII->getDebugLoc().get(), &InsertBefore); + if (DIExpression *Expr = RewriteExpr(*OldDII)) { + auto *I = DIB.insertDbgValueIntrinsic(&To, OldDII->getVariable(), Expr, + OldDII->getDebugLoc().get(), + &InsertBefore); + LLVM_DEBUG(dbgs() << "REPLACE: " << *I << '\n'); + } +} + +void llvm::insertReplacementDbgValues(Value &From, Value &To, + Instruction &InsertBefore) { + return llvm::insertReplacementDbgValues( + From, To, InsertBefore, + [](DbgInfoIntrinsic &OldDII) { return OldDII.getExpression(); }); } unsigned llvm::removeAllNonTerminatorAndEHPadInstructions(BasicBlock *BB) { |