X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fruntime%2Fglobals.c;h=07d56b597d250686338ed2fbdad8de9907790c53;hb=c2ac5ba3964165ee2d21ccd4c6bf8bdc48e1a165;hp=6c9f88aa76f2024b75b133c6e05159e5d7158d34;hpb=79cc569a97e444389350ea3f5b1017374fe16bec;p=sbcl.git diff --git a/src/runtime/globals.c b/src/runtime/globals.c index 6c9f88a..07d56b5 100644 --- a/src/runtime/globals.c +++ b/src/runtime/globals.c @@ -22,7 +22,9 @@ #include "globals.h" #include "validate.h" +#ifdef FOREIGN_FUNCTION_CALL_FLAG int foreign_function_call_active; +#endif lispobj *current_control_stack_pointer; lispobj *current_control_frame_pointer; @@ -32,7 +34,7 @@ lispobj *current_binding_stack_pointer; /* ALLOCATION_POINTER is x86 or RT. Anyone want to do an RT port? */ -#ifndef ALLOCATION_POINTER +# if !defined(LISP_FEATURE_X86) && !defined(LISP_FEATURE_X86_64) /* The Object Formerly Known As current_dynamic_space_free_pointer */ lispobj *dynamic_space_free_pointer; #endif @@ -50,7 +52,7 @@ boolean stop_the_world=0; * is done). For the GENCGC, it always points to DYNAMIC_SPACE_START. */ lispobj *current_dynamic_space; -#if defined(LISP_FEATURE_SB_THREAD) +#if defined(LISP_FEATURE_SB_THREAD) && !defined(LISP_FEATURE_GCC_TLS) pthread_key_t specials=0; #endif @@ -65,9 +67,11 @@ void globals_init(void) current_auto_gc_trigger = NULL; #endif - /* Set foreign function call active. */ +#ifdef FOREIGN_FUNCTION_CALL_FLAG foreign_function_call_active = 1; -#if defined(LISP_FEATURE_SB_THREAD) +#endif + +#if defined(LISP_FEATURE_SB_THREAD) && !defined(LISP_FEATURE_GCC_TLS) pthread_key_create(&specials,0); #endif }