diff options
author | Vedant Kumar <vsk@apple.com> | 2018-06-26 18:44:53 +0000 |
---|---|---|
committer | Vedant Kumar <vsk@apple.com> | 2018-06-26 18:44:53 +0000 |
commit | c85ca4cdabb21ebc6e9f185568ec53c4ad1ce4f7 (patch) | |
tree | aa378c1a9bcc68ccc34834e22d7ebc14b9f721b9 /llvm/lib/Transforms/Utils | |
parent | de46f65bbd2617851ff1dbd158cf5ee2944f1957 (diff) | |
download | bcm5719-llvm-c85ca4cdabb21ebc6e9f185568ec53c4ad1ce4f7.tar.gz bcm5719-llvm-c85ca4cdabb21ebc6e9f185568ec53c4ad1ce4f7.zip |
[Local] Add a convenient insertReplacementDbgValues overload, NFC
Add an overload for the common case where the replacement dbg.values
have the same DIExpressions as the originals.
llvm-svn: 335643
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) { |