guardWithTest

Charles Oliver Nutter charles.nutter at sun.com
Thu May 21 20:19:21 PDT 2009


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



More information about the mlvm-dev mailing list