Add constants from DWARF 4 working draft 3.
authorRoland McGrath <roland@redhat.com>
Fri, 17 Jul 2009 00:40:19 +0000 (17:40 -0700)
committerRoland McGrath <roland@redhat.com>
Fri, 17 Jul 2009 00:40:19 +0000 (17:40 -0700)
libdw/ChangeLog
libdw/dwarf.h

index 6c45b9d..8e580e2 100644 (file)
@@ -1,3 +1,12 @@
+2009-07-16  Roland McGrath  <roland@redhat.com>
+
+       * dwarf.h: Add DW_OP_{implicit,stack}_value from DWARF 4 draft.
+       Also DW_TAG_type_unit and DW_TAG_rvalue_reference_type.
+       Also DW_AT_signature, DW_AT_main_subprogram, DW_AT_data_bit_offset,
+       and DW_AT_const_expr.
+       Also DW_FORM_sec_offset, DW_FORM_exprloc, DW_FORM_flag_present,
+       and DW_FORM_ref_sig8.
+
 2009-07-15  Roland McGrath  <roland@redhat.com>
 
        * dwarf_getlocation.c: Grok DW_OP_form_tls_address,
index 0546e3e..196ef85 100644 (file)
@@ -111,6 +111,8 @@ enum
     DW_TAG_mutable_type = 0x3e,
     DW_TAG_condition = 0x3f,
     DW_TAG_shared_type = 0x40,
+    DW_TAG_type_unit = 0x41,
+    DW_TAG_rvalue_reference_type = 0x42,
     DW_TAG_lo_user = 0x4080,
     DW_TAG_MIPS_loop = 0x4081,
     DW_TAG_format_label = 0x4101,
@@ -220,6 +222,10 @@ enum
     DW_AT_elemental = 0x66,
     DW_AT_pure = 0x67,
     DW_AT_recursive = 0x68,
+    DW_AT_signature = 0x69,
+    DW_AT_main_subprogram = 0x6a,
+    DW_AT_data_bit_offset = 0x6b,
+    DW_AT_const_expr = 0x6c,
 
     DW_AT_lo_user = 0x2000,
     DW_AT_MIPS_fde = 0x2001,
@@ -272,7 +278,11 @@ enum
     DW_FORM_ref4 = 0x13,
     DW_FORM_ref8 = 0x14,
     DW_FORM_ref_udata = 0x15,
-    DW_FORM_indirect = 0x16
+    DW_FORM_indirect = 0x16,
+    DW_FORM_sec_offset = 0x17,
+    DW_FORM_exprloc = 0x18,
+    DW_FORM_flag_present = 0x19,
+    DW_FORM_ref_sig8 = 0x20
   };
 
 
@@ -431,6 +441,8 @@ enum
     DW_OP_form_tls_address = 0x9b,/* TLS offset to address in current thread */
     DW_OP_call_frame_cfa = 0x9c,/* CFA as determined by CFI.  */
     DW_OP_bit_piece = 0x9d,    /* ULEB128 size and ULEB128 offset in bits.  */
+    DW_OP_implicit_value = 0x9e, /* DW_FORM_block follows opcode.  */
+    DW_OP_stack_value = 0x9f,   /* No operands, special like DW_OP_piece.  */
 
     /* GNU extensions.  */
     DW_OP_GNU_push_tls_address = 0xe0,