#ifndef _GC_H_
#define _GC_H_
+#include "sbcl.h"
+
+#ifdef LISP_FEATURE_GENCGC
+#define PAGE_BYTES GENCGC_PAGE_SIZE
+#else
+#define PAGE_BYTES 0x1000
+#endif
+
+typedef signed long page_index_t;
+typedef signed char generation_index_t;
+
extern void gc_init(void);
extern void gc_initialize_pointers(void);
-extern void collect_garbage(unsigned last_gen);
+extern void collect_garbage(generation_index_t last_gen);
extern void gc_init_tables(void);
extern int maybe_gc_pending;
-static inline int fixnump(lispobj obj) {
- return((obj &
- (LOWTAG_MASK &
- (~(EVEN_FIXNUM_LOWTAG|ODD_FIXNUM_LOWTAG))))
- == 0);
-}
+#include "fixnump.h"
+
+#include "pseudo-atomic.h"
#endif /* _GC_H_ */