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