#ifndef _GC_H_
#define _GC_H_
-extern void gc_init(void);
+#include "sbcl.h"
+
+#ifdef LISP_FEATURE_GENCGC
+#define PAGE_BYTES GENCGC_PAGE_BYTES
+#else
+#define PAGE_BYTES BACKEND_PAGE_BYTES
+#endif
-/* Note: CMU CL had two different argument conventions for
- * collect_garbage(..), depending on whether gencgc was in use. SBCL
- * should have only one, which is automatic right now (20000814) since
- * we only support gencgc, but should also be maintained if someone
- * adds another GC, or ports one of the other CMU CL GCs like gengc. */
-extern void collect_garbage(unsigned last_gen);
+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(generation_index_t last_gen);
+extern void gc_init_tables(void);
-#ifndef ibmrt
#include "os.h"
extern void set_auto_gc_trigger(os_vm_size_t usage);
extern void clear_auto_gc_trigger(void);
-#endif ibmrt
+#include "fixnump.h"
+
+#include "pseudo-atomic.h"
+
+extern boolean maybe_gc(os_context_t *context);
+
+extern unsigned long bytes_consed_between_gcs;
-#endif _GC_H_
+#endif /* _GC_H_ */