On Thu, Sep 21, 2023 at 6:13 AM Tim Düsterhus <t...@bastelstu.be> wrote:
> Hi > > On 9/21/23 10:26, Dmitry Stogov wrote: > My understanding is that even if the new JIT might not (yet) be better > than the old one, it is not worse and it is more maintainable. The > reactions from more knowledgeable folks were pretty positive overall. > > So if the new JIT passes the existing test suite without issues, I don't > see a reason why the old JIT should not be replaced right away. By > immediately removing the old JIT (ideally in a separate commit) the > codebase is cleaned up and users that want to test PHP 8.4 (or whatever > that version may be in the end) will be forced to also test the new JIT > which is probably a good thing. > If I understand correctly, the only way to fallback to the JIT 1.0 implementation is by compiling PHP with a new introduced flag, so the JIT 2.0 needs to be opt-out. The RFC doesn't mention the configurations for new JIT (init settings) which makes me assume that they're exactly the same? If these assumptions are right, I think the matter of keeping or removing JIT 1.0 implementation is mostly a matter of what makes Dmitry more comfortable. Removing it straight-away might result in adding more pressure in getting bug fixes on the new one, while keeping it might make it possible for whoever is relying heavily on JIT to still compile new PHP releases with JIT 1.0 to give more time to iron out the final details on JIT 2.0. Of course this is a very basic analysis on my part which mixes my experience in replacing PHP running-systems with new rewrites and it's much more comfortable to me to have a fallback mechanism in place which may or may not be entirely relevant here. -- Marco Deleu