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 28 VECTOR_WRAPPER (WRAPPER_NAME (cosf), _ZGVdN8v_cosf) 29 VECTOR_WRAPPER (WRAPPER_NAME (sinf), _ZGVdN8v_sinf) 30 VECTOR_WRAPPER (WRAPPER_NAME (logf), _ZGVdN8v_logf) 31 VECTOR_WRAPPER (WRAPPER_NAME (expf), _ZGVdN8v_expf) 32 VECTOR_WRAPPER_ff (WRAPPER_NAME (powf), _ZGVdN8vv_powf) 33 VECTOR_WRAPPER (WRAPPER_NAME (acosf), _ZGVdN8v_acosf) 34 VECTOR_WRAPPER (WRAPPER_NAME (atanf), _ZGVdN8v_atanf) 35 VECTOR_WRAPPER (WRAPPER_NAME (asinf), _ZGVdN8v_asinf) 36 VECTOR_WRAPPER_ff (WRAPPER_NAME (hypotf), _ZGVdN8vv_hypotf) 37 VECTOR_WRAPPER (WRAPPER_NAME (exp2f), _ZGVdN8v_exp2f) 38 VECTOR_WRAPPER (WRAPPER_NAME (exp10f), _ZGVdN8v_exp10f) 39 VECTOR_WRAPPER (WRAPPER_NAME (coshf), _ZGVdN8v_coshf) 40 VECTOR_WRAPPER (WRAPPER_NAME (expm1f), _ZGVdN8v_expm1f) 41 VECTOR_WRAPPER (WRAPPER_NAME (sinhf), _ZGVdN8v_sinhf) 42 VECTOR_WRAPPER (WRAPPER_NAME (cbrtf), _ZGVdN8v_cbrtf) 43 VECTOR_WRAPPER_ff (WRAPPER_NAME (atan2f), _ZGVdN8vv_atan2f) 44 VECTOR_WRAPPER (WRAPPER_NAME (log10f), _ZGVdN8v_log10f) 45 VECTOR_WRAPPER (WRAPPER_NAME (log2f), _ZGVdN8v_log2f) 46 VECTOR_WRAPPER (WRAPPER_NAME (log1pf), _ZGVdN8v_log1pf) 47 VECTOR_WRAPPER (WRAPPER_NAME (atanhf), _ZGVdN8v_atanhf) 48 VECTOR_WRAPPER (WRAPPER_NAME (acoshf), _ZGVdN8v_acoshf) 49 VECTOR_WRAPPER (WRAPPER_NAME (erff), _ZGVdN8v_erff) 50 VECTOR_WRAPPER (WRAPPER_NAME (tanhf), _ZGVdN8v_tanhf) 51 VECTOR_WRAPPER (WRAPPER_NAME (asinhf), _ZGVdN8v_asinhf) 52 VECTOR_WRAPPER (WRAPPER_NAME (erfcf), _ZGVdN8v_erfcf) 53 VECTOR_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__ 61 VECTOR_WRAPPER_fFF_3 (WRAPPER_NAME (sincosf), _ZGVdN8vvv_sincosf) 62 #else 63 VECTOR_WRAPPER_fFF_2 (WRAPPER_NAME (sincosf), _ZGVdN8vvv_sincosf) 64 #endif 65