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.83 2002/11/07 15:28:26 grubba Exp $ + || $Id: peep.c,v 1.84 2002/11/12 11:40:08 grubba 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.83 2002/11/07 15:28:26 grubba Exp $"); + RCSID("$Id: peep.c,v 1.84 2002/11/12 11:40:08 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:336: Inside #if defined(PIKE_DEBUG)
   if(c->arg == -1) break;   #ifdef PIKE_DEBUG    if(c->arg > max_label || c->arg < 0)    Pike_fatal("max_label calculation failed!\n");       if(labels[c->arg] != -1)    Pike_fatal("Duplicate label!\n");   #endif    FLUSH_CODE_GENERATOR_STATE();    labels[c->arg] = DO_NOT_WARN((INT32)PIKE_PC); +  if ((e+1 < length) && +  (c[1].opcode != F_LABEL) && +  (c[1].opcode != F_BYTE) && +  (c[1].opcode != F_DATA)) { +  /* Don't add redundant code before labels or raw data. */    UPDATE_PC(); -  +  } +     break;       case F_VOLATILE_RETURN:    ins_f_byte(F_RETURN);    break;       case F_POINTER:   #ifdef PIKE_DEBUG    if(c->arg > max_label || c->arg < 0)    Pike_fatal("Jump to unknown label?\n");