Dmitry Stogov
0b6c294e03
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed GOTO VM
2019-07-01 15:51:36 +03:00
Dmitry Stogov
39a0854307
Fixed GOTO VM
2019-07-01 15:50:53 +03:00
Dmitry Stogov
e4f4be1a05
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Reduce overhead of delayed early binding
2019-06-25 14:21:23 +03:00
Dmitry Stogov
e8f1f70101
Reduce overhead of delayed early binding
2019-06-25 14:20:41 +03:00
Dmitry Stogov
ca22c456ca
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Keep lowercased parent class name as second argument of DECLARE_CLASS to avoid extra work at run-time
2019-06-25 11:32:03 +03:00
Dmitry Stogov
759f4ecd8b
Keep lowercased parent class name as second argument of DECLARE_CLASS to avoid extra work at run-time
2019-06-25 11:30:58 +03:00
Dmitry Stogov
e18c60cd8d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug 78175 (Preloading must store default values of static variables and properties)
2019-06-24 20:34:05 +03:00
Dmitry Stogov
0f29fb5cd8
Fixed bug 78175 (Preloading must store default values of static variables and properties)
2019-06-24 20:32:27 +03:00
Dmitry Stogov
53bcc2339c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Cleanup
2019-06-21 11:46:33 +03:00
Dmitry Stogov
e1e8e670df
Cleanup
2019-06-21 11:43:17 +03:00
Nikita Popov
3645292235
Merge branch 'PHP-7.4'
2019-06-19 15:09:39 +02:00
Nikita Popov
ed2a242317
Fix signed shift UB
2019-06-19 15:09:00 +02:00
Nikita Popov
4d90848d68
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.
2019-06-17 11:46:28 +02:00
Nikita Popov
719a19d825
Merge branch 'PHP-7.4'
2019-06-13 10:59:18 +02:00
Nikita Popov
cac6b04113
Fixed bug #78154
2019-06-13 10:59:01 +02:00
Joe Watkins
f93cd21b52
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Revert "micro-optimization"
This micro optimization caused several bugs in at least Xdebug, while
i_init_func_execute_data is not exported, APIs that are exported call it
this makes their use awkward for no real gain.
2019-06-12 20:21:59 +02:00
Joe Watkins
175c7bf6fe
Revert "micro-optimization"
...
This reverts commit 374f769982
.
2019-06-12 20:04:47 +02:00
Nikita Popov
e4fae9c061
Merge branch 'PHP-7.4'
2019-06-11 13:16:38 +02:00
Nikita Popov
89b2d88659
Register class before fetching parent
...
We want the class declaration to be available while compiling the
parent class.
2019-06-11 13:09:33 +02:00
Dmitry Stogov
2b5a3afead
Merge branch 'PHP-7.4'
...
* PHP-7.4:
micro-optimization
2019-06-10 16:43:36 +03:00
Dmitry Stogov
374f769982
micro-optimization
2019-06-10 16:43:20 +03:00
Nikita Popov
00d549d73d
Merge branch 'PHP-7.4'
2019-06-06 14:56:58 +02:00
Nikita Popov
7780ba9660
Try to fix Windows build
2019-06-06 14:56:42 +02:00
Dmitry Stogov
dbd1ecd09f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Support for exceptions thrown during "Array to string conversion" error processing
Reduce over-specialization for quite seldom instructions
2019-06-06 14:10:23 +03:00
Dmitry Stogov
a95014dc10
Reduce over-specialization for quite seldom instructions
2019-06-06 13:13:09 +03:00
Dmitry Stogov
e029cc4dd4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Cheaper checks for exceptions thrown from __toString()
2019-06-06 02:23:17 +03:00
Dmitry Stogov
457392fa64
Cheaper checks for exceptions thrown from __toString()
2019-06-06 01:47:22 +03:00
Dmitry Stogov
5f3ee3afe7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Prevent generation of specialized ZEND_ASSIGN_OP_..._STATIC_PROP handlers, that call unspecialized helper, anyway.
2019-06-05 17:38:36 +03:00
Dmitry Stogov
3f4dfe1877
Prevent generation of specialized ZEND_ASSIGN_OP_..._STATIC_PROP handlers, that call unspecialized helper, anyway.
2019-06-05 17:38:13 +03:00
Nikita Popov
7686b0b889
Merge branch 'PHP-7.4'
2019-06-05 14:53:50 +02:00
Nikita Popov
a31f46421d
Allow exceptions in __toString()
...
RFC: https://wiki.php.net/rfc/tostring_exceptions
And convert some object to string conversion related recoverable
fatal errors into Error exceptions.
Improve exception safety of internal code performing string
conversions.
2019-06-05 14:25:07 +02:00
Dmitry Stogov
f43e483ffb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed compilation warning
2019-05-31 01:00:12 +03:00
Dmitry Stogov
2915a32f37
Fixed compilation warning
2019-05-31 00:59:52 +03:00
Dmitry Stogov
d7710ef517
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't specialize "cold" handlers
2019-05-31 00:32:18 +03:00
Dmitry Stogov
1814308e49
Don't specialize "cold" handlers
2019-05-31 00:31:57 +03:00
Dmitry Stogov
8491800eaf
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Removed useless specialization. Specialized handlers called not specialized helpers.
2019-05-31 00:16:20 +03:00
Dmitry Stogov
4e567ed1da
Removed useless specialization. Specialized handlers called not specialized helpers.
2019-05-31 00:15:25 +03:00
Dmitry Stogov
10cf2c07f2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Reduce register pressure by reloading values on CPUs with few general purpose registers
2019-05-31 00:15:18 +03:00
Dmitry Stogov
cf388033d5
Reduce register pressure by reloading values on CPUs with few general purpose registers
2019-05-31 00:14:10 +03:00
Dmitry Stogov
0a6a350371
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Disable "bad" optimisations only for emulation loop
2019-05-30 20:43:17 +03:00
Dmitry Stogov
ee56552913
Disable "bad" optimisations only for emulation loop
2019-05-30 20:35:30 +03:00
Dmitry Stogov
c64fe84f8b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Avoid double copying
2019-05-28 13:35:29 +03:00
Dmitry Stogov
b2cb6a4a27
Avoid double copying
2019-05-28 13:35:00 +03:00
Nikita Popov
45c663a9d3
Merge branch 'PHP-7.4'
2019-05-27 17:13:00 +02:00
Nikita Popov
fd23f9104a
BIND_STATIC of implicit binding may be undef
...
Even though we don't need it at runtime, add the BIND_IMPLICIT
flag to BIND_STATIC as well, so we can distinguish this case in
type inference.
This fixes a JIT miscompile in arrow_functions/002.phpt.
2019-05-27 17:12:20 +02:00
Nikita Popov
f106f57164
Merge branch 'PHP-7.4'
2019-05-13 14:43:10 +02:00
CHU Zhaowei
e829d08729
Implement spread operator in arrays
...
RFC: https://wiki.php.net/rfc/spread_operator_for_array
Closes GH-3640.
2019-05-13 14:42:43 +02:00
Nikita Popov
79f41944ba
Merge branch 'PHP-7.4'
2019-05-02 15:07:04 +02:00
Nikita Popov
f3e5bbe6f3
Implement arrow functions
...
Per RFC: https://wiki.php.net/rfc/arrow_functions_v2
Co-authored-by: Levi Morrison <levim@php.net>
Co-authored-by: Bob Weinand <bobwei9@hotmail.com>
2019-05-02 15:04:03 +02:00
Dmitry Stogov
f1767e23f4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't initialize return value before calling user functions
2019-04-18 02:32:06 +03:00