On 04.04.2018 20:07, Ioi Lam wrote:
Hi,

I am trying to trace into the method handle linking code. I have a program like this:

     // HelloHM.java:8        mh.invokeExact("yo!");
     23:    aload_3;
     24:    ldc    #9; //    String "yo!";
    26:    invokevirtual    #10; //    Method java/lang/invoke/MethodHandle.invokeExact:"(Ljava/lang/String;)V";

I want to be able to set a break point at bytecode 26, do a single step, and then automatically land into the first bytecode of

java.lang.invoke.MethodHandleNatives.linkMethod

Well, I can't even figure out a way to display bytecodes inside eclipse, or single step a single bytecode.

single step bytecode isn't a feature I did ever hear of. But you can use the asm bytecode outline plugin for eclipse to see the bytecode and you can set a breakpoint in Java code, which then shows up in the bytecode as well


Also, I tried setting a breakpoint at MethodHandleNatives.linkMethodbut eclipse simply ignores that. (I can set normal break points in my test program's Java source code view).

at least in the past you could configure what trace elements are overstepped for the single step debugging.

So am I out of luck? Do I need to fall back to println() or jdb?

println will not give you single stepping for bytecode

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

Reply via email to