aboutsummaryrefslogtreecommitdiffstats
path: root/src/alloc.c
diff options
context:
space:
mode:
authorPaul Eggert <[email protected]>2011-03-15 15:09:50 -0700
committerPaul Eggert <[email protected]>2011-03-15 15:09:50 -0700
commitdff45157417d1620c4fb7b6c117cc89142009b69 (patch)
treeb97b6ced83d24ea4e08ca23522b2839d8e370421 /src/alloc.c
parentae35e7564b5fc774798d5e9494123a2ff0522885 (diff)
* alloc.c (mark_stack): Move local variables into the #ifdef region where
they're used.
Diffstat (limited to 'src/alloc.c')
-rw-r--r--src/alloc.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/alloc.c b/src/alloc.c
index 6f379ef35f..fd1334a6ef 100644
--- a/src/alloc.c
+++ b/src/alloc.c
@@ -4312,12 +4312,6 @@ static void
mark_stack (void)
{
int i;
- /* jmp_buf may not be aligned enough on darwin-ppc64 */
- union aligned_jmpbuf {
- Lisp_Object o;
- jmp_buf j;
- } j;
- volatile int stack_grows_down_p = (char *) &j > (char *) stack_base;
void *end;
#ifdef HAVE___BUILTIN_UNWIND_INIT
@@ -4327,6 +4321,14 @@ mark_stack (void)
__builtin_unwind_init ();
end = &end;
#else /* not HAVE___BUILTIN_UNWIND_INIT */
+#ifndef GC_SAVE_REGISTERS_ON_STACK
+ /* jmp_buf may not be aligned enough on darwin-ppc64 */
+ union aligned_jmpbuf {
+ Lisp_Object o;
+ jmp_buf j;
+ } j;
+ volatile int stack_grows_down_p = (char *) &j > (char *) stack_base;
+#endif
/* This trick flushes the register windows so that all the state of
the process is contained in the stack. */
/* Fixme: Code in the Boehm GC suggests flushing (with `flushrs') is