Nikita Popov
9331be7d6a
Use call_map to avoid linear call lookup
2017-03-16 12:33:57 +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
141d1ba980
Introduced "zend_type" - an abstraction for type-hinting representation.
2017-01-13 11:37:46 +03:00
Sammy Kaye Powers
dac6c639bb
Update copyright headers to 2017
2017-01-04 11:23:42 -06:00
Sammy Kaye Powers
9e29f841ce
Update copyright headers to 2017
2017-01-02 09:30:12 -06:00
Nikita Popov
6c614cb14c
Merge branch 'PHP-7.1'
2016-12-06 22:26:36 +01:00
Nikita Popov
76c4a3db08
Fix bug #73668
...
Not bothering to implement special handling to get an accurate
range for this case.
2016-12-06 22:25:35 +01:00
Nikita Popov
89f8a34483
Merge branch 'PHP-7.1'
2016-12-06 22:12:01 +01:00
Nikita Popov
d7e7f74b24
Factor out common binary op code in range inference
...
Instead of repeating the same code for binary ops and their
compound assignment variants, factor the range computation out
into a separate function.
2016-12-06 22:09:44 +01:00
Dmitry Stogov
7abf3b56f5
Merge branch 'PHP-7.1'
...
* PHP-7.1:
Fixed access to uninitialized value
2016-12-01 13:26:26 +03:00
Dmitry Stogov
54244ba565
Fixed access to uninitialized value
2016-12-01 13:25:50 +03:00
Nikita Popov
0004f7e86d
Merge branch 'PHP-7.1'
2016-11-17 13:48:07 +01:00
Nikita Popov
226b82b127
RC inference fixes
2016-11-17 13:47:36 +01:00
Dmitry Stogov
f62d876e56
Merge branch 'PHP-7.1'
...
* PHP-7.1:
Fixed type ingference
2016-11-16 20:49:20 +03:00
Dmitry Stogov
a04d9e0f1b
Fixed type ingference
2016-11-16 20:49:00 +03:00
Kalle Sommer Nielsen
4cef0ead49
Fix Windows build
2016-11-12 11:18:25 +01:00
Nikita Popov
976d72a3bd
Merge branch 'PHP-7.1'
2016-11-10 14:59:56 +01:00
Nikita Popov
0378121c64
Range inference cleanup
...
Replace inline #ifdefs with some macros. Fix build if NEG_RANGE is
disabled. Fix some typos. Add some comments.
2016-11-10 14:55:40 +01:00
Dmitry Stogov
dcf4bdb844
Merge branch 'PHP-7.1'
...
* PHP-7.1:
Fixed reference-counter inference
2016-10-31 19:51:50 +03:00
Dmitry Stogov
e696927e48
Fixed reference-counter inference
2016-10-31 19:51:19 +03:00
Dmitry Stogov
5551cccc92
Merge branch 'PHP-7.1'
...
* PHP-7.1:
Fixed type inference rules.
Update NEWS
2016-10-18 12:41:10 +03:00
Dmitry Stogov
ac6134fb64
Fixed type inference rules.
2016-10-18 12:39:33 +03:00
Nikita Popov
f58701fe6f
Merge branch 'PHP-7.1'
2016-10-16 00:04:23 +02:00
Nikita Popov
659cc278e2
Various RC inference fixes
2016-10-15 23:58:29 +02:00
Dmitry Stogov
e92a18dcd5
Fixed referencecounter inference rules
...
(cherry picked from commit 6046a99b97
)
2016-10-14 01:24:46 +02:00
Dmitry Stogov
233992409b
Fixed referencecounter inference rules
...
(cherry picked from commit fae7d6b9bb
)
2016-10-14 01:24:23 +02:00
Dmitry Stogov
6046a99b97
Fixed referencecounter inference rules
2016-10-11 15:43:23 +03:00
Dmitry Stogov
fae7d6b9bb
Fixed referencecounter inference rules
2016-10-11 01:58:30 +03:00
Dmitry Stogov
38e765d710
Merge branch 'PHP-7.1'
...
* PHP-7.1:
Removed deprecated flag
Fixed information about possible return value
2016-10-10 11:49:12 +03:00
Dmitry Stogov
3760bc5407
Removed deprecated flag
2016-10-10 11:48:29 +03:00
Dmitry Stogov
f924893ab9
Merge branch 'PHP-7.1'
...
* PHP-7.1:
Updated reference-counting inferece rules. The previous rules refected PHP-5 behavior and were completely wrong for PHP-7. (e.g. scalars don't have reference counters at all). This change shouldn't affect anything, because results of this inference are not used yet.
Fix NEWS after re-roll of RC3
2016-10-06 11:16:43 +03:00
Dmitry Stogov
b2d53e47ed
Updated reference-counting inferece rules.
...
The previous rules refected PHP-5 behavior and were completely wrong for PHP-7. (e.g. scalars don't have reference counters at all).
This change shouldn't affect anything, because results of this inference are not used yet.
2016-10-06 11:08:01 +03:00
Dmitry Stogov
c218c4f01e
Special handling for $php_errormsg and $http_response_header.
2016-09-30 02:41:08 +03:00
Nikita Popov
8c26762baf
Merge branch 'PHP-7.1'
2016-09-24 22:46:43 +02:00
Nikita Popov
c7651c2396
Fix a couple of ASSIGN_DIM/OBJ inference bugs
...
Account for possible null return values better.
2016-09-24 22:43:27 +02:00
Nikita Popov
db801763e4
Add range inference for ZEND_STRLEN
...
On 32-bit systems we conservatively allow negative lengths.
On 64-bit systems, the range could additionally be restricted to
the canonical 48-bit size.
2016-09-24 22:43:27 +02:00
Dmitry Stogov
902e9ad014
Special handling for $php_errormsg and $http_response_header.
2016-09-15 03:07:31 +03:00
Dmitry Stogov
8cce8172af
Merge branch 'PHP-7.1'
...
* PHP-7.1:
Fixed type inference bug
2016-09-07 11:36:44 +03:00
Dmitry Stogov
6aa07c9083
Fixed type inference bug
2016-09-07 11:36:14 +03:00
Nikita Popov
daa2b75c76
Fix some sizeof(zend_long) > sizeof(size_t) issues
...
Fix a couple of mistakes that are only relevant if
sizeof(zend_long) > sizeof(size_t).
* Fix cast order in string offset check: Negation should happen
after the (zend_long) cast, otherwise sign extension does not
occur.
* Use Z_UL in zend_inference.
* Use aligned size for HT_USED_SIZE in zend_persist: The issue is
that on x86-32 uint64_t is considered to be 4-aligned, so the
alignment assumption does not hold.
2016-09-05 15:33:02 +02:00
Dmitry Stogov
129e8dadf4
op_arrays may be optimized independetly and "script" might be NULL
2016-08-23 13:17:53 +03:00
Xinchen Hui
66a527b8c1
Fixed segfault introduced in 447e57a1e1
2016-08-18 15:37:39 +08:00
Kalle Sommer Nielsen
447e57a1e1
Fixed 7.1 build, decls first please!
2016-08-17 20:26:32 +02:00
Nikita Popov
1a780e6727
Add assertion to prevent type narrowing
...
Currently type narrowing is always a bug, make sure we know about
it.
2016-08-05 16:30:57 +02:00
Nikita Popov
fc7c81ff54
Fixed bug #72762
2016-08-05 16:27:55 +02:00
Nikita Popov
5f6effed43
Add opcodes to zend_wrong_string_offset()
2016-07-10 15:15:34 +02:00
Aaron Piotrowski
d9a9cf8eca
Merge branch 'master' into iterable
2016-07-03 22:42:10 -05:00
Dmitry Stogov
d898344663
Inline simple constant functions
2016-06-30 17:04:25 +03:00
Dmitry Stogov
871cd76af4
clanup
2016-06-29 17:53:39 +03:00