From eec8f81708875afd74b32422c2f8c56b3af8b7b8 Mon Sep 17 00:00:00 2001 From: Dave Anglin Date: Thu, 4 Aug 2005 20:01:53 +0000 Subject: [PATCH] * readelf.c (get_parisc_dynamic_type): Add new dynamic types. (get_dynamic_type): Use old values for DT_LOOS and DT_HIOS when e_machine is EM_PARISC. (get_parisc_segment_type): Add new segment types. (get_parisc_section_type_name): Add new section names. (dynamic_section_parisc_val): Add new table entries. --- binutils/ChangeLog | 9 +++++++++ binutils/readelf.c | 30 ++++++++++++++++++++++++++++-- 2 files changed, 37 insertions(+), 2 deletions(-) diff --git a/binutils/ChangeLog b/binutils/ChangeLog index 4d3128696e7..3b8acab50ac 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,12 @@ +2005-08-04 John David Anglin + + * readelf.c (get_parisc_dynamic_type): Add new dynamic types. + (get_dynamic_type): Use old values for DT_LOOS and DT_HIOS when + e_machine is EM_PARISC. + (get_parisc_segment_type): Add new segment types. + (get_parisc_section_type_name): Add new section names. + (dynamic_section_parisc_val): Add new table entries. + 2005-08-01 Filip Navara * dlltool.c (alphafunc): Remove and replace usage with nfunc. diff --git a/binutils/readelf.c b/binutils/readelf.c index 8c1f6f64be0..0c9d0d3af3f 100644 --- a/binutils/readelf.c +++ b/binutils/readelf.c @@ -1533,6 +1533,17 @@ get_parisc_dynamic_type (unsigned long type) case DT_HP_GST_SIZE: return "HP_GST_SIZE"; case DT_HP_GST_VERSION: return "HP_GST_VERSION"; case DT_HP_GST_HASHVAL: return "HP_GST_HASHVAL"; + case DT_HP_EPLTREL: return "HP_GST_EPLTREL"; + case DT_HP_EPLTRELSZ: return "HP_GST_EPLTRELSZ"; + case DT_HP_FILTERED: return "HP_FILTERED"; + case DT_HP_FILTER_TLS: return "HP_FILTER_TLS"; + case DT_HP_COMPAT_FILTERED: return "HP_COMPAT_FILTERED"; + case DT_HP_LAZYLOAD: return "HP_LAZYLOAD"; + case DT_HP_BIND_NOW_COUNT: return "HP_BIND_NOW_COUNT"; + case DT_PLT: return "PLT"; + case DT_PLT_SIZE: return "PLT_SIZE"; + case DT_DLT: return "DLT"; + case DT_DLT_SIZE: return "DLT_SIZE"; default: return NULL; } @@ -1675,7 +1686,9 @@ get_dynamic_type (unsigned long type) snprintf (buff, sizeof (buff), _("Processor Specific: %lx"), type); } - else if ((type >= DT_LOOS) && (type <= DT_HIOS)) + else if (((type >= DT_LOOS) && (type <= DT_HIOS)) + || (elf_header.e_machine == EM_PARISC + && (type >= OLD_DT_LOOS) && (type <= OLD_DT_HIOS))) { const char *result; @@ -2392,6 +2405,10 @@ get_parisc_segment_type (unsigned long type) case PT_HP_CORE_MMF: return "HP_CORE_MMF"; case PT_HP_PARALLEL: return "HP_PARALLEL"; case PT_HP_FASTBIND: return "HP_FASTBIND"; + case PT_HP_OPT_ANNOT: return "HP_OPT_ANNOT"; + case PT_HP_HSL_ANNOT: return "HP_HSL_ANNOT"; + case PT_HP_STACK: return "HP_STACK"; + case PT_HP_CORE_UTSNAME: return "HP_CORE_UTSNAME"; case PT_PARISC_ARCHEXT: return "PARISC_ARCHEXT"; case PT_PARISC_UNWIND: return "PARISC_UNWIND"; default: @@ -2557,6 +2574,9 @@ get_parisc_section_type_name (unsigned int sh_type) case SHT_PARISC_EXT: return "PARISC_EXT"; case SHT_PARISC_UNWIND: return "PARISC_UNWIND"; case SHT_PARISC_DOC: return "PARISC_DOC"; + case SHT_PARISC_ANNOT: return "PARISC_ANNOT"; + case SHT_PARISC_SYMEXTN: return "PARISC_SYMEXTN"; + case SHT_PARISC_STUBS: return "PARISC_STUBS"; default: break; } @@ -5430,7 +5450,13 @@ dynamic_section_parisc_val (Elf_Internal_Dyn *entry) { DT_HP_BIND_RESTRICTED, "HP_BIND_RESTRICTED" }, { DT_HP_BIND_SYMBOLIC, "HP_BIND_SYMBOLIC" }, { DT_HP_RPATH_FIRST, "HP_RPATH_FIRST" }, - { DT_HP_BIND_DEPTH_FIRST, "HP_BIND_DEPTH_FIRST" } + { DT_HP_BIND_DEPTH_FIRST, "HP_BIND_DEPTH_FIRST" }, + { DT_HP_GST, "HP_GST" }, + { DT_HP_SHLIB_FIXED, "HP_SHLIB_FIXED" }, + { DT_HP_MERGE_SHLIB_SEG, "HP_MERGE_SHLIB_SEG" }, + { DT_HP_NODELETE, "HP_NODELETE" }, + { DT_HP_GROUP, "HP_GROUP" }, + { DT_HP_PROTECT_LINKAGE_TABLE, "HP_PROTECT_LINKAGE_TABLE" } }; int first = 1; size_t cnt; -- 2.30.2