From owner-cvs-all@FreeBSD.ORG Thu Mar 6 02:46:09 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 2B07B1065674 for ; Thu, 6 Mar 2008 02:46:09 +0000 (UTC) (envelope-from cperciva@freebsd.org) Received: from pd2mo2so.prod.shaw.ca (idcmail-mo1so.shaw.ca [24.71.223.10]) by mx1.freebsd.org (Postfix) with ESMTP id 05A988FC1F for ; Thu, 6 Mar 2008 02:46:08 +0000 (UTC) (envelope-from cperciva@freebsd.org) Received: from pd4mr2so.prod.shaw.ca (pd4mr2so-qfe3.prod.shaw.ca [10.0.141.213]) by l-daemon (Sun ONE Messaging Server 6.0 HotFix 1.01 (built Mar 15 2004)) with ESMTP id <0JXA009WLFOWHCQX@l-daemon> for cvs-all@FreeBSD.org; Wed, 05 Mar 2008 19:46:08 -0700 (MST) Received: from pn2ml6so.prod.shaw.ca ([10.0.121.150]) by pd4mr2so.prod.shaw.ca (Sun Java System Messaging Server 6.2-7.05 (built Sep 5 2006)) with ESMTP id <0JXA00JC9FORWY00@pd4mr2so.prod.shaw.ca> for cvs-all@FreeBSD.org; Wed, 05 Mar 2008 19:46:07 -0700 (MST) Received: from hexahedron.daemonology.net ([24.80.10.198]) by l-daemon (Sun ONE Messaging Server 6.0 HotFix 1.01 (built Mar 15 2004)) with SMTP id <0JXA003DMFOQZ610@l-daemon> for cvs-all@FreeBSD.org; Wed, 05 Mar 2008 19:46:03 -0700 (MST) Received: (qmail 1392 invoked from network); Thu, 06 Mar 2008 02:46:01 +0000 Received: from unknown (HELO hexahedron.daemonology.net) (127.0.0.1) by localhost with SMTP; Thu, 06 Mar 2008 02:46:01 +0000 Date: Wed, 05 Mar 2008 18:46:00 -0800 From: Colin Percival In-reply-to: <20080306095645.V7605@delplex.bde.org> To: Bruce Evans Message-id: <47CF5AE8.2090101@freebsd.org> MIME-version: 1.0 Content-type: text/plain; charset=ISO-8859-1 Content-transfer-encoding: 7bit X-Enigmail-Version: 0.95.5 References: <200803051121.m25BLE03035426@repoman.freebsd.org> <47CE8396.6020803@freebsd.org> <20080306095645.V7605@delplex.bde.org> User-Agent: Thunderbird 2.0.0.9 (X11/20071117) 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: Thu, 06 Mar 2008 02:46:09 -0000 Bruce Evans wrote: > On Wed, 5 Mar 2008, Colin Percival wrote: >> Bruce Evans wrote: >>> Change float_t and double_t to long double on i386. >> >> Doesn't this have a rather severe performance impact on any code which >> uses double_t? > > No. As mentioned in the commit message, this has no performance effect > except in cases where it avoids compiler bugs. [...] if you use long double > for memory variables then you get a severe performance impact and some > space loss for the load instruction, since loading long doubles is > much slower than loading doubles (about 4 times slower on Athlons). Either I'm misunderstanding something, or you seem to be disagreeing with yourself here... if I have the following code double_t foo, bar, foobar; foobar = foo + bar; then prior to this change the processor loads and stores doubles, while after this change the processor loads and stores long doubles, with the associated performance penalty. Colin Percival