projects
/
sbcl.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
0.7.9.68:
[sbcl.git]
/
src
/
runtime
/
globals.h
diff --git
a/src/runtime/globals.h
b/src/runtime/globals.h
index
3e8feca
..
c9e8c85
100644
(file)
--- a/
src/runtime/globals.h
+++ b/
src/runtime/globals.h
@@
-9,10
+9,6
@@
* files for more information.
*/
* files for more information.
*/
-/*
- * $Header$
- */
-
#if !defined(_INCLUDE_GLOBALS_H_)
#define _INCLUDED_GLOBALS_H_
#if !defined(_INCLUDE_GLOBALS_H_)
#define _INCLUDED_GLOBALS_H_
@@
-24,31
+20,26
@@
extern int foreign_function_call_active;
extern lispobj *current_control_stack_pointer;
extern lispobj *current_control_frame_pointer;
extern lispobj *current_control_stack_pointer;
extern lispobj *current_control_frame_pointer;
-#if !defined(ibmrt) && !defined(__i386__)
+#if !defined(__i386__)
extern lispobj *current_binding_stack_pointer;
#endif
extern lispobj *current_binding_stack_pointer;
#endif
-extern lispobj *read_only_space;
-extern lispobj *static_space;
-extern lispobj *control_stack;
-extern lispobj *binding_stack;
-#ifdef __i386__
-extern lispobj *control_stack_end;
-#endif
-#if !defined(ibmrt) && !defined(__i386__)
+#if !defined(__i386__)
+/* FIXME: Why doesn't the x86 need this? */
extern lispobj *dynamic_space_free_pointer;
extern lispobj *current_auto_gc_trigger;
#endif
extern lispobj *dynamic_space_free_pointer;
extern lispobj *current_auto_gc_trigger;
#endif
-extern void globals_init(void);
+extern lispobj *current_dynamic_space;
-#else LANGUAGE_ASSEMBLY
+extern void globals_init(void);
-/* These are needed by ./assem.s */
+#else /* LANGUAGE_ASSEMBLY */
#ifdef mips
#define EXTERN(name,bytes) .extern name bytes
#endif
#ifdef mips
#define EXTERN(name,bytes) .extern name bytes
#endif
+/**/
#ifdef sparc
#ifdef SVR4
#define EXTERN(name,bytes) .global name
#ifdef sparc
#ifdef SVR4
#define EXTERN(name,bytes) .global name
@@
-56,31
+47,42
@@
extern void globals_init(void);
#define EXTERN(name,bytes) .global _ ## name
#endif
#endif
#define EXTERN(name,bytes) .global _ ## name
#endif
#endif
-#ifdef ibmrt
-#define EXTERN(name,bytes) .globl _/**/name
+/**/
+#ifdef alpha
+#ifdef __linux__
+#define EXTERN(name,bytes) .globl name
+#endif
+#endif
+#ifdef ppc
+#define EXTERN(name,bytes) .globl name
#endif
#endif
-
#ifdef __i386__
#ifdef __linux__
#ifdef __i386__
#ifdef __linux__
+/* I'm very dubious about this. Linux hasn't used _ on external names
+ * since ELF became prevalent - i.e. about 1996, on x86 -dan 20010125 */
#define EXTERN(name,bytes) .globl _/**/name
#else
#define EXTERN(name,bytes) .global _ ## name
#endif
#endif
#define EXTERN(name,bytes) .globl _/**/name
#else
#define EXTERN(name,bytes) .global _ ## name
#endif
#endif
+/* FIXME : these sizes are, incidentally, bogus on Alpha. But the
+ * EXTERN macro doesn't use its second arg anyway, so no immediate harm
+ * done -dan 2002.05.07
+ */
+
EXTERN(foreign_function_call_active, 4)
EXTERN(current_control_stack_pointer, 4)
EXTERN(current_control_frame_pointer, 4)
EXTERN(foreign_function_call_active, 4)
EXTERN(current_control_stack_pointer, 4)
EXTERN(current_control_frame_pointer, 4)
-#if !defined(ibmrt) && !defined(__i386__)
EXTERN(current_binding_stack_pointer, 4)
EXTERN(dynamic_space_free_pointer, 4)
EXTERN(current_binding_stack_pointer, 4)
EXTERN(dynamic_space_free_pointer, 4)
-#endif
+EXTERN(current_dynamic_space, 4)
#ifdef mips
EXTERN(current_flags_register, 4)
#endif
#ifdef mips
EXTERN(current_flags_register, 4)
#endif
-#endif LANGUAGE_ASSEMBLY
+#endif /* LANGUAGE_ASSEMBLY */
-#endif _INCLUDED_GLOBALS_H_
+#endif /* _INCLUDED_GLOBALS_H_ */