Morning Derick,

    I don't think it does make anything impossible, it's just a more
efficient copying method in the EXPECTED branch is all.

Cheers
Joe

On Tue, Apr 5, 2016 at 10:04 AM, Derick Rethans <der...@php.net> wrote:

> On Tue, 5 Apr 2016, Dmitry Stogov wrote:
>
> > I propose a micro optimization for RETURN statement.
> >
> > Currently "return $x" increments reference counter of $x, then in
> > zend_leave_helper() we perform zval_ptr_dtor() on the same $x.
> >
> > The patch sets the original value of $x to null in first place, so
> > zval_ptr_dtor() is not going to be called.
> >
> > https://gist.github.com/dstogov/36f68b206242a39691ac539c2fc85d40
> >
> > the performance impact is invisible (0.1% less instruction retired on
> > Wordpress).
> >
> > It breaks sapi/phpdbg/tests/breakpoints_005.phpt, but this is probably
> > not a big deal.
> >
> > BTW: this change may affect debuggers in some other way.
>
> I'd like to know why this breaks before saying something. It'd be a PITA
> if this micro optimisation wouldn't actually do a lot performance wise,
> but makes some debugging not possible.
>
> cheers,
> Derick
>
> --
> PHP Internals - PHP Runtime Development Mailing List
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>

Reply via email to