Commit Graph

13 Commits

Author SHA1 Message Date
Jakub Jelinek a855debfb4 libquadmath.texi (FLT128_DIG, [...]): Document.
* libquadmath.texi (FLT128_DIG, FLT128_MIN_10_EXP,
	FLT128_MAX_10_EXP): Document.
	(strtoflt128): Remove obsolete comment.
	* configure.ac (HAVE_STRTOULL): New check.
	* printf/gmp-impl.h (mpn_construct_float128): New prototype,
	define.
	* printf/mul_n.c: Include <config.h>.
	* printf/add_n.c: Likewise.
	* printf/cmp.c: Likewise.
	* printf/fpioconst.c: Likewise.
	* printf/mul_1.c: Likewise.
	* printf/rshift.c: Likewise.
	* printf/lshift.c: Likewise.
	* printf/submul_1.c: Likewise.
	* printf/sub_n.c: Likewise.
	* printf/divrem.c: Likewise.
	* printf/addmul_1.c: Likewise.
	* printf/mul.c: Likewise.
	* printf/quadmath-printf.h (isupper, isdigit, tolower): Change
	to avoid evaluating argument multiple times.
	(isxdigit): Redefine.
	* strtod/strtoflt128.c: New file.
	* strtod/strtod_l.c: New file.
	* strtod/mpn2flt128.c: New file.
	* strtod/grouping.h: New file.
	* strtod/tens_in_limb.c: New file.
	* gdtoa/arith.h: Removed.
	* gdtoa/gd_qnan.h: Removed.
	* gdtoa/gdtoa_fltrnds.h: Removed.
	* gdtoa/gdtoa.h: Removed.
	* gdtoa/gdtoaimp.h: Removed.
	* gdtoa/gethex.c: Removed.
	* gdtoa/gmisc.c: Removed.
	* gdtoa/hd_init.c: Removed.
	* gdtoa/hexnan.c: Removed.
	* gdtoa/makefile: Removed.
	* gdtoa/misc.c: Removed.
	* gdtoa/README.gdtoa: Removed.
	* gdtoa/smisc.c: Removed.
	* gdtoa/strtodg.c: Removed.
	* gdtoa/strtopQ.c: Removed.
	* gdtoa/sum.c: Removed.
	* quadmath.h (FLT128_DIG, FLT128_MIN_10_EXP, FLT128_MAX_10_EXP):
	Define.
	* Makefile.am (libquadmath_la_SOURCES): Remove gdtoa/*, add
	strtod/strtoflt128.c, strtod/mpn2flt128.c and strtod/tens_in_limb.c.
	* config.h.in: Regenerated.
	* configure: Regenerated.
	* Makefile.in: Regenerated.

From-SVN: r170254
2011-02-17 20:57:18 +01:00
Jakub Jelinek 1d92226be3 re PR fortran/47642 (real(kind=16) - libquadmath - segfault on amd64 FreeBSD)
PR fortran/47642
	* libquadmath.texi (quadmath_snprintf): Document.
	(quadmath_flt128tostr): Remove.
	* Makefile.am (libquadmath_la_SOURCES): Add printf/*.c.
	Remove  quadmath_io.c, gdtoa/gdtoa.c, gdtoa/g__fmt.c,
	gdtoa/g_Qfmt.c, gdtoa/dmisc.c and gdtoa/ulp.c.
	* quadmath.h (quadmath_snprintf): New prototype.
	(quadmath_flt128tostr): Remove.
	* quadmath_weak.h (quadmath_snprintf): Add.
	(quadmath_flt128tostr): Remove.
	* configure.ac: New AC_CHECK_HEADERS headers: langinfo.h, wchar.h,
	wctype.h, limits.h, ctype.h, printf.h, errno.h.
	(AC_USE_SYSTEM_EXTENSIONS): Add.
	(HAVE_HIDDEN_VISIBILITY, HAVE_PRINTF_HOOKS,
	USE_LOCALE_SUPPORT, USE_I18N_NUMBER_H): New checks.
	* quadmath.map (QUADMATH_1.0): Add quadmath_snprintf.  Remove
	quadmath_flt128tostr.
	* printf/printf_fphex.c: New file.
	* printf/_itowa.h: New file.
	* printf/mul_n.c: New file.
	* printf/quadmath-printf.h: New file.
	* printf/submul_1.c: New file.
	* printf/quadmath-printf.c: New file.
	* printf/gmp-impl.h: New file.
	* printf/lshift.c: New file.
	* printf/fpioconst.h: New file.
	* printf/add_n.c: New file.
	* printf/cmp.c: New file.
	* printf/sub_n.c: New file.
	* printf/mul.c: New file.
	* printf/divrem.c: New file.
	* printf/addmul_1.c: New file.
	* printf/printf_fp.c: New file.
	* printf/_itoa.h: New file.
	* printf/fpioconst.c: New file.
	* printf/_i18n_number.h: New file.
	* printf/flt1282mpn.c: New file.
	* printf/rshift.c: New file.
	* printf/mul_1.c: New file.
	* quadmath_io.c: Removed.
	* gdtoa/gdtoa.c: Removed.
	* gdtoa/g__fmt.c: Removed.
	* gdtoa/g_Qfmt.c: Removed.
	* gdtoa/dmisc.c: Removed.
	* gdtoa/ulp.c: Removed.
	* config.h.in: Regenerated.
	* configure: Regenerated.
	* Makefile.in: Regenerated.

	* io/write_float.def (DTOAQ): Use quadmath_snprintf instead of
	quadmath_flt128tostr.
	* io/transfer128.c (tmp2): Initialize to quadmath_snprintf instead
	of quadmath_flt128tostr.

From-SVN: r170135
2011-02-14 16:34:44 +01:00
Jakub Jelinek dbc9f6c6ee re PR fortran/46416 (libquadmath: missing functions)
PR fortran/46416
	* quadmath.h (cbrtq, finiteq, isnanq, signbitq, sqrtq): Remove
	const from prototype argument.
	(cimagq, conjq, cprojq, crealq, fdimq, fmaxq, fminq, ilogbq,
	llrintq, log2q, lrintq, nearbyintq, remquoq): New prototypes.
	(__quadmath_extern_inline): Define.
	(cimagq, conjq, crealq): New inlines.
	* Makefile.am (libquadmath_la_SOURCES): Add math/cimagq.c,
	math/conjq.c, math/cprojq.c, math/crealq.c, math/fdimq.c,
	math/fmaxq.c, math/fminq.c, math/ilogbq.c, math/llrintq.c,
	math/log2q.c, math/lrintq.c, math/nearbyintq.c and math/remquoq.c.
	* Makefile.in: Regenerated.
	* quadmath_weak.h (cimagq, conjq, cprojq, crealq, fdimq, fmaxq,
	fminq, ilogbq, llrintq, log2q, lrintq, nearbyintq, remquoq): Add.
	* quadmath-imp.h (__LITTLE_ENDIAN__): Don't define.
	(ieee854_float128): Use __BYTE_ORDER == __ORDER_BIG_ENDIAN__
	tests instead of __BIG_ENDIAN__.
	* quadmath.map (QUADMATH_1.0): Add cimagq, conjq, cprojq, crealq,
	fdimq, fmaxq, fminq, ilogbq, llrintq, log2q, lrintq, nearbyintq
	and remquoq.
	* libquadmath.texi (cimagq, conjq, cprojq, crealq, fdimq, fmaxq,
	fminq, ilogbq, llrintq, log2q, lrintq, nearbyintq, remquoq): Add.
	* math/cprojq.c: New file.
	* math/ilogbq.c: New file.
	* math/fminq.c: New file.
	* math/llrintq.c: New file.
	* math/log2q.c: New file.
	* math/lrintq.c: New file.
	* math/crealq.c: New file.
	* math/nearbyintq.c: New file.
	* math/fmaxq.c: New file.
	* math/conjq.c: New file.
	* math/remquoq.c: New file.
	* math/cimagq.c: New file.
	* math/fdimq.c: New file.

	* math/ldexpq.c: Include errno.h.  Set errno to ERANGE if needed.

From-SVN: r168854
2011-01-16 17:44:35 +01:00
Jakub Jelinek fa23b18209 re PR fortran/46416 (libquadmath: missing functions)
PR fortran/46416
	* quadmath.h (cacosq, cacoshq, casinq, casinhq, catanq, catanhq):
	New prototypes.
	(M_Eq, M_LOG2Eq, M_LOG10Eq, M_LN2q, M_LN10q, M_PIq, M_PI_2q, M_PI_4q,
	M_1_PIq, M_2_PIq, M_2_SQRTPIq, M_SQRT2q, M_SQRT1_2q): Define.
	* quadmath_weak.h (cacosq, cacoshq, casinq, casinhq, catanq,
	catanhq): Add.
	* quadmath-imp.h (fpclassifyq, QUADFP_NAN, QUADFP_INFINITE,
	QUADFP_ZERO, QUADFP_SUBNORMAL, QUADFP_NORMAL): Define.
	* quadmath.map (QUADMATH_1.0): Add cacosq, cacoshq, casinq, casinhq,
	catanq and catanhq.
	* Makefile.am (libquadmath_la_SOURCES): Add math/cacosq.c,
	math/cacoshq.c, math/casinq.c, math/casinhq.c, math/catanq.c
	and math/catanhq.c.
	* Makefile.in: Regenerated.
	* libquadmath.texi (cacosq, cacoshq, casinq, casinhq,
	catanq, catanhq): Add.
	* math/cacoshq.c: New file.
	* math/cacosq.c: New file.
	* math/catanq.c: New file.
	* math/catanhq.c: New file.
	* math/casinq.c: New file.
	* math/casinhq.c: New file.

	* math/hypotq.c (hypotq): Use Q suffix instead of L.
	* math/atan2q.c (tiny, pi_o_4, pi_o_2, pi, pi_lo, atan2q): Likewise.
	* math/cosq.c (cosq): Likewise.

From-SVN: r168853
2011-01-16 17:42:37 +01:00
Jakub Jelinek e8d42d280e re PR fortran/46402 (libquadmath: Add fmalq)
PR fortran/46402
	* quadmath.map (QUADMATH_1.0): Add fmaq.
	* configure.ac: Check for fenv.h, feholdexcept, fesetround,
	feupdateenv, fesetenv and fetestexcept.
	* configure: Regenerated.
	* config.h.in: Regenerated.
	* quadmath.h (fmaq): New prototype.
	* quadmath_weak.h (fmaq): Add.
	* Makefile.am (libquadmath_la_SOURCES): Add math/fmaq.c.
	* Makefile.in: Regenerated.
	* quadmath-imp.h: Include config.h.
	* math/expq.c: Include fenv.h.
	(USE_FENV_H): Define if libm support for fe* is there.
	(expq): Add fesetround etc. support if USE_FENV_H is defined.
	* math/fmaq.c: New file.
	* libquadmath.texi (fmaq): Add.

From-SVN: r168852
2011-01-16 17:40:05 +01:00
Tobias Burnus 642d287307 re PR fortran/47182 (libquadmath.texi: undefined flag: BUGURL)
2011-01-14  Tobias Burnus  <burnus@net-b.de>

        PR fortran/47182
        * configure.ac: Use ACX_BUGURL.
        * libquadmath.texi: Include libquadmath-vers.texi for BUGURL.
        * Makefile.am: Create libquadmath-vers.texi.
        * configure.in: Regenerate.
        * Makefile.in: Regenerate.

From-SVN: r168776
2011-01-14 08:18:54 +01:00
Ralf Wildenhues a6098a2827 re PR fortran/47174 (libquadmath: Build now depends on makeinfo)
Fix PR fortran/47174

libquadmath/:
	PR fortran/47174
	* Makefile.am (libquadmath.info): Unconditionally override
	target, not only if BUILD_LIBQUADMATH.
	* Makefile.in: Regenerate.
	* configure.ac (AM_INIT_AUTOMAKE): Add -Wno-override option to
	avoid warning from automake.

From-SVN: r168555
2011-01-06 22:09:41 +00:00
Tobias Burnus 4c993c44a0 re PR fortran/46543 (libquadmath: Add documentation)
2010-12-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/46543
        * configure.ac: Add texinfo checks.
        * Makefile.am: Handle .texi documentation.
        * libquadmath.texi: New.
        * configure: Regenerated.
        * Makefile.in: Regenerated.

From-SVN: r167583
2010-12-08 09:06:49 +01:00
Dave Korn 7de6ba7a0b re PR target/40125 (libgcc_s DLL installed in wrong directory in cross toolchain)
config/ChangeLog:

2010-12-06  Dave Korn  <dave.korn.cygwin@gmail.com>

	PR target/40125
	PR lto/46695
	* lthostflags.m4: New file.
	(ACX_LT_HOST_FLAGS): Define.

libgfortran/ChangeLog:

2010-12-06  Dave Korn  <dave.korn.cygwin@gmail.com>

	PR target/40125
	PR lto/46695
	* configure.ac: Invoke ACX_LT_HOST_FLAGS.
	* Makefile.am (LTLDFLAGS): Use lt_host_flags.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* Makefile.in: Regenerate.

libgomp/ChangeLog:

2010-12-06  Dave Korn  <dave.korn.cygwin@gmail.com>

	PR target/40125
	PR lto/46695
	* configure.ac: Invoke ACX_LT_HOST_FLAGS.
	* Makefile.am (libgomp_la_LDFLAGS): Use lt_host_flags.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

libjava/ChangeLog:

2010-12-06  Dave Korn  <dave.korn.cygwin@gmail.com>

	PR target/40125
	PR lto/46695
	* configure.ac: Invoke ACX_LT_HOST_FLAGS.
	* configure.host (libgcj_sublib_ltflags): Use lt_host_flags.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* Makefile.in: Regenerate.
	* gcj/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

libobjc/ChangeLog:

2010-12-06  Dave Korn  <dave.korn.cygwin@gmail.com>

	PR target/40125
	PR lto/46695
	* configure.ac (extra_ldflags_libobjc): Invoke ACX_LT_HOST_FLAGS.
	* Makefile.in (lt_host_flags): Import AC_SUBST'd value.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

libquadmath/ChangeLog:

2010-12-06  Dave Korn  <dave.korn.cygwin@gmail.com>

	PR target/40125
	PR lto/46695
	* configure.ac: Invoke ACX_LT_HOST_FLAGS.
	* Makefile.am (libquadmath_la_LDFLAGS): Use lt_host_flags.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* Makefile.in: Regenerate.

libssp/ChangeLog:

2010-12-06  Dave Korn  <dave.korn.cygwin@gmail.com>

	PR target/40125
	PR lto/46695
	* configure.ac: Invoke ACX_LT_HOST_FLAGS.
	* Makefile.am (libssp_la_LDFLAGS): Use lt_host_flags.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* Makefile.in: Regenerate.

libstdc++-v3/ChangeLog:

2010-12-06  Dave Korn  <dave.korn.cygwin@gmail.com>

	PR target/40125
	PR lto/46695
	* configure.ac: Invoke ACX_LT_HOST_FLAGS.
	* configure.host (OPT_LDFLAGS): Use lt_host_flags for cygming.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* Makefile.in: Regenerate.
	* doc/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* libsupc++/Makefile.in: Regenerate.
	* po/Makefile.in: Regenerate.
	* python/Makefile.in: Regenerate.
	* src/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

lto-plugin/ChangeLog:

2010-12-06  Dave Korn  <dave.korn.cygwin@gmail.com>

	PR target/40125
	PR lto/46695
	* configure.ac: Invoke ACX_LT_HOST_FLAGS.
	* Makefile.am (liblto_plugin_la_LDFLAGS): Use lt_host_flags but
	override -bindir setting.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* Makefile.in: Regenerate.

From-SVN: r167480
2010-12-06 00:50:04 +00:00
Tobias Burnus 375a39e29b re PR fortran/46594 (libquadmath intrudes generic (file system) namespace)
2010-11-30  Tobias Burnus  <burnus@net-b.de>

        PR fortran/46594
        * Makefile.am: Install include files in
        target/version specific directory.
        * Makefile.in: Regenerate.

From-SVN: r167295
2010-11-30 13:58:42 +01:00
Kai Tietz fabfcf5e03 configure: Regenerated.
2010-11-29  Kai Tietz  <kai.tietz@onevision.com>

        * configure: Regenerated.
        * Makefile.in: Regenerated.
        * configure.ac (ACX_NONCANONICAL_TARGET): Call it.
        (target_alias): Use AC_SUBST for it.
        (GCC_NO_EXECUTABLES): Call it.
        (AC_PROG_CC): Improve multilib handling.
        Check that gcc is used for compilation.
        Use pattern from libssp for symbol versioning checking.
        * Makefile.am (LTLDFLAGS): Removed.
        (libquadmath_la_LDFLAGS): Add -no-undefined.
        (libquadmath_la_LINK): Commented out.
        (libquadmath_la_DEPENDENCIES): Add libquadmath_la_LIBADD.
        (AM_MAKEFLAGS): Add hack for argument passing by top-level.
        (MAKEOVERRIDES): New.
        * aclocal.m4: Regenerated.

From-SVN: r167259
2010-11-29 18:52:24 +01:00
Rainer Orth 4144e65853 Makefile.am (libquadmath_la_LIBADD): Move -lm ...
* Makefile.am (libquadmath_la_LIBADD): Move -lm ...
	(libquadmath_la_LDFLAGS): ... here.
	(quadmath.map-sun): Tabify.
	Fix sed expression.
	* Makefile.in: Regenerate.

From-SVN: r166937
2010-11-19 12:13:13 +00:00
Francois-Xavier Coudert 1ec601bf9f re PR fortran/32049 (Support on x86_64 also kind=16)
/
2010-11-13  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
            Tobias Burnus  <burnus@net-b.de>

        PR fortran/32049
        * Makefile.def: Add libquadmath; build it with language=fortran.
        * configure.ac: Add libquadmath.
        * Makefile.tpl: Handle multiple libs in check-[+language+].
        * Makefile.in: Regenerate.
        * configure: Regenerate.

libquadmath/
2010-11-13  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
            Tobias Burnus  <burnus@net-b.de>

        PR fortran/32049
        Initial implementation and checkin.

gcc/fortran/
2010-11-13  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
            Tobias Burnus  <burnus@net-b.de>

        PR fortran/32049
        * gfortranspec.c (find_spec_file): New function.
        (lang_specific_driver): Try to find .spec file and use it.
        * trans-io.c (iocall): Define
        * IOCALL_X_REAL128/COMPLEX128(,write).
        (gfc_build_io_library_fndecls): Build decl for __float128 I/O.
        (transfer_expr): Call __float128 I/O functions.
        * trans-types.c (gfc_init_kinds): Allow kind-16 belonging
        to __float128.

gcc/testsuite/
2010-11-13  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
            Tobias Burnus  <burnus@net-b.de>

        PR fortran/32049
        * gfortran.dg/quad_1.f90: New.
        * lib/gcc-defs.exp (gcc-set-multilib-library-path): Use also
        compiler arguments.
        * lib/gfortran.exp (gfortran_link_flags): Add libquadmath to
        library search path; call gcc-set-multilib-library-path with
        arguments such that libgfortran.spec is found.
        (gfortran_init): Add path for libgfortran.spec to
GFORTRAN_UNDER_TEST.

libgomp/
2010-11-13  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
            Tobias Burnus  <burnus@net-b.de>

        PR fortran/32049
        * configure.ac: 
        * configure: Regenerate.

libgfortran/
2010-11-13  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
            Tobias Burnus  <burnus@net-b.de>

        PR fortran/32049
        * Makefile.am: Add missing pow_r16_i4.c, add transfer128.c,
        link libquadmath, if used.
        * acinclude.m4 (LIBGFOR_CHECK_FLOAT128): Add.
        * configure.ac: Use it, touch spec file.
        * gfortran.map: Add pow_r16_i4 and
        transfer_(real,complex)128(,write) functions.
        * intrinsics/cshift0.c (cshift0): Handle __float128 type.
        * intrinsics/erfc_scaled_inc.c: Ditto.
        * intrinsics/pack_generic.c (pack): Ditto
        * intrinsics/spread_generic.c (spread): Ditto.
        * intrinsics/unpack_generic.c (unpack1): Ditto.
        * io/read.c (convert_real): Ditto.
        * io/transfer.c: Update comments.
        * io/transfer128.c: New file.
        * io/write_float.def (write_float): Handle __float128 type.
        * libgfortran.h: #include quadmath_weak.h, define __builtin_infq
        and nanq.
        * m4/mtype.m4: Handle __float128 type.
        * runtime/in_pack_generic.c (internal_pack): Ditto.
        * runtime/in_unpack_generic.c (internal_unpack): Ditto.
        * kinds-override.h: New file.
        * libgfortran.spec.in: Ditto.
        * generated/pow_r16_i4.c: Generated.
        * Makefile.in: Regenerate.
        * configure: Regenerate.
        * config.h: Regenerate.
        * bessel_r10.c: Regenerate.
        * bessel_r16.c: Regenerate.
        * bessel_r4.c: Regenerate.
        * bessel_r8.c: Regenerate.
        * exponent_r16.c: Regenerate.
        * fraction_r16.c: Regenerate.
        * nearest_r16.c: Regenerate.
        * norm2_r10.c: Regenerate.
        * norm2_r16.c: Regenerate.
        * norm2_r4.c: Regenerate.
        * norm2_r8.c: Regenerate.
        * rrspacing_r16.c: Regenerate.
        * set_exponent_r16.c: Regenerate.
        * spacing_r16.c: Regenerate.


Co-Authored-By: Tobias Burnus <burnus@net-b.de>

From-SVN: r166825
2010-11-16 22:23:19 +01:00