[PATCH] [AArch64] ILP32 math changes
Steve Ellcey
sellcey@cavium.com
Tue Aug 29 21:16:00 GMT 2017
Since Szabolcs has expressed interest in getting some aarch64 ILP32
changes into glibc mainline (if they don't affect the kernel or glibc
ABI) I am resubmitting this patch for approval in advance of the main
ILP32 support patches. Â I updated it with Richard Henderson's code (but
only doing it when the incoming argument is large). Â I tested it on
aarch64 ILP32 and LP64 with no regressions.
Is this something that can be checked in now withnout waiting for the
kernel ILP32 support?
Steve Ellcey
sellcey@cavium.com
2017-08-29  Steve Ellcey  <sellcey@cavium.com>
    Richard Henderson <rth@twiddle.net>
* sysdeps/aarch64/fpu/s_llrint.c (OREG_SIZE): New macro.
* sysdeps/aarch64/fpu/s_llround.c (OREG_SIZE): Likewise.
* sysdeps/aarch64/fpu/s_llrintf.c (OREGS, IREGS): Remove.
(IREG_SIZE, OREG_SIZE): New macros.
* sysdeps/aarch64/fpu/s_llroundf.c: (OREGS, IREGS): Remove.
(IREG_SIZE, OREG_SIZE): New macros.
* sysdeps/aarch64/fpu/s_lrintf.c (IREGS): Remove.
(IREG_SIZE): New macro.
* sysdeps/aarch64/fpu/s_lroundf.c (IREGS): Remove.
(IREG_SIZE): New macro.
* sysdeps/aarch64/fpu/s_lrint.c (get-rounding-mode.h, stdint.h):
New includes.
(IREG_SIZE, OREG_SIZE): Initialize if not already set.
(OREGS, IREGS): Set based on IREG_SIZE and OREG_SIZE.
(__CONCATX): Handle exceptions correctly on large values that may
set FE_INVALID.
* sysdeps/aarch64/fpu/s_lround.c (IREG_SIZE, OREG_SIZE):
Initialize if not already set.
        (OREGS, IREGS): Set based on IREG_SIZE and OREG_SIZE.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: aarch64-ilp32-math.patch
Type: text/x-patch
Size: 4878 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/libc-alpha/attachments/20170829/17b3f1d4/attachment.bin>
More information about the Libc-alpha
mailing list