[PATCH] D30664: [DWARFv5] Update definitions to match published spec

Greg Clayton via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 6 14:41:49 PST 2017


clayborg added a comment.

Seem like a lot of the Dwarf.def macros could use an extra "version" parameter. Might help code to verify that certain tags, attributes, forms, or more are valid for the current DWARF version.



================
Comment at: llvm/trunk/include/llvm/Support/Dwarf.def:142
 HANDLE_DW_TAG(0x0034, variable)
 HANDLE_DW_TAG(0x0035, volatile_type)
+// New in DWARF v3:
----------------
might be nice at some point to make HANDLE_DW_TAG take a 3rd parameter that is the DWARF version that it is introduced in:

```
HANDLE_DW_TAG(0x0035, volatile_type, 2)
HANDLE_DW_TAG(0x0036, dwarf_procedure, 3)
```

Then code could actually enforce the validity of the DWARF tag for the current DWARF version.


================
Comment at: llvm/trunk/include/llvm/Support/Dwarf.def:243
+// New in DWARF v3:
 HANDLE_DW_AT(0x4e, allocated)
 HANDLE_DW_AT(0x4f, associated)
----------------
Might be nice to include the DWARF version in the HANDLE_DW_AT macro as well?


================
Comment at: llvm/trunk/include/llvm/Support/Dwarf.def:406
+// New in DWARF v4:
 HANDLE_DW_FORM(0x17, sec_offset)
 HANDLE_DW_FORM(0x18, exprloc)
----------------
Might be nice to include the DWARF version in the HANDLE_DW_FORM macro as well?


Repository:
  rL LLVM

https://reviews.llvm.org/D30664





More information about the llvm-commits mailing list