This is a follow up to D64971. While we need to insert the deref after
the offset, it needs to come before the remaining elements in the
original expression since the deref needs to happen before the LLVM
fragment if present.
Details
Details
Diff Detail
Diff Detail
- Repository
- rL LLVM
Event Timeline
Comment Actions
Mind extending debug-loc2.ll with, say, a '!DIExpression(DW_OP_deref, DW_OP_LLVM_fragment, 0, 32)' example?
llvm/lib/Transforms/Utils/Local.cpp | ||
---|---|---|
1606 | Can this whole block be replaced with: 'DIExpr = DIExpression::prepend(DIExpr, 0, Offset)'? It should handle fragments correctly and avoid inserting any extra derefs. |
Can this whole block be replaced with: 'DIExpr = DIExpression::prepend(DIExpr, 0, Offset)'? It should handle fragments correctly and avoid inserting any extra derefs.