Branch: Tag:

2011-07-10

2011-07-10 09:25:54 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Interpreter mega patch: The global Pike_interpreter struct replaced with Pike_interpreter_pointer.

26:   #endif   };    - struct Pike_interpreter { + struct Pike_interpreter_struct {    /* Swapped variables */    struct svalue *stack_pointer;    struct svalue *evaluator_stack;
757:   ptrdiff_t pop_sp_mark(void);   void gc_mark_stack_external (struct pike_frame *frame,    struct svalue *stack_p, struct svalue *stack); - PMOD_EXPORT int low_init_interpreter(struct Pike_interpreter *interpreter); + PMOD_EXPORT int low_init_interpreter(struct Pike_interpreter_struct *interpreter);   PMOD_EXPORT void init_interpreter(void);   void lvalue_to_svalue_no_free(struct svalue *to,struct svalue *lval);   PMOD_EXPORT void assign_lvalue(struct svalue *lval,struct svalue *from);
826:   PMOD_EXPORT void custom_check_stack(ptrdiff_t amount, const char *fmt, ...)    ATTRIBUTE((format (printf, 2, 3)));   PMOD_EXPORT void cleanup_interpret(void); - PMOD_EXPORT void low_cleanup_interpret(struct Pike_interpreter *interpreter); + PMOD_EXPORT void low_cleanup_interpret(struct Pike_interpreter_struct *interpreter);   void really_clean_up_interpret(void);   /* Prototypes end here */   
883:    * The above define could also be used to facilitate dynamic loading    * on Win32..    */ - PMOD_EXPORT extern struct Pike_interpreter Pike_interpreter; + PMOD_EXPORT extern struct Pike_interpreter_struct *Pike_interpreter_pointer; + #define Pike_interpreter (*Pike_interpreter_pointer)      #define Pike_sp Pike_interpreter.stack_pointer   #define Pike_fp Pike_interpreter.frame_pointer