diff --git a/src/ChangeLog b/src/ChangeLog index 7d191333750..a12f34a2a5b 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,5 +1,8 @@ 2000-03-28 Dave Love + * s/gnu-linux.h (GC_SETJMP_WORKS): Define for i386, sparc, m68k, + alpha. + * alloc.c: Include stdio.h. Test STDC_HEADERS, not __STDC__. 2000-03-27 gerd diff --git a/src/s/gnu-linux.h b/src/s/gnu-linux.h index e02f85db0ba..8e39773c6c6 100644 --- a/src/s/gnu-linux.h +++ b/src/s/gnu-linux.h @@ -327,3 +327,12 @@ Boston, MA 02111-1307, USA. */ #ifdef DOUG_LEA_MALLOC #undef REL_ALLOC #endif + +/* Tell that garbage collector that setjmp is known to save all + registers relevant for conservative garbage collection in the + jmp_buf. */ +/* m68k and alpha aren't tested, but there are Debian packages for SCM + and/or Guile on them, so the technique must work. */ +#if #cpu (i386) || #cpu (sparc) || #cpu (m68k) || #cpu (alpha) +#define GC_SETJMP_WORKS 1 +#endif