diff options
author | Cary Coutant <ccoutant@google.com> | 2009-09-24 20:52:07 +0000 |
---|---|---|
committer | Cary Coutant <ccoutant@google.com> | 2009-09-24 20:52:07 +0000 |
commit | 2b6f59972b0eac01b8f09e57ff8f2a8b89179784 (patch) | |
tree | 9c63517f9b5766b4215f2db79b3834ab9163f86b /include/dwarf2.h | |
parent | 604ad007ee6bb6479e54e3b3f35a4e7c03c7e27a (diff) | |
download | binutils-2b6f59972b0eac01b8f09e57ff8f2a8b89179784.zip binutils-2b6f59972b0eac01b8f09e57ff8f2a8b89179784.tar.gz binutils-2b6f59972b0eac01b8f09e57ff8f2a8b89179784.tar.bz2 |
include/
* dwarf2.h (DW_TAG_rvalue_reference_type, DW_TAG_template_alias):
New tags.
(DW_FORM_ref_sig8): New name for DW_FORM_sig8.
(DW_AT_main_subprogram, DW_AT_data_bit_offset, DW_AT_const_expr,
DW_AT_enum_class, DW_AT_linkage_name, DW_AT_GNU_guarded_by,
DW_AT_GNU_pt_guarded_by, DW_AT_GNU_guarded, DW_AT_GNU_pt_guarded,
DW_AT_GNU_locks_excluded, DW_AT_GNU_exclusive_locks_required,
DW_AT_GNU_shared_locks_required, DW_AT_GNU_odr_signature): New
attributes.
(DW_LANG_Python): New language.
binutils/
* dwarf.c (get_TAG_name): Add missing DWARF-3 and new DWARF-4 tags.
(get_FORM_name): Add new DWARF-4 forms.
(read_and_display_attr_value): Add DW_FORM_ref_sig8, DW_LANG_Python.
(get_AT_name): Add new DWARF-4 and GNU-specific attributes.
(process_debug_info): Add do_types parameter; change all callers.
Add support for .debug_types sections.
(display_debug_types): New function.
(debug_displays): Add .debug_types section.
* readelf.c (process_section_headers): Add .debug_types section.
(display_debug_section): Simplify call to streq.
Diffstat (limited to 'include/dwarf2.h')
-rw-r--r-- | include/dwarf2.h | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/include/dwarf2.h b/include/dwarf2.h index 608f7b5..4aa10d5 100644 --- a/include/dwarf2.h +++ b/include/dwarf2.h @@ -196,6 +196,8 @@ enum dwarf_tag DW_TAG_shared_type = 0x40, /* DWARF 4. */ DW_TAG_type_unit = 0x41, + DW_TAG_rvalue_reference_type = 0x42, + DW_TAG_template_alias = 0x43, DW_TAG_lo_user = 0x4080, DW_TAG_hi_user = 0xffff, @@ -262,7 +264,8 @@ enum dwarf_form DW_FORM_sec_offset = 0x17, DW_FORM_exprloc = 0x18, DW_FORM_flag_present = 0x19, - DW_FORM_sig8 = 0x20 + DW_FORM_ref_sig8 = 0x20 +#define DW_FORM_sig8 DW_FORM_ref_sig8 /* Note: The use of DW_FORM_sig8 is deprecated. */ }; /* Attribute names and codes. */ @@ -361,7 +364,12 @@ enum dwarf_attribute DW_AT_pure = 0x67, DW_AT_recursive = 0x68, /* DWARF 4. */ - DW_AT_signature = 0x69, + DW_AT_signature = 0x69, + DW_AT_main_subprogram = 0x6a, + DW_AT_data_bit_offset = 0x6b, + DW_AT_const_expr = 0x6c, + DW_AT_enum_class = 0x6d, + DW_AT_linkage_name = 0x6e, DW_AT_lo_user = 0x2000, /* Implementation-defined range start. */ DW_AT_hi_user = 0x3ff0, /* Implementation-defined range end. */ @@ -401,6 +409,18 @@ enum dwarf_attribute DW_AT_body_begin = 0x2105, DW_AT_body_end = 0x2106, DW_AT_GNU_vector = 0x2107, + /* Thread-safety annotations. + See http://gcc.gnu.org/wiki/ThreadSafetyAnnotation . */ + DW_AT_GNU_guarded_by = 0x2108, + DW_AT_GNU_pt_guarded_by = 0x2109, + DW_AT_GNU_guarded = 0x210a, + DW_AT_GNU_pt_guarded = 0x210b, + DW_AT_GNU_locks_excluded = 0x210c, + DW_AT_GNU_exclusive_locks_required = 0x210d, + DW_AT_GNU_shared_locks_required = 0x210e, + /* One-definition rule violation detection. + See http://gcc.gnu.org/wiki/DwarfSeparateTypeInfo . */ + DW_AT_GNU_odr_signature = 0x210f, /* Template template argument name. See http://gcc.gnu.org/wiki/TemplateParmsDwarf . */ DW_AT_GNU_template_name = 0x2110, @@ -839,6 +859,7 @@ enum dwarf_source_language DW_LANG_ObjC_plus_plus = 0x0011, DW_LANG_UPC = 0x0012, DW_LANG_D = 0x0013, + DW_LANG_Python = 0x0014, DW_LANG_lo_user = 0x8000, /* Implementation-defined range start. */ DW_LANG_hi_user = 0xffff, /* Implementation-defined range start. */ |