I've changed all of the relevant cases of anonymous KindOf classes to use the new JavaClassKindOf. This cuts down on some of the noise produced by anonymous inner classes, especially given that these replacement points all had identical implementations.
Hmm.. not building on the machine I've got currently.
I'll be back on my dev machine Monday. Also, this PR still needs some additional benchmark lovin' before it is accepted.
Actually I went ahead and pulled this to run some numbers. My tests aren't exhaustive, but they show some interesting results: https://gist.github.com/headius/5748268
Summary: On Java 6, success cases for kind_of? degrade slightly, but failure cases improve. On Java 7, success cases are the same or faster, and failure cases are considerably faster.
I'm going to run our test suites locally to ensure this is 100%, but otherwise I'll be merging it. If there's additional improvement possible, we can do it as separate PRs.