Re: disable zend_always_inline in debug mode
| From: | Dmitry Stogov | Date: | Mon, 11 Mar 2013 06:07:26 +0000 |
| Subject: | Re: disable zend_always_inline in debug mode | ||
| References: | 1 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-66574@lists.php.net to get a copy of this message | ||
You can do it.
Thanks. Dmitry.
On Fri, Mar 8, 2013 at 7:27 PM, Laruence <laruence@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
>
>
>
> --
> Laruence Xinchen Hui
> http://www.laruence.com/
>