diff --git a/src/lisp/os-common.c b/src/lisp/os-common.c old mode 100644 new mode 100755 index e6684b2daa015c62f23d22999b8431d3a73abb08..9ea6f4603888a41ce87e70eeff656f642fad998a --- a/src/lisp/os-common.c +++ b/src/lisp/os-common.c @@ -368,23 +368,6 @@ lazy_resolve_linkage(unsigned long retaddr) #endif /* LINKAGE_TABLE */ } -static int -os_stack_grows_down_1(int *local_var_address) -{ - int dummy; - - return &dummy < local_var_address; -} - -/* Value is true if the processor stack grows down. */ - -int -os_stack_grows_down(void) -{ - int dummy; - - return os_stack_grows_down_1(&dummy); -} #ifdef RED_ZONE_HIT @@ -425,17 +408,13 @@ static void guard_zones(char **yellow_start, char **red_start) { #if (defined(i386) || defined(__x86_64)) - if (os_stack_grows_down()) { - char *end = (char *) CONTROL_STACK_START; - - *red_start = end; - *yellow_start = *red_start + RED_ZONE_SIZE; - } else { - char *end = (char *) CONTROL_STACK_START + control_stack_size; + /* + * All x86's have a control stack (aka C stack) that grows down. + */ + char *end = (char *) CONTROL_STACK_START; - *red_start = end - RED_ZONE_SIZE; - *yellow_start = *red_start - YELLOW_ZONE_SIZE; - } + *red_start = end; + *yellow_start = *red_start + RED_ZONE_SIZE; #else /* * On Solaris/sparc, the C stack grows down, but the Lisp control