diff --git a/ldb/interrupt.c b/ldb/interrupt.c index 6c38c3f7956d0e7fb58ff9aa6f761f70fb182d07..e99352873db604fa51e361e6a1a0b088c1f2a0a1 100644 --- a/ldb/interrupt.c +++ b/ldb/interrupt.c @@ -1,4 +1,4 @@ -/* $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/ldb/Attic/interrupt.c,v 1.33 1992/03/22 19:57:46 wlott Exp $ */ +/* $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/ldb/Attic/interrupt.c,v 1.34 1992/03/22 20:25:51 wlott Exp $ */ /* Interrupt handing magic. */ @@ -323,9 +323,13 @@ struct sigcontext *context; if ( #ifdef mips context->sc_regs[FLAGS] & (1<<flag_Atomic) +#else +#ifdef sparc + context->sc_regs[ALLOC] & 4 #else SymbolValue(PSEUDO_ATOMIC_ATOMIC) -#endif +#endif sparc +#endif mips ) { maybe_gc_pending = TRUE; if (pending_signal == 0) { @@ -334,8 +338,12 @@ struct sigcontext *context; } #ifdef mips context->sc_regs[FLAGS] |= (1<<flag_Interrupted); +#else +#ifdef sparc + context->sc_regs[ALLOC] |= 1; #else SetSymbolValue(PSEUDO_ATOMIC_INTERRUPTED, T); +#endif #endif } else {