Dmitry Stogov
28a016a6dc
Fixed SSA construction for CFG with unreachable BB
2015-12-23 03:52:38 +03:00
Dmitry Stogov
1e3ab15843
Fixed test on 32-bit systems
2015-12-23 03:52:01 +03:00
Dmitry Stogov
e82a73573b
Remove live-range if the corresponding definition is deleted
2015-12-23 03:46:40 +03:00
Dmitry Stogov
dd3cb33ef0
Support for incompletely constructed SSA
2015-12-23 03:20:28 +03:00
Nikita Popov
fdfbeeb296
Always create ARRAY_ELEM ssa var for ELEM_REF
2015-12-22 23:08:26 +01:00
Dmitry Stogov
5c1c8f1dec
Merge branch 'PHP-7.0'
...
* PHP-7.0:
Fixed incorrect setting on 32-bit systems
2015-12-22 21:33:07 +03:00
Dmitry Stogov
f3bf95eb81
Merge branch 'PHP-5.6' into PHP-7.0
...
* PHP-5.6:
Fixed incorrect setting on 32-bit systems
2015-12-22 21:32:45 +03:00
Dmitry Stogov
a57a08e791
Fixed incorrect setting on 32-bit systems
2015-12-22 21:31:28 +03:00
Ilia Alshanetsky
b92ae5d7bc
Fixed test
2015-12-22 18:12:56 +01:00
Ilia Alshanetsky
f705063e23
Added validation to parse_url() to prohibit restricted characters inside login/pass components based on RFC3986
2015-12-22 18:12:56 +01:00
Julien Pauli
c0eea8a8b7
Merge branch 'PHP-7.0'
...
* PHP-7.0:
Updated NEWS
Fix #70720
Align NEWS entry format
2015-12-22 16:28:12 +01:00
Julien Pauli
332b778d68
Merge branch 'PHP-5.6' into PHP-7.0
...
* PHP-5.6:
Fix #70720
Align NEWS entry format
2015-12-22 16:26:30 +01:00
Julien Pauli
ff7ed9021c
Fix #70720
2015-12-22 16:25:51 +01:00
Dmitry Stogov
a75c6d5fb2
Skip "useless" SSA variables for INIT_ARRAY, ADD_ARRAY_ELEMENT, FE_RESET_R
2015-12-22 17:35:08 +03:00
Dmitry Stogov
b4b6d58990
Add ability to prevent "useless" SSA variable creation for "refcounting inference".
2015-12-22 16:43:37 +03:00
Anatol Belski
e8f1db14d5
Merge branch 'PHP-7.0'
...
* PHP-7.0:
release only appropriate string
2015-12-22 14:37:05 +01:00
Anatol Belski
4037ba5847
release only appropriate string
2015-12-22 14:33:19 +01:00
Dmitry Stogov
83cd828469
Make RC1/RCN inference more accurate (it's probably not 100% correct anyway)
2015-12-22 15:35:17 +03:00
Xinchen Hui
e9b2febd61
Merge branch 'PHP-7.0'
...
* PHP-7.0:
Fixed bug #71190 (substr_replace converts integers in original $search array to strings)
2015-12-22 12:29:00 +08:00
Xinchen Hui
d63ae2c382
Fixed bug #71190 (substr_replace converts integers in original $search array to strings)
2015-12-22 12:13:28 +08:00
Xinchen Hui
b216481a96
Merge branch 'PHP-7.0'
...
* PHP-7.0:
Fixed #71188 (str_replace converts integers in original $search array to strings)
2015-12-22 11:07:42 +08:00
Xinchen Hui
3524849f77
Fixed #71188 (str_replace converts integers in original $search array to strings)
2015-12-22 11:07:30 +08:00
Dmitry Stogov
d952eb753c
Get rid of MAY_BE_DEF
2015-12-21 19:46:55 +03:00
Dmitry Stogov
ae303cf82f
Split MAY_BE_NULL from MAY_BE_UNDEF
2015-12-21 18:39:24 +03:00
Nikita Popov
88eae43ff9
Remove uses of VARs in extended_value
...
The DECLARE_(ANON_)INHERITED_CLASS(_DELAYED) opcodes were
referencing the parent ce VAR through extended_value. This is
hacky and we can't track the def-use chain in SSA.
To avoid this, the layout of declaration opcodes is changed
as follows: op1 points to the lcname and rtd_key literals, in
that order. (For anon/lambda declarations only one of lcname or
rtd_key is present.) This frees up op2, which is now used to
reference the parent ce VAR in inheriting declarations. The
jmp offset for anon class declarations is moved frop op2 to
extended_value.
The changes were applied both to class and function declarations
to keep everything symmetric.
2015-12-21 14:44:42 +01:00
Xinchen Hui
952748a606
Merge branch 'PHP-7.0'
...
* PHP-7.0:
Fixed typo
2015-12-21 18:13:11 +08:00
Xinchen Hui
4531d2c591
Fixed typo
2015-12-21 18:12:57 +08:00
Xinchen Hui
4f48704014
Merge branch 'PHP-7.0'
...
* PHP-7.0:
Fixed bug #71178 (preg_replace with arrays creates [0] in replace array if not already set)
Align #71165 entry format
2015-12-21 18:11:01 +08:00
Xinchen Hui
817513af4e
Fixed bug #71178 (preg_replace with arrays creates [0] in replace array if not already set)
2015-12-21 18:10:48 +08:00
Nikita Popov
420ff42bc0
Protect against overflows in pi constraints
2015-12-20 12:56:05 +01:00
Yasuo Ohgaki
0cf7143441
Add session module test
2015-12-20 11:39:57 +09:00
Nikita Popov
0da1378a88
long -> zend_long in range inference
2015-12-20 00:06:12 +01:00
Nikita Popov
549d7d4876
Fix Pi constraint for -LONG_MIN adjustments
...
-LONG_MIN == LONG_MIN so bad things will happen.
Example of JIT miscompile:
function test($n) {
if ($n + PHP_INT_MIN == 0) {
$n2 = (int) ($n + PHP_INT_MAX);
var_dump($n2);
}
}
test(PHP_INT_MAX + 1);
2015-12-20 00:06:12 +01:00
Nikita Popov
c9ea8fef96
Extrace find_adjusted_tmp_var() function
...
This code was duplicated for op1 and op2
2015-12-20 00:06:12 +01:00
Nikita Popov
fc68094497
Simplify bf/bt computation in pi placement
...
The meaning of the successors is well-defined, no need to check it.
2015-12-20 00:03:52 +01:00
Nikita Popov
d7424a5b04
Fix typo in pi placement
2015-12-20 00:03:52 +01:00
Andrea Faulds
78155068e2
Merge branch 'PHP-7.0'
2015-12-18 19:32:20 +00:00
Andrea Faulds
8d217db369
Fix bug #66179
...
This also fixes ext/standard/tests/general_functions/var_export-locale.phpt
to actually run the floating-point section.
2015-12-18 19:31:21 +00:00
Nikita Popov
7cc3089d8f
Clone cannot return reference
2015-12-18 17:37:13 +01:00
Nikita Popov
8ca21876e1
Fix zend_get_func_info()
2015-12-18 17:37:13 +01:00
Xinchen Hui
56b8f47491
Merge branch 'PHP-7.0'
...
Conflicts:
NEWS
2015-12-19 00:30:35 +08:00
Xinchen Hui
8f9af36da3
Fixed bug #71144 (Sementation fault when using cURL with ZTS)
2015-12-19 00:29:19 +08:00
Xinchen Hui
916f10ac31
Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0
2015-12-19 00:20:18 +08:00
Xinchen Hui
750da15bc7
Merge branch 'PHP-7.0'
2015-12-19 00:19:34 +08:00
Xinchen Hui
512498d083
Fixed test skip
2015-12-19 00:19:21 +08:00
Xinchen Hui
c555d90f4f
Implemented FR #71159 (Upgraed bundled SQLite lib to 3.9.2)
2015-12-18 23:49:59 +08:00
Dmitry Stogov
8136e4572e
Fixed dump format
2015-12-18 17:18:13 +03:00
Dmitry Stogov
f9b5345a98
Fixed compilation
2015-12-18 16:53:31 +03:00
Xinchen Hui
af871f61dc
Merge branch 'PHP-7.0'
...
* PHP-7.0:
Improved fix for #71127
2015-12-18 17:42:11 +08:00
Xinchen Hui
2f47e9872e
Merge branch 'PHP-5.6' into PHP-7.0
...
* PHP-5.6:
Improved fix for #71127
Conflicts:
ext/opcache/Optimizer/pass1_5.c
2015-12-18 17:41:42 +08:00