pike.git / src / interpret.c

version» Context lines:

pike.git/src/interpret.c:1:   /*\   ||| This file a part of Pike, and is copyright by Fredrik Hubinette   ||| Pike is distributed as GPL (General Public License)   ||| See the files COPYING and DISCLAIMER for more information.   \*/   /**/   #include "global.h" - RCSID("$Id: interpret.c,v 1.150 2000/05/01 10:28:26 hubbe Exp $"); + RCSID("$Id: interpret.c,v 1.151 2000/05/03 09:03:16 hubbe Exp $");   #include "interpret.h"   #include "object.h"   #include "program.h"   #include "svalue.h"   #include "array.h"   #include "mapping.h"   #include "error.h"   #include "language.h"   #include "stralloc.h"   #include "constants.h"
pike.git/src/interpret.c:477:   /*    * reset the stack machine.    */   void reset_evaluator(void)   {    fp=0;    pop_n_elems(sp - evaluator_stack);   }      #ifdef PIKE_DEBUG - #define BACKLOG 512 + #define BACKLOG 1024   struct backlog   {    INT32 instruction;    INT32 arg,arg2;    struct program *program;    unsigned char *pc;   #ifdef _REENTRANT    struct object *thread_id;   #endif -  +  int stack; +  int mark_stack;   };      struct backlog backlog[BACKLOG];   int backlogp=BACKLOG-1;      void dump_backlog(void)   {   #ifdef _REENTRANT    struct object *thread=0;   #endif
pike.git/src/interpret.c:532:    if(backlog[e].instruction < 0 || backlog[e].instruction+F_OFFSET > F_MAX_OPCODE)    {    fprintf(stderr,"%s:%ld: ILLEGAL INSTRUCTION %d\n",    file,    (long)line,    backlog[e].instruction + F_OFFSET);    continue;    }       -  if(instrs[backlog[e].instruction].flags & I_HASARG2) -  { -  fprintf(stderr,"%s:%ld: %s(%ld,%ld)\n", +  fprintf(stderr,"%s:%ld: %s",    file,    (long)line, -  low_get_f_name(backlog[e].instruction + F_OFFSET, backlog[e].program), +  low_get_f_name(backlog[e].instruction + F_OFFSET, backlog[e].program)); +  if(instrs[backlog[e].instruction].flags & I_HASARG2) +  { +  fprintf(stderr,"(%ld,%ld)",    (long)backlog[e].arg,    (long)backlog[e].arg2);    }    else if(instrs[backlog[e].instruction].flags & I_HASARG)    { -  fprintf(stderr,"%s:%ld: %s(%ld)\n", -  file, -  (long)line, -  low_get_f_name(backlog[e].instruction + F_OFFSET, backlog[e].program), -  (long)backlog[e].arg); -  }else{ -  fprintf(stderr,"%s:%ld: %s\n", -  file, -  (long)line, -  low_get_f_name(backlog[e].instruction + F_OFFSET, backlog[e].program)); +  fprintf(stderr,"(%ld)", (long)backlog[e].arg);    } -  +  fprintf(stderr," %d, %d", backlog[e].stack, backlog[e].mark_stack);    }    }while(e!=backlogp);   }      #endif   static int o_catch(unsigned char *pc);      #ifdef PIKE_DEBUG   #define eval_instruction eval_instruction_with_debug   #include "interpreter.h"