review (M) for 6879063: SA should use hsdis for disassembly

Tom Rodriguez Thomas.Rodriguez at Sun.COM
Thu Sep 17 16:17:01 PDT 2009

The SA has Java based disassemblers for x86 and sparc but not for
amd64.  Instead of porting to amd64 we should switch over to using
hsdis for it like the JVM does.  This required a new entry point into
hsdis, decode_instructions_virtual, which separates the address of the
code being disassembled from the buffer containing the code.  The
existing uses of decode_instructions have been updated to use the new
interface and the SA Disassembler has Java native methods that call
into hsdis and call back up to Java to perform the disassembly.  I
also updated the disassembly printing code to more closely match the
JVM though we still don't print out a lot things like oops and relocs
in the SA.

I deleted all the old disassembler logic since it's incompatible with
the new disassembly interface.  I also blew away the moribund dbx
based SA interface and few other dead files.  In the end I deleted
around 22000 lines of source.

Tested by dumping full assembly from core files.

More information about the hotspot-compiler-dev mailing list