Branch: Tag:

2001-04-14

2001-04-14 09:44:22 by Fredrik Hübinette (Hubbe) <hubbe@hubbe.net>

Jumbopatch:

Saved 8 bytes per object (for objects that do not use their parent scope),
fixed some memory leaks and
first implementation of constant objects (Gmp.Bignum, Math.Matrix and Image.Colour)

Rev: src/backend.cmod:1.14
Rev: src/builtin.cmod:1.27
Rev: src/builtin_functions.c:1.362
Rev: src/docode.c:1.111
Rev: src/encode.c:1.98
Rev: src/gc.c:1.149
Rev: src/interpret.c:1.191
Rev: src/las.c:1.251
Rev: src/main.c:1.123
Rev: src/modules/Gmp/mpz_glue.c:1.93
Rev: src/modules/Image/colors.c:1.49
Rev: src/modules/Math/math_matrix.c:1.22
Rev: src/modules/Oracle/oracle.c:1.56
Rev: src/modules/files/socket.c:1.54
Rev: src/object.c:1.169
Rev: src/object.h:1.62
Rev: src/program.c:1.314
Rev: src/program.h:1.125
Rev: src/threads.h:1.114
Rev: src/version.h:1.273

5:   \*/   /**/   #include "global.h" - RCSID("$Id: builtin_functions.c,v 1.361 2001/04/09 10:01:48 hubbe Exp $"); + RCSID("$Id: builtin_functions.c,v 1.362 2001/04/14 09:44:19 hubbe Exp $");   #include "interpret.h"   #include "svalue.h"   #include "pike_macros.h"
2744:    struct program *p;    if((p=o->prog))    { -  if(o->parent && o->parent->prog) +  if((p->flags & PROGRAM_USES_PARENT) && +  PARENT_INFO(o)->parent && +  PARENT_INFO(o)->parent->prog)    { -  INT32 id=o->parent_identifier; -  o=o->parent; +  INT32 id=PARENT_INFO(o)->parent_identifier; +  o=PARENT_INFO(o)->parent;    add_ref(o);    pop_n_elems(args);    push_object(o);