Branch: Tag:

2001-08-15

2001-08-15 03:31:56 by Fredrik Hübinette (Hubbe) <hubbe@hubbe.net>

optimized function calls a few percent (especially recursive function calls)

Rev: src/docode.c:1.129
Rev: src/interpret.c:1.240
Rev: src/interpret.h:1.96
Rev: src/object.c:1.180
Rev: src/object.h:1.64
Rev: src/svalue.c:1.116
Rev: src/svalue.h:1.95

5:   \*/      /* -  * $Id: interpret.h,v 1.95 2001/08/13 23:31:03 hubbe Exp $ +  * $Id: interpret.h,v 1.96 2001/08/15 03:31:55 hubbe Exp $    */   #ifndef INTERPRET_H   #define INTERPRET_H
159:         #define pop_stack() do{ free_svalue(--Pike_sp); debug_check_stack(); }while(0) + #define pop_2_elems() do { pop_stack(); pop_stack(); }while(0)      #ifdef __ECL   #define MAYBE_CAST_TO_LONG(X) (X)
171:    check__positive(x_, ("Popping negative number of args.... (%ld) \n", \    MAYBE_CAST_TO_LONG(x_))); \    Pike_sp -= x_; debug_check_stack(); \ -  free_svalues(Pike_sp, x_, BIT_MIXED); \ +  free_mixed_svalues(Pike_sp, x_); \    } } while (0)      #define stack_pop_n_elems_keep_top(X) \
329:    int arg2);   int low_mega_apply(enum apply_type type, INT32 args, void *arg1, void *arg2);   void low_return(void); + void low_return_pop(void);   void unlink_previous_frame(void);   void mega_apply(enum apply_type type, INT32 args, void *arg1, void *arg2);   PMOD_EXPORT void f_call_function(INT32 args);