diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | sysdeps/i386/start.S | 10 |
2 files changed, 14 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog index d1aff069da..0df8aa58ae 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2018-09-12 H.J. Lu <hongjiu.lu@intel.com> + Xuepeng Guo <xuepeng.guo@intel.com> + + [BZ #23606] + * sysdeps/i386/start.S: Include <sysdep.h> + (_start): Use ENTRY/END to insert ENDBR32 at entry when CET is + enabled. Add cfi_undefined (eip). + 2018-09-11 Joseph Myers <joseph@codesourcery.com> * sysdeps/x86_64/fpu/math_private.h (MOVD): Remove macro. diff --git a/sysdeps/i386/start.S b/sysdeps/i386/start.S index 91035fa83f..e35e9bd31b 100644 --- a/sysdeps/i386/start.S +++ b/sysdeps/i386/start.S @@ -52,10 +52,11 @@ NULL */ - .text - .globl _start - .type _start,@function -_start: +#include <sysdep.h> + +ENTRY (_start) + /* Clearing frame pointer is insufficient, use CFI. */ + cfi_undefined (eip) /* Clear the frame pointer. The ABI suggests this be done, to mark the outermost frame obviously. */ xorl %ebp, %ebp @@ -131,6 +132,7 @@ _start: 1: movl (%esp), %ebx ret #endif +END (_start) /* To fulfill the System V/i386 ABI we need this symbol. Yuck, it's so meaningless since we don't support machines < 80386. */ |