1/* Wrapper part of tests for AVX2 ISA versions of vector math functions.
2 Copyright (C) 2014-2022 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser General Public
16 License along with the GNU C Library; if not, see
17 <https://www.gnu.org/licenses/>. */
18
19#include "test-float-vlen8.h"
20#include "test-math-vector-sincos.h"
21#include <immintrin.h>
22
23#undef VEC_SUFF
24#define VEC_SUFF _vlen8_avx2
25
26#define VEC_TYPE __m256
27
28VECTOR_WRAPPER (WRAPPER_NAME (cosf), _ZGVdN8v_cosf)
29VECTOR_WRAPPER (WRAPPER_NAME (sinf), _ZGVdN8v_sinf)
30VECTOR_WRAPPER (WRAPPER_NAME (logf), _ZGVdN8v_logf)
31VECTOR_WRAPPER (WRAPPER_NAME (expf), _ZGVdN8v_expf)
32VECTOR_WRAPPER_ff (WRAPPER_NAME (powf), _ZGVdN8vv_powf)
33VECTOR_WRAPPER (WRAPPER_NAME (acosf), _ZGVdN8v_acosf)
34VECTOR_WRAPPER (WRAPPER_NAME (atanf), _ZGVdN8v_atanf)
35VECTOR_WRAPPER (WRAPPER_NAME (asinf), _ZGVdN8v_asinf)
36VECTOR_WRAPPER_ff (WRAPPER_NAME (hypotf), _ZGVdN8vv_hypotf)
37VECTOR_WRAPPER (WRAPPER_NAME (exp2f), _ZGVdN8v_exp2f)
38VECTOR_WRAPPER (WRAPPER_NAME (exp10f), _ZGVdN8v_exp10f)
39VECTOR_WRAPPER (WRAPPER_NAME (coshf), _ZGVdN8v_coshf)
40VECTOR_WRAPPER (WRAPPER_NAME (expm1f), _ZGVdN8v_expm1f)
41VECTOR_WRAPPER (WRAPPER_NAME (sinhf), _ZGVdN8v_sinhf)
42VECTOR_WRAPPER (WRAPPER_NAME (cbrtf), _ZGVdN8v_cbrtf)
43VECTOR_WRAPPER_ff (WRAPPER_NAME (atan2f), _ZGVdN8vv_atan2f)
44VECTOR_WRAPPER (WRAPPER_NAME (log10f), _ZGVdN8v_log10f)
45VECTOR_WRAPPER (WRAPPER_NAME (log2f), _ZGVdN8v_log2f)
46VECTOR_WRAPPER (WRAPPER_NAME (log1pf), _ZGVdN8v_log1pf)
47VECTOR_WRAPPER (WRAPPER_NAME (atanhf), _ZGVdN8v_atanhf)
48VECTOR_WRAPPER (WRAPPER_NAME (acoshf), _ZGVdN8v_acoshf)
49VECTOR_WRAPPER (WRAPPER_NAME (erff), _ZGVdN8v_erff)
50VECTOR_WRAPPER (WRAPPER_NAME (tanhf), _ZGVdN8v_tanhf)
51VECTOR_WRAPPER (WRAPPER_NAME (asinhf), _ZGVdN8v_asinhf)
52VECTOR_WRAPPER (WRAPPER_NAME (erfcf), _ZGVdN8v_erfcf)
53VECTOR_WRAPPER (WRAPPER_NAME (tanf), _ZGVdN8v_tanf)
54
55/* Redefinition of wrapper to be compatible with _ZGVdN8vvv_sincosf. */
56#undef VECTOR_WRAPPER_fFF
57
58#define VEC_INT_TYPE __m256i
59
60#ifndef __ILP32__
61VECTOR_WRAPPER_fFF_3 (WRAPPER_NAME (sincosf), _ZGVdN8vvv_sincosf)
62#else
63VECTOR_WRAPPER_fFF_2 (WRAPPER_NAME (sincosf), _ZGVdN8vvv_sincosf)
64#endif
65

source code of glibc/sysdeps/x86_64/fpu/test-float-vlen8-avx2-wrappers.c