Dmitry Stogov
55cc280429
Backported call frame initialization improvement
2019-04-12 02:35:42 +03:00
Dmitry Stogov
39505764ad
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Replace "ZEND_CALL_CTOR" hack by additional live-range
2019-04-12 01:01:47 +03:00
Dmitry Stogov
88a2268d6b
Replace "ZEND_CALL_CTOR" hack by additional live-range
2019-04-12 00:49:45 +03:00
Dmitry Stogov
5f46d2180c
Merge branch 'master' of git.php.net:php-src
...
* 'master' of git.php.net:php-src:
Use zend_quiet_write instead of ZEND_IGNORE_VALUE
Suppress warnings using zend_quiet_write
Don't build JIT if the host architecture doesn't support it
Fix incompatible pointer warning in zend_test
Mark zend_jit_print_regset as unused
Suppress write() warnings in jit_perf_dump.c
Generate ZEND_COUNT for sizeof()
Make tsrm_env_lock() void
2019-04-11 13:26:47 +03:00
Nikita Popov
8f441c90ca
Merge branch 'PHP-7.4'
2019-04-11 10:49:38 +02:00
Nikita Popov
30df87f77d
Generate ZEND_COUNT for sizeof()
...
sizeof() is an alias of count(), so we should generate the same
code for them.
2019-04-11 10:48:52 +02:00
Dmitry Stogov
c97e3158ed
Check for ZEND_CALL_RELEASE_THIS only if ZEND_CALL_CLOSURE is not set
2019-04-11 11:19:09 +03:00
Dmitry Stogov
cc900edd77
Simplify call frame initialization
2019-04-11 02:08:32 +03:00
Nikita Popov
addd5a1693
Merge branch 'PHP-7.4'
2019-04-08 10:20:17 +02:00
Nikita Popov
e86820eb56
Fix invalid function by-ref prop assign handling
2019-04-08 10:18:26 +02:00
Dmitry Stogov
5b34c87d18
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Optimized "smart branch" instructions
2019-04-05 00:26:20 +03:00
Dmitry Stogov
d6848625d7
Optimized "smart branch" instructions
2019-04-05 00:25:45 +03:00
Dmitry Stogov
0deb6419e8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Make is_identical() functions return zend_bool (instead of int)
2019-04-04 18:18:52 +03:00
Dmitry Stogov
9038d5c6ee
Make is_identical() functions return zend_bool (instead of int)
2019-04-04 18:18:12 +03:00
Dmitry Stogov
c4d5d26df3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
unused variable
2019-04-04 17:52:42 +03:00
Dmitry Stogov
575c3576a7
unused variable
2019-04-04 17:52:17 +03:00
Dmitry Stogov
c617fb78ab
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Improved comparison opcode handlers
2019-04-02 23:47:03 +03:00
Dmitry Stogov
9cb926d8d1
Improved comparison opcode handlers
2019-04-02 23:46:21 +03:00
Dmitry Stogov
71413747c8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed typo
2019-03-20 01:32:01 +03:00
Dmitry Stogov
14359eb7eb
Fixed typo
2019-03-20 01:31:35 +03:00
Dmitry Stogov
61548042f7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
micro-optimization
2019-03-19 02:02:37 +03:00
Dmitry Stogov
9357953bab
micro-optimization
2019-03-19 02:02:14 +03:00
Nikita Popov
513b76794b
Make zpp failures always throw, independent of strict_types
...
Previously zend_parse_parameters (and FastZPP) would handle invalid
arguments depending on strict_types: With strict_types=1, a TypeError
is thrown, with strict_types=0 a warning is thrown and (usually) NULL
is returned. Additionally, some functions (constructors always and
other methods sometimes) opt-it to throwing regardless of strict_types.
This commit changes zpp to always generate a TypeError exception in
PHP 8.
2019-03-11 11:32:20 +01:00
Dmitry Stogov
1b281f801e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Avoid useless code duplication, because of unused specialization
2019-02-15 17:52:59 +03:00
Dmitry Stogov
d4bef4ce7b
Avoid useless code duplication, because of unused specialization
2019-02-15 17:49:39 +03:00
Dmitry Stogov
89c94161ea
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Reduce slow code size
2019-02-15 17:03:49 +03:00
Dmitry Stogov
78a1d76962
Reduce slow code size
2019-02-15 17:03:04 +03:00
Nikita Popov
faaf510fa4
Merge branch 'PHP-7.4'
2019-02-14 14:02:32 +01:00
Nikita Popov
adf2f39745
Fix build without global regs
2019-02-14 14:01:39 +01:00
Dmitry Stogov
e17667abd5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
More accurate handling of global registers (allow VM with single global register)
2019-02-12 17:39:55 +03:00
Dmitry Stogov
626bc3a2de
More accurate handling of global registers (allow VM with single global register)
2019-02-12 17:39:02 +03:00
Nikita Popov
a302d11610
Don't silence fatal errors with @
2019-02-11 16:17:55 +01:00
Dmitry Stogov
bb3a3c1570
Simplify checks
2019-02-07 22:08:51 +03:00
Dmitry Stogov
f45e0ce928
Remove ZEND_OVERLOADED_FUNCTION and corresponding call_method object handler
2019-02-07 21:05:46 +03:00
Nikita Popov
7480f4ebae
Merge branch 'PHP-7.4'
2019-02-07 10:06:37 +01:00
Nikita Popov
1a4ffcd2b4
Fix DIM_OBJ specialization in zend_vm_get_opcode_handler_func
...
DIM_OBJ also specializes over ASSIGN_STATIC_PROP nowadays.
2019-02-07 10:06:25 +01:00
Dmitry Stogov
1a304d357c
More accurate get_properties() usage.
2019-02-04 13:20:25 +03:00
Dmitry Stogov
b7f05885e8
Reuse cache_slot
2019-02-04 13:20:25 +03:00
Dmitry Stogov
91ef4124e5
Refactor zend_object_handlers API to pass zend_object* and zend_string* insted of zval(s).
2019-02-04 13:20:25 +03:00
Nikita Popov
9c5ab992ac
Merge branch 'PHP-7.4'
2019-01-31 09:40:01 +01:00
Nikita Popov
340c6d3927
Revert "Don't silence fatal errors with @"
...
This reverts commit abd36289e2
.
This wasn't ready for merging yet, there are still some test
failures.
2019-01-31 09:39:10 +01:00
Joe Watkins
839bdf12ee
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't silence fatal errors with @
2019-01-31 07:11:18 +01:00
Nikita Popov
abd36289e2
Don't silence fatal errors with @
2019-01-31 07:11:05 +01:00
Zeev Suraski
a81202ac49
Adios, yearly copyright ranges
2019-01-30 11:48:28 +01:00
Zeev Suraski
02557f87bc
Adios, yearly copyright ranges
2019-01-30 11:23:29 +02:00
Nikita Popov
6c73b50cf6
Remove static calls to non-static methods
2019-01-30 09:19:02 +01:00
Nikita Popov
a50198d0fe
Implement ??= operator
...
RFC: https://wiki.php.net/rfc/null_coalesce_equal_operator
$a ??= $b is $a ?? ($a = $b), with the difference that $a is only
evaluated once, to the degree that this is possible. In particular
in $a[foo()] ?? $b function foo() is only ever called once.
However, the variable access themselves will be reevaluated.
2019-01-22 11:12:04 +01:00
Dmitry Stogov
0941f25811
Removed useless Z_REFCOUNTED_P() checks.
2019-01-17 10:53:58 +03:00
Dmitry Stogov
8661b6dd5d
Reduce slow code size
2019-01-16 14:26:32 +03:00
Dmitry Stogov
fd27fd4a15
Fixed and improved incorrect usage of value_type argument.
2019-01-16 11:06:19 +03:00