#
6c8db864 |
| 11-Jul-2014 |
Dmitry Stogov |
Implemented builtin instruction for strlen() |
#
de306e70 |
| 10-Jul-2014 |
Dmitry Stogov |
Implement call_user_func() and call_user_func_array() using special opcodes. In some rare cases it leads to insignificant changes in error messages. |
Revision tags: php-5.4.31RC1, php-5.5.15RC1 |
|
#
b36aaea6 |
| 07-Jul-2014 |
Dmitry Stogov |
ZEND_SEND_VAR and ZEND_SEND_VAL specialization |
Revision tags: php-5.6.0RC2 |
|
#
b7715c7e |
| 30-Jun-2014 |
Dmitry Stogov |
Refactored parameter passing mechanism. In PHP-5.6 and below each argument passed to user function was copies on VM stack twice. Now we always have ZEND_INIT_FCALL (or simular) opcode th
Refactored parameter passing mechanism. In PHP-5.6 and below each argument passed to user function was copies on VM stack twice. Now we always have ZEND_INIT_FCALL (or simular) opcode that pushes "call frame" on top of VM stack. "Call frame" is actually the same zend_execute_data structure. All the following ZEND_SEND instructions push arguments on top of the stack in a way that they directly comes into corresponding CV variables of the called frame. Extra arguments are copied at the end of stack frame (after all CV and TMP variables) on function enterance. There are two minor incompatibilities: 1) It's not allowed to decalre functions redefining arguments e.g. "function foo($a,$a) {}". 2) func_get_arg() and func_get args() return the current value of argument and not the original value that was sent.
show more ...
|
Revision tags: php-5.4.30, php-5.5.14, php-5.6.0RC1, php-5.5.14RC1, php-5.4.30RC1 |
|
#
e499c3d2 |
| 06-Jun-2014 |
Dmitry Stogov |
Introduced new BIND_GLOBAL instraction instead of FETCH_W+ASSIGN_REF pair that caused a lot of useles checks |
Revision tags: php-5.6.0beta4, php-5.4.29, php-5.5.13, php-5.5.13RC1, php-5.6.0beta3, php-5.4.29RC1, php-5.6.0beta2, php-5.5.12, php-5.4.28, php-5.4.28RC1, php-5.5.12RC1, php-5.6.0beta1, php-5.4.27, php-5.5.11, php-5.5.11RC1, php-5.4.27RC1, php-5.5.10, php-5.4.26, php-5.6.0alpha3, php-5.4.26RC1, php-5.5.10RC1, php-5.6.0alpha2, php-5.5.9, php-5.4.25, php-5.5.9RC1, php-5.4.25RC1, php-5.6.0alpha1, php-5.5.8, php-5.4.24, php-5.4.24RC1, php-5.5.8RC1, php-5.5.7, php-5.4.23, php-5.3.28, php-5.5.7RC1, php-5.4.23RC1 |
|
#
aff56f3c |
| 19-Nov-2013 |
datibbaw |
add T_POW (**) operator Fixed recognition of the operator Added opcode, still doing multiply instead of pow() opcode now always returns int(42) The right answer, b
add T_POW (**) operator Fixed recognition of the operator Added opcode, still doing multiply instead of pow() opcode now always returns int(42) The right answer, but always a float Yanked code from pow() implementation. Should not handle negative long as exponent ourselves Added test cases from pow() Moved precedence higher than '~' Added GMP operator overloading Added ZEND_ASSIGN_POW (**=) operator. Added pow() as a language construct. Adjusted test cases for changed precedence. Reduced pow() to shell function around ZEND_API pow_function() Reduced test case to only contain edge cases Added overloading test case Moved unary minus above T_POW Revert "Added pow() as a language construct." Bad bad bad idea. This reverts commit f60b98cf7a8371233d800a6faa286ddba4432d02. Reverted unary minus behaviour due to previous revert. Convert arrays to int(0) Exponent with array as a base becomes int(0) Rebase against master Fixed tokenizer test case
show more ...
|
Revision tags: php-5.4.22, php-5.5.6, php-5.4.22RC1, php-5.5.6RC1, php-5.4.21, php-5.5.5, php-5.4.21RC1, php-5.5.5RC1, php-5.5.4, php-5.4.20, php-5.5.4RC1, php-5.4.20RC1 |
|
#
2c47dfba |
| 29-Aug-2013 |
Nikita Popov |
Implement argument unpacking RFC: https://wiki.php.net/rfc/argument_unpacking |
#
c081ce62 |
| 03-Jan-2014 |
Xinchen Hui |
Bump year |
#
df9f2ad2 |
| 22-Dec-2013 |
krakjoe |
Merge branch 'PHP-5.6' of https://github.com/php/php-src into PHP-5.6
|
#
247ec0d8 |
| 22-Dec-2013 |
krakjoe |
Merge branch 'PHP-5.4' into PHP-5.5 * PHP-5.4: stop warnings from unused opcode map - BFN
|
#
b1df00a7 |
| 22-Dec-2013 |
krakjoe |
stop warnings from unused opcode map |
#
129fb22b |
| 21-Dec-2013 |
Bob Weinand |
Merge branch 'PHP-5.5' into PHP-5.6 Conflicts: Zend/zend_vm_opcodes.c
|
#
7e3af096 |
| 21-Dec-2013 |
Bob Weinand |
Merge branch 'PHP-5.4' into PHP-5.5 Conflicts: Zend/zend_vm_opcodes.c
|
#
97bf2543 |
| 21-Dec-2013 |
Bob Weinand |
Included new .c file in build too |
#
2874eba7 |
| 21-Dec-2013 |
Bob Weinand |
Merge branch 'PHP-5.5' into PHP-5.6 Conflicts: Zend/zend_vm_opcodes.h
|
#
0dd27656 |
| 21-Dec-2013 |
Bob Weinand |
Merge branch 'PHP-5.4' into PHP-5.5 Conflicts: Zend/zend_vm_opcodes.h
|
#
61199be0 |
| 21-Dec-2013 |
Bob Weinand |
Moved to new file, killing a lot of warnings |