pike.git / src / interpret_functions.h

version» Context lines:

pike.git/src/interpret_functions.h:1:   /* -  * $Id: interpret_functions.h,v 1.23 2000/05/01 10:28:27 hubbe Exp $ +  * $Id: interpret_functions.h,v 1.24 2000/06/20 23:31:25 hubbe Exp $    *    * Opcode definitions for the interpreter.    */      OPCODE0(F_UNDEFINED,"push UNDEFINED")    push_int(0);    Pike_sp[-1].subtype=NUMBER_UNDEFINED;   BREAK;      OPCODE0(F_CONST0, "push 0")
pike.git/src/interpret_functions.h:1017:   #endif    Pike_sp[-args-1].type=PIKE_T_FUNCTION;    add_ref(Pike_fp->current_object);       return args+1;   }   BREAK       CASE(F_RETURN_LOCAL);    instr=GET_ARG(); + #if defined(PIKE_DEBUG) && defined(GC2) +  /* special case! mark_stack may be invalid at the time we +  * call return -1, so we must call the callbacks here to +  * prevent false alarms! /Hubbe +  */ +  if(d_flag>3) do_gc(); +  if(d_flag>4) do_debug(); +  check_threads_etc(); + #endif    if(Pike_fp->expendible <= Pike_fp->locals+instr)    {    pop_n_elems(Pike_sp-1 - (Pike_fp->locals+instr));    }else{    push_svalue(Pike_fp->locals+instr);    }    print_return_value(); -  goto do_return; +  return -1;       CASE(F_RETURN_IF_TRUE); -  if(!IS_ZERO(Pike_sp-1)) -  goto do_return; +  if(!IS_ZERO(Pike_sp-1)) goto do_return;    pop_stack();    break;       CASE(F_RETURN_1);    push_int(1);    goto do_return;       CASE(F_RETURN_0);    push_int(0);    goto do_return;