#
002c264d |
| 07-Jul-2020 |
Nikita Popov |
Remove ZEND_VM_EXPORT functionality This hasn't been used since forever and makes things more confusing than they already are. |
#
d114812f |
| 25-Jun-2020 |
Ayesh Karunaratne |
[ci skip] Various typo fixes in stub comments and CHANGES file |
#
f4b46314 |
| 22-May-2020 |
Dmitry Stogov |
Prevent CGG reordering if hanlers order is defined by zend_vm_order.txt |
Revision tags: php-7.3.17RC1, php-7.3.18, php-7.3.16, php-7.3.16RC1 |
|
#
d4de3f95 |
| 06-Feb-2020 |
Nikita Popov |
Remove spurious const qualifier from function return type |
Revision tags: php-7.3.15RC1 |
|
#
16980577 |
| 03-Feb-2020 |
Nikita Popov |
Merge branch 'PHP-7.4' * PHP-7.4: Apply tidy formatting
|
#
58b17906 |
| 03-Feb-2020 |
Nikita Popov |
Apply tidy formatting Mostly reindent PHP scripts to spaces. |
Revision tags: php-7.3.15, php-7.3.14, php-7.3.14RC1, php-7.3.13, php-7.3.13RC1, php-7.2.26RC1, php-7.4.0, php-7.2.25, php-7.3.12 |
|
#
a7580899 |
| 13-Nov-2019 |
Tyson Andre |
Support the same handler for multiple opcodes |
#
e8525c2f |
| 13-Nov-2019 |
Tyson Andre |
Optimize int === int/double === double Do this by reusing the implementation used for `==` when both arguments are ints (IS_LONG) or both are floats (IS_DOUBLE) ```php // Be
Optimize int === int/double === double Do this by reusing the implementation used for `==` when both arguments are ints (IS_LONG) or both are floats (IS_DOUBLE) ```php // Before: nestedloop_ni took 0.442 seconds // After: nestedloop_ni takes 0.401 seconds (same as nestedloop_ne) function nestedloop_ni(int $k) { $x = 0; for ($i=0; $i < 50000000; $i++) { if ($i === $k) { $x++; } } print "$x\n"; } function nestedloop_ne(int $k) { $x = 0; for ($i=0; $i < 50000000; $i++) { if ($i == $k) { $x++; } } print "$x\n"; } ```
show more ...
|
Revision tags: php-7.4.0RC6, php-7.3.12RC1, php-7.2.25RC1, php-7.4.0RC5, php-7.1.33, php-7.2.24, php-7.3.11, php-7.4.0RC4 |
|
#
f6f32f2c |
| 09-Oct-2019 |
Dmitry Stogov |
SAMRT BRANCH improvement. Avoid need of insertion NOP opcoes between unrelated SMART BRANCH instruction and following JMPZ/JMPNZ. Now instead of checking the opcode of following instruct
SAMRT BRANCH improvement. Avoid need of insertion NOP opcoes between unrelated SMART BRANCH instruction and following JMPZ/JMPNZ. Now instead of checking the opcode of following instruction, the same information is encoded into SMART BRANH result_type.
show more ...
|
#
eec04f6b |
| 08-Oct-2019 |
Dmitry Stogov |
Encapsulate all SMART BRANCH related logic inside macros. Result of SMART BRANCH may be uninitialized (on exception). |
Revision tags: php-7.3.11RC1, php-7.2.24RC1, php-7.4.0RC3 |
|
#
a66c60cc |
| 26-Sep-2019 |
Nikita Popov |
Throw Error when writing property of non-object This removes object auto-vivification support. This also means that we can remove the corresponding special handling for typed pr
Throw Error when writing property of non-object This removes object auto-vivification support. This also means that we can remove the corresponding special handling for typed properites: We no longer need to check that a property is convertible to stdClass if such a conversion might take place indirectly due to a nested property write. Additionally OBJ_W style operations now no longer modify the object operand, and as such we no longer need to treat op1 as a def in SSA form. The next step would be to actually compile the whole LHS of OBJ_W operations in R rather than W mode, but that causes issues with SimpleXML, whose object handlers depend on the current compilation structure. Part of https://wiki.php.net/rfc/engine_warnings.
show more ...
|
#
470bbb8c |
| 25-Sep-2019 |
Dmitry Stogov |
Avoid code dupliction |
Revision tags: php-7.2.23, php-7.3.10, php-7.4.0RC2, php-7.2.23RC1, php-7.3.10RC1 |
|
#
02c83b80 |
| 10-Sep-2019 |
Dmitry Stogov |
ceanup |
#
0f8bb9e3 |
| 05-Sep-2019 |
Dmitry Stogov |
Merge branch 'PHP-7.4' * PHP-7.4: Remove HOT attribute from some VM handlers. Comparisons almost always followed by JMPZ/JMPNZ; JMPZNZ is rare used. Remove --with-zlib-dir option
Merge branch 'PHP-7.4' * PHP-7.4: Remove HOT attribute from some VM handlers. Comparisons almost always followed by JMPZ/JMPNZ; JMPZNZ is rare used. Remove --with-zlib-dir option from mysqlnd config
show more ...
|
#
7237da27 |
| 05-Sep-2019 |
Dmitry Stogov |
Remove HOT attribute from some VM handlers. Comparisons almost always followed by JMPZ/JMPNZ; JMPZNZ is rare used. |
Revision tags: php-7.4.0RC1, php-7.1.32, php-7.2.22, php-7.3.9, php-7.4.0beta4, php-7.2.22RC1, php-7.3.9RC1, php-7.4.0beta2, php-7.1.31, php-7.2.21, php-7.3.8 |
|
#
57d9b94d |
| 24-Jul-2019 |
Dmitry Stogov |
Simplify TMP/VAR operand releasing |
Revision tags: php-7.4.0beta1 |
|
#
9e4603f7 |
| 24-Jul-2019 |
Nikita Popov |
Try to fix macos build By avoiding unused variable opline warnings. Also clean up the replacement of ZEND_VM_SPEC -- we were sometimes treating it as an always-defined constant with
Try to fix macos build By avoiding unused variable opline warnings. Also clean up the replacement of ZEND_VM_SPEC -- we were sometimes treating it as an always-defined constant with a value (what it actually is) and sometimes as a conditionally defined constant (which it isn't, but which still worked thanks to the specializer). Switch to only treating it as a constant with a value.
show more ...
|
#
8d51af9b |
| 23-Jul-2019 |
Dmitry Stogov |
Fixed CALL VM |
#
b30e4a5a |
| 17-Jul-2019 |
Dmitry Stogov |
Avoid extra specialization for cold opcodes |
#
6fbab09e |
| 17-Jul-2019 |
Dmitry Stogov |
Remove old hack |
#
349a388b |
| 16-Jul-2019 |
Dmitry Stogov |
Slit INC/DEC opcodes into hot/cold parts and remove specialized versioins for LONG_OR_DOUBLE. |
Revision tags: php-7.2.21RC1, php-7.3.8RC1 |
|
#
2e26b063 |
| 15-Jul-2019 |
Dmitry Stogov |
Merge branch 'PHP-7.3' into PHP-7.4 * PHP-7.3: Fixed incorrect specialization (missed IS_INDIRECT handling)
|
#
c5709801 |
| 15-Jul-2019 |
Dmitry Stogov |
Merge branch 'PHP-7.2' into PHP-7.3 * PHP-7.2: Fixed incorrect specialization (missed IS_INDIRECT handling)
|
#
9ccf3fb9 |
| 15-Jul-2019 |
Dmitry Stogov |
Fixed incorrect specialization (missed IS_INDIRECT handling) |
#
350f2212 |
| 11-Jul-2019 |
Dmitry Stogov |
Allow GOTO style helpers in HYBRID VM |