Crash with invokeDynamic on MethodMissing attempt
John Rose
John.Rose at Sun.COM
Tue May 19 15:37:19 PDT 2009
I've reproduced your crash from the command line; thanks for the clean
instructions.
The crash is for:
def foo(a); end; a = 1; while a < 1_000_000; foo(a); a += 1; end
There is a basic nbproject in the jruby repo, but no debug or run
targets.
Is there a secret combination to getting a debugger session on the
equivalent of this command line?
bin/jruby --server -J-XX:+EnableInvokeDynamic -J-
Djruby.compile.invokedynamic=true script.rb
Thanks!
-- John
On May 18, 2009, at 4:29 PM, Charles Oliver Nutter wrote:
> Here you go! The details of getting it to run under mlvm are up to
> you,
> but jruby accepts options like -J-XX:+EnableInvokeDynamic, etc.
>
> git clone git://kenai.com/jruby~main jruby
> cd jruby
> git co -b invokedynamic origin/invokedynamic
> ant clean jar (with MLVM as JAVA_HOME)
> bin/jruby <important flags here> -e "code here"
> -or-
> bin/jruby <important flags here> script.rb
>
> Where important flags are:
>
> --server (-server flag to JVM, if you want it)
> -J-XX:+Enable{InvokeDynamic,MethodHandles}
> -J-Djruby.compile.invokedynamic=true
>
> Not a whole lot of logging/debugging in place at the moment, but if
> you
> also pass --bytecode to JRuby it will dump out the bytecode for the
> target script rather than run it. If it's wiring up right you'll see
> INVOKEDYNAMIC in there.
More information about the mlvm-dev
mailing list