[PING][PATCH][BZ #6803] Set errno for scalbln

Stefan Liebler stli@linux.vnet.ibm.com
Fri May 30 09:44:00 GMT 2014


PING

On 05/22/2014 11:03 AM, Stefan Liebler wrote:
> PING
>
> On 05/15/2014 11:13 AM, Stefan Liebler wrote:
>> PING!
>>
>> This patch introduces a new wrapper for scalbln functions
>> in order to set errno to ERANGE on overflow and underflow.
>> The existing aliases that uses __scalbln functions are replaced by
>> aliases to the new wrapper.
>> The corresponding tests in libm-test.inc are updated to check for errno
>> via ERRNO_PLUS_OFLOW etc.
>>
>> Please test and give ok for commit.
>>
>> This patch only covers the scalbln-part of bug 6803.
>>
>> (The attached file is identical to the posted one from 08.05.2014)
>>
>> Bye
>>
>> On 05/08/2014 04:31 PM, Stefan Liebler wrote:
>>> For these the behaviour is the same like before.
>>> Errno is not set and the testcases will fail.
>>>
>>> Now the scalbln-aliases are removed in i386/m68
>>> and the wrappers are used when calling the scalbln-functions.
>>>
>>> On ia64 only scalblnf has its own implementation.
>>> For scalbln and scalblnl the ieee754/dbl-64 and ieee754/ldbl-96 are
>>> used, thus the wrappers are needed, too.
>>>
>>> Bye
>>>
>>> ---
>>> 2014-05-08  Stefan Liebler  <stli@linux.vnet.ibm.com>
>>>
>>>      [BZ #6803]
>>>      * math/libm-test.inc (scalbln_test_date):
>>>      Add errno expectations.
>>>      * math/w_scalblnf.c: New File.
>>>      Add wrapper which checks for setting errno to ERANGE.
>>>      Add weak_alias for corresponding scalbln function.
>>>      * math/w_scalbln.c: Likewise.
>>>      * math/w_scalblnl.c: Likewise.
>>>      * math/Makefile (libm-calls): Add w_scalbln.
>>>      * sysdeps/ieee754/flt-32/s_scalblnf.c:
>>>      Remove weak_alias for corresponding scalbln function.
>>>      * sysdeps/ieee754/dbl-64/s_scalbln.c: Likewise.
>>>      * sysdeps/ieee754/dbl-64/wordsize-64/s_scalbln.c: Likewise.
>>>      * sysdeps/ieee754/ldbl-96/s_scalblnl.c: Likewise.
>>>      * sysdeps/ieee754/ldbl-128/s_scalblnl.c: Likewise.
>>>      * sysdeps/sparc/sparc64/soft-fp/s_scalblnl.c: Likewise.
>>>      * sysdeps/i386/fpu/s_scalbnf.S: Likewise.
>>>      * sysdeps/i386/fpu/s_scalbn.S: Likewise.
>>>      * sysdeps/i386/fpu/s_scalbnl.S: Likewise.
>>>      * sysdeps/m68k/m680x0/fpu/s_scalbn.c: Likewise.
>>>      * sysdeps/ieee754/ldbl-64-128/s_scalblnl.c:
>>>      Remove long_double_symbol for scalblnl function in libm, libc.
>>>      * sysdeps/ieee754/ldbl-64-128/w_scalblnl.c: New File.
>>>      Add wrapper which checks for setting errno to ERANGE.
>>>      Add long_double_symbol for scalblnl function in libm, libc.
>>>      * sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c:
>>>      Remove long_double_symbol for scalblnl in libm.
>>>      * sysdeps/ieee754/ldbl-128ibm/w_scalblnl.c: New File.
>>>      Add wrapper which checks for setting errno to ERANGE.
>>>      Add long_double_symbol for scalblnl function in libm.
>>>      * sysdeps/ia64/fpu/w_scalblnf.c: New File.
>>>      Do not use wrapper because of own implementation.
>>> ---
>>>
>>>
>>> On 05/08/2014 12:24 PM, Andreas Schwab wrote:
>>>> Stefan Liebler <stli@linux.vnet.ibm.com> writes:
>>>>
>>>>> In case of sysdeps/i386 and sysdeps/m68k/m680x0, the existing
>>>>> s_scalbln.c
>>>>> files are empty, because the scalbln-functions are aliases for the
>>>>> scalbn-functions, which are not covered by this patch.
>>>>> Thus the wrapper-function is not used.
>>>>
>>>> Does that mean you are introducing a regression?
>>>>
>>>> Andreas.
>>>>
>
>



More information about the Libc-alpha mailing list