rfc:jit
Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
rfc:jit [2019/03/15 09:33] dmitry |
rfc:jit [2019/04/12 07:15] laruence |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== PHP RFC: JIT ====== | ====== PHP RFC: JIT ====== | ||
- | * Version: | + | * Version: |
* Date: 2019-01-28 | * Date: 2019-01-28 | ||
* Author: Dmitry Stogov < | * Author: Dmitry Stogov < | ||
- | * Status: | + | * Status: |
* First Published at: https:// | * First Published at: https:// | ||
===== Introduction ===== | ===== Introduction ===== | ||
- | It's no secret that the performance jump of PHP 7 was originally initiated by attempts to implement JIT for PHP. We started these efforts at Zend (mostly by Dmitry) back in 2011 and since that time tried 3 different implementations. | + | It's no secret that the performance jump of PHP 7 was originally initiated by attempts to implement JIT for PHP. We started these efforts at Zend (mostly by Dmitry |
===== The Case for JIT Today ==== | ===== The Case for JIT Today ==== | ||
Line 404: | Line 404: | ||
Currently we support x86 and x86_64 on POSIX platforms (tested on Linux with GCC and LVVM) and Windows (both non-ZTS and ZTS builds). We support " | Currently we support x86 and x86_64 on POSIX platforms (tested on Linux with GCC and LVVM) and Windows (both non-ZTS and ZTS builds). We support " | ||
There are no any restrictions on C compiler and OS any more. | There are no any restrictions on C compiler and OS any more. | ||
- | |||
- | ===== Open Issues ===== | ||
- | Make sure there are no open issues when the vote starts! | ||
===== Future Scope ===== | ===== Future Scope ===== | ||
Line 414: | Line 411: | ||
Support for JIT is more a strategic PHP question. JIT definitely requires a lot of work, but it may be actively developed only as a part of PHP, with common effort. | Support for JIT is more a strategic PHP question. JIT definitely requires a lot of work, but it may be actively developed only as a part of PHP, with common effort. | ||
- | This project requires a 2/3+1 majority. | + | This project requires a 2/3+1 majority. Voting opened 2019-03-21 and closes 2019-03-28. |
<doodle title=" | <doodle title=" | ||
Line 422: | Line 419: | ||
As PHP 7.4 is already branched and its engine is not expected to be significantly changed (consequently requiring corresponding changes to the JIT implementation), | As PHP 7.4 is already branched and its engine is not expected to be significantly changed (consequently requiring corresponding changes to the JIT implementation), | ||
+ | |||
+ | In case JIT is not included in PHP-7.4 and PHP-8 introduces language compatibility breaks (it already does), existing applications couldn' | ||
<doodle title=" | <doodle title=" | ||
Line 434: | Line 433: | ||
===== Implementation ===== | ===== Implementation ===== | ||
- | After the project is implemented, | + | Merged |
- | - the version(s) it was merged | + | |
- | | + | |
- | - a link to the PHP manual entry for the feature | + | |
- | - a link to the language specification section (if any) | + | |
===== References ===== | ===== References ===== | ||
- [[https:// | - [[https:// | ||
+ | - [[https:// | ||
- [[https:// | - [[https:// | ||
- | |||
- | ===== Rejected Features ===== | ||
- | Keep this updated with features that were discussed on the mail lists. | ||
- |
rfc/jit.txt · Last modified: 2020/08/01 23:41 by carusogabriel