Movatterモバイル変換
[0]ホーム
This is the mail archive of thelibc-alpha@sourceware.orgmailing list for theglibc project.
[PATCH] Add NT_GNU_PROPERTY_TYPE_0 macros
- From: "H.J. Lu" <hongjiu dot lu at intel dot com>
- To: GNU C Library <libc-alpha at sourceware dot org>
- Date: Tue, 15 Aug 2017 05:04:53 -0700
- Subject: [PATCH] Add NT_GNU_PROPERTY_TYPE_0 macros
- Authentication-results: sourceware.org; auth=none
- Reply-to: "H.J. Lu" <hjl dot tools at gmail dot com>
Add macros used in GNU .note.gnu.property notes (NT_GNU_PROPERTY_TYPE_0).Any comments or objections?H.J.--* elf/elf.h (NT_GNU_PROPERTY_TYPE_0): New.(NOTE_GNU_PROPERTY_SECTION_NAME): Likewise.(GNU_PROPERTY_STACK_SIZE): Likewie.(GNU_PROPERTY_NO_COPY_ON_PROTECTED): Likewie.(GNU_PROPERTY_LOPROC): Likewise.(GNU_PROPERTY_HIPROC): Likewise.(GNU_PROPERTY_LOUSER): Likewise.(GNU_PROPERTY_HIUSER): Likewise.(GNU_PROPERTY_X86_ISA_1_USED): Likwise.(GNU_PROPERTY_X86_ISA_1_NEEDED): Likwise.(GNU_PROPERTY_X86_FEATURE_1_AND): Likwise.(GNU_PROPERTY_X86_ISA_1_486): Likwise.(GNU_PROPERTY_X86_ISA_1_586): Likwise.(GNU_PROPERTY_X86_ISA_1_686): Likwise.(GNU_PROPERTY_X86_ISA_1_SSE): Likwise.(GNU_PROPERTY_X86_ISA_1_SSE2): Likwise.(GNU_PROPERTY_X86_ISA_1_SSE3): Likwise.(GNU_PROPERTY_X86_ISA_1_SSSE3): Likwise.(GNU_PROPERTY_X86_ISA_1_SSE4_1): Likwise.(GNU_PROPERTY_X86_ISA_1_SSE4_2): Likwise.(GNU_PROPERTY_X86_ISA_1_AVX): Likwise.(GNU_PROPERTY_X86_ISA_1_AVX2): Likwise.(GNU_PROPERTY_X86_ISA_1_AVX512F): Likwise.(GNU_PROPERTY_X86_ISA_1_AVX512CD): Likwise.(GNU_PROPERTY_X86_ISA_1_AVX512ER): Likwise.(GNU_PROPERTY_X86_ISA_1_AVX512PF): Likwise.(GNU_PROPERTY_X86_ISA_1_AVX512VL): Likwise.(GNU_PROPERTY_X86_ISA_1_AVX512DQ): Likwise.(GNU_PROPERTY_X86_ISA_1_AVX512BW): Likwise.(GNU_PROPERTY_X86_FEATURE_1_IBT): Likwise.(GNU_PROPERTY_X86_FEATURE_1_SHSTK): Likwise.--- elf/elf.h | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+)diff --git a/elf/elf.h b/elf/elf.hindex 3900b4c9f0..237e35c096 100644--- a/elf/elf.h+++ b/elf/elf.h@@ -1247,6 +1247,62 @@ typedef struct /* Version note generated by GNU gold containing a version string. */ #define NT_GNU_GOLD_VERSION4 +/* Program property. */+#define NT_GNU_PROPERTY_TYPE_0 5++/* Note section name of program property. */+#define NOTE_GNU_PROPERTY_SECTION_NAME ".note.gnu.property"++/* Values used in GNU .note.gnu.property notes (NT_GNU_PROPERTY_TYPE_0). */++/* Stack size. */+#define GNU_PROPERTY_STACK_SIZE1+/* No copy relocation on protected data symbol. */+#define GNU_PROPERTY_NO_COPY_ON_PROTECTED2++/* Processor-specific semantics, lo */+#define GNU_PROPERTY_LOPROC0xc0000000+/* Processor-specific semantics, hi */+#define GNU_PROPERTY_HIPROC0xdfffffff+/* Application-specific semantics, lo */+#define GNU_PROPERTY_LOUSER0xe0000000+/* Application-specific semantics, hi */+#define GNU_PROPERTY_HIUSER0xffffffff++/* The x86 instruction sets indicated by the corresponding bits are+ used in program. Their support in the hardware is optional. */+#define GNU_PROPERTY_X86_ISA_1_USED0xc0000000+/* The x86 instruction sets indicated by the corresponding bits are+ used in program and they must be supported by the hardware. */+#define GNU_PROPERTY_X86_ISA_1_NEEDED0xc0000001+/* X86 processor-specific features used in program. */+#define GNU_PROPERTY_X86_FEATURE_1_AND0xc0000002++#define GNU_PROPERTY_X86_ISA_1_486(1U << 0)+#define GNU_PROPERTY_X86_ISA_1_586(1U << 1)+#define GNU_PROPERTY_X86_ISA_1_686(1U << 2)+#define GNU_PROPERTY_X86_ISA_1_SSE(1U << 3)+#define GNU_PROPERTY_X86_ISA_1_SSE2(1U << 4)+#define GNU_PROPERTY_X86_ISA_1_SSE3(1U << 5)+#define GNU_PROPERTY_X86_ISA_1_SSSE3(1U << 6)+#define GNU_PROPERTY_X86_ISA_1_SSE4_1(1U << 7)+#define GNU_PROPERTY_X86_ISA_1_SSE4_2(1U << 8)+#define GNU_PROPERTY_X86_ISA_1_AVX(1U << 9)+#define GNU_PROPERTY_X86_ISA_1_AVX2(1U << 10)+#define GNU_PROPERTY_X86_ISA_1_AVX512F(1U << 11)+#define GNU_PROPERTY_X86_ISA_1_AVX512CD(1U << 12)+#define GNU_PROPERTY_X86_ISA_1_AVX512ER(1U << 13)+#define GNU_PROPERTY_X86_ISA_1_AVX512PF(1U << 14)+#define GNU_PROPERTY_X86_ISA_1_AVX512VL(1U << 15)+#define GNU_PROPERTY_X86_ISA_1_AVX512DQ(1U << 16)+#define GNU_PROPERTY_X86_ISA_1_AVX512BW(1U << 17)++/* This indicates that all executable sections are compatible with+ IBT. */+#define GNU_PROPERTY_X86_FEATURE_1_IBT(1U << 0)+/* This indicates that all executable sections are compatible with+ SHSTK. */+#define GNU_PROPERTY_X86_FEATURE_1_SHSTK(1U << 1) /* Move records. */ typedef struct-- 2.13.5
[8]ページ先頭