RFR: 8000489: older builds of hsdis don't work anymore after 6879063

John Rose john.r.rose at oracle.com
Mon Oct 29 09:57:15 PDT 2012


On Oct 25, 2012, at 1:16 PM, Yumin Qi wrote:

>  To John's question, it doesn't require changes to disassembler.cpp:
> 
>  new version ---> decode_instructions_virtual
>  old version   ---> decode_instructions ---> decode_instructions_virtual
> 
>  tested with b01 (JDK8) with new hsdis-i386.so.

I think we are aiming to make all four combinations work:  {old JVM , new JVM} x { old hsdis , new hsdis }.

For this to work, there must be "tolerance" in both the JVM and hsdis for old code.  That's why I was looking for a change to disassembler.cpp, so that old hsdis modules will still work.

In particular, the older builds of hsdis won't work properly unless the new JVM looks for the old hsdis entry point (if it fails to find the new hsdis entry point, of course).

Basically, I am expecting that if the new JVM fails to find hsdis`decode_instructions_virtual, it will look for hsdis`decode_instructions instead, and will call that latter function with the (fewer) arguments that it expected.

Am I missing something here?

— John
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.openjdk.java.net/pipermail/serviceability-dev/attachments/20121029/82d7af3e/attachment.html 


More information about the serviceability-dev mailing list