Add a generic scalb implementation
authorTulio Magno Quites Machado Filho <tuliom@linux.ibm.com>
Tue, 29 May 2018 20:52:24 +0000 (17:52 -0300)
committerPaul E. Murphy <murphyp@linux.vnet.ibm.com>
Fri, 14 Feb 2020 14:24:56 +0000 (08:24 -0600)
commitc624d23260d5c136bebdd3a0734876527cedc505
treec3b9039f6ef2e62892420a9b147668fc8924d759
parentad180676b83dc1782d407dbff57dabbaab0c1f71
Add a generic scalb implementation

This is a preparatory patch to enable building a _Float128
variant to ease reuse when building a _Float128 variant to
alias this long double only symbol.

Notably, stubs are added where missing to the native _Float128
sysdep dir to prevent building these newly templated variants
created inside the build directories.

Also noteworthy are the changes around LIBM_SVID_COMPAT.  These
changes are not intuitive.  The templated version is only
enabled when !LIBM_SVID_COMPAT, and the compat version is
predicated entirely on LIBM_SVID_COMPAT.  Thus, exactly one is
stubbed out entirely when building.  The nldbl scalb compat
files are updated to account for this.

Likewise, fixup the reuse of m68k's e_scalb{f,l}.c to include
it's override of e_scalb.c.  Otherwise, the search path finds
the templated copy in the build directory.  This could be
futher simplified by providing an overridden template, but I
lack the hardware to verify.
13 files changed:
math/Makefile
math/e_scalb_template.c [moved from math/e_scalb.c with 64% similarity]
math/e_scalbf.c [deleted file]
math/e_scalbl.c [deleted file]
math/w_scalb_compat.c
math/w_scalb_template.c [new file with mode: 0644]
math/w_scalbf_compat.c
math/w_scalbl_compat.c
sysdeps/ieee754/float128/w_scalbf128.c [new file with mode: 0644]
sysdeps/ieee754/ldbl-opt/w_scalb_compat.c
sysdeps/ieee754/ldbl-opt/w_scalbl_compat.c
sysdeps/m68k/m680x0/fpu/e_scalbf.c
sysdeps/m68k/m680x0/fpu/e_scalbl.c