Skip to content
Snippets Groups Projects
Commit 951611cf authored by Raymond Toy's avatar Raymond Toy
Browse files

Add RELOCATABLE_STACK_START to control stack spaces

When RELOCATABLE_STACK_START is defined, the control stack, binding
stack, and sigalt stack are located wherever mmap finds room for them.

Currently only implemented for Darwin, but should work for linux and
solaris.  We enable this by default on Darwin now.
parent 583140fc
No related branches found
No related tags found
No related merge requests found
......@@ -6,7 +6,7 @@ include Config.x86_common
# you have the 10.5 SDK available.
MIN_VER = -mmacosx-version-min=10.5
CPPFLAGS += -DDARWIN $(MIN_VER) -m32
CPPFLAGS += -DDARWIN $(MIN_VER) -m32 -DRELOCATABLE_STACK_START
CFLAGS += -g3 -mtune=generic
ASFLAGS += -g3 $(MIN_VER)
......
......@@ -18,12 +18,12 @@
#define STATIC_SPACE_START (SpaceStart_TargetStatic)
#define STATIC_SPACE_SIZE (0x0ffff000) /* 256MB - 1 page */
#if 0
#ifndef RELOCATABLE_STACK_START
#define BINDING_STACK_START (0x38000000)
#endif
#define BINDING_STACK_SIZE (0x07fff000) /* 128MB - 1 page */
#if 0
#ifdef RELOCATABLE_STACK_START
#define CONTROL_STACK_START (0x40000000)
#endif
......@@ -33,7 +33,7 @@
*/
#define CONTROL_STACK_SIZE (0x07fdf000) /* 128MB - SIGSTKSZ - 1 page */
#if 0
#ifndef RELOCATABLE_STACK_START
#define SIGNAL_STACK_START (0x47fe0000) /* One page past the end of the control stack */
#endif
#define SIGNAL_STACK_SIZE SIGSTKSZ
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment