History log of /PHP-8.0/ext/opcache/Optimizer/zend_inference.h (Results 1 – 25 of 48)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# b3377028 14-Dec-2020 Dmitry Stogov

Remove unused flag


Revision tags: php-8.0.0, php-7.3.25, php-7.4.13, php-8.0.0RC5, php-7.4.13RC1, php-8.0.0RC4, php-7.3.25RC1, php-7.4.12, php-8.0.0RC3, php-7.3.24, php-8.0.0RC2, php-7.4.12RC1, php-7.3.24RC1
# 87beb22f 12-Oct-2020 Dmitry Stogov

Perform trace range propagation


Revision tags: php-7.2.34, php-8.0.0rc1, php-7.4.11, php-7.3.23, php-8.0.0beta4, php-7.4.11RC1, php-7.3.23RC1, php-8.0.0beta3, php-7.4.10, php-7.3.22
# d4383be6 25-Aug-2020 Dmitry Stogov

Use guard to check if array is packed or hash


# 2369f480 25-Aug-2020 Dmitry Stogov

Infer information about packed/hash arrays and use it for JIT


# d3845378 25-Aug-2020 Dmitry Stogov

Move AVOID_REFCOUNTING type info flag into a separate bit


Revision tags: php-8.0.0beta2, php-7.3.22RC1, php-7.4.10RC1, php-8.0.0beta1, php-7.4.9, php-7.2.33, php-7.3.21, php-8.0.0alpha3, php-7.4.9RC1, php-7.3.21RC1
# a167e042 16-Jul-2020 Dmitry Stogov

Eliminate some reference-counting


Revision tags: php-7.4.8
# 9e8a8e6a 08-Jul-2020 Dmitry Stogov

Use information about recorded classes for speculative FETCH_OBJ optimization


Revision tags: php-7.2.32
# ab5f8f4b 07-Jul-2020 Dmitry Stogov

More accurate reference-counter inference (with support for ext/intl/tests/bug72241.phpt)


Revision tags: php-8.0.0alpha2, php-7.3.20
# 2068f019 02-Jul-2020 Dmitry Stogov

Eliminate useless exception checks


Revision tags: php-8.0.0alpha1, php-7.4.8RC1, php-7.3.20RC1
# 6fa126e9 18-Jun-2020 Dmitry Stogov

MAY_BE_INDIRECT inference


Revision tags: php-7.4.7, php-7.3.19, php-7.4.7RC1, php-7.3.19RC1, php-7.4.6, php-7.2.31, php-7.4.6RC1, php-7.3.18RC1, php-7.2.30, php-7.4.5, php-7.3.17, php-7.4.5RC1, php-7.3.17RC1, php-7.3.18, php-7.4.4, php-7.2.29
# 37239850 16-Mar-2020 Nikita Popov

Merge EX variants of INFO macros


# d35ce5d6 16-Mar-2020 Nikita Popov

Merge EX variants of RANGE macros

Only need to create the ssa_op variable in range inference...


# 44b3971b 16-Mar-2020 Nikita Popov

Merge zend_may_throw(_ex)

Explicitly pass ssa_op in the places that don't do so yet.


Revision tags: php-7.3.16
# 4bf2d09e 13-Mar-2020 Dmitry Stogov

