pike.git / src / interpret.h

version» Context lines:

pike.git/src/interpret.h: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.h,v 1.151 2004/05/01 16:46:13 marcus Exp $ + || $Id: interpret.h,v 1.152 2004/05/21 16:26:29 grubba Exp $   */      #ifndef INTERPRET_H   #define INTERPRET_H      #include "global.h"   #include "program.h"   #include "pike_error.h"   #include "object.h"   
pike.git/src/interpret.h:460:   }while(0)      #define free_pike_frame(F) do{ struct pike_frame *f_=(F); if(!sub_ref(f_)) really_free_pike_frame(f_); }while(0)      /* A scope is any frame which may have malloced locals */   #define free_pike_scope(F) do{ struct pike_frame *f_=(F); if(!sub_ref(f_)) really_free_pike_scope(f_); }while(0)      #define POP_PIKE_FRAME() do { \    struct pike_frame *_fp_ = Pike_fp; \    struct pike_frame *tmp_=_fp_->next; \ +  DO_IF_PROFILING({ \ +  /* Time spent in this frame + children. */ \ +  cpu_time_t time_passed = \ +  gethrtime() - Pike_interpreter.time_base; \ +  /* Time spent in children to this frame. */ \ +  cpu_time_t time_in_children; \ +  /* Time spent in just this frame. */ \ +  cpu_time_t self_time; \ +  struct identifier *function; \ +  time_passed -= _fp_->start_time; \ +  time_in_children = \ +  Pike_interpreter.accounted_time - _fp_->children_base; \ +  self_time = time_passed - time_in_children; \ +  Pike_interpreter.accounted_time += self_time; \ +  /* FIXME: Can context.prog be NULL? */ \ +  function = _fp_->context.prog->identifiers + _fp_->ident; \ +  /* function->total_time = \ +  Pike_fp->self_time_base + time_passed; */ \ +  function->total_time += time_passed; \ +  function->self_time += self_time; \ +  }); \    if(!sub_ref(_fp_)) \    { \    really_free_pike_frame(_fp_); \    }else{ \    ptrdiff_t num_expendible = _fp_->expendible - _fp_->locals; \    DO_IF_DEBUG( \    if( (_fp_->locals + _fp_->num_locals > Pike_sp) || \    (Pike_sp < _fp_->expendible) || \    (num_expendible < 0) || (num_expendible > _fp_->num_locals)) \    Pike_fatal("Stack failure in POP_PIKE_FRAME %p+%d=%p %p %p!\n", \