History log of /PHP-7.1/ext/opcache/Optimizer/block_pass.c (Results 26 – 50 of 151)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 8e2f658f 17-Mar-2016 Xinchen Hui

Fixed bug #71843 (null ptr deref ZEND_RETURN_SPEC_CONST_HANDLER)


Revision tags: php-5.6.19, php-5.5.33, php-7.0.4
# e65cc72c 18-Feb-2016 Dmitry Stogov

Set proper type flags (REFCOUNTED and COPYABLE) according to interned or regular string


# 796e1629 18-Feb-2016 Dmitry Stogov

Set proper type flags (REFCOUNTED and COPYABLE) according to interned or regular string


Revision tags: php-5.6.19RC1, php-7.0.4RC1
# ab586940 15-Feb-2016 Xinchen Hui

Fixed another assertion fails due to live_range cleaned (ext/phar/tests/003a.phpt)


# 44ed1cb5 11-Feb-2016 Nikita Popov

Remove ZEND_CALL_CTOR_RESULT_UNUSED

Instead emit a FREE on the result of NEW.


# 8c2d5596 11-Feb-2016 Dmitry Stogov

Combine conditions


# 5faedf5b 05-Feb-2016 Nikita Popov

Remove EXT_TYPE_UNUSED in favor of IS_UNUSED

This means we no longer allocate an unused VAR for the retval of
instructions that support unused results.

Nearly all instructions a

Remove EXT_TYPE_UNUSED in favor of IS_UNUSED

This means we no longer allocate an unused VAR for the retval of
instructions that support unused results.

Nearly all instructions already used the result variable only if
it was used. The only exception to this was the return value
variable for internal function call results. I've adjusted the code
to use a stack zval for the unused return case now. As we have
retval specialization now, we know that it doesn't matter.

show more ...


# 7174af40 09-Feb-2016 Nikita Popov

Support CFG construction without live range splitting

We must not split at live range boundaries for SSA constructions,
otherwise an OP_DATA instruction may be separated into new block

Support CFG construction without live range splitting

We must not split at live range boundaries for SSA constructions,
otherwise an OP_DATA instruction may be separated into new block
and not picked up during renaming.

It's also unnecessary for this use case and only blows up the CFG.

show more ...


Revision tags: php-5.6.18, php-7.0.3, php-5.5.32
# 63fb2b71 25-Jan-2016 Xinchen Hui

Improve the names


Revision tags: php-5.6.18RC1, php-7.0.3RC1, php-5.6.17, php-5.5.31, php-7.0.2
# 2eb1f38d 01-Jan-2016 Lior Kaplan

Happy new year (Update copyright to 2016)


# e82a7357 23-Dec-2015 Dmitry Stogov

Remove live-range if the corresponding definition is deleted


Revision tags: php-7.0.2RC1
# 88eae43f 20-Dec-2015 Nikita Popov

Remove uses of VARs in extended_value

The DECLARE_(ANON_)INHERITED_CLASS(_DELAYED) opcodes were
referencing the parent ce VAR through extended_value. This is
hacky and we can't track

Remove uses of VARs in extended_value

The DECLARE_(ANON_)INHERITED_CLASS(_DELAYED) opcodes were
referencing the parent ce VAR through extended_value. This is
hacky and we can't track the def-use chain in SSA.

To avoid this, the layout of declaration opcodes is changed
as follows: op1 points to the lcname and rtd_key literals, in
that order. (For anon/lambda declarations only one of lcname or
rtd_key is present.) This frees up op2, which is now used to
reference the parent ce VAR in inheriting declarations. The
jmp offset for anon class declarations is moved frop op2 to
extended_value.

The changes were applied both to class and function declarations
to keep everything symmetric.

show more ...


# c88ffa9a 15-Dec-2015 Dmitry Stogov

Added e-SSA based DFA optimisation framework (incomplete)


# 29a2c643 15-Dec-2015 Sebastian Bergmann

Fugbix typo


# 6694ecdb 14-Dec-2015 Bob Weinand

Fix live_range updates on ZEND(_FE)_FREE opcodes in block_pass


# f243aaf9 11-Dec-2015 Dmitry Stogov

Added e-SSA based DFA optimisation framework (incomplete)


# 3b5c8447 10-Dec-2015 Dmitry Stogov

Initialize bitset before processing the seconf BB (we skip the first one)


Revision tags: php-5.6.17RC1
# fd20e6ce 09-Dec-2015 Dmitry Stogov

Apply local optimizatons to extended bacic block (this allows some optimizarions across few following BBs).


# 4fd30c95 09-Dec-2015 Dmitry Stogov

Improve debugging of non-local variables


# d2597ad2 09-Dec-2015 Dmitry Stogov

Improved optimizer dubugging facility


# 44c5fbbc 09-Dec-2015 Dmitry Stogov

Fixed other issues with empty block handling


# 245a8c3c 09-Dec-2015 Xinchen Hui

end is unsigned, this was broken if start == end == 0


# 404e003c 09-Dec-2015 Dmitry Stogov

Delete empty live-ranges


# 2cc2396f 08-Dec-2015 Dmitry Stogov

Fixed compilation with enabled internal debuging


Revision tags: php-7.0.1RC1
# 3d8fdd5d 07-Dec-2015 Dmitry Stogov

Fixed potential memory leaks


1234567