Nikita Popov
272a9f29f5
Merge branch 'PHP-7.1'
2017-06-23 17:33:36 +02:00
Nikita Popov
5b5a92b8b6
Fixed bug #74623
2017-06-23 17:32:45 +02:00
Nikita Popov
4948da178a
Make inference robust against infinite loop
...
Right now, if narrowing occurs on non-debug builds, inference can
easily go into an infinite loop. Prevent this, and add a pointer
that this should be reported as a bug.
2017-06-23 17:07:44 +02:00
Dmitry Stogov
68dc754998
Avoid string reallocations in html_entity_decode() and htmlspecialchars_decode()
2017-06-06 16:09:26 +03:00
Dmitry Stogov
81a6ee9aa4
Avoid string reallocations in preg_quote()
2017-06-06 13:56:19 +03:00
Dmitry Stogov
a0cc6d426f
New optimization pattern
2017-05-31 09:53:10 +03:00
Dmitry Stogov
da01fa3897
Merge branch 'PHP-7.1'
...
* PHP-7.1:
Fixed wrong condition
ext/ldap/test: Test that ldap_connect() uses defaults from ldap.conf (openldap)
ext/ldap: Allow default host from ldap.conf to work.
2017-05-31 00:41:12 +03:00
Dmitry Stogov
316aaca155
Merge branch 'PHP-7.0' into PHP-7.1
...
* PHP-7.0:
Fixed wrong condition
2017-05-31 00:40:57 +03:00
Dmitry Stogov
77cbf8a657
Fixed wrong condition
2017-05-31 00:40:33 +03:00
Dmitry Stogov
6043f76ad7
Added ZEND_FUNC_NUM_ARGS, ZEND_FUNC_GET_ARGS instructions, to implement corresponding builtin functions.
...
Special optimisation for "array_slice(INT, func_get_args())" pattern.
2017-05-30 13:23:17 +03:00
Dmitry Stogov
f00d1c72b4
Added ZEND_GET_CLASS, ZEMD_GET_CALLED_CLASS, ZEND_GET_TYPE instructions, to implement corresponding builtin functions.
2017-05-25 18:41:28 +03:00
Dmitry Stogov
cd953269d3
Added ZEND_COUNT instruction, to implement corresponding builtin.
2017-05-25 12:52:34 +03:00
Dmitry Stogov
89b3c9f647
Optimizer support for ZEND_IN_ARRAY
2017-05-24 23:37:35 +03:00
Dmitry Stogov
372397f518
Updated func info
2017-05-18 19:24:30 +03:00
Dmitry Stogov
a151d614ba
Added missing "successors_count" update.
2017-05-17 12:52:36 +03:00
Xinchen Hui
8cd870a9e0
Fixed hash val calculating
2017-04-19 17:15:34 +08:00
Xinchen Hui
187f42149d
Improve fix for #74456
2017-04-18 12:47:53 +08:00
Xinchen Hui
0a27a5ba8c
Merge branch 'PHP-7.1' of git.php.net:/php-src into PHP-7.1
...
* 'PHP-7.1' of git.php.net:/php-src:
Fix loop identification
2017-04-17 20:27:07 +08:00
Xinchen Hui
1837eea66d
Merge branch 'PHP-7.1'
...
* PHP-7.1:
Fixed bug #74456 (Segmentation error while running a script in CLI mode)
2017-04-17 20:26:57 +08:00
Xinchen Hui
d6315c2fbb
Fixed bug #74456 (Segmentation error while running a script in CLI mode)
...
Instead of make update_op1_by_const supports FETCH_LIST(CASE), I think
disable it is more safe for 7.1
2017-04-17 20:24:39 +08:00
Nikita Popov
4cd5e6816b
Drop dead zend_optimizer_lookup_cv() function
2017-04-17 12:20:25 +02:00
Nikita Popov
88c85cbd5c
Merge branch 'PHP-7.1'
2017-04-17 12:19:46 +02:00
Nikita Popov
abf16c18c7
Fix loop identification
...
When assigning loop headers, we should treat already detected
loops as collapsed to their loop header, instead of ignoring them.
This fixes the loop header of BB2 in mandel2 if live-range CFG
splitting is enabled.
2017-04-17 12:17:32 +02:00
Nikita Popov
7cd7305b1b
Merge branch 'PHP-7.1'
2017-04-15 12:36:02 +02:00
Nikita Popov
00c6ce0e00
Merge branch 'PHP-7.0' into PHP-7.1
2017-04-15 12:35:53 +02:00
Nikita Popov
0beccc51f1
Fix compact_literals of INIT_METHOD_CALL with CONST op1
2017-04-15 12:35:09 +02:00
Nikita Popov
7f5d47dfd1
Merge branch 'PHP-7.1'
2017-04-15 01:40:59 +02:00
Nikita Popov
6c2222796b
Improve fix for bug #74442
...
Make the check less conservative to be consistent with the other
cases.
2017-04-15 01:39:33 +02:00
Nikita Popov
feb828ffb0
Merge branch 'PHP-7.1'
2017-04-14 22:20:48 +02:00
Nikita Popov
2f22dffd1a
Fixed bug #74442
2017-04-14 22:20:32 +02:00
Nikita Popov
81b4bfcb96
Merge branch 'PHP-7.1'
2017-04-14 22:04:07 +02:00
Nikita Popov
3ffe2cd251
Fixed bug #74431
...
If the last instruction in a block is a NOP, then `new_opline`
here won't be a copy of `opline`, it will be a copy of the last
non-NOP opline. Avoid performing a spurious update by explicitly
checking for NOP.
2017-04-14 22:03:06 +02:00
Nikita Popov
07fe8616e6
Set flags on the right block
2017-04-11 00:04:07 +02:00
Nikita Popov
a4c7c55c0b
Move call/recv splitting into correct branch
2017-04-10 23:51:27 +02:00
Nikita Popov
ad8652818a
Implement jumptable optimization
2017-04-10 22:23:14 +02:00
Nikita Popov
d1a012b602
Support more than two successors in opcache CFG
2017-04-10 22:18:24 +02:00
Nikita Popov
eeb6cdf810
Merge branch 'PHP-7.1'
2017-04-10 22:12:05 +02:00
Nikita Popov
1df3099f2f
Merge branch 'PHP-7.0' into PHP-7.1
2017-04-10 22:11:47 +02:00
Nikita Popov
6f950e83eb
Fix JMPZ+JMP => NOP+JMP optimization
2017-04-10 22:09:34 +02:00
Xinchen Hui
36848f6e08
Merge branch 'PHP-7.1'
...
* PHP-7.1:
Update NEWS
Remove unused var
Fix invalid free of persistent results on error/connection loss in mysqlnd (bug 74376)
2017-04-07 15:21:57 +08:00
Xinchen Hui
e656455eae
Remove unused var
2017-04-07 15:21:19 +08:00
Dmitry Stogov
bd78dc578e
Expose zend_ssa_is_no_val_use()
2017-04-03 16:57:29 +03:00
Thomas Punt
9f08aff3fd
Remove superfluous allocation checks around ZMM-based functions
2017-04-02 00:58:19 +02:00
Dmitry Stogov
f07e4c033c
Allow SSA construction with source information about CV used as result (DFG fix)
2017-03-30 21:24:29 +03:00
Dmitry Stogov
6af1ffb57d
Allow SSA construction with source information about CV used as result
2017-03-30 20:14:01 +03:00
Nikita Popov
d6f70f0ee3
Disable block pass for large functions
...
(Backport of 7ea261685f
to 7.0.)
2017-03-28 22:07:37 +02:00
Nikita Popov
d3aac6f810
Merge branch 'PHP-7.1'
2017-03-17 12:54:11 +01:00
Nikita Popov
7ea261685f
Disable block pass for large functions
...
This is the last fix for bug #74250 .
2017-03-17 12:49:20 +01:00
Sebastian Bergmann
6d748b43ae
Merge branch 'PHP-7.1'
2017-03-16 19:10:23 +01:00
Sebastian Bergmann
ccc35d1903
Fugbix typo
2017-03-16 19:10:07 +01:00