From patchwork Tue Dec 4 16:03:10 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tobias Burnus X-Patchwork-Id: 203685 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) by ozlabs.org (Postfix) with SMTP id 7EDAB2C0090 for ; Wed, 5 Dec 2012 03:03:58 +1100 (EST) Comment: DKIM? See http://www.dkim.org DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=gcc.gnu.org; s=default; x=1355241839; h=Comment: DomainKey-Signature:Received:Received:Received:Received: Message-ID:Date:From:User-Agent:MIME-Version:To:CC:Subject: References:In-Reply-To:Content-Type:Mailing-List:Precedence: List-Id:List-Unsubscribe:List-Archive:List-Post:List-Help:Sender: Delivered-To; bh=iWdeJNm00puxoofwRjfd+4ZfnkA=; b=t7oRJJ4LxzBKLi4 LXfiH1JqsoHPvlMvwAKRuulv0dxVAVUXDnXbMZrZ8lDaUih7+OKk0d6KtuDIVPRv j2mesm2JiDgY2A2MVwUC2q+nBPTk0X7/95RI/7c3pxDLwvAAFEmKQH0WNJnUzqxV gNqpas1A+G+3utsTMIP4gpJr0M2Y= Comment: DomainKeys? See http://antispam.yahoo.com/domainkeys DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=default; d=gcc.gnu.org; h=Received:Received:X-SWARE-Spam-Status:X-Spam-Check-By:Received:Received:Message-ID:Date:From:User-Agent:MIME-Version:To:CC:Subject:References:In-Reply-To:Content-Type:Mailing-List:Precedence:List-Id:List-Unsubscribe:List-Archive:List-Post:List-Help:Sender:Delivered-To; b=ftST54nSSAuvyYT3CR93DMxTenU6EbxRKWC86809SPCu/1wzhCLu5Hq95EVXqz E5XJnJ1azt9n2cJAdZpbiIPmX1HNOtE9KEublmU8msyR1zHqp8FkYKPQIbyHTrZM 047X4p/kNYbvVZ+3yynbm3ylSPD8sKKv1bssICNr2SirY=; Received: (qmail 27938 invoked by alias); 4 Dec 2012 16:03:37 -0000 Received: (qmail 27815 invoked by uid 22791); 4 Dec 2012 16:03:33 -0000 X-SWARE-Spam-Status: No, hits=-2.9 required=5.0 tests=AWL, BAYES_00, KHOP_THREADED, RCVD_IN_DNSWL_NONE X-Spam-Check-By: sourceware.org Received: from mx02.qsc.de (HELO mx02.qsc.de) (213.148.130.14) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 04 Dec 2012 16:03:19 +0000 Received: from archimedes.net-b.de (port-92-195-66-45.dynamic.qsc.de [92.195.66.45]) by mx02.qsc.de (Postfix) with ESMTP id ED55E27842; Tue, 4 Dec 2012 17:03:16 +0100 (CET) Message-ID: <50BE1EBE.8020308@net-b.de> Date: Tue, 04 Dec 2012 17:03:10 +0100 From: Tobias Burnus User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/17.0 Thunderbird/17.0 MIME-Version: 1.0 To: David Edelsohn CC: GCC Patches Subject: Re: [libquadmath, patch, committed] Fix exponent reading References: In-Reply-To: Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org David Edelsohn: > The quad_3.f90 testcase fails on AIX, which does not have quad math enabled. I do not understand how the following line can be correct. Well, obviously, it is not correct - otherwise you wouldn't see a failure :-) Corrected by the attached patch (Rev. 194155). Sorry for the mistake. > Fortran does not have early exit Not yet. (It has been proposed for F2003 but specifying the exact semantics/syntax was that difficult that it has been postponed until some future revision.) Tobias Index: ChangeLog =================================================================== --- ChangeLog (Revision 194152) +++ ChangeLog (Arbeitskopie) @@ -1,3 +1,8 @@ +2012-12-04 Tobias Burnus + + * gfortran.dg/quad_3.f90: Fix a condition, + which wrongly required ordered/lazy evaluation. + 2012-12-04 Marcus Shawcroft * gcc.target/aarch64/121127.c: New test. Index: gfortran.dg/quad_3.f90 =================================================================== --- gfortran.dg/quad_3.f90 (Revision 194152) +++ gfortran.dg/quad_3.f90 (Arbeitskopie) @@ -15,6 +15,8 @@ program test_qp ! Run this only with libquadmath; assume that all those systems ! have also kind=10. if (size (real_kinds) >= 4 .and. real_kinds(3) == 10 .and. qp == 16) then + if (real_kinds(3) /= 10) stop + exponent = 4000 b(:) = huge (1.0_qp)/10.0_qp**exponent ! print *, 'real(16) big value: ', b(1)