pike.git / src / interpret.c

version» Context lines:

pike.git/src/interpret.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: interpret.c,v 1.408 2008/08/18 15:16:47 mast Exp $ + || $Id: interpret.c,v 1.409 2008/11/18 19:06:23 mast Exp $   */      #include "global.h"   #include "interpret.h"   #include "object.h"   #include "program.h"   #include "svalue.h"   #include "array.h"   #include "mapping.h"   #include "pike_error.h"
pike.git/src/interpret.c:96: Inside #if defined(PIKE_DEBUG)
     #ifdef PIKE_DEBUG   static char trace_buffer[2000];   #endif      #ifdef INTERNAL_PROFILING   PMOD_EXPORT unsigned long evaluator_callback_calls = 0;   #endif       + int fast_check_threads_counter = 0; +    /* Pike_sp points to first unused value on stack    * (much simpler than letting it point at the last used value.)    */   PMOD_EXPORT struct Pike_interpreter Pike_interpreter;   PMOD_EXPORT int Pike_stack_size = EVALUATOR_STACK_SIZE;      static void do_trace_call(INT32 args, dynamic_buffer *old_buf);   static void do_trace_func_return (int got_retval, struct object *o, int fun);   static void do_trace_return (int got_retval, dynamic_buffer *old_buf);   
pike.git/src/interpret.c:1126:   #ifndef EXIT_MACHINE_CODE   #define EXIT_MACHINE_CODE()   #endif      #if defined(OPCODE_INLINE_BRANCH) || defined(INS_F_JUMP) || \    defined(INS_F_JUMP_WITH_ARG) || defined(INS_F_JUMP_WITH_TWO_ARGS)   /* Intended to be called from machine code on backward branch jumps,    * to ensure thread switching. */   void branch_check_threads_etc()   { -  fast_check_threads_etc (6); +  FAST_CHECK_THREADS_ON_BRANCH();   }   #endif      #ifdef PIKE_DEBUG      static void debug_instr_prologue (PIKE_INSTR_T instr)   {    low_debug_instr_prologue (instr);   }   
pike.git/src/interpret.c:1834:    if(Pike_interpreter.trace_level>1)    {    dynamic_buffer save_buf;    init_buf(&save_buf);    if (s->u.efun->name->size_shift)    my_strcat ("[widestring function name]");    else    my_strcat (s->u.efun->name->str);    do_trace_call(args, &save_buf);    } -  check_threads_etc(); +  FAST_CHECK_THREADS_ON_CALL();    (*(s->u.efun->function))(args);      #ifdef PIKE_DEBUG    s->u.efun->runs++;    if(Pike_sp != expected_stack + !s->u.efun->may_return_void)    {    if(Pike_sp < expected_stack)    Pike_fatal("Function popped too many arguments: %S\n",    s->u.efun->name);    if(Pike_sp>expected_stack+1)