2001-07-02
2001-07-02 04:09:50 by Fredrik Hübinette (Hubbe) <hubbe@hubbe.net>
-
d9a93b6e559f2ea0acf1a51ed8670937ed53e51c
(24 lines)
(+23/-1)
[
Show
| Annotate
]
Branch: 7.9
more debug,
more optimizations,
new efuns: int2char, basetype
new opcodes: F_CALL_BUILTIN1, F_CALL_BUILTIN1_AND_POP, F_BRANCH_IF_TYPE_IS_NOT
Rev: src/builtin.cmod:1.53
Rev: src/builtin_functions.c:1.388
Rev: src/constants.c:1.31
Rev: src/constants.h:1.18
Rev: src/docode.c:1.124
Rev: src/interpret.c:1.211
Rev: src/interpret_functions.h:1.66
Rev: src/lex.c:1.91
Rev: src/modules/sprintf/sprintf.c:1.79
Rev: src/peep.c:1.49
Rev: src/peep.in:1.56
17:
#include "security.h"
#include "block_alloc.h"
- RCSID("$Id: constants.c,v 1.30 2001/04/13 19:56:49 grubba Exp $");
+ RCSID("$Id: constants.c,v 1.31 2001/07/02 04:09:47 hubbe Exp $");
struct mapping *builtin_constants = 0;
69:
#define EXIT_BLOCK(X) do { \
free_type(X->type); \
free_string(X->name); \
+ X->name=0; \
EXIT_PIKE_MEMOBJ(X); \
}while(0)
BLOCK_ALLOC(callable,128)
96: Inside #if defined(PIKE_DEBUG)
if(!z) fatal("Gnapp!\n");
free_type(z);
}
+ f->runs=0;
+ f->compiles=0;
#endif
return f;
}
168:
return ret;
}
+ #ifdef PIKE_DEBUG
+ void present_constant_profiling(void)
+ {
+ struct callable_block *b;
+ int e;
+ for(b=callable_blocks;b;b=b->next)
+ {
+ for(e=0;e<NELEM(b->x);e++)
+ {
+ if(b->x[e].name)
+ {
+ fprintf(stderr,"%010d @E@: %s\n",b->x[e].runs, b->x[e].name->str);
+ }
+ }
+ }
+ }
+ #endif
+
void cleanup_added_efuns(void)
{
#ifdef DO_PIKE_CLEANUP