aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2021-06-17 12:35:18 -0700
committerH.J. Lu <hjl.tools@gmail.com>2021-07-08 18:11:53 -0700
commit6320fd00dc374f74658c7e4b7dffbe1d71723284 (patch)
tree95d9ca4603d3b066d511280d66ee384062c52853 /include
parentce8fea3651a6050d5089b6d90068733f4cb9f686 (diff)
downloadgdb-6320fd00dc374f74658c7e4b7dffbe1d71723284.zip
gdb-6320fd00dc374f74658c7e4b7dffbe1d71723284.tar.gz
gdb-6320fd00dc374f74658c7e4b7dffbe1d71723284.tar.bz2
elf: Add GNU_PROPERTY_1_NEEDED
Add GNU_PROPERTY_1_NEEDED: #define GNU_PROPERTY_1_NEEDED GNU_PROPERTY_UINT32_OR_LO to indicate the needed properties by the object file. Add GNU_PROPERTY_1_NEEDED_INDIRECT_EXTERN_ACCESS: #define GNU_PROPERTY_1_NEEDED_INDIRECT_EXTERN_ACCESS (1U << 0) to indicate that the object file requires canonical function pointers and cannot be used with copy relocation. binutils/ * readelf.c (decode_1_needed): New. (print_gnu_property_note): Handle GNU_PROPERTY_1_NEEDED. include/ * elf/common.h (GNU_PROPERTY_1_NEEDED): New. (GNU_PROPERTY_1_NEEDED_INDIRECT_EXTERN_ACCESS): Likewise. ld/ * testsuite/ld-elf/property-1_needed-1a.d: New file. * testsuite/ld-elf/property-1_needed-1.s: Likewise.
Diffstat (limited to 'include')
-rw-r--r--include/elf/common.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/elf/common.h b/include/elf/common.h
index 0cca286..0d381f0 100644
--- a/include/elf/common.h
+++ b/include/elf/common.h
@@ -792,6 +792,13 @@
#define GNU_PROPERTY_UINT32_OR_LO 0xb0008000
#define GNU_PROPERTY_UINT32_OR_HI 0xb000ffff
+/* The needed properties by the object file. */
+#define GNU_PROPERTY_1_NEEDED GNU_PROPERTY_UINT32_OR_LO
+
+/* Set if the object file requires canonical function pointers and
+ cannot be used with copy relocation. */
+#define GNU_PROPERTY_1_NEEDED_INDIRECT_EXTERN_ACCESS (1U << 0)
+
/* Processor-specific semantics, lo */
#define GNU_PROPERTY_LOPROC 0xc0000000
/* Processor-specific semantics, hi */