History log of /php-src/Zend/zend_vm_gen.php (Results 176 – 200 of 342)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
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

12345678910>>...14