This patch verifies that the call site DWARF symbols (added during the implementation of the debug entry values feature) are
generated properly.
Details
Diff Detail
- Repository
- rL LLVM
Event Timeline
llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp | ||
---|---|---|
208 ↗ | (On Diff #217588) | Adding GNU tags to existing functionality seems like it should be its own patch. |
230 ↗ | (On Diff #217588) | Adding GNU attributes to existing functionality seems like it should be its own patch. |
530 ↗ | (On Diff #217588) | Should this also check DW_TAG_call_site? |
@probinson Thanks a lot for your comments!
llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp | ||
---|---|---|
208 ↗ | (On Diff #217588) | I could split this into two patches. |
530 ↗ | (On Diff #217588) | This only checks for the DW_AT_abstract_origin DWARF attribute that was used only by GNU call site extensions. After DWARF 5 Standard release, DW_TAG_call_site uses DW_AT_call_origin for the same purpose. |
llvm/test/tools/llvm-dwarfdump/X86/valid-call-site-parameters.ll | ||
---|---|---|
4 ↗ | (On Diff #217588) | Seems like this test also passes without your patch applied? |
llvm/test/tools/llvm-dwarfdump/X86/valid-call-site-parameters.ll | ||
---|---|---|
4 ↗ | (On Diff #217588) | Actually the test case won't pass without the patch applied. |
@aprantl Thanks for the review!
Ah because we didn't accept the GNU entry value attributes before?
We generate GNU entry value attributes for the GDB + DWARF 4 tune, because GDB has fully support for reading the debug entry values feature and users of the tune (and that debugger) can see benefits of the feature implemented now.
The functionality added with this patch was missing and we should have added this when we have introduced the attributes.