Re: disable zend_always_inline in debug mode
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 <[email protected]> wrote:
> On Fri, Mar 8, 2013 at 4:27 PM, Laruence <[email protected]> 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
>
Thread (5 messages)