X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fruntime%2Fgc.h;h=a619175bd7fa210f37d669ae6058d476e1b8f0d7;hb=afb24f64fe95ed8ebce578ba7526b8a0a7aa5f14;hp=3dc12ecf27042487ce2c1ae046aa1e72abd381ff;hpb=3bb2fb5b9ecdeebecaded4ac6e5af0f653be8867;p=sbcl.git diff --git a/src/runtime/gc.h b/src/runtime/gc.h index 3dc12ec..a619175 100644 --- a/src/runtime/gc.h +++ b/src/runtime/gc.h @@ -16,14 +16,34 @@ #ifndef _GC_H_ #define _GC_H_ +#include "sbcl.h" + +#ifdef LISP_FEATURE_GENCGC +#define PAGE_BYTES GENCGC_PAGE_SIZE +#else +#define PAGE_BYTES BACKEND_PAGE_SIZE +#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); + #include "os.h" extern void set_auto_gc_trigger(os_vm_size_t usage); extern void clear_auto_gc_trigger(void); -extern boolean maybe_gc_pending; +#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_ */