This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Minimum floating-point requirements


On Thu, 30 Jan 2014, Rich Felker wrote:

> long double that break basic floating point semantics. So I would at
> least encourage new ports to simply define long double as double
> unless there's support (or planned future support) for IEEE quad or an
> existing IEEE extended precision type (like ld80) at the hardware
> level.

Insofar as tools people have influence on hardware design (and at least 
some instruction set designers do seek input on what features are or are 
not good for compiler use), I'd encourage hardware designers to go for 
IEEE binary128 instead of Intel (or m68k) "extended".  While "extended" / 
ldbl-96 follows IEEE semantics in terms of the set of values and the 
operations on them, and so doesn't cause trouble for generic 
floating-point code expecting IEEE semantics, the explicit "1" bit and 
consequent presence of bit-patterns not representing any valid value of 
the floating-point type do cause issues in some of the lower-level code 
(the general position in glibc being that passing the invalid bit-patterns 
- including those the hardware interprets as representing numbers, but 
will not produce from arithmetic - to glibc functions is undefined 
behavior).

-- 
Joseph S. Myers
joseph@codesourcery.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]