Branch: Tag:

2003-01-12

2003-01-12 16:00:14 by Martin Stjernholm <mast@lysator.liu.se>

Improved the gc strategy and made it configurable; see Pike.gc_parameters
for details.

Rev: src/backend.cmod:1.34
Rev: src/builtin.cmod:1.106
Rev: src/builtin_functions.c:1.459
Rev: src/gc.c:1.195
Rev: src/gc.h:1.95
Rev: src/interpret_functions.h:1.127
Rev: src/main.c:1.165

2:   || This file is part of Pike. For copyright information see COPYRIGHT.   || Pike is distributed under GPL, LGPL and MPL. See the file COPYING   || for more information. - || $Id: builtin_functions.c,v 1.458 2003/01/11 17:06:26 grubba Exp $ + || $Id: builtin_functions.c,v 1.459 2003/01/12 16:00:14 mast Exp $   */      #include "global.h" - RCSID("$Id: builtin_functions.c,v 1.458 2003/01/11 17:06:26 grubba Exp $"); + RCSID("$Id: builtin_functions.c,v 1.459 2003/01/12 16:00:14 mast Exp $");   #include "interpret.h"   #include "svalue.h"   #include "pike_macros.h"
3625:    *! the same as the number of freed things, but there might be some    *! difference since destroy() functions are called during freeing,    *! which can cause more things to be freed or allocated. +  *! +  *! @seealso +  *! @[Pike.gc_parameters], @[Debug.gc_status]    */   void f_gc(INT32 args)   {    pop_n_elems(args); -  push_int(do_gc()); +  push_int(do_gc(NULL, 1));   }      #ifdef TYPEP
3882: Inside #if defined(PIKE_DEBUG)
   d_flag=0x7fffffff;    do_debug();    d_flag=tmp; -  do_gc(); +  do_gc(NULL, 1);    pop_n_elems(args);   }