From 9179115ee07fb9abc7e43c2643955b6947cd8fa2 Mon Sep 17 00:00:00 2001 From: Szabolcs Nagy Date: Fri, 28 Jun 2019 15:23:27 +0100 Subject: aarch64: add vector sin, cos, log and pow abi symbols Add simple assembly implementations that fall back to scalar code, similar to the vector exp code. 2019-07-15 Szabolcs Nagy * sysdeps/aarch64/fpu/Makefile: Add functions. * sysdeps/aarch64/fpu/Versions: Add symbols. * sysdeps/aarch64/fpu/libmvec_double_vlen2_cos.S: New file. * sysdeps/aarch64/fpu/libmvec_double_vlen2_log.S: New file. * sysdeps/aarch64/fpu/libmvec_double_vlen2_pow.S: New file. * sysdeps/aarch64/fpu/libmvec_double_vlen2_sin.S: New file. * sysdeps/aarch64/fpu/libmvec_float_vlen4_cosf.S: New file. * sysdeps/aarch64/fpu/libmvec_float_vlen4_logf.S: New file. * sysdeps/aarch64/fpu/libmvec_float_vlen4_powf.S: New file. * sysdeps/aarch64/fpu/libmvec_float_vlen4_sinf.S: New file. * sysdeps/aarch64/fpu/test-double-vlen2-wrappers.c: Add wrappers. * sysdeps/aarch64/fpu/test-float-vlen4-wrappers.c: Add wrappers. * sysdeps/aarch64/libm-test-ulps: Update. * sysdeps/unix/sysv/linux/aarch64/libmvec.abilist: Update. --- sysdeps/aarch64/fpu/libmvec_float_vlen4_sinf.S | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 sysdeps/aarch64/fpu/libmvec_float_vlen4_sinf.S (limited to 'sysdeps/aarch64/fpu/libmvec_float_vlen4_sinf.S') diff --git a/sysdeps/aarch64/fpu/libmvec_float_vlen4_sinf.S b/sysdeps/aarch64/fpu/libmvec_float_vlen4_sinf.S new file mode 100644 index 0000000000..49b8e95a91 --- /dev/null +++ b/sysdeps/aarch64/fpu/libmvec_float_vlen4_sinf.S @@ -0,0 +1,21 @@ +/* Single-precision 4 element vector sin function. + Copyright (C) 2019 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#define SCALAR_FUNCTION sinf +#define VECTOR_FUNCTION _ZGVnN4v_sinf +#include "libmvec_float_vlen4.h" -- cgit 1.4.1