Nikita Popov
785f034e41
Merge branch 'PHP-7.4'
2019-04-12 12:04:11 +02:00
Nikita Popov
49ce7c0014
Remove odd variable assignment in escape_analysis
...
As we are breaking out of the for loop setting i = ssa_vars_count
doesn't do anything, but it confuses GCC into throwing a no-overflow
assumption warning.
2019-04-12 11:56:37 +02:00
Dmitry Stogov
39505764ad
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Replace "ZEND_CALL_CTOR" hack by additional live-range
2019-04-12 01:01:47 +03:00
Dmitry Stogov
88a2268d6b
Replace "ZEND_CALL_CTOR" hack by additional live-range
2019-04-12 00:49:45 +03:00
Anatol Belski
f4628436df
Fix VirtualProtect memory size
...
As otherwise it would remove executable flag from JIT memory
Thanks Dmitry for the hint :)
2019-04-11 15:46:46 +02:00
Anatol Belski
853f881bd1
Avoid code duplication
2019-04-11 15:05:16 +02:00
Dmitry Stogov
6d232eec03
Improved code generated for RETURN in methpods and closures
2019-04-11 15:13:14 +03:00
Nikita Popov
6dd7450427
Fix opcache build without JIT
2019-04-11 12:52:50 +02:00
Nikita Popov
9825d68c08
Use zend_quiet_write instead of ZEND_IGNORE_VALUE
...
Forgot this exists when I changed this earlier...
2019-04-11 12:24:10 +02:00
Nikita Popov
b2fb753e85
Don't build JIT if the host architecture doesn't support it
...
Also display in phpinfo() whether JIT is unavailable/disabled/enabled.
2019-04-11 12:05:41 +02:00
Nikita Popov
d31104facc
Mark zend_jit_print_regset as unused
...
This is a debugging function, so it's usually not going to be used
and we don't want to see a warning about that.
2019-04-11 11:05:42 +02:00
Nikita Popov
0351552e1e
Suppress write() warnings in jit_perf_dump.c
2019-04-11 11:00:38 +02:00
Dmitry Stogov
cc900edd77
Simplify call frame initialization
2019-04-11 02:08:32 +03:00
Nikita Popov
9db2efe283
Merge branch 'PHP-7.4'
2019-04-10 15:31:24 +02:00
Nikita Popov
eb8c07fe2f
Support VirtualProtect for opcache.protect_memory
...
Don't enable this on AppVeyor yet, as there is still an open
issue in phar.
2019-04-10 15:31:18 +02:00
Anatol Belski
30f5822a9b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix phar:// include handling with file cache
2019-04-10 14:57:27 +02:00
Anatol Belski
db7aba538d
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fix phar:// include handling with file cache
2019-04-10 14:57:04 +02:00
Anatol Belski
1aa30bb71c
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Fix phar:// include handling with file cache
2019-04-10 14:56:29 +02:00
Anatol Belski
f31d7ca85e
Fix phar:// include handling with file cache
2019-04-10 14:55:15 +02:00
Dmitry Stogov
d374920e5e
Eliminated unreachable jumps
2019-04-10 11:18:59 +03:00
Dmitry Stogov
20548ab506
Removed too strict register allocation constraint.
2019-04-10 02:06:51 +03:00
Dmitry Stogov
2980de29f0
Don't split basic block after RECV, if function checks type hints
2019-04-09 21:59:47 +03:00
Dmitry Stogov
9c14cfdc78
Compare only "significant" bits
2019-04-09 11:28:29 +03:00
Xinchen Hui
c9fefb31fd
Fixed bug #77857 (Wrong result if executed with JIT)
2019-04-09 00:07:23 +08:00
Xinchen Hui
6322b6ffe7
Change to php.net mail address
2019-04-08 17:16:07 +08:00
David Carlier
914b27acb7
Fix few compiler warnings.
2019-04-08 00:00:09 +02:00
Peter Kokot
6d8d48498e
Add AS_HELP_STRING to Opcache JIT option
2019-04-07 23:29:12 +02:00
David Carlier
5247a0bc66
JIT register dump, fix BSD build.
2019-04-05 01:51:59 +03:00
Dmitry Stogov
df6709f480
Fixed JIT for === and !==
2019-04-05 01:12:34 +03:00
Javier Eguiluz
3b4d9f9d9e
Fixed a typo
2019-04-04 19:00:38 +02:00
Dmitry Stogov
21f249cfa4
Avoid code generation for BB with single VM instruction
2019-04-04 00:47:51 +03:00
Dmitry Stogov
a146e6eea7
jump optimization
2019-04-03 23:37:25 +03:00
Dmitry Stogov
34d5c1b16f
Fixed crash
2019-04-03 22:46:49 +03:00
Dmitry Stogov
fc28e9a0b3
Avoid useless code generation for RECV opcodes
2019-04-03 22:28:23 +03:00
Dmitry Stogov
22b3b6d5ea
Use inlined HYBRID VM handlers for DO_FCALL* and ZEND_RETRUN
2019-04-03 15:02:04 +03:00
Dmitry Stogov
3df8e27731
Fixed incorrect address usage
2019-04-03 13:05:09 +03:00
Dmitry Stogov
c91df3aedd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove RC1 and RCN from scalar types.
2019-04-03 12:39:26 +03:00
Dmitry Stogov
dd4d43c97d
Remove RC1 and RCN from scalar types.
2019-04-03 12:38:25 +03:00
Dmitry Stogov
32b16338b6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed SCCP support for ZEND_ASSIGN_OBJ_REF
2019-04-03 11:23:37 +03:00
Dmitry Stogov
c941f1d8c7
Fixed SCCP support for ZEND_ASSIGN_OBJ_REF
2019-04-03 11:22:59 +03:00
Dmitry Stogov
b9c639d7ac
JIT code improvement for ocache.jit=1 (IP consistency)
2019-04-03 03:56:39 +03:00
Dmitry Stogov
85c249c9fd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed CFG construction for SWITCH opcodes
2019-04-03 03:12:13 +03:00
Dmitry Stogov
e03f532829
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fixed CFG construction for SWITCH opcodes
2019-04-03 03:11:15 +03:00
Dmitry Stogov
0f811bb7b6
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Fixed CFG construction for SWITCH opcodes
2019-04-03 03:09:47 +03:00
Dmitry Stogov
56a5d0bd91
Fixed CFG construction for SWITCH opcodes
2019-04-03 03:09:03 +03:00
Dmitry Stogov
6cfa490786
Improve JIT code for smart branches
2019-04-03 02:00:54 +03:00
Dmitry Stogov
7f63b84a39
Merge branch 'PHP-7.4'
...
* PHP-7.4:
array_merge() may return argument with incremented reference counter
2019-04-03 00:45:52 +03:00
Dmitry Stogov
9ef2377d33
array_merge() may return argument with incremented reference counter
2019-04-03 00:44:31 +03:00
Dmitry Stogov
803d322240
Use fastcall calling convention
2019-04-02 22:10:57 +03:00
Dmitry Stogov
672d80f5dc
Fixed clang compiler warnings
2019-04-02 21:54:32 +03:00