Branch: Tag:

2003-03-22

2003-03-22 13:38:42 by Martin Stjernholm <mast@lysator.liu.se>

Added EXIT_MACHINE_CODE to clean up after CALL_MACHINE_CODE, so that we
don't have to rely on that the compiler can live with a clobbered stack
pointer at the bottom of eval_instruction_low.

Rev: src/code/README.txt:1.20
Rev: src/interpret.c:1.299

2:   || 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.298 2003/03/21 14:36:01 mast Exp $ + || $Id: interpret.c,v 1.299 2003/03/22 13:38:42 mast Exp $   */      #include "global.h" - RCSID("$Id: interpret.c,v 1.298 2003/03/21 14:36:01 mast Exp $"); + RCSID("$Id: interpret.c,v 1.299 2003/03/22 13:38:42 mast Exp $");   #include "interpret.h"   #include "object.h"   #include "program.h"
952:    } while(0)   #endif /* !CALL_MACHINE_CODE */    + #ifndef EXIT_MACHINE_CODE + #define EXIT_MACHINE_CODE + #endif +    #ifdef PIKE_DEBUG      static void debug_instr_prologue (PIKE_INSTR_T instr)
1143: Inside #if defined(__GNUC__)
   fprintf(stderr,"We have reached the end of the world!\n");    goto *dummy_label;    -  /* %%esp will be slightly buggered after -  * returning from the function code (8 bytes off), but that -  * should not matter to these return statements. -Hubbe -  */ +  inter_escape_catch_label: +  EXIT_MACHINE_CODE(); +  return -2;    -  inter_escape_catch_label: return -2; -  inter_return_label: return -1; +  inter_return_label: +  EXIT_MACHINE_CODE(); +  return -1;   }      #endif /* __GNUC__ */