Fix attach_thread to allocate a TLS index for *gc-inhibit* if needed
[sbcl.git] / src / runtime / globals.h
index 7d424a8..b0e812b 100644 (file)
@@ -16,6 +16,7 @@
 # include <sys/types.h>
 # include <unistd.h>
 # include "runtime.h"
+# include "runtime-options.h"
 #endif
 
 #include "sbcl.h"
@@ -31,8 +32,8 @@ extern int foreign_function_call_active;
     foreign_function_call_active
 #endif
 
-extern size_t dynamic_space_size;
-extern size_t thread_control_stack_size;
+extern os_vm_size_t dynamic_space_size;
+extern os_vm_size_t thread_control_stack_size;
 
 extern struct runtime_options *runtime_options;
 
@@ -47,8 +48,12 @@ extern char **ENVIRON;
 extern pthread_key_t specials;
 #endif
 
+#if !defined(LISP_FEATURE_SB_THREAD)
 extern lispobj *current_control_stack_pointer;
+#endif
+#if defined(LISP_FEATURE_X86) || defined(LISP_FEATURE_X86_64) || !defined(LISP_FEATURE_SB_THREAD)
 extern lispobj *current_control_frame_pointer;
+#endif
 #if !defined(LISP_FEATURE_X86) && !defined(LISP_FEATURE_X86_64) && !defined(LISP_FEATURE_SB_THREAD)
 extern lispobj *current_binding_stack_pointer;
 #endif
@@ -118,7 +123,9 @@ extern void globals_init(void);
 EXTERN(foreign_function_call_active, 4)
 #endif
 
+#if !defined(LISP_FEATURE_SB_THREAD) && !defined(LISP_FEATURE_C_STACK_IS_CONTROL_STACK)
 EXTERN(current_control_stack_pointer, POINTERSIZE)
+#endif
 EXTERN(current_control_frame_pointer, POINTERSIZE)
 # if !defined(LISP_FEATURE_X86) && !defined(LISP_FEATURE_X86_64)
 EXTERN(current_binding_stack_pointer, POINTERSIZE)