diff options
author | Dmitry Stogov <dmitry@zend.com> | 2014-05-18 20:48:16 +0400 |
---|---|---|
committer | Dmitry Stogov <dmitry@zend.com> | 2014-05-18 20:48:16 +0400 |
commit | 3fff53fc5790918bea9a8c04a04a9d8c79ebdbf6 (patch) | |
tree | d53f264de6e5364817f32dfe5c705c758baa13f9 | |
parent | 1759905a23eb4ae0d0d3181a21da911c51d4fbf4 (diff) | |
download | php-git-3fff53fc5790918bea9a8c04a04a9d8c79ebdbf6.tar.gz |
Optimize ZEND_POW (Rouven Weßling)
-rw-r--r-- | ext/opcache/Optimizer/pass1_5.c | 3 | ||||
-rw-r--r-- | ext/opcache/Optimizer/pass3.c | 8 | ||||
-rw-r--r-- | ext/opcache/ZendAccelerator.h | 1 |
3 files changed, 12 insertions, 0 deletions
diff --git a/ext/opcache/Optimizer/pass1_5.c b/ext/opcache/Optimizer/pass1_5.c index 577d1b6609..30705ff18a 100644 --- a/ext/opcache/Optimizer/pass1_5.c +++ b/ext/opcache/Optimizer/pass1_5.c @@ -25,6 +25,9 @@ if (ZEND_OPTIMIZER_PASS_1 & OPTIMIZATION_LEVEL) { case ZEND_MUL: case ZEND_DIV: case ZEND_MOD: +#if ZEND_EXTENSION_API_NO >= PHP_5_6_X_API_NO + case ZEND_POW: +#endif case ZEND_SL: case ZEND_SR: case ZEND_CONCAT: diff --git a/ext/opcache/Optimizer/pass3.c b/ext/opcache/Optimizer/pass3.c index fd2a190009..1ee641ca52 100644 --- a/ext/opcache/Optimizer/pass3.c +++ b/ext/opcache/Optimizer/pass3.c @@ -45,6 +45,9 @@ if (ZEND_OPTIMIZER_PASS_3 & OPTIMIZATION_LEVEL) { case ZEND_MUL: case ZEND_DIV: case ZEND_MOD: +#if ZEND_EXTENSION_API_NO >= PHP_5_6_X_API_NO + case ZEND_POW: +#endif case ZEND_CONCAT: case ZEND_SL: case ZEND_SR: @@ -104,6 +107,11 @@ if (ZEND_OPTIMIZER_PASS_3 & OPTIMIZATION_LEVEL) { case ZEND_MOD: opline->opcode = ZEND_ASSIGN_MOD; break; +#if ZEND_EXTENSION_API_NO >= PHP_5_6_X_API_NO + case ZEND_POW: + opline->opcode = ZEND_ASSIGN_POW; + break; +#endif case ZEND_CONCAT: opline->opcode = ZEND_ASSIGN_CONCAT; break; diff --git a/ext/opcache/ZendAccelerator.h b/ext/opcache/ZendAccelerator.h index d3fa38ea66..a25e766244 100644 --- a/ext/opcache/ZendAccelerator.h +++ b/ext/opcache/ZendAccelerator.h @@ -93,6 +93,7 @@ #define PHP_5_3_X_API_NO 220090626 #define PHP_5_4_X_API_NO 220100525 #define PHP_5_5_X_API_NO 220121212 +#define PHP_5_6_X_API_NO 220131226 /*** file locking ***/ #ifndef ZEND_WIN32 |