Re: A new JIT engine for PHP-8.4/9
| From: | Dmitry Stogov | Date: | Fri, 15 Sep 2023 10:15:26 +0000 |
| Subject: | Re: A new JIT engine for PHP-8.4/9 | ||
| References: | 1 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-121065@lists.php.net to get a copy of this message | ||
Hi,
After the code-review feedback, one of the most questionable decisions was
changed.
Instead of including IR Framework as a git submodule, now its part is
embedded into php-src.
This will complicate the IR/JIT development a bit, but will simplify things
for everyone else.
I'm going to merge https://github.com/php/php-src/pull/12079 into
master
next week.
If someone likes to take a look before, please do it now.
After the merge, I don't plan to do active PHP-JIT development for 1-2
months (I'll wait for problems, bugs, etc and work on general IR
improvements).
Then, in case of no major problems, I'm going to remove the old JIT
implementation and make a PHP-JIT code-cleanup pass.
Thanks. Dmitry.
On Mon, Sep 11, 2023 at 12:28 PM Dmitry Stogov <dmitrystogov@gmail.com>
wrote:
> Hi internals,
>
> I'm glad to present a new JIT engine that is going to be used in the next
> major PHP version. Now it's a real optimizing compiler with Intermediate
> Representation similar to Java HotSpot server compiler.
>
> It makes a base for future improvements and eliminates many low-level
> details of the existing PHP JIT. Instead of supporting assembler code for
> different CPUs, now PHP generates a single IR and passes it to a
> PHP-independent JIT engine.
>
> The old JIT implementation is going to be kept for a while.
>
> Everybody are welcome to take a look over tne code
> https://github.com/php/php-src/pull/12079
>
> Thanks. Dmitry.
>