Hi
请问aarch64-linux-android-clang++ 支持neon 指令集编译吗?用neon指令集 写了一个算法, 相同的代码用aarch64-linux-android-gcc 可以编译过,aarch64-linux-android-clang++ 一直出错:
pengfei@ubuntu:/mnt/hgfs/share/test$ make aarch64-linux-android-clang++ ./cost_accumulation.s ./case_cost_accumulation.c -o case_cost_accumulationclang50++: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated [-Wdeprecated]/tmp/case_cost_accumulation-23c6f2.o: In function `main':./case_cost_accumulation.c:(.text+0x334): undefined reference to `asm_cost_accumulation(unsigned long, unsigned long, unsigned short*, unsigned short*, unsigned short*, unsigned short*, unsigned short*, unsigned short*)'clang50++: error: linker command failed with exit code 1 (use -v to see invocation)make: *** [case_cost_accumulation] Error 1
sm_cost_accumulation()函数使用neon指令集编写的,clang++一直提示找不到该函数,怀疑是clang++不支持neon指令, gcc下是可以编译过的
clang是支持neon指令的。只是clang的assembler语法(assembler directive)和GNU as不一完全样。你的cost_assumulation.s实现估计需要根据clang的as语法调整一下。