From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12395 invoked by alias); 6 Aug 2004 20:36:33 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 12376 invoked from network); 6 Aug 2004 20:36:31 -0000 Received: from unknown (HELO colossus.systems.pipex.net) (62.241.160.73) by sourceware.org with SMTP; 6 Aug 2004 20:36:31 -0000 Received: from nowt.org (81-178-207-113.dsl.pipex.com [81.178.207.113]) by colossus.systems.pipex.net (Postfix) with ESMTP id 411141C00196; Fri, 6 Aug 2004 21:36:28 +0100 (BST) Received: from wren.home (wren.home [192.168.1.7]) by nowt.org (Postfix) with ESMTP id 02F7CAC92; Fri, 6 Aug 2004 21:36:27 +0100 (BST) From: Paul Brook Organization: CodeSourcery To: fortran@gcc.gnu.org Subject: Re: Patch ping Date: Fri, 06 Aug 2004 20:45:00 -0000 User-Agent: KMail/1.6.2 Cc: Steve Kargl , gcc-patches@gcc.gnu.org References: <20040731163035.GA7104@troutmask.apl.washington.edu> In-Reply-To: <20040731163035.GA7104@troutmask.apl.washington.edu> MIME-Version: 1.0 Content-Disposition: inline Content-Type: Multipart/Mixed; boundary="Boundary-00=_Lv+EBG838JOJBPg" Message-Id: <200408062136.27406.paul@codesourcery.com> X-SW-Source: 2004-08/txt/msg00420.txt.bz2 --Boundary-00=_Lv+EBG838JOJBPg Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Content-length: 3144 On Saturday 31 July 2004 17:30, Steve Kargl wrote: > http://gcc.gnu.org/ml/gcc-patches/2004-07/msg02001.html I made gfc_mpfr_to_mpz use the mprf->integer conversion routines rather than going via a string. Applied as attached. Paul 2004-08-06 Steven G. Kargl * arith.c: Add #define for model numbers. Remove global GMP variables. (natural_logarithm,common_logarithm,exponential,sine, cosine,arctangent,hypercos,hypersine ): Remove. (gfc_mpfr_to_mpz,gfc_set_model_kind,gfc_set_model): New functions. (arctangent2,gfc_arith_init_1,gfc_arith_done_1 gfc_check_real_range, gfc_constant_result, gfc_range_check, gfc_arith_uminus,gfc_arith_plus, gfc_arith_minus, gfc_arith_times, gfc_arith_divide,complex_reciprocal,complex_pow_ui, gfc_arith_power,gfc_compare_expr,compare_complex,gfc_convert_real, gfc_convert_complex,gfc_int2real,gfc_int2complex, gfc_real2int,gfc_real2real,gfc_real2complex, gfc_complex2int,gfc_complex2real,gfc_complex2complex): Convert GMP to MPFR, use new functions. * arith.h: Remove extern global variables. (natural_logarithm,common_logarithm,exponential, sine, cosine, arctangent,hypercos,hypersine): Remove prototypes. (arctangent2): Update prototype from GMP to MPFR. (gfc_mpfr_to_mpz, gfc_set_model_kind,gfc_set_model): Add prototypes. * dump-parse-tree.c (gfc_show_expr): Convert GMP to MPFR. * expr.c (free_expr0,gfc_copy_expr): Convert GMP to MPFR. * gfortran.h (GFC_REAL_BITS): Remove. (arith): Add ARITH_NAN. Include mpfr.h. Define GFC_RND_MODE. Rename GCC_GFORTRAN_H GFC_GFC_H. (gfc_expr): Convert GMP to MPFR. * module.c: Add arith.h, correct type in comment. (mio_gmp_real): Convert GMP to MPFR. (mio_expr): Use gfc_set_model_kind(). * primary.c: Update copyright date with 2004. (match_real_constant,match_const_complex_part): Convert GMP to MPFR. * simplify.c: Remove global GMP variables (gfc_simplify_abs,gfc_simplify_acos,gfc_simplify_aimag, gfc_simplify_aint,gfc_simplify_dint,gfc_simplify_anint, gfc_simplify_dnint,gfc_simplify_asin,gfc_simplify_atan, gfc_simplify_atan2,gfc_simplify_ceiling,simplify_cmplx, gfc_simplify_conjg,gfc_simplify_cos,gfc_simplify_cosh, gfc_simplify_dim,gfc_simplify_dprod,gfc_simplify_epsilon, gfc_simplify_exp,gfc_simplify_exponent,gfc_simplify_floor, gfc_simplify_fraction,gfc_simplify_huge,gfc_simplify_int, gfc_simplify_ifix,gfc_simplify_idint,gfc_simplify_log, gfc_simplify_log10,simplify_min_max,gfc_simplify_mod, gfc_simplify_modulo,gfc_simplify_nearest,simplify_nint, gfc_simplify_rrspacing,gfc_simplify_scale, gfc_simplify_set_exponent,gfc_simplify_sign,gfc_simplify_sin, gfc_simplify_sinh,gfc_simplify_spacing,gfc_simplify_sqrt, gfc_simplify_tan,gfc_simplify_tanh,gfc_simplify_tiny, gfc_simplify_init_1,gfc_simplify_done_1): Convert GMP to MPFR. Use new functions. * trans-const.c (gfc_conv_mpfr_to_tree): Rename from gfc_conv_mpf_to_tree. Convert it to use MPFR (gfc_conv_constant_to_tree): Use it. * trans-const.h: Update prototype for gfc_conv_mpfr_to_tree(). * trans-intrinsic.c: Add arith.h, remove gmp.h (gfc_conv_intrinsic_aint,gfc_conv_intrinsic_mod): Convert GMP to MPFR. --Boundary-00=_Lv+EBG838JOJBPg Content-Type: application/x-gzip; name="patch.mpfr.gz" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="patch.mpfr.gz" Content-length: 26991 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 72tA7iGBthm8/j+JZe7oQrABAA== --Boundary-00=_Lv+EBG838JOJBPg--