[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v10 3/8] include/elf: Add defines related to GNU property notes f
From: |
Richard Henderson |
Subject: |
[PATCH v10 3/8] include/elf: Add defines related to GNU property notes for AArch64 |
Date: |
Fri, 2 Oct 2020 16:59:50 -0500 |
These are all of the defines required to parse
GNU_PROPERTY_AARCH64_FEATURE_1_AND, copied from binutils.
Other missing defines related to other GNU program headers
and notes are elided for now.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
include/elf.h | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/include/elf.h b/include/elf.h
index c117a4d1ab..10126ff809 100644
--- a/include/elf.h
+++ b/include/elf.h
@@ -26,9 +26,13 @@ typedef int64_t Elf64_Sxword;
#define PT_NOTE 4
#define PT_SHLIB 5
#define PT_PHDR 6
+#define PT_LOOS 0x60000000
+#define PT_HIOS 0x6fffffff
#define PT_LOPROC 0x70000000
#define PT_HIPROC 0x7fffffff
+#define PT_GNU_PROPERTY (PT_LOOS + 0x474e553)
+
#define PT_MIPS_REGINFO 0x70000000
#define PT_MIPS_RTPROC 0x70000001
#define PT_MIPS_OPTIONS 0x70000002
@@ -1657,6 +1661,24 @@ typedef struct elf64_shdr {
#define NT_ARM_SYSTEM_CALL 0x404 /* ARM system call number */
#define NT_ARM_SVE 0x405 /* ARM Scalable Vector Extension regs
*/
+/* Defined note types for GNU systems. */
+
+#define NT_GNU_PROPERTY_TYPE_0 5 /* Program property */
+
+/* Values used in GNU .note.gnu.property notes (NT_GNU_PROPERTY_TYPE_0). */
+
+#define GNU_PROPERTY_STACK_SIZE 1
+#define GNU_PROPERTY_NO_COPY_ON_PROTECTED 2
+
+#define GNU_PROPERTY_LOPROC 0xc0000000
+#define GNU_PROPERTY_HIPROC 0xdfffffff
+#define GNU_PROPERTY_LOUSER 0xe0000000
+#define GNU_PROPERTY_HIUSER 0xffffffff
+
+#define GNU_PROPERTY_AARCH64_FEATURE_1_AND 0xc0000000
+#define GNU_PROPERTY_AARCH64_FEATURE_1_BTI (1u << 0)
+#define GNU_PROPERTY_AARCH64_FEATURE_1_PAC (1u << 1)
+
/*
* Physical entry point into the kernel.
*
--
2.25.1
- [PATCH v10 0/8] linux-user: User support for AArch64 BTI, Richard Henderson, 2020/10/02
- [PATCH v10 1/8] linux-user/aarch64: Reset btype for signals, Richard Henderson, 2020/10/02
- [PATCH v10 2/8] linux-user: Set PAGE_TARGET_1 for TARGET_PROT_BTI, Richard Henderson, 2020/10/02
- [PATCH v10 3/8] include/elf: Add defines related to GNU property notes for AArch64,
Richard Henderson <=
- [PATCH v10 5/8] linux-user/elfload: Adjust iteration over phdr, Richard Henderson, 2020/10/02
- [PATCH v10 7/8] linux-user/elfload: Parse NT_GNU_PROPERTY_TYPE_0 notes, Richard Henderson, 2020/10/02
- [PATCH v10 6/8] linux-user/elfload: Move PT_INTERP detection to first loop, Richard Henderson, 2020/10/02
- [PATCH v10 4/8] linux-user/elfload: Fix coding style in load_elf_image, Richard Henderson, 2020/10/02