glibc/bits/libm-simd-decl-stubs.h
Joseph Myers 5c60afdd67 Handle more _FloatN, _FloatNx types in bits/libm-simd-decl-stubs.h.
This patch adds the macro definitions to bits/libm-simd-decl-stubs.h
required to handle additional _FloatN and _FloatNx types.

Tested for x86_64, including in conjunction with _Float64x support
patches.

	* bits/libm-simd-decl-stubs.h (__DECL_SIMD_cosf16): New macro.
	(__DECL_SIMD_cosf32): Likewise.
	(__DECL_SIMD_cosf64): Likewise.
	(__DECL_SIMD_cosf32x): Likewise.
	(__DECL_SIMD_cosf64x): Likewise.
	(__DECL_SIMD_cosf128x): Likewise.
	(__DECL_SIMD_sinf16): Likewise.
	(__DECL_SIMD_sinf32): Likewise.
	(__DECL_SIMD_sinf64): Likewise.
	(__DECL_SIMD_sinf32x): Likewise.
	(__DECL_SIMD_sinf64x): Likewise.
	(__DECL_SIMD_sinf128x): Likewise.
	(__DECL_SIMD_sincosf16): Likewise.
	(__DECL_SIMD_sincosf32): Likewise.
	(__DECL_SIMD_sincosf64): Likewise.
	(__DECL_SIMD_sincosf32x): Likewise.
	(__DECL_SIMD_sincosf64x): Likewise.
	(__DECL_SIMD_sincosf128x): Likewise.
	(__DECL_SIMD_logf16): Likewise.
	(__DECL_SIMD_logf32): Likewise.
	(__DECL_SIMD_logf64): Likewise.
	(__DECL_SIMD_logf32x): Likewise.
	(__DECL_SIMD_logf64x): Likewise.
	(__DECL_SIMD_logf128x): Likewise.
	(__DECL_SIMD_expf16): Likewise.
	(__DECL_SIMD_expf32): Likewise.
	(__DECL_SIMD_expf64): Likewise.
	(__DECL_SIMD_expf32x): Likewise.
	(__DECL_SIMD_expf64x): Likewise.
	(__DECL_SIMD_expf128x): Likewise.
	(__DECL_SIMD_powf16): Likewise.
	(__DECL_SIMD_powf32): Likewise.
	(__DECL_SIMD_powf64): Likewise.
	(__DECL_SIMD_powf32x): Likewise.
	(__DECL_SIMD_powf64x): Likewise.
	(__DECL_SIMD_powf128x): Likewise.
2017-11-24 21:11:37 +00:00

102 lines
2.9 KiB
C

/* Empty definitions required for __MATHCALL_VEC unfolding in mathcalls.h.
Copyright (C) 2014-2017 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
<http://www.gnu.org/licenses/>. */
#ifndef _MATH_H
# error "Never include <bits/libm-simd-decl-stubs.h> directly;\
include <math.h> instead."
#endif
/* Needed definitions could be generated with:
for func in $(grep __MATHCALL_VEC math/bits/mathcalls.h |\
sed -r "s|__MATHCALL_VEC.?\(||; s|,.*||"); do
echo "#define __DECL_SIMD_${func}";
echo "#define __DECL_SIMD_${func}f";
echo "#define __DECL_SIMD_${func}l";
done
*/
#ifndef _BITS_LIBM_SIMD_DECL_STUBS_H
#define _BITS_LIBM_SIMD_DECL_STUBS_H 1
#define __DECL_SIMD_cos
#define __DECL_SIMD_cosf
#define __DECL_SIMD_cosl
#define __DECL_SIMD_cosf16
#define __DECL_SIMD_cosf32
#define __DECL_SIMD_cosf64
#define __DECL_SIMD_cosf128
#define __DECL_SIMD_cosf32x
#define __DECL_SIMD_cosf64x
#define __DECL_SIMD_cosf128x
#define __DECL_SIMD_sin
#define __DECL_SIMD_sinf
#define __DECL_SIMD_sinl
#define __DECL_SIMD_sinf16
#define __DECL_SIMD_sinf32
#define __DECL_SIMD_sinf64
#define __DECL_SIMD_sinf128
#define __DECL_SIMD_sinf32x
#define __DECL_SIMD_sinf64x
#define __DECL_SIMD_sinf128x
#define __DECL_SIMD_sincos
#define __DECL_SIMD_sincosf
#define __DECL_SIMD_sincosl
#define __DECL_SIMD_sincosf16
#define __DECL_SIMD_sincosf32
#define __DECL_SIMD_sincosf64
#define __DECL_SIMD_sincosf128
#define __DECL_SIMD_sincosf32x
#define __DECL_SIMD_sincosf64x
#define __DECL_SIMD_sincosf128x
#define __DECL_SIMD_log
#define __DECL_SIMD_logf
#define __DECL_SIMD_logl
#define __DECL_SIMD_logf16
#define __DECL_SIMD_logf32
#define __DECL_SIMD_logf64
#define __DECL_SIMD_logf128
#define __DECL_SIMD_logf32x
#define __DECL_SIMD_logf64x
#define __DECL_SIMD_logf128x
#define __DECL_SIMD_exp
#define __DECL_SIMD_expf
#define __DECL_SIMD_expl
#define __DECL_SIMD_expf16
#define __DECL_SIMD_expf32
#define __DECL_SIMD_expf64
#define __DECL_SIMD_expf128
#define __DECL_SIMD_expf32x
#define __DECL_SIMD_expf64x
#define __DECL_SIMD_expf128x
#define __DECL_SIMD_pow
#define __DECL_SIMD_powf
#define __DECL_SIMD_powl
#define __DECL_SIMD_powf16
#define __DECL_SIMD_powf32
#define __DECL_SIMD_powf64
#define __DECL_SIMD_powf128
#define __DECL_SIMD_powf32x
#define __DECL_SIMD_powf64x
#define __DECL_SIMD_powf128x
#endif