From owner-freebsd-amd64@FreeBSD.ORG Tue Feb 21 07:20:54 2012 Return-Path: Delivered-To: freebsd-amd64@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A723D1065675 for ; Tue, 21 Feb 2012 07:20:54 +0000 (UTC) (envelope-from sgk@troutmask.apl.washington.edu) Received: from troutmask.apl.washington.edu (troutmask.apl.washington.edu [128.95.76.21]) by mx1.freebsd.org (Postfix) with ESMTP id 834898FC14 for ; Tue, 21 Feb 2012 07:20:54 +0000 (UTC) Received: from troutmask.apl.washington.edu (localhost.apl.washington.edu [127.0.0.1]) by troutmask.apl.washington.edu (8.14.5/8.14.5) with ESMTP id q1L7KsPB010385; Mon, 20 Feb 2012 23:20:54 -0800 (PST) (envelope-from sgk@troutmask.apl.washington.edu) Received: (from sgk@localhost) by troutmask.apl.washington.edu (8.14.5/8.14.5/Submit) id q1L7KscO010384; Mon, 20 Feb 2012 23:20:54 -0800 (PST) (envelope-from sgk) Date: Mon, 20 Feb 2012 23:20:54 -0800 From: Steve Kargl To: "Thomas D. Dean" Message-ID: <20120221072053.GA10302@troutmask.apl.washington.edu> References: <4F3EA37F.9010207@speakeasy.org> <4F3EC0B4.6050107@speakeasy.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4F3EC0B4.6050107@speakeasy.org> User-Agent: Mutt/1.4.2.3i Cc: freebsd-amd64@freebsd.org Subject: Re: Gcc46 and 128 Bit Floating Point X-BeenThere: freebsd-amd64@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the AMD64 platform List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Feb 2012 07:20:54 -0000 On Fri, Feb 17, 2012 at 01:03:48PM -0800, Thomas D. Dean wrote: > On 02/17/12 11:31, Peter Wemm wrote: > >On Fri, Feb 17, 2012 at 10:59 AM, Thomas D. Dean > >wrote: > >[..] > >>gcc46 is generating 80-bit floating point instructions. > >> > >>The gcc docs state gcc46 will generate 128-bit instructions. > >> > >>I can get gfortran46 to generate 128-bit instructions. > >> > >>How do I get gcc46 to generate 128-bit floating point instructions? > > > >"As of gcc 4.3, a quadruple precision is also supported on x86, but as > >the nonstandard type __float128 rather than long double." > > > > AS it turns out, gcc46 does not support long double. Yes, it does. > Or, is it just > because the port lang/gcc46 uses the system libc, which is gcc 4.2.1? I seems it is that you don't understand the types. float --------> 24 bit significand, 32 bit size. double -------> 53 bit significand, 64 bit size. long double --> 53 bit significand, 80 bit size, i386 long double --> 64 bit significand, 80 bit size, x86_64 long double --> 113 bit significand, 128 bit size, sparc64 __float128 ---> 113 bit significand, 128 bit size, i386, x86_64 -- Steve