summaryrefslogtreecommitdiffstats
path: root/llvm/lib/IR/DebugInfoMetadata.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/lib/IR/DebugInfoMetadata.cpp')
-rw-r--r--llvm/lib/IR/DebugInfoMetadata.cpp14
1 files changed, 6 insertions, 8 deletions
diff --git a/llvm/lib/IR/DebugInfoMetadata.cpp b/llvm/lib/IR/DebugInfoMetadata.cpp
index 92f485323d5..93d04ae9315 100644
--- a/llvm/lib/IR/DebugInfoMetadata.cpp
+++ b/llvm/lib/IR/DebugInfoMetadata.cpp
@@ -672,19 +672,17 @@ void DIExpression::appendOffset(SmallVectorImpl<uint64_t> &Ops,
}
}
-DIExpression *
-DIExpression::prependDIExpr(DIBuilder &Builder, DIExpression *DIExpr,
- bool Deref, int64_t Offset,
- bool StackValue) {
+DIExpression *DIExpression::prepend(DIExpression *Expr, bool Deref,
+ int64_t Offset, bool StackValue) {
if (!Deref && !Offset && !StackValue)
- return DIExpr;
+ return Expr;
SmallVector<uint64_t, 8> Ops;
appendOffset(Ops, Offset);
if (Deref)
Ops.push_back(dwarf::DW_OP_deref);
- if (DIExpr)
- for (auto Op : DIExpr->expr_ops()) {
+ if (Expr)
+ for (auto Op : Expr->expr_ops()) {
// A DW_OP_stack_value comes at the end, but before a DW_OP_LLVM_fragment.
if (StackValue) {
if (Op.getOp() == dwarf::DW_OP_stack_value)
@@ -700,7 +698,7 @@ DIExpression::prependDIExpr(DIBuilder &Builder, DIExpression *DIExpr,
}
if (StackValue)
Ops.push_back(dwarf::DW_OP_stack_value);
- return Builder.createExpression(Ops);
+ return DIExpression::get(Expr->getContext(), Ops);
}
bool DIExpression::isConstant() const {
OpenPOWER on IntegriCloud