mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-02-26 13:45:58 +08:00
xtensa: add .note.GNU-stack section on linux
gcc/ * config/xtensa/linux.h (TARGET_ASM_FILE_END): New macro. libgcc/ * config/xtensa/crti.S: Add .note.GNU-stack section on linux. * config/xtensa/crtn.S: Likewise. * config/xtensa/lib1funcs.S: Likewise. * config/xtensa/lib2funcs.S: Likewise.
This commit is contained in:
parent
538a0d0f29
commit
6360bf9a2d
@ -69,3 +69,5 @@ along with GCC; see the file COPYING3. If not see
|
||||
#define XTENSA_ALWAYS_PIC 1
|
||||
|
||||
#undef DEBUGGER_REGNO
|
||||
|
||||
#define TARGET_ASM_FILE_END file_end_indicate_exec_stack
|
||||
|
@ -26,6 +26,12 @@
|
||||
|
||||
#include "xtensa-config-builtin.h"
|
||||
|
||||
/* An executable stack is *not* required for these functions. */
|
||||
#if defined(__ELF__) && defined(__linux__)
|
||||
.section .note.GNU-stack,"",%progbits
|
||||
.previous
|
||||
#endif
|
||||
|
||||
.section .init
|
||||
.globl _init
|
||||
.type _init,@function
|
||||
|
@ -27,6 +27,12 @@
|
||||
|
||||
#include "xtensa-config-builtin.h"
|
||||
|
||||
/* An executable stack is *not* required for these functions. */
|
||||
#if defined(__ELF__) && defined(__linux__)
|
||||
.section .note.GNU-stack,"",%progbits
|
||||
.previous
|
||||
#endif
|
||||
|
||||
.section .init
|
||||
#if XCHAL_HAVE_WINDOWED && !__XTENSA_CALL0_ABI__
|
||||
retw
|
||||
|
@ -25,6 +25,12 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
|
||||
|
||||
#include "xtensa-config-builtin.h"
|
||||
|
||||
/* An executable stack is *not* required for these functions. */
|
||||
#if defined(__ELF__) && defined(__linux__)
|
||||
.section .note.GNU-stack,"",%progbits
|
||||
.previous
|
||||
#endif
|
||||
|
||||
/* Define macros for the ABS and ADDX* instructions to handle cases
|
||||
where they are not included in the Xtensa processor configuration. */
|
||||
|
||||
|
@ -25,6 +25,12 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
|
||||
|
||||
#include "xtensa-config-builtin.h"
|
||||
|
||||
/* An executable stack is *not* required for these functions. */
|
||||
#if defined(__ELF__) && defined(__linux__)
|
||||
.section .note.GNU-stack,"",%progbits
|
||||
.previous
|
||||
#endif
|
||||
|
||||
/* __xtensa_libgcc_window_spill: This function flushes out all but the
|
||||
current register window. This is used to set up the stack so that
|
||||
arbitrary frames can be accessed. */
|
||||
|
Loading…
Reference in New Issue
Block a user