X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fruntime%2Falloc.c;h=92e237b54662f1d4ae3dcf57c8a1dc69485e2e13;hb=5f0bd05a15aaf93f46baf9b8aa3e9b0bfbca26ab;hp=f67ccd048492a628061bf926ee1572a97ddaebb4;hpb=7e02fe01f102c9e536df701dc783149a8d76b3fc;p=sbcl.git diff --git a/src/runtime/alloc.c b/src/runtime/alloc.c index f67ccd0..92e237b 100644 --- a/src/runtime/alloc.c +++ b/src/runtime/alloc.c @@ -40,10 +40,12 @@ pa_alloc(int bytes, int page_type_flag) lispobj *result; struct thread *th = arch_os_get_current_thread(); +#ifndef LISP_FEATURE_SB_SAFEPOINT /* SIG_STOP_FOR_GC must be unblocked: else two threads racing here * may deadlock: one will wait on the GC lock, and the other * cannot stop the first one... */ check_gc_signals_unblocked_or_lose(0); +#endif /* FIXME: OOAO violation: see arch_pseudo_* */ set_pseudo_atomic_atomic(th); @@ -152,7 +154,7 @@ alloc_cons(lispobj car, lispobj cdr) } lispobj -alloc_number(long n) +alloc_number(sword_t n) { struct bignum *ptr;