Код за асемблиране за Neon Intrinsic версия

Аз съм нов в програмирането на Neon Assembly, разработих Neon Intrinsic версия на алгоритъм за откриване на ръбове на видео, което доведе до постигане на производителност 2x. Сега бих искал да опитам асемблирането на Neon - бих искал да видя кода на асемблиране, генериран от компилатора за Neon Intrinsic, и да опитам моето собствено асемблиране на Neon. Въпросът ми е как да видя асемблиращия код, генериран от компилатора за Neon Intrinsic оптимизиран код в Android NDK?

Когато опитах

objdump -d kalifilters-intrinsics.o

kalifilters-intrinsics.o: файлов формат elf32-little

objdump: не може да се разглоби за архитектура UNKNOWN!

Наясно съм с неизправността на objdump, тъй като обектният файл е предназначен за архитектура arm. Моля, уведомете ме за свързан с arm objdump инструмент!


person Kaliuday    schedule 30.06.2014    source източник


Отговори (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
person HHK    schedule 30.06.2014
comment
@ Hans Kratz Благодаря за отговора, той реши проблема ми - person Kaliuday; 01.07.2014

Препоръчвам IDA Pro за тази цел:

https://www.hex-rays.com/products/ida/

Просто плъзнете файла .o / .so в IDA и ще получите разглобяването в доста четим формат.

Просто няма нищо по-хубаво от това. Има и версия за Linux, както и OS X.

person Jake 'Alquimista' LEE    schedule 30.06.2014
comment
Страхотно, че поддържат толкова много варианти на ARM. Версията за оценка зареди моя ARMv7 .so, няма проблем. - person ahcox; 09.02.2015