1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-07-28 00:21:52 +03:00

float128: Add conversion from float128 to mpn

Reuse the code for __mpn_extract_long_double to implement
__mpn_extract_float128.

	* include/gmp.h: Include bits/floatn.h
	(__mpn_extract_float128): Declare when __HAVE_DISTINCT_FLOAT128 is 1.
	* stdlib/gmp-impl.h: Also check if alloca is not defined before
	including stack-alloc.h.  It could have been defined by other header
	which not necessarily defines HAVE_ALLOCA.
	* sysdeps/ieee754/float128/Makefile: New file.
	* sysdeps/ieee754/float128/float1282mpn.c: New file.
	* sysdeps/ieee754/float128/float128_private.h: Include gmp.h before
	redefining __mpn_extract_long_double to __mpn_extract_float128, then
	redefine __mpn_extract_long_double to __mpn_extract_float128.
	* sysdeps/ieee754/ldbl-128/ldbl2mpn.c: Replace long double with
	_Float128 to allow float128_private.h overrides.
This commit is contained in:
Gabriel F. T. Gomes
2016-11-03 12:26:52 -02:00
parent 82c19bdfe3
commit 32bf1d09da
7 changed files with 52 additions and 2 deletions

View File

@ -47,7 +47,8 @@ along with the GNU MP Library; see the file COPYING.LIB. If not, see
#endif
#endif
#if ! defined (HAVE_ALLOCA) || defined (USE_STACK_ALLOC)
#if (! defined (alloca) && ! defined (HAVE_ALLOCA)) \
|| defined (USE_STACK_ALLOC)
#include "stack-alloc.h"
#else
#define TMP_DECL(m)