"1 + -1" when rounding to -inf
David Miller
davem@davemloft.net
Mon Apr 21 19:51:00 GMT 2014
From: Andreas Schwab <schwab@linux-m68k.org>
Date: Mon, 21 Apr 2014 21:38:20 +0200
> David Miller <davem@davemloft.net> writes:
>
>> From: Andreas Schwab <schwab@linux-m68k.org>
>> Date: Mon, 21 Apr 2014 21:22:07 +0200
>>
>>> David Miller <davem@davemloft.net> writes:
>>>
>>>> I wrote a simple test program and, with FE_DOWNWARD, the sequence is:
>>>>
>>>> -1 + 1 == -0.0L
>>>>
>>>> -1L / -0.0L == INF
>>>
>>> Both are correct (the latter is independent of the rounding direction).
>>
>> The test case is expecting -INF.
>
> The log functions always return -inf for ±0, so does log1p(-1).
That's what I understood the expectation to be, and that's why I'm
showing how the exact operations above is the sequence of calculations
the long double log1p() implementation performs for an input of -1.
More information about the Libc-alpha
mailing list