From owner-cvs-all@FreeBSD.ORG Fri Mar 7 03:41:16 2008 Return-Path: Delivered-To: cvs-all@FreeBSD.ORG Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 59B3D1065671; Fri, 7 Mar 2008 03:41:16 +0000 (UTC) (envelope-from das@FreeBSD.ORG) Received: from zim.MIT.EDU (ZIM.MIT.EDU [18.95.3.101]) by mx1.freebsd.org (Postfix) with ESMTP id DF47C8FC1D; Fri, 7 Mar 2008 03:41:15 +0000 (UTC) (envelope-from das@FreeBSD.ORG) Received: from zim.MIT.EDU (localhost [127.0.0.1]) by zim.MIT.EDU (8.14.2/8.14.2) with ESMTP id m273gdXI054767; Thu, 6 Mar 2008 22:42:39 -0500 (EST) (envelope-from das@FreeBSD.ORG) Received: (from das@localhost) by zim.MIT.EDU (8.14.2/8.14.2/Submit) id m273gdVR054766; Thu, 6 Mar 2008 22:42:39 -0500 (EST) (envelope-from das@FreeBSD.ORG) Date: Thu, 6 Mar 2008 22:42:39 -0500 From: David Schultz To: Colin Percival Message-ID: <20080307034239.GA54694@zim.MIT.EDU> Mail-Followup-To: Colin Percival , Bruce Evans , src-committers@FreeBSD.ORG, cvs-src@FreeBSD.ORG, cvs-all@FreeBSD.ORG References: <20080306021222.GA46783@zim.MIT.EDU> <47CF5D19.3090100@freebsd.org> <20080306033246.GA47280@zim.MIT.EDU> <47CF7EBF.6000009@freebsd.org> <20080306063452.GB48339@zim.MIT.EDU> <47CF9586.70707@freebsd.org> <20080307085031.P10724@delplex.bde.org> <47D089A4.4060208@freebsd.org> <20080307022416.GA53988@zim.MIT.EDU> <47D0ADCE.2070405@freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <47D0ADCE.2070405@freebsd.org> Cc: cvs-src@FreeBSD.ORG, src-committers@FreeBSD.ORG, Bruce Evans , cvs-all@FreeBSD.ORG Subject: Re: cvs commit: src/sys/i386/include _types.h X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Mar 2008 03:41:16 -0000 On Thu, Mar 06, 2008, Colin Percival wrote: > David Schultz wrote: > > On Thu, Mar 06, 2008, Colin Percival wrote: > >> explicit or implicit final destination. When a variable with a declared format > >> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > >> is a final destination, as in format conversion to a variable, that declared > >> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > >> format of that variable governs its rounding. The format of an implicit > >> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > >> destination, or of an explicit destination without a declared format, is > >> defined by language standard expression evaluation rules. > > > > I think you missed the point about implicit destinations. > > No. Another quote: > 2.2.14 destination: The location for the result of an operation upon one or > more operands. A destination might be either explicitly designated by the user > or implicitly supplied by the system (for example, intermediate results in > subexpressions or arguments for procedures). [...] > > Implicit destinations are things like the (x * y) in "x * y - 1.0" or in > "sqrt(x * y)". > > > The register is an implicit destination. IEEE 754R explains this > > in more detail. > > Really? I can't find any such statements... quite the contrary. When reading the above quotation, you need to keep in mind that in their terminology, 'z = x + y' is an expression and 'x + y' is a subexpression. What you're claiming doesn't even make sense. With your rules, the 'x * y' in 'k = x * y - 1.0' could be evaluated with extra precision, the '- 1.0' would be forced to machine precision, and you'd still have double rounding on the multiply. This really *isn't* what they meant. Look, please have a careful look at section 10.2. This is a really busy week for me, and I don't have the inclination to continue this discussion if you keep sniping.