pike.git / src / peep.c

version» Context lines:

pike.git/src/peep.c:12:   #include "peep.h"   #include "dmalloc.h"   #include "stuff.h"   #include "bignum.h"   #include "opcodes.h"   #include "builtin_functions.h"   #include "constants.h"   #include "interpret.h"   #include "pikecode.h"    - RCSID("$Id: peep.c,v 1.69 2001/08/16 18:49:46 marcus Exp $"); + RCSID("$Id: peep.c,v 1.70 2001/09/24 16:58:33 grubba Exp $");      static void asm_opt(void);      dynamic_buffer instrbuf;      static int hasarg(int opcode)   {    return instrs[opcode-F_OFFSET].flags & I_HASARG;   }   
pike.git/src/peep.c:135:   }      #ifndef FLUSH_CODE_GENERATOR_STATE   #define FLUSH_CODE_GENERATOR_STATE()   #endif      /**** Bytecode Generator *****/      void assemble(void)   { -  INT32 d,max_label,tmp; +  INT32 max_label,tmp;    INT32 *labels, *jumps, *uses;    ptrdiff_t e, length;    p_instr *c;    int reoptimize=!(debug_options & NO_PEEP_OPTIMIZING);   #ifdef PIKE_DEBUG    int synch_depth;   #endif       c=(p_instr *)instrbuf.s.str;    length=instrbuf.s.len / sizeof(p_instr);
pike.git/src/peep.c:178:    for(e=0;e<length;e++)    if(c[e].opcode == F_LABEL && c[e].arg>=0)    labels[c[e].arg]=DO_NOT_WARN((INT32)e);       for(e=0;e<length;e++)    {    if(instrs[c[e].opcode-F_OFFSET].flags & I_POINTER)    {    while(1)    { -  int tmp,tmp2; +  int tmp;    tmp=labels[c[e].arg];       while(tmp<length &&    (c[tmp].opcode == F_LABEL ||    c[tmp].opcode == F_NOP)) tmp++;       if(tmp>=length) break;       if(c[tmp].opcode==F_BRANCH)    {