[PATCH] D70642: [DebugInfo] Support for DW_OP_implicit_pointer (DW_OP_LLVM_argN)
Adrian Prantl via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Dec 2 10:06:58 PST 2019
aprantl added a comment.
Thanks! This will need some bitcode-compatibility planning as well:
We'll need to bump the version number, and then in MetadataLoader.cpp / upradeDIExpression() add an a DW_OP_LLVM_arg0 at the beginning for all older versions.
This should be tested with a .bc file that contains an old-form DIExpression, run through llvm-dis | llvm-as | llvm-dis and checked that the expression is upgraded correctly.
================
Comment at: llvm/include/llvm/BinaryFormat/Dwarf.def:663
+HANDLE_DW_OP(0x4006, LLVM_arg6, 0, LLVM)
+HANDLE_DW_OP(0x4007, LLVM_arg7, 0, LLVM)
----------------
Since these extensions are only used inside LLVM IR, they shouldn't leak into dwarfdump & friends. Can you take a look at how DW_OP_LLVM_fragment is defined and copy that? I think it is hardcoded in Dwarf.cpp
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D70642/new/
https://reviews.llvm.org/D70642
More information about the llvm-commits
mailing list