Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 25 May 2019 15:53:57 -0700
From:      Steve Kargl <sgk@troutmask.apl.washington.edu>
To:        Yuri <yuri@rawbw.com>
Cc:        Konstantin Belousov <kostikbel@gmail.com>, Freebsd hackers list <freebsd-hackers@freebsd.org>
Subject:   Re: What is the portable 128-bit floating point type?
Message-ID:  <20190525225357.GA56490@troutmask.apl.washington.edu>
In-Reply-To: <e13bc70d-4d7e-3407-a0a0-14a64f94addd@rawbw.com>
References:  <eb15d9e4-c1d4-3886-a3b7-1264c12396cd@rawbw.com> <20190525200437.GV2748@kib.kiev.ua> <e13bc70d-4d7e-3407-a0a0-14a64f94addd@rawbw.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, May 25, 2019 at 01:50:24PM -0700, Yuri wrote:
> On 2019-05-25 13:04, Konstantin Belousov wrote:
> > Neither i386 nor amd64 have hardware-supported 128 bit floating point
> > type. long double is defined by both i386 and amd64 Unix ABI as 80 bits
> > (10 bytes) representation as defined by IEEEE FP standard and supported
> > by x87 FPU (not-SSE). The difference in size is due to the different
> > natural alignment between 32 and 64 bit ISA.
> 
> So it looks like there is no true quad-precision float available.
> 
> Based on this conversation https://github.com/bluescarni/mppp/issues/186 
> FreeBSD used to support __float128. Why was it removed?
> 

gcc version 5 or 6 and up comes with libquadmath.  It is
a software implementation of IEEE 128-bit floating point
math.  You need sparc64 to have a 128-bit hardware support.

-- 
Steve



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20190525225357.GA56490>