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.93 2003/11/19 17:19:29 grubba Exp $ + || $Id: peep.c,v 1.94 2003/11/19 20:20:31 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.93 2003/11/19 17:19:29 grubba Exp $"); + RCSID("$Id: peep.c,v 1.94 2003/11/19 20:20:31 grubba 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;   }
pike.git/src/peep.c:185:   #endif      #ifdef PIKE_PORTABLE_BYTECODE    /* No need to do this for constant evaluations. */    if (store_linenumbers) {    struct pike_tripple *current_tripple;    struct pike_string *previous_file = NULL;    int previous_line = 0;    ptrdiff_t num_linedirectives = 0;    -  /* Count the number of F_FILE/F_LINE pseudo-ops we need to add. */ +  /* Count the number of F_FILENAME/F_LINE pseudo-ops we need to add. */    for (e=0; e < length; e++) {    if (c[e].file != previous_file) {    previous_file = c[e].file;    num_linedirectives++;    }    if (c[e].line != previous_line) {    previous_line = c[e].line;    num_linedirectives++;    }    }    -  fprintf(stderr, "length:%d directives:%d\n", length, num_linedirectives); +  /* fprintf(stderr, "length:%d directives:%d\n", +  * length, num_linedirectives); +  */       if (!(tripples = malloc(sizeof(struct pike_tripple) *    (length+num_linedirectives)))) {    Pike_fatal("Failed to allocate %d tripples (%d + %d).\n",    length+num_linedirectives, length, num_linedirectives);    }    previous_file = NULL;    previous_line = 0;    current_tripple = tripples;    for (e = 0; e < length; e++) {
pike.git/src/peep.c:393:    length=instrbuf.s.len / sizeof(p_instr);       for(e=0;e<=max_label;e++) labels[e]=jumps[e]=-1;      #ifdef ALIGN_PIKE_FUNCTION_BEGINNINGS    while( ( (((INT32) PIKE_PC)+2) & (ALIGN_PIKE_JUMPS-1)))    ins_byte(0);   #endif      #ifdef PIKE_PORTABLE_BYTECODE +  /* FIXME: What about LP64? */    if (store_linenumbers) { -  ins_pointer(tripples); +  ins_data(tripples);    } else { -  ins_pointer(NULL); +  ins_data(NULL);    }   #endif /* PIKE_PORTABLE_BYTECODE */       entry_point = PIKE_PC;      #ifdef PIKE_DEBUG    synch_depth = 0;   #endif    FLUSH_CODE_GENERATOR_STATE();    for(e=0;e<length;e++)