Ok, I was too intrigued by guardWithTest to not give it a try. Here's the revised InvokeDynamicSupport I came up with. It seems like things are wired correctly, but it results in a crash:
http://gist.github.com/115901 It crashes with a message like: # A fatal error has been detected by the Java Runtime Environment: # # Internal Error (signature.cpp:60), pid=57856, tid=2954375168 # Error: expecting ( I presume this means the guardWithTest stuff isn't quite functional yet. A few notes on this: * I like this very much; it fits well our current call site logic. I could also see how easy it would be to chain guardWithTest MHs to create a polymorphic cache, which is super cool. * One major improvement on my end would be to get our Ruby method objects to actually *be* method handles, so they won't require the intermediate code that, in this version, does nothing more than pass arguments through. * guardWithTest brings this much closer to being completely primitive-MHs all the way through, and I think that's the right way for us to be moving, yes? I'm eager to get more of this stuff wired up. I don't suppose there's anything folks like me can do to help, is there? - Charlie _______________________________________________ mlvm-dev mailing list mlvm-dev@openjdk.java.net http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev