Revision tags: php-5.6.21RC1, php-7.0.6RC1, php-5.6.20, php-5.5.34, php-7.0.5 |
|
#
fc7cbdce |
| 17-Mar-2016 |
Dmitry Stogov |
Squashed commit of the following: commit 98471821a89d7106de508fc544504ba674025abe Author: Dmitry Stogov <dmitry@zend.com> Date: Thu Mar 17 21:56:04 2016 +0300 Fixed wr
Squashed commit of the following: commit 98471821a89d7106de508fc544504ba674025abe Author: Dmitry Stogov <dmitry@zend.com> Date: Thu Mar 17 21:56:04 2016 +0300 Fixed wrong constant usage commit 8183b811e74c2989bcd8ab9d870fc3adbe973980 Author: Dmitry Stogov <dmitry@zend.com> Date: Thu Mar 17 21:10:23 2016 +0300 Added ability to serialize and serialize opcode handlers for file-cache commit 3516b261de7694bb1f34c5ae1adfb2f29dfab7bf Author: Dmitry Stogov <dmitry@zend.com> Date: Thu Mar 17 10:11:59 2016 +0300 Added missed file commit f4475a23608623ccbf11b00c1c74df1db55dffa2 Author: Dmitry Stogov <dmitry@zend.com> Date: Thu Mar 17 10:00:45 2016 +0300 Transparently introduce type-specialized opcode handlers. This affects only PHP VM, and doesn't change anything else.
show more ...
|
#
73e8c087 |
| 17-Mar-2016 |
Xinchen Hui |
Sorry for that... Merged by accident.... Revert "Transparently introduce type-specialized opcode handlers." This reverts commit 59d00b8bcc05f72b29c3c768542b2bb6e69e1af4. |
Revision tags: php-5.6.20RC1, php-7.0.5RC1 |
|
#
59d00b8b |
| 16-Mar-2016 |
Dmitry Stogov |
Transparently introduce type-specialized opcode handlers. This affects only PHP VM, and doesn't change anything else. |
#
7f80514a |
| 11-Mar-2016 |
Dmitry Stogov |
Added ability to avoid code generation for useless opcode handlers. - SPEC(NO_CONST_CONST) may prevent codegeneration for handlers like ADD_SPEC_CONST_CONST. Compiler and optimizaer should c
Added ability to avoid code generation for useless opcode handlers. - SPEC(NO_CONST_CONST) may prevent codegeneration for handlers like ADD_SPEC_CONST_CONST. Compiler and optimizaer should care about constants folding. - SPEC(COMMUTATIVE) generate only single handler instead of two eqivalents like ADD_SPEC_CONST_CV and ADD_SPEC_CV_CONST. Compiler and optimizer should care avout operands swapping.
show more ...
|
#
afb80df6 |
| 11-Mar-2016 |
Dmitry Stogov |
Allow usage of "TMPVARCV" pattern for cases when there is no difference in handling for TMP, VAR and CV operands. |
#
827a7a18 |
| 11-Mar-2016 |
Dmitry Stogov |
Added possibility for extra specialization for SMART_BRANCH (e.g. IS_EQUAL+JMPZ superinstruction). |
Revision tags: php-5.6.19, php-5.5.33, php-7.0.4, php-5.6.19RC1, php-7.0.4RC1 |
|
#
c4ff3e79 |
| 15-Feb-2016 |
Xinchen Hui |
It's better to support 5.3 as well |
#
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 ...
|
#
2f5a1192 |
| 05-Feb-2016 |
Dmitry Stogov |
Use extra specialization to eliminate run-time checks for conditions known at compile time in SEND_VAL_EX and SEND_VAR_EX. |
Revision tags: php-5.6.18, php-7.0.3, php-5.5.32 |
|
#
00a2c30c |
| 02-Feb-2016 |
Bob Weinand |
Add extra VM operand specialization For now RETVAL and OP_DATA= are supported |
#
9b57e072 |
| 21-Jan-2016 |
Nikita Popov |
Consolidate op1/op2 vm flags |
Revision tags: php-5.6.18RC1, php-7.0.3RC1, php-5.6.17, php-5.5.31, php-7.0.2 |
|
#
56365982 |
| 02-Jan-2016 |
Xinchen Hui |
Merge branch 'PHP-7.0'
|
#
97a9470d |
| 02-Jan-2016 |
Xinchen Hui |
bump year which is missed in rev 49493a2 |
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 ...
|
#
061a90f8 |
| 10-Dec-2015 |
Dmitry Stogov |
Describe special meaning of IS_UNUSED oprerand |
#
dc368109 |
| 10-Dec-2015 |
Dmitry Stogov |
Use more compact description encoding schema to free some bits |
#
cba1a849 |
| 10-Dec-2015 |
Dmitry Stogov |
Improve Optimizer debugging facility (print the meaning of extended_value) |
#
7ea1cf2e |
| 10-Dec-2015 |
Bob Weinand |
Improved specializer: - Allow dispatching from specialized handler to unspecialized one |
#
6f966fad |
| 10-Dec-2015 |
Dmitry Stogov |
Improved specializer (Bob) - All helpers now may be declatred and called without ZEND_VM_HELPER_EX() and ZEND_VM_DISPATCH_TO_HELPER_EX() macros - ZEND_VM_HELPER() may declare few argumen
Improved specializer (Bob) - All helpers now may be declatred and called without ZEND_VM_HELPER_EX() and ZEND_VM_DISPATCH_TO_HELPER_EX() macros - ZEND_VM_HELPER() may declare few arguments - ZEND_VM_DISPATCH_TO_HELPER() may pass few parameters - ZEND_VM_INLINE_HELPER() may be used to declare inline helpers (it won't be inlined in SWITH/GOTO executors)
show more ...
|
Revision tags: php-5.6.17RC1, php-7.0.1RC1, php-7.0.0, php-5.6.16, php-7.0.0RC8, php-7.0.0RC7, php-5.6.16RC1 |
|
#
948b7f54 |
| 11-Nov-2015 |
Dmitry Stogov |
Changed ZEND_FREE.op2.num and ZEND_FE_FREE.op2.num back to use live_range_offset (try_catch_offset does't work) |
#
86a96f2c |
| 10-Nov-2015 |
Dmitry Stogov |
Changed meaning of "op2" for ZEND_FREE, ZEND_FE_FREE, ZEND_FAST_CALL, ZEND_FAST_RET. Previously it was an instruction number. Now it's an index in op_array->try_cacth_array[]. |
#
3e89c883 |
| 30-Oct-2015 |
Dmitry Stogov |
Changed ZEND_CLONE->extended_value meaning to relative offset (previously it was absolute opline number) |
#
9ccb432c |
| 29-Oct-2015 |
Dmitry Stogov |
Argument type renaming (ADDR->JMP_ADDR, OPLINE->JMP_ABS, REL_OPLINE->JMP_REL) |
Revision tags: php-5.6.15 |
|
#
5c65fc29 |
| 29-Oct-2015 |
Dmitry Stogov |
Fixed few issues: - Added ZEND_VM_LAST_OPCODE macro - Use better names LINE->OPLINE, REL_LINE->REL_OPLINE, FCALL->FAST_CALL, FRET->FAST_RET - Added ISSET flag to extended value of ZE
Fixed few issues: - Added ZEND_VM_LAST_OPCODE macro - Use better names LINE->OPLINE, REL_LINE->REL_OPLINE, FCALL->FAST_CALL, FRET->FAST_RET - Added ISSET flag to extended value of ZEND_ISSET_ISEMPTY_VAR opcode
show more ...
|
#
d83600a2 |
| 28-Oct-2015 |
Dmitry Stogov |
Added zend_get_opcode_flags() function to get information about opcode operands and extended_value meaning |