History log of /seL4-camkes-master/projects/musllibc/include/float.h
Revision Date Author Comments
# 11d1e2e2 23-Mar-2015 Rich Felker <dalias@aerifal.cx>

fix FLT_ROUNDS regression in C++ applications

commit 559de8f5f06da9022cbba70e22e14a710eb74513 redefined FLT_ROUNDS
to use an external function that can report the actual current
rounding mode, rather than always reporting round-to-nearest. however,
float.h did not include 'extern "C"' wrapping for C++, so C++ programs
using FLT_ROUNDS ended up with an unresolved reference to a
name-mangled C++ function __flt_rounds.


# 559de8f5 07-Mar-2015 Szabolcs Nagy <nsz@port70.net>

fix FLT_ROUNDS to reflect the current rounding mode

Implemented as a wrapper around fegetround introducing a new function
to the ABI: __flt_rounds. (fegetround cannot be used directly from float.h)


# 18dde007 27-Aug-2014 Szabolcs Nagy <nsz@port70.net>

add C11 floating-point characteristic macros to float.h

C11 introduced *_DECIMAL_DIG and *_HAS_SUBNORM macros.


# 46db3728 20-Nov-2013 Rich Felker <dalias@aerifal.cx>

write floating point limit constants to 21 significant decimal places

this is enough to produce the correct value even if the constant is
interpreted as 80-bit extended precision, which matters on archs with
excess precision (FLT_EVAL_METHOD==2) under at least some
interpretations of the C standard. the shorter representations, while
correct if converted to the nominal precision at translation time,
could produce an incorrect value at extended precision, yielding
results such as (double)DBL_MAX != DBL_MAX.


# 22730d65 17-May-2013 Rich Felker <dalias@aerifal.cx>

add FLT_TRUE_MIN, etc. macros from C11

there was some question as to how many decimal places to use, since
one decimal place is always sufficient to identify the smallest
denormal uniquely. for now, I'm following the example in the C
standard which is consistent with the other min/max macros we already
had in place.


# 47db8903 20-Mar-2012 Rich Felker <dalias@aerifal.cx>

fix DECIMAL_DIG definitions

DECIMAL_DIG is not the same as LDBL_DIG

type_DIG is the maximimum number of decimal digits that can survive a
round trip from decimal to type and back to decimal.

DECIMAL_DIG is the minimum number of decimal digits required in order
for any floating point type to survive the round trip to decimal and
back, and it is generally larger than LDBL_DIG. since the exact
formula is non-trivial, and defining it larger than necessary may be
legal but wasteful, just define the right value in bits/float.h.


# 0b44a031 11-Feb-2011 Rich Felker <dalias@aerifal.cx>

initial check-in, version 0.5.0