On 06/03/2011 04:37 AM, John Rose wrote: > Thanks; I'll look at your dump later tonight. > > If the problem is friction from interface casts, we can probably > remove them. It's hard to figure out how they are getting in, though. > It happens when IRubyObject interconverts with Object. Are you doing > it, or is it coming from inside the java.lang.invoke classes? That's > the first question. It probably comes from an asType, but some asType > calls are implicit within the 292 API. What asType calls > (was convertArguments) are in your code? > > Key fact: asType/convertArguments used to allow interfaces a free > unchecked pass into and out of Object. Now only explicitCastArguments > does this. If you convert between an interface and Object, you'll get > a real checkcast (and a potential CCE) from asType. > > Try changing convertArguments globally to explicitCastArguments and > see what happens.
Semantically there aren't equivalent but it should not be a problem if you don't use asType to do an unboxing conversions e.g. Integer or Object -> int if the object is null asType throws a NPE but explicitCastArguments returns 0. > > -- John Rémi _______________________________________________ mlvm-dev mailing list mlvm-dev@openjdk.java.net http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev