ARM neon pseudo op
tg at gmplib.org
Tue Apr 2 11:45:42 CEST 2013
nisse at lysator.liu.se (Niels Möller) writes:
On my pandaboard (with a cortex-a9), I run Debian GNU/Linux, and the
assembler calls itself
$ as --version
GNU assembler (GNU Binutils for Debian) 2.22
It refuses to assemble the new shiny mpn/arm/neon/*.asm files. With
somewhat confusing error messages like
tmp-lshift.s: Assembler messages:
tmp-lshift.s:111: Error: selected processor does not support ARM mode `vdup.32 d6,r3'
tmp-lshift.s:113: gcc -std=gnu99 -c -DHAVE_CONFIG_H -I. -I/home/nisse/hack/gmp/mpn -I.. -D__GMP_WITHIN_GMP -I/home/nisse/hack/gmp -DOPERATION_rshift -marm -O2 -pedantic -fomit-frame-pointer -march=armv7-a -mtune=cortex-a9 -g -Wa,--noexecstack tmp-rshift.s -o rshift.o
Error: selected processor does not support ARM mode `vdup.32 d7,r3'
tmp-lshift.s:119: Error: selected processor does not support ARM mode `vshl.u64 d18,d19,d7'
I had to patch the files like
diff -r ea84e60fd6dc mpn/arm/neon/lorrshift.asm
--- a/mpn/arm/neon/lorrshift.asm Tue Apr 02 07:40:32 2013 +0200
+++ b/mpn/arm/neon/lorrshift.asm Tue Apr 02 11:32:05 2013 +0200
@@ -21,6 +21,8 @@ dnl along with the GNU MP Library. If
+ .fpu neon
C cycles/limb cycles/limb cycles/limb good
to convince the assembler. Not sure if it's best to do this at the top
of each file, or if it should somehow be handled by ASM_START.
I need the first few dozen lines from the configure output to have a
guess about what might go wrong. You might actually compare the output
to that of panda.gmplib.org yourself.
More information about the gmp-devel