diff options
author | Arnaldo Carvalho de Melo <acme@redhat.com> | 2021-11-12 15:16:51 -0300 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2021-11-12 15:16:51 -0300 |
commit | 433dc780ca48944b6905bdbb82c0ca01d24080d5 (patch) | |
tree | ec4b5d0b98a17ecb68cd332cff07ca0233762c8b | |
parent | 7af9ed4aed182869a554b3e6bfbe1fe4853a0f84 (diff) | |
download | pahole-433dc780ca48944b6905bdbb82c0ca01d24080d5.tar.gz |
fprintf: Add DWARF5 tags added in elfutils 0.170
Now we know what that 0x4a thing is:
$ pahole ~/c/split/foo.o
die__process: DW_TAG_compile_unit, DW_TAG_type_unit or DW_TAG_partial_unit expected got skeleton_unit (0x4a)!
$
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
-rw-r--r-- | dwarves_fprintf.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/dwarves_fprintf.c b/dwarves_fprintf.c index 64a8c931..c5921d77 100644 --- a/dwarves_fprintf.c +++ b/dwarves_fprintf.c @@ -84,6 +84,15 @@ static const char *dwarf_tag_names[] = { [DW_TAG_type_unit] = "type_unit", [DW_TAG_rvalue_reference_type] = "rvalue_reference_type", #endif +#if _ELFUTILS_PREREQ(0, 170) + [DW_TAG_coarray_type] = "coarray_type", + [DW_TAG_generic_subrange] = "generic_subrange", + [DW_TAG_dynamic_type] = "dynamic_type", + [DW_TAG_call_site] = "call_site", + [DW_TAG_call_site_parameter] = "call_site_parameter", + [DW_TAG_skeleton_unit] = "skeleton_unit", + [DW_TAG_immutable_type] = "immutable_type", +#endif }; static const char *dwarf_gnu_tag_names[] = { @@ -107,11 +116,15 @@ static const char *dwarf_gnu_tag_names[] = { const char *dwarf_tag_name(const uint32_t tag) { if (tag >= DW_TAG_array_type && tag <= +#if _ELFUTILS_PREREQ(0, 170) + DW_TAG_immutable_type +#else #ifdef STB_GNU_UNIQUE DW_TAG_rvalue_reference_type #else DW_TAG_shared_type #endif +#endif ) return dwarf_tag_names[tag]; else if (tag >= DW_TAG_MIPS_loop && tag <= |