This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

eclipse 调试neon汇编代码编译问题

大家好,

我想通过eclipse 编译neon汇编代码,同时通过remote system explorer 在arm 板卡上的linux系统中调试neon汇编代码,我使用的是linaro编译器gcc-linaro-arm-linux-gnueabihf-4.9-2014.09,

但是编译的时候出错了:

Info: Internal Builder is used for build

arm-linux-gnueabihf-gcc -O0 -g3 -Wall -c -fmessage-length=0 -march=armv7-a -mfpu=neon -mfloat-abi=hard -o main.o "..\\main.c"

..\main.c: In function 'main':

..\main.c:17:1: warning: control reaches end of non-void function [-Wreturn-type]

}

^

arm-linux-gnueabihf-as -o dequant.o "..\\dequant.S"

..\dequant.S: Assembler messages:

..\dequant.S:30: Error: selected processor does not support ARM mode `vpush {q4-q7}'

..\dequant.S:38: Error: selected processor does not support ARM mode `vdup.32 q2,r6'

..\dequant.S:41: Error: selected processor does not support ARM mode `vld1.16 {d0},[r0]!'

..\dequant.S:42: Error: selected processor does not support ARM mode `vmov.16 d1[0],r2'

..\dequant.S:43: Error: selected processor does not support ARM mode `vdup.32 q1,r5'

..\dequant.S:44: Error: selected processor does not support ARM mode `vmlal.s16 q1,d0,d1[0]'

..\dequant.S:46: Error: selected processor does not support ARM mode `vshl.s32 q3,q1,q2'

..\dequant.S:47: Error: selected processor does not support ARM mode `vqmovn.s32 d0,q3'

..\dequant.S:48: Error: selected processor does not support ARM mode `vst1.16 d0,[r0]!'

..\dequant.S:54: Error: selected processor does not support ARM mode `vpop {q4-q7}'

交叉编译工具gcc的信息

C:\Program Files (x86)\Linaro\gcc-linaro-arm-linux-gnueabihf-4.9-2014.09\bin>arm

-linux-gnueabihf-gcc.exe -v

Using built-in specs.

COLLECT_GCC=arm-linux-gnueabihf-gcc.exe

COLLECT_LTO_WRAPPER=c:/program\ files\ (x86)/linaro/gcc-linaro-arm-linux-gnueabi

hf-4.9-2014.09/bin/../libexec/gcc/arm-linux-gnueabihf/4.9.2/lto-wrapper.exe

Target: arm-linux-gnueabihf

Configured with: /cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-wi

n32/.build/src/gcc-linaro-4.9-2014.09/configure --build=i686-build_pc-linux-gnu

--host=i586-host_pc-mingw32msvc --target=arm-linux-gnueabihf --prefix=/cbuild/sl

aves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-win32/install --with-sysroot=

/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-win32/install/arm-l

inux-gnueabihf/libc --enable-languages=c,c++,fortran --disable-multilib --enable

-multiarch --with-arch=armv7-a --with-tune=cortex-a9 --with-fpu=vfpv3-d16 --with

-float=hard --with-pkgversion='crosstool-NG linaro-1.13.1-4.9-2014.09 - Linaro G

CC 4.9-2014.09' --with-bugurl=https://bugs.launchpad.net/gcc-linaro --enable-__c

xa_atexit --enable-libmudflap --enable-libgomp --enable-libssp --with-gmp=/cbuil

d/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-win32/.build/arm-linux-gn

ueabihf/build/static --with-mpfr=/cbuild/slaves/oorts/crosstool-ng/builds/arm-li

nux-gnueabihf-win32/.build/arm-linux-gnueabihf/build/static --with-mpc=/cbuild/s

laves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-win32/.build/arm-linux-gnuea

bihf/build/static --with-isl=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-

gnueabihf-win32/.build/arm-linux-gnueabihf/build/static --with-cloog=/cbuild/sla

ves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-win32/.build/arm-linux-gnueabi

hf/build/static --with-libelf=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux

-gnueabihf-win32/.build/arm-linux-gnueabihf/build/static --enable-threads=posix

--disable-libstdcxx-pch --enable-linker-build-id --enable-gold --with-local-pref

ix=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-win32/install/ar

m-linux-gnueabihf/libc --enable-c99 --enable-long-long --with-mode=thumb --disab

le-multilib --with-float=hard

Thread model: posix

gcc version 4.9.2 20140904 (prerelease) (crosstool-NG linaro-1.13.1-4.9-2014.09

- Linaro GCC 4.9-2014.09)

Parents
  • 在编译器参数里面默认是thumb mode (--with-mode=thumb)。

    出错信息是.\dequant.S:30: Error: selected processor does not support ARM mode `vpush {q4-q7}'

    你可以先检查一下dequant.S 文件,看这个文件是不是设定为ARM mode。如果是的话,你需要在编译选项里面添加-marm

Reply
  • 在编译器参数里面默认是thumb mode (--with-mode=thumb)。

    出错信息是.\dequant.S:30: Error: selected processor does not support ARM mode `vpush {q4-q7}'

    你可以先检查一下dequant.S 文件,看这个文件是不是设定为ARM mode。如果是的话,你需要在编译选项里面添加-marm

Children