History log of /PHP-8.1/Zend/zend_vm_opcodes.c (Results 126 – 142 of 142)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 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

123456