diff options
author | Joe Ramsay <Joe.Ramsay@arm.com> | 2023-11-03 12:12:22 +0000 |
---|---|---|
committer | Szabolcs Nagy <szabolcs.nagy@arm.com> | 2023-11-10 17:07:43 +0000 |
commit | b07038c5d304a7afc312516ce0ff886a57bf3163 (patch) | |
tree | 34d0a8e9e4d170229e4385dd849883c9af5dbee9 /sysdeps/aarch64/fpu/test-vpcs-vector-wrapper.h | |
parent | d30c39f80d19d62e8fd750c424ccb7eb06b617e5 (diff) | |
download | glibc-b07038c5d304a7afc312516ce0ff886a57bf3163.tar.gz glibc-b07038c5d304a7afc312516ce0ff886a57bf3163.tar.xz glibc-b07038c5d304a7afc312516ce0ff886a57bf3163.zip |
aarch64: Add vector implementations of atan2 routines
Diffstat (limited to 'sysdeps/aarch64/fpu/test-vpcs-vector-wrapper.h')
-rw-r--r-- | sysdeps/aarch64/fpu/test-vpcs-vector-wrapper.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/sysdeps/aarch64/fpu/test-vpcs-vector-wrapper.h b/sysdeps/aarch64/fpu/test-vpcs-vector-wrapper.h index f8e6a3fb9d..9551a9ea6f 100644 --- a/sysdeps/aarch64/fpu/test-vpcs-vector-wrapper.h +++ b/sysdeps/aarch64/fpu/test-vpcs-vector-wrapper.h @@ -29,3 +29,17 @@ TEST_VEC_LOOP (mr, VEC_LEN); \ return ((FLOAT) mr[0]); \ } + +#define VPCS_VECTOR_WRAPPER_ff(scalar_func, vector_func) \ + extern __attribute__ ((aarch64_vector_pcs)) \ + VEC_TYPE vector_func (VEC_TYPE, VEC_TYPE); \ + FLOAT scalar_func (FLOAT x, FLOAT y) \ + { \ + int i; \ + VEC_TYPE mx, my; \ + INIT_VEC_LOOP (mx, x, VEC_LEN); \ + INIT_VEC_LOOP (my, y, VEC_LEN); \ + VEC_TYPE mr = vector_func (mx, my); \ + TEST_VEC_LOOP (mr, VEC_LEN); \ + return ((FLOAT) mr[0]); \ + } |