aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/x86
diff options
context:
space:
mode:
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>2024-01-05 10:36:40 -0300
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>2024-01-09 13:55:51 -0300
commit25f1e16ef03a6a8fb1701c4647d46c564480d88c (patch)
treec4f2b8148ab0fe004bae19105d8f8169ab9922a7 /sysdeps/x86
parentb7fc4a07f206a640e6d807d72f5c1ee3ea7a25b6 (diff)
downloadglibc-25f1e16ef03a6a8fb1701c4647d46c564480d88c.zip
glibc-25f1e16ef03a6a8fb1701c4647d46c564480d88c.tar.gz
glibc-25f1e16ef03a6a8fb1701c4647d46c564480d88c.tar.bz2
i386: Remove CET support
CET is only support for x86_64, this patch reverts: - faaee1f07ed x86: Support shadow stack pointer in setjmp/longjmp. - be9ccd27c09 i386: Add _CET_ENDBR to indirect jump targets in add_n.S/sub_n.S - c02695d7764 x86/CET: Update vfork to prevent child return - 5d844e1b725 i386: Enable CET support in ucontext functions - 124bcde683 x86: Add _CET_ENDBR to functions in crti.S - 562837c002 x86: Add _CET_ENDBR to functions in dl-tlsdesc.S - f753fa7dea x86: Support IBT and SHSTK in Intel CET [BZ #21598] - 825b58f3fb i386-mcount.S: Add _CET_ENDBR to _mcount and __fentry__ - 7e119cd582 i386: Use _CET_NOTRACK in i686/memcmp.S - 177824e232 i386: Use _CET_NOTRACK in memcmp-sse4.S - 0a899af097 i386: Use _CET_NOTRACK in memcpy-ssse3-rep.S - 7fb613361c i386: Use _CET_NOTRACK in memcpy-ssse3.S - 77a8ae0948 i386: Use _CET_NOTRACK in memset-sse2-rep.S - 00e7b76a8f i386: Use _CET_NOTRACK in memset-sse2.S - 90d15dc577 i386: Use _CET_NOTRACK in strcat-sse2.S - f1574581c7 i386: Use _CET_NOTRACK in strcpy-sse2.S - 4031d7484a i386/sub_n.S: Add a missing _CET_ENDBR to indirect jump - target - Checked on i686-linux-gnu.
Diffstat (limited to 'sysdeps/x86')
-rw-r--r--sysdeps/x86/sysdep.h44
1 files changed, 0 insertions, 44 deletions
diff --git a/sysdeps/x86/sysdep.h b/sysdeps/x86/sysdep.h
index 5a14ca5..85d0a8c 100644
--- a/sysdeps/x86/sysdep.h
+++ b/sysdeps/x86/sysdep.h
@@ -21,33 +21,6 @@
#include <sysdeps/generic/sysdep.h>
-/* __CET__ is defined by GCC with Control-Flow Protection values:
-
-enum cf_protection_level
-{
- CF_NONE = 0,
- CF_BRANCH = 1 << 0,
- CF_RETURN = 1 << 1,
- CF_FULL = CF_BRANCH | CF_RETURN,
- CF_SET = 1 << 2
-};
-*/
-
-/* Set if CF_BRANCH (IBT) is enabled. */
-#define X86_FEATURE_1_IBT (1U << 0)
-/* Set if CF_RETURN (SHSTK) is enabled. */
-#define X86_FEATURE_1_SHSTK (1U << 1)
-
-#ifdef __CET__
-# define CET_ENABLED 1
-# define IBT_ENABLED (__CET__ & X86_FEATURE_1_IBT)
-# define SHSTK_ENABLED (__CET__ & X86_FEATURE_1_SHSTK)
-#else
-# define CET_ENABLED 0
-# define IBT_ENABLED 0
-# define SHSTK_ENABLED 0
-#endif
-
/* Offset for fxsave/xsave area used by _dl_runtime_resolve. Also need
space to preserve RCX, RDX, RSI, RDI, R8, R9 and RAX. It must be
aligned to 16 bytes for fxsave and 64 bytes for xsave. */
@@ -66,27 +39,10 @@ enum cf_protection_level
/* Syntactic details of assembler. */
-#ifdef _CET_ENDBR
-# define _CET_NOTRACK notrack
-#else
-# define _CET_ENDBR
-# define _CET_NOTRACK
-#endif
-
/* ELF uses byte-counts for .align, most others use log2 of count of bytes. */
#define ALIGNARG(log2) 1<<log2
#define ASM_SIZE_DIRECTIVE(name) .size name,.-name;
-/* Define an entry point visible from C. */
-#define ENTRY_P2ALIGN(name, alignment) \
- .globl C_SYMBOL_NAME(name); \
- .type C_SYMBOL_NAME(name),@function; \
- .align ALIGNARG(alignment); \
- C_LABEL(name) \
- cfi_startproc; \
- _CET_ENDBR; \
- CALL_MCOUNT
-
/* Common entry 16 byte aligns. */
#define ENTRY(name) ENTRY_P2ALIGN (name, 4)