Mikhail Galanin
9bea5f443b
Add "Start time", "Last restart time" and "Last force restart time" to phpinfo()
...
for opcache.
Closes GH-9475.
2022-09-05 17:54:47 +01:00
Máté Kocsis
87862578cb
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Fix inexistent skipif.inc
2022-09-05 12:38:09 +02:00
Máté Kocsis
59180b50b3
Fix inexistent skipif.inc
2022-09-05 12:37:53 +02:00
Dmitry Stogov
c151e9b75b
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Fix type inference
2022-09-05 13:01:04 +03:00
Dmitry Stogov
c852e0fff9
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix type inference
2022-09-05 12:56:34 +03:00
Dmitry Stogov
81cb005ef7
Fix type inference
...
Fixes oss-fuzz #50792
2022-09-05 12:55:50 +03:00
Arnaud Le Blanc
ea1287b015
Log the cause of error when opcache cannot write to file cache ( #9258 )
2022-09-03 11:23:43 +02:00
Arnaud Le Blanc
fb242f41ba
Fix high opcache.interned_strings_buffer causing shm corruption ( #9260 )
2022-09-03 11:23:10 +02:00
Dmitry Stogov
a55441615c
Merge branch 'PHP-8.1'
...
* PHP-8.1:
typo
2022-08-29 17:13:23 +03:00
Dmitry Stogov
4845d7026a
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
typo
2022-08-29 17:13:16 +03:00
Dmitry Stogov
263a07e5b0
typo
2022-08-29 17:12:57 +03:00
Dmitry Stogov
218da70bcf
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Fix memory leak
2022-08-29 14:54:49 +03:00
Dmitry Stogov
172ac0a48d
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix memory leak
2022-08-29 14:54:40 +03:00
Dmitry Stogov
4135e6011c
Fix memory leak
...
Fixes oss-fuzz #50616
2022-08-29 14:53:48 +03:00
Dmitry Stogov
4b884bedc8
JIT: Fix missing type store
...
Fixes oss-fuzz #50653
2022-08-29 14:36:16 +03:00
Dmitry Stogov
2f9bc6e37a
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Fix ext/opcache/tests/jit/inc_obj_004.phpt failure introduced by fd74ee7e90
2022-08-29 12:36:06 +03:00
Dmitry Stogov
a516e2992d
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix ext/opcache/tests/jit/inc_obj_004.phpt failure introduced by fd74ee7e90
2022-08-29 12:35:46 +03:00
Dmitry Stogov
ce42dcf483
Fix ext/opcache/tests/jit/inc_obj_004.phpt failure introduced by fd74ee7e90
...
This should fix GH-9445
2022-08-29 12:30:14 +03:00
Ilija Tovilo
3264f2367d
Fix strict-prototypes warning
2022-08-26 13:57:39 +02:00
Dmitry Stogov
7f74a30018
Reduce observer overhead when restoring script from opcache ( #9413 )
...
* Reduce observer overhead when restoring script from opcache
* typo
* Split loops to keep notifications in case of redeclaration errors
2022-08-25 19:49:16 +03:00
David CARLIER
e787d9a0dc
GH-9370: Fix opcache jit protection bits.
...
Allow mprotect to occur, pthread_jit_write_np are just to allow mprotect
flags to be used.
Closes #9371 .
2022-08-24 16:11:35 +01:00
Dmitry Stogov
205ad0af29
Fix coding style
2022-08-24 08:44:49 +03:00
wxue1
9f926d6b2d
Stop JIT hot spot counting ( #9343 )
...
When max_root_trace is reached, JIT in tracing mode will not
compile any new code for root trace and side trace, but
counting hot code is still going on. This patch stops counting
as soon as possible by replacing counter handler with
original handler, which increases 1.5% performance.
Signed-off-by: Wang, Xue <xue1.wang@intel.com >
Signed-off-by: Wang, Xue <xue1.wang@intel.com >
2022-08-24 08:37:49 +03:00
Bob Weinand
396b2aab85
Wrap observer notify functions into inlined enabled checks
...
Signed-off-by: Bob Weinand <bobwei9@hotmail.com >
2022-08-23 15:22:22 +02:00
Bob Weinand
bf427b732a
Add an API to observe functions and classes being linked
...
To observe when the functions and classes start being officially available to the user
Signed-off-by: Bob Weinand <bobwei9@hotmail.com >
2022-08-23 15:22:22 +02:00
Dmitry Stogov
567213c32a
Drop range inference for IS_NULL/IS_FALSE/IS_TRUE.
...
These values not always converted to IS_LONG (e.g. by -- and ++) and
this leads to incorrect range inferene and later to incorrect JIT code
generation.
2022-08-23 11:22:31 +03:00
Dmitry Stogov
e10d2c2bf9
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Fix type inference
2022-08-22 21:12:49 +03:00
Dmitry Stogov
95befc786a
Fix type inference
...
Fixes oss-fuzz #50272
2022-08-22 21:11:39 +03:00
Dmitry Stogov
d8c6549974
Merge branch 'PHP-8.1'
...
* PHP-8.1:
JIT: Make code generation to be consistent with register allocation
2022-08-22 20:00:44 +03:00
Dmitry Stogov
2a33280ceb
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
JIT: Make code generation to be consistent with register allocation
2022-08-22 19:55:10 +03:00
Dmitry Stogov
fd74ee7e90
JIT: Make code generation to be consistent with register allocation
...
Fixes ext/opcache/tests/jit/add_014.phpt with opcache.jit=1205
2022-08-22 19:53:33 +03:00
Christoph M. Becker
9313cd899e
Don't enforce 64 hit counter on Windows
...
There is no particular need to have a 64bit hit counter on Windows.
Closes GH-9367.
2022-08-22 17:49:30 +02:00
Dmitry Stogov
a5d84ba0d8
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Tracing JIT: Fix incorrect guard elimination
2022-08-22 15:42:28 +03:00
Dmitry Stogov
5762fc52c6
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Tracing JIT: Fix incorrect guard elimination
2022-08-22 15:39:47 +03:00
Dmitry Stogov
c9c51eb1f1
Tracing JIT: Fix incorrect guard elimination
...
Fixes oss-fuzz #49917
2022-08-22 15:38:41 +03:00
David Carlier
5a9411d086
Merge branch 'PHP-8.1'
2022-08-19 16:41:06 +01:00
David Carlier
9360cd6add
Merge branch 'PHP-8.0' into PHP-8.1
2022-08-19 16:40:54 +01:00
David Carlier
52e312afb8
opcache jit fix message format for OpenBSD.
...
like macOs it requires `ll`.
Closes #9380 .
2022-08-19 16:40:29 +01:00
Tim Starling
410e5d48a3
Fix GCC 9.4 uninitialized variable warning
...
ext/opcache/zend_accelerator_blacklist.c:295:4: error: ‘blacklist_path_length’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
2022-08-19 12:46:55 +01:00
Jakub Zelenka
438f692e92
Merge branch 'PHP-8.1'
2022-08-12 17:12:28 +01:00
Jakub Zelenka
d0527427be
Fix GH-8409: SSL handshake timeout persistent connections hanging
...
This is not actually related to SSL handshake but stream socket creation
which does not clean errors if the error handler is set. This fix
prevents emitting errors until the stream is freed.
2022-08-12 17:09:24 +01:00
dixyes
3a843f953b
Windows arm64 zend and standard extension support
...
* Port zend_cpuid for windows arm64
* Fix zend_atomic windows arm64 build
* Fix windows arm64 multiply
* Enable arm64 neon for windows in standard extension
* Enable arm64 neon for windows in zend_hash.c
* Workaround for msvc arm64 optimization bug
Closes GH-9115.
2022-08-09 12:45:14 +02:00
Bob Weinand
dc5475c191
Save previous observer on the VM stack
...
This avoids a possible significant performance penalty, when some leaf function was observed, deep in the stack.
As a side effect, we are not iterating over prev_execute_data anymore and thus, non-observed fake frames, possibly on stack, cannot have any impact on the observer anymore (especially within zend_observer_fcall_end_all).
Saving the previous observer happens now directly on the VM stack. If there is any observer, function frames are allocated an extra zval (the last temporary), which will, on observed frames, contain the previous observed frame address.
2022-08-04 17:16:27 +02:00
Arnaud Le Blanc
bccda7eb1c
Extended map_ptr before copying class table ( #9188 )
...
Fixes GH-9164
2022-08-01 19:25:07 +02:00
Arnaud Le Blanc
a69708382a
Extended map_ptr before copying class table ( #9188 )
...
Fixes GH-9164
2022-08-01 19:21:34 +02:00
Dmitry Stogov
c207efab63
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Tracing: Prevent recording types of variables used to pass zend_class_entry
2022-08-01 17:04:08 +03:00
Dmitry Stogov
7ff71a0a55
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Tracing: Prevent recording types of variables used to pass zend_class_entry
2022-08-01 17:03:56 +03:00
Dmitry Stogov
2758ff2a77
Tracing: Prevent recording types of variables used to pass zend_class_entry
2022-08-01 17:02:53 +03:00
Dmitry Stogov
fac37347ce
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Fix incorrect guard motion out of the loop
2022-08-01 15:33:50 +03:00
Dmitry Stogov
69c10aed58
Fix incorrect guard motion out of the loop
...
Fixes oss-fuzz #49579
2022-08-01 15:32:49 +03:00