Include bits/cmathcalls.h for more _FloatN, _FloatNx types.

Continuing the preparation for additional _FloatN / _FloatNx type
support, this patch arranges for <bits/cmathcalls.h> to be included by
<complex.h> for each such type under conditions and with macros
defined corresponding to those used for _Float128.

Tested for x86_64.

	* math/complex.h
	[(__HAVE_DISTINCT_FLOAT16 || (__HAVE_FLOAT16 && !_LIBC))
	&& __GLIBC_USE (IEC_60559_TYPES_EXT)]: Include <bits/cmathcalls.h>
	with appropriate macros defined and undefined.
	[(__HAVE_DISTINCT_FLOAT32 || (__HAVE_FLOAT32 && !_LIBC))
	&& __GLIBC_USE (IEC_60559_TYPES_EXT)]: Likewise.
	[(__HAVE_DISTINCT_FLOAT64 || (__HAVE_FLOAT64 && !_LIBC))
	&& __GLIBC_USE (IEC_60559_TYPES_EXT)]: Likewise.
	[(__HAVE_DISTINCT_FLOAT32X || (__HAVE_FLOAT32X && !_LIBC))
	&& __GLIBC_USE (IEC_60559_TYPES_EXT)]: Likewise.
	[(__HAVE_DISTINCT_FLOAT64X || (__HAVE_FLOAT64X && !_LIBC))
	&& __GLIBC_USE (IEC_60559_TYPES_EXT)]: Likewise.
	[(__HAVE_DISTINCT_FLOAT128X || (__HAVE_FLOAT128X && !_LIBC))
	&& __GLIBC_USE (IEC_60559_TYPES_EXT)]: Likewise.
This commit is contained in:
Joseph Myers 2017-11-01 23:42:31 +00:00
parent 2f1b212e54
commit 260fbd0a39
2 changed files with 87 additions and 0 deletions

View File

@ -1,5 +1,20 @@
2017-11-01 Joseph Myers <joseph@codesourcery.com>
* math/complex.h
[(__HAVE_DISTINCT_FLOAT16 || (__HAVE_FLOAT16 && !_LIBC))
&& __GLIBC_USE (IEC_60559_TYPES_EXT)]: Include <bits/cmathcalls.h>
with appropriate macros defined and undefined.
[(__HAVE_DISTINCT_FLOAT32 || (__HAVE_FLOAT32 && !_LIBC))
&& __GLIBC_USE (IEC_60559_TYPES_EXT)]: Likewise.
[(__HAVE_DISTINCT_FLOAT64 || (__HAVE_FLOAT64 && !_LIBC))
&& __GLIBC_USE (IEC_60559_TYPES_EXT)]: Likewise.
[(__HAVE_DISTINCT_FLOAT32X || (__HAVE_FLOAT32X && !_LIBC))
&& __GLIBC_USE (IEC_60559_TYPES_EXT)]: Likewise.
[(__HAVE_DISTINCT_FLOAT64X || (__HAVE_FLOAT64X && !_LIBC))
&& __GLIBC_USE (IEC_60559_TYPES_EXT)]: Likewise.
[(__HAVE_DISTINCT_FLOAT128X || (__HAVE_FLOAT128X && !_LIBC))
&& __GLIBC_USE (IEC_60559_TYPES_EXT)]: Likewise.
* math/complex.h
[(__HAVE_DISTINCT_FLOAT128 || (__HAVE_FLOAT128 && !LIBC))
&& __GLIBC_USE (IEC_60559_TYPES_EXT)]: Move conditional code after

View File

@ -131,6 +131,42 @@ __BEGIN_DECLS
#undef _Mdouble_
#undef __MATH_PRECNAME
#if (__HAVE_DISTINCT_FLOAT16 || (__HAVE_FLOAT16 && !defined _LIBC)) \
&& __GLIBC_USE (IEC_60559_TYPES_EXT)
# undef _Mdouble_complex_
# define _Mdouble_complex_ __CFLOAT16
# define _Mdouble_ _Float16
# define __MATH_PRECNAME(name) name##f16
# include <bits/cmathcalls.h>
# undef _Mdouble_
# undef __MATH_PRECNAME
# undef _Mdouble_complex_
#endif
#if (__HAVE_DISTINCT_FLOAT32 || (__HAVE_FLOAT32 && !defined _LIBC)) \
&& __GLIBC_USE (IEC_60559_TYPES_EXT)
# undef _Mdouble_complex_
# define _Mdouble_complex_ __CFLOAT32
# define _Mdouble_ _Float32
# define __MATH_PRECNAME(name) name##f32
# include <bits/cmathcalls.h>
# undef _Mdouble_
# undef __MATH_PRECNAME
# undef _Mdouble_complex_
#endif
#if (__HAVE_DISTINCT_FLOAT64 || (__HAVE_FLOAT64 && !defined _LIBC)) \
&& __GLIBC_USE (IEC_60559_TYPES_EXT)
# undef _Mdouble_complex_
# define _Mdouble_complex_ __CFLOAT64
# define _Mdouble_ _Float64
# define __MATH_PRECNAME(name) name##f64
# include <bits/cmathcalls.h>
# undef _Mdouble_
# undef __MATH_PRECNAME
# undef _Mdouble_complex_
#endif
#if (__HAVE_DISTINCT_FLOAT128 || (__HAVE_FLOAT128 && !defined _LIBC)) \
&& __GLIBC_USE (IEC_60559_TYPES_EXT)
# undef _Mdouble_complex_
@ -143,6 +179,42 @@ __BEGIN_DECLS
# undef _Mdouble_complex_
#endif
#if (__HAVE_DISTINCT_FLOAT32X || (__HAVE_FLOAT32X && !defined _LIBC)) \
&& __GLIBC_USE (IEC_60559_TYPES_EXT)
# undef _Mdouble_complex_
# define _Mdouble_complex_ __CFLOAT32X
# define _Mdouble_ _Float32x
# define __MATH_PRECNAME(name) name##f32x
# include <bits/cmathcalls.h>
# undef _Mdouble_
# undef __MATH_PRECNAME
# undef _Mdouble_complex_
#endif
#if (__HAVE_DISTINCT_FLOAT64X || (__HAVE_FLOAT64X && !defined _LIBC)) \
&& __GLIBC_USE (IEC_60559_TYPES_EXT)
# undef _Mdouble_complex_
# define _Mdouble_complex_ __CFLOAT64X
# define _Mdouble_ _Float64x
# define __MATH_PRECNAME(name) name##f64x
# include <bits/cmathcalls.h>
# undef _Mdouble_
# undef __MATH_PRECNAME
# undef _Mdouble_complex_
#endif
#if (__HAVE_DISTINCT_FLOAT128X || (__HAVE_FLOAT128X && !defined _LIBC)) \
&& __GLIBC_USE (IEC_60559_TYPES_EXT)
# undef _Mdouble_complex_
# define _Mdouble_complex_ __CFLOAT128X
# define _Mdouble_ _Float128x
# define __MATH_PRECNAME(name) name##f128x
# include <bits/cmathcalls.h>
# undef _Mdouble_
# undef __MATH_PRECNAME
# undef _Mdouble_complex_
#endif
#undef __MATHDECL_1
#undef __MATHDECL
#undef __MATHCALL