我是Neon Assembly编程的新手,我开发了一种Neon Intrinsic版本的视频边缘检测算法,它的性能提升了2倍。现在我想尝试Neon汇编 - 我想查看编译器为Neon Intrinsic生成的汇编代码并尝试我自己的Neon汇编。我的问题是如何查看编译器为Android NDK中的Neon Intrinsic优化代码生成的汇编代码?
当我尝试
时objdump -d kalifilters-intrinsics.o
kalifilters-intrinsics.o:文件格式elf32-little
objdump:不能拆解建筑物UNKNOWN!
我知道objdump失败,因为目标文件是arm架构的意思,请告诉我与arm相关的objdump工具!
答案 0 :(得分:2)
NDK包含特定于体系结构的objdump二进制文件:
$ find ./ -iname \*objdump\*|grep arm
./toolchains/arm-linux-androideabi-4.6/prebuilt/windows-x86_64/arm-linux-android
eabi/bin/objdump.exe
./toolchains/arm-linux-androideabi-4.6/prebuilt/windows-x86_64/bin/arm-linux-and
roideabi-objdump.exe
./toolchains/arm-linux-androideabi-4.8/prebuilt/windows-x86_64/arm-linux-android
eabi/bin/objdump.exe
./toolchains/arm-linux-androideabi-4.8/prebuilt/windows-x86_64/bin/arm-linux-and
roideabi-objdump.exe
答案 1 :(得分:1)
我为此推荐IDA Pro:
https://www.hex-rays.com/products/ida/
只需将.o / .so文件拖到IDA,您将以一种可读的格式获得反汇编。
没有比这更好的了。还有Linux版本和OS X.