Branch: Tag:


1996-03-28 21:33:36 by Fredrik Hübinette (Hubbe) <>

garbage collect rewritten

Rev: src/array.c:1.9
Rev: src/array.h:1.6
Rev: src/gc.c:1.2
Rev: src/gc.h:1.2
Rev: src/list.c:1.3
Rev: src/list.h:1.2
Rev: src/mapping.c:1.4
Rev: src/mapping.h:1.3
Rev: src/object.c:1.8
Rev: src/object.h:1.5
Rev: src/program.c:1.8
Rev: src/program.h:1.4
Rev: src/svalue.c:1.8

93:   struct program   {    INT32 refs; -  INT32 flags; +     INT32 id; /* used to identify program in caches */    INT32 storage_needed; /* storage needed in the object struct */   
182:   void add_function(char *name,void (*cfun)(INT32),char *type,INT16 flags);   void check_all_programs();   void cleanup_program(); - void gc_check_program(struct program *p); + void gc_mark_program_as_referenced(struct program *p);   void gc_check_all_programs(); - void gc_clear_program_marks(); + void gc_mark_all_programs(); + void gc_free_all_unreferenced_programs();   /* Prototypes end here */