#define PMC_FORWARD_H
#include "pmc_garbage.h"
-void pmc_countbytes(struct pmc_unit * region, void *bottomptr, void *topptr);
+void pmc_count();
+void pmc_countbytes(struct pmc_unit * region, void *bottomptr, void *topptr);
+void pmc_processunits();
+void pmc_doforward();
void pmc_forward(unsigned int totalbytes, void *bottomptr, void *topptr, bool fwddirection);
void decrementthreads();
void pmc_onceInit();
void pmc_init();
-
-
+void gc(struct garbagelist *gl);
#endif
void pmc_markObj(struct ___Object___ *ptr);
void pmc_scanPtrsInObj(void * ptr, int type);
void pmc_mark(struct garbagelist *stackptr);
+bool pmc_trysteal();
+void pmc_marklocal();
void pmc_tomark(struct garbagelist * stackptr);
void pmc_markgarbagelist(struct garbagelist * listptr);
-
#endif
#define PMC_REFUPDATE_H
void pmc_updatePtrs(void *ptr, int type);
+void pmc_doreferenceupdate();
void pmc_referenceupdate(void *bottomptr, void *topptr);
+void pmc_docompact();
void pmc_compact(struct pmc_region * region, int forward, void *bottomptr, void *topptr);
#endif