#
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 ...
|
#
f2b09969 |
| 26-Sep-2019 |
Nikita Popov |
Convert "cannot add element" warning to exception
|
#
1030ff5f |
| 23-Sep-2019 |
Dmitry Stogov |
Use cheaper code for scalar type check
|
#
6e226c18 |
| 23-Sep-2019 |
Dmitry Stogov |
Change ZEND_RECV and ZEND_RECV_VARIADIC to use extended_value for cache slot (instead of op2), to be consistent with ZEND_RECV_INIT.
|
#
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 ...
|
#
ddfb3d60 |
| 19-Sep-2019 |
Dmitry Stogov |
Fixed 32-bit JIT
|
#
cdd4e591 |
| 18-Sep-2019 |
Nikita Popov |
Don't make argument nullable based on AST null initializer Closes GH-4720.
|
#
2aefd112 |
| 18-Sep-2019 |
Dmitry Stogov |
Optimize access to thread local cache. This patch saves one CPU instruction on each "_tsrm_ls_cache" access in ZTS CLI/CGI/FPM builds. This reduce typical instruction sequence for EG(cur
Optimize access to thread local cache. This patch saves one CPU instruction on each "_tsrm_ls_cache" access in ZTS CLI/CGI/FPM builds. This reduce typical instruction sequence for EG(current_execute_data) access from 4 to 3 CPU instructions.
show more ...
|
#
628fd6ec |
| 09-Sep-2019 |
Dmitry Stogov |
clenup
|
#
f43fe067 |
| 09-Sep-2019 |
Dmitry Stogov |
Avoid hash value recalculation on each counter update
|
#
ee4b11c6 |
| 05-Sep-2019 |
Nikita Popov |
Detect calls to abstract methods in get_method() already Instead of checking for this during DO_FCALL, already detect this case during get_method()/get_static_method(), similar to visibi
Detect calls to abstract methods in get_method() already Instead of checking for this during DO_FCALL, already detect this case during get_method()/get_static_method(), similar to visibility checks. This causes a minor difference in behavior, in that arguments will no longer be evaluated. I think this is correct though (and consistent with visibility errors).
show more ...
|
#
24b1c244 |
| 30-Aug-2019 |
Nikita Popov |
JIT: Fix missing free on JMPZ_EX with op1 == res We need to free the operand before we overwrite it with the result.
|
#
cf7dd002 |
| 10-Jul-2019 |
Nikita Popov |
Drop support for JIT without SSE Closes GH-4388.
|
#
36235cf5 |
| 10-Jul-2019 |
Nikita Popov |
Read from original address References are derefed into FCARG1, which is later clobbered by the undef handling code. Make sure we load from the original address instead.
|
#
26431d19 |
| 10-Jul-2019 |
Nikita Popov |
Implement array access notice in JIT
|
#
db02d7ae |
| 10-Jul-2019 |
Dmitry Stogov |
Reduce cost for GC references to strings and resources in JIT
|
#
da8b583a |
| 05-Jul-2019 |
Nikita Popov |
Always generate interrupt check in jit Even if zend_interrupt_function is NULL, we still need to perform the interrupt check for timeouts (which do not use zend_interrupt_function).
|
#
4a8fe02c |
| 01-Jul-2019 |
Nikita Popov |
Undef opline result on mod/shift error in jit
|
#
b7ed2066 |
| 01-Jul-2019 |
Nikita Popov |
Fix out of bounds read in jit_fetch_obj_read
|
#
22b2d9d0 |
| 18-Jun-2019 |
Dmitry Stogov |
Fixed JIT failure, on ZTS build without global register vatriables
|
#
7a236b67 |
| 17-Jun-2019 |
Dmitry Stogov |
Attempt to fix JIT on Mac OSX ZTS build
|
#
4d90848d |
| 06-Jun-2019 |
Nikita Popov |
Don't verify arginfo types for internal functions To avoid duplicate type checks. In debug builds arginfo is still checked and will generate an assertions if the function doesn't sub
Don't verify arginfo types for internal functions To avoid duplicate type checks. In debug builds arginfo is still checked and will generate an assertions if the function doesn't subsequently throw an exception. Some test results change due to differences in zpp and arginfo error messages.
show more ...
|
#
5883dbcb |
| 13-Jun-2019 |
Dmitry Stogov |
Fixed incorect register allocation in ZTS build
|
#
3b27689d |
| 13-Jun-2019 |
Nikita Popov |
Fix helper call on 32-bit This is using the fast-call calling convention. Use FCARG1a and same code for 32-bit and 64-bit.
|
#
792e38d8 |
| 13-Jun-2019 |
Nikita Popov |
Fix bug #78154 with JIT
|