X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fruntime%2Fx86-assem.S;h=19584b94d2929dd7f8c0350ba1e7805af45a78f2;hb=b870615b146940f661e5d0e9069ca4e16e9f483d;hp=31ae91e6ca742f78c56957c1ba8ceee80f21a2cf;hpb=f143939b1dbaf38ebd4f92c851fbc4ecddf37af1;p=sbcl.git diff --git a/src/runtime/x86-assem.S b/src/runtime/x86-assem.S index 31ae91e..19584b9 100644 --- a/src/runtime/x86-assem.S +++ b/src/runtime/x86-assem.S @@ -16,7 +16,12 @@ #define LANGUAGE_ASSEMBLY #include "validate.h" #include "sbcl.h" +#include "genesis/closure.h" +#include "genesis/fdefn.h" +#include "genesis/static-symbols.h" +#include "genesis/symbol.h" + /* Minimize conditionalization for different OS naming schemes. */ #if defined __linux__ || defined __FreeBSD__ /* (but *not* OpenBSD) */ #define GNAME(var) var @@ -262,11 +267,7 @@ GNAME(undefined_tramp): int3 .byte trap_Error .byte 2 -#ifdef type_LongFloat - .byte 24 -#else - .byte 23 -#endif + .byte UNDEFINED_FUN_ERROR .byte sc_DescriptorReg # eax in the Descriptor-reg SC ret .size GNAME(undefined_tramp), .-GNAME(undefined_tramp) @@ -328,11 +329,13 @@ GNAME(do_pending_interrupt): ret .size GNAME(do_pending_interrupt),.-GNAME(do_pending_interrupt) -#ifdef GENCGC +#ifdef LISP_FEATURE_GENCGC /* This is a fast bzero using the FPU. The first argument is the start * address which needs to be aligned on an 8 byte boundary, the second * argument is the number of bytes, which must be a nonzero multiple * of 8 bytes. */ +/* FIXME whether this is still faster than using the OS's bzero or + * equivalent, we don't know */ .text .globl GNAME(i586_bzero) .type GNAME(i586_bzero),@function @@ -659,7 +662,7 @@ GNAME(alloc_16_to_edi): -#ifdef GENCGC +#ifdef LISP_FEATURE_GENCGC_INLINE_ALLOC /* disabled at present */ /* These routines are called from Lisp when an inline allocation * overflows. Every register except the result needs to be preserved.