1. 31 Oct, 2012 1 commit
    • complex.c (csqrtq): NaN and INF fixes. · 737df6e6
      2012-10-31  Tobias Burnus  <burnus@net-b.de>
                  Joseph Myers <joseph@codesourcery.com>
                  David S. Miller <davem@davemloft.net>
                  Ulrich Drepper <drepper@redhat.com>
                  Marek Polacek <polacek@redhat.com>:
                  Petr Baudis <pasky@suse.cz>
      
              * math/complex.c (csqrtq): NaN and INF fixes.
              * math/sqrtq.c (sqrt): NaN, INF and < 0 fixes.
              * math/expm1q.c (expm1q): Changes from GLIBC. Use expq for
              large parameters. Fix errno for boundary conditions.
              * math/finiteq.c (finiteq): Add comment.
              * math/fmaq.c (fmaq): Changes from GLIBC. Fix missing underflows
              and bad results for some subnormal results. Fix sign of inexact
              zero return. Fix sign of exact zero return.
              Ensure additions are not scheduled after fetestexcept.
              * math/jnq.c (jnq): Changes from GLIBC. Set up errno properly
              for ynq. Fix jnq precision.
              * math/nearbyintq.c (nearbyintq): Changes from GLIBC. Do not
              manipulate bits before adding and subtracting TWO112[sx].
              * math/rintq.c (rintq): Ditto.
              * math/scalbnq.c (scalbnq): Changes from GLIBC. Fix integer
              overflow.
      
      
      Co-Authored-By: David S. Miller <davem@davemloft.net>
      Co-Authored-By: Joseph Myers <joseph@codesourcery.com>
      Co-Authored-By: Ulrich Drepper <drepper@redhat.com>
      
      From-SVN: r193037
      Tobias Burnus committed
  2. 16 Nov, 2010 1 commit
    • re PR fortran/32049 (Support on x86_64 also kind=16) · 1ec601bf
      /
      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
      Francois-Xavier Coudert committed