I ran some benchs, on my current machine (wasnt isolated to run tests). I ran micro_bench.php on master branch today :
debug on, inline enabled : Total 30.688 debug on, inline disabled : Total 35.377 debug off, inline enabled : Total 10.130 debug off, inline disabled : Total 10.678 Julien.Pauli On Fri, Mar 8, 2013 at 4:32 PM, Julien Pauli <jpa...@php.net> wrote: > On Fri, Mar 8, 2013 at 4:27 PM, Laruence <larue...@php.net> wrote: > >> Hey: >> >> I propose to disable zend_alwasy_inline while build PHP in debug mode. >> >> that could be easier for debuging some bugs.. >> >> what do you think? >> >> >> thanks >> >> >> simple patch: >> >> diff --git a/Zend/zend.h b/Zend/zend.h >> index 40515fb..03bd4e7 100644 >> --- a/Zend/zend.h >> +++ b/Zend/zend.h >> @@ -365,7 +365,7 @@ struct _zval_struct { >> #define Z_UNSET_ISREF(z) Z_UNSET_ISREF_P(&(z)) >> #define Z_SET_ISREF_TO(z, isref) Z_SET_ISREF_TO_P(&(z), isref) >> >> -#if defined(__GNUC__) >> +#if defined(__GNUC__) && !ZEND_DEBUG >> #if __GNUC__ >= 3 >> #define zend_always_inline inline __attribute__((always_inline)) >> #define zend_never_inline __attribute__((noinline)) >> @@ -374,7 +374,7 @@ struct _zval_struct { >> #define zend_never_inline >> #endif >> >> -#elif defined(_MSC_VER) >> +#elif defined(_MSC_VER) && !ZEND_DEBUG >> #define zend_always_inline __forceinline >> #define zend_never_inline >> #else >> >> >> > > I'm +1 with that. > > Julien.Pauli >