HSDIS可以查看java的汇编指令,在github上找不到相关的已经编译好的包,可以通过自己编译的方式运行:
首先下好jdk的源码:
git clone https://github.com/openjdk/jdk.git
其次进入目录:
cd jdk/src/utils/hsdis
下载并解压:
wget https://ftp.gnu.org/gnu/binutils/binutils-2.35.1.tar.xz
tar -xf binutils-2.35.1.tar.xz
最核心的一步进行编译:
make BINUTILS=binutils-2.35.1 ARCH=aarch64
这里一定要是aarch64才匹配我们的芯片版本
然后将编译好的文件:
cp build/macosx-amd64/hsdis-amd64.dylib 你的java根目录的bin下
这时
-Xcomp -XX:+UnlockDiagnosticVMOptions -XX:+PrintAssembly
最终执行main函数的时候就会打印出汇编: