Ok, here's my status. It turns out that the standard instructions are now basically working, and I'm in the process of modifying JRuby's invokedynamic support for the changes over the past few months. Basically, here's the process for OS X:
- follow the instructions in the MLVM repo, with the following modifications: -- clone bsd-port instead of openjdk directly -- remove "testable" from your guards to get invokedynamic support along with method handles (though John says there's still some bugs to fix) -- add "projects" to your guards to also apply John's demo projects for anonymous classes and method handles (and I believe the invokedynamic code in the method handle project is function too, right John?) -- use the *second* set of instructions for applying the patches, with all the raw hg queue commands -- once everything has been applied, follow Stephen Bannasch's instructions for getting it to build as normal -- when running with opcode 186 (new-style invokedynamic) you'll need to turn off verification with -Xverify:none With this process I managed to get JRuby to the point of producing an invokedynamic error (missing bootstrap), which to me is a great success. I hope to have things re-wired in the next day or two and will report back. - Charlie _______________________________________________ mlvm-dev mailing list mlvm-dev@openjdk.java.net http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev