summaryrefslogtreecommitdiff
path: root/Zend/zend_vm_gen.php
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'PHP-7.2' into PHP-7.3Dmitry Stogov2019-07-161-4/+4
|\ | | | | | | | | * PHP-7.2: Fixed incorrect specialization (missed IS_INDIRECT handling)
| * Fixed incorrect specialization (missed IS_INDIRECT handling)Dmitry Stogov2019-07-161-4/+4
| |
* | Merge branch 'PHP-7.2' into PHP-7.3Dmitry Stogov2019-04-091-9/+11
|\ \ | |/ | | | | | | * PHP-7.2: Repare SWITCH VM
| * Repare SWITCH VMDmitry Stogov2019-04-091-2/+2
| |
* | Merge branch 'PHP-7.2' into PHP-7.3Dmitry Stogov2018-12-211-1/+2
|\ \ | |/ | | | | | | * PHP-7.2: Removed /e modifirer and fixed ws.
| * Removed /e modifirer and fixed ws.Dmitry Stogov2018-12-211-1/+2
| |
| * Trim trailing whitespace in source code filesPeter Kokot2018-10-131-7/+7
| |
* | Future-proof email addressesZeev Suraski2018-11-011-4/+4
| |
* | Fixed support for commutative "user opcodes"Dmitry Stogov2018-09-051-10/+17
| |
* | Added missing defineDmitry Stogov2018-07-301-0/+1
| |
* | Fix typos in code commentsPeter Kokot2018-07-251-1/+1
| |
* | Remove unused Git attributes identPeter Kokot2018-07-251-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The $Id$ keywords were used in Subversion where they can be substituted with filename, last revision number change, last changed date, and last user who changed it. In Git this functionality is different and can be done with Git attribute ident. These need to be defined manually for each file in the .gitattributes file and are afterwards replaced with 40-character hexadecimal blob object name which is based only on the particular file contents. This patch simplifies handling of $Id$ keywords by removing them since they are not used anymore.
* | Better hot/cold code splittingDmitry Stogov2018-07-031-18/+18
| |
* | Inline few small opcode handlers into hybrid executorDmitry Stogov2018-06-071-0/+2
| |
* | Embed zend_leave_helper() into hybrid executor to avoid call overhead.Dmitry Stogov2018-06-051-12/+90
| |
* | Fixed ISSET/ISEMPTY bit meaning to simplify run-time checksDmitry Stogov2018-05-311-7/+7
| |
* | Marked rarely used opcodes as "cold" (e.g. ADD_CONST_CONST ususaly optimized ↵Dmitry Stogov2018-05-301-3/+25
| | | | | | | | out).
* | Fixed conditionsDmitry Stogov2018-05-141-2/+2
| |
* | Use "fastcall" calling conventionDmitry Stogov2018-05-081-1/+1
| |
* | Remove "hot" mark from JMP(Z|NZ|ZNZ) with IS_CONST operandDmitry Stogov2018-03-231-2/+6
| |
* | Allow extra specialisation for ISSET/ISEMPTY handlersDmitry Stogov2018-03-221-2/+34
| |
* | Reduce overhead of extra-specialization for opcode handler selection.Dmitry Stogov2018-03-221-55/+91
| |
* | Merge branch 'PHP-7.2'Dmitry Stogov2018-03-141-1/+1
|\ \ | |/ | | | | | | * PHP-7.2: Fixed user-opcode support
| * Fixed user-opcode supportDmitry Stogov2018-03-141-1/+1
| |
| * year++Xinchen Hui2018-01-021-2/+2
| |
* | Allow generation of VM mapDmitry Stogov2018-02-221-4/+19
| |
* | Mark exceptional helpers as "cold"Dmitry Stogov2018-02-211-10/+17
| |
* | fix ZEND_VM_SET_OPCODE_HANDLER cannot set user opcode handlerHaitao Lv2018-02-201-2/+3
| |
* | Fixed typoDmitry Stogov2018-02-191-2/+2
| |
* | Added VM instrumentation abilityDmitry Stogov2018-02-191-1/+7
| |
* | Elimintate duplicate error messageDmitry Stogov2018-02-191-1/+1
| |
* | Avoid live range references in opcodesNikita Popov2018-02-161-2/+1
| | | | | | | | | | | | | | | | Don't store the live range of the freed variable for FREE_ON_RETURN frees, instead look it up at runtime. As this is an extremely unlikely codepath (in particular, it requires a loop variable with a throwing destructor), saving the runtime lookup of the live range is not worth the extra complexity this adds everywhere else.
* | Optimize "backup" functions of inlined opcode handlers for sizeDmitry Stogov2018-02-151-1/+1
| |
* | Added ability to manually sort opcode handlers (not used yet)Dmitry Stogov2018-02-151-3/+37
| |
* | Added simple VM instrumentation abilityDmitry Stogov2018-02-151-3/+9
| |
* | Avoid inlining of rarely used handlersDmitry Stogov2018-02-151-4/+8
| |
* | fix unknown opcode overflow errorHaitao Lv2018-02-121-1/+8
| |
* | Moved "zval.u2.cache_slot" into free room of "zend_op"Dmitry Stogov2018-02-051-0/+4
| |
* | Avoid repeatable ARG_SHOULD_BE_SENT_BY_REF() checks in FETCH_*FUNC_ARG and ↵Dmitry Stogov2018-02-051-2/+0
| | | | | | | | following SEND_VAR_EX. Perform the check once in a new CHECK_FUNC_ARG opcode and reuse in the following FETCH_*FUNC_ARG and SEND_FUNC_ARG (SEND_VAR_EX replacement).
* | Changed CATCH instruction format (extended_value moved into op2, op2 into ↵Dmitry Stogov2018-01-311-1/+2
| | | | | | | | result, result into extended_value)
* | Changed FETCH_CONSTANT instruction format (extended_value moved into op1)Dmitry Stogov2018-01-311-2/+3
| |
* | Changed FETCH_CLASS instruction format (extended_value moved into op1)Dmitry Stogov2018-01-311-2/+1
| |
* | Compress handlers tableDmitry Stogov2018-01-311-15/+34
| |
* | Make IS_UNUSED to be zero.Dmitry Stogov2018-01-311-20/+4
| |
* | Use fastcall calling conventionDmitry Stogov2018-01-161-8/+8
| |
* | Added abiliy to mark object specific handlers with most often used operand ↵Dmitry Stogov2018-01-101-7/+19
| | | | | | | | types as HOT. (UNUSED+CONST and CV+CONST)
* | Removed unused arrayDmitry Stogov2018-01-091-13/+2
| |
* | Allow commas in specializer conditionsDmitry Stogov2018-01-091-1/+1
| |
* | year++Xinchen Hui2018-01-021-2/+2
| |
* | fixed "unused function" compilation warningDmitry Stogov2017-12-181-2/+6
| |