Interest in reviving quickjit-style JIT for quickjs-ng? #1587
|
Hi @bnoordhuis, I came across [quickjit](https://github.com/bnoordhuis/quickjit), your experiment from October 2023 that adds JIT compilation to QuickJS by translating bytecode to C and compiling it on the fly with tcc. It looks like a really elegant approach — sidestepping the need for a hand-written native code generator by leaning on tcc as the backend. I noticed it only had about two weeks of commits before development stopped, and since you're one of the maintainers here on quickjs-ng, I wanted to ask directly rather than guess:
Not asking for a commitment to build this into quickjs-ng itself — mainly want to avoid re-treading ground that's already been explored and rejected for good reasons, and would value any pointers before sinking time into it. Thanks! |
Replies: 2 comments
|
He posted why he thought that was a dead end some time ago here in the bug tracker. I cannot find it now, maybe you can. |
|
#659 (comment) but, in a nutshell, just template jit-ing code alone doesn't give much of a boost, you also need type feedback, inline caches, and hidden classes. (And, if I did a from-the-ground-up rewrite, I'd probably also switch to a register VM and mark & sweep garbage collection.) |
#659 (comment) but, in a nutshell, just template jit-ing code alone doesn't give much of a boost, you also need type feedback, inline caches, and hidden classes.
(And, if I did a from-the-ground-up rewrite, I'd probably also switch to a register VM and mark & sweep garbage collection.)