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
>

Reply via email to