History log of /PHP-8.1/Zend/zend_vm_gen.php (Results 26 – 50 of 324)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 002c264d 07-Jul-2020 Nikita Popov

Remove ZEND_VM_EXPORT functionality

This hasn't been used since forever and makes things more confusing
than they already are.

# d114812f 25-Jun-2020 Ayesh Karunaratne

[ci skip] Various typo fixes in stub comments and CHANGES file

# f4b46314 22-May-2020 Dmitry Stogov

Prevent CGG reordering if hanlers order is defined by zend_vm_order.txt

Revision tags: php-7.3.17RC1, php-7.3.18, php-7.3.16, php-7.3.16RC1
# d4de3f95 06-Feb-2020 Nikita Popov

Remove spurious const qualifier from function return type

Revision tags: php-7.3.15RC1
# 16980577 03-Feb-2020 Nikita Popov

Merge branch 'PHP-7.4'

* PHP-7.4:
Apply tidy formatting


# 58b17906 03-Feb-2020 Nikita Popov

Apply tidy formatting

Mostly reindent PHP scripts to spaces.

Revision tags: php-7.3.15, php-7.3.14, php-7.3.14RC1, php-7.3.13, php-7.3.13RC1, php-7.2.26RC1, php-7.4.0, php-7.2.25, php-7.3.12
# a7580899 13-Nov-2019 Tyson Andre

Support the same handler for multiple opcodes

# e8525c2f 13-Nov-2019 Tyson Andre

Optimize int === int/double === double

Do this by reusing the implementation used for `==`
when both arguments are ints (IS_LONG) or both are floats (IS_DOUBLE)

```php
// Be

Optimize int === int/double === double

Do this by reusing the implementation used for `==`
when both arguments are ints (IS_LONG) or both are floats (IS_DOUBLE)

```php
// Before: nestedloop_ni took 0.442 seconds
// After: nestedloop_ni takes 0.401 seconds (same as nestedloop_ne)
function nestedloop_ni(int $k) {
$x = 0;
for ($i=0; $i < 50000000; $i++) {
if ($i === $k) {
$x++;
}
}
print "$x\n";
}
function nestedloop_ne(int $k) {
$x = 0;
for ($i=0; $i < 50000000; $i++) {
if ($i == $k) {
$x++;
}
}
print "$x\n";
}
```

show more ...

Revision tags: php-7.4.0RC6, php-7.3.12RC1, php-7.2.25RC1, php-7.4.0RC5, php-7.1.33, php-7.2.24, php-7.3.11, php-7.4.0RC4
# f6f32f2c 09-Oct-2019 Dmitry Stogov

SAMRT BRANCH improvement.

Avoid need of insertion NOP opcoes between unrelated SMART BRANCH instruction and following JMPZ/JMPNZ.
Now instead of checking the opcode of following instruct

SAMRT BRANCH improvement.

Avoid need of insertion NOP opcoes between unrelated SMART BRANCH instruction and following JMPZ/JMPNZ.
Now instead of checking the opcode of following instruction, the same information is encoded into SMART BRANH result_type.

show more ...

# eec04f6b 08-Oct-2019 Dmitry Stogov

Encapsulate all SMART BRANCH related logic inside macros. Result of SMART BRANCH may be uninitialized (on exception).

Revision tags: php-7.3.11RC1, php-7.2.24RC1, php-7.4.0RC3
# a66c60cc 26-Sep-2019 Nikita Popov

Throw Error when writing property of non-object

This removes object auto-vivification support.

This also means that we can remove the corresponding special
handling for typed pr

Throw Error when writing property of non-object

This removes object auto-vivification support.

This also means that we can remove the corresponding special
handling for typed properites: We no longer need to check that a
property is convertible to stdClass if such a conversion might
take place indirectly due to a nested property write.

Additionally OBJ_W style operations now no longer modify the
object operand, and as such we no longer need to treat op1 as a
def in SSA form.

The next step would be to actually compile the whole LHS of OBJ_W
operations in R rather than W mode, but that causes issues with
SimpleXML, whose object handlers depend on the current compilation
structure.

Part of https://wiki.php.net/rfc/engine_warnings.

show more ...

# 470bbb8c 25-Sep-2019 Dmitry Stogov

Avoid code dupliction

Revision tags: php-7.2.23, php-7.3.10, php-7.4.0RC2, php-7.2.23RC1, php-7.3.10RC1
# 02c83b80 10-Sep-2019 Dmitry Stogov

ceanup

# 0f8bb9e3 05-Sep-2019 Dmitry Stogov

Merge branch 'PHP-7.4'

* PHP-7.4:
Remove HOT attribute from some VM handlers. Comparisons almost always followed by JMPZ/JMPNZ; JMPZNZ is rare used.
Remove --with-zlib-dir option

Merge branch 'PHP-7.4'

* PHP-7.4:
Remove HOT attribute from some VM handlers. Comparisons almost always followed by JMPZ/JMPNZ; JMPZNZ is rare used.
Remove --with-zlib-dir option from mysqlnd config

show more ...


# 7237da27 05-Sep-2019 Dmitry Stogov

Remove HOT attribute from some VM handlers. Comparisons almost always followed by JMPZ/JMPNZ; JMPZNZ is rare used.

Revision tags: php-7.4.0RC1, php-7.1.32, php-7.2.22, php-7.3.9, php-7.4.0beta4, php-7.2.22RC1, php-7.3.9RC1, php-7.4.0beta2, php-7.1.31, php-7.2.21, php-7.3.8
# 57d9b94d 24-Jul-2019 Dmitry Stogov

Simplify TMP/VAR operand releasing

Revision tags: php-7.4.0beta1
# 9e4603f7 24-Jul-2019 Nikita Popov

Try to fix macos build

By avoiding unused variable opline warnings. Also clean up the
replacement of ZEND_VM_SPEC -- we were sometimes treating it as
an always-defined constant with

Try to fix macos build

By avoiding unused variable opline warnings. Also clean up the
replacement of ZEND_VM_SPEC -- we were sometimes treating it as
an always-defined constant with a value (what it actually is) and
sometimes as a conditionally defined constant (which it isn't, but
which still worked thanks to the specializer). Switch to only
treating it as a constant with a value.

show more ...

# 8d51af9b 23-Jul-2019 Dmitry Stogov

Fixed CALL VM

# b30e4a5a 17-Jul-2019 Dmitry Stogov

Avoid extra specialization for cold opcodes

# 6fbab09e 17-Jul-2019 Dmitry Stogov

Remove old hack

# 349a388b 16-Jul-2019 Dmitry Stogov

Slit INC/DEC opcodes into hot/cold parts and remove specialized versioins for LONG_OR_DOUBLE.

Revision tags: php-7.2.21RC1, php-7.3.8RC1
# 2e26b063 15-Jul-2019 Dmitry Stogov

Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
Fixed incorrect specialization (missed IS_INDIRECT handling)


# c5709801 15-Jul-2019 Dmitry Stogov

Merge branch 'PHP-7.2' into PHP-7.3

* PHP-7.2:
Fixed incorrect specialization (missed IS_INDIRECT handling)


# 9ccf3fb9 15-Jul-2019 Dmitry Stogov

Fixed incorrect specialization (missed IS_INDIRECT handling)

# 350f2212 11-Jul-2019 Dmitry Stogov

Allow GOTO style helpers in HYBRID VM

12345678910>>...13