glibc/sysdeps
Joe Ramsay cd94326a13 Enable libmvec support for AArch64
This patch enables libmvec on AArch64. The proposed change is mainly
implementing build infrastructure to add the new routines to ABI,
tests and benchmarks. I have demonstrated how this all fits together
by adding implementations for vector cos, in both single and double
precision, targeting both Advanced SIMD and SVE.

The implementations of the routines themselves are just loops over the
scalar routine from libm for now, as we are more concerned with
getting the plumbing right at this point. We plan to contribute vector
routines from the Arm Optimized Routines repo that are compliant with
requirements described in the libmvec wiki.

Building libmvec requires minimum GCC 10 for SVE ACLE. To avoid raising
the minimum GCC by such a big jump, we allow users to disable libmvec
if their compiler is too old.

Note that at this point users have to manually call the vector math
functions. This seems to be acceptable to some downstream users.

Reviewed-by: Szabolcs Nagy <szabolcs.nagy@arm.com>
2023-05-03 12:09:49 +01:00
..
aarch64 Enable libmvec support for AArch64 2023-05-03 12:09:49 +01:00
alpha
arc
arm
csky
generic
gnu hurd 64bit: Fix struct msqid_ds and shmid_ds fields 2023-05-01 15:07:51 +02:00
hppa
htl hurd 64bit: Fix pthread_t/thread_t type to long 2023-05-01 15:05:09 +02:00
hurd
i386
ia64
ieee754
loongarch
m68k
mach hurd 64bit: Make dev_t word type 2023-05-02 21:29:26 +02:00
microblaze
mips
nios2
nptl hurd 64bit: Add missing libanl 2023-05-01 13:36:14 +02:00
or1k
posix
powerpc
pthread
riscv riscv: Resolve symbols directly for symbols with STO_RISCV_VARIANT_CC. 2023-04-28 07:02:42 -07:00
s390
sh
sparc
unix Enable libmvec support for AArch64 2023-05-03 12:09:49 +01:00
wordsize-32
wordsize-64 hurd: Fix tst-writev test 2023-05-01 13:01:30 +02:00
x86
x86_64 Enable libmvec support for AArch64 2023-05-03 12:09:49 +01:00