aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2025-09-06 17:17:37 -0700
committerH.J. Lu <hjl.tools@gmail.com>2025-09-07 05:32:12 -0700
commit5c9a05428ddd88be3321c35b74fe2e8dc92bd1a3 (patch)
treeb961bd7f568a47773396e45c476d44f6d1de9893
parentcba778b944af90c362a618af0630877736a54baa (diff)
downloadgdb-5c9a05428ddd88be3321c35b74fe2e8dc92bd1a3.zip
gdb-5c9a05428ddd88be3321c35b74fe2e8dc92bd1a3.tar.gz
gdb-5c9a05428ddd88be3321c35b74fe2e8dc92bd1a3.tar.bz2
elf: Define more SHT_SUNW_XXX
binutils/ * readelf.c (get_solaris_section_type): Use SHT_SUNW_XXX and add SHT_SUNW_phname and SHT_SUNW_symtabnsort. include/ * elf/common.h (SHT_SUNW_symtabnsort): New. (SHT_SUNW_ancillary): Likewise. (SHT_SUNW_capchain): Likewise. (SHT_SUNW_capinfo): Likewise. (SHT_SUNW_symsort): Likewise. (SHT_SUNW_tlssort): Likewise. (SHT_SUNW_LDYNSYM): Likewise. (SHT_SUNW_dof): Likewise. (SHT_SUNW_cap): Likewise. (SHT_SUNW_SIGNATURE): Likewise. (SHT_SUNW_ANNOTATE): Likewise. (SHT_SUNW_DEBUGSTR): Likewise. (SHT_SUNW_DEBUG): Likewise. (SHT_SUNW_verdef): Likewise. (SHT_SUNW_verneed): Likewise. (SHT_SUNW_versym): Likewise. Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
-rw-r--r--binutils/readelf.c64
-rw-r--r--include/elf/common.h16
2 files changed, 59 insertions, 21 deletions
diff --git a/binutils/readelf.c b/binutils/readelf.c
index 03c4520..10f8177 100644
--- a/binutils/readelf.c
+++ b/binutils/readelf.c
@@ -3080,26 +3080,50 @@ get_solaris_section_type (unsigned long type)
{
switch (type)
{
- case 0x6fffffee: return "SUNW_ancillary";
- case 0x6fffffef: return "SUNW_capchain";
- case 0x6ffffff0: return "SUNW_capinfo";
- case 0x6ffffff1: return "SUNW_symsort";
- case 0x6ffffff2: return "SUNW_tlssort";
- case 0x6ffffff3: return "SUNW_LDYNSYM";
- case 0x6ffffff4: return "SUNW_dof";
- case 0x6ffffff5: return "SUNW_cap";
- case 0x6ffffff6: return "SUNW_SIGNATURE";
- case 0x6ffffff7: return "SUNW_ANNOTATE";
- case 0x6ffffff8: return "SUNW_DEBUGSTR";
- case 0x6ffffff9: return "SUNW_DEBUG";
- case 0x6ffffffa: return "SUNW_move";
- case 0x6ffffffb: return "SUNW_COMDAT";
- case 0x6ffffffc: return "SUNW_syminfo";
- case 0x6ffffffd: return "SUNW_verdef";
- case 0x6ffffffe: return "SUNW_verneed";
- case 0x6fffffff: return "SUNW_versym";
- case 0x70000000: return "SPARC_GOTDATA";
- default: return NULL;
+ case SHT_SUNW_symtabnsort:
+ return "SUNW_symtabnsort";
+ case SHT_SUNW_ancillary:
+ return "SUNW_ancillary";
+ case SHT_SUNW_phname:
+ return "SUNW_phname";
+ case SHT_SUNW_capchain:
+ return "SUNW_capchain";
+ case SHT_SUNW_capinfo:
+ return "SUNW_capinfo";
+ case SHT_SUNW_symsort:
+ return "SUNW_symsort";
+ case SHT_SUNW_tlssort:
+ return "SUNW_tlssort";
+ case SHT_SUNW_LDYNSYM:
+ return "SUNW_LDYNSYM";
+ case SHT_SUNW_dof:
+ return "SUNW_dof";
+ case SHT_SUNW_cap:
+ return "SUNW_cap";
+ case SHT_SUNW_SIGNATURE:
+ return "SUNW_SIGNATURE";
+ case SHT_SUNW_ANNOTATE:
+ return "SUNW_ANNOTATE";
+ case SHT_SUNW_DEBUGSTR:
+ return "SUNW_DEBUGSTR";
+ case SHT_SUNW_DEBUG:
+ return "SUNW_DEBUG";
+ case SHT_SUNW_move:
+ return "SUNW_move";
+ case SHT_SUNW_COMDAT:
+ return "SUNW_COMDAT";
+ case SHT_SUNW_syminfo:
+ return "SUNW_syminfo";
+ case SHT_SUNW_verdef:
+ return "SUNW_verdef";
+ case SHT_SUNW_verneed:
+ return "SUNW_verneed";
+ case SHT_SUNW_versym:
+ return "SUNW_versym";
+ case 0x70000000:
+ return "SPARC_GOTDATA";
+ default:
+ return NULL;
}
}
diff --git a/include/elf/common.h b/include/elf/common.h
index 0d9a7b7..5d0f93e 100644
--- a/include/elf/common.h
+++ b/include/elf/common.h
@@ -575,7 +575,21 @@
#define SHT_CHECKSUM 0x6ffffff8 /* Checksum for DSO content. */
#define SHT_GNU_OBJECT_ONLY 0x6ffffff9 /* Object only */
-#define SHT_SUNW_move 0x6ffffffa
+#define SHT_SUNW_symtabnsort 0x6fffffec
+#define SHT_SUNW_ancillary 0x6fffffee
+#define SHT_SUNW_phname 0x6fffffed
+#define SHT_SUNW_capchain 0x6fffffef
+#define SHT_SUNW_capinfo 0x6ffffff0
+#define SHT_SUNW_symsort 0x6ffffff1
+#define SHT_SUNW_tlssort 0x6ffffff2
+#define SHT_SUNW_LDYNSYM 0x6ffffff3
+#define SHT_SUNW_dof 0x6ffffff4
+#define SHT_SUNW_cap 0x6ffffff5
+#define SHT_SUNW_SIGNATURE 0x6ffffff6
+#define SHT_SUNW_ANNOTATE 0x6ffffff7
+#define SHT_SUNW_DEBUGSTR 0x6ffffff8
+#define SHT_SUNW_DEBUG 0x6ffffff9
+#define SHT_SUNW_move 0x6ffffffa
#define SHT_SUNW_COMDAT 0x6ffffffb
#define SHT_SUNW_syminfo 0x6ffffffc
/* The next three section types are defined by Solaris, and are named