summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Wielaard <[email protected]>2011-02-25 13:04:21 +0100
committerMark Wielaard <[email protected]>2011-02-25 13:11:41 +0100
commitcda1196d5d8b0e40013c9012967dbba7e8549f78 (patch)
tree331d571d85f87d40a40bf48b010294a4b6eb5cb8
parente15999014144beb60698d524612567a16f3581de (diff)
Merge over dwarf string fixes from readelf master to dwarfstrings.
* src/dwarfstrings.c (dwarf_tag_string): Add type_unit, rvalue_reference_type and template_alias. (dwarf_tag_string): Add GNU_* tags. (dwarf_attr_string): Add signature, main_subprogram, const_expr and enum_class.
-rw-r--r--src/dwarfstrings.c28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/dwarfstrings.c b/src/dwarfstrings.c
index b340f026..3909e131 100644
--- a/src/dwarfstrings.c
+++ b/src/dwarfstrings.c
@@ -97,6 +97,9 @@ dwarf_tag_string (unsigned int tag)
[DW_TAG_mutable_type] = "mutable_type",
[DW_TAG_condition] = "condition",
[DW_TAG_shared_type] = "shared_type",
+ [DW_TAG_type_unit] = "type_unit",
+ [DW_TAG_rvalue_reference_type] = "rvalue_reference_type",
+ [DW_TAG_template_alias] = "template_alias",
};
const unsigned int nknown_tags = (sizeof (known_tags)
/ sizeof (known_tags[0]));
@@ -126,6 +129,26 @@ dwarf_tag_string (unsigned int tag)
result = "class_template";
break;
+ case DW_TAG_GNU_BINCL:
+ result = "GNU_BINCL";
+ break;
+
+ case DW_TAG_GNU_EINCL:
+ result = "GNU_EINCL";
+ break;
+
+ case DW_TAG_GNU_template_template_param:
+ result = "GNU_template_template_param";
+ break;
+
+ case DW_TAG_GNU_template_parameter_pack:
+ result = "GNU_template_parameter_pack";
+ break;
+
+ case DW_TAG_GNU_formal_parameter_pack:
+ result = "GNU_formal_parameter_pack";
+ break;
+
default:
if (tag < DW_TAG_lo_user)
snprintf (buf, sizeof buf, gettext ("unknown tag %hx"), tag);
@@ -233,6 +256,11 @@ dwarf_attr_string (unsigned int attrnum)
[DW_AT_elemental] = "elemental",
[DW_AT_pure] = "pure",
[DW_AT_recursive] = "recursive",
+ [DW_AT_signature] = "signature",
+ [DW_AT_main_subprogram] = "main_subprogram",
+ [DW_AT_data_bit_offset] = "data_bit_offset",
+ [DW_AT_const_expr] = "const_expr",
+ [DW_AT_enum_class] = "enum_class",
[DW_AT_linkage_name] = "linkage_name",
};
const unsigned int nknown_attrs = (sizeof (known_attrs)