JRuby invokedynamic bindings that use catchException appear to blow up
with a current MLVM build (as of a few minutes ago). The error is the
same in every case:

Caused by: java.lang.IllegalArgumentException: spread on
invoke_F9(CacheEntry,ThreadContext,IRubyObject,IRubyObject,String,IRubyObject,IRubyObject,IRubyObject,Block)IRubyObject
with Object[]
        at 
java.lang.invoke.MethodHandleImpl.spreadArguments(MethodHandleImpl.java:764)
        at 
java.lang.invoke.MethodHandleImpl.spreadArguments(MethodHandleImpl.java:751)
        at 
java.lang.invoke.MethodHandleImpl.makeGuardWithCatch(MethodHandleImpl.java:1152)
        at 
java.lang.invoke.MethodHandles.catchException(MethodHandles.java:2139)
        at 
org.jruby.runtime.invokedynamic.InvokeDynamicSupport.<clinit>(InvokeDynamicSupport.java:1356)

The same catchException call works properly on current macosx build. I
have not done any bisecting to determine what openjdk/mlvm commit
introduced this problem.

Reproducible with even the fib benchmark by running this way:

jruby -d -X+C --server bench/bench_fib_recursive.rb 10 35

- Charlie
_______________________________________________
mlvm-dev mailing list
mlvm-dev@openjdk.java.net
http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev

Reply via email to