Tracing JIT (it doesn't support register allocation yet)

Use opcache.jit=1255 to swith it on (the third digit 5 really matters)
Use opcache.jit_debug=0xff001 to see how it works and what

Tracing JIT (it doesn't support register allocation yet)

Use opcache.jit=1255 to swith it on (the third digit 5 really matters)
Use opcache.jit_debug=0xff001 to see how it works and what code it generates

show more ...


Revision tags: php-7.4.4RC1, php-7.3.16RC1, php-7.4.3, php-7.2.28, php-7.3.15RC1, php-7.4.3RC1, php-7.3.15, php-7.2.27, php-7.4.2, php-7.3.14, php-7.3.14RC1, php-7.4.2RC1, php-7.4.1, php-7.2.26, php-7.3.13, php-7.4.1RC1, php-7.3.13RC1, php-7.2.26RC1, php-7.4.0, php-7.2.25, php-7.3.12, 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
# cef1960c 14-Oct-2019 Dmitry Stogov

Use "const" qualifier


# 2068ce9a 11-Oct-2019 Dmitry Stogov

Use RT_CONSTANT() or CT_CONSTANT() macro depending on ZEND_ACC_DONE_PASS_TWO flag


Revision tags: php-7.3.11RC1, php-7.2.24RC1, php-7.4.0RC3
# 01fc1a30 27-Sep-2019 Nikita Popov

Remove most uses of the ERROR type

It is now only used to signal exceptions for property reads. ERROR
zvals are never returned back to the VM anymore, so there's no
need to check for

Remove most uses of the ERROR type

It is now only used to signal exceptions for property reads. ERROR
zvals are never returned back to the VM anymore, so there's no
need to check for them when receiving a VAR.

Also return MAY_BE_ERROR, as ERROR is now no longer relevant for
inference.

show more ...


Revision tags: php-7.2.23
# a369430b 24-Sep-2019 Nikita Popov

Avoid signed shift


Revision tags: php-7.3.10
# 9e8ba789 19-Sep-2019 Nikita Popov

Change representation of zend_type from type code to MAY_BE_* mask

This switches zend_type from storing a single IS_* type code to
storing a MAY_BE_* type mask. Right now most code still

Change representation of zend_type from type code to MAY_BE_* mask

This switches zend_type from storing a single IS_* type code to
storing a MAY_BE_* type mask. Right now most code still assumes
that there is only a single type in the mask (or two together
with MAY_BE_NULL). But this will make it a lot simpler to introduce
union types.

An additional advantage (and why I'm doing this separately), is
that a number of special cases no longer need to be handled
separately: We can do a single mask & (1 << type) check to handle
all simple types, booleans (true|false) and null.

show more ...


Revision tags: php-7.4.0RC2, php-7.2.23RC1, php-7.3.10RC1
# 597a5da0 03-Sep-2019 Nikita Popov

Support computing func info from ret arg info for internal funcs


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, php-7.4.0beta1, php-7.2.21RC1, php-7.3.8RC1, php-7.4.0alpha3, php-7.3.7, php-7.2.20, php-7.4.0alpha2, php-7.3.7RC3
# 3a97b8b4 19-Jun-2019 Nikita Popov

Backport "Avoid UB in overflow checks"

Cherry-pick of bb940d9969e08853d92a09f7a02adc3228cf1c2c without
the JIT parts.


# bb940d99 19-Jun-2019 Nikita Popov

Avoid UB in overflow checks

Some of the overflow checks in zend_may_overflow were optimized
away by clang, causing JIT failures on release macos.


Revision tags: php-7.3.7RC2, php-7.2.20RC2, php-7.4.0alpha1, php-7.3.7RC1, php-7.2.20RC1, php-7.2.19, php-7.3.6, php-7.1.30, php-7.2.19RC1, php-7.3.6RC1, php-7.1.29, php-7.2.18, php-7.3.5, php-7.2.18RC1, php-7.3.5RC1, php-7.2.17, php-7.3.4, php-7.1.28, php-7.3.4RC1, php-7.2.17RC1, php-7.1.27, php-7.3.3, php-7.2.16, php-7.3.3RC1, php-7.2.16RC1, php-7.2.15, php-7.3.2
# da919a8b 05-Feb-2019 Dmitry Stogov

Remove copyright years.


Revision tags: php-7.2.15RC1
# 92ac598a 22-Jan-2019 Peter Kokot

Remove local variables

This patch removes the so called local variables defined per
file basis for certain editors to properly show tab width, and
similar settings. These are mainly

Remove local variables

This patch removes the so called local variables defined per
file basis for certain editors to properly show tab width, and
similar settings. These are mainly used by Vim and Emacs editors
yet with recent changes the once working definitions don't work
anymore in Vim without custom plugins or additional configuration.
Neither are these settings synced across the PHP code base.

A simpler and better approach is EditorConfig and fixing code
using some code style fixing tools in the future instead.

This patch also removes the so called modelines for Vim. Modelines
allow Vim editor specifically to set some editor configuration such as
syntax highlighting, indentation style and tab width to be set in the
first line or the last 5 lines per file basis. Since the php test
files have syntax highlighting already set in most editors properly and
EditorConfig takes care of the indentation settings, this patch removes
these as well for the Vim 6.0 and newer versions.

With the removal of local variables for certain editors such as
Emacs and Vim, the footer is also probably not needed anymore when
creating extensions using ext_skel.php script.

Additionally, Vim modelines for setting php syntax and some editor
settings has been removed from some *.phpt files. All these are
mostly not relevant for phpt files neither work properly in the
middle of the file.

show more ...


Revision tags: php-7.3.2RC1, php-5.6.40, php-7.1.26, php-7.3.1, php-7.2.14, php-7.2.14RC1, php-7.3.1RC1, php-5.6.39, php-7.1.25, php-7.2.13, php-7.0.33, php-7.3.0, php-7.1.25RC1, php-7.2.13RC1, php-7.3.0RC6, php-7.1.24, php-7.2.12, php-7.3.0RC5
# 9afce019 01-Nov-2018 Zeev Suraski

Future-proof email addresses


12