hg: valhalla/valhalla/jdk: Initial implementation of metacircular interpreter
Rémi Forax
forax at univ-mlv.fr
Sun Aug 23 16:23:11 UTC 2015
Le 23 août 2015 17:12:02 CEST, Brian Goetz <brian.goetz at oracle.com> a écrit :
>> my guess, let say you want to prototype the u-opcodes of John's talk
>at JVMLS.
>
>Yep, that's basically the motivation. (Plus, it was fun.)
very true, everyone should try to write such interpreter at least once, with lambdas and method handles it's exhilarating !
Rémi
> If we want to experiment with new bytecodes, its orders of magnitude cheaper to do
>
>the initial experiments in javac + metacircular interpreter than to do
>it in HotSpot.
>
>> Btw, there is a complementary approach which is to use the existing
>bytecode interpreter and encode for every u-opcode a cascade of if/else
>on the type, the bytecode verifier will bark but you can deactivate it
>(the JIT may also crash if it is too curious a look the code of never
>executed branches).
>
>Yes. This might end up being a "Phase II" experimental strategy, after
>
>the MCE-based Phase I experiment runs its course. But we don't want to
>
>start there, in part for the reasons you cite (must disable verifier,
>etc.)
More information about the valhalla-dev
mailing list