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
797ee05a3c
Merge branch 'PHP-7.1'
2017-04-10 22:26:42 +02:00
Nikita Popov
9493ebbab2
Merge branch 'PHP-7.0' into PHP-7.1
2017-04-10 22:26:35 +02:00
Nikita Popov
6e23f2bceb
Forgot to commit test file...
2017-04-10 22:26:14 +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
Rowan Collins
1b565f1393
Change 'undefined constant' from E_NOTICE to E_WARNING and mention deprecation
...
Implements RFC "Deprecate and Remove Bareword (Unquoted) Strings"
[https://wiki.php.net/rfc/deprecate-bareword-strings ]
2017-03-23 18:52:43 +01: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
Nikita Popov
7ea854b1df
Merge branch 'PHP-7.1'
2017-03-16 18:15:13 +01:00
Nikita Popov
052aa466e1
Further optimize worklist management
...
Instead of always popping the first elements, do multiple complete
iterations of the worklist until it is empty.
2017-03-16 18:11:27 +01:00
Nikita Popov
69dc088c36
Merge branch 'PHP-7.1'
2017-03-16 17:40:33 +01:00
Nikita Popov
e60515f3b8
Slightly optimize worklist management
...
Avoid scanning the worklist twice on every iteration.
2017-03-16 17:32:27 +01:00
Nikita Popov
f1f68b60f5
Optimize DJ spanning tree back-edge check
...
Instead of walking the DJ spanning tree upwards, record entry and
exit times during the DFS and use these to determine whether CJ
edges are sp-back edges.
2017-03-16 17:26:20 +01:00
Nikita Popov
6633e8492e
Sort blocks in loop identification
...
The previous implementation was doing O(blocks*levels) iterations,
which for a linear-ish domtree is O(blocks^2). Avoid this by sorting
the blocks by decreasing level upfront.
2017-03-16 16:49:36 +01:00
Nikita Popov
da223b9500
Merge branch 'PHP-7.1'
2017-03-16 12:34:36 +01:00
Nikita Popov
9331be7d6a
Use call_map to avoid linear call lookup
2017-03-16 12:33:57 +01:00
Anatol Belski
fe8112e8f8
drop redundant checks
2017-03-07 15:42:19 +01:00
Anatol Belski
2cfd64cad8
move to hash API
2017-03-07 13:41:12 +01:00
Dmitry Stogov
6a31872307
Merge branch 'PHP-7.1'
...
* PHP-7.1:
Fixed pointer allignment
2017-03-07 10:18:57 +03:00
Dmitry Stogov
d9231b1667
Fixed pointer allignment
2017-03-07 10:18:34 +03:00
Dmitry Stogov
b273a8cbe4
Ensure pointer alignment.
2017-03-07 09:48:18 +03:00
Dmitry Stogov
e113b6784a
Ensure pointer alignment.
2017-03-06 17:09:05 +03:00
Anatol Belski
c698299550
Interned strings unification for TS/NTS
...
Hereby, interned strings are supported in thread safe PHP. The patch
implements two types of interned strings
- interning per process, strings are not freed till process end
- interning per request, strings are freed at request end
There is no runtime interning.
With Opcache, all the permanent iterned strings are copied into SHM on
startup, additional copying into SHM might happen on demand.
2017-03-04 10:39:13 +01:00
Dmitry Stogov
a07272e5b6
Merge branch 'PHP-7.1'
...
* PHP-7.1:
Fixed file-cache (Zend/tests/unused_shared_static_variables.phpt)
2017-03-03 16:13:03 +03:00
Dmitry Stogov
6158b517c4
Merge branch 'PHP-7.0' into PHP-7.1
...
* PHP-7.0:
Fixed file-cache (Zend/tests/unused_shared_static_variables.phpt)
2017-03-03 16:12:41 +03:00
Dmitry Stogov
648b756f35
Fixed file-cache (Zend/tests/unused_shared_static_variables.phpt)
2017-03-03 16:10:46 +03:00
Dmitry Stogov
9276eb613c
Fixed file-cache support (serialization/deserialization of zend_type)
2017-03-03 12:26:49 +03:00
Xinchen Hui
1a1b722b5c
Merge branch 'PHP-7.1'
...
* PHP-7.1:
Add test only (bug doesn't exists in 7.1)
Fixed bug #74152 (if statement says true to a null variable)
2017-02-23 12:47:40 +08:00
Xinchen Hui
be60d159b6
Add test only (bug doesn't exists in 7.1)
2017-02-23 12:47:15 +08:00
Xinchen Hui
330a7b62c3
Fixed bug #74152 (if statement says true to a null variable)
2017-02-23 12:33:17 +08:00
Xinchen Hui
1760b031ea
Merge branch 'PHP-7.1'
...
* PHP-7.1:
Update NEWs
Fixed bug #74019 (Segfault with list)
2017-02-10 14:26:35 +08:00
Xinchen Hui
0b7fa040e9
Merge branch 'PHP-7.0' into PHP-7.1
...
* PHP-7.0:
Fixed bug #74019 (Segfault with list)
2017-02-10 14:25:29 +08:00
Xinchen Hui
185304a61e
Fixed bug #74019 (Segfault with list)
2017-02-10 14:24:01 +08:00
Nikita Popov
a8239ff232
Deprecate mbstring.func_overload
2017-02-03 21:02:52 +01:00
Nikita Popov
eaeecc523b
Deprecate create_function()
2017-02-03 18:52:57 +01:00
Anatol Belski
46bdb637ec
Merge branch 'PHP-7.1'
...
* PHP-7.1:
Fixed bug #73983 crash on finish work with phar in cli + opcache
2017-01-30 12:47:29 +01:00