i386.c (x86_initialize_trampoline): Emit a call to __enable_execute_stack with the address of the trampoline if...

* config/i386/i386.c (x86_initialize_trampoline): Emit a call
to __enable_execute_stack with the address of the trampoline
if TRANSFER_FROM_TRAMPOLINE is defined.
* config/i386/i386.h (TARGET_64BIT): Expand to a compile-time
constant if building libgcc2.

From-SVN: r58291
This commit is contained in:
Jason Thorpe 2002-10-18 23:00:50 +00:00 committed by Jason Thorpe
parent e4f4feba32
commit 5791cc2970
3 changed files with 23 additions and 1 deletions

View File

@ -1,3 +1,11 @@
2002-10-18 Jason Thorpe <thorpej@wasabisystems.com>
* config/i386/i386.c (x86_initialize_trampoline): Emit a call
to __enable_execute_stack with the address of the trampoline
if TRANSFER_FROM_TRAMPOLINE is defined.
* config/i386/i386.h (TARGET_64BIT): Expand to a compile-time
constant if building libgcc2.
2002-10-17 Roger Sayle <roger@eyesopen.com>
* doc/c-tree.texi: Update description of COND_EXPR tree nodes.

View File

@ -11713,6 +11713,11 @@ x86_initialize_trampoline (tramp, fnaddr, cxt)
if (offset > TRAMPOLINE_SIZE)
abort ();
}
#ifdef TRANSFER_FROM_TRAMPOLINE
emit_library_call (gen_rtx (SYMBOL_REF, Pmode, "__enable_execute_stack"),
LCT_NORMAL, VOIDmode, 1, tramp, Pmode);
#endif
}
#define def_builtin(MASK, NAME, TYPE, CODE) \

View File

@ -177,7 +177,15 @@ extern int target_flags;
/* Debug FUNCTION_ARG macros */
#define TARGET_DEBUG_ARG (ix86_debug_arg_string != 0)
/* 64bit Sledgehammer mode */
/* 64bit Sledgehammer mode. For libgcc2 we make sure this is a
compile-time constant. */
#ifdef IN_LIBGCC2
#ifdef __x86_64__
#define TARGET_64BIT 1
#else
#define TARGET_64BIT 0
#endif
#else
#ifdef TARGET_BI_ARCH
#define TARGET_64BIT (target_flags & MASK_64BIT)
#else
@ -187,6 +195,7 @@ extern int target_flags;
#define TARGET_64BIT 0
#endif
#endif
#endif
#define TARGET_386 (ix86_cpu == PROCESSOR_I386)
#define TARGET_486 (ix86_cpu == PROCESSOR_I486)