libdw: Add new DWARF5 tag constants.
authorMark Wielaard <mark@klomp.org>
Wed, 26 Jul 2017 15:06:07 +0000 (17:06 +0200)
committerMark Wielaard <mark@klomp.org>
Wed, 2 Aug 2017 11:51:51 +0000 (13:51 +0200)
Add DW_TAG_coarray_type, DW_TAG_generic_subrange, DW_TAG_dynamic_type,
DW_TAG_call_site, DW_TAG_call_site_parameter, DW_TAG_skeleton_unit,
DW_TAG_immutable_type.

Just the constants, no further interpretion yet.

Signed-off-by: Mark Wielaard <mark@klomp.org>
ChangeLog
NEWS
libdw/ChangeLog
libdw/dwarf.h

index f787f76..09c8d14 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,6 @@
 2017-07-25  Mark Wielaard  <mark@klomp.org>
 
-       * NEWS: Mention new DWARF5 attributes in dwarf.h.
+       * NEWS: Mention new DWARF5 attributes and tags in dwarf.h.
 
 2017-07-18  Mark Wielaard  <mark@klomp.org>
 
diff --git a/NEWS b/NEWS
index a97dd04..6a5ee0d 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,6 +1,6 @@
 Version 0.170
 
-libdw: Added new DWARF5 attribute constants to dwarf.h.
+libdw: Added new DWARF5 attribute and tag constants to dwarf.h.
 
 strip: Add -R, --remove-section=SECTION and --keep-section=SECTION.
 
index a9a0a6b..4bf46c0 100644 (file)
@@ -1,5 +1,12 @@
 2017-07-25  Mark Wielaard  <mark@klomp.org>
 
+       * dwarf.h: Add DW_TAG_coarray_type, DW_TAG_generic_subrange,
+       DW_TAG_dynamic_type, DW_TAG_call_site, DW_TAG_call_site_parameter,
+       DW_TAG_skeleton_unit, DW_TAG_immutable_type. Add reserved comments
+       for currently unused numbers.
+
+2017-07-25  Mark Wielaard  <mark@klomp.org>
+
        * dwarf.h (DWARF attributes enum): Remove DW_AT_subscr_data,
        DW_AT_element_list and DW_AT_member. Add DWARF5 attribute constants.
        (DW_AT_subscr_data, DW_AT_element_list, DW_AT_member): New defines.
index de84423..c998784 100644 (file)
@@ -37,15 +37,21 @@ enum
     DW_TAG_entry_point = 0x03,
     DW_TAG_enumeration_type = 0x04,
     DW_TAG_formal_parameter = 0x05,
+    /* 0x06 reserved.  */
+    /* 0x07 reserved.  */
     DW_TAG_imported_declaration = 0x08,
+    /* 0x09 reserved.  */
     DW_TAG_label = 0x0a,
     DW_TAG_lexical_block = 0x0b,
+    /* 0x0c reserved.  */
     DW_TAG_member = 0x0d,
+    /* 0x0e reserved.  */
     DW_TAG_pointer_type = 0x0f,
     DW_TAG_reference_type = 0x10,
     DW_TAG_compile_unit = 0x11,
     DW_TAG_string_type = 0x12,
     DW_TAG_structure_type = 0x13,
+    /* 0x14 reserved.  */
     DW_TAG_subroutine_type = 0x15,
     DW_TAG_typedef = 0x16,
     DW_TAG_union_type = 0x17,
@@ -87,15 +93,20 @@ enum
     DW_TAG_unspecified_type = 0x3b,
     DW_TAG_partial_unit = 0x3c,
     DW_TAG_imported_unit = 0x3d,
-    /* 0x3e reserved.  */
+    /* 0x3e reserved.  Was DW_TAG_mutable_type.  */
     DW_TAG_condition = 0x3f,
     DW_TAG_shared_type = 0x40,
     DW_TAG_type_unit = 0x41,
     DW_TAG_rvalue_reference_type = 0x42,
     DW_TAG_template_alias = 0x43,
-
-    /* DWARF 5.  */
+    DW_TAG_coarray_type = 0x44,
+    DW_TAG_generic_subrange = 0x45,
+    DW_TAG_dynamic_type = 0x46,
     DW_TAG_atomic_type = 0x47,
+    DW_TAG_call_site = 0x48,
+    DW_TAG_call_site_parameter = 0x49,
+    DW_TAG_skeleton_unit = 0x4a,
+    DW_TAG_immutable_type = 0x4b,
 
     DW_TAG_lo_user = 0x4080,