Browse Source

Comments

pull/2716/merge
Dmitry Stogov 9 years ago
parent
commit
36ddda17f9
  1. 3
      ext/opcache/Optimizer/dce.c
  2. 7
      ext/opcache/Optimizer/sccp.c

3
ext/opcache/Optimizer/dce.c

@ -13,6 +13,7 @@
| license@php.net so we can mail you a copy immediately. |
+----------------------------------------------------------------------+
| Authors: Nikita Popov <nikic@php.net> |
| Dmitry Stogov <dmitry@zend.com> |
+----------------------------------------------------------------------+
*/
@ -42,6 +43,8 @@
* zend_may_throw().
* * We often cannot DCE assignments and unsets while guaranteeing that dtors run in the same
* order. There is an optimization option to allow reordering of dtor effects.
* * The algorithm is able to eliminate dead modifications of non-escaping arrays
* and objects as well as dead arrays and objects allocations.
*/
typedef struct {

7
ext/opcache/Optimizer/sccp.c

@ -13,6 +13,7 @@
| license@php.net so we can mail you a copy immediately. |
+----------------------------------------------------------------------+
| Authors: Nikita Popov <nikic@php.net> |
| Dmitry Stogov <dmitry@zend.com> |
+----------------------------------------------------------------------+
*/
@ -65,6 +66,12 @@
* b) Otherwise, if we branch on TOP none of the successors are feasible.
* c) Otherwise (we branch on a constant), the feasible successors are marked based on the constant
* (usually only one successor will be feasible).
*
* The original SCCP algorithm is extended with ability to propagate constant array
* elements and object properties. The extension is based on a variation of Array
* SSA form and its application to Spare Constant Propagation, described at
* "Array SSA Form" by Vivek Sarkar, Kathleen Knobe and Stephen Fink in chapter
* 16 of the SSA book.
*/
#if 0

Loading…
Cancel
Save