pike.git / src / peep.c

version» Context lines:

pike.git/src/peep.c:1:   /*   || 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: peep.c,v 1.85 2003/04/02 19:18:49 nilsson Exp $ + || $Id: peep.c,v 1.86 2003/06/11 23:02:31 nilsson Exp $   */      #include "global.h"   #include "language.h"   #include "stralloc.h"   #include "dynamic_buffer.h"   #include "program.h"   #include "las.h"   #include "docode.h"   #include "main.h"
pike.git/src/peep.c:19:   #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.85 2003/04/02 19:18:49 nilsson Exp $"); + RCSID("$Id: peep.c,v 1.86 2003/06/11 23:02:31 nilsson Exp $");      static void asm_opt(void);      dynamic_buffer instrbuf;    -  + #ifdef PIKE_DEBUG   static int hasarg(int opcode)   {    return instrs[opcode-F_OFFSET].flags & I_HASARG;   }      static int hasarg2(int opcode)   {    return instrs[opcode-F_OFFSET].flags & I_HASARG2;   }    - #ifdef PIKE_DEBUG +    static void dump_instr(p_instr *p)   {    if(!p) return;    fprintf(stderr,"%s",get_token_name(p->opcode));    if(hasarg(p->opcode))    {    fprintf(stderr,"(%d",p->arg);    if(hasarg2(p->opcode))    fprintf(stderr,",%d",p->arg2);    fprintf(stderr,")");
pike.git/src/peep.c:281:       for(e=0;e<=max_label;e++) labels[e]=jumps[e]=-1;       c=(p_instr *)instrbuf.s.str;   #ifdef PIKE_DEBUG    synch_depth = 0;   #endif    FLUSH_CODE_GENERATOR_STATE();    for(e=0;e<length;e++)    { -  int linenumbers_stored=0; +    #ifdef PIKE_DEBUG    if (c != (((p_instr *)instrbuf.s.str)+e)) {    Pike_fatal("Instruction loop deviates. 0x%04x != 0x%04x\n",    e, DO_NOT_WARN((INT32)(c - ((p_instr *)instrbuf.s.str))));    }    if((a_flag > 2 && store_linenumbers) || a_flag > 3)    {    if (c->opcode == F_POP_SYNCH_MARK) synch_depth--;    fprintf(stderr, "===%4d %4lx %*s", c->line,    DO_NOT_WARN((unsigned long)PIKE_PC), synch_depth, "");