[gdb-11-branch:,1/3] readelf: Support RELR in -S and -d and output

Message ID 20220109174504.1120244-2-hjl.tools@gmail.com
State New
Headers show
Series
  • [gdb-11-branch:,1/3] readelf: Support RELR in -S and -d and output
Related show

Commit Message

Simon Marchi via Gdb-patches Jan. 9, 2022, 5:45 p.m.
From: Fangrui Song <maskray@google.com>


readelf -r dumping support is not added in this patch.

include/
	* elf/common.h: Add SHT_RELR, DT_RELR{,SZ,ENT}
bfd/
	* elf.c (_bfd_elf_print_private_bfd_data): Add DT_RELR{,SZ,ENT}.

(cherry picked from commit dd207c1302d28d2d2b33cff058bb3fbf5138b480)
---
 bfd/elf.c            | 3 +++
 include/elf/common.h | 4 ++++
 2 files changed, 7 insertions(+)

-- 
2.34.1

Patch

diff --git a/bfd/elf.c b/bfd/elf.c
index 8f6531f23cf..3d9c5ff03cc 100644
--- a/bfd/elf.c
+++ b/bfd/elf.c
@@ -1773,6 +1773,9 @@  _bfd_elf_print_private_bfd_data (bfd *abfd, void *farg)
 	    case DT_REL: name = "REL"; break;
 	    case DT_RELSZ: name = "RELSZ"; break;
 	    case DT_RELENT: name = "RELENT"; break;
+	    case DT_RELR: name = "RELR"; break;
+	    case DT_RELRSZ: name = "RELRSZ"; break;
+	    case DT_RELRENT: name = "RELRENT"; break;
 	    case DT_PLTREL: name = "PLTREL"; break;
 	    case DT_DEBUG: name = "DEBUG"; break;
 	    case DT_TEXTREL: name = "TEXTREL"; break;
diff --git a/include/elf/common.h b/include/elf/common.h
index 7eefef9c7c4..8c6a595fea4 100644
--- a/include/elf/common.h
+++ b/include/elf/common.h
@@ -523,6 +523,7 @@ 
 #define SHT_PREINIT_ARRAY 16		/* Array of ptrs to pre-init funcs */
 #define SHT_GROUP	  17		/* Section contains a section group */
 #define SHT_SYMTAB_SHNDX  18		/* Indices for SHN_XINDEX entries */
+#define SHT_RELR	  19		/* RELR relative relocations */
 
 #define SHT_LOOS	0x60000000	/* First of OS specific semantics */
 #define SHT_HIOS	0x6fffffff	/* Last of OS specific semantics */
@@ -1056,6 +1057,9 @@ 
 #define DT_PREINIT_ARRAY   32
 #define DT_PREINIT_ARRAYSZ 33
 #define DT_SYMTAB_SHNDX    34
+#define DT_RELRSZ	35
+#define DT_RELR		36
+#define DT_RELRENT	37
 
 /* Note, the Oct 4, 1999 draft of the ELF ABI changed the values
    for DT_LOOS and DT_HIOS.  Some implementations however, use