Joe Watkins
c220c96c37
fix optimizer pass registration test
2021-06-07 17:58:33 +02:00
codinghuang
2f710f5bb2
Support custom passes in Optimizer
2021-06-06 08:10:11 +02:00
Martin Schröder
a65989b127
Alternative Fiber Internals Refactoring ( #7101 )
2021-06-04 23:25:35 -05:00
Aaron Piotrowski
d2e5203865
Split fiber status and flags ( #7094 )
...
Co-Authored-By: twosee <twose@qq.com>
2021-06-03 15:34:48 -05:00
Nikita Popov
e006fd4220
Adjust memory limit in one more test
2021-05-31 16:32:43 +02:00
Máté Kocsis
fcd18757b2
Add reproducer for possible issue with object return type inheritance ( #6961 )
...
Fix early inheritance
Co-authored-by: Joe Watkins <krakjoe@php.net>
2021-05-10 12:52:59 +02:00
KsaR
01b3fc03c3
Update http->https in license ( #6945 )
...
1. Update: http://www.php.net/license/3_01.txt to https, as there is anyway server header "Location:" to https.
2. Update few license 3.0 to 3.01 as 3.0 states "php 5.1.1, 4.1.1, and earlier".
3. In some license comments is "at through the world-wide-web" while most is without "at", so deleted.
4. fixed indentation in some files before |
2021-05-06 12:16:35 +02:00
Nikita Popov
28dbdd529c
Re-enable observer fatal error test
...
Now that zend_call_function() no longer inserts dummy frames,
this should be safe and no longer fail on some platforms.
2021-04-30 16:05:35 +02:00
Aaron Piotrowski
c276c16b66
Implement Fibers
...
RFC: https://wiki.php.net/rfc/fibers
Closes GH-6875.
2021-04-26 11:07:06 -05:00
twosee
fc64a7bef4
Ignore some opcodes in JIT check
...
Some user opcode handler actually gets called when JIT is used, so do not disable JIT even if these user opcode handlers were registered, just ignore them.
ZEND_EXIT can help Swoole to detect exit/die operation and exit from the current coroutine and record exit_status correctly.
ZEND_*_SILENCE can help Swoole to switch EG(error_reporting) to keep the right behavior when using the error control operator.
So we ignore ZEND_EXIT, ZEND_BEGIN_SILENCE, ZEND_END_SILENCE in JIT check here.
Closes GH-6640.
2021-04-06 11:58:20 +08:00
Dmitry Stogov
1494e87bd0
Merge branch 'PHP-8.0'
...
* PHP-8.0:
Fixed bug #80847 (CData structs with fields of type struct can't be passed as C function argument)
2021-03-17 09:56:07 +03:00
Dmitry Stogov
38ebb55c7c
Fixed bug #80847 (CData structs with fields of type struct can't be passed as C function argument)
2021-03-17 09:55:20 +03:00
Máté Kocsis
803779e84b
Add support for generating properties with union type of multiple classes
...
Closes GH-6701
2021-02-16 15:50:13 +01:00
Máté Kocsis
bf0f6aaf18
Improve class entry generation
...
Related to GH-6701
2021-02-16 13:09:56 +01:00
Máté Kocsis
45fa7596dc
Add missing classes to stubs
2021-02-09 22:38:06 +01:00
Máté Kocsis
99b08ac281
Implicitly enable function entry generation when class entry generation is enabled
...
Closes GH-6675
2021-02-09 13:37:24 +01:00
Tyson Andre
5e06dad411
Properly render 2+ namespaces functions in build/gen_stub.php
...
Affects ZEND_NS_FE
Add test cases of the global function
Backported to php 8.0 from GH-6664
2021-02-06 14:17:14 -05:00
Tyson Andre
b4c6d5f799
Properly render 2+ namespaces functions in build/gen_stub.php
...
Affects both INIT_NS_CLASS_ENTRY and ZEND_NS_FE
Add test cases of the global function and namespaced values
Closes GH-6664
2021-02-06 14:09:25 -05:00
Nikita Popov
a53e360d98
Merge branch 'PHP-8.0'
...
* PHP-8.0:
XFAIL observer_error_05.phpt test
2021-02-01 10:24:18 +01:00
Nikita Popov
cab1ea46e7
XFAIL observer_error_05.phpt test
2021-02-01 10:24:00 +01:00
Nikita Popov
6971c720b0
Merge branch 'PHP-8.0'
...
* PHP-8.0:
Observe fake closures
2021-01-28 10:05:51 +01:00
Sammy Kaye Powers
17142eab22
Observe fake closures
...
Closes GH-6607.
2021-01-28 10:03:41 +01:00
Dmitry Stogov
9948142e50
Merge branch 'PHP-8.0'
...
* PHP-8.0:
Skip dummy frames allocated on CPU stack of zend_call_function(). (Usage of "current_observed_frame" varible looks unsafe to me).
2021-01-26 18:44:56 +03:00
Dmitry Stogov
094e1a8b2d
Skip dummy frames allocated on CPU stack of zend_call_function().
...
(Usage of "current_observed_frame" varible looks unsafe to me).
2021-01-26 18:41:26 +03:00
Máté Kocsis
1954e59758
Add support for generating class entries from stubs
...
Closes GH-6289
Co-authored-by: Nikita Popov <nikita.ppv@gmail.com>
2021-01-26 11:50:36 +01:00
Nikita Popov
4846913946
Disable jit in observer opline test
...
This test fails in --repeat mode with tracing JIT.
2021-01-25 10:41:34 +01:00
Nikita Popov
dbe5725ff3
Rename zend-test to zend_test
...
The extension name should match the name of the ext/ directory,
otherwise it will not get picked up by run-tests. It would be possible
to remap this in run-tests, but I think it's better to rename the
extension to follow the standard format. Other extensions also
use underscore instead of hyphen (e.g. pdo_mysql and not pdo-mysql).
Of course, the ./configure option remains hyphenated.
Closes GH-6613.
2021-01-19 15:28:15 +01:00
Nikita Popov
f3415758d1
Fix observer tests on Windows
...
Use %e instead of a hardcoded forward slash.
2021-01-19 15:27:14 +01:00
Nikita Popov
dd7d829896
Disable opcache optimizations during some observer tests
...
Opcache inlines functions that only return a constant. Disable
optimizations to prevent differences in tests where such functions
are used (or rewrite the test to not depend on it).
2021-01-19 10:02:08 +01:00
Dmitry Stogov
d5a82e2c4e
Disable JIT with incompatible third-party extensions
2020-11-30 13:58:34 +03:00
Sammy Kaye Powers
58d41b8c4f
Provide unused retvals to observers
...
Make sure that the return value is available to observers, even if
it is not used by the caller.
Closes GH-6422.
2020-11-17 10:28:47 +01:00
Sammy Kaye Powers
0425a6697a
Fire open observer end handlers after a zend_bailout
...
Closes GH-6377
2020-11-16 15:12:57 -08:00
Dmitry Stogov
855d8fa68f
[Observer] Save opline before calling begin/end handlers
2020-11-11 13:06:55 +03:00
Christoph M. Becker
72d9d9b88f
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix bug79177.phpt wrt. JIT
2020-10-30 15:49:48 +01:00
Christoph M. Becker
0427dcb913
Fix bug79177.phpt wrt. JIT
...
JIT ignores that the `zend_write` callback is overwritten, so we define
our own callback and caller.
We also fix the "inconsistent DLL binding" warnings on Windows, by
introducing `PHP_ZEND_TEST_API`.
Closes GH-6391.
2020-10-30 15:47:18 +01:00
Sammy Kaye Powers
4a6932c076
Add missing observer tests
...
Closes GH-6378
2020-10-26 15:15:17 -07:00
Nikita Popov
c96d884d91
Avoid namespaced class symbol clashes in gen_stub
...
Add the namespace prefix (using underscores) to both the arginfo
name and the method declaration name.
2020-10-07 12:13:52 +02:00
Nikita Popov
9c710b1d11
Support "static" type in gen_stub
2020-10-07 11:34:14 +02:00
Nikita Popov
dfa6d1c22e
Support specifying linkage for generate-function-entries
...
The linkage can be specified as the argument to the
@generate-function-entries tag. Test this on zend_test.
2020-10-02 17:21:16 +02:00
Sammy Kaye Powers
e42abeafec
Pass zend_execute_data instead of zend_function to fcall init
...
The motivation for this change is to prevent extensions from having to check executor globals for the current execute_data during function call init. A previous implementation of the observer API initialized the function call from runtime cache initialization before execute_data was allocated which is why zend_function was passed in.
But now that the observer API is implemented via opcode specialization, it makes sense to pass in the execute_data. This also keeps the API a bit more consistent for existing extensions that already hook zend_execute_ex.
Closes GH-6209
2020-09-25 11:46:15 -07:00
Nikita Popov
c5401854fc
Run tidy
...
This should fix most of the remaining issues with tabs and spaces
being mixed in tests.
2020-09-18 14:28:32 +02:00
Dmitry Stogov
d5d31ea3b3
Cleanup observer API and add JIT support
2020-09-18 12:55:58 +03:00
Máté Kocsis
c98d47696f
Consolidate new union type ZPP macro names
...
They will now follow the canonical order of types. Older macros are
left intact due to maintaining BC.
Closes GH-6112
2020-09-11 11:00:18 +02:00
Levi Morrison
94fd52dd09
Add Z_PARAM_ITERABLE and co
2020-09-03 07:03:12 -06:00
Benjamin Eberlei
8b37c1e993
Change Attribute Syntax from @@ to #[]
2020-09-02 20:26:50 +02:00
Levi Morrison
66c3e900e2
Add zend_observer API
...
Closes GH-5857.
Co-authored-by: Nikita Popov <nikita.ppv@gmail.com>
Co-authored-by: Sammy Powers <sammyk@datadoghq.com>
2020-09-01 09:59:59 -06:00
Máté Kocsis
0d330e1a02
Add a few missing parameter types in stubs
...
Related to GH-5627
2020-07-30 14:26:45 +02:00
Theodore Brown
470d1696d9
Implement Shorter Attribute Syntax
...
RFC: https://wiki.php.net/rfc/shorter_attribute_syntax
Closes GH-5796.
Co-authored-by: Martin Schröder <m.schroeder2007@gmail.com>
2020-07-28 15:28:57 +02:00
Nikita Popov
df2749da70
Tweak zend_test arginfo/zpp
2020-07-21 15:33:01 +02:00
Nikita Popov
6744ead1c9
Parse parameters in zend_test_void_return()
2020-07-17 15:43:40 +02:00