aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog.old/ChangeLog.3110420
-rw-r--r--INSTALL50
-rw-r--r--Makeconfig23
-rw-r--r--Makefile5
-rw-r--r--Makerules2
-rw-r--r--NEWS197
-rw-r--r--Rules23
-rw-r--r--aclocal.m44
-rw-r--r--advisories/GLIBC-SA-2025-000223
-rw-r--r--advisories/GLIBC-SA-2025-000330
-rw-r--r--advisories/GLIBC-SA-2025-000429
-rw-r--r--advisories/GLIBC-SA-2025-000514
-rw-r--r--argp/argp-parse.c15
-rw-r--r--benchtests/Makefile23
-rw-r--r--benchtests/atan2-inputs2003
-rw-r--r--benchtests/bench-calloc-tcache.c22
-rw-r--r--benchtests/bench-malloc-tcache.c174
-rw-r--r--benchtests/bench-malloc-thread.c18
-rw-r--r--benchtests/expl-inputs1004
-rw-r--r--benchtests/fmal-inputs1003
-rw-r--r--benchtests/inet_ntop_ipv4-inputs1003
-rw-r--r--benchtests/inet_ntop_ipv4-source.c10
-rw-r--r--benchtests/inet_ntop_ipv6-inputs1003
-rw-r--r--benchtests/inet_ntop_ipv6-source.c10
-rw-r--r--benchtests/libmvec/acospi-inputs2709
-rw-r--r--benchtests/libmvec/acospif-inputs2710
-rw-r--r--benchtests/libmvec/asinpi-inputs2508
-rw-r--r--benchtests/libmvec/asinpif-inputs2710
-rw-r--r--benchtests/libmvec/atan2pi-inputs1005
-rw-r--r--benchtests/libmvec/atan2pif-inputs2005
-rw-r--r--benchtests/libmvec/atanpi-inputs806
-rw-r--r--benchtests/libmvec/atanpif-inputs2005
-rw-r--r--benchtests/log2l-inputs1004
-rw-r--r--benchtests/modf-inputs4013
-rw-r--r--benchtests/modff-inputs8011
-rw-r--r--benchtests/powl-inputs1003
-rw-r--r--bits/libm-simd-decl-stubs.h44
-rw-r--r--bits/termios-baud.h75
-rw-r--r--bits/termios.h54
-rw-r--r--config.h.in14
-rw-r--r--config.make.in1
-rwxr-xr-xconfigure309
-rw-r--r--configure.ac90
-rw-r--r--conform/data/aio.h-data2
-rw-r--r--conform/data/arpa/inet.h-data2
-rw-r--r--conform/data/assert.h-data4
-rw-r--r--conform/data/complex.h-data2
-rw-r--r--conform/data/cpio.h-data2
-rw-r--r--conform/data/ctype.h-data4
-rw-r--r--conform/data/dirent.h-data2
-rw-r--r--conform/data/dlfcn.h-data2
-rw-r--r--conform/data/errno.h-data2
-rw-r--r--conform/data/fcntl.h-data2
-rw-r--r--conform/data/fenv.h-data2
-rw-r--r--conform/data/float.h-data4
-rw-r--r--conform/data/fmtmsg.h-data2
-rw-r--r--conform/data/fnmatch.h-data2
-rw-r--r--conform/data/ftw.h-data2
-rw-r--r--conform/data/glob.h-data2
-rw-r--r--conform/data/grp.h-data2
-rw-r--r--conform/data/iconv.h-data2
-rw-r--r--conform/data/iso646.h-data2
-rw-r--r--conform/data/langinfo.h-data2
-rw-r--r--conform/data/libgen.h-data2
-rw-r--r--conform/data/limits.h-data4
-rw-r--r--conform/data/locale.h-data4
-rw-r--r--conform/data/math.h-data10
-rw-r--r--conform/data/monetary.h-data2
-rw-r--r--conform/data/mqueue.h-data2
-rw-r--r--conform/data/ndbm.h-data2
-rw-r--r--conform/data/net/if.h-data2
-rw-r--r--conform/data/netdb.h-data2
-rw-r--r--conform/data/netinet/in.h-data2
-rw-r--r--conform/data/nl_types.h-data2
-rw-r--r--conform/data/poll.h-data2
-rw-r--r--conform/data/pthread.h-data2
-rw-r--r--conform/data/pwd.h-data2
-rw-r--r--conform/data/regex.h-data2
-rw-r--r--conform/data/sched.h-data2
-rw-r--r--conform/data/search.h-data2
-rw-r--r--conform/data/semaphore.h-data2
-rw-r--r--conform/data/setjmp.h-data8
-rw-r--r--conform/data/signal.h-data8
-rw-r--r--conform/data/spawn.h-data2
-rw-r--r--conform/data/stdalign.h-data2
-rw-r--r--conform/data/stdarg.h-data4
-rw-r--r--conform/data/stdbool.h-data2
-rw-r--r--conform/data/stddef.h-data4
-rw-r--r--conform/data/stdio.h-data20
-rw-r--r--conform/data/stdlib.h-data60
-rw-r--r--conform/data/stdnoreturn.h-data2
-rw-r--r--conform/data/string.h-data8
-rw-r--r--conform/data/strings.h-data2
-rw-r--r--conform/data/sys/ipc.h-data2
-rw-r--r--conform/data/sys/mman.h-data2
-rw-r--r--conform/data/sys/msg.h-data2
-rw-r--r--conform/data/sys/resource.h-data2
-rw-r--r--conform/data/sys/select.h-data2
-rw-r--r--conform/data/sys/sem.h-data2
-rw-r--r--conform/data/sys/shm.h-data2
-rw-r--r--conform/data/sys/socket.h-data2
-rw-r--r--conform/data/sys/stat.h-data2
-rw-r--r--conform/data/sys/statvfs.h-data2
-rw-r--r--conform/data/sys/time.h-data2
-rw-r--r--conform/data/sys/timeb.h-data2
-rw-r--r--conform/data/sys/times.h-data2
-rw-r--r--conform/data/sys/types.h-data2
-rw-r--r--conform/data/sys/uio.h-data2
-rw-r--r--conform/data/sys/un.h-data2
-rw-r--r--conform/data/sys/utsname.h-data2
-rw-r--r--conform/data/sys/wait.h-data2
-rw-r--r--conform/data/syslog.h-data2
-rw-r--r--conform/data/tar.h-data2
-rw-r--r--conform/data/termios.h-data2
-rw-r--r--conform/data/threads.h-data2
-rw-r--r--conform/data/time.h-data6
-rw-r--r--conform/data/uchar.h-data2
-rw-r--r--conform/data/ucontext.h-data2
-rw-r--r--conform/data/ulimit.h-data2
-rw-r--r--conform/data/unistd.h-data2
-rw-r--r--conform/data/utime.h-data2
-rw-r--r--conform/data/utmpx.h-data2
-rw-r--r--conform/data/wchar.h-data18
-rw-r--r--conform/data/wctype.h-data4
-rw-r--r--conform/data/wordexp.h-data2
-rw-r--r--conform/linknamespace.py6
-rw-r--r--ctype/Makefile17
-rw-r--r--ctype/ctype-info.c29
-rw-r--r--ctype/tst-ctype-tls-dlmopen.c2
-rw-r--r--ctype/tst-ctype-tls-dlopen-static.c2
-rw-r--r--ctype/tst-ctype-tls-mod.c37
-rw-r--r--ctype/tst-ctype-tls-skeleton.c67
-rw-r--r--debug/Makefile55
-rw-r--r--debug/backtrace.c52
-rw-r--r--debug/tst-backtrace1.c (renamed from sysdeps/pthread/tst-backtrace1.c)0
-rw-r--r--debug/tst-sprintf-fortify-rdonly-static.c1
-rw-r--r--dlfcn/dlfcn.h10
-rw-r--r--elf/Makefile65
-rw-r--r--elf/dl-close.c6
-rw-r--r--elf/dl-debug-symbols.S1
-rw-r--r--elf/dl-debug.c155
-rw-r--r--elf/dl-debug_state.c30
-rw-r--r--elf/dl-execstack-tunable.c39
-rw-r--r--elf/dl-execstack.c2
-rw-r--r--elf/dl-find_object.c74
-rw-r--r--elf/dl-find_object.h57
-rw-r--r--elf/dl-load.c9
-rw-r--r--elf/dl-open.c5
-rw-r--r--elf/dl-support.c4
-rw-r--r--elf/dl-tunables.list2
-rw-r--r--elf/elf.h20
-rw-r--r--elf/libc_early_init.c4
-rw-r--r--elf/rtld.c106
-rw-r--r--elf/rtld_static_init.c1
-rw-r--r--elf/tst-asm-helper.h4
-rw-r--r--elf/tst-dl_find_object.c14
-rw-r--r--elf/tst-dlmopen4-nonpic.c2
-rw-r--r--elf/tst-dlmopen4-pic.c2
-rw-r--r--elf/tst-dlmopen4.c22
-rw-r--r--elf/tst-dlopen-sgid-mod.c1
-rw-r--r--elf/tst-dlopen-sgid.c106
-rw-r--r--elf/tst-env-setuid-tunables.c18
-rw-r--r--elf/tst-env-setuid.c17
-rw-r--r--elf/tst-execstack-prog-static-tunable.c1
-rw-r--r--elf/tst-execstack-tunable.c1
-rw-r--r--elf/tst-glibc-hwcaps-2-cache.root/etc/ld.so.conf2
-rw-r--r--elf/tst-glibc-hwcaps-cache.root/etc/ld.so.conf2
-rw-r--r--elf/tst-glibc-hwcaps-cache.script7
-rw-r--r--elf/tst-gnu2-tls2.c4
-rw-r--r--elf/tst-ldconfig-bad-aux-cache.root/etc/ld.so.conf2
-rw-r--r--elf/tst-link-map-contiguous-ldso.c98
-rw-r--r--elf/tst-link-map-contiguous-libc.c57
-rw-r--r--elf/tst-link-map-contiguous-main.c45
-rw-r--r--elf/tst-rtld-list-tunables.exp2
-rw-r--r--elf/tst-tls23-mod.c32
-rw-r--r--elf/tst-tls23.c106
-rw-r--r--elf/tst-tls23.h (renamed from sysdeps/powerpc/powerpc64/multiarch/strncase_l-power7.c)28
-rw-r--r--gmon/Makefile5
-rw-r--r--htl/Makefile12
-rw-r--r--htl/Versions24
-rw-r--r--htl/forward.c3
-rw-r--r--htl/pt-cleanup.c10
-rw-r--r--htl/pt-initialize.c5
-rw-r--r--htl/pt-internal.h1
-rw-r--r--hurd/Makefile5
-rw-r--r--hurd/intr-msg.c9
-rw-r--r--hurd/test-sig-rpc-interrupted.c185
-rw-r--r--hurd/test-sig-xstate.c94
-rw-r--r--hurd/test-xstate.h40
-rw-r--r--iconv/iconv_prog.c4
-rw-r--r--iconv/tst-iconv_prog-buffer.sh4
-rw-r--r--include/array_length.h14
-rw-r--r--include/ctype.h21
-rw-r--r--include/elf.h13
-rw-r--r--include/features.h2
-rw-r--r--include/libc-symbols.h2
-rw-r--r--include/link.h2
-rw-r--r--include/rpc/rpc.h5
-rw-r--r--include/stdio.h4
-rw-r--r--include/termios.h27
-rw-r--r--include/unistd.h1
-rw-r--r--inet/bits/inet-fortified.h8
-rw-r--r--inet/inet_ntoa.c7
-rw-r--r--io/Makefile1
-rw-r--r--io/Versions3
-rw-r--r--io/fcntl.h7
-rw-r--r--io/tst-stat-time64.c6
-rw-r--r--io/tst-stat.c25
-rw-r--r--libio/Makefile2
-rw-r--r--libio/filedoalloc.c12
-rw-r--r--libio/fileops.c10
-rw-r--r--libio/stdio.h3
-rw-r--r--libio/tst-fflush-NULL.c (renamed from sysdeps/powerpc/powerpc64/multiarch/strncmp-power10.S)15
-rw-r--r--libio/tst-fflush-skeleton.c158
-rw-r--r--libio/tst-fflush.c (renamed from sysdeps/powerpc/powerpc32/power4/multiarch/strncase-power7.c)16
-rw-r--r--locale/iso-3166.def4
-rw-r--r--locale/iso-4217.def2
-rw-r--r--locale/lc-ctype.c9
-rw-r--r--locale/localeinfo.h7
-rw-r--r--locale/programs/locarchive.c18
-rw-r--r--locale/uselocale.c10
-rw-r--r--locale/xlocale.c7
-rw-r--r--localedata/locales/fa_IR2
-rwxr-xr-xlocaledata/tst-locale.sh2
-rw-r--r--login/openpty.c2
-rw-r--r--mach/mach_init.c4
-rw-r--r--malloc/Makefile128
-rw-r--r--malloc/arena.c21
-rw-r--r--malloc/malloc-check.c10
-rw-r--r--malloc/malloc-debug.c10
-rw-r--r--malloc/malloc-internal.h3
-rw-r--r--malloc/malloc.c871
-rw-r--r--malloc/tst-tcfree4.c59
-rw-r--r--manual/arith.texi12
-rw-r--r--manual/contrib.texi53
-rw-r--r--manual/creature.texi4
-rw-r--r--manual/dynlink.texi17
-rw-r--r--manual/examples/memstrm.c2
-rw-r--r--manual/filesys.texi250
-rw-r--r--manual/getopt.texi31
-rw-r--r--manual/install.texi30
-rw-r--r--manual/intro.texi3
-rw-r--r--manual/libc.texinfo2
-rw-r--r--manual/maint.texi6
-rw-r--r--manual/math.texi32
-rw-r--r--manual/memory.texi8
-rw-r--r--manual/resource.texi199
-rw-r--r--manual/socket.texi79
-rw-r--r--manual/stdio.texi30
-rw-r--r--manual/terminal.texi483
-rw-r--r--manual/threads.texi396
-rw-r--r--manual/time.texi117
-rw-r--r--manual/tunables.texi10
-rw-r--r--math/Makefile12
-rw-r--r--math/Versions5
-rw-r--r--math/auto-libm-test-in439
-rw-r--r--math/auto-libm-test-out-compoundn10245
-rw-r--r--math/auto-libm-test-out-pown114
-rw-r--r--math/auto-libm-test-out-rootn13734
-rw-r--r--math/bits/mathcalls.h10
-rw-r--r--math/gen-auto-libm-tests.c2
-rwxr-xr-xmath/gen-libm-test.py2
-rwxr-xr-xmath/gen-tgmath-tests.py2
-rw-r--r--math/libm-test-compoundn.inc107
-rw-r--r--math/libm-test-pown.inc188
-rw-r--r--math/libm-test-rootn.inc159
-rw-r--r--math/s_compoundn_template.c227
-rw-r--r--math/s_rootn_template.c81
-rw-r--r--math/test-fesetexcept-traps.c2
-rw-r--r--math/test-fexcept-traps.c2
-rw-r--r--math/test-tgmath.c22
-rw-r--r--math/tgmath.h7
-rw-r--r--misc/getpass.c4
-rw-r--r--nptl/cancellation.c4
-rw-r--r--nss/Makefile32
-rw-r--r--nss/getaddrinfo.c29
-rw-r--r--nss/nss_action_parse.c5
-rw-r--r--nss/nss_test1.c6
-rw-r--r--po/be.po1531
-rw-r--r--po/bg.po242
-rw-r--r--po/ca.po232
-rw-r--r--po/cs.po242
-rw-r--r--po/da.po198
-rw-r--r--po/de.po242
-rw-r--r--po/el.po36
-rw-r--r--po/eo.po114
-rw-r--r--po/es.po204
-rw-r--r--po/fi.po194
-rw-r--r--po/fr.po222
-rw-r--r--po/gl.po162
-rw-r--r--po/hr.po704
-rw-r--r--po/hu.po62
-rw-r--r--po/ia.po178
-rw-r--r--po/id.po198
-rw-r--r--po/it.po202
-rw-r--r--po/ja.po200
-rw-r--r--po/ka.po180
-rw-r--r--po/ko.po242
-rw-r--r--po/libc.pot240
-rw-r--r--po/lt.po98
-rw-r--r--po/nb.po32
-rw-r--r--po/nl.po232
-rw-r--r--po/pl.po336
-rw-r--r--po/pt.po569
-rw-r--r--po/pt_BR.po222
-rw-r--r--po/ro.po243
-rw-r--r--po/ru.po430
-rw-r--r--po/rw.po2
-rw-r--r--po/sk.po168
-rw-r--r--po/sl.po178
-rw-r--r--po/sr.po232
-rw-r--r--po/sv.po244
-rw-r--r--po/tr.po222
-rw-r--r--po/uk.po242
-rw-r--r--po/vi.po232
-rw-r--r--po/zh_CN.po244
-rw-r--r--po/zh_TW.po232
-rw-r--r--posix/Makefile3
-rw-r--r--posix/fnmatch_loop.c8
-rw-r--r--posix/glob.h3
-rw-r--r--posix/regcomp.c11
-rw-r--r--posix/tst-libc-message.c48
-rw-r--r--posix/tst-regcomp-bracket-free.c176
-rw-r--r--posix/tst-regex.input12
-rw-r--r--posix/tst-truncate-common.c2
-rw-r--r--resolv/Makefile2
-rw-r--r--resolv/inet_ntop.c358
-rw-r--r--resolv/tst-resolv-getaddrinfo-fqdn.c147
-rw-r--r--resource/Makefile6
-rwxr-xr-xscripts/build-many-glibcs.py14
-rw-r--r--scripts/pylintrc4
-rw-r--r--stdio-common/Makefile1
-rw-r--r--stdio-common/printf-parsemb.c1
-rw-r--r--stdio-common/printf_fp.c18
-rw-r--r--stdio-common/stdio_ext.h18
-rw-r--r--stdio-common/tst-fclose-devzero.c50
-rw-r--r--stdio-common/tst-scanf-format-ss.h2
-rw-r--r--stdio-common/tst-setvbuf2.c39
-rw-r--r--stdio-common/vfscanf-internal.c2
-rw-r--r--stdlib/Makefile13
-rw-r--r--stdlib/Versions6
-rw-r--r--stdlib/abort.c6
-rw-r--r--stdlib/inttypes.h5
-rw-r--r--stdlib/stdlib.h6
-rw-r--r--stdlib/tst-secure-getenv.c9
-rw-r--r--stdlib/tst-uabs.c45
-rw-r--r--stdlib/tst-uimaxabs.c51
-rw-r--r--stdlib/tst-ulabs.c52
-rw-r--r--stdlib/tst-ullabs.c55
-rw-r--r--stdlib/uabs.c (renamed from sysdeps/powerpc/powerpc64/multiarch/strncase-power7.c)16
-rw-r--r--stdlib/ulabs.c33
-rw-r--r--stdlib/ullabs.c33
-rw-r--r--string/strerror.c2
-rw-r--r--sunrpc/rpc_thread.c1
-rw-r--r--support/capture_subprocess.h11
-rw-r--r--support/support_capture_subprocess.c166
-rw-r--r--support/test-container.c2
-rw-r--r--sysdeps/aarch64/Makefile13
-rw-r--r--sysdeps/aarch64/__alloc_gcs.c15
-rw-r--r--sysdeps/aarch64/__arm_za_disable.S6
-rw-r--r--sysdeps/aarch64/__longjmp.S72
-rw-r--r--sysdeps/aarch64/aarch64-gcs.h17
-rwxr-xr-xsysdeps/aarch64/configure211
-rw-r--r--sysdeps/aarch64/configure.ac113
-rw-r--r--sysdeps/aarch64/crti.S14
-rw-r--r--sysdeps/aarch64/crtn.S12
-rw-r--r--sysdeps/aarch64/dl-irel.h21
-rw-r--r--sysdeps/aarch64/dl-tlsdesc.S24
-rw-r--r--sysdeps/aarch64/dl-trampoline.S23
-rw-r--r--sysdeps/aarch64/fpu/Makefile9
-rw-r--r--sysdeps/aarch64/fpu/Versions22
-rw-r--r--sysdeps/aarch64/fpu/acos_advsimd.c56
-rw-r--r--sysdeps/aarch64/fpu/acos_sve.c75
-rw-r--r--sysdeps/aarch64/fpu/acosh_sve.c6
-rw-r--r--sysdeps/aarch64/fpu/acospi_advsimd.c118
-rw-r--r--sysdeps/aarch64/fpu/acospi_sve.c112
-rw-r--r--sysdeps/aarch64/fpu/acospif_advsimd.c106
-rw-r--r--sysdeps/aarch64/fpu/acospif_sve.c91
-rw-r--r--sysdeps/aarch64/fpu/advsimd_f32_protos.h4
-rw-r--r--sysdeps/aarch64/fpu/asin_advsimd.c46
-rw-r--r--sysdeps/aarch64/fpu/asin_sve.c74
-rw-r--r--sysdeps/aarch64/fpu/asinf_advsimd.c31
-rw-r--r--sysdeps/aarch64/fpu/asinpi_advsimd.c109
-rw-r--r--sysdeps/aarch64/fpu/asinpi_sve.c107
-rw-r--r--sysdeps/aarch64/fpu/asinpif_advsimd.c95
-rw-r--r--sysdeps/aarch64/fpu/asinpif_sve.c88
-rw-r--r--sysdeps/aarch64/fpu/atan2_advsimd.c128
-rw-r--r--sysdeps/aarch64/fpu/atan2_sve.c107
-rw-r--r--sysdeps/aarch64/fpu/atan2f_advsimd.c64
-rw-r--r--sysdeps/aarch64/fpu/atan2f_sve.c61
-rw-r--r--sysdeps/aarch64/fpu/atan2pi_advsimd.c175
-rw-r--r--sysdeps/aarch64/fpu/atan2pi_sve.c159
-rw-r--r--sysdeps/aarch64/fpu/atan2pif_advsimd.c138
-rw-r--r--sysdeps/aarch64/fpu/atan2pif_sve.c137
-rw-r--r--sysdeps/aarch64/fpu/atan_advsimd.c83
-rw-r--r--sysdeps/aarch64/fpu/atan_sve.c104
-rw-r--r--sysdeps/aarch64/fpu/atanf_advsimd.c97
-rw-r--r--sysdeps/aarch64/fpu/atanf_sve.c84
-rw-r--r--sysdeps/aarch64/fpu/atanh_sve.c3
-rw-r--r--sysdeps/aarch64/fpu/atanpi_advsimd.c117
-rw-r--r--sysdeps/aarch64/fpu/atanpi_sve.c127
-rw-r--r--sysdeps/aarch64/fpu/atanpif_advsimd.c92
-rw-r--r--sysdeps/aarch64/fpu/atanpif_sve.c89
-rw-r--r--sysdeps/aarch64/fpu/bits/math-vector.h32
-rw-r--r--sysdeps/aarch64/fpu/cosh_sve.c135
-rw-r--r--sysdeps/aarch64/fpu/exp10f_sve.c53
-rw-r--r--sysdeps/aarch64/fpu/exp2_sve.c76
-rw-r--r--sysdeps/aarch64/fpu/exp2f_sve.c35
-rw-r--r--sysdeps/aarch64/fpu/expm1_sve.c202
-rw-r--r--sysdeps/aarch64/fpu/log1p_sve.c84
-rw-r--r--sysdeps/aarch64/fpu/sinh_sve.c165
-rw-r--r--sysdeps/aarch64/fpu/sv_log1p_inline.h86
-rw-r--r--sysdeps/aarch64/fpu/tanh_sve.c154
-rw-r--r--sysdeps/aarch64/fpu/test-double-advsimd-wrappers.c4
-rw-r--r--sysdeps/aarch64/fpu/test-double-sve-wrappers.c4
-rw-r--r--sysdeps/aarch64/fpu/test-float-advsimd-wrappers.c4
-rw-r--r--sysdeps/aarch64/fpu/test-float-sve-wrappers.c4
-rw-r--r--sysdeps/aarch64/machine-gmon.h3
-rw-r--r--sysdeps/aarch64/multiarch/ifunc-impl-list.c12
-rw-r--r--sysdeps/aarch64/multiarch/init-arch.h2
-rw-r--r--sysdeps/aarch64/multiarch/memcpy.c2
-rw-r--r--sysdeps/aarch64/multiarch/memcpy_a64fx.S9
-rw-r--r--sysdeps/aarch64/multiarch/memcpy_oryon1.S40
-rw-r--r--sysdeps/aarch64/multiarch/memcpy_sve.S3
-rw-r--r--sysdeps/aarch64/multiarch/memmove.c2
-rw-r--r--sysdeps/aarch64/multiarch/memset.c2
-rw-r--r--sysdeps/aarch64/multiarch/memset_a64fx.S8
-rw-r--r--sysdeps/aarch64/multiarch/memset_oryon1.S26
-rw-r--r--sysdeps/aarch64/multiarch/memset_sve_zva64.S3
-rw-r--r--sysdeps/aarch64/preconfigure1
-rw-r--r--sysdeps/aarch64/setjmp.S16
-rw-r--r--sysdeps/aarch64/start.S2
-rw-r--r--sysdeps/aarch64/sys/ifunc.h65
-rw-r--r--sysdeps/aarch64/sysdep.h44
-rw-r--r--sysdeps/aarch64/tst-ifunc-arg-1.c15
-rw-r--r--sysdeps/aarch64/tst-ifunc-arg-2.c14
-rw-r--r--sysdeps/aarch64/tst-ifunc-arg-3.c97
-rw-r--r--sysdeps/aarch64/tst-ifunc-arg-4.c67
-rw-r--r--sysdeps/aarch64/tst-sme-helper.h97
-rw-r--r--sysdeps/aarch64/tst-sme-jmp.c81
-rw-r--r--sysdeps/aarch64/tst-sme-za-state.c119
-rw-r--r--sysdeps/generic/Makefile3
-rw-r--r--sysdeps/generic/getrandom-internal.h2
-rw-r--r--sysdeps/generic/ldsodefs.h35
-rw-r--r--sysdeps/generic/libc-tsd.h60
-rw-r--r--sysdeps/generic/sframe-read.c636
-rw-r--r--sysdeps/generic/sframe-read.h112
-rw-r--r--sysdeps/generic/sframe.c187
-rw-r--r--sysdeps/generic/sframe.h378
-rw-r--r--sysdeps/generic/sysdep.h3
-rw-r--r--sysdeps/generic/uw-sigframe.h31
-rw-r--r--sysdeps/gnu/netinet/tcp.h3
-rw-r--r--sysdeps/htl/include/bits/cancelation.h5
-rw-r--r--sysdeps/htl/libc-lock.h19
-rw-r--r--sysdeps/htl/libc-lockP.h6
-rw-r--r--sysdeps/htl/pt-destroy-specific.c2
-rw-r--r--sysdeps/htl/pt-getspecific.c9
-rw-r--r--sysdeps/htl/pt-key-create.c11
-rw-r--r--sysdeps/htl/pt-key-delete.c9
-rw-r--r--sysdeps/htl/pt-setspecific.c10
-rw-r--r--sysdeps/htl/pthread-functions.h10
-rw-r--r--sysdeps/htl/pthreadP.h9
-rw-r--r--sysdeps/i386/Makefile31
-rw-r--r--sysdeps/i386/dl-tls-get-addr.c68
-rw-r--r--sysdeps/i386/dl-tls.h28
-rw-r--r--sysdeps/i386/dl-tlsdesc-dynamic.h108
-rw-r--r--sysdeps/i386/dl-tlsdesc.S17
-rw-r--r--sysdeps/i386/fpu/e_ilogb.S41
-rw-r--r--sysdeps/i386/fpu/e_ilogbf.S41
-rw-r--r--sysdeps/i386/fpu/math_err.c1
-rw-r--r--sysdeps/i386/tls-get-addr-wrapper.h127
-rw-r--r--sysdeps/i386/tls_get_addr.S57
-rw-r--r--sysdeps/i386/tls_get_addr.h42
-rw-r--r--sysdeps/ieee754/dbl-64/e_ilogb.c64
-rw-r--r--sysdeps/ieee754/dbl-64/math_config.h15
-rw-r--r--sysdeps/ieee754/dbl-64/math_err.c32
-rw-r--r--sysdeps/ieee754/dbl-64/s_modf.c109
-rw-r--r--sysdeps/ieee754/dbl-64/w_ilogb-impl.h37
-rw-r--r--sysdeps/ieee754/dbl-64/w_ilogb.c52
-rw-r--r--sysdeps/ieee754/dbl-64/w_llogb.c2
-rw-r--r--sysdeps/ieee754/flt-32/e_atanhf.c4
-rw-r--r--sysdeps/ieee754/flt-32/e_coshf.c6
-rw-r--r--sysdeps/ieee754/flt-32/e_ilogbf.c44
-rw-r--r--sysdeps/ieee754/flt-32/e_logf.c2
-rw-r--r--sysdeps/ieee754/flt-32/e_sinhf.c6
-rw-r--r--sysdeps/ieee754/flt-32/math_config.h15
-rw-r--r--sysdeps/ieee754/flt-32/math_errf.c33
-rw-r--r--sysdeps/ieee754/flt-32/s_cbrtf.c6
-rw-r--r--sysdeps/ieee754/flt-32/s_cospif.c6
-rw-r--r--sysdeps/ieee754/flt-32/s_erfcf.c4
-rw-r--r--sysdeps/ieee754/flt-32/s_modff.c105
-rw-r--r--sysdeps/ieee754/flt-32/s_sinpif.c8
-rw-r--r--sysdeps/ieee754/flt-32/w_ilogbf-impl.h38
-rw-r--r--sysdeps/ieee754/flt-32/w_ilogbf.c53
-rw-r--r--sysdeps/ieee754/flt-32/w_llogbf.c2
-rw-r--r--sysdeps/ieee754/ldbl-128/Makefile2
-rw-r--r--sysdeps/ieee754/ldbl-128/e_expl.c2
-rw-r--r--sysdeps/ieee754/ldbl-128ibm-compat/Versions2
-rw-r--r--sysdeps/ieee754/ldbl-opt/Makefile12
-rw-r--r--sysdeps/ieee754/ldbl-opt/nldbl-compoundn.c8
-rw-r--r--sysdeps/ieee754/ldbl-opt/nldbl-rootn.c8
-rw-r--r--sysdeps/loongarch/fpu/e_ilogbf.c40
-rw-r--r--sysdeps/loongarch/fpu/w_ilogb-impl.h (renamed from sysdeps/loongarch/fpu/e_ilogb.c)12
-rw-r--r--sysdeps/loongarch/fpu/w_ilogbf-impl.h37
-rw-r--r--sysdeps/loongarch/preconfigure1
-rw-r--r--sysdeps/loongarch/preconfigure.ac1
-rw-r--r--sysdeps/m68k/m680x0/fpu/math_err.c1
-rw-r--r--sysdeps/m68k/m680x0/w_ilogb.c2
-rw-r--r--sysdeps/m68k/m680x0/w_ilogbf.c2
-rw-r--r--sysdeps/m68k/m680x0/w_llogb.c2
-rw-r--r--sysdeps/m68k/m680x0/w_llogbf.c2
-rw-r--r--sysdeps/mach/hurd/Makefile7
-rw-r--r--sysdeps/mach/hurd/bits/ioctls.h31
-rw-r--r--sysdeps/mach/hurd/dl-execstack.c5
-rw-r--r--sysdeps/mach/hurd/dup3.c62
-rw-r--r--sysdeps/mach/hurd/fcntl.c53
-rw-r--r--sysdeps/mach/hurd/futimens.c8
-rw-r--r--sysdeps/mach/hurd/futimes.c8
-rw-r--r--sysdeps/mach/hurd/getrandom-internal.h30
-rw-r--r--sysdeps/mach/hurd/i386/bits/sigcontext.h2
-rw-r--r--sysdeps/mach/hurd/i386/libc.abilist19
-rw-r--r--sysdeps/mach/hurd/i386/libm.abilist16
-rw-r--r--sysdeps/mach/hurd/i386/libpthread.abilist6
-rw-r--r--sysdeps/mach/hurd/i386/sigreturn.c35
-rw-r--r--sysdeps/mach/hurd/renameat2.c19
-rw-r--r--sysdeps/mach/hurd/symlinkat.c2
-rw-r--r--sysdeps/mach/hurd/utime-helper.c62
-rw-r--r--sysdeps/mach/hurd/x86/trampoline.c105
-rw-r--r--sysdeps/mach/hurd/x86_64/bits/sigcontext.h2
-rw-r--r--sysdeps/mach/hurd/x86_64/libc.abilist18
-rw-r--r--sysdeps/mach/hurd/x86_64/libm.abilist16
-rw-r--r--sysdeps/mach/hurd/x86_64/libpthread.abilist6
-rw-r--r--sysdeps/mach/hurd/x86_64/sigreturn.c35
-rw-r--r--sysdeps/mach/sysdep.h5
-rw-r--r--sysdeps/posix/libc_fatal.c32
-rw-r--r--sysdeps/powerpc/Makefile5
-rw-r--r--sysdeps/powerpc/fpu/math-use-builtins-trunc.h9
-rw-r--r--sysdeps/powerpc/fpu/s_modf.c59
-rw-r--r--sysdeps/powerpc/fpu/s_modff.c55
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modf-power5+.c2
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modff-power5+.c2
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/Makefile7
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list.c15
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/strncase.c41
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/strncase_l.c42
-rw-r--r--sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_modf-power5+.c2
-rw-r--r--sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_modff-power5+.c2
-rw-r--r--sysdeps/powerpc/powerpc64/dl-machine.h15
-rw-r--r--sysdeps/powerpc/powerpc64/le/configure70
-rw-r--r--sysdeps/powerpc/powerpc64/le/configure.ac7
-rw-r--r--sysdeps/powerpc/powerpc64/le/fpu/e_ilogb.c41
-rw-r--r--sysdeps/powerpc/powerpc64/le/fpu/e_ilogbf.c41
-rw-r--r--sysdeps/powerpc/powerpc64/le/fpu/multiarch/Makefile5
-rw-r--r--sysdeps/powerpc/powerpc64/le/fpu/multiarch/float128-ifunc-redirects.h1
-rw-r--r--sysdeps/powerpc/powerpc64/le/fpu/multiarch/float128_private.h1
-rw-r--r--sysdeps/powerpc/powerpc64/le/fpu/multiarch/math-type-macros-float128.h1
-rw-r--r--sysdeps/powerpc/powerpc64/le/fpu/w_ilogb.c2
-rw-r--r--sysdeps/powerpc/powerpc64/le/fpu/w_ilogbf.c2
-rw-r--r--sysdeps/powerpc/powerpc64/le/fpu/w_llogb.c2
-rw-r--r--sysdeps/powerpc/powerpc64/le/fpu/w_llogbf.c2
-rw-r--r--sysdeps/powerpc/powerpc64/le/power10/memchr.S315
-rw-r--r--sysdeps/powerpc/powerpc64/le/power10/memcmp.S22
-rw-r--r--sysdeps/powerpc/powerpc64/le/power10/memcpy.S2
-rw-r--r--sysdeps/powerpc/powerpc64/le/power10/memmove.S2
-rw-r--r--sysdeps/powerpc/powerpc64/le/power10/memset.S2
-rw-r--r--sysdeps/powerpc/powerpc64/le/power10/strcmp.S233
-rw-r--r--sysdeps/powerpc/powerpc64/le/power10/strlen.S30
-rw-r--r--sysdeps/powerpc/powerpc64/le/power10/strncmp.S271
-rw-r--r--sysdeps/powerpc/powerpc64/le/power9/strcmp.S44
-rw-r--r--sysdeps/powerpc/powerpc64/le/power9/strncmp.S43
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/Makefile14
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c24
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/memchr.c20
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strcmp.c4
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strncase.c7
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strncase_l.c42
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strncmp.c4
-rw-r--r--sysdeps/pthread/Makefile11
-rw-r--r--sysdeps/pthread/tst-cond23.c2
-rw-r--r--sysdeps/pthread/tst-stack2-mod.c39
-rw-r--r--sysdeps/pthread/tst-stack2.c (renamed from sysdeps/unix/sysv/linux/kernel_termios.h)48
-rw-r--r--sysdeps/pthread/tst-stdio2.c2
-rw-r--r--sysdeps/riscv/math-use-builtins-ffs.h10
-rw-r--r--sysdeps/s390/cpu-features.c77
-rw-r--r--sysdeps/s390/cpu-features.h55
-rw-r--r--sysdeps/s390/dl-diagnostics-cpu.c37
-rw-r--r--sysdeps/s390/multiarch/ifunc-impl-list.c4
-rw-r--r--sysdeps/s390/multiarch/ifunc-resolve.h2
-rw-r--r--sysdeps/s390/s390-32/s390-mcount.S6
-rw-r--r--sysdeps/s390/s390-64/Makefile27
-rw-r--r--sysdeps/s390/s390-64/dl-hwcap-check.h21
-rw-r--r--sysdeps/s390/s390-64/dl-hwcaps-subdirs.c12
-rw-r--r--sysdeps/s390/s390-64/s390x-mcount.h6
-rw-r--r--sysdeps/s390/s390-64/tst-glibc-hwcaps.c52
-rw-r--r--sysdeps/sparc/sparc32/start.S11
-rw-r--r--sysdeps/sparc/sparc64/start.S4
-rw-r--r--sysdeps/unix/bsd/tcsetattr.c6
-rw-r--r--sysdeps/unix/sysv/linux/Makefile34
-rw-r--r--sysdeps/unix/sysv/linux/Versions8
-rw-r--r--sysdeps/unix/sysv/linux/aarch64/arch-syscall.h1
-rw-r--r--sysdeps/unix/sysv/linux/aarch64/cpu-features.c1
-rw-r--r--sysdeps/unix/sysv/linux/aarch64/libc.abilist14
-rw-r--r--sysdeps/unix/sysv/linux/aarch64/libm.abilist16
-rw-r--r--sysdeps/unix/sysv/linux/aarch64/libmvec.abilist20
-rw-r--r--sysdeps/unix/sysv/linux/aarch64/makecontext.c4
-rw-r--r--sysdeps/unix/sysv/linux/aarch64/setcontext.S27
-rw-r--r--sysdeps/unix/sysv/linux/aarch64/swapcontext.S2
-rw-r--r--sysdeps/unix/sysv/linux/aarch64/uw-sigframe.h78
-rw-r--r--sysdeps/unix/sysv/linux/alpha/arch-syscall.h1
-rw-r--r--sysdeps/unix/sysv/linux/alpha/bits/termios-c_cflag.h2
-rw-r--r--sysdeps/unix/sysv/linux/alpha/bits/termios-cbaud.h (renamed from sysdeps/unix/sysv/linux/alpha/bits/termios-baud.h)43
-rw-r--r--sysdeps/unix/sysv/linux/alpha/bits/termios-struct.h11
-rw-r--r--sysdeps/unix/sysv/linux/alpha/kernel-features.h11
-rw-r--r--sysdeps/unix/sysv/linux/alpha/kernel_termios.h43
-rw-r--r--sysdeps/unix/sysv/linux/alpha/libc.abilist14
-rw-r--r--sysdeps/unix/sysv/linux/alpha/libm.abilist16
-rw-r--r--sysdeps/unix/sysv/linux/alpha/termios_arch.h26
-rw-r--r--sysdeps/unix/sysv/linux/arc/arch-syscall.h1
-rw-r--r--sysdeps/unix/sysv/linux/arc/libc.abilist14
-rw-r--r--sysdeps/unix/sysv/linux/arc/libm.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/arm/arch-syscall.h1
-rw-r--r--sysdeps/unix/sysv/linux/arm/be/libc.abilist14
-rw-r--r--sysdeps/unix/sysv/linux/arm/be/libm.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/arm/le/libc.abilist14
-rw-r--r--sysdeps/unix/sysv/linux/arm/le/libm.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/bits/fcntl-linux.h2
-rw-r--r--sysdeps/unix/sysv/linux/bits/ioctl-types.h11
-rw-r--r--sysdeps/unix/sysv/linux/bits/ioctls.h85
-rw-r--r--sysdeps/unix/sysv/linux/bits/mman-shared.h7
-rw-r--r--sysdeps/unix/sysv/linux/bits/termios-c_cflag.h4
-rw-r--r--sysdeps/unix/sysv/linux/bits/termios-cbaud.h (renamed from sysdeps/unix/sysv/linux/bits/termios-baud.h)39
-rw-r--r--sysdeps/unix/sysv/linux/bits/termios-struct.h11
-rw-r--r--sysdeps/unix/sysv/linux/bits/termios.h50
-rw-r--r--sysdeps/unix/sysv/linux/cfsetspeed.c59
-rw-r--r--sysdeps/unix/sysv/linux/close_nocancel_nostatus.c (renamed from sysdeps/powerpc/powerpc32/power4/multiarch/strncase_l-power7.c)20
-rw-r--r--sysdeps/unix/sysv/linux/csky/arch-syscall.h1
-rw-r--r--sysdeps/unix/sysv/linux/csky/libc.abilist14
-rw-r--r--sysdeps/unix/sysv/linux/csky/libm.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/dl-execstack.c7
-rw-r--r--sysdeps/unix/sysv/linux/hppa/arch-syscall.h1
-rw-r--r--sysdeps/unix/sysv/linux/hppa/libc.abilist14
-rw-r--r--sysdeps/unix/sysv/linux/hppa/libm.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/i386/arch-syscall.h1
-rw-r--r--sysdeps/unix/sysv/linux/i386/libc.abilist14
-rw-r--r--sysdeps/unix/sysv/linux/i386/libm.abilist16
-rw-r--r--sysdeps/unix/sysv/linux/if_index.c41
-rw-r--r--sysdeps/unix/sysv/linux/isatty.c (renamed from sysdeps/powerpc/powerpc64/multiarch/memchr-power10.S)23
-rw-r--r--sysdeps/unix/sysv/linux/isatty_nostatus.c26
-rw-r--r--sysdeps/unix/sysv/linux/kernel-features.h4
-rw-r--r--sysdeps/unix/sysv/linux/libc_sigaction.c2
-rw-r--r--sysdeps/unix/sysv/linux/loongarch/arch-syscall.h1
-rw-r--r--sysdeps/unix/sysv/linux/loongarch/lp64/libc.abilist14
-rw-r--r--sysdeps/unix/sysv/linux/loongarch/lp64/libm.abilist16
-rw-r--r--sysdeps/unix/sysv/linux/m68k/arch-syscall.h1
-rw-r--r--sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist14
-rw-r--r--sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist14
-rw-r--r--sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/microblaze/arch-syscall.h1
-rw-r--r--sysdeps/unix/sysv/linux/microblaze/be/libc.abilist14
-rw-r--r--sysdeps/unix/sysv/linux/microblaze/be/libm.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/microblaze/le/libc.abilist14
-rw-r--r--sysdeps/unix/sysv/linux/microblaze/le/libm.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/mips/Versions4
-rw-r--r--sysdeps/unix/sysv/linux/mips/bits/ioctl-types.h12
-rw-r--r--sysdeps/unix/sysv/linux/mips/bits/termios-struct.h34
-rw-r--r--sysdeps/unix/sysv/linux/mips/kernel_termios.h37
-rw-r--r--sysdeps/unix/sysv/linux/mips/mips32/arch-syscall.h1
-rw-r--r--sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist16
-rw-r--r--sysdeps/unix/sysv/linux/mips/mips32/libm.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist16
-rw-r--r--sysdeps/unix/sysv/linux/mips/mips64/libm.abilist16
-rw-r--r--sysdeps/unix/sysv/linux/mips/mips64/n32/arch-syscall.h1
-rw-r--r--sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist16
-rw-r--r--sysdeps/unix/sysv/linux/mips/mips64/n64/arch-syscall.h1
-rw-r--r--sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist16
-rw-r--r--sysdeps/unix/sysv/linux/mips/termios_arch.h34
-rw-r--r--sysdeps/unix/sysv/linux/not-cancel.h12
-rw-r--r--sysdeps/unix/sysv/linux/old_termios.h23
-rw-r--r--sysdeps/unix/sysv/linux/or1k/arch-syscall.h1
-rw-r--r--sysdeps/unix/sysv/linux/or1k/libc.abilist14
-rw-r--r--sysdeps/unix/sysv/linux/or1k/libm.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/bits/ioctl-types.h11
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/bits/termios-c_cflag.h4
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/bits/termios-cbaud.h (renamed from sysdeps/unix/sysv/linux/powerpc/bits/termios-baud.h)42
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/configure43
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/configure.ac19
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/kernel_termios.h53
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/arch-syscall.h1
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist14
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist14
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/arch-syscall.h1
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist14
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist14
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist18
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/termios_arch.h33
-rw-r--r--sysdeps/unix/sysv/linux/riscv/hwprobe.c4
-rw-r--r--sysdeps/unix/sysv/linux/riscv/rv32/arch-syscall.h1
-rw-r--r--sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist14
-rw-r--r--sysdeps/unix/sysv/linux/riscv/rv32/libm.abilist16
-rw-r--r--sysdeps/unix/sysv/linux/riscv/rv64/arch-syscall.h1
-rw-r--r--sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist14
-rw-r--r--sysdeps/unix/sysv/linux/riscv/rv64/libm.abilist16
-rw-r--r--sysdeps/unix/sysv/linux/riscv/sys/hwprobe.h40
-rw-r--r--sysdeps/unix/sysv/linux/riscv/sysdep.h3
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/arch-syscall.h1
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist14
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist16
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/arch-syscall.h1
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist14
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist16
-rw-r--r--sysdeps/unix/sysv/linux/s390/sysconf.c2
-rw-r--r--sysdeps/unix/sysv/linux/sh/arch-syscall.h1
-rw-r--r--sysdeps/unix/sysv/linux/sh/be/libc.abilist14
-rw-r--r--sysdeps/unix/sysv/linux/sh/be/libm.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/sh/le/libc.abilist14
-rw-r--r--sysdeps/unix/sysv/linux/sh/le/libm.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/sparc/Versions4
-rw-r--r--sysdeps/unix/sysv/linux/sparc/bits/termios-cbaud.h (renamed from sysdeps/unix/sysv/linux/sparc/bits/termios-baud.h)39
-rw-r--r--sysdeps/unix/sysv/linux/sparc/bits/termios-struct.h34
-rw-r--r--sysdeps/unix/sysv/linux/sparc/kernel_termios.h40
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/arch-syscall.h1
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist16
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist16
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc64/arch-syscall.h1
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist16
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist16
-rw-r--r--sysdeps/unix/sysv/linux/sparc/termios_arch.h34
-rw-r--r--sysdeps/unix/sysv/linux/speed.c363
-rw-r--r--sysdeps/unix/sysv/linux/syscall-names.list5
-rw-r--r--sysdeps/unix/sysv/linux/tcgetattr.c86
-rw-r--r--sysdeps/unix/sysv/linux/tcsetattr.c125
-rw-r--r--sysdeps/unix/sysv/linux/termio.h6
-rw-r--r--sysdeps/unix/sysv/linux/termios_arch.h23
-rw-r--r--sysdeps/unix/sysv/linux/termios_internals.h143
-rw-r--r--sysdeps/unix/sysv/linux/tst-pkey.c6
-rw-r--r--sysdeps/unix/sysv/linux/tst-termios-linux.c592
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/64/arch-syscall.h1
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/64/libc.abilist14
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/64/libm.abilist16
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/Makefile8
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/libc_sigaction.c2
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/uw-sigframe.h76
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/x32/arch-syscall.h1
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist14
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist16
-rw-r--r--sysdeps/x86/Makefile36
-rw-r--r--sysdeps/x86/configure4
-rw-r--r--sysdeps/x86/configure.ac2
-rw-r--r--sysdeps/x86/cpu-features.c381
-rw-r--r--sysdeps/x86/sysdep.h29
-rw-r--r--sysdeps/x86/tst-gnu2-tls2-x86-noxsave.c2
-rw-r--r--sysdeps/x86/tst-gnu2-tls2-x86-noxsavec.c2
-rw-r--r--sysdeps/x86/tst-gnu2-tls2-x86-noxsavexsavec.c2
-rw-r--r--sysdeps/x86/tst-gnu2-tls2.c36
-rw-r--r--sysdeps/x86/tst-gnu2-tls2.h37
-rw-r--r--sysdeps/x86/tst-tls23.c22
-rw-r--r--sysdeps/x86/tst-tls23.h35
-rw-r--r--sysdeps/x86_64/Makefile51
-rw-r--r--sysdeps/x86_64/configure2
-rw-r--r--sysdeps/x86_64/configure.ac2
-rw-r--r--sysdeps/x86_64/dl-tlsdesc.S1
-rw-r--r--sysdeps/x86_64/dl-trampoline.S1
-rw-r--r--sysdeps/x86_64/fpu/math-use-builtins-trunc.h9
-rw-r--r--sysdeps/x86_64/fpu/multiarch/Makefile23
-rw-r--r--sysdeps/x86_64/fpu/multiarch/ifunc-sse4_1-avx.h41
-rw-r--r--sysdeps/x86_64/fpu/multiarch/s_modf-avx.c3
-rw-r--r--sysdeps/x86_64/fpu/multiarch/s_modf-sse4_1.c3
-rw-r--r--sysdeps/x86_64/fpu/multiarch/s_modf.c41
-rw-r--r--sysdeps/x86_64/fpu/multiarch/s_modff-avx.c3
-rw-r--r--sysdeps/x86_64/fpu/multiarch/s_modff-sse4_1.c3
-rw-r--r--sysdeps/x86_64/fpu/multiarch/s_modff.c (renamed from sysdeps/x86_64/dl-trampoline-save.h)37
-rw-r--r--sysdeps/x86_64/multiarch/ifunc-impl-list.c4
-rw-r--r--sysdeps/x86_64/tst-auditmod10b.c109
-rw-r--r--termios/Makefile32
-rw-r--r--termios/Versions7
-rw-r--r--termios/baud.c56
-rw-r--r--termios/cfsetbaud.c (renamed from sysdeps/powerpc/powerpc64/multiarch/strcmp-power10.S)21
-rw-r--r--termios/cfsetspeed.c142
-rw-r--r--termios/isatty.c (renamed from io/isatty.c)0
-rw-r--r--termios/isatty_nostatus.c29
-rw-r--r--termios/speed.c18
-rw-r--r--termios/sys/ttychars.h4
-rw-r--r--termios/tcsetattr.c5
-rw-r--r--termios/termios.h20
-rw-r--r--time/strftime_l.c1
-rw-r--r--timezone/tst-bz28707.c34
-rw-r--r--version.h2
791 files changed, 94154 insertions, 11840 deletions
diff --git a/ChangeLog.old/ChangeLog.31 b/ChangeLog.old/ChangeLog.31
new file mode 100644
index 0000000..937108d
--- /dev/null
+++ b/ChangeLog.old/ChangeLog.31
@@ -0,0 +1,10420 @@
+2025-07-28 Andreas K. Hüttel <dilfridge@gentoo.org>
+
+ COMMIT: 2dc0412498e0c0a0280f800cf4284b2ec3bed449
+ Bump version number to 2.42
+
+ * include/features.h: Modified.
+ (__GLIBC_MINOR__): Modified.
+ * version.h: Modified.
+ (RELEASE): Modified.
+ (VERSION): Modified.
+
+2025-07-28 Andreas K. Hüttel <dilfridge@gentoo.org>
+
+ COMMIT: c113fdc40b5c1991e71fc780a174f1f361a257cc
+ NEWS: update with last-minute fix bug 33224
+
+ * NEWS: Modified.
+
+2025-07-28 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 6ab36c4e6d5a7798c469d26b6760b58d84a87558
+ math: Update auto-libm-tests-in with ldbl-128ibm compoundn/pown failures
+
+ * math/auto-libm-test-in: Modified.
+ * math/auto-libm-test-out-compoundn: Modified.
+ * math/auto-libm-test-out-pown: Modified.
+
+2025-07-28 Andreas K. Hüttel <dilfridge@gentoo.org>
+
+ COMMIT: 54851e392d3eaa8a575a382387f27ee4267ce15e
+ INSTALL: Update newest tested binutils version
+
+ * INSTALL: Modified.
+ * manual/install.texi: Modified.
+
+2025-07-28 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 620f0730f311635cd0e175a3ae4d0fc700c76366
+ elf: Compile _dl_debug_state separately (bug 33224)
+
+ * elf/Makefile: Modified.
+ * elf/dl-debug.c: Modified.
+ (_dl_debug_state): Remove function.
+ (rtld_hidden_def): Remove.
+ * elf/dl-debug_state.c: New file.
+
+2025-07-28 Sam James <sam@gentoo.org>
+
+ COMMIT: c4ff6e666b3d1b56456b3d7ad9cb787ad1264983
+ configure.ac: fix bashisms in SFrame checks
+
+ * configure: Modified.
+ * configure.ac: Modified.
+
+2025-07-26 Andreas K. Hüttel <dilfridge@gentoo.org>
+
+ COMMIT: 0def17238661b47fd8557aafaa1bb4805e6b28e8
+ INSTALL: regenerate
+
+ * INSTALL: Modified.
+
+2025-07-26 Andreas K. Hüttel <dilfridge@gentoo.org>
+
+ COMMIT: 4e42971a0354552c16be0fe3a7ad0739a0785d7b
+ install.texi: Update tested build tool versions
+
+ * manual/install.texi: Modified.
+
+2025-07-26 Andreas K. Hüttel <dilfridge@gentoo.org>
+
+ COMMIT: 015483f8a1cf06c379989c1f57e8f8e75db9c48a
+ contrib.texi: Update
+
+ * manual/contrib.texi: Modified.
+
+2025-07-26 Andreas K. Hüttel <dilfridge@gentoo.org>
+
+ COMMIT: a92914de93979dbaa85ae9e410157bf5b67bcf98
+ NEWS: insert list of CVEs
+
+ * NEWS: Modified.
+
+2025-07-26 Andreas K. Hüttel <dilfridge@gentoo.org>
+
+ COMMIT: 4d585d0afb2db97ce4356c56ee63ac58f44ebe29
+ advisories: s/CVE-id/CVE-Id/ (the lowercase i breaks our tooling)
+
+ * advisories/GLIBC-SA-2025-0002: Modified.
+ * advisories/GLIBC-SA-2025-0003: Modified.
+ * advisories/GLIBC-SA-2025-0004: Modified.
+
+2025-07-25 Carlos O'Donell <carlos@redhat.com>
+
+ COMMIT: 2a796b7981a85f513baccab123c473802ab989d6
+ NEWS: Generalize testing section and mention the manual.
+
+ * NEWS: Modified.
+
+2025-07-25 Andreas K. Hüttel <dilfridge@gentoo.org>
+
+ COMMIT: 712623fb07d307181263607086b1e7197924137c
+ NEWS: Insert list of bugs fixed in 2.42
+
+ * NEWS: Modified.
+
+2025-07-25 Andreas K. Hüttel <dilfridge@gentoo.org>
+
+ COMMIT: 12c9494310858d7c52aad12958cb2566591464b2
+ NEWS: Collect some more newsworthy items
+
+ * NEWS: Modified.
+
+2025-07-25 Andreas K. Hüttel <dilfridge@gentoo.org>
+
+ COMMIT: 30a5fd9b1102ce0f5436d1b7192ab9ec6ab3c085
+ NEWS: editorial changes
+
+ * NEWS: Modified.
+
+2025-07-25 Andreas K. Hüttel <dilfridge@gentoo.org>
+
+ COMMIT: b149c8e1f70cf93ad09e8f9cc69a56749ddc8c4c
+ po: Update swedish translations
+
+ * po/sv.po: Modified.
+
+2025-07-25 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 9e1951ae887a63a5af4d135fbfc751adb641cf6b
+ debug: Only run sframe tests if run-built-tests is enabled
+
+ * debug/Makefile: Modified.
+
+2025-07-25 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 8698af6dcf332f8ce7b3af3e2be3c8c49fec2b0e
+ aarch64: Fix aarch64_be build with --enable-sframe
+
+ * sysdeps/unix/sysv/linux/aarch64/uw-sigframe.h: Modified.
+
+2025-07-24 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 158e939aef55017f76c93d4be1b262de6cc2378f
+ elf: Check SFrame on tst-dl_find_object.c
+
+ * elf/tst-dl_find_object.c: Modified.
+ (check): Modified function.
+ (do_test): Modified function.
+
+2025-07-24 Claudiu Zissulescu <claudiu.zissulescu-ianculescu@oracle.com>
+
+ COMMIT: 072b5a9922ee6711c00c7c38dec96873dd7b9916
+ sframe: Add support for SFRAME_F_FDE_FUNC_START_PCREL flag
+
+ * sysdeps/generic/sframe-read.c: Modified.
+ (sframe_header_sanity_check_p): Modified function.
+ (sframe_fre_check_range_p): Modified function.
+ (sframe_get_funcdesc_with_addr_internal): Modified function.
+ (__sframe_find_fre): Modified function.
+ (sframe_decoder_get_offsetof_fde_start_addr): New function.
+ (sframe_decoder_get_secrel_func_start_addr): New function.
+ * sysdeps/generic/sframe-read.h: Modified.
+ [__cplusplus](sframe_decoder_ctx): Modified.
+ * sysdeps/generic/sframe.h: Modified.
+ [__cplusplus](SFRAME_F_FDE_SORTED): Modified.
+ [__cplusplus](SFRAME_F_FRAME_POINTER): Modified.
+ [__cplusplus](SFRAME_F_FDE_FUNC_START_PCREL): New.
+ [__cplusplus](SFRAME_V2_F_ALL_FLAGS): New.
+
+2025-07-24 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 20528165bda5286f8c5c2d20200699a354eb9a0a
+ Disable SFrame support by default
+
+ * INSTALL: Modified.
+ * NEWS: Modified.
+ * aclocal.m4: Modified.
+ * config.h.in: Modified.
+ * config.make.in: Modified.
+ * configure: Modified.
+ * configure.ac: Modified.
+ * debug/Makefile: Modified.
+ * debug/backtrace.c: Modified.
+ (sframe.h): Remove include.
+ (do_sframe_backtrace): Remove function.
+ (__backtrace): Modified function.
+ [ENABLE_SFRAME](sframe.h): New.
+ [ENABLE_SFRAME](do_sframe_backtrace): New.
+ * sysdeps/pthread/tst-backtrace1.c: Move to...
+ * debug/tst-backtrace1.c: ... here.
+ * manual/install.texi: Modified.
+ * sysdeps/aarch64/configure: Modified.
+ * sysdeps/aarch64/configure.ac: Modified.
+ * sysdeps/generic/Makefile: Modified.
+ * sysdeps/pthread/Makefile: Modified.
+ * sysdeps/x86_64/configure: Modified.
+ * sysdeps/x86_64/configure.ac: Modified.
+
+2025-07-24 Sachin Monga <smonga@linux.ibm.com>
+
+ COMMIT: ce488f7c1615bc2f6fe96ff4d51456e470aa5805
+ math: xfail some pown and compoundn tests for ibm128-libgcc
+
+ * math/auto-libm-test-out-compoundn: Modified.
+ * math/auto-libm-test-out-pown: Modified.
+ * math/libm-test-pown.inc: Modified.
+
+2025-07-24 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: c7742069a658dd9d266f74587b7e91a579a49d40
+ manual: Use @Theglibc{} at sentence start in terminal documentation
+
+ * manual/terminal.texi: Modified.
+
+2025-07-24 Carlos O'Donell <carlos@redhat.com>
+
+ COMMIT: d73149331156aaaf23f4f1e48c507aa804e102c3
+ Update Fix-Commit list for advisory GLIBC-SA-2025-0002
+
+ * advisories/GLIBC-SA-2025-0002: Modified.
+
+2025-07-24 John David Anglin <danglin@gcc.gnu.org>
+
+ COMMIT: d21c8ba4795044ae863e832d0683ba10fec01c7c
+ debug: Link tst-sprintf-fortify-rdonly-static with -Wl,-z,relro [BZ 33183]
+
+ * debug/Makefile: Modified.
+
+2025-07-23 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 3ff17af18c38727b88d9115e536c069e6b5d601f
+ Advisory text for CVE-2025-8058
+
+ * advisories/GLIBC-SA-2025-0005: New file.
+
+2025-07-22 Andreas K. Hüttel <dilfridge@gentoo.org>
+
+ COMMIT: 1944817240eeea5c044995e45a771a5a5193ecf1
+ Makeconfig: The hash character # confuses old make, use $(dir instead of sed
+
+ * Makeconfig: Modified.
+
+2025-07-22 Andreas K. Hüttel <dilfridge@gentoo.org>
+
+ COMMIT: 58d0ef79898eed5415c0dd4d3c9eda6c3c314daf
+ po: Incorporate translations
+
+ * po/be.po: Modified.
+ * po/bg.po: Modified.
+ * po/ca.po: Modified.
+ * po/cs.po: Modified.
+ * po/da.po: Modified.
+ * po/de.po: Modified.
+ * po/el.po: Modified.
+ * po/eo.po: Modified.
+ * po/es.po: Modified.
+ * po/fi.po: Modified.
+ * po/fr.po: Modified.
+ * po/gl.po: Modified.
+ * po/hr.po: Modified.
+ * po/hu.po: Modified.
+ * po/ia.po: Modified.
+ * po/id.po: Modified.
+ * po/it.po: Modified.
+ * po/ja.po: Modified.
+ * po/ka.po: Modified.
+ * po/ko.po: Modified.
+ * po/lt.po: Modified.
+ * po/nb.po: Modified.
+ * po/nl.po: Modified.
+ * po/pl.po: Modified.
+ * po/pt.po: Modified.
+ * po/pt_BR.po: Modified.
+ * po/ro.po: Modified.
+ * po/ru.po: Modified.
+ * po/rw.po: Modified.
+ * po/sk.po: Modified.
+ * po/sl.po: Modified.
+ * po/sr.po: Modified.
+ * po/sv.po: Modified.
+ * po/tr.po: Modified.
+ * po/uk.po: Modified.
+ * po/vi.po: Modified.
+ * po/zh_CN.po: Modified.
+ * po/zh_TW.po: Modified.
+
+2025-07-21 Florian Weimer <fweimer@redhat.com>
+ Paul Eggert <eggert@cs.ucla.edu>
+
+ COMMIT: 7ea06e994093fa0bcca0d0ee2c1db271d8d7885d
+ posix: Fix double-free after allocation failure in regcomp (bug 33185)
+
+ * posix/Makefile: Modified.
+ * posix/regcomp.c: Modified.
+ [_REGEX_RE_COMP || _LIBC][! _LIBC][_LIBC][! _LIBC](parse_bracket_exp): Modified function.
+ [_REGEX_RE_COMP || _LIBC][! _LIBC][_LIBC](parse_bracket_exp): Modified function.
+ * posix/tst-regcomp-bracket-free.c: New file.
+
+2025-07-21 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 0f93d54cde08d1da321493b999d6833779995a86
+ Revert "Linux: Keep termios ioctl constants strictly internal"
+
+ * NEWS: Modified.
+ * sysdeps/unix/sysv/linux/Makefile: Modified.
+ * sysdeps/unix/sysv/linux/alpha/bits/ioctls.h: New file.
+ * sysdeps/unix/sysv/linux/alpha/termios_arch.h: New file.
+ * sysdeps/unix/sysv/linux/bits/ioctls.h: Modified.
+ (TCGETS): Remove.
+ (TCSETS): Remove.
+ (TCSETSF): Remove.
+ (TCSETSW): Remove.
+ (TCGETS2): Remove.
+ (TCSETS2): Remove.
+ (TCSETSF2): Remove.
+ (TCSETSW2): Remove.
+ * sysdeps/unix/sysv/linux/hppa/bits/ioctls.h: New file.
+ * sysdeps/unix/sysv/linux/isatty.c: Modified.
+ (__isatty): Modified function.
+ * sysdeps/unix/sysv/linux/isatty_nostatus.c: Modified.
+ (__isatty_nostatus): Modified function.
+ * sysdeps/unix/sysv/linux/mips/old_termios.h: Move to...
+ * sysdeps/unix/sysv/linux/mips/termios_arch.h: ... here.
+ (old_termios): Modified.
+ (_TERMIOS2_NCCS): New.
+ (_HAVE_TERMIOS2_C_CC_BEFORE_C_LINE): New.
+ * sysdeps/unix/sysv/linux/powerpc/internal-ioctl.h: Modified.
+ (termios_internals.h): Remove include.
+ (assert.h): Remove include.
+ (GLIBC_TCGETS): Remove.
+ (GLIBC_TCSETS): Remove.
+ (GLIBC_TCSETSW): Remove.
+ (GLIBC_TCSETSF): Remove.
+ (__ioctl_arch): Modified function.
+ * sysdeps/unix/sysv/linux/powerpc/termios_arch.h: New file.
+ * sysdeps/unix/sysv/linux/sparc/bits/ioctls.h: New file.
+ * sysdeps/unix/sysv/linux/sparc/old_termios.h: Move to...
+ * sysdeps/unix/sysv/linux/sparc/termios_arch.h: ... here.
+ (old_termios): Modified.
+ (_TERMIOS2_NCCS): New.
+ (_HAVE_TERMIOS2_C_CC_BEFORE_C_LINE): New.
+ * sysdeps/unix/sysv/linux/tcgetattr.c: Modified.
+ (__tcgetattr): Modified function.
+ * sysdeps/unix/sysv/linux/tcsetattr.c: Modified.
+ (static_assert_equal): Remove.
+ (static_assert_equal): Remove.
+ (static_assert_equal): Remove.
+ (__tcsetattr): Modified function.
+ * sysdeps/unix/sysv/linux/termios-kernel-consts.sym: Delete file.
+ * sysdeps/unix/sysv/linux/termios_arch.h: New file.
+ * sysdeps/unix/sysv/linux/termios_internals.h: Modified.
+ [! __ASSUME_TERMIOS2](ARCH_TCGETS): Remove.
+ [__ASSUME_TERMIOS2](ARCH_TCGETS): Remove.
+ (termios-kernel-consts.h): Remove include.
+ (termios2): Modified.
+ (old_termios.h): Remove include.
+ [! TCGETS2](TCGETS2): New.
+ [! TCGETS2](TCSETS2): New.
+ [! TCGETS2](TCSETSW2): New.
+ [! TCGETS2](TCSETSF2): New.
+ [! _HAVE_STRUCT_OLD_TERMIOS](OLD_NCCS): New.
+ [! _HAVE_STRUCT_OLD_TERMIOS](old_termios_t): New.
+ [!__ASSUME_TERMIOS2](TCGETS2): New.
+ [_HAVE_STRUCT_OLD_TERMIOS](old_termios_t): New.
+ (termios_arch.h): Include file.
+
+2025-07-20 H. Peter Anvin <hpa@zytor.com>
+
+ COMMIT: c744519bad81067697600bd01e90b90ae338bf08
+ termios: manual: document the SPEED_MAX and BAUD_MAX constants
+
+ * manual/terminal.texi: Modified.
+
+2025-07-20 H. Peter Anvin <hpa@zytor.com>
+
+ COMMIT: 12126f86f2526da325cd17a6463ec4c0c3db981e
+ termios: SPEED_MAX and BAUD_MAX constants
+
+ * bits/termios-baud.h: Modified.
+ [__USE_GNU](SPEED_MAX): New.
+ * termios/termios.h: Modified.
+ [__USE_GNU](BAUD_MAX): New.
+
+2025-07-20 H. Peter Anvin <hpa@zytor.com>
+
+ COMMIT: 0332959dd27e8be7e488862211327eab3531e520
+ termios: move the baud_t interface from __USE_MISC to __USE_GNU
+
+ * termios/termios.h: Modified.
+ [__USE_MISC](baud_t): Remove.
+ [__USE_MISC](cfgetobaud): Remove.
+ [__USE_MISC](cfgetibaud): Remove.
+ [__USE_MISC](cfsetobaud): Remove.
+ [__USE_MISC](cfsetibaud): Remove.
+ [__USE_MISC](cfsetbaud): Remove.
+ [__USE_GNU](baud_t): New.
+ [__USE_GNU](cfgetobaud): New.
+ [__USE_GNU](cfgetibaud): New.
+ [__USE_GNU](cfsetobaud): New.
+ [__USE_GNU](cfsetibaud): New.
+ [__USE_GNU](cfsetbaud): New.
+
+2025-07-20 H. Peter Anvin <hpa@zytor.com>
+
+ COMMIT: 5dd2a19ad5218261cee064477342e81d67367e78
+ termios: manual: improve the explanation of various tty concepts
+
+ * manual/terminal.texi: Modified.
+
+2025-07-20 H. Peter Anvin <hpa@zytor.com>
+
+ COMMIT: 5e78997c5662a16a3aaeec8c49b99e30e6e24046
+ termios: manual: remove duplicate cfgetospeed() definition
+
+ * manual/terminal.texi: Modified.
+
+2025-07-20 H. Peter Anvin <hpa@zytor.com>
+
+ COMMIT: 118370fd7880d5f275e189af451c8cc78f7bfcca
+ termios: manual: fix typo: tcsettattr -> tcsetattr
+
+ * manual/terminal.texi: Modified.
+
+2025-07-19 Andreas K. Hüttel <dilfridge@gentoo.org>
+
+ COMMIT: 8cab264b26411579051de930417ca4a346e0254c
+ libc.pot: regenerate
+
+ * po/libc.pot: Modified.
+
+2025-07-19 H.J. Lu <hjl.tools@gmail.com>
+
+ COMMIT: 55e85c1e48c2aae71c0b5907fd22a3e9b978b6e8
+ io/tst-stat.c: Use a temporary directory for symlink test
+
+ * io/tst-stat.c: Modified.
+ (do_test): Modified function.
+ (stdlib.h): Include file.
+
+2025-07-18 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 01196393c257c59f63e0e14fa1bfe8d2a699bf2d
+ elf: Initialize GLRO (dl_read_only_area) after static dlopen (bug 33139)
+
+ * debug/Makefile: Modified.
+ * debug/tst-sprintf-fortify-rdonly-static.c: New file.
+ * elf/rtld.c: Modified.
+ [! DONT_USE_BOOTSTRAP_MAP](_dl_start_final): Modified function.
+ [DONT_USE_BOOTSTRAP_MAP](_dl_start_final): Modified function.
+ * elf/rtld_static_init.c: Modified.
+ (__rtld_static_init): Modified function.
+
+2025-07-18 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 3a9c1497e320d77b2453ee88d7d6b40e162e85d4
+ debug: Do not link tst-sprintf-fortify-rdonly against the dlopen module
+
+ * debug/Makefile: Modified.
+
+2025-07-18 H.J. Lu <hjl.tools@gmail.com>
+ Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: aec84988738cd6bc67f22a26d54b0f5ac9167ee4
+ x86-64: Properly compile ISA optimized modf and modff
+
+ * sysdeps/x86/configure: Modified.
+ * sysdeps/x86/configure.ac: Modified.
+ * sysdeps/x86_64/fpu/multiarch/Makefile: Modified.
+ * sysdeps/x86_64/fpu/multiarch/ifunc-sse4_1-avx.h: New file.
+ * sysdeps/x86_64/fpu/multiarch/s_modf-avx.c: Modified.
+ (__modf): New.
+ * sysdeps/x86_64/fpu/multiarch/s_modf-c.c: Delete file.
+ * sysdeps/x86_64/fpu/multiarch/s_modf-sse4_1.c: Modified.
+ [MINIMUM_X86_ISA_LEVEL != SSE4_1_X86_ISA_LEVEL](__modf): Remove.
+ (sysdeps/x86/isa-level.h): Remove include.
+ (__modf): New.
+ * sysdeps/x86_64/fpu/multiarch/s_modf.c: Modified.
+ [MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL](NO_MATH_REDIRECT): Remove.
+ [MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL](libm-alias-double.h): Remove.
+ [MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL](modf): Remove.
+ [MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL](__modf): Remove.
+ [MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL](math.h): Remove.
+ [MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL](modf): Remove.
+ [MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL](__modf): Remove.
+ [MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL](SYMBOL_NAME): Remove.
+ [MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL](ifunc-sse4_1.h): Remove.
+ [MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL](libc_ifunc_redirected): Remove.
+ [MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL][MINIMUM_X86_ISA_LEVEL != SSE4_1_X86_ISA_LEVEL](__modf): New.
+ [MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL][MINIMUM_X86_ISA_LEVEL != SSE4_1_X86_ISA_LEVEL](sysdeps/ieee754/dbl-64/s_modf.c): New.
+ [MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL][MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL](__modf): New.
+ [MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL](NO_MATH_REDIRECT): New.
+ [MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL](libm-alias-double.h): New.
+ [MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL](modf): New.
+ [MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL](__modf): New.
+ [MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL](math.h): New.
+ [MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL](modf): New.
+ [MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL](__modf): New.
+ [MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL](SYMBOL_NAME): New.
+ [MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL](ifunc-sse4_1-avx.h): New.
+ [MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL](libc_ifunc_redirected): New.
+ * sysdeps/x86_64/fpu/multiarch/s_modff-avx.c: Modified.
+ (__modff): New.
+ * sysdeps/x86_64/fpu/multiarch/s_modff-c.c: Delete file.
+ * sysdeps/x86_64/fpu/multiarch/s_modff-sse4_1.c: Modified.
+ [MINIMUM_X86_ISA_LEVEL != SSE4_1_X86_ISA_LEVEL](__modff): Remove.
+ (sysdeps/x86/isa-level.h): Remove include.
+ (__modff): New.
+ * sysdeps/x86_64/fpu/multiarch/s_modff.c: Modified.
+ [MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL](NO_MATH_REDIRECT): Remove.
+ [MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL](libm-alias-float.h): Remove.
+ [MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL](modff): Remove.
+ [MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL](__modff): Remove.
+ [MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL](math.h): Remove.
+ [MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL](modff): Remove.
+ [MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL](__modff): Remove.
+ [MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL](SYMBOL_NAME): Remove.
+ [MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL](ifunc-sse4_1.h): Remove.
+ [MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL](libc_ifunc_redirected): Remove.
+ [MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL][MINIMUM_X86_ISA_LEVEL != SSE4_1_X86_ISA_LEVEL](__modff): New.
+ [MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL][MINIMUM_X86_ISA_LEVEL != SSE4_1_X86_ISA_LEVEL](sysdeps/ieee754/flt-32/s_modff.c): New.
+ [MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL][MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL](__modff): New.
+ [MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL](NO_MATH_REDIRECT): New.
+ [MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL](libm-alias-float.h): New.
+ [MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL](modff): New.
+ [MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL](__modff): New.
+ [MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL](math.h): New.
+ [MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL](modff): New.
+ [MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL](__modff): New.
+ [MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL](SYMBOL_NAME): New.
+ [MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL](ifunc-sse4_1-avx.h): New.
+ [MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL](libc_ifunc_redirected): New.
+
+2025-07-17 H.J. Lu <hjl.tools@gmail.com>
+
+ COMMIT: 13bf7812ef512d86d026ada34e75b22692152441
+ x86-64: Compile ISA versions of modf/modff with -fno-stack-protector
+
+ * sysdeps/x86_64/fpu/multiarch/Makefile: Modified.
+
+2025-07-17 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: cdcf24ee14c27b77744ff52ab3ae852821207eb0
+ iconv: iconv -o should not create executable files (bug 33164)
+
+ * iconv/iconv_prog.c: Modified.
+ (open_output_direct): Modified function.
+ (prepare_output_file): Modified function.
+ * iconv/tst-iconv_prog-buffer.sh: Modified.
+
+2025-07-14 Cupertino Miranda <cupertino.miranda@oracle.com>
+
+ COMMIT: 0263528f8dd60cf58976e2d516b7c9edb16ae6f8
+ malloc: fix definition for MAX_TCACHE_SMALL_SIZE
+
+ * malloc/malloc.c: Modified.
+ [USE_TCACHE](MAX_TCACHE_SMALL_SIZE): Modified.
+
+2025-07-14 Claudiu Zissulescu <claudiu.zissulescu-ianculescu@oracle.com>
+
+ COMMIT: e85dbd8604aedf4f3a30c6c9c2f0efc18183f270
+ SFrame: Add tests that uses DWARF backtracer
+
+ * debug/Makefile: Modified.
+
+2025-07-14 Claudiu Zissulescu <claudiu.zissulescu-ianculescu@oracle.com>
+
+ COMMIT: 3d780a44ebdb3fb780e04682df50da1145bcd98a
+ configure: Add --enable-sframe option
+
+ * INSTALL: Modified.
+ * Makeconfig: Modified.
+ * NEWS: Modified.
+ * config.make.in: Modified.
+ * configure: Modified.
+ * configure.ac: Modified.
+ * manual/install.texi: Modified.
+
+2025-07-14 Claudiu Zissulescu <claudiu.zissulescu-ianculescu@oracle.com>
+
+ COMMIT: 3360913c37f5c3a0c8737b76321fd5ce2608fcd5
+ elf: Add SFrame stack tracing
+
+ * debug/backtrace.c: Modified.
+ (__backtrace): Modified function.
+ (sframe.h): Include file.
+ (do_sframe_backtrace): New function.
+ * sysdeps/generic/Makefile: Modified.
+ * sysdeps/generic/sframe-read.c: New file.
+ * sysdeps/generic/sframe-read.h: New file.
+ * sysdeps/generic/sframe.c: New file.
+ * sysdeps/generic/sframe.h: New file.
+ * sysdeps/generic/uw-sigframe.h: New file.
+
+2025-07-14 Claudiu Zissulescu <claudiu.zissulescu-ianculescu@oracle.com>
+
+ COMMIT: b231c21fc6bf7443d4949982f6a34f47605a19e5
+ aarch64: Add SFrame support for aarch64 architecture
+
+ * sysdeps/unix/sysv/linux/aarch64/uw-sigframe.h: New file.
+
+2025-07-14 Claudiu Zissulescu <claudiu.zissulescu-ianculescu@oracle.com>
+
+ COMMIT: 170206b64196c4182e1addd0ce179523cfd6d1dc
+ x86: Add SFrame support for x86 architecture
+
+ * sysdeps/unix/sysv/linux/x86_64/uw-sigframe.h: New file.
+
+2025-07-14 Claudiu Zissulescu <claudiu.zissulescu-ianculescu@oracle.com>
+
+ COMMIT: 0ebe4fba8854f06be17482b250eac1a0b74d2b48
+ elf: Add SFrame support to _dl_find_object function
+
+ * dlfcn/dlfcn.h: Modified.
+ [__USE_GNU](dl_find_object): Modified.
+ [__USE_GNU](DLFO_FLAG_SFRAME): New.
+ * elf/dl-find_object.h: Modified.
+ (dl_find_object_internal): Modified.
+ (_dl_find_object_internal_copy): Modified function.
+ (_dl_find_object_to_external): Modified function.
+ (_dl_find_object_from_map): Modified function.
+ * manual/dynlink.texi: Modified.
+
+2025-07-11 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: c055c54e960579619304c7fb998e6bc12e82c5bd
+ x86_64: Optimize modf/modff for x86_64-v2
+
+ * sysdeps/x86_64/fpu/math-use-builtins-trunc.h: New file.
+ * sysdeps/x86_64/fpu/multiarch/Makefile: Modified.
+ * sysdeps/x86_64/fpu/multiarch/s_modf-avx.c: New file.
+ * sysdeps/x86_64/fpu/multiarch/s_modf-c.c: New file.
+ * sysdeps/x86_64/fpu/multiarch/s_modf-sse4_1.c: New file.
+ * sysdeps/x86_64/fpu/multiarch/s_modf.c: New file.
+ * sysdeps/x86_64/fpu/multiarch/s_modff-avx.c: New file.
+ * sysdeps/x86_64/fpu/multiarch/s_modff-c.c: New file.
+ * sysdeps/x86_64/fpu/multiarch/s_modff-sse4_1.c: New file.
+ * sysdeps/x86_64/fpu/multiarch/s_modff.c: New file.
+
+2025-07-11 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 3d3572f59059e2b19b8541ea648a6172136ec42e
+ Linux: Keep termios ioctl constants strictly internal
+
+ * NEWS: Modified.
+ * sysdeps/unix/sysv/linux/Makefile: Modified.
+ * sysdeps/unix/sysv/linux/alpha/bits/ioctls.h: Delete file.
+ * sysdeps/unix/sysv/linux/alpha/termios_arch.h: Delete file.
+ * sysdeps/unix/sysv/linux/bits/ioctls.h: Modified.
+ (TCGETS): New.
+ (TCSETS): New.
+ (TCSETSF): New.
+ (TCSETSW): New.
+ (TCGETS2): New.
+ (TCSETS2): New.
+ (TCSETSF2): New.
+ (TCSETSW2): New.
+ * sysdeps/unix/sysv/linux/hppa/bits/ioctls.h: Delete file.
+ * sysdeps/unix/sysv/linux/isatty.c: Modified.
+ (__isatty): Modified function.
+ * sysdeps/unix/sysv/linux/isatty_nostatus.c: Modified.
+ (__isatty_nostatus): Modified function.
+ * sysdeps/unix/sysv/linux/mips/termios_arch.h: Move to...
+ * sysdeps/unix/sysv/linux/mips/old_termios.h: ... here.
+ (_TERMIOS2_NCCS): Remove.
+ (_HAVE_TERMIOS2_C_CC_BEFORE_C_LINE): Remove.
+ (old_termios): Modified.
+ * sysdeps/unix/sysv/linux/powerpc/internal-ioctl.h: Modified.
+ (__ioctl_arch): Modified function.
+ (termios_internals.h): Include file.
+ (assert.h): Include file.
+ (GLIBC_TCGETS): New.
+ (GLIBC_TCSETS): New.
+ (GLIBC_TCSETSW): New.
+ (GLIBC_TCSETSF): New.
+ * sysdeps/unix/sysv/linux/powerpc/termios_arch.h: Delete file.
+ * sysdeps/unix/sysv/linux/sparc/bits/ioctls.h: Delete file.
+ * sysdeps/unix/sysv/linux/sparc/termios_arch.h: Move to...
+ * sysdeps/unix/sysv/linux/sparc/old_termios.h: ... here.
+ (_TERMIOS2_NCCS): Remove.
+ (_HAVE_TERMIOS2_C_CC_BEFORE_C_LINE): Remove.
+ (old_termios): Modified.
+ * sysdeps/unix/sysv/linux/tcgetattr.c: Modified.
+ (__tcgetattr): Modified function.
+ * sysdeps/unix/sysv/linux/tcsetattr.c: Modified.
+ (__tcsetattr): Modified function.
+ (static_assert_equal): New function.
+ (static_assert_equal): New function.
+ (static_assert_equal): New function.
+ * sysdeps/unix/sysv/linux/termios-kernel-consts.sym: New file.
+ * sysdeps/unix/sysv/linux/termios_arch.h: Delete file.
+ * sysdeps/unix/sysv/linux/termios_internals.h: Modified.
+ [! TCGETS2](TCGETS2): Remove.
+ [! TCGETS2](TCSETS2): Remove.
+ [! TCGETS2](TCSETSW2): Remove.
+ [! TCGETS2](TCSETSF2): Remove.
+ [! _HAVE_STRUCT_OLD_TERMIOS](OLD_NCCS): Remove.
+ [! _HAVE_STRUCT_OLD_TERMIOS](old_termios_t): Remove.
+ [!__ASSUME_TERMIOS2](TCGETS2): Remove.
+ [_HAVE_STRUCT_OLD_TERMIOS](old_termios_t): Remove.
+ (termios_arch.h): Remove include.
+ (termios2): Modified.
+ [! __ASSUME_TERMIOS2](ARCH_TCGETS): New.
+ [__ASSUME_TERMIOS2](ARCH_TCGETS): New.
+ (termios-kernel-consts.h): Include file.
+ (old_termios.h): Include file.
+
+2025-07-11 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 02e7ac5ee3c6d2ef20c024ea7c243d0ae8496608
+ termios: Move isatty, __isatty_nostatus from io
+
+ * io/Makefile: Modified.
+ * io/Versions: Modified.
+ * termios/Makefile: Modified.
+ * termios/Versions: Modified.
+ * io/isatty.c: Move to...
+ * termios/isatty.c: ... here.
+ * io/isatty_nostatus.c: Move to...
+ * termios/isatty_nostatus.c: ... here.
+
+2025-07-11 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: c5687b4c49a91c5d9826959da2edcc7cdeec1273
+ termios: Reflow and sort Makefile
+
+ * termios/Makefile: Modified.
+
+2025-07-10 Andreas Schwab <schwab@suse.de>
+
+ COMMIT: d6c2760ef7f7cdeab912767f04db4b14632fbb5f
+ Remove termios2 ioctl defintions from public headers
+
+ * sysdeps/unix/sysv/linux/powerpc/bits/ioctls.h: Delete file.
+ * sysdeps/unix/sysv/linux/powerpc/termios_arch.h: Modified.
+ [! TERMIOS_INTERNALS_H](<termios_arch.h> should only be included from <termios_internals.h>"): Remove.
+ (TCGETS2): New.
+ (TCSETS2): New.
+ (TCSETSW2): New.
+ (TCSETSF2): New.
+
+2025-07-09 Andreas K. Hüttel <dilfridge@gentoo.org>
+
+ COMMIT: c559a6190e397b315fdd98d9369f15d2914d8248
+ elf: Remove now pointless empty ld.so.conf files in single tests
+
+ * elf/tst-glibc-hwcaps-2-cache.root/etc/ld.so.conf: Delete file.
+ * elf/tst-glibc-hwcaps-cache.root/etc/ld.so.conf: Delete file.
+ * elf/tst-ldconfig-bad-aux-cache.root/etc/ld.so.conf: Delete file.
+
+2025-07-09 Andreas K. Hüttel <dilfridge@gentoo.org>
+
+ COMMIT: dbe5065f2166be20e57a24f246a40d50e001a05d
+ support: Always run ldconfig in containered tests
+
+ * support/test-container.c: Modified.
+ (main): Modified function.
+
+2025-07-09 Andreas K. Hüttel <dilfridge@gentoo.org>
+
+ COMMIT: ae589cb84df10825fc545a45c7007a5f79409bf1
+ Makefile: Add ld.so.conf with libgcc dir to testroot.pristine
+
+ * Makefile: Modified.
+
+2025-07-09 Andreas K. Hüttel <dilfridge@gentoo.org>
+
+ COMMIT: cf462982ac44bf0f5dfd36a9c242628f0d2970b9
+ Makeconfig: Add libgcc directory to rtld-prefix search path
+
+ * Makeconfig: Modified.
+
+2025-07-09 Yury Khrustalev <yury.khrustalev@arm.com>
+
+ COMMIT: 30c7cf66b80f718a819609441ec4f68c9b0b4a9e
+ NEWS: Mention changes to setjmp on aarch64
+
+ * NEWS: Modified.
+
+2025-07-09 Stefan Liebler <stli@linux.ibm.com>
+
+ COMMIT: 77438db8cfa6ee66b3906230156bdae11c49a195
+ Mark support for lock elision as deprecated.
+
+ * NEWS: Modified.
+
+2025-07-09 H.J. Lu <hjl.tools@gmail.com>
+
+ COMMIT: 7130c2ae972b3c521e2795af6935982a4f078850
+ x86: Avoid vector/r16-r31 registers and memcpy/memset in mcount_internal
+
+ * gmon/Makefile: Modified.
+ * sysdeps/x86/Makefile: Modified.
+ * sysdeps/x86_64/Makefile: Modified.
+
+2025-07-08 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: f33bb123660a51e833b9ed07d8306852028ba7f6
+ NEWS: Mention tcache improvements
+
+ * NEWS: Modified.
+
+2025-07-08 Matteo Croce <teknoraver@meta.com>
+
+ COMMIT: 521b4d6c4d5a7c84efd2742e0aac6311eaef005b
+ fstat: add test and documentation for an edge case.
+
+ * io/tst-stat.c: Modified.
+ (do_test): Modified function.
+ (fstatat_link): New function.
+ * manual/filesys.texi: Modified.
+
+2025-07-08 Matteo Croce <teknoraver@meta.com>
+
+ COMMIT: 652c36b3ea917093bf60ad2a345987530c192821
+ fstatat: extend tests and documentation
+
+ * io/tst-stat-time64.c: Modified.
+ (fstatat_check): Modified function.
+ * io/tst-stat.c: Modified.
+ (fstatat_check): Modified function.
+ * manual/filesys.texi: Modified.
+
+2025-07-06 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ COMMIT: 6afece738c2b8408585272a95090ce5d5345dd19
+ htl: move __pthread_get_cleanup_stack to libc
+
+ * htl/Makefile: Modified.
+ * htl/Versions: Modified.
+ * htl/forward.c: Modified.
+ (FORWARD2): Remove.
+ * htl/pt-cleanup.c: Modified.
+ (__pthread_get_cleanup_stack): Remove function.
+ (hidden_def): Remove.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_21)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (___pthread_get_cleanup_stack): New function.
+ (versioned_symbol): New function.
+ (libc_hidden_ver): New.
+ * htl/pt-initialize.c: Modified.
+ * sysdeps/htl/include/bits/cancelation.h: New file.
+ * sysdeps/htl/libc-lock.h: Modified.
+ [!IS_IN (libpthread)][weak_extern](weak_extern): Remove.
+ * sysdeps/htl/pthread-functions.h: Modified.
+ (__pthread_get_cleanup_stack): Remove.
+ (pthread_functions): Modified.
+ * sysdeps/htl/pthreadP.h: Modified.
+ [IS_IN (libpthread)](hidden_proto): Remove.
+ (libc_hidden_proto): New.
+ * sysdeps/mach/hurd/Makefile: Modified.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/i386/libpthread.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libpthread.abilist: Modified.
+
+2025-07-06 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ COMMIT: b80f108b55c363875ece6f2329d9a8ba01649c70
+ htl: Drop ptr_pthread_once from pthread_functions
+
+ * htl/pt-initialize.c: Modified.
+ * sysdeps/htl/pthread-functions.h: Modified.
+ (__pthread_once): Remove.
+ (pthread_functions): Modified.
+
+2025-07-05 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: ea85e7d55087075376a29261e722e4fae14ecbe7
+ elf: Restore support for _r_debug interpositions and copy relocations
+
+ * elf/Makefile: Modified.
+ * elf/dl-debug-symbols.S: Modified.
+ * elf/dl-debug.c: Modified.
+ [SHARED](get_rdebug): Modified function.
+ [SHARED](_r_debug_main): New.
+ [SHARED](_dl_debug_post_relocate): New function.
+ (_dl_debug_change_state): Modified function.
+ (_dl_debug_initialize): Modified function.
+ (assert.h): Include file.
+ * elf/rtld.c: Modified.
+ (dl_main): Modified function.
+ * elf/tst-dlmopen4-nonpic.c: New file.
+ * elf/tst-dlmopen4-pic.c: New file.
+ * elf/tst-dlmopen4.c: Modified.
+ (do_test): Modified function.
+ * include/link.h: Modified.
+ [! _ISOMAC](rtld_hidden_proto): New.
+ * sysdeps/generic/ldsodefs.h: Modified.
+ (_dl_debug_post_relocate): New function.
+
+2025-07-05 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 8329939a37f483a16013dd8af8303cbcb86d92cb
+ elf: Introduce _dl_debug_change_state
+
+ * elf/dl-close.c: Modified.
+ (_dl_close_worker): Modified function.
+ * elf/dl-debug.c: Modified.
+ (_dl_debug_change_state): New function.
+ * elf/dl-load.c: Modified.
+ (_dl_notify_new_object): Modified function.
+ * elf/dl-open.c: Modified.
+ (dl_open_worker): Modified function.
+ (_dl_open): Modified function.
+ * elf/rtld.c: Modified.
+ (dl_main): Modified function.
+ * sysdeps/generic/ldsodefs.h: Modified.
+ (_dl_debug_change_state): New function.
+
+2025-07-05 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 7278d11f3a0cd528188c719bab75575b0aea2c6e
+ elf: Introduce separate _r_debug_array variable
+
+ * elf/dl-debug.c: Modified.
+ (_dl_debug_update): Modified function.
+ (_dl_debug_initialize): Modified function.
+ [! SHARED](get_rdebug): New.
+ [SHARED](get_rdebug): New.
+ * sysdeps/generic/ldsodefs.h: Modified.
+ [SHARED](rtld_global): Modified.
+
+2025-07-05 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ COMMIT: 21cbe4a58858441b3d6d459ec98cf9bd8f54af95
+ hurd: Mark more xfails for missing RLIMIT_AS support
+
+ * sysdeps/mach/hurd/Makefile: Modified.
+
+2025-07-04 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 1c5f2ae4f98eb02fabab9f7f2b22ef6d23e85edc
+ Linux: Fix typo in comment in termios_internals.h
+
+ * sysdeps/unix/sysv/linux/termios_internals.h: Modified.
+
+2025-07-03 Collin Funk <collin.funk1@gmail.com>
+
+ COMMIT: 4900f993c8119b8482ba9ba0387418b7e05c5c02
+ manual: Remove '.info' suffix in manual names passed to @ref [BZ #32962].
+
+ * manual/intro.texi: Modified.
+ * manual/maint.texi: Modified.
+ * manual/stdio.texi: Modified.
+
+2025-07-02 Arjun Shankar <arjun@redhat.com>
+
+ COMMIT: 7eed691cc2b6c5dbb6066ee1251606a744c7f05c
+ stdlib/Makefile: Remove deleted test's libm dependency
+
+ * stdlib/Makefile: Modified.
+
+2025-07-01 H.J. Lu <hjl.tools@gmail.com>
+
+ COMMIT: 632d895f3e5d98162f77b9c3c1da4ec19968b671
+ elf: Add DL_ADDRESS_WITHOUT_RELOC [BZ #33088]
+
+ * elf/rtld.c: Modified.
+ [! DONT_USE_BOOTSTRAP_MAP](_dl_start_final): Modified function.
+ [DONT_USE_BOOTSTRAP_MAP](_dl_start_final): Modified function.
+ * include/elf.h: Modified.
+ [! _ISOMAC][! HIDDEN_VAR_NEEDS_DYNAMIC_RELOC](DL_ADDRESS_WITHOUT_RELOC): New.
+ [! _ISOMAC][HIDDEN_VAR_NEEDS_DYNAMIC_RELOC](DL_ADDRESS_WITHOUT_RELOC): New.
+
+2025-06-30 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+ Carlos O'Donell <carlos@redhat.com>
+
+ COMMIT: eeb7b079d5d8785e760ca08c3692ffa579bbb737
+ stdlib: Fix __libc_message_impl iovec size (BZ 32947)
+
+ * include/stdio.h: Modified.
+ [! _ISOMAC](IOVEC_MAX_ERR_MSG): New.
+ [! _ISOMAC](IOVEC_MAX_ERR_MSG_LEN): New.
+ * posix/Makefile: Modified.
+ * posix/tst-libc-message.c: New file.
+ * sysdeps/posix/libc_fatal.c: Modified.
+ (atomic.h): Remove include.
+ (errno.h): Remove include.
+ (fcntl.h): Remove include.
+ (libc-pointer-arith.h): Remove include.
+ (paths.h): Remove include.
+ (stdbool.h): Remove include.
+ (stdlib.h): Remove include.
+ (string.h): Remove include.
+ (sysdep.h): Remove include.
+ (sys/mman.h): Remove include.
+ (not-cancel.h): Remove include.
+ (__libc_message_impl): Modified function.
+ (assert.h): Include file.
+ (IOVEC_MAX): New.
+
+2025-06-30 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: 681a24ae4d0cb8ed92de98b4da660308840b09ba
+ AArch64: Avoid memset ifunc in cpu-features.c [BZ #33112]
+
+ * sysdeps/unix/sysv/linux/aarch64/cpu-features.c: Modified.
+ (dl-symbol-redir-ifunc.h): Include file.
+
+2025-06-26 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: 1061b754123dea4b02197793436931172d523c78
+ malloc: Cleanup tcache_init()
+
+ * malloc/malloc.c: Modified.
+ [IS_IN (libc)](__libc_malloc): Modified.
+ [USE_TCACHE](tcache_init): Modified function.
+
+2025-06-26 William Hunt <William.Hunt@arm.com>
+
+ COMMIT: 9a5a7613acd7641ca4dd3c405922b7c8fbc2ec03
+ malloc: replace instances of __builtin_expect with __glibc_unlikely
+
+ * malloc/malloc-debug.c: Modified.
+ (__debug_malloc): Modified function.
+ (__debug_free): Modified function.
+ (__debug_realloc): Modified function.
+ (_debug_mid_memalign): Modified function.
+ (__debug_calloc): Modified function.
+ * malloc/malloc.c: Modified.
+ [IS_IN (libc)](__libc_realloc): Modified function.
+ [IS_IN (libc)](__libc_calloc2): Modified function.
+ (unlink_chunk): Modified function.
+ (_int_malloc): Modified function.
+ (_int_free_chunk): Modified function.
+ (_int_free_merge_chunk): Modified function.
+ (_int_realloc): Modified function.
+
+2025-06-26 William Hunt <william.hunt@arm.com>
+
+ COMMIT: d1ad959b003bae1eb2a5a5fe1acb7c889600e506
+ malloc: refactored aligned_OK and misaligned_chunk
+
+ * malloc/malloc-check.c: Modified.
+ (mem2chunk_check): Modified function.
+ * malloc/malloc.c: Modified.
+ [HAVE_MREMAP](mremap_chunk): Modified function.
+ [MALLOC_DEBUG](do_check_chunk): Modified function.
+ [MALLOC_DEBUG](do_check_free_chunk): Modified function.
+ [MALLOC_DEBUG](do_check_remalloced_chunk): Modified function.
+ [USE_TCACHE](tcache_get_n): Modified function.
+ [USE_TCACHE](tcache_double_free_verify): Modified function.
+ [USE_TCACHE](tcache_thread_shutdown): Modified function.
+ (aligned_OK): Remove.
+ (misaligned_chunk): Modified.
+ (misaligned_mem): New.
+
+2025-06-26 Jitka Obselkova <jobselko@redhat.com>
+
+ COMMIT: 53ea6db9fd25af7486b14cd2bf3b0ae1046e0e98
+ manual: Clarify renameat documentation
+
+ * manual/filesys.texi: Modified.
+
+2025-06-26 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 1149b4f64fea6e07e84e285981b84c8ccaccb025
+ Revert "manual: Clarify renameat documentation"
+
+ * manual/filesys.texi: Modified.
+
+2025-06-26 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: d30f41d2c9031b0540641af692e56002eab5599f
+ elf: Add missing DSO dependencies for tst-rtld-no-malloc-{audit,preload}
+
+ * elf/Makefile: Modified.
+
+2025-06-25 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 79bfbc93dee68830dd3b1d2b3453cf3811df6944
+ powerpc: Remove modf optimization
+
+ * sysdeps/powerpc/fpu/math-use-builtins-trunc.h: Modified.
+ [! _ARCH_PWR5X](USE_TRUNC_BUILTIN): New.
+ [_ARCH_PWR5X](USE_TRUNC_BUILTIN): New.
+ (USE_TRUNC_BUILTIN): Remove.
+ * sysdeps/powerpc/fpu/s_modf.c: Delete file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modf-power5+.c: Modified.
+ (sysdeps/powerpc/fpu/s_modf.c): Remove include.
+ (sysdeps/ieee754/dbl-64/s_modf.c): Include file.
+ * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_modf-power5+.c: Modified.
+ (sysdeps/powerpc/fpu/s_modf.c): Remove include.
+ (sysdeps/ieee754/dbl-64/s_modf.c): Include file.
+
+2025-06-25 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 5c2b21c478068f4f3140b020416dccdead1401e6
+ powerpc: Remove modff optimization
+
+ * sysdeps/ieee754/flt-32/s_modff.c: Modified.
+ * sysdeps/powerpc/fpu/math-use-builtins-trunc.h: New file.
+ * sysdeps/powerpc/fpu/s_modff.c: Delete file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modff-power5+.c: Modified.
+ (sysdeps/powerpc/fpu/s_modff.c): Remove include.
+ (sysdeps/ieee754/flt-32/s_modff.c): Include file.
+ * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_modff-power5+.c: Modified.
+ (sysdeps/powerpc/fpu/s_modff.c): Remove include.
+ (sysdeps/ieee754/flt-32/s_modff.c): Include file.
+
+2025-06-25 Ravina Jain <rajulravina123@gmail.com>
+
+ COMMIT: b2a8d19f4adc8ca22394b02c144b4bc867adc804
+ manual: Add missing free to open_memstream example [BZ #27866]
+
+ * manual/examples/memstrm.c: Modified.
+ (main): Modified function.
+ (stdlib.h): Include file.
+
+2025-06-24 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: 36bcbc6b5bb81eab436c7ed82348a25c4a34fa73
+ Linux: Convert '__close_nocancel_nostatus' to a standalone handler
+
+ * sysdeps/unix/sysv/linux/Makefile: Modified.
+ * sysdeps/unix/sysv/linux/Versions: Modified.
+ * sysdeps/unix/sysv/linux/close_nocancel_nostatus.c: New file.
+ * sysdeps/unix/sysv/linux/not-cancel.h: Modified.
+ [IS_IN (libc) || IS_IN (rtld)](hidden_proto): Modified.
+ [IS_IN (libc) || IS_IN (rtld)](hidden_proto): New.
+ (__close_nocancel_nostatus): Remove function.
+ (__close_nocancel_nostatus): New function.
+
+2025-06-24 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: 3b0d495ac406f14131d299e933b49bfdd02bf626
+ Linux: Fix '__close_nocancel_nostatus' clobbering 'errno' [BZ #33035]
+
+ * sysdeps/unix/sysv/linux/not-cancel.h: Modified.
+ (__close_nocancel_nostatus): Modified function.
+
+2025-06-24 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: db94e6343ad03252a9e59df56614118fb7267ff8
+ inet: Implement inet_ntoa on top of inet_ntop
+
+ * inet/inet_ntoa.c: Modified.
+ (buffer): Modified.
+ (inet_ntoa): Modified function.
+
+2025-06-24 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 80f389ed7e684582439629b264c22a84c26bfd8e
+ resolv: Optimize inet_ntop
+
+ * resolv/inet_ntop.c: Modified.
+ [! SPRINTF_CHAR](SPRINTF): Remove.
+ [SPRINTF_CHAR](SPRINTF): Remove.
+ (sys/param.h): Remove include.
+ (sys/types.h): Remove include.
+ (sys/socket.h): Remove include.
+ (netinet/in.h): Remove include.
+ (stdio.h): Remove include.
+ (inet_ntop4): Remove.
+ (inet_ntop6): Remove.
+ (inet_ntop4): Modified function.
+ (inet_ntop6): Modified function.
+ (_itoa.h): Include file.
+ (put_uint8): New function.
+ (put_uint16): New function.
+ (inet_ntop4_format): New function.
+ (best_t): New.
+ (in6_addr_addr16): New function.
+ (inet_ntop6_format): New function.
+
+2025-06-24 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: f22f6a5b84aeb6a958f1d7c4b7e7262018af22ad
+ resolve: Proper indent resolv/inet_ntop.c
+
+ * resolv/inet_ntop.c: Modified.
+ [! SPRINTF_CHAR](SPRINTF): Modified.
+ [SPRINTF_CHAR](SPRINTF): Modified.
+ (__inet_ntop): Modified function.
+ (inet_ntop4): Modified function.
+ (inet_ntop6): Modified function.
+
+2025-06-24 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 14ca258cc566fd15fa4251baa45abd873fa8b230
+ benchtests: Add IPv6 inet_ntop benchmark
+
+ * benchtests/Makefile: Modified.
+ * benchtests/inet_ntop_ipv6-inputs: New file.
+ * benchtests/inet_ntop_ipv6-source.c: New file.
+
+2025-06-24 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: e6ad9650fbed02f167a90cd6554a7599356317cc
+ benchtests: Add IPv4 inet_ntop benchmark
+
+ * benchtests/Makefile: Modified.
+ * benchtests/inet_ntop_ipv4-inputs: New file.
+ * benchtests/inet_ntop_ipv4-source.c: New file.
+
+2025-06-23 Xi Ruoyao <xry111@xry111.site>
+
+ COMMIT: fc6f074e0496fb8a8df491641165f4ed3cdaa3a3
+ riscv: linux: Add support for getrandom vDSO
+
+ * sysdeps/unix/sysv/linux/riscv/sysdep.h: Modified.
+ [! __ASSEMBLER__][__WORDSIZE == 64](HAVE_GETRANDOM_VSYSCALL): New.
+
+2025-06-23 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 47b577c66f2f51305d1802195f868d6b43e6d84a
+ posix: Fix fnmatch build with gcc-16
+
+ * posix/fnmatch_loop.c: Modified.
+ (FCT): Modified function.
+
+2025-06-23 Andreas Schwab <schwab@suse.de>
+
+ COMMIT: 9b3730a54bf8c915a65d9ff5e875d3551c30a435
+ powerpc: use .machine power10 in POWER10 assembler sources
+
+ * sysdeps/powerpc/powerpc64/le/power10/memcmp.S: Modified.
+ * sysdeps/powerpc/powerpc64/le/power10/memcpy.S: Modified.
+ * sysdeps/powerpc/powerpc64/le/power10/memmove.S: Modified.
+ * sysdeps/powerpc/powerpc64/le/power10/memset.S: Modified.
+ * sysdeps/powerpc/powerpc64/le/power10/strlen.S: Modified.
+
+2025-06-21 Collin Funk <collin.funk1@gmail.com>
+
+ COMMIT: b3b0d0308c95d213f019b19c33abf1b06911f528
+ hurd: Remove a duplicate entry from 'tests-unsupported'.
+
+ * sysdeps/mach/hurd/Makefile: Modified.
+
+2025-06-21 Collin Funk <collin.funk1@gmail.com>
+
+ COMMIT: 5071149e89867070f692d89d75be5d7449294d1c
+ hurd: Fix redefinition of 'P2ALIGN'.
+
+ * sysdeps/mach/sysdep.h: Modified.
+ [__ASSEMBLER__](P2ALIGN): New.
+
+2025-06-19 Martin Coufal <mcoufal@redhat.com>
+
+ COMMIT: 69f8b3e7deaca579511957959f8a7676a7428f49
+ resource/Makefile: Split and sort tests
+
+ * resource/Makefile: Modified.
+
+2025-06-19 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 124bf1fb6b85e201275764c8f5d046861eb6ed65
+ malloc: Link large tcache tests with $(shared-thread-library)
+
+ * malloc/Makefile: Modified.
+
+2025-06-19 H.J. Lu <hjl.tools@gmail.com>
+
+ COMMIT: 0ef7965e5b251473f7d451739324c45b0fefaf1a
+ x86: Update tst-gnu2-tls2 tests
+
+ * elf/tst-gnu2-tls2.c: Modified.
+ (tst-gnu2-tls2.h): Modified.
+ (access_mod): Modified function.
+ * sysdeps/unix/sysv/linux/x86_64/Makefile: Modified.
+ * sysdeps/x86/Makefile: Modified.
+ * sysdeps/x86/tst-gnu2-tls2-x86-noxsave.c: Modified.
+ (elf/tst-gnu2-tls2.c): Remove include.
+ (tst-gnu2-tls2.c): Include file.
+ * sysdeps/x86/tst-gnu2-tls2-x86-noxsavec.c: Modified.
+ (elf/tst-gnu2-tls2.c): Remove include.
+ (tst-gnu2-tls2.c): Include file.
+ * sysdeps/x86/tst-gnu2-tls2-x86-noxsavexsavec.c: Modified.
+ (elf/tst-gnu2-tls2.c): Remove include.
+ (tst-gnu2-tls2.c): Include file.
+ * sysdeps/x86/tst-gnu2-tls2.c: Modified.
+ [! __x86_64__](sys/platform/x86.h): Remove.
+ [! __x86_64__](IS_SUPPORTED): Remove.
+ (PREPARE_MALLOC): Remove.
+ [! TEST_AMX][! __x86_64__](sys/platform/x86.h): New.
+ [! TEST_AMX][! __x86_64__](IS_SUPPORTED): New.
+ [! TEST_AMX](PREPARE_MALLOC): New.
+ [! TEST_AMX](v3): New.
+ * sysdeps/x86/tst-gnu2-tls2.h: New file.
+
+2025-06-19 H.J. Lu <hjl.tools@gmail.com>
+ Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 848f0e46f03f22404ed9a8aabf3fd5ce8809a1be
+ i386: Update ___tls_get_addr to preserve vector registers
+
+ * configure: Modified.
+ * configure.ac: Modified.
+ * elf/Makefile: Modified.
+ * elf/tst-tls23-mod.c: New file.
+ * elf/tst-tls23.c: New file.
+ * sysdeps/x86_64/dl-trampoline-save.h: Move to...
+ * elf/tst-tls23.h: ... here.
+ [! DL_STACK_ALIGNMENT](DL_STACK_ALIGNMENT): Remove.
+ (DL_RUNTIME_RESOLVE_REALIGN_STACK): Remove.
+ [! AFTER_TLS_CALL](AFTER_TLS_CALL): New.
+ [! BEFORE_TLS_CALL](BEFORE_TLS_CALL): New.
+ [! INIT_TLS_CALL](INIT_TLS_CALL): New.
+ (stdint.h): Include file.
+ (tls): New.
+ (apply_tls): New function.
+ * sysdeps/aarch64/preconfigure: Modified.
+ * sysdeps/i386/Makefile: Modified.
+ * sysdeps/i386/dl-tls-get-addr.c: New file.
+ * sysdeps/i386/dl-tls.h: Modified.
+ [SHARED][IS_IN (rtld)](__tls_get_addr): Remove function.
+ [SHARED][IS_IN (rtld)](__tls_get_addr): Modified.
+ [SHARED][IS_IN (rtld)](strong_alias): Remove.
+ [SHARED][IS_IN (rtld)](rtld_hidden_proto): Remove.
+ [SHARED][IS_IN (rtld)](rtld_hidden_def): Remove.
+ [SHARED](___tls_get_addr_internal): Remove.
+ * sysdeps/i386/dl-tlsdesc-dynamic.h: Modified.
+ [! DL_RUNTIME_RESOLVE_REALIGN_STACK][! USE_FNSAVE][! USE_FXSAVE](USE_FXSAVE must be defined): Remove.
+ [! DL_RUNTIME_RESOLVE_REALIGN_STACK][! USE_FNSAVE](REGISTER_SAVE_AREA): Remove.
+ [! DL_RUNTIME_RESOLVE_REALIGN_STACK][REGISTER_SAVE_AREA][! DL_RUNTIME_RESOLVE_REALIGN_STACK][!DL_RUNTIME_RESOLVE_REALIGN_STACK](DL_RUNTIME_RESOLVE_REALIGN_STACK must be true): Remove.
+ [! DL_RUNTIME_RESOLVE_REALIGN_STACK][REGISTER_SAVE_AREA][! DL_RUNTIME_RESOLVE_REALIGN_STACK][DL_RUNTIME_RESOLVE_REALIGN_STACK][! USE_FXSAVE][! USE_XSAVE][! USE_XSAVE][! USE_FXSAVE][! DL_RUNTIME_RESOLVE_REALIGN_STACK](STATE_SAVE_ALIGNMENT): Remove.
+ [! DL_RUNTIME_RESOLVE_REALIGN_STACK][USE_FNSAVE](REGISTER_SAVE_AREA): Remove.
+ [! USE_FNSAVE && (STATE_SAVE_ALIGNMENT % 16) != 0](STATE_SAVE_ALIGNMENT must be multiple of 16): Remove.
+ [DL_RUNTIME_RESOLVE_REALIGN_STACK][USE_FNSAVE](USE_FNSAVE shouldn't be defined): Remove.
+ [DL_RUNTIME_RESOLVE_REALIGN_STACK][USE_FXSAVE](REGISTER_SAVE_AREA): Remove.
+ (REGISTER_SAVE_AREA): Remove.
+ (tls-get-addr-wrapper.h): Include file.
+ (STATE_SAVE_ALIGNMENT): New.
+ * sysdeps/i386/dl-tlsdesc.S: Modified.
+ * sysdeps/i386/tls-get-addr-wrapper.h: New file.
+ * sysdeps/i386/tls_get_addr.S: New file.
+ * sysdeps/i386/tls_get_addr.h: New file.
+ * sysdeps/loongarch/preconfigure: Modified.
+ * sysdeps/loongarch/preconfigure.ac: Modified.
+ * sysdeps/powerpc/Makefile: Modified.
+ * sysdeps/x86/Makefile: Modified.
+ * sysdeps/x86/sysdep.h: Modified.
+ [__ASSEMBLER__][! DL_STACK_ALIGNMENT][! __x86_64__](DL_STACK_ALIGNMENT): New.
+ [__ASSEMBLER__][! DL_STACK_ALIGNMENT][__x86_64__](DL_STACK_ALIGNMENT): New.
+ [__ASSEMBLER__][! DL_STACK_ALIGNMENT][__x86_64__](MINIMUM_ALIGNMENT): New.
+ [__ASSEMBLER__](DL_RUNTIME_RESOLVE_REALIGN_STACK): New.
+ * sysdeps/x86/tst-tls23.c: New file.
+ * sysdeps/x86/tst-tls23.h: New file.
+ * sysdeps/x86_64/Makefile: Modified.
+ * sysdeps/x86_64/dl-tlsdesc.S: Modified.
+ * sysdeps/x86_64/dl-trampoline.S: Modified.
+
+2025-06-18 Jitka Obselkova <jobselko@redhat.com>
+
+ COMMIT: abc2e954af77f8d10f4f54754520814590e79830
+ manual: Clarify renameat documentation
+
+ * manual/filesys.texi: Modified.
+
+2025-06-18 Collin Funk <collin.funk1@gmail.com>
+
+ COMMIT: c3b9abaf33082c89ff385b378e083aad1255f508
+ posix: Add nonnull attribute to glob_pattern_p.
+
+ * posix/glob.h: Modified.
+ [__USE_GNU](glob_pattern_p): Modified.
+
+2025-06-18 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: f165e244e4c72493cf52cd6c98f989321f29c677
+ math: Simplify and optimize modf implementation
+
+ * sysdeps/ieee754/dbl-64/math_config.h: Modified.
+ (EXPONENT_BIAS): New.
+ (is_inf): New function.
+ (get_exponent): New function.
+ * sysdeps/ieee754/dbl-64/s_modf.c: Modified.
+ (math_private.h): Remove include.
+ (stdint.h): Remove include.
+ (one): Remove.
+ (__modf): Modified function.
+ (math_config.h): Include file.
+ (math-use-builtins-trunc.h): Include file.
+
+2025-06-18 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 61cc9922f3cdcd71ed8977016b8180d409826240
+ math: Simplify and optimize modff implementation
+
+ * sysdeps/ieee754/flt-32/math_config.h: Modified.
+ (EXPONENT_BIAS): New.
+ (is_inf): New function.
+ (get_exponent): New function.
+ * sysdeps/ieee754/flt-32/s_modff.c: Modified.
+ (math_private.h): Remove include.
+ (one): Remove.
+ (__modff): Modified function.
+ (math_config.h): Include file.
+ (math-use-builtins-trunc.h): Include file.
+
+2025-06-18 Luna Lamb <luna.lamb@arm.com>
+
+ COMMIT: 6849c5b791edd216f2ec3fdbe4d138bc69b9b333
+ AArch64: Improve codegen SVE log1p helper
+
+ * sysdeps/aarch64/fpu/acosh_sve.c: Modified.
+ * sysdeps/aarch64/fpu/atanh_sve.c: Modified.
+ (SV_NAME_D1): Modified function.
+ * sysdeps/aarch64/fpu/sv_log1p_inline.h: Modified.
+ (poly_sve_f64.h): Remove include.
+ (sv_log1p_data): Modified.
+ (sv_log1p_inline): Modified function.
+
+2025-06-18 Dylan Fleming <Dylan.Fleming@arm.com>
+
+ COMMIT: dee22d2a81ab59afc165fb6dcb45d723f13582a0
+ AArch64: Optimise SVE FP64 Hyperbolics
+
+ * sysdeps/aarch64/fpu/cosh_sve.c: Modified.
+ (data): Modified.
+ (special_case): Modified function.
+ (exp_inline): Remove function.
+ (SV_NAME_D1): Modified function.
+ (exp_over_two_inline): New function.
+ * sysdeps/aarch64/fpu/sinh_sve.c: Modified.
+ (poly_sve_f64.h): Remove include.
+ (data): Modified.
+ (expm1_inline): Modified function.
+ (special_case): Modified function.
+ (SV_NAME_D1): Modified function.
+ * sysdeps/aarch64/fpu/tanh_sve.c: Modified.
+ (poly_sve_f64.h): Remove include.
+ (data): Modified.
+ (expm1_inline): Remove function.
+ (special_case): Remove function.
+ (SV_NAME_D1): Modified function.
+ (e2xm1_inline): New function.
+
+2025-06-18 Dylan Fleming <Dylan.Fleming@arm.com>
+
+ COMMIT: 1e3d1ddf977ecd653de8d0d10eb083d80ac21cf3
+ AArch64: Optimize SVE exp functions
+
+ * sysdeps/aarch64/fpu/exp10f_sve.c: Modified.
+ (Thres): Modified.
+ (data): Modified.
+ (sv_exp10f_inline): Modified function.
+ * sysdeps/aarch64/fpu/exp2_sve.c: Modified.
+ (N): Remove.
+ (data): Modified.
+ (special_case): Modified function.
+ (SV_NAME_D1): Modified function.
+ * sysdeps/aarch64/fpu/exp2f_sve.c: Modified.
+ (poly_sve_f32.h): Remove include.
+ (data): Modified.
+ (sv_exp2f_inline): Modified function.
+ * sysdeps/aarch64/fpu/expm1_sve.c: Modified.
+ (poly_sve_f64.h): Remove include.
+ (SpecialBound): Modified.
+ (ExponentBias): Remove.
+ (data): Modified.
+ (special_case): Modified function.
+ (SV_NAME_D1): Modified function.
+ (FexpaBound): New.
+ (SpecialOffset): New.
+ (SpecialBias1): New.
+ (SpecialBias2): New.
+
+2025-06-18 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 8788bd77d68c6429c7f2dcbd22765525555c3cd8
+ sparc: Fix sparc32 Fix argument passing to __libc_start_main (BZ 32981)
+
+ * sysdeps/sparc/sparc32/start.S: Modified.
+
+2025-06-18 Andreas Schwab <schwab@suse.de>
+
+ COMMIT: 0dbbc44bfd256683705c391d97c4052320e2e64e
+ Fix termios related targets
+
+ * sysdeps/unix/sysv/linux/Makefile: Modified.
+
+2025-06-18 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: ba32fd7d0479bd566db63e43ab1050ad20ca7a29
+ malloc: Cleanup _mid_memalign
+
+ * malloc/malloc.c: Modified.
+ [IS_IN (libc)](_mid_memalign): Modified.
+ [IS_IN (libc)](__libc_memalign): Modified function.
+ [IS_IN (libc)](aligned_alloc): Modified function.
+ [IS_IN (libc)](_mid_memalign): Modified function.
+ [IS_IN (libc)](__libc_valloc): Modified function.
+ [IS_IN (libc)](__libc_pvalloc): Modified function.
+ [IS_IN (libc)](__posix_memalign): Modified function.
+
+2025-06-18 Yury Khrustalev <yury.khrustalev@arm.com>
+
+ COMMIT: c0f0db2d59e0908057205b22b21dd9d626d780c1
+ aarch64: simplify calls to __libc_arm_za_disable in assembly
+
+ * sysdeps/aarch64/__longjmp.S: Modified.
+ * sysdeps/aarch64/setjmp.S: Modified.
+ * sysdeps/unix/sysv/linux/aarch64/setcontext.S: Modified.
+
+2025-06-18 Yury Khrustalev <yury.khrustalev@arm.com>
+
+ COMMIT: eeedfc2f74463a06e8127dde42531913652371f8
+ aarch64: GCS: use internal struct in __alloc_gcs
+
+ * sysdeps/aarch64/__alloc_gcs.c: Modified.
+ (__alloc_gcs): Modified function.
+ (aarch64-gcs.h): Include file.
+ * sysdeps/aarch64/aarch64-gcs.h: Modified.
+ (__alloc_gcs): Modified.
+ (gcs_record): New.
+ (has_gcs): New function.
+ * sysdeps/unix/sysv/linux/aarch64/makecontext.c: Modified.
+ (alloc_makecontext_gcs): Modified function.
+
+2025-06-18 Andreas Schwab <schwab@suse.de>
+
+ COMMIT: eae5bb0f60205e6f709803cc6bba749daf5ece72
+ powerpc: Remove assembler workarounds
+
+ * sysdeps/powerpc/powerpc64/le/power10/memcmp.S: Modified.
+ * sysdeps/powerpc/powerpc64/le/power10/strlen.S: Modified.
+ * sysdeps/powerpc/powerpc64/le/power9/strcmp.S: Modified.
+ * sysdeps/powerpc/powerpc64/le/power9/strncmp.S: Modified.
+
+2025-06-17 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: c274c3c07f216791d2065e653e418eb36c6dcaca
+ malloc: Fix tests-malloc-largetcache tests
+
+ * Rules: Modified.
+
+2025-06-17 Jeremy Harris <jgh@exim.org>
+
+ COMMIT: 9f680bfe9b5c8657baf1fd0fb99e968d0b03e92e
+ Add TCPI_OPT_USEC_TS from Linux 6.14 and TCPI_OPT_TFO_CHILD from 6.15 to netinet/tcp.h.
+
+ * sysdeps/gnu/netinet/tcp.h: Modified.
+ [__USE_MISC](TCPI_OPT_USEC_TS): New.
+ [__USE_MISC](TCPI_OPT_TFO_CHILD): New.
+
+2025-06-17 H. Peter Anvin (Intel) <hpa@zytor.com>
+
+ COMMIT: 964cf50bef075f4cb7b625513407ca9d29faff3e
+ linux/termios: regression test for termios speed functions
+
+ * sysdeps/unix/sysv/linux/Makefile: Modified.
+ * sysdeps/unix/sysv/linux/tst-termios-linux.c: New file.
+
+2025-06-17 H. Peter Anvin <hpa@zytor.com>
+
+ COMMIT: c66801f36135a7b031ca37e25a35e98255b20def
+ include/array_length.h: add array_foreach[_const] macros
+
+ * include/array_length.h: Modified.
+ (array_foreach): New.
+ (array_foreach_const): New.
+
+2025-06-17 H. Peter Anvin (Intel) <hpa@zytor.com>
+
+ COMMIT: be413adedfca146a6fb8cabe3df1244a70f106f3
+ termios: unify the naming of the termios speed fields
+
+ * bits/termios.h: Modified.
+ (termios): Modified.
+ * sysdeps/unix/sysv/linux/alpha/bits/termios-struct.h: Modified.
+ (termios): Modified.
+ * sysdeps/unix/sysv/linux/bits/termios-struct.h: Modified.
+ (termios): Modified.
+
+2025-06-17 H. Peter Anvin (Intel) <hpa@zytor.com>
+
+ COMMIT: 5f138519ebdf88e1fc5395d65df0b780dd07829a
+ termios: add new baud_t interface, defined to be explicitly numeric
+
+ * include/termios.h: Modified.
+ [! _ISOMAC](libc_hidden_proto): Modified.
+ [! _ISOMAC](libc_hidden_proto): Modified.
+ [! _ISOMAC](__cfgetospeed): New function.
+ [! _ISOMAC](__cfgetispeed): New function.
+ [! _ISOMAC](__cfsetospeed): New function.
+ [! _ISOMAC](__cfsetispeed): New function.
+ [! _ISOMAC](__cfsetspeed): New function.
+ [! _ISOMAC](__cfgetobaud): New function.
+ [! _ISOMAC](__cfgetibaud): New function.
+ [! _ISOMAC](__cfsetobaud): New function.
+ [! _ISOMAC](__cfsetibaud): New function.
+ [! _ISOMAC](__cfsetbaud): New function.
+ [! _ISOMAC](libc_hidden_proto): New.
+ [! _ISOMAC](libc_hidden_proto): New.
+ [! _ISOMAC](libc_hidden_proto): New.
+ [! _ISOMAC](libc_hidden_proto): New.
+ [! _ISOMAC](libc_hidden_proto): New.
+ [! _ISOMAC](libc_hidden_proto): New.
+ [! _ISOMAC](libc_hidden_proto): New.
+ [! _ISOMAC](libc_hidden_proto): New.
+ * manual/terminal.texi: Modified.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/aarch64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/alpha/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arc/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arm/be/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arm/le/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/cfsetspeed.c: Modified.
+ (libc_hidden_def): New.
+ * sysdeps/unix/sysv/linux/csky/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/hppa/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/i386/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/loongarch/lp64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/microblaze/be/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/microblaze/le/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/or1k/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sh/be/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sh/le/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/speed.c: Modified.
+ (libc_hidden_def): New.
+ (libc_hidden_def): New.
+ (libc_hidden_def): New.
+ (libc_hidden_def): New.
+ * sysdeps/unix/sysv/linux/x86_64/64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist: Modified.
+ * termios/Makefile: Modified.
+ * termios/Versions: Modified.
+ * termios/baud.c: New file.
+ * termios/cfsetbaud.c: New file.
+ * termios/cfsetspeed.c: Modified.
+ (cfsetspeed): Remove function.
+ (__cfsetspeed): New function.
+ (libc_hidden_def): New.
+ (weak_alias): New.
+ * termios/speed.c: Modified.
+ (cfgetospeed): Remove function.
+ (cfgetispeed): Remove function.
+ (cfsetospeed): Remove function.
+ (libc_hidden_def): Modified.
+ (cfsetispeed): Remove function.
+ (libc_hidden_def): Modified.
+ (__cfgetospeed): New function.
+ (weak_alias): New.
+ (__cfgetispeed): New function.
+ (weak_alias): New.
+ (__cfsetospeed): New function.
+ (libc_hidden_def): New.
+ (weak_alias): New.
+ (__cfsetispeed): New function.
+ (libc_hidden_def): New.
+ (weak_alias): New.
+ * termios/termios.h: Modified.
+ [__USE_MISC](baud_t): New.
+ [__USE_MISC](cfgetobaud): New function.
+ [__USE_MISC](cfgetibaud): New function.
+ [__USE_MISC](cfsetobaud): New function.
+ [__USE_MISC](cfsetibaud): New function.
+ [__USE_MISC](cfsetbaud): New function.
+
+2025-06-17 H. Peter Anvin (Intel) <hpa@zytor.com>
+
+ COMMIT: 98aeca349ae081d745978d7fe9bc5762137f8ece
+ manual: document all the termios Bxxx constants in the manual
+
+ * manual/terminal.texi: Modified.
+
+2025-06-17 H. Peter Anvin (Intel) <hpa@zytor.com>
+
+ COMMIT: ad37ecd5791dbb47844b58574f32ab1ef2739275
+ termios: merge the termios baud definitions
+
+ * sysdeps/unix/sysv/linux/bits/termios-baud.h: Move to...
+ * bits/termios-baud.h: ... here.
+ (B0): Modified.
+ (B50): Modified.
+ (B75): Modified.
+ (B110): Modified.
+ (B134): Modified.
+ (B150): Modified.
+ (B200): Modified.
+ (B300): Modified.
+ (B600): Modified.
+ (B1200): Modified.
+ (B1800): Modified.
+ (B2400): Modified.
+ (B4800): Modified.
+ (B7200): Modified.
+ (B9600): Modified.
+ (B14400): Modified.
+ (B19200): Modified.
+ (B28800): Modified.
+ (B33600): Modified.
+ (B38400): Modified.
+ (B57600): Modified.
+ (B76800): Modified.
+ (B115200): Modified.
+ (B153600): Modified.
+ (B230400): Modified.
+ (B307200): Modified.
+ (B460800): Modified.
+ (B500000): Modified.
+ (B576000): Modified.
+ (B614400): Modified.
+ (B921600): Modified.
+ [__USE_MISC](EXTA): New.
+ [__USE_MISC](EXTB): New.
+ (B5000000): New.
+ (B10000000): New.
+ * bits/termios.h: Modified.
+ (termios): Modified.
+ (bits/termios-baud.h): Include file.
+ * sysdeps/unix/sysv/linux/Makefile: Modified.
+ * sysdeps/unix/sysv/linux/bits/termios.h: Modified.
+ [__USE_MISC](EXTA): Remove.
+ [__USE_MISC](EXTB): Remove.
+ [__USE_MISC](__B0): New.
+ [__USE_MISC](__B50): New.
+ [__USE_MISC](__B75): New.
+ [__USE_MISC](__B110): New.
+ [__USE_MISC](__B134): New.
+ [__USE_MISC](__B150): New.
+ [__USE_MISC](__B200): New.
+ [__USE_MISC](__B300): New.
+ [__USE_MISC](__B600): New.
+ [__USE_MISC](__B1200): New.
+ [__USE_MISC](__B1800): New.
+ [__USE_MISC](__B2400): New.
+ [__USE_MISC](__B4800): New.
+ [__USE_MISC](__B9600): New.
+ [__USE_MISC](__B19200): New.
+ [__USE_MISC](__B38400): New.
+ [__USE_MISC](bits/termios-cbaud.h): Include file.
+ [__USE_MISC](__EXTA): New.
+ [__USE_MISC](__EXTB): New.
+ (__B0): Remove.
+ (__B50): Remove.
+ (__B75): Remove.
+ (__B110): Remove.
+ (__B134): Remove.
+ (__B150): Remove.
+ (__B200): Remove.
+ (__B300): Remove.
+ (__B600): Remove.
+ (__B1200): Remove.
+ (__B1800): Remove.
+ (__B2400): Remove.
+ (__B4800): Remove.
+ (__B9600): Remove.
+ (__B19200): Remove.
+ (__B38400): Remove.
+ (bits/termios-cbaud.h): Remove include.
+ * termios/Makefile: Modified.
+
+2025-06-17 H. Peter Anvin (Intel) <hpa@zytor.com>
+
+ COMMIT: bbbaf50b2a340d6913b8ad8a840dd2d66874c62b
+ hurd+generic/termios: make speed_t an unsigned int
+
+ * bits/termios.h: Modified.
+ (speed_t): Modified.
+
+2025-06-17 H. Peter Anvin (Intel) <hpa@zytor.com>
+
+ COMMIT: de730d3d2d9131398e56f69228d46d895f126a60
+ termios: change the generic cfsetspeed() to support arbitrary speeds
+
+ * termios/cfsetspeed.c: Modified.
+ (speed_struct): Remove.
+ (speeds): Remove.
+ (cfsetspeed): Modified function.
+
+2025-06-17 H. Peter Anvin (Intel) <hpa@zytor.com>
+
+ COMMIT: bff11c2fa945814101c08c66f8c55212ae788075
+ hurd/termios: remove USE_OLD_TTY
+
+ * sysdeps/mach/hurd/bits/ioctls.h: Modified.
+ [__USE_MISC][! USE_OLD_TTY](OTIOCGETD): Remove.
+ [__USE_MISC][! USE_OLD_TTY](OTIOCSETD): Remove.
+ [__USE_MISC][USE_OLD_TTY](TIOCGETD): Remove.
+ [__USE_MISC][USE_OLD_TTY](TIOCSETD): Remove.
+ [__USE_MISC][USE_OLD_TTY](B0): Remove.
+ [__USE_MISC][USE_OLD_TTY](B50): Remove.
+ [__USE_MISC][USE_OLD_TTY](B75): Remove.
+ [__USE_MISC][USE_OLD_TTY](B110): Remove.
+ [__USE_MISC][USE_OLD_TTY](B134): Remove.
+ [__USE_MISC][USE_OLD_TTY](B150): Remove.
+ [__USE_MISC][USE_OLD_TTY](B200): Remove.
+ [__USE_MISC][USE_OLD_TTY](B300): Remove.
+ [__USE_MISC][USE_OLD_TTY](B600): Remove.
+ [__USE_MISC][USE_OLD_TTY](B1200): Remove.
+ [__USE_MISC][USE_OLD_TTY](B1800): Remove.
+ [__USE_MISC][USE_OLD_TTY](B2400): Remove.
+ [__USE_MISC][USE_OLD_TTY](B4800): Remove.
+ [__USE_MISC][USE_OLD_TTY](B9600): Remove.
+ [__USE_MISC][USE_OLD_TTY](EXTA): Remove.
+ [__USE_MISC][USE_OLD_TTY](EXTB): Remove.
+ [__USE_MISC](OTIOCGETD): New.
+ [__USE_MISC](OTIOCSETD): New.
+ * termios/sys/ttychars.h: Modified.
+ [__USE_OLD_TTY](sys/ttydefaults.h): Remove.
+
+2025-06-17 H. Peter Anvin (Intel) <hpa@zytor.com>
+
+ COMMIT: 5cf101a85aae0d703cdd8ed7b25fe288e41fdacb
+ linux: implement arbitrary and split speeds in termios
+
+ * NEWS: Modified.
+ * sysdeps/unix/sysv/linux/Versions: Modified.
+ * sysdeps/unix/sysv/linux/aarch64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/alpha/bits/termios-c_cflag.h: Modified.
+ [__USE_MISC](CMSPAR): New.
+ [__USE_MISC](CRTSCTS): New.
+ * sysdeps/unix/sysv/linux/alpha/bits/termios-baud.h: Move to...
+ * sysdeps/unix/sysv/linux/alpha/bits/termios-cbaud.h: ... here.
+ [! _TERMIOS_H](Never include <bits/termios-baud.h> directly; use <termios.h> instead."): Remove.
+ [! _TERMIOS_H](Never include <bits/termios-cbaud.h> directly; use <termios.h> instead."): New preprocessor message.
+ [__USE_MISC](CBAUD): Modified.
+ [__USE_MISC](CBAUDEX): Modified.
+ [__USE_MISC](CMSPAR): Remove.
+ [__USE_MISC](CRTSCTS): Remove.
+ [__USE_MISC](CIBAUD): New.
+ [__USE_MISC](IBSHIFT): New.
+ (B57600): Remove.
+ (B115200): Remove.
+ (B230400): Remove.
+ (B460800): Remove.
+ (B500000): Remove.
+ (B576000): Remove.
+ (B921600): Remove.
+ (B1000000): Remove.
+ (B1152000): Remove.
+ (B1500000): Remove.
+ (B2000000): Remove.
+ (B2500000): Remove.
+ (B3000000): Remove.
+ (B3500000): Remove.
+ (B4000000): Remove.
+ (__MAX_BAUD): Remove.
+ (__B57600): New.
+ (__B115200): New.
+ (__B230400): New.
+ (__B460800): New.
+ (__B500000): New.
+ (__B576000): New.
+ (__B921600): New.
+ (__B1000000): New.
+ (__B1152000): New.
+ (__B1500000): New.
+ (__B2000000): New.
+ (__B2500000): New.
+ (__B3000000): New.
+ (__B3500000): New.
+ (__B4000000): New.
+ (__BOTHER): New.
+ * sysdeps/unix/sysv/linux/alpha/kernel-features.h: Modified.
+ [__LINUX_KERNEL_VERSION < 0x041400](__ASSUME_TERMIOS2): New.
+ * sysdeps/unix/sysv/linux/alpha/kernel_termios.h: Delete file.
+ * sysdeps/unix/sysv/linux/alpha/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/bits/termios-struct.h: Move to...
+ * sysdeps/unix/sysv/linux/alpha/termios_arch.h: ... here.
+ [! _TERMIOS_H](Never include <bits/termios-struct.h> directly; use <termios.h> instead."): Remove.
+ (NCCS): Remove.
+ (termios): Remove.
+ [! TERMIOS_INTERNALS_H](<termios_arch.h> should only be included from <termios_internals.h>"): New.
+ (_TERMIOS2_NCCS): New.
+ (_HAVE_TERMIOS2_C_CC_BEFORE_C_LINE): New.
+ (_HAVE_STRUCT_OLD_TERMIOS): New.
+ * sysdeps/unix/sysv/linux/arc/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arm/be/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arm/le/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/bits/termios-baud.h: Modified.
+ [__USE_MISC](CBAUD): Remove.
+ [__USE_MISC](CBAUDEX): Remove.
+ [__USE_MISC](CIBAUD): Remove.
+ [__USE_MISC](CMSPAR): Remove.
+ [__USE_MISC](CRTSCTS): Remove.
+ (B57600): Modified.
+ (B115200): Modified.
+ (B230400): Modified.
+ (B460800): Modified.
+ (B500000): Modified.
+ (B576000): Modified.
+ (B921600): Modified.
+ (B1000000): Modified.
+ (B1152000): Modified.
+ (B1500000): Modified.
+ (B2000000): Modified.
+ (B2500000): Modified.
+ (B3000000): Modified.
+ (B3500000): Modified.
+ (B4000000): Modified.
+ (__MAX_BAUD): Modified.
+ (B0): New.
+ (B50): New.
+ (B75): New.
+ (B110): New.
+ (B134): New.
+ (B150): New.
+ (B200): New.
+ (B300): New.
+ (B600): New.
+ (B1200): New.
+ (B1800): New.
+ (B2400): New.
+ (B4800): New.
+ (B7200): New.
+ (B9600): New.
+ (B14400): New.
+ (B19200): New.
+ (B28800): New.
+ (B33600): New.
+ (B38400): New.
+ (B76800): New.
+ (B153600): New.
+ (B307200): New.
+ (B614400): New.
+ * sysdeps/unix/sysv/linux/bits/termios-c_cflag.h: Modified.
+ [__USE_MISC](CMSPAR): New.
+ [__USE_MISC](CRTSCTS): New.
+ * sysdeps/unix/sysv/linux/bits/termios-cbaud.h: New file.
+ * sysdeps/unix/sysv/linux/bits/termios.h: Modified.
+ [__USE_MISC](EXTA): Modified.
+ [__USE_MISC](EXTB): Modified.
+ [__USE_MISC](BOTHER): New.
+ (bits/termios-struct.h): Remove include.
+ (B0): Remove.
+ (B50): Remove.
+ (B75): Remove.
+ (B110): Remove.
+ (B134): Remove.
+ (B150): Remove.
+ (B200): Remove.
+ (B300): Remove.
+ (B600): Remove.
+ (B1200): Remove.
+ (B1800): Remove.
+ (B2400): Remove.
+ (B4800): Remove.
+ (B9600): Remove.
+ (B19200): Remove.
+ (B38400): Remove.
+ [_TERMIOS_H](bits/termios-struct.h): New.
+ (__B0): New.
+ (__B50): New.
+ (__B75): New.
+ (__B110): New.
+ (__B134): New.
+ (__B150): New.
+ (__B200): New.
+ (__B300): New.
+ (__B600): New.
+ (__B1200): New.
+ (__B1800): New.
+ (__B2400): New.
+ (__B4800): New.
+ (__B9600): New.
+ (__B19200): New.
+ (__B38400): New.
+ (bits/termios-cbaud.h): Include file.
+ * sysdeps/unix/sysv/linux/cfsetspeed.c: New file.
+ * sysdeps/unix/sysv/linux/csky/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/hppa/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/i386/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/isatty.c: New file.
+ * sysdeps/unix/sysv/linux/isatty_nostatus.c: Modified.
+ (sysdep.h): Remove include.
+ (termios.h): Remove include.
+ (kernel_termios.h): Remove include.
+ (sys/ioctl.h): Remove include.
+ (__isatty_nostatus): Modified function.
+ (termios_internals.h): Include file.
+ * sysdeps/unix/sysv/linux/kernel-features.h: Modified.
+ (__ASSUME_TERMIOS2): New.
+ * sysdeps/unix/sysv/linux/loongarch/lp64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/microblaze/be/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/microblaze/le/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/Versions: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/kernel_termios.h: Move to...
+ * sysdeps/unix/sysv/linux/mips/termios_arch.h: ... here.
+ (_KERNEL_TERMIOS_H): Remove.
+ (__KERNEL_NCCS): Remove.
+ (__kernel_termios): Remove.
+ (_HAVE_C_ISPEED): Remove.
+ (_HAVE_C_OSPEED): Remove.
+ (_TERMIOS2_NCCS): New.
+ (_HAVE_TERMIOS2_C_CC_BEFORE_C_LINE): New.
+ (_HAVE_STRUCT_OLD_TERMIOS): New.
+ (OLD_NCCS): New.
+ (old_termios): New.
+ * sysdeps/unix/sysv/linux/old_termios.h: New file.
+ * sysdeps/unix/sysv/linux/or1k/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/bits/termios-c_cflag.h: Modified.
+ [__USE_MISC](CMSPAR): New.
+ [__USE_MISC](CRTSCTS): New.
+ * sysdeps/unix/sysv/linux/powerpc/bits/termios-baud.h: Move to...
+ * sysdeps/unix/sysv/linux/powerpc/bits/termios-cbaud.h: ... here.
+ [! _TERMIOS_H](Never include <bits/termios-baud.h> directly; use <termios.h> instead."): Remove.
+ [! _TERMIOS_H](Never include <bits/termios-cbaud.h> directly; use <termios.h> instead."): New preprocessor message.
+ [__USE_MISC](CBAUD): Modified.
+ [__USE_MISC](CBAUDEX): Modified.
+ [__USE_MISC](CMSPAR): Remove.
+ [__USE_MISC](CRTSCTS): Remove.
+ [__USE_MISC](CIBAUD): New.
+ [__USE_MISC](IBSHIFT): New.
+ (B57600): Remove.
+ (B115200): Remove.
+ (B230400): Remove.
+ (B460800): Remove.
+ (B500000): Remove.
+ (B576000): Remove.
+ (B921600): Remove.
+ (B1000000): Remove.
+ (B1152000): Remove.
+ (B1500000): Remove.
+ (B2000000): Remove.
+ (B2500000): Remove.
+ (B3000000): Remove.
+ (B3500000): Remove.
+ (B4000000): Remove.
+ (__MAX_BAUD): Remove.
+ (__B57600): New.
+ (__B115200): New.
+ (__B230400): New.
+ (__B460800): New.
+ (__B500000): New.
+ (__B576000): New.
+ (__B921600): New.
+ (__B1000000): New.
+ (__B1152000): New.
+ (__B1500000): New.
+ (__B2000000): New.
+ (__B2500000): New.
+ (__B3000000): New.
+ (__B3500000): New.
+ (__B4000000): New.
+ (__BOTHER): New.
+ * sysdeps/unix/sysv/linux/powerpc/kernel_termios.h: Delete file.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sparc/bits/termios-struct.h: Move to...
+ * sysdeps/unix/sysv/linux/powerpc/termios_arch.h: ... here.
+ [! _TERMIOS_H](Never include <bits/termios-struct.h> directly; use <termios.h> instead."): Remove.
+ (NCCS): Remove.
+ (termios): Remove.
+ [! TERMIOS_INTERNALS_H](<termios_arch.h> should only be included from <termios_internals.h>"): New.
+ (_TERMIOS2_NCCS): New.
+ (_HAVE_TERMIOS2_C_CC_BEFORE_C_LINE): New.
+ (_HAVE_STRUCT_OLD_TERMIOS): New.
+ * sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sh/be/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sh/le/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sparc/Versions: Modified.
+ * sysdeps/unix/sysv/linux/sparc/bits/termios-baud.h: Move to...
+ * sysdeps/unix/sysv/linux/sparc/bits/termios-cbaud.h: ... here.
+ [! _TERMIOS_H](Never include <bits/termios-baud.h> directly; use <termios.h> instead."): Remove.
+ [! _TERMIOS_H](Never include <bits/termios-cbaud.h> directly; use <termios.h> instead."): New preprocessor message.
+ [__USE_MISC](CMSPAR): Remove.
+ [__USE_MISC](CRTSCTS): Remove.
+ [__USE_MISC](IBSHIFT): New.
+ (B57600): Remove.
+ (B115200): Remove.
+ (B230400): Remove.
+ (B460800): Remove.
+ (B76800): Remove.
+ (B153600): Remove.
+ (B307200): Remove.
+ (B614400): Remove.
+ (B921600): Remove.
+ (B500000): Remove.
+ (B576000): Remove.
+ (B1000000): Remove.
+ (B1152000): Remove.
+ (B1500000): Remove.
+ (B2000000): Remove.
+ (__MAX_BAUD): Remove.
+ (__B57600): New.
+ (__B115200): New.
+ (__B230400): New.
+ (__B460800): New.
+ (__B76800): New.
+ (__B153600): New.
+ (__B307200): New.
+ (__B614400): New.
+ (__B921600): New.
+ (__B500000): New.
+ (__B576000): New.
+ (__B1000000): New.
+ (__B1152000): New.
+ (__B1500000): New.
+ (__B2000000): New.
+ (__BOTHER): New.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sparc/kernel_termios.h: Move to...
+ * sysdeps/unix/sysv/linux/sparc/termios_arch.h: ... here.
+ (_KERNEL_TERMIOS_H): Remove.
+ (termios.h): Remove include.
+ (__KERNEL_NCCS): Remove.
+ (__kernel_termios): Remove.
+ (_HAVE_C_ISPEED): Remove.
+ (_HAVE_C_OSPEED): Remove.
+ (_TERMIOS2_NCCS): New.
+ (_HAVE_TERMIOS2_C_CC_BEFORE_C_LINE): New.
+ (_HAVE_STRUCT_OLD_TERMIOS): New.
+ (OLD_NCCS): New.
+ (old_termios): New.
+ * sysdeps/unix/sysv/linux/speed.c: Modified.
+ (stddef.h): Remove include.
+ (errno.h): Remove include.
+ (termios.h): Remove include.
+ (sysdep.h): Remove include.
+ (IBAUD0): Remove.
+ (cfgetospeed): Remove function.
+ (cfgetispeed): Remove function.
+ (cfsetospeed): Remove function.
+ (libc_hidden_def): Remove.
+ (cfsetispeed): Remove function.
+ (libc_hidden_def): Remove.
+ [!(CBAUD & 1)](The CBAUD field should start at bit 0"): New.
+ [CBAUDEX & (CBAUDEX-1)](CBAUDEX should either be 0 or a single bit"): New.
+ [CBAUDEX & ~CBAUD](CBAUD should include the CBAUDEX bit"): New.
+ [CIBAUD != (CBAUD << IBSHIFT)](CIBAUD should == CBAUD << IBSHIFT"): New.
+ [_TERMIOS_OLD_COMPAT](__old_cfgetospeed): New.
+ [_TERMIOS_OLD_COMPAT](compat_symbol): New.
+ [_TERMIOS_OLD_COMPAT](__old_cfgetispeed): New.
+ [_TERMIOS_OLD_COMPAT](compat_symbol): New.
+ [_TERMIOS_OLD_COMPAT](__old_cfsetospeed): New.
+ [_TERMIOS_OLD_COMPAT](compat_symbol): New.
+ [_TERMIOS_OLD_COMPAT](__old_cfsetispeed): New.
+ [_TERMIOS_OLD_COMPAT](compat_symbol): New.
+ (termios_internals.h): Include file.
+ (LOWCBAUD): New.
+ (_cbix): New.
+ (CBAUDMASK): New.
+ (___cbaud_to_speed): New function.
+ (___speed_to_cbaud): New function.
+ (___termios2_canonicalize_speeds): New function.
+ (__cfgetospeed): New function.
+ (versioned_symbol): New function.
+ (__cfgetispeed): New function.
+ (versioned_symbol): New function.
+ (__cfsetospeed): New function.
+ (versioned_symbol): New function.
+ (__cfsetispeed): New function.
+ (versioned_symbol): New function.
+ * sysdeps/unix/sysv/linux/tcgetattr.c: Modified.
+ (errno.h): Remove include.
+ (string.h): Remove include.
+ (termios.h): Remove include.
+ (unistd.h): Remove include.
+ (sys/ioctl.h): Remove include.
+ (sys/types.h): Remove include.
+ (sysdep.h): Remove include.
+ (kernel_termios.h): Remove include.
+ (__tcgetattr): Modified function.
+ (weak_alias): Remove.
+ [!(_TERMIOS_OLD_COMPAT && _HAVE_STRUCT_OLD_TERMIOS)](weak_alias): New.
+ [_TERMIOS_OLD_COMPAT && _HAVE_STRUCT_OLD_TERMIOS](versioned_symbol): New.
+ [_TERMIOS_OLD_COMPAT && _HAVE_STRUCT_OLD_TERMIOS](__old_tcgetattr): New.
+ [_TERMIOS_OLD_COMPAT && _HAVE_STRUCT_OLD_TERMIOS](compat_symbol): New.
+ (termios_internals.h): Include file.
+ * sysdeps/unix/sysv/linux/tcsetattr.c: Modified.
+ (errno.h): Remove include.
+ (string.h): Remove include.
+ (termios.h): Remove include.
+ (sys/ioctl.h): Remove include.
+ (sys/types.h): Remove include.
+ (sysdep.h): Remove include.
+ (kernel_termios.h): Remove include.
+ (IBAUD0): Remove.
+ (__tcsetattr): Modified function.
+ (weak_alias): Remove.
+ [!(_HAVE_STRUCT_OLD_TERMIOS && _TERMIOS_OLD_COMPAT)](weak_alias): New.
+ [_HAVE_STRUCT_OLD_TERMIOS && _TERMIOS_OLD_COMPAT](versioned_symbol): New.
+ [_HAVE_STRUCT_OLD_TERMIOS && _TERMIOS_OLD_COMPAT](__old_tcsetattr): New.
+ [_HAVE_STRUCT_OLD_TERMIOS && _TERMIOS_OLD_COMPAT](compat_symbol): New.
+ (termios_internals.h): Include file.
+ (static_assert_equal): New.
+ * sysdeps/unix/sysv/linux/mips/kernel_termios.h: Move to...
+ * sysdeps/unix/sysv/linux/termios_arch.h: ... here.
+ (_KERNEL_TERMIOS_H): Remove.
+ (__KERNEL_NCCS): Remove.
+ (__kernel_termios): Remove.
+ (_HAVE_C_ISPEED): Remove.
+ (_HAVE_C_OSPEED): Remove.
+ (_TERMIOS2_NCCS): New.
+ (_HAVE_TERMIOS2_C_CC_BEFORE_C_LINE): New.
+ (_HAVE_STRUCT_OLD_TERMIOS): New.
+ * sysdeps/unix/sysv/linux/termios_internals.h: New file.
+ * sysdeps/unix/sysv/linux/x86_64/64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist: Modified.
+
+2025-06-17 H. Peter Anvin (Intel) <hpa@zytor.com>
+
+ COMMIT: 5f54d8bc48983bed844c02e1fe614ad223e78838
+ linux/termios/powerpc: deal with powerpc-unique ioctl emulation
+
+ * sysdeps/unix/sysv/linux/powerpc/bits/ioctls.h: New file.
+
+2025-06-17 H. Peter Anvin (Intel) <hpa@zytor.com>
+
+ COMMIT: 091256f0d1be5efebe5fede0d710e0de7375124d
+ linux/ioctls: use <linux/sockios.h> for sockios ioctls
+
+ * sysdeps/unix/sysv/linux/bits/ioctls.h: Modified.
+ (SIOCADDRT): Remove.
+ (SIOCDELRT): Remove.
+ (SIOCRTMSG): Remove.
+ (SIOCGIFNAME): Remove.
+ (SIOCSIFLINK): Remove.
+ (SIOCGIFCONF): Remove.
+ (SIOCGIFFLAGS): Remove.
+ (SIOCSIFFLAGS): Remove.
+ (SIOCGIFADDR): Remove.
+ (SIOCSIFADDR): Remove.
+ (SIOCGIFDSTADDR): Remove.
+ (SIOCSIFDSTADDR): Remove.
+ (SIOCGIFBRDADDR): Remove.
+ (SIOCSIFBRDADDR): Remove.
+ (SIOCGIFNETMASK): Remove.
+ (SIOCSIFNETMASK): Remove.
+ (SIOCGIFMETRIC): Remove.
+ (SIOCSIFMETRIC): Remove.
+ (SIOCGIFMEM): Remove.
+ (SIOCSIFMEM): Remove.
+ (SIOCGIFMTU): Remove.
+ (SIOCSIFMTU): Remove.
+ (SIOCSIFNAME): Remove.
+ (SIOCSIFHWADDR): Remove.
+ (SIOCGIFENCAP): Remove.
+ (SIOCSIFENCAP): Remove.
+ (SIOCGIFHWADDR): Remove.
+ (SIOCGIFSLAVE): Remove.
+ (SIOCSIFSLAVE): Remove.
+ (SIOCADDMULTI): Remove.
+ (SIOCDELMULTI): Remove.
+ (SIOCGIFINDEX): Remove.
+ (SIOGIFINDEX): Remove.
+ (SIOCSIFPFLAGS): Remove.
+ (SIOCGIFPFLAGS): Remove.
+ (SIOCDIFADDR): Remove.
+ (SIOCSIFHWBROADCAST): Remove.
+ (SIOCGIFCOUNT): Remove.
+ (SIOCGIFBR): Remove.
+ (SIOCSIFBR): Remove.
+ (SIOCGIFTXQLEN): Remove.
+ (SIOCSIFTXQLEN): Remove.
+ (SIOCDARP): Remove.
+ (SIOCGARP): Remove.
+ (SIOCSARP): Remove.
+ (SIOCDRARP): Remove.
+ (SIOCGRARP): Remove.
+ (SIOCSRARP): Remove.
+ (SIOCGIFMAP): Remove.
+ (SIOCSIFMAP): Remove.
+ (SIOCADDDLCI): Remove.
+ (SIOCDELDLCI): Remove.
+ (SIOCDEVPRIVATE): Remove.
+ (SIOCPROTOPRIVATE): Remove.
+ (linux/sockios.h): Include file.
+
+2025-06-17 H. Peter Anvin (Intel) <hpa@zytor.com>
+
+ COMMIT: c4929eecf7104f266f546ec742ca38ceee0e99c5
+ io: replace local_isatty() with a proper function __isatty_nostatus()
+
+ * include/unistd.h: Modified.
+ [! _ISOMAC](__isatty_nostatus): New function.
+ * io/Makefile: Modified.
+ * io/isatty_nostatus.c: New file.
+ * libio/filedoalloc.c: Modified.
+ (local_isatty): Remove function.
+ (_IO_file_doallocate): Modified function.
+ * sysdeps/unix/sysv/linux/isatty_nostatus.c: New file.
+
+2025-06-17 H. Peter Anvin (Intel) <hpa@zytor.com>
+
+ COMMIT: edf7328db204f243c1bfde90edb11f99c7a13e14
+ termios: make __tcsetattr() the internal interface
+
+ * include/termios.h: Modified.
+ [! _ISOMAC](libc_hidden_proto): Modified.
+ * login/openpty.c: Modified.
+ (__openpty): Modified function.
+ * misc/getpass.c: Modified.
+ (getpass): Modified function.
+ * sysdeps/unix/bsd/tcsetattr.c: Modified.
+ (tcsetattr): Remove function.
+ (libc_hidden_def): Modified.
+ (__tcsetattr): New function.
+ (weak_alias): New.
+ * sysdeps/unix/sysv/linux/tcsetattr.c: Modified.
+ (libc_hidden_def): Modified.
+ * termios/tcsetattr.c: Modified.
+ (tcsetattr): Remove function.
+ (libc_hidden_def): Modified.
+ (__tcsetattr): New function.
+ (weak_alias): New.
+
+2025-06-17 Carlos O'Donell <carlos@redhat.com>
+
+ COMMIT: 11649794748f96f6f71446062b4c45c0285591b3
+ Update advisory GLIBC-SA-2025-0003 and GLIBC-SA-2025-0004
+
+ * advisories/GLIBC-SA-2025-0003: Modified.
+ * advisories/GLIBC-SA-2025-0004: Modified.
+
+2025-06-17 H.J. Lu <hjl.tools@gmail.com>
+
+ COMMIT: d1b27eeda3d92f33314e93537437cab11ddf4777
+ malloc: Sort tests-exclude-largetcache in Makefile
+
+ * malloc/Makefile: Modified.
+
+2025-06-16 Carlos O'Donell <carlos@redhat.com>
+
+ COMMIT: 15808c77b35319e67ee0dc8f984a9a1a434701bc
+ ppc64le: Revert "powerpc: Optimized strcmp for power10" (CVE-2025-5702)
+
+ * sysdeps/powerpc/powerpc64/le/power10/strcmp.S: Delete file.
+ * sysdeps/powerpc/powerpc64/multiarch/Makefile: Modified.
+ * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c: Modified.
+ (__libc_ifunc_impl_list): Modified function.
+ * sysdeps/powerpc/powerpc64/multiarch/strcmp-power10.S: Delete file.
+ * sysdeps/powerpc/powerpc64/multiarch/strcmp.c: Modified.
+ [__LITTLE_ENDIAN__](__strcmp_power10): Remove.
+ [__LITTLE_ENDIAN__](libc_ifunc_redirected): Modified.
+
+2025-06-16 Carlos O'Donell <carlos@redhat.com>
+
+ COMMIT: a7877bb6685300f159fa095c9f50b22b112cddb8
+ ppc64le: Revert "powerpc : Add optimized memchr for POWER10" (Bug 33059)
+
+ * sysdeps/powerpc/powerpc64/le/power10/memchr.S: Delete file.
+ * sysdeps/powerpc/powerpc64/multiarch/Makefile: Modified.
+ * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c: Modified.
+ (__libc_ifunc_impl_list): Modified function.
+ * sysdeps/powerpc/powerpc64/multiarch/memchr-power10.S: Delete file.
+ * sysdeps/powerpc/powerpc64/multiarch/memchr.c: Modified.
+ [IS_IN (libc)][! __LITTLE_ENDIAN__](libc_ifunc): Remove.
+ [IS_IN (libc)][__LITTLE_ENDIAN__](__memchr_power10): Remove.
+ [IS_IN (libc)][__LITTLE_ENDIAN__](libc_ifunc): Remove.
+ [IS_IN (libc)](libc_ifunc): New function.
+ [IS_IN (libc)](weak_alias): New.
+ [IS_IN (libc)](libc_hidden_builtin_def): New.
+
+2025-06-16 Carlos O'Donell <carlos@redhat.com>
+
+ COMMIT: c22de63588df7a8a0edceea9bb02534064c9d201
+ ppc64le: Revert "powerpc: Fix performance issues of strcmp power10" (CVE-2025-5702)
+
+ * sysdeps/powerpc/powerpc64/le/power10/strcmp.S: Modified.
+
+2025-06-16 Carlos O'Donell <carlos@redhat.com>
+
+ COMMIT: 63c60101ce7c5eac42be90f698ba02099b41b965
+ ppc64le: Revert "powerpc: Optimized strncmp for power10" (CVE-2025-5745)
+
+ * sysdeps/powerpc/powerpc64/le/power10/strncmp.S: Delete file.
+ * sysdeps/powerpc/powerpc64/multiarch/Makefile: Modified.
+ * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c: Modified.
+ (__libc_ifunc_impl_list): Modified function.
+ * sysdeps/powerpc/powerpc64/multiarch/strncmp-power10.S: Delete file.
+ * sysdeps/powerpc/powerpc64/multiarch/strncmp.c: Modified.
+ [__LITTLE_ENDIAN__](__strncmp_power10): Remove.
+ [__LITTLE_ENDIAN__](libc_ifunc_redirected): Modified.
+
+2025-06-16 Cupertino Miranda <cupertino.miranda@oracle.com>
+
+ COMMIT: cde5caa4bb21d5c474b9e4762cc847bcbc70e481
+ malloc: add testing for large tcache support
+
+ * Rules: Modified.
+ * malloc/Makefile: Modified.
+
+2025-06-16 Cupertino Miranda <cupertino.miranda@oracle.com>
+
+ COMMIT: cbfd7988107b27b9ff1d0b57fa2c8f13a932e508
+ malloc: add tcache support for large chunk caching
+
+ * malloc/malloc.c: Modified.
+ [! USE_TCACHE](MAYBE_INIT_TCACHE): Remove.
+ [IS_IN (libc)](__libc_malloc2): Modified function.
+ [IS_IN (libc)](__libc_malloc): Modified function.
+ [IS_IN (libc)](__libc_free): Modified function.
+ [IS_IN (libc)](_mid_memalign): Modified function.
+ [IS_IN (libc)](__libc_calloc2): Modified function.
+ [IS_IN (libc)](__libc_calloc): Modified function.
+ [IS_IN (libc)](__libc_malloc2): New function.
+ [USE_TCACHE](TCACHE_MAX_BINS): Modified.
+ [USE_TCACHE](MAX_TCACHE_SIZE): Remove.
+ [USE_TCACHE](tcache_put): Modified function.
+ [USE_TCACHE](tcache_get_n): Modified function.
+ [USE_TCACHE](tcache_get): Modified function.
+ [USE_TCACHE](tcache_next): Remove function.
+ [USE_TCACHE](tcache_available): Remove function.
+ [USE_TCACHE](void): Modified.
+ [USE_TCACHE](void): Modified.
+ [USE_TCACHE](void): Modified.
+ [USE_TCACHE](tcache_init): Modified function.
+ [USE_TCACHE](MAYBE_INIT_TCACHE): Remove.
+ [USE_TCACHE](do_set_tcache_max): Modified function.
+ [USE_TCACHE](void): Modified.
+ [USE_TCACHE](TCACHE_SMALL_BINS): New.
+ [USE_TCACHE](TCACHE_LARGE_BINS): New.
+ [USE_TCACHE](MAX_TCACHE_SMALL_SIZE): New.
+ [USE_TCACHE](large_csize2tidx): New function.
+ [USE_TCACHE](tcache_put_n): New function.
+ [USE_TCACHE](tcache_location_large): New function.
+ [USE_TCACHE](tcache_put_large): New function.
+ [USE_TCACHE](tcache_get_large): New function.
+ [USE_TCACHE](tcache_init): New function.
+ [USE_TCACHE](tcache_get_align): New function.
+ [USE_TCACHE](void): New.
+ [USE_TCACHE](tcache_malloc_init): New function.
+ [USE_TCACHE](void): New.
+ (malloc_par): Modified.
+ (_int_malloc): Modified function.
+
+2025-06-16 H.J. Lu <hjl.tools@gmail.com>
+ Radko Krkos <krkos@mail.muni.cz>
+
+ COMMIT: 5b7c8d1cd44048d6fbf10ad80e0d94dd90848a0d
+ Always check lockf64 return value
+
+ * locale/programs/locarchive.c: Modified.
+ (open_archive): Modified function.
+
+2025-06-16 H.J. Lu <hjl.tools@gmail.com>
+
+ COMMIT: 81467d4b6168c7ce40d951d6b32e387109c0e5ae
+ elf: Add optimization barrier for __ehdr_start and _end
+
+ * elf/rtld.c: Modified.
+ [! DONT_USE_BOOTSTRAP_MAP](_dl_start_final): Modified function.
+ [DONT_USE_BOOTSTRAP_MAP](_dl_start_final): Modified function.
+ * sysdeps/x86_64/Makefile: Modified.
+
+2025-06-15 gfleury <gfleury@disroot.org>
+
+ COMMIT: 27360ab9ea637de80ded9f0e0fe23ac0cc621b29
+ htl: move pthread_key_*, pthread_get/setspecific
+
+ * htl/Makefile: Modified.
+ * htl/Versions: Modified.
+ * htl/pt-initialize.c: Modified.
+ * htl/pt-internal.h: Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): New.
+ * sysdeps/htl/libc-lockP.h: Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Remove.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Remove.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Remove.
+ * sysdeps/htl/pt-destroy-specific.c: Modified.
+ (string.h): Include file.
+ (libc_hidden_def): New.
+ * sysdeps/htl/pt-getspecific.c: Modified.
+ (weak_alias): Remove.
+ (hidden_def): Remove.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/htl/pt-key-create.c: Modified.
+ (weak_alias): Remove.
+ (hidden_def): Remove.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (ldsodefs.h): Include file.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/htl/pt-key-delete.c: Modified.
+ (weak_alias): Remove.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (ldsodefs.h): Include file.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/htl/pt-setspecific.c: Modified.
+ (weak_alias): Remove.
+ (hidden_def): Remove.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (string.h): Include file.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/htl/pthread-functions.h: Modified.
+ (__pthread_key_create): Remove.
+ (__pthread_getspecific): Remove.
+ (__pthread_setspecific): Remove.
+ (pthread_functions): Modified.
+ * sysdeps/htl/pthreadP.h: Modified.
+ [IS_IN (libpthread)](hidden_proto): Modified.
+ [IS_IN (libpthread)](hidden_proto): Remove.
+ [IS_IN (libpthread)](hidden_proto): Remove.
+ [IS_IN (libpthread)](hidden_proto): Remove.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): New.
+ (libc_hidden_proto): New.
+ (libc_hidden_proto): New.
+ (libc_hidden_proto): New.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/i386/libpthread.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libc.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libpthread.abilist: Modified.
+
+2025-06-15 H.J. Lu <hjl.tools@gmail.com>
+ Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 90cf97bb9d56d36197e1e83b8570daec3af43fca
+ elf: Remove the unused _etext declaration
+
+ * elf/rtld.c: Modified.
+ (_etext): Remove.
+
+2025-06-14 Radko Krkos <krkos@mail.muni.cz>
+
+ COMMIT: f3c82fc1b41261f582f5f9fa12f74af9bcbc88f9
+ io: Mark lockf() __wur [BZ #32800]
+
+ * io/fcntl.h: Modified.
+ [! F_LOCK && ( __USE_MISC || ( __USE_XOPEN_EXTENDED && ! __USE_POSIX))][! __USE_FILE_OFFSET64](lockf): Remove.
+ [! F_LOCK && ( __USE_MISC || ( __USE_XOPEN_EXTENDED && ! __USE_POSIX))][! __USE_FILE_OFFSET64](__wur): New.
+ [! F_LOCK && ( __USE_MISC || ( __USE_XOPEN_EXTENDED && ! __USE_POSIX))][__USE_FILE_OFFSET64][__REDIRECT](__REDIRECT): Remove.
+ [! F_LOCK && ( __USE_MISC || ( __USE_XOPEN_EXTENDED && ! __USE_POSIX))][__USE_FILE_OFFSET64][__REDIRECT](__wur): New.
+ [! F_LOCK && ( __USE_MISC || ( __USE_XOPEN_EXTENDED && ! __USE_POSIX))][__USE_LARGEFILE64](lockf64): Remove.
+ [! F_LOCK && ( __USE_MISC || ( __USE_XOPEN_EXTENDED && ! __USE_POSIX))][__USE_LARGEFILE64](__wur): New.
+
+2025-06-13 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 1d828b9ddc2205de208ae304cf3b8ca202dd6481
+ benchtests: Improve modf benchtest
+
+ * benchtests/modf-inputs: Modified.
+
+2025-06-13 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 619fd4e37b959c78f0b3a94ea876a85730689845
+ benchtests: Add modff benchtest
+
+ * benchtests/Makefile: Modified.
+ * benchtests/modff-inputs: New file.
+
+2025-06-13 Mark Harris <mark.hsj@gmail.com>
+
+ COMMIT: 8af8beb1c488dcfec754431c1626979276046545
+ riscv: Correct __riscv_hwprobe function prototype [BZ #32932]
+
+ * sysdeps/unix/sysv/linux/riscv/hwprobe.c: Modified.
+ (__riscv_hwprobe): Modified function.
+ * sysdeps/unix/sysv/linux/riscv/sys/hwprobe.h: Modified.
+ (__riscv_hwprobe): Modified.
+ (int): Modified.
+ [!(__cplusplus || !__GNUC_PREREQ (2, 7))](typedef union { cpu_set_t *__cs; unsigned long int *__ul; } __RISCV_HWPROBE_CPUS_TYPE __attribute__ ((__transparent_union__));): New.
+ [!(__cplusplus || !__GNUC_PREREQ (2, 7))](__RISCV_HWPROBE_CPUS_TYPE): New.
+ [__cplusplus || !__GNUC_PREREQ (2, 7)](__RISCV_HWPROBE_CPUS_TYPE): New.
+ (sched.h): Include file.
+
+2025-06-10 Sergey Kolosov <skolosov@redhat.com>
+
+ COMMIT: daab2a6d19f8360248289840408e7d2e5c203c2e
+ resolv: Add test for getaddrinfo returning FQDN in ai_canonname
+
+ * resolv/Makefile: Modified.
+ * resolv/tst-resolv-getaddrinfo-fqdn.c: New file.
+
+2025-06-10 Yury Khrustalev <yury.khrustalev@arm.com>
+
+ COMMIT: b15ed85c86d454f02eb1738a83ffbea4896484d2
+ aarch64: fix typo in sysdeps/aarch64/Makefile
+
+ * sysdeps/aarch64/Makefile: Modified.
+
+2025-06-09 Siddhesh Poyarekar <siddhesh@sourceware.org>
+
+ COMMIT: f8f73249d94fd3ef5fc5843932dbd1fde6bef12c
+ Advisory text for CVE-2025-5745
+
+ * advisories/GLIBC-SA-2025-0004: New file.
+
+2025-06-09 Siddhesh Poyarekar <siddhesh@sourceware.org>
+
+ COMMIT: 62cb3ee57d08e05d15cca624af8b01878536ca03
+ Advisory text for CVE-2025-5702
+
+ * advisories/GLIBC-SA-2025-0003: New file.
+
+2025-06-09 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ COMMIT: 5fdc693d95a981e10f7a2a3952b6cd1133ed85f9
+ hurd: Make __getrandom_early_init call __mach_init
+
+ * mach/mach_init.c: Modified.
+ (__mach_init): Modified function.
+ * sysdeps/mach/hurd/getrandom-internal.h: New file.
+
+2025-06-09 H.J. Lu <hjl.tools@gmail.com>
+
+ COMMIT: 0a027674a10337cb22ad4e056637616ea1611324
+ x86: Avoid GLRO(dl_x86_cpu_features)
+
+ * sysdeps/x86/cpu-features.c: Modified.
+ (init_cpu_features): Modified function.
+
+2025-06-06 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: 62fba6d9807fc12334d7c5513407715d59539611
+ manual: Add a comparative example of 'clock_nanosleep' use
+
+ * manual/time.texi: Modified.
+
+2025-06-06 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: 09795c5612c630db605886dfd55dbf56f381d128
+ AArch64: Fix builderror with GCC 12.1/12.2
+
+ * sysdeps/aarch64/fpu/Makefile: Modified.
+
+2025-06-05 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: 7a751ce39c266143807ef830a949cb8b831783ba
+ Linux: Drop obsolete kernel support with `if_nameindex' and `if_nametoindex'
+
+ * sysdeps/unix/sysv/linux/if_index.c: Modified.
+ (__if_nametoindex): Modified function.
+ (if_nameindex_netlink): Remove function.
+ (__if_nameindex): Modified function.
+
+2025-06-05 Yury Khrustalev <yury.khrustalev@arm.com>
+
+ COMMIT: fcd6a8b5c53a5fbd847aec6fa8d36a71388441c8
+ aarch64: add __ifunc_hwcap function to be used in ifunc resolvers
+
+ * sysdeps/aarch64/Makefile: Modified.
+ * sysdeps/aarch64/sys/ifunc.h: Modified.
+ (sys/cdefs.h): Include file.
+ (<anonymous>): New.
+ (__ifunc_hwcap): New function.
+ * sysdeps/aarch64/tst-ifunc-arg-1.c: Modified.
+ (do_test): Modified function.
+ * sysdeps/aarch64/tst-ifunc-arg-2.c: Modified.
+ (do_test): Modified function.
+ * sysdeps/aarch64/tst-ifunc-arg-3.c: New file.
+ * sysdeps/aarch64/tst-ifunc-arg-4.c: New file.
+
+2025-06-05 Yury Khrustalev <yury.khrustalev@arm.com>
+
+ COMMIT: ea14d04e9a831874e40be39522145a45f1f4f8c7
+ aarch64: add support for hwcap3,4
+
+ * sysdeps/aarch64/dl-irel.h: Modified.
+ (unistd.h): Remove include.
+ (sysdep.h): Remove include.
+ (elf_ifunc_invoke): Modified function.
+ (_IFUNC_ARG_SIZE_VER0): New.
+ (_IFUNC_ARG_SIZE_VER1): New.
+ (sizeof_field): New.
+ (offsetofend): New.
+ (_Static_assert): New function.
+ (_IFUNC_ARG_SIZE_VER1): New.
+ (offsetofend): New.
+ (sizeof_field): New.
+ * sysdeps/aarch64/sys/ifunc.h: Modified.
+ (__ifunc_arg_t): Modified.
+ (_IFUNC_HWCAP_MAX): New.
+ * sysdeps/aarch64/tst-ifunc-arg-1.c: Modified.
+ (do_test): Modified function.
+ * sysdeps/aarch64/tst-ifunc-arg-2.c: Modified.
+ (do_test): Modified function.
+
+2025-06-04 Arjun Shankar <arjun@redhat.com>
+
+ COMMIT: 25f1d945766a3a757d9b54eb48fe7c3c48c0f791
+ manual: Document futimens and utimensat
+
+ * manual/filesys.texi: Modified.
+
+2025-06-04 Arjun Shankar <arjun@redhat.com>
+
+ COMMIT: 75b725717ff23d0ae38fc7f4a0361cb1bdffbe2e
+ manual: Document unlinkat
+
+ * manual/filesys.texi: Modified.
+
+2025-06-04 Arjun Shankar <arjun@redhat.com>
+
+ COMMIT: 60f86c9cd062882cbeb04b2944c3dfb7457ee5c5
+ manual: Document renameat
+
+ * manual/filesys.texi: Modified.
+
+2025-06-04 Arjun Shankar <arjun@redhat.com>
+
+ COMMIT: 49766eb1a5b93d093bd0fada55ca7a42dfdb10d6
+ manual: Document mkdirat
+
+ * manual/filesys.texi: Modified.
+
+2025-06-04 Arjun Shankar <arjun@redhat.com>
+
+ COMMIT: 941157dbcdf1c410960bde991206bfb6d9bb292f
+ manual: Document faccessat
+
+ * manual/filesys.texi: Modified.
+
+2025-06-04 Arjun Shankar <arjun@redhat.com>
+
+ COMMIT: 3b21166c4d34ee032093bcf599ffac42ad8a4371
+ manual: Expand Descriptor-Relative Access section
+
+ * manual/filesys.texi: Modified.
+
+2025-06-04 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 2fca4b624bd3ceb8c756b4145c7e96aa032b2b98
+ Makefile: Avoid $(objpfx)/ in makefiles
+
+ * elf/Makefile: Modified.
+ * nss/Makefile: Modified.
+
+2025-06-04 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: 140b20e9716b51659a5223b182dcf07ac62b3f77
+ manual: Document error codes missing for 'inet_pton'
+
+ * manual/socket.texi: Modified.
+
+2025-06-04 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: 5a9020eeb27eee88e7839ff5e9cea94892ec90ff
+ manual: Document error codes missing for 'if_nametoindex'
+
+ * manual/socket.texi: Modified.
+
+2025-06-04 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: 46acdf46cc1948187d6540cdf4abee5053cd8bcc
+ manual: Document error codes missing for 'if_indextoname'
+
+ * manual/socket.texi: Modified.
+
+2025-06-04 Cœur <coeur@gmx.fr>
+
+ COMMIT: e885fd43db8120b9f794b0a9482778da63aa136b
+ posix: fix building regex when _LIBC isn't defined
+
+ * posix/regcomp.c: Modified.
+ [_REGEX_RE_COMP || _LIBC][! _LIBC][_LIBC][! _LIBC](parse_bracket_exp): Modified function.
+ [_REGEX_RE_COMP || _LIBC][! _LIBC][_LIBC](parse_bracket_exp): Modified function.
+
+2025-06-04 Collin Funk <collin.funk1@gmail.com>
+
+ COMMIT: 5b456748693957b39a53b1e15e5b85a9af7c04a8
+ localedata: Use the name North Macedonia.
+
+ * locale/iso-3166.def: Modified.
+
+2025-06-03 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: 7e10e30e64aa2cc8ba50f2f83cb7cc2cdad134ad
+ malloc: Count tcache entries downwards
+
+ * malloc/malloc.c: Modified.
+ [IS_IN (libc)](__libc_free): Modified function.
+ [USE_TCACHE](tcache_perthread_struct): Modified.
+ [USE_TCACHE](tcache_put): Modified function.
+ [USE_TCACHE](tcache_get_n): Modified function.
+ [USE_TCACHE](tcache_available): Modified function.
+ [USE_TCACHE](tcache_init): Modified function.
+ (_int_malloc): Modified function.
+
+2025-06-03 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 404526ee2e58f3c075253943ddc9988f4bd6b80c
+ sparc: Fix argument passing to __libc_start_main (BZ 32981)
+
+ * sysdeps/sparc/sparc32/start.S: Modified.
+ * sysdeps/sparc/sparc64/start.S: Modified.
+
+2025-06-03 Collin Funk <collin.funk1@gmail.com>
+
+ COMMIT: d475e5bf4f1e0628354c45fb830388a92f7d1181
+ localedata: Refer to Eswatini instead of Swaziland.
+
+ * locale/iso-3166.def: Modified.
+ * locale/iso-4217.def: Modified.
+
+2025-06-03 наб <nabijaczleweli@nabijaczleweli.xyz>
+
+ COMMIT: 6945ce4a6f9700c2b978612c3538452ca1b126c6
+ sigaction: don't sign-extend sa_flags
+
+ * sysdeps/unix/sysv/linux/libc_sigaction.c: Modified.
+ (__libc_sigaction): Modified function.
+ * sysdeps/unix/sysv/linux/x86_64/libc_sigaction.c: Modified.
+ (SET_SA_RESTORER): Modified.
+
+2025-06-02 Collin Funk <collin.funk1@gmail.com>
+
+ COMMIT: b2970d5e5be3142f4f50d589b886b53567818bcc
+ stdio-common: Add nonnull attribute to stdio_ext.h functions.
+
+ * stdio-common/stdio_ext.h: Modified.
+ (__fbufsize): Modified.
+ (__freading): Modified.
+ (__fwriting): Modified.
+ (__freadable): Modified.
+ (__fwritable): Modified.
+ (__flbf): Modified.
+ (__fpurge): Modified.
+ (__fpending): Modified.
+ (__fsetlocking): Modified.
+
+2025-06-02 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: e529bfe8dee4bfde3ac74927b5b7b8df65cf3bb0
+ elf: Fix UB on _dl_map_object_from_fd
+
+ * elf/dl-load.c: Modified.
+ [! EXTERNAL_MAP_FROM_FD](_dl_map_object_from_fd): Modified function.
+
+2025-06-02 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 1642570563434ff0f15b36edc0b92ab3c7c934ee
+ argp: Fix shift bug
+
+ * argp/argp-parse.c: Modified.
+ (parser_parse_opt): Modified function.
+
+2025-06-02 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 7c00a20397d8caa3638a26a58900570c8ef21c49
+ math: Remove i386 ilogb/ilogbf/llogb/llogbf
+
+ * sysdeps/i386/fpu/e_ilogb.S: Delete file.
+ * sysdeps/i386/fpu/e_ilogbf.S: Delete file.
+ * sysdeps/i386/fpu/w_ilogb.c: Delete file.
+ * sysdeps/i386/fpu/w_ilogbf.c: Delete file.
+ * sysdeps/i386/fpu/w_llogb.c: Delete file.
+ * sysdeps/i386/fpu/w_llogbf.c: Delete file.
+
+2025-06-02 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 39775f00b194e5f10b3b398de57b04a18846814e
+ math: Optimize float ilogb/llogb
+
+ * sysdeps/i386/fpu/w_ilogbf.c: New file.
+ * sysdeps/i386/fpu/w_llogbf.c: New file.
+ * sysdeps/ieee754/flt-32/e_ilogbf.c: Modified.
+ (limits.h): Remove include.
+ (math.h): Remove include.
+ (stdbit.h): Remove include.
+ (math_config.h): Remove include.
+ (__ieee754_ilogbf): Remove function.
+ * sysdeps/ieee754/flt-32/math_config.h: Modified.
+ (__math_invalidf_i): New function.
+ (__math_invalidf_li): New function.
+ * sysdeps/ieee754/flt-32/math_errf.c: Modified.
+ [! WANT_ERRNO](with_errnof_i): New.
+ [! WANT_ERRNO](with_errnof_li): New.
+ [WANT_ERRNO](with_errnof_i): New function.
+ [WANT_ERRNO](with_errnof_li): New function.
+ (math-barriers.h): Include file.
+ (__math_invalidf_i): New function.
+ (__math_invalidf_li): New function.
+ * sysdeps/ieee754/flt-32/w_ilogbf-impl.h: New file.
+ * sysdeps/ieee754/flt-32/w_ilogbf.c: New file.
+ * sysdeps/ieee754/flt-32/w_llogbf.c: New file.
+ * sysdeps/loongarch/fpu/e_ilogbf.c: Modified.
+ (NO_MATH_REDIRECT): Remove.
+ (math.h): Remove include.
+ (fpu_control.h): Remove include.
+ (__ieee754_ilogbf): Remove function.
+ * sysdeps/loongarch/fpu/w_ilogbf-impl.h: New file.
+ * sysdeps/m68k/m680x0/w_ilogbf.c: New file.
+ * sysdeps/m68k/m680x0/w_llogbf.c: New file.
+ * sysdeps/powerpc/powerpc64/le/fpu/e_ilogbf.c: New file.
+ * sysdeps/powerpc/powerpc64/le/fpu/w_ilogbf.c: New file.
+ * sysdeps/powerpc/powerpc64/le/fpu/w_llogbf.c: New file.
+
+2025-06-02 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: afe09d44f3a3597c3e6ea91f5ceb3e502da6d192
+ math: Remove UB and optimize double ilogbf
+
+ * sysdeps/ieee754/flt-32/e_ilogbf.c: Modified.
+ [(LIBM_SCCS) && ! lint](rcsid): Remove.
+ (math_private.h): Remove include.
+ (__ieee754_ilogbf): Modified function.
+ (stdbit.h): Include file.
+ (math_config.h): Include file.
+
+2025-06-02 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: c4be334400508e6aa007f99ccc36c414f793c387
+ math: Optimize double ilogb/llogb
+
+ * sysdeps/i386/fpu/math_err.c: Delete file.
+ * sysdeps/i386/fpu/w_ilogb.c: New file.
+ * sysdeps/i386/fpu/w_llogb.c: New file.
+ * sysdeps/ieee754/dbl-64/e_ilogb.c: Modified.
+ (limits.h): Remove include.
+ (math.h): Remove include.
+ (stdbit.h): Remove include.
+ (math_config.h): Remove include.
+ (__ieee754_ilogb): Remove function.
+ * sysdeps/ieee754/dbl-64/math_config.h: Modified.
+ (__math_invalid_i): New function.
+ (__math_invalid_li): New function.
+ * sysdeps/ieee754/dbl-64/math_err.c: Modified.
+ [! WANT_ERRNO](with_errno_i): New.
+ [! WANT_ERRNO](with_errno_li): New.
+ [WANT_ERRNO](with_errno_i): New function.
+ [WANT_ERRNO](with_errno_li): New function.
+ (__math_invalid_i): New function.
+ (__math_invalid_li): New function.
+ * sysdeps/ieee754/dbl-64/w_ilogb-impl.h: New file.
+ * sysdeps/ieee754/dbl-64/w_ilogb.c: New file.
+ * sysdeps/ieee754/dbl-64/w_llogb.c: New file.
+ * sysdeps/loongarch/fpu/e_ilogb.c: Move to...
+ * sysdeps/loongarch/fpu/w_ilogb-impl.h: ... here.
+ (NO_MATH_REDIRECT): Remove.
+ (math.h): Remove include.
+ (__ieee754_ilogb): Remove function.
+ (IMPL_NAME): New function.
+ * sysdeps/m68k/m680x0/fpu/math_err.c: Delete file.
+ * sysdeps/m68k/m680x0/w_ilogb.c: New file.
+ * sysdeps/m68k/m680x0/w_llogb.c: New file.
+ * sysdeps/powerpc/powerpc64/le/fpu/e_ilogb.c: New file.
+ * sysdeps/powerpc/powerpc64/le/fpu/w_ilogb.c: New file.
+ * sysdeps/powerpc/powerpc64/le/fpu/w_llogb.c: New file.
+
+2025-06-02 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: eb1e9194fa3802dea813880fd6765467f8e86a49
+ math: Remove UB and optimize double ilogb
+
+ * sysdeps/ieee754/dbl-64/e_ilogb.c: Modified.
+ [(LIBM_SCCS) && ! lint](rcsid): Remove.
+ (math_private.h): Remove include.
+ (__ieee754_ilogb): Modified function.
+ (stdbit.h): Include file.
+ (math_config.h): Include file.
+
+2025-06-02 Arjun Shankar <arjun@redhat.com>
+
+ COMMIT: 591283a68965fe61a7186c9c81f7812e71b282b4
+ manual: Correct return value description of 'clock_nanosleep'
+
+ * manual/time.texi: Modified.
+
+2025-05-30 DJ Delorie <dj@redhat.com>
+
+ COMMIT: af90dc572ad232d05b667c4ce218d499f066b7bc
+ nss: free dynarray buffer after parsing nsswitch.conf
+
+ * nss/nss_action_parse.c: Modified.
+ (__nss_action_parse): Modified function.
+
+2025-05-30 Arjun Shankar <arjun@redhat.com>
+
+ COMMIT: 1a3d8f2201d4d613401ce5be9a283f4f28c43093
+ manual: Document clock_nanosleep
+
+ * manual/time.texi: Modified.
+
+2025-05-30 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: 9a743032cd59c59167bf615d8ab4acc96b2bf47e
+ manual: Fix invalid 'illegal' usage with 'nanosleep'
+
+ * manual/time.texi: Modified.
+
+2025-05-30 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: bc4202521c2aaf587690ea6cbb67c22ee578c86e
+ manual: Fix duplicate 'consult' erratum
+
+ * manual/resource.texi: Modified.
+
+2025-05-30 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: 24ac3a570ddf5b8b7973303b8d3843a64e185a90
+ localedata: Correct Persian collation rules description
+
+ * localedata/locales/fa_IR: Modified.
+
+2025-05-30 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: 9e8be7a0d146f82d8fa14ab39207656b8b00aae1
+ stdio-common: Correct 'sscanf' test feature wrapper description
+
+ * stdio-common/tst-scanf-format-ss.h: Modified.
+
+2025-05-29 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: 79b5febd762d6735ba8e878086a50ea04993e340
+ manual: Document error codes missing for 'inet_ntop'
+
+ * manual/socket.texi: Modified.
+
+2025-05-29 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: 43afae31e0d7579deef13536c4c3704afaa017da
+ manual: Document error codes missing for 'socket'
+
+ * manual/socket.texi: Modified.
+
+2025-05-29 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: e6de31203e236fa346c2f56ce4e1f8fe82594b03
+ stdio-common: Consistently use 'num_digits_len' in 'vfscanf'
+
+ * stdio-common/vfscanf-internal.c: Modified.
+ [! COMPILE_WSCANF](__vfscanf_internal): Modified function.
+ [COMPILE_WSCANF](__vfwscanf_internal): Modified function.
+
+2025-05-29 Joseph Myers <josmyers@redhat.com>
+
+ COMMIT: eaf88c10250b917ba64c9d5567457c4b82558ed1
+ Update syscall lists for Linux 6.15
+
+ * sysdeps/unix/sysv/linux/aarch64/arch-syscall.h: Modified.
+ (__NR_open_tree_attr): New.
+ * sysdeps/unix/sysv/linux/alpha/arch-syscall.h: Modified.
+ (__NR_open_tree_attr): New.
+ * sysdeps/unix/sysv/linux/arc/arch-syscall.h: Modified.
+ (__NR_open_tree_attr): New.
+ * sysdeps/unix/sysv/linux/arm/arch-syscall.h: Modified.
+ (__NR_open_tree_attr): New.
+ * sysdeps/unix/sysv/linux/csky/arch-syscall.h: Modified.
+ (__NR_open_tree_attr): New.
+ * sysdeps/unix/sysv/linux/hppa/arch-syscall.h: Modified.
+ (__NR_open_tree_attr): New.
+ * sysdeps/unix/sysv/linux/i386/arch-syscall.h: Modified.
+ (__NR_open_tree_attr): New.
+ * sysdeps/unix/sysv/linux/loongarch/arch-syscall.h: Modified.
+ (__NR_open_tree_attr): New.
+ * sysdeps/unix/sysv/linux/m68k/arch-syscall.h: Modified.
+ (__NR_open_tree_attr): New.
+ * sysdeps/unix/sysv/linux/microblaze/arch-syscall.h: Modified.
+ (__NR_open_tree_attr): New.
+ * sysdeps/unix/sysv/linux/mips/mips32/arch-syscall.h: Modified.
+ (__NR_open_tree_attr): New.
+ * sysdeps/unix/sysv/linux/mips/mips64/n32/arch-syscall.h: Modified.
+ (__NR_open_tree_attr): New.
+ * sysdeps/unix/sysv/linux/mips/mips64/n64/arch-syscall.h: Modified.
+ (__NR_open_tree_attr): New.
+ * sysdeps/unix/sysv/linux/or1k/arch-syscall.h: Modified.
+ (__NR_open_tree_attr): New.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/arch-syscall.h: Modified.
+ (__NR_open_tree_attr): New.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/arch-syscall.h: Modified.
+ (__NR_open_tree_attr): New.
+ * sysdeps/unix/sysv/linux/riscv/rv32/arch-syscall.h: Modified.
+ (__NR_open_tree_attr): New.
+ * sysdeps/unix/sysv/linux/riscv/rv64/arch-syscall.h: Modified.
+ (__NR_open_tree_attr): New.
+ * sysdeps/unix/sysv/linux/s390/s390-32/arch-syscall.h: Modified.
+ (__NR_open_tree_attr): New.
+ * sysdeps/unix/sysv/linux/s390/s390-64/arch-syscall.h: Modified.
+ (__NR_open_tree_attr): New.
+ * sysdeps/unix/sysv/linux/sh/arch-syscall.h: Modified.
+ (__NR_open_tree_attr): New.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/arch-syscall.h: Modified.
+ (__NR_open_tree_attr): New.
+ * sysdeps/unix/sysv/linux/sparc/sparc64/arch-syscall.h: Modified.
+ (__NR_open_tree_attr): New.
+ * sysdeps/unix/sysv/linux/syscall-names.list: Modified.
+ * sysdeps/unix/sysv/linux/x86_64/64/arch-syscall.h: Modified.
+ (__NR_open_tree_attr): New.
+ * sysdeps/unix/sysv/linux/x86_64/x32/arch-syscall.h: Modified.
+ (__NR_open_tree_attr): New.
+
+2025-05-29 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: aa18367c1169700f610565eba8acf3e08429fcf5
+ AArch64: Improve enabling of SVE for libmvec
+
+ * sysdeps/aarch64/fpu/Makefile: Modified.
+
+2025-05-29 Luna Lamb <luna.lamb@arm.com>
+
+ COMMIT: da196e6134ede64728006518352d75b6c3902fec
+ AArch64: Improve codegen in SVE log1p
+
+ * sysdeps/aarch64/fpu/log1p_sve.c: Modified.
+ (data): Modified.
+ (special_case): Modified function.
+ (SV_NAME_D1): Modified function.
+
+2025-05-28 Joseph Myers <josmyers@redhat.com>
+
+ COMMIT: 3473526758532d7356be80c7950e476e235b5fb2
+ Use Linux 6.15 in build-many-glibcs.py
+
+ * scripts/build-many-glibcs.py: Modified.
+
+2025-05-28 Yury Khrustalev <yury.khrustalev@arm.com>
+
+ COMMIT: ea30c6703055ea2ef4584c32df8d30a41b945bdf
+ manual: mention PKEY_UNRESTRICTED macro in the manual
+
+ * manual/memory.texi: Modified.
+
+2025-05-28 Yury Khrustalev <yury.khrustalev@arm.com>
+
+ COMMIT: 22419a2b60c813726c1a7efe047b47beef42e8b2
+ linux: use PKEY_UNRESTRICTED macro in tst-pkey
+
+ * sysdeps/unix/sysv/linux/tst-pkey.c: Modified.
+ (do_test): Modified function.
+
+2025-05-28 Yury Khrustalev <yury.khrustalev@arm.com>
+
+ COMMIT: 01bb997ef59031e6b1031fb53a16754f1faab6df
+ misc: add PKEY_UNRESTRICTED macro
+
+ * sysdeps/unix/sysv/linux/bits/mman-shared.h: Modified.
+ [__USE_GNU][! PKEY_DISABLE_ACCESS](PKEY_DISABLE_ACCESS): Remove.
+ [__USE_GNU][! PKEY_DISABLE_ACCESS](PKEY_DISABLE_WRITE): Remove.
+ [__USE_GNU](PKEY_UNRESTRICTED): New.
+ [__USE_GNU](PKEY_DISABLE_ACCESS): New.
+ [__USE_GNU](PKEY_DISABLE_WRITE): New.
+
+2025-05-28 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 27cc947dcee01dd7d9054224aa24ab19fbb4cb9a
+ generic: Add missing parameter name to __getrandom_early_init
+
+ * sysdeps/generic/getrandom-internal.h: Modified.
+ (__getrandom_early_init): Modified function.
+
+2025-05-28 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: fe31d246f5ecf584467904cc8a411dbe306ae8f3
+ hurd: Avoid -Wfree-labels warning in _hurd_intr_rpc_mach_msg
+
+ * hurd/intr-msg.c: Modified.
+ (_hurd_intr_rpc_mach_msg): Modified function.
+
+2025-05-28 Andreas Schwab <schwab@suse.de>
+
+ COMMIT: 345432e47b931c3a8e1cac560e785ba0c5affbe6
+ Update RISC-V relocations
+
+ * elf/elf.h: Modified.
+ (R_RISCV_GNU_VTINHERIT): Remove.
+ (R_RISCV_GNU_VTENTRY): Remove.
+ (R_RISCV_RVC_LUI): Remove.
+ (R_RISCV_GPREL_I): Remove.
+ (R_RISCV_GPREL_S): Remove.
+ (R_RISCV_TPREL_I): Remove.
+ (R_RISCV_TPREL_S): Remove.
+ (R_RISCV_NUM): Modified.
+ (R_RISCV_TLSDESC): New.
+ (R_RISCV_GOT32_PCREL): New.
+ (R_RISCV_TLSDESC_HI20): New.
+ (R_RISCV_TLSDESC_LOAD_LO12): New.
+ (R_RISCV_TLSDESC_ADD_LO12): New.
+ (R_RISCV_TLSDESC_CALL): New.
+
+2025-05-27 Joseph Myers <josmyers@redhat.com>
+
+ COMMIT: 08d7243a6179d5a1f3f65a53aba1ec0803895aeb
+ Use -std=gnu17 in build-many-glibcs.py when configuring GMP
+
+ * scripts/build-many-glibcs.py: Modified.
+
+2025-05-27 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: 919bf1489abe634aefbcf3532617e7c5987c56ab
+ malloc: Fix malloc init order
+
+ * elf/libc_early_init.c: Modified.
+ (__libc_early_init): Modified function.
+
+2025-05-27 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: a289cf711e0797ed8fe23a1222904fbb35560356
+ Move C warning flags from +gccwarn to +gccwarn-c
+
+ * Makeconfig: Modified.
+
+2025-05-27 Jonathan Wakely <jwakely@redhat.com>
+
+ COMMIT: a484b76cd7d094c2c82d8dbb7a1a2c0d3709d16a
+ doc: Add missing space in documentation of __TIMESIZE
+
+ * manual/maint.texi: Modified.
+
+2025-05-27 Jonathan Wakely <jwakely@redhat.com>
+
+ COMMIT: b4784d61b316ce65abc1c42c65c46b84d160eaba
+ doc: Fix typos in documentation of _TIME_BITS
+
+ * manual/creature.texi: Modified.
+
+2025-05-27 Jonathan Wakely <jwakely@redhat.com>
+
+ COMMIT: a2d2c62072bb08f9f985a026562d7e81a4abeb60
+ Fix comment typo in libc-symbols.h
+
+ * include/libc-symbols.h: Modified.
+
+2025-05-27 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 03da41d47dc73674307e6ffc5b75e9043febc698
+ Turn on -Wmissing-parameter-name by default if available
+
+ * Makeconfig: Modified.
+ * configure: Modified.
+ * configure.ac: Modified.
+
+2025-05-26 Tomas Volf <~@wolfsden.cz>
+
+ COMMIT: 99c70ae6e9e4214e6be71d48d174576a50e350a7
+ manual: Document getopt_long_only with single letter options (bug 32980)
+
+ * manual/getopt.texi: Modified.
+
+2025-05-26 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 4f4c4fcde76aedc1f5362a51d98ebb57a28fbce9
+ Turn on -Wfree-labels by default if available
+
+ * Makeconfig: Modified.
+ * configure: Modified.
+ * configure.ac: Modified.
+
+2025-05-23 Stefan Liebler <stli@linux.ibm.com>
+
+ COMMIT: 319f94dea2b7eeff12adb22ee50b46b64dd6a52d
+ S390: Use cfi_val_offset instead of cfi_escape. 31bit part
+
+ * sysdeps/s390/s390-32/s390-mcount.S: Modified.
+
+2025-05-23 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: 7ad95d5506766edf7ded4e0b33d13b7dc264cdb4
+ libmvec: Add inputs for asinpi(f), acospi(f), atanpi(f) and atan2pi(f)
+
+ * benchtests/libmvec/acospi-inputs: New file.
+ * benchtests/libmvec/acospif-inputs: New file.
+ * benchtests/libmvec/asinpi-inputs: New file.
+ * benchtests/libmvec/asinpif-inputs: New file.
+ * benchtests/libmvec/atan2pi-inputs: New file.
+ * benchtests/libmvec/atan2pif-inputs: New file.
+ * benchtests/libmvec/atanpi-inputs: New file.
+ * benchtests/libmvec/atanpif-inputs: New file.
+
+2025-05-22 Mark Wielaard <mark@klomp.org>
+
+ COMMIT: 7b9881c2c8841ef135ce897d459123dfe9dd3a06
+ INSTALL: Regenerate with texinfo 7.2
+
+ * INSTALL: Modified.
+
+2025-05-22 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 3a3fb2ed83f79100c116c824454095ecfb335ad7
+ Fix error reporting (false negatives) in SGID tests
+
+ * elf/tst-dlopen-sgid.c: Modified.
+ (do_test): Modified function.
+ * elf/tst-env-setuid-tunables.c: Modified.
+ (do_test): Modified function.
+ * elf/tst-env-setuid.c: Modified.
+ (do_test): Modified function.
+ * stdlib/tst-secure-getenv.c: Modified.
+ (do_test): Modified function.
+ (alternative_main): Modified function.
+ * support/capture_subprocess.h: Modified.
+ (support_capture_subprogram_self_sgid): Modified.
+ * support/support_capture_subprocess.c: Modified.
+ (copy_and_spawn_sgid): Modified function.
+ (support_capture_subprogram_self_sgid): Modified function.
+ (support/temp_file.h): Include file.
+
+2025-05-21 Carlos O'Donell <carlos@redhat.com>
+
+ COMMIT: 4052d99ead880797cf271309fd87ddd2b95bd353
+ manual: Use more inclusive language in comments.
+
+ * manual/libc.texinfo: Modified.
+
+2025-05-21 Carlos O'Donell <carlos@redhat.com>
+
+ COMMIT: 7f9e894fb8d3526690d1db50103c4ac5fa107249
+ Makerules: Use 'original' instead of 'master' in source.
+
+ * Makerules: Modified.
+
+2025-05-21 Carlos O'Donell <carlos@redhat.com>
+
+ COMMIT: 801d566dde560a2b9cf09ff497f8237994c52f93
+ gen-libm-test: Use 'original source' instead of 'master' in code.
+
+ * math/gen-libm-test.py: Modified.
+
+2025-05-21 Carlos O'Donell <carlos@redhat.com>
+
+ COMMIT: 37a32c243f00771baee9a75b5b57dc1e74862e9e
+ nss_test1: Use 'parametrized template' instead of 'master' in comment.
+
+ * nss/nss_test1.c: Modified.
+
+2025-05-21 Carlos O'Donell <carlos@redhat.com>
+
+ COMMIT: 6a9df2a4032f3c4cffd0ad6557edcfbb7692acb1
+ linknamespace: Use 'ALLOWLIST' instead of 'WHITELIST' in code.
+
+ * conform/linknamespace.py: Modified.
+
+2025-05-21 Carlos O'Donell <carlos@redhat.com>
+
+ COMMIT: 1b71a7350084891b788952000ff0472cf38d7392
+ posix: Use more inclusive language in test data.
+
+ * posix/tst-regex.input: Modified.
+
+2025-05-21 Carlos O'Donell <carlos@redhat.com>
+
+ COMMIT: 078c18d358e08e4222eda6bdf43c828e1b6928df
+ pylintrc: Remove obsolete ignore section and comments.
+
+ * scripts/pylintrc: Modified.
+
+2025-05-21 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 2f769cec448d84a62b7dd0d4ff56978fe22c0cd6
+ support: Pick group in support_capture_subprogram_self_sgid if UID == 0
+
+ * support/support_capture_subprocess.c: Modified.
+ (support_capture_subprogram_self_sgid): Modified function.
+ (grp.h): Include file.
+ (scratch_buffer.h): Include file.
+ (stdio_ext.h): Include file.
+ (string.h): Include file.
+ (find_sgid_group): New function.
+
+2025-05-21 Andreas Schwab <schwab@suse.de>
+
+ COMMIT: d3e0f63fb942b86de41452da0efda7835a951f07
+ ldbl-128: also disable lgammaf128_r builtin when building lgammal_r
+
+ * sysdeps/ieee754/ldbl-128/Makefile: Modified.
+
+2025-05-21 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 35fc356fa3b4f485bd3ba3114c9f774e5df7d3c2
+ elf: Fix subprocess status handling for tst-dlopen-sgid (bug 32987)
+
+ * elf/tst-dlopen-sgid.c: Modified.
+ (do_test): Modified function.
+ (support/test-driver.h): Include file.
+ (sys/wait.h): Include file.
+
+2025-05-20 Sunil K Pandey <sunil.k.pandey@intel.com>
+
+ COMMIT: f2aeb6ff941dccc4c777b5621e77addea6cc076c
+ x86_64: Fix typo in ifunc-impl-list.c.
+
+ * sysdeps/x86_64/multiarch/ifunc-impl-list.c: Modified.
+ (__libc_ifunc_impl_list): Modified function.
+
+2025-05-20 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: d8f7a79335b0d861c12c42aec94c04cd5bb181e2
+ elf: Test case for bug 32976 (CVE-2025-4802)
+
+ * elf/Makefile: Modified.
+ * elf/tst-dlopen-sgid-mod.c: New file.
+ * elf/tst-dlopen-sgid.c: New file.
+
+2025-05-20 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: f0c09fe61678df6f7f18fe1ebff074e62fa5ca7a
+ support: Use const char * argument in support_capture_subprogram_self_sgid
+
+ * support/capture_subprocess.h: Modified.
+ (support_capture_subprogram_self_sgid): Modified.
+ * support/support_capture_subprocess.c: Modified.
+ (copy_and_spawn_sgid): Modified function.
+ (support_capture_subprogram_self_sgid): Modified function.
+
+2025-05-20 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: 2071666d0387c3723db3141ee026e963ac840a4e
+ AArch64: Fix typo in math-vector.h
+
+ * sysdeps/aarch64/fpu/bits/math-vector.h: Modified.
+ [__ADVSIMD_VEC_MATH_SUPPORTED](_ZGVnN2vv_atanpi2): Remove.
+ [__ADVSIMD_VEC_MATH_SUPPORTED](_ZGVnN2vv_atan2pi): New function.
+
+2025-05-20 Andreas Schwab <schwab@suse.de>
+
+ COMMIT: b1f33b2eeb4e3699698de13a83bbaddba5a21435
+ Fix typos in ldbl-opt makefile
+
+ * sysdeps/ieee754/ldbl-opt/Makefile: Modified.
+
+2025-05-20 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: b990b0aee2c20d45d53b1964b14b98a8d5e05fe6
+ AArch64: Cleanup SVE config and defines
+
+ * config.h.in: Modified.
+ * sysdeps/aarch64/Makefile: Modified.
+ * sysdeps/aarch64/configure: Modified.
+ * sysdeps/aarch64/configure.ac: Modified.
+ * sysdeps/aarch64/multiarch/ifunc-impl-list.c: Modified.
+ (__libc_ifunc_impl_list): Modified function.
+ * sysdeps/aarch64/multiarch/memcpy.c: Modified.
+ (__typeof): Modified function.
+ * sysdeps/aarch64/multiarch/memcpy_a64fx.S: Modified.
+ * sysdeps/aarch64/multiarch/memcpy_sve.S: Modified.
+ * sysdeps/aarch64/multiarch/memmove.c: Modified.
+ (__typeof): Modified function.
+ * sysdeps/aarch64/multiarch/memset.c: Modified.
+ (__typeof): Modified function.
+ * sysdeps/aarch64/multiarch/memset_a64fx.S: Modified.
+ * sysdeps/aarch64/multiarch/memset_sve_zva64.S: Modified.
+
+2025-05-19 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: 2c421fc4302ecb729823ca442f9dfab95afba752
+ AArch64: Cleanup PAC and BTI
+
+ * config.h.in: Modified.
+ * elf/tst-asm-helper.h: Modified.
+ [HAVE_AARCH64_BTI](GNU_PROPERTY): Remove.
+ [HAVE_AARCH64_BTI && HAVE_AARCH64_PAC_RET](GNU_PROPERTY): Remove.
+ (FEATURE_1_AND): Remove.
+ (FEATURE_1_BTI): Remove.
+ (FEATURE_1_PAC): Remove.
+ (FEATURE_1_GCS): Remove.
+ (GNU_PROPERTY): Remove.
+ [__aarch64__](FEATURE_1_AND): New.
+ [__aarch64__](FEATURE_1_BTI): New.
+ [__aarch64__](FEATURE_1_PAC): New.
+ [__aarch64__](FEATURE_1_GCS): New.
+ [__aarch64__](GNU_PROPERTY): New.
+ [__aarch64__](GNU_PROPERTY): New.
+ * sysdeps/aarch64/__arm_za_disable.S: Modified.
+ * sysdeps/aarch64/__longjmp.S: Modified.
+ * sysdeps/aarch64/configure: Modified.
+ * sysdeps/aarch64/configure.ac: Modified.
+ * sysdeps/aarch64/crti.S: Modified.
+ * sysdeps/aarch64/crtn.S: Modified.
+ * sysdeps/aarch64/dl-tlsdesc.S: Modified.
+ * sysdeps/aarch64/dl-trampoline.S: Modified.
+ * sysdeps/aarch64/machine-gmon.h: Modified.
+ (MCOUNT): Modified.
+ * sysdeps/aarch64/multiarch/ifunc-impl-list.c: Modified.
+ (__libc_ifunc_impl_list): Modified function.
+ * sysdeps/aarch64/multiarch/init-arch.h: Modified.
+ (INIT_ARCH): Modified.
+ * sysdeps/aarch64/multiarch/memcpy_a64fx.S: Modified.
+ * sysdeps/aarch64/multiarch/memset_a64fx.S: Modified.
+ * sysdeps/aarch64/setjmp.S: Modified.
+ * sysdeps/aarch64/start.S: Modified.
+ * sysdeps/aarch64/sysdep.h: Modified.
+ [! __ASSEMBLER__][HAVE_AARCH64_PAC_RET](RETURN_ADDRESS): Remove.
+ [! __ASSEMBLER__](strip_pac): Remove.
+ [__ASSEMBLER__][! HAVE_AARCH64_BTI](BTI_C): Remove.
+ [__ASSEMBLER__][! HAVE_AARCH64_BTI](BTI_J): Remove.
+ [__ASSEMBLER__][HAVE_AARCH64_BTI](BTI_C): Remove.
+ [__ASSEMBLER__][HAVE_AARCH64_BTI](BTI_J): Remove.
+ [__ASSEMBLER__][HAVE_AARCH64_BTI](GNU_PROPERTY): Remove.
+ [__ASSEMBLER__][HAVE_AARCH64_BTI && HAVE_AARCH64_PAC_RET](GNU_PROPERTY): Remove.
+ [__ASSEMBLER__](PACIASP): Remove.
+ [__ASSEMBLER__](AUTIASP): Remove.
+ [__ASSEMBLER__](ENTRY): Modified.
+ [__ASSEMBLER__](ENTRY_ALIGN): Modified.
+ [__ASSEMBLER__](ENTRY_ALIGN_AND_PAD): Modified.
+ [__ASSEMBLER__](cfi_negate_ra_state): New.
+ [__ASSEMBLER__](GNU_PROPERTY): New.
+ * sysdeps/unix/sysv/linux/aarch64/setcontext.S: Modified.
+ * sysdeps/unix/sysv/linux/aarch64/swapcontext.S: Modified.
+
+2025-05-19 Dylan Fleming <Dylan.Fleming@arm.com>
+
+ COMMIT: 96abd59bf2a11ddd4e7ccaac840ec13c0b62d3ba
+ AArch64: Implement AdvSIMD and SVE atan2pi/f
+
+ * bits/libm-simd-decl-stubs.h: Modified.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_atan2pi): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_atan2pif): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_atan2pil): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_atan2pif16): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_atan2pif32): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_atan2pif64): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_atan2pif128): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_atan2pif32x): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_atan2pif64x): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_atan2pif128x): New.
+ * math/bits/mathcalls.h: Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL_VEC): Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL_VEC): Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL_VEC): Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL_VEC): Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL_VEC): Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL_VEC): New function.
+ * sysdeps/aarch64/fpu/Makefile: Modified.
+ * sysdeps/aarch64/fpu/Versions: Modified.
+ * sysdeps/aarch64/fpu/advsimd_f32_protos.h: Modified.
+ (libmvec_hidden_proto): New function.
+ * sysdeps/aarch64/fpu/atan2pi_advsimd.c: New file.
+ * sysdeps/aarch64/fpu/atan2pi_sve.c: New file.
+ * sysdeps/aarch64/fpu/atan2pif_advsimd.c: New file.
+ * sysdeps/aarch64/fpu/atan2pif_sve.c: New file.
+ * sysdeps/aarch64/fpu/bits/math-vector.h: Modified.
+ [__ADVSIMD_VEC_MATH_SUPPORTED](_ZGVnN4vv_atan2pif): New function.
+ [__ADVSIMD_VEC_MATH_SUPPORTED](_ZGVnN2vv_atanpi2): New function.
+ [__SVE_VEC_MATH_SUPPORTED](_ZGVsMxvv_atan2pif): New function.
+ [__SVE_VEC_MATH_SUPPORTED](_ZGVsMxvv_atan2pi): New function.
+ [__aarch64__ && __FAST_MATH__ && __GNUC_PREREQ (6, 0)](__DECL_SIMD_atan2pi): New.
+ [__aarch64__ && __FAST_MATH__ && __GNUC_PREREQ (6, 0)](__DECL_SIMD_atan2pif): New.
+ * sysdeps/aarch64/fpu/test-double-advsimd-wrappers.c: Modified.
+ * sysdeps/aarch64/fpu/test-double-sve-wrappers.c: Modified.
+ (SVE_VECTOR_WRAPPER_ff): Modified.
+ (SVE_VECTOR_WRAPPER_ff): Modified.
+ (SVE_VECTOR_WRAPPER_ff): New.
+ * sysdeps/aarch64/fpu/test-float-advsimd-wrappers.c: Modified.
+ * sysdeps/aarch64/fpu/test-float-sve-wrappers.c: Modified.
+ (SVE_VECTOR_WRAPPER_ff): Modified.
+ (SVE_VECTOR_WRAPPER_ff): Modified.
+ (SVE_VECTOR_WRAPPER_ff): New.
+ * sysdeps/unix/sysv/linux/aarch64/libmvec.abilist: Modified.
+
+2025-05-19 Dylan Fleming <Dylan.Fleming@arm.com>
+
+ COMMIT: edf620281501fbf314855aa9b321688f280e9220
+ AArch64: Implement AdvSIMD and SVE atanpi/f
+
+ * bits/libm-simd-decl-stubs.h: Modified.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_atanpi): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_atanpif): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_atanpil): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_atanpif16): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_atanpif32): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_atanpif64): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_atanpif128): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_atanpif32x): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_atanpif64x): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_atanpif128x): New.
+ * math/bits/mathcalls.h: Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL_VEC): Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL_VEC): Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL_VEC): Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL_VEC): Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL_VEC): Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL_VEC): New function.
+ * sysdeps/aarch64/fpu/Makefile: Modified.
+ * sysdeps/aarch64/fpu/Versions: Modified.
+ * sysdeps/aarch64/fpu/advsimd_f32_protos.h: Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): New function.
+ * sysdeps/aarch64/fpu/atanpi_advsimd.c: New file.
+ * sysdeps/aarch64/fpu/atanpi_sve.c: New file.
+ * sysdeps/aarch64/fpu/atanpif_advsimd.c: New file.
+ * sysdeps/aarch64/fpu/atanpif_sve.c: New file.
+ * sysdeps/aarch64/fpu/bits/math-vector.h: Modified.
+ [__ADVSIMD_VEC_MATH_SUPPORTED](_ZGVnN4v_atanpif): New function.
+ [__ADVSIMD_VEC_MATH_SUPPORTED](_ZGVnN2v_atanpi): New function.
+ [__SVE_VEC_MATH_SUPPORTED](_ZGVsMxv_atanpif): New function.
+ [__SVE_VEC_MATH_SUPPORTED](_ZGVsMxv_atanpi): New function.
+ [__aarch64__ && __FAST_MATH__ && __GNUC_PREREQ (6, 0)](__DECL_SIMD_atanpi): New.
+ [__aarch64__ && __FAST_MATH__ && __GNUC_PREREQ (6, 0)](__DECL_SIMD_atanpif): New.
+ * sysdeps/aarch64/fpu/test-double-advsimd-wrappers.c: Modified.
+ * sysdeps/aarch64/fpu/test-double-sve-wrappers.c: Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): New.
+ * sysdeps/aarch64/fpu/test-float-advsimd-wrappers.c: Modified.
+ * sysdeps/aarch64/fpu/test-float-sve-wrappers.c: Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): New.
+ * sysdeps/unix/sysv/linux/aarch64/libmvec.abilist: Modified.
+
+2025-05-19 Dylan Fleming <Dylan.Fleming@arm.com>
+
+ COMMIT: 0ef2cf44e7784fc357660d80aed72f195485439f
+ AArch64: Implement AdvSIMD and SVE asinpi/f
+
+ * bits/libm-simd-decl-stubs.h: Modified.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_asinpi): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_asinpif): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_asinpil): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_asinpif16): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_asinpif32): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_asinpif64): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_asinpif128): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_asinpif32x): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_asinpif64x): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_asinpif128x): New.
+ * math/bits/mathcalls.h: Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL_VEC): Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL_VEC): Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL_VEC): Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL_VEC): Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL_VEC): Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL_VEC): New function.
+ * sysdeps/aarch64/fpu/Makefile: Modified.
+ * sysdeps/aarch64/fpu/Versions: Modified.
+ * sysdeps/aarch64/fpu/advsimd_f32_protos.h: Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): New function.
+ * sysdeps/aarch64/fpu/asinpi_advsimd.c: New file.
+ * sysdeps/aarch64/fpu/asinpi_sve.c: New file.
+ * sysdeps/aarch64/fpu/asinpif_advsimd.c: New file.
+ * sysdeps/aarch64/fpu/asinpif_sve.c: New file.
+ * sysdeps/aarch64/fpu/bits/math-vector.h: Modified.
+ [__ADVSIMD_VEC_MATH_SUPPORTED](_ZGVnN4v_asinpif): New function.
+ [__ADVSIMD_VEC_MATH_SUPPORTED](_ZGVnN2v_asinpi): New function.
+ [__SVE_VEC_MATH_SUPPORTED](_ZGVsMxv_asinpif): New function.
+ [__SVE_VEC_MATH_SUPPORTED](_ZGVsMxv_asinpi): New function.
+ [__aarch64__ && __FAST_MATH__ && __GNUC_PREREQ (6, 0)](__DECL_SIMD_asinpi): New.
+ [__aarch64__ && __FAST_MATH__ && __GNUC_PREREQ (6, 0)](__DECL_SIMD_asinpif): New.
+ * sysdeps/aarch64/fpu/test-double-advsimd-wrappers.c: Modified.
+ * sysdeps/aarch64/fpu/test-double-sve-wrappers.c: Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): New.
+ * sysdeps/aarch64/fpu/test-float-advsimd-wrappers.c: Modified.
+ * sysdeps/aarch64/fpu/test-float-sve-wrappers.c: Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): New.
+ * sysdeps/unix/sysv/linux/aarch64/libmvec.abilist: Modified.
+
+2025-05-19 Dylan Fleming <Dylan.Fleming@arm.com>
+
+ COMMIT: 993997ca1b77dfdea27ae56f3afacfab26dd4e60
+ AArch64: Implement AdvSIMD and SVE acospi/f
+
+ * bits/libm-simd-decl-stubs.h: Modified.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_acospi): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_acospif): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_acospil): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_acospif16): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_acospif32): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_acospif64): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_acospif128): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_acospif32x): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_acospif64x): New.
+ [! _BITS_LIBM_SIMD_DECL_STUBS_H](__DECL_SIMD_acospif128x): New.
+ * math/bits/mathcalls.h: Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL_VEC): Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL_VEC): Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL_VEC): Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL_VEC): Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL_VEC): Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL_VEC): New function.
+ * sysdeps/aarch64/fpu/Makefile: Modified.
+ * sysdeps/aarch64/fpu/Versions: Modified.
+ * sysdeps/aarch64/fpu/acospi_advsimd.c: New file.
+ * sysdeps/aarch64/fpu/acospi_sve.c: New file.
+ * sysdeps/aarch64/fpu/acospif_advsimd.c: New file.
+ * sysdeps/aarch64/fpu/acospif_sve.c: New file.
+ * sysdeps/aarch64/fpu/advsimd_f32_protos.h: Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): Modified.
+ (libmvec_hidden_proto): New function.
+ * sysdeps/aarch64/fpu/bits/math-vector.h: Modified.
+ [__ADVSIMD_VEC_MATH_SUPPORTED](_ZGVnN4v_acospif): New function.
+ [__ADVSIMD_VEC_MATH_SUPPORTED](_ZGVnN2v_acospi): New function.
+ [__SVE_VEC_MATH_SUPPORTED](_ZGVsMxv_acospif): New function.
+ [__SVE_VEC_MATH_SUPPORTED](_ZGVsMxv_acospi): New function.
+ [__aarch64__ && __FAST_MATH__ && __GNUC_PREREQ (6, 0)](__DECL_SIMD_acospi): New.
+ [__aarch64__ && __FAST_MATH__ && __GNUC_PREREQ (6, 0)](__DECL_SIMD_acospif): New.
+ * sysdeps/aarch64/fpu/test-double-advsimd-wrappers.c: Modified.
+ * sysdeps/aarch64/fpu/test-double-sve-wrappers.c: Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): New.
+ * sysdeps/aarch64/fpu/test-float-advsimd-wrappers.c: Modified.
+ * sysdeps/aarch64/fpu/test-float-sve-wrappers.c: Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): Modified.
+ (SVE_VECTOR_WRAPPER): New.
+ * sysdeps/unix/sysv/linux/aarch64/libmvec.abilist: Modified.
+
+2025-05-19 Dylan Fleming <Dylan.Fleming@arm.com>
+
+ COMMIT: 1e84509e0041c0a83997aba602a585bb3b8285f0
+ AArch64: Optimize inverse trig functions
+
+ * sysdeps/aarch64/fpu/acos_advsimd.c: Modified.
+ (poly_advsimd_f64.h): Remove include.
+ (data): Modified.
+ (V_NAME_D1): Modified function.
+ * sysdeps/aarch64/fpu/acos_sve.c: Modified.
+ (poly_sve_f64.h): Remove include.
+ (data): Modified.
+ (SV_NAME_D1): Modified function.
+ * sysdeps/aarch64/fpu/asin_advsimd.c: Modified.
+ (poly_advsimd_f64.h): Remove include.
+ (data): Modified.
+ (V_NAME_D1): Modified function.
+ * sysdeps/aarch64/fpu/asin_sve.c: Modified.
+ (poly_sve_f64.h): Remove include.
+ (data): Modified.
+ (P): Remove.
+ (SV_NAME_D1): Modified function.
+ * sysdeps/aarch64/fpu/asinf_advsimd.c: Modified.
+ (poly_advsimd_f32.h): Remove include.
+ (data): Modified.
+ (Half): Remove.
+ (V_NAME_F1): Modified function.
+ * sysdeps/aarch64/fpu/atan2_advsimd.c: Modified.
+ (poly_advsimd_f64.h): Remove include.
+ (data): Modified.
+ (V_NAME_D2): Modified function.
+ * sysdeps/aarch64/fpu/atan2_sve.c: Modified.
+ (poly_sve_f64.h): Remove include.
+ (data): Modified.
+ (SV_NAME_D2): Modified function.
+ * sysdeps/aarch64/fpu/atan2f_advsimd.c: Modified.
+ (poly_advsimd_f32.h): Remove include.
+ (data): Modified.
+ (zeroinfnan): Modified function.
+ (V_NAME_F2): Modified function.
+ * sysdeps/aarch64/fpu/atan2f_sve.c: Modified.
+ (poly_sve_f32.h): Remove include.
+ (data): Modified.
+ (SV_NAME_F2): Modified function.
+ * sysdeps/aarch64/fpu/atan_advsimd.c: Modified.
+ (poly_advsimd_f64.h): Remove include.
+ (data): Modified.
+ (V_NAME_D1): Modified function.
+ * sysdeps/aarch64/fpu/atan_sve.c: Modified.
+ (poly_sve_f64.h): Remove include.
+ (data): Modified.
+ (SV_NAME_D1): Modified function.
+ * sysdeps/aarch64/fpu/atanf_advsimd.c: Modified.
+ [WANT_SIMD_EXCEPT](TinyBound): New.
+ [WANT_SIMD_EXCEPT](BigBound): New.
+ (data): Modified.
+ (SignMask): Remove.
+ (P): Remove.
+ (TinyBound): Remove.
+ (BigBound): Remove.
+ (V_NAME_F1): Modified function.
+ * sysdeps/aarch64/fpu/atanf_sve.c: Modified.
+ (poly_sve_f32.h): Remove include.
+ (data): Modified.
+ (SV_NAME_F1): Modified function.
+
+2025-05-16 Carlos O'Donell <carlos@redhat.com>
+
+ COMMIT: 1e18586c5820e329f741d5c710275e165581380e
+ Document CVE-2025-4802.
+
+ * advisories/GLIBC-SA-2025-0002: New file.
+
+2025-05-16 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 2745db8dd3ec31045acd761b612516490085bc20
+ ctype: Fallback initialization of TLS using relocations (bug 19341, bug 32483)
+
+ * ctype/Makefile: Modified.
+ * ctype/ctype-info.c: Modified.
+ (__libc_tsd_CTYPE_B): Remove.
+ (__libc_tsd_CTYPE_TOLOWER): Remove.
+ (__libc_tsd_CTYPE_TOUPPER): Remove.
+ (__libc_tsd_CTYPE_B): New.
+ (__libc_tsd_CTYPE_TOLOWER): New.
+ (__libc_tsd_CTYPE_TOUPPER): New.
+ * ctype/tst-ctype-tls-dlmopen.c: New file.
+ * ctype/tst-ctype-tls-dlopen-static.c: New file.
+ * ctype/tst-ctype-tls-mod.c: New file.
+ * ctype/tst-ctype-tls-skeleton.c: New file.
+
+2025-05-16 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: e0c0f856f58ceb68800a964c36c15c606e7a8c4c
+ Use proper extern declaration for _nl_C_LC_CTYPE_{class,toupper,tolower}
+
+ * ctype/ctype-info.c: Modified.
+ [SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3)](_nl_C_LC_CTYPE_class): Remove.
+ [SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3)](_nl_C_LC_CTYPE_toupper): Remove.
+ [SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3)](_nl_C_LC_CTYPE_tolower): Remove.
+ * include/ctype.h: Modified.
+ [! _ISOMAC][IS_IN (libc)](_nl_C_LC_CTYPE_class): New.
+ [! _ISOMAC][IS_IN (libc)](_nl_C_LC_CTYPE_toupper): New.
+ [! _ISOMAC][IS_IN (libc)](_nl_C_LC_CTYPE_tolower): New.
+ * locale/xlocale.c: Modified.
+ (_nl_C_LC_CTYPE_class): Remove.
+ (_nl_C_LC_CTYPE_toupper): Remove.
+ (_nl_C_LC_CTYPE_tolower): Remove.
+ (ctype.h): Include file.
+
+2025-05-16 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: a894f04d877653bea1639fc9a4adf73bd9347bf4
+ Optimize __libc_tsd_* thread variable access
+
+ * include/ctype.h: Modified.
+ [! _ISOMAC][IS_IN (libc)](__libc_tsd_CTYPE_B): Modified.
+ [! _ISOMAC][IS_IN (libc)](__libc_tsd_CTYPE_TOUPPER): Modified.
+ [! _ISOMAC][IS_IN (libc)](__libc_tsd_CTYPE_TOLOWER): Modified.
+ * include/rpc/rpc.h: Modified.
+ [! _ISOMAC](__libc_tsd_RPC_VARS): Modified.
+ * locale/localeinfo.h: Modified.
+ (__libc_tsd_LOCALE): Modified.
+
+2025-05-16 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 10a66a8e421b09682b774c795ef1da402235dddc
+ Remove <libc-tsd.h>
+
+ * ctype/ctype-info.c: Modified.
+ (__libc_tsd_define): Remove function.
+ (__libc_tsd_CTYPE_B): New.
+ (__libc_tsd_CTYPE_TOLOWER): New.
+ (__libc_tsd_CTYPE_TOUPPER): New.
+ (__ctype_init): New function.
+ * include/ctype.h: Modified.
+ [! _ISOMAC][IS_IN (libc)](libc-tsd.h): Remove include.
+ [! _ISOMAC][IS_IN (libc)](__libc_tsd_define): Remove function.
+ [! _ISOMAC][IS_IN (libc)](__ctype_toupper_loc): Modified function.
+ [! _ISOMAC][IS_IN (libc)](__ctype_tolower_loc): Modified function.
+ [! _ISOMAC][IS_IN (libc)](__libc_tsd_CTYPE_B): New.
+ [! _ISOMAC][IS_IN (libc)](__libc_tsd_CTYPE_TOUPPER): New.
+ [! _ISOMAC][IS_IN (libc)](__libc_tsd_CTYPE_TOLOWER): New.
+ [! _ISOMAC][IS_IN (libc)](__ctype_b_loc): New function.
+ * include/rpc/rpc.h: Modified.
+ [! _ISOMAC](libc-tsd.h): Remove include.
+ [! _ISOMAC](__libc_tsd_define): Remove.
+ [! _ISOMAC](__libc_tsd_RPC_VARS): New.
+ [! _ISOMAC](libc_hidden_proto): New.
+ [! _ISOMAC](libc_hidden_proto): New.
+ [! _ISOMAC](libc_hidden_proto): New.
+ [! _ISOMAC](libc_hidden_proto): New.
+ [! _ISOMAC](__libc_rpc_gethostbyname): New function.
+ * locale/lc-ctype.c: Modified.
+ (_nl_postload_ctype): Modified function.
+ * locale/localeinfo.h: Modified.
+ [SHARED][NL_CURRENT_INDIRECT][! HAVE_ASM_SET_DIRECTIVE](_NL_CURRENT_DEFINE_ABS): Remove.
+ [SHARED][NL_CURRENT_INDIRECT][! HAVE_ASM_SET_DIRECTIVE](__libc_tsd_define): Remove.
+ [SHARED][NL_CURRENT_INDIRECT][HAVE_ASM_SET_DIRECTIVE](_NL_CURRENT_DEFINE_ABS): Remove.
+ [SHARED][NL_CURRENT_INDIRECT][HAVE_ASM_SET_DIRECTIVE](__libc_tsd_define): Remove.
+ [SHARED][NL_CURRENT_INDIRECT][HAVE_ASM_SET_DIRECTIVE](_NL_CURRENT_DATA): Remove.
+ [SHARED][NL_CURRENT_INDIRECT][HAVE_ASM_SET_DIRECTIVE](_NL_CURRENT): Remove.
+ [SHARED][NL_CURRENT_INDIRECT][HAVE_ASM_SET_DIRECTIVE](_NL_CURRENT_WSTR): Remove.
+ [SHARED][NL_CURRENT_INDIRECT][HAVE_ASM_SET_DIRECTIVE](_NL_CURRENT_WORD): Remove.
+ [SHARED][NL_CURRENT_INDIRECT][HAVE_ASM_SET_DIRECTIVE](_NL_CURRENT_DEFINE): Remove.
+ [SHARED][NL_CURRENT_INDIRECT][HAVE_ASM_SET_DIRECTIVE](__libc_tsd_define): Remove.
+ [SHARED][NL_CURRENT_INDIRECT](DEFINE_CATEGORY): Remove.
+ [SHARED][NL_CURRENT_INDIRECT](categories.def): Remove.
+ [SHARED][NL_CURRENT_INDIRECT](DEFINE_CATEGORY): Remove.
+ [SHARED][NL_CURRENT_INDIRECT](_NL_CURRENT_DATA): Remove.
+ [SHARED][NL_CURRENT_INDIRECT](_NL_CURRENT): Remove.
+ [SHARED][NL_CURRENT_INDIRECT](_NL_CURRENT_WSTR): Remove.
+ [SHARED][NL_CURRENT_INDIRECT](_NL_CURRENT_WORD): Remove.
+ [SHARED][NL_CURRENT_INDIRECT](_NL_CURRENT_DEFINE): Remove.
+ [SHARED][NL_CURRENT_INDIRECT](__libc_tsd_define): Remove.
+ [SHARED][NL_CURRENT_INDIRECT](_nl_lookup_word): Remove.
+ [SHARED][NL_CURRENT_INDIRECT](_nl_default_locale_path): Remove.
+ [SHARED][NL_CURRENT_INDIRECT](_nl_find_locale): Remove.
+ [SHARED][NL_CURRENT_INDIRECT](_nl_load_locale): Remove.
+ [SHARED][NL_CURRENT_INDIRECT](_nl_unload_locale): Remove.
+ [SHARED][NL_CURRENT_INDIRECT](_nl_remove_locale): Remove.
+ [SHARED][NL_CURRENT_INDIRECT](_nl_load_locale_from_archive): Remove.
+ [SHARED][NL_CURRENT_INDIRECT](_nl_archive_subfreeres): Remove.
+ [SHARED][NL_CURRENT_INDIRECT](_nl_locale_subfreeres): Remove.
+ [SHARED][NL_CURRENT_INDIRECT](_nl_intern_locale_data): Remove.
+ [SHARED][NL_CURRENT_INDIRECT](_nl_get_era_entry): Remove.
+ [SHARED][NL_CURRENT_INDIRECT](_nl_select_era_entry): Remove.
+ [SHARED][NL_CURRENT_INDIRECT](_nl_get_alt_digit): Remove.
+ [SHARED][NL_CURRENT_INDIRECT](_nl_get_walt_digit): Remove.
+ [SHARED][NL_CURRENT_INDIRECT](_nl_parse_alt_digit): Remove.
+ [SHARED][NL_CURRENT_INDIRECT](_nl_postload_ctype): Remove.
+ [SHARED][NL_CURRENT_INDIRECT](_nl_cleanup_ctype): Remove.
+ [SHARED][NL_CURRENT_INDIRECT](_nl_cleanup_time): Remove.
+ (_NL_CURRENT_LOCALE): Modified.
+ (libc-tsd.h): Remove include.
+ [! NL_CURRENT_INDIRECT](_NL_CURRENT_DATA): New.
+ [! NL_CURRENT_INDIRECT](_NL_CURRENT): New.
+ [! NL_CURRENT_INDIRECT](_NL_CURRENT_WSTR): New.
+ [! NL_CURRENT_INDIRECT](_NL_CURRENT_WORD): New.
+ [! NL_CURRENT_INDIRECT](_NL_CURRENT_DEFINE): New.
+ [NL_CURRENT_INDIRECT][! HAVE_ASM_SET_DIRECTIVE](_NL_CURRENT_DEFINE_ABS): New.
+ [NL_CURRENT_INDIRECT][HAVE_ASM_SET_DIRECTIVE](_NL_CURRENT_DEFINE_ABS): New.
+ [NL_CURRENT_INDIRECT](DEFINE_CATEGORY): New.
+ [NL_CURRENT_INDIRECT](categories.def): New.
+ [NL_CURRENT_INDIRECT](DEFINE_CATEGORY): New.
+ [NL_CURRENT_INDIRECT](_NL_CURRENT_DATA): New.
+ [NL_CURRENT_INDIRECT](_NL_CURRENT): New.
+ [NL_CURRENT_INDIRECT](_NL_CURRENT_WSTR): New.
+ [NL_CURRENT_INDIRECT](_NL_CURRENT_WORD): New.
+ [NL_CURRENT_INDIRECT](_NL_CURRENT_DEFINE): New.
+ (__libc_tsd_LOCALE): New.
+ (_nl_lookup): New function.
+ (_nl_lookup_wstr): New function.
+ (_nl_lookup_word): New function.
+ (_nl_default_locale_path): New.
+ (_nl_find_locale): New function.
+ (_nl_load_locale): New function.
+ (_nl_unload_locale): New function.
+ (_nl_remove_locale): New function.
+ (_nl_load_locale_from_archive): New function.
+ (_nl_archive_subfreeres): New function.
+ (_nl_locale_subfreeres): New function.
+ (_nl_intern_locale_data): New function.
+ (_nl_get_era_entry): New function.
+ (_nl_select_era_entry): New function.
+ (_nl_get_alt_digit): New function.
+ (_nl_get_walt_digit): New function.
+ (_nl_parse_alt_digit): New function.
+ (_nl_postload_ctype): New function.
+ (_nl_cleanup_ctype): New function.
+ (_nl_cleanup_time): New function.
+ * locale/uselocale.c: Modified.
+ (__uselocale): Modified function.
+ * stdio-common/printf-parsemb.c: Modified.
+ (errno.h): Include file.
+ * string/strerror.c: Modified.
+ (strerror): Modified function.
+ * sunrpc/rpc_thread.c: Modified.
+ (libc-tsd.h): Remove include.
+ * sysdeps/generic/libc-tsd.h: Delete file.
+ * time/strftime_l.c: Modified.
+ (errno.h): Include file.
+
+2025-05-16 DJ Delorie <dj@redhat.com>
+
+ COMMIT: 579f8668816b35f8302e89e5255aff60b81938df
+ manual: add sched_getcpu()
+
+ * manual/resource.texi: Modified.
+
+2025-05-16 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 6c9bb270d6a624f82a38443545e3d99f5b1e07e1
+ manual: Clarifications for listing directories
+
+ * manual/filesys.texi: Modified.
+
+2025-05-15 DJ Delorie <dj@redhat.com>
+
+ COMMIT: 21e54f160f6245f959cca1f48bad9cca487c2570
+ manual: add remaining CPU_* macros
+
+ * manual/resource.texi: Modified.
+
+2025-05-15 Andreas Schwab <schwab@suse.de>
+
+ COMMIT: eb7a681b829b784348557967a8eaa60259777f8b
+ powerpc: Remove check for -mabi=ibmlongdouble
+
+ * sysdeps/unix/sysv/linux/powerpc/configure: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/configure.ac: Modified.
+
+2025-05-15 Yury Khrustalev <yury.khrustalev@arm.com>
+
+ COMMIT: 251f93262483b9c1184f5b72993d77a5d1c95f68
+ aarch64: update tests for SME
+
+ * sysdeps/aarch64/Makefile: Modified.
+ * sysdeps/aarch64/tst-sme-helper.h: New file.
+ * sysdeps/aarch64/tst-sme-jmp.c: Modified.
+ (blk): Remove.
+ (svl): Remove.
+ (get_svl): Remove function.
+ (start_za): Remove function.
+ (get_svcr): Remove function.
+ (load_za): Remove function.
+ (set_tpidr2): Remove function.
+ (get_tpidr2): Remove function.
+ (longjmp_test): Modified function.
+ (tst-sme-helper.h): Include file.
+ * sysdeps/aarch64/tst-sme-za-state.c: New file.
+
+2025-05-15 Yury Khrustalev <yury.khrustalev@arm.com>
+
+ COMMIT: a7f6fd976c17b82dc198290b4ab7087f35855a0e
+ aarch64: Disable ZA state of SME in setjmp and sigsetjmp
+
+ * sysdeps/aarch64/setjmp.S: Modified.
+
+2025-05-15 Cupertino Miranda <cupertino.miranda@oracle.com>
+
+ COMMIT: c6bf6d1897c9f2eebf7efd0eef231025764bf146
+ benchtest: malloc tcache hotpath benchtest
+
+ * benchtests/Makefile: Modified.
+ * benchtests/bench-calloc-tcache.c: New file.
+ * benchtests/bench-malloc-tcache.c: New file.
+
+2025-05-14 Joseph Myers <josmyers@redhat.com>
+
+ COMMIT: 06caf53adfae0c93062edd62f83eed16ab5cec0b
+ Implement C23 rootn.
+
+ * NEWS: Modified.
+ * manual/math.texi: Modified.
+ * math/Makefile: Modified.
+ * math/Versions: Modified.
+ * math/auto-libm-test-in: Modified.
+ * math/auto-libm-test-out-rootn: New file.
+ * math/bits/mathcalls.h: Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL): Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL): New function.
+ * math/gen-auto-libm-tests.c: Modified.
+ * math/gen-tgmath-tests.py: Modified.
+ * math/libm-test-rootn.inc: New file.
+ * math/s_rootn_template.c: New file.
+ * math/test-tgmath.c: Modified.
+ [! HAVE_MAIN](NCALLS): Modified.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](TYPE): Modified.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](TYPE): Modified.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](TYPE): Modified.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](TYPE): New.
+ [HAVE_MAIN](F): New function.
+ * math/tgmath.h: Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](rootn): New.
+ * sysdeps/ieee754/ldbl-128ibm-compat/Versions: Modified.
+ * sysdeps/ieee754/ldbl-opt/Makefile: Modified.
+ * sysdeps/ieee754/ldbl-opt/nldbl-rootn.c: New file.
+ * sysdeps/mach/hurd/i386/libm.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/aarch64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/alpha/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arc/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arm/be/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arm/le/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/csky/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/hppa/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/i386/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/loongarch/lp64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/microblaze/be/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/microblaze/le/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips32/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/or1k/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/riscv/rv32/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/riscv/rv64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sh/be/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sh/le/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/x86_64/64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist: Modified.
+
+2025-05-14 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: 36189c76fb9c0b281de23381ae5a462a7e102ee6
+ malloc: Improve performance of __libc_calloc
+
+ * malloc/malloc.c: Modified.
+ [IS_IN (libc)](__libc_calloc): Modified function.
+ [IS_IN (libc)](__libc_calloc2): New function.
+ [IS_IN (libc)](__libc_calloc2): New function.
+ [USE_TCACHE](tcache_calloc_init): New function.
+
+2025-05-14 Stefan Liebler <stli@linux.ibm.com>
+
+ COMMIT: 0fc76d876261ee8253fef198ffec48c832edd4ff
+ S390: Use cfi_val_offset instead of cfi_escape.
+
+ * sysdeps/generic/sysdep.h: Modified.
+ [! __ASSEMBLER__](CFI_VAL_OFFSET): New.
+ [__ASSEMBLER__](cfi_val_offset): New.
+ * sysdeps/s390/s390-64/s390x-mcount.h: Modified.
+
+2025-05-14 Stefan Liebler <stli@linux.ibm.com>
+
+ COMMIT: 4b1ffb828c374e39377a5427151f69bb1ac2bdcc
+ powerpc64le: Remove configure check for objcopy >= 2.26.
+
+ * INSTALL: Modified.
+ * manual/install.texi: Modified.
+ * sysdeps/powerpc/powerpc64/le/configure: Modified.
+ * sysdeps/powerpc/powerpc64/le/configure.ac: Modified.
+
+2025-05-14 Stefan Liebler <stli@linux.ibm.com>
+
+ COMMIT: e53ab20892771a9b7f26701c30a181c6cea5e4bd
+ Raise the minimum binutils version to 2.39
+
+ * INSTALL: Modified.
+ * NEWS: Modified.
+ * configure: Modified.
+ * configure.ac: Modified.
+ * manual/install.texi: Modified.
+
+2025-05-13 Paul Zimmermann <Paul.Zimmermann@inria.fr>
+
+ COMMIT: ad966bc4efd9e69cbbda2073121cc68f1deb9588
+ added benchtest inputs for log2l
+
+ * benchtests/Makefile: Modified.
+ * benchtests/log2l-inputs: New file.
+
+2025-05-13 Paul Zimmermann <Paul.Zimmermann@inria.fr>
+
+ COMMIT: aa4c6004830072353d41184f2db86c9c40523591
+ added benchtest inputs for expl
+
+ * benchtests/Makefile: Modified.
+ * benchtests/expl-inputs: New file.
+
+2025-05-13 Yury Khrustalev <yury.khrustalev@arm.com>
+
+ COMMIT: 691edbdf7727466ba87e27a8eeae1c3bc5824ef5
+ aarch64: fix unwinding in longjmp
+
+ * sysdeps/aarch64/__longjmp.S: Modified.
+
+2025-05-13 Paul Zimmermann <Paul.Zimmermann@inria.fr>
+
+ COMMIT: 2d9f479f378f75114496e2cbf073e0d6a49a2d5f
+ added benchtest inputs for powl
+
+ * benchtests/Makefile: Modified.
+ * benchtests/powl-inputs: New file.
+
+2025-05-13 Paul Zimmermann <Paul.Zimmermann@inria.fr>
+
+ COMMIT: 442ddedc07c006523224827cae1ae27102d8108e
+ added benchtest inputs for fmal
+
+ * benchtests/Makefile: Modified.
+ * benchtests/fmal-inputs: New file.
+
+2025-05-12 DJ Delorie <dj@redhat.com>
+
+ COMMIT: f176bf2a06b458dea8186fb2ff3bb8ea24da6d67
+ manual: fix typo for sched_[sg]etattr
+
+ * manual/resource.texi: Modified.
+
+2025-05-12 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: 25d37948c9f3f483d63302b9967b975d3bd74a4e
+ malloc: Improve malloc initialization
+
+ * elf/libc_early_init.c: Modified.
+ (__libc_early_init): Modified function.
+ (malloc/malloc-internal.h): Include file.
+ * malloc/arena.c: Modified.
+ (__malloc_initialized): Remove.
+ (__malloc_fork_lock_parent): Modified function.
+ (__malloc_fork_unlock_parent): Modified function.
+ (__malloc_fork_unlock_child): Modified function.
+ (ptmalloc_init): Remove function.
+ (__ptmalloc_init): New function.
+ * malloc/malloc-check.c: Modified.
+ (initialize_malloc_check): Modified function.
+ * malloc/malloc-internal.h: Modified.
+ (__ptmalloc_init): New function.
+ * malloc/malloc.c: Modified.
+ [IS_IN (libc)](__libc_malloc2): Modified function.
+ [IS_IN (libc)](__libc_realloc): Modified function.
+ [IS_IN (libc)](__libc_memalign): Modified function.
+ [IS_IN (libc)](aligned_alloc): Modified function.
+ [IS_IN (libc)](__libc_valloc): Modified function.
+ [IS_IN (libc)](__libc_pvalloc): Modified function.
+ [IS_IN (libc)](__libc_calloc): Modified function.
+ [IS_IN (libc)](__posix_memalign): Modified function.
+ [USE_TCACHE](malloc_printerr_tail): Modified function.
+ [USE_TCACHE](dummy_var): New.
+ (__malloc_trim): Modified function.
+ (__libc_mallinfo2): Modified function.
+ (__malloc_stats): Modified function.
+ (__libc_mallopt): Modified function.
+ (__malloc_info): Modified function.
+
+2025-05-12 Joseph Myers <josmyers@redhat.com>
+
+ COMMIT: f451a02a8c3c0bc6b41dac5e9e6ad49dd1c9529c
+ Document all CLOCK_* values
+
+ * manual/time.texi: Modified.
+
+2025-05-12 David Lau <david.lau@fau.de>
+
+ COMMIT: eff1f680cffb005a5623d1c8a952d095b988d6a2
+ malloc: Improved double free detection in the tcache
+
+ * malloc/Makefile: Modified.
+ * malloc/malloc.c: Modified.
+ [IS_IN (libc)](__libc_free): Modified function.
+ [USE_TCACHE](tcache_double_free_verify): Modified function.
+ * malloc/tst-tcfree4.c: New file.
+
+2025-05-12 panzhe0328 <panzhe@kylinos.cn>
+
+ COMMIT: e83207c6e67f81b2db4def8149cd3697a0237f89
+ Correct spelling mistake in test file
+
+ * localedata/tst-locale.sh: Modified.
+
+2025-05-12 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ COMMIT: 2ae4ec56c2b18c46ef8220bcddac4303a4b6ef1c
+ hurd: Make rename refuse trailing slashes [BZ #32570]
+
+ * sysdeps/mach/hurd/renameat2.c: Modified.
+ (__renameat2): Modified function.
+
+2025-05-09 Joseph Myers <josmyers@redhat.com>
+
+ COMMIT: ae312544325724509ca734fcade2a05497f92b26
+ Implement C23 compoundn
+
+ * NEWS: Modified.
+ * manual/math.texi: Modified.
+ * math/Makefile: Modified.
+ * math/Versions: Modified.
+ * math/auto-libm-test-in: Modified.
+ * math/auto-libm-test-out-compoundn: New file.
+ * math/bits/mathcalls.h: Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL): Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL): Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL): Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL): New function.
+ * math/gen-auto-libm-tests.c: Modified.
+ * math/gen-tgmath-tests.py: Modified.
+ * math/libm-test-compoundn.inc: New file.
+ * math/s_compoundn_template.c: New file.
+ * math/test-tgmath.c: Modified.
+ [! HAVE_MAIN](NCALLS): Modified.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](TYPE): Modified.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](TYPE): Modified.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](TYPE): Modified.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](TYPE): New.
+ [HAVE_MAIN](F): New function.
+ * math/tgmath.h: Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](compoundn): New.
+ * sysdeps/ieee754/ldbl-128ibm-compat/Versions: Modified.
+ * sysdeps/ieee754/ldbl-opt/Makefile: Modified.
+ * sysdeps/ieee754/ldbl-opt/nldbl-compoundn.c: New file.
+ * sysdeps/mach/hurd/i386/libm.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libm.abilist: Modified.
+ * sysdeps/powerpc/powerpc64/le/fpu/multiarch/Makefile: Modified.
+ * sysdeps/powerpc/powerpc64/le/fpu/multiarch/float128-ifunc-redirects.h: Modified.
+ (F128_REDIR_PFX_R): New function.
+ * sysdeps/powerpc/powerpc64/le/fpu/multiarch/float128_private.h: Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ * sysdeps/powerpc/powerpc64/le/fpu/multiarch/math-type-macros-float128.h: Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): Modified.
+ [_F128_ENABLE_IFUNC](F128_REDIR): New function.
+ * sysdeps/unix/sysv/linux/aarch64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/alpha/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arc/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arm/be/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arm/le/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/csky/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/hppa/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/i386/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/loongarch/lp64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/microblaze/be/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/microblaze/le/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips32/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/or1k/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/riscv/rv32/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/riscv/rv64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sh/be/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sh/le/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/x86_64/64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist: Modified.
+
+2025-05-09 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: f66cb3c9ebcac80b3200c3aff0e3aed6111547ba
+ hurd: Fix tst-stack2 test build on Hurd
+
+ * sysdeps/pthread/Makefile: Modified.
+
+2025-05-06 Collin Funk <collin.funk1@gmail.com>
+
+ COMMIT: b4495bd40578b455668887b9170059bb0d3c0dc5
+ nss: remove undefined behavior and optimize getaddrinfo
+
+ * nss/getaddrinfo.c: Modified.
+ (fls): Remove function.
+ (rfc3484_sort): Modified function.
+ (stdbit.h): Include file.
+
+2025-05-06 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: ac4e8382899ccf4ada1cd2f1dafdcdf40d31ec7d
+ powerpc: Remove POWER7 strncasecmp optimization
+
+ * sysdeps/powerpc/powerpc32/power4/multiarch/Makefile: Modified.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list.c: Modified.
+ (__libc_ifunc_impl_list): Modified function.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/strncase-power7.c: Delete file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/strncase.c: Delete file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/strncase_l-power7.c: Delete file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/strncase_l.c: Delete file.
+ * sysdeps/powerpc/powerpc64/multiarch/Makefile: Modified.
+ * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c: Modified.
+ (__libc_ifunc_impl_list): Modified function.
+ * sysdeps/powerpc/powerpc64/multiarch/strncase-power7.c: Delete file.
+ * sysdeps/powerpc/powerpc64/multiarch/strncase.c: Modified.
+ (__strncasecmp_power7): Remove.
+ (libc_ifunc): Modified.
+ * sysdeps/powerpc/powerpc64/multiarch/strncase_l-power7.c: Delete file.
+ * sysdeps/powerpc/powerpc64/multiarch/strncase_l.c: Delete file.
+
+2025-05-05 DJ Delorie <dj@redhat.com>
+
+ COMMIT: 3270c50e4853d9356eb5892364c52cd1558860ec
+ manual: add more pthread functions
+
+ * manual/threads.texi: Modified.
+
+2025-05-05 Stefan Liebler <stli@linux.ibm.com>
+
+ COMMIT: 4f6dae219578d6df475864e273da40bde9d30806
+ S390: Add new s390 platform z17.
+
+ * elf/Makefile: Modified.
+ * elf/tst-glibc-hwcaps-cache.script: Modified.
+ * sysdeps/s390/cpu-features.c: Modified.
+ (S390_COPY_CPU_FEATURES): Modified.
+ (TUNABLE_CALLBACK): Modified function.
+ (init_cpu_features): Modified function.
+ (init_cpu_features_no_tunables): New function.
+ * sysdeps/s390/cpu-features.h: Modified.
+ (S390_STFLE_BITS_Z10): Remove.
+ (S390_STFLE_BITS_Z196): Remove.
+ (S390_STFLE_BITS_ARCH13_MIE3): Remove.
+ (S390_STFLE_MASK_ARCH13_MIE3): Remove.
+ (S390_IS_ARCH13_MIE3): Modified.
+ (S390_IS_Z196): Modified.
+ (S390_IS_Z10): Modified.
+ (cpu_features): Modified.
+ (S390_STFLE_BIT34_Z10): New.
+ (S390_STFLE_BIT45_Z196): New.
+ (S390_STFLE_BIT61_ARCH13_MIE3): New.
+ (S390_STFLE_BIT84_ARCH15_MIE4): New.
+ (S390_STFLE_BIT198_ARCH15_VXRS_EXT3): New.
+ (S390_STFLE_BIT199_ARCH15_VXRS_PDE3): New.
+ (S390_STFLE_BIT201_ARCH15_CON): New.
+ (S390_IS_ARCH15): New.
+ * sysdeps/s390/dl-diagnostics-cpu.c: New file.
+ * sysdeps/s390/multiarch/ifunc-impl-list.c: Modified.
+ (__libc_ifunc_impl_list): Modified function.
+ * sysdeps/s390/multiarch/ifunc-resolve.h: Modified.
+ (s390_libc_ifunc_expr_stfle_init): Modified.
+ * sysdeps/s390/s390-64/Makefile: Modified.
+ * sysdeps/s390/s390-64/dl-hwcap-check.h: Modified.
+ (dl_hwcap_check): Modified function.
+ * sysdeps/s390/s390-64/dl-hwcaps-subdirs.c: Modified.
+ (_dl_hwcaps_subdirs): Modified.
+ (<anonymous>): Modified.
+ (_dl_hwcaps_subdirs_active): Modified function.
+ (cpu-features.h): Include file.
+ * sysdeps/s390/s390-64/tst-glibc-hwcaps.c: Modified.
+ (compute_level): Modified function.
+ (do_test): Modified function.
+ (marker6): New function.
+ * sysdeps/unix/sysv/linux/s390/sysconf.c: Modified.
+ (get_cache_info): Modified function.
+
+2025-05-01 Joseph Myers <josmyers@redhat.com>
+
+ COMMIT: 59f64a1f4f3bbe2bcaf8fc1951b94e1d0e7d307e
+ Correct test descriptors in libm-test-pown.inc
+
+ * math/libm-test-pown.inc: Modified.
+
+2025-05-01 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: 5d101745814b9c1d59fb830bb044f702437f3002
+ malloc: Inline tcache_try_malloc
+
+ * malloc/malloc.c: Modified.
+ [IS_IN (libc)](__libc_malloc): Modified function.
+ [IS_IN (libc)](_mid_memalign): Modified function.
+ [IS_IN (libc)](__libc_calloc): Modified function.
+ [USE_TCACHE](usize2tidx): Modified.
+ [USE_TCACHE](tcache_try_malloc): Remove function.
+
+2025-04-29 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 84977600dace5a7cfcb0918e6757939fd4969839
+ math: Fix UB on sinpif (BZ 32925)
+
+ * sysdeps/ieee754/flt-32/s_sinpif.c: Modified.
+ (__sinpif): Modified function.
+
+2025-04-29 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 7a0d7fb25c22cc7237315792b0f340ec49e3783f
+ math: Fix UB on erfcf (BZ 32924)
+
+ * sysdeps/ieee754/flt-32/s_erfcf.c: Modified.
+ (__erfcf): Modified function.
+
+2025-04-29 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 8eeb7de8a200a43c914cfa230a25b84d3269cae2
+ math: Fix UB on cospif (BZ 32923)
+
+ * sysdeps/ieee754/flt-32/s_cospif.c: Modified.
+ (__cospif): Modified function.
+
+2025-04-29 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 7619c1b032229a36606862ebbb06807792bbe57d
+ math: Fix UB on cbrtf (BZ 32922)
+
+ * sysdeps/ieee754/flt-32/s_cbrtf.c: Modified.
+ (__cbrtf): Modified function.
+
+2025-04-29 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: c8775c0423f594543994eea268065e71b76effb0
+ math: Fix UB on sinhf (BZ 32921)
+
+ * sysdeps/ieee754/flt-32/e_sinhf.c: Modified.
+ (__ieee754_sinhf): Modified function.
+
+2025-04-29 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: de0c4adf94a379873c0167f792519e91df28c3ed
+ math: Fix UB on logf (BZ 32920)
+
+ * sysdeps/ieee754/flt-32/e_logf.c: Modified.
+ (__logf): Modified function.
+
+2025-04-29 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 4a1b96bf522406a6ed04eb6040f61c6205cff99e
+ math: Fix UB on coshf (BZ 32919)
+
+ * sysdeps/ieee754/flt-32/e_coshf.c: Modified.
+ (__ieee754_coshf): Modified function.
+
+2025-04-29 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 92f7b6061d867c5e5f26e84c44a3ec2887bf6c81
+ math: Fix UB on atanhf (BZ 32918)
+
+ * sysdeps/ieee754/flt-32/e_atanhf.c: Modified.
+ (__ieee754_atanhf): Modified function.
+
+2025-04-28 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 0c3425942374e72c3bcac28b2578117d36b0f9df
+ nptl: Fix pthread_getattr_np when modules with execstack are allowed (BZ 32897)
+
+ * elf/dl-execstack-tunable.c: Modified.
+ (_dl_handle_execstack_tunable): Modified function.
+ * elf/dl-execstack.c: Modified.
+ (_dl_make_stack_executable): Modified function.
+ * elf/dl-load.c: Modified.
+ [! EXTERNAL_MAP_FROM_FD](_dl_map_object_from_fd): Modified function.
+ (_dl_map_new_object): Modified function.
+ * sysdeps/generic/ldsodefs.h: Modified.
+ (_dl_make_stack_executable): Modified.
+ * sysdeps/mach/hurd/dl-execstack.c: Modified.
+ (_dl_make_stack_executable): Modified function.
+ * sysdeps/pthread/Makefile: Modified.
+ * sysdeps/pthread/tst-stack2-mod.c: New file.
+ * sysdeps/pthread/tst-stack2.c: New file.
+ * sysdeps/unix/sysv/linux/dl-execstack.c: Modified.
+ (_dl_make_stack_executable): Modified function.
+
+2025-04-28 Julian Zhu <julian.oerv@isrc.iscas.ac.cn>
+
+ COMMIT: 4c966c078036abe0e36bd86c9eaeb4501e552977
+ RISC-V: Use builtin for ffs and ffsll while supported extension available
+
+ * sysdeps/riscv/math-use-builtins-ffs.h: New file.
+
+2025-04-28 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 2be836fe44010d92ffffb73cd060045bb10305e4
+ stdio: Remove UB on printf_fp
+
+ * stdio-common/printf_fp.c: Modified.
+ (stdlib/longlong.h): Remove include.
+ (__printf_fp_buffer_1): Modified function.
+ (stdbit.h): Include file.
+
+2025-04-25 Cupertino Miranda <cupertino.miranda@oracle.com>
+ Wangyang Guo <wangyang.guo@intel.com>
+
+ COMMIT: 77930e0447e0b37a129db0e13c6c6f5e60a3019e
+ benchtest: Correct shell script related to bench-malloc-thread
+
+ * benchtests/Makefile: Modified.
+
+2025-04-25 H. Peter Anvin <hpa@zytor.com>
+
+ COMMIT: e04afb71771710cdc6025fe95908f5f17de7b72d
+ linux/termio: remove <termio.h> and struct termio
+
+ * NEWS: Modified.
+ * sysdeps/unix/sysv/linux/Makefile: Modified.
+ * sysdeps/unix/sysv/linux/bits/ioctl-types.h: Modified.
+ (NCC): Remove.
+ (termio): Remove.
+ * sysdeps/unix/sysv/linux/mips/bits/ioctl-types.h: Modified.
+ (NCC): Remove.
+ (termio): Remove.
+ * sysdeps/unix/sysv/linux/powerpc/bits/ioctl-types.h: Modified.
+ (NCC): Remove.
+ (termio): Remove.
+ * sysdeps/unix/sysv/linux/termio.h: Delete file.
+
+2025-04-22 Aurelien Jarno <aurelien@aurel32.net>
+
+ COMMIT: e78caeb4ff812ae19d24d65f4d4d48508154277b
+ elf: tst-audit10: split AVX512F code into dedicated functions [BZ #32882]
+
+ * sysdeps/x86_64/Makefile: Modified.
+ * sysdeps/x86_64/tst-auditmod10b.c: Modified.
+ [! __AVX512F__](emmintrin.h): Remove.
+ [__AVX512F__](immintrin.h): Remove.
+ [__AVX512F__](cpuid.h): Remove.
+ [__AVX512F__](check_avx512): Remove.
+ (pltenter): Modified function.
+ (pltexit): Modified function.
+ (immintrin.h): Include file.
+ (cpuid.h): Include file.
+ (check_avx512): New function.
+ (pltenter_avx512f): New function.
+ (pltexit_avx512f): New function.
+
+2025-04-22 Joseph Myers <josmyers@redhat.com>
+
+ COMMIT: 4e24e4d936b57f6e7809032f55cc95a4cf4d2396
+ Add NT_ARM_GCS and NT_RISCV_TAGGED_ADDR_CTRL from Linux 6.13 to elf.h
+
+ * elf/elf.h: Modified.
+ (NT_ARM_GCS): New.
+ (NT_RISCV_TAGGED_ADDR_CTRL): New.
+
+2025-04-22 Joseph Myers <josmyers@redhat.com>
+
+ COMMIT: cf9241107d12e79073ddb03bab9de115e5e0e856
+ Add AT_* constants from Linux 6.12
+
+ * libio/stdio.h: Modified.
+ [__USE_GNU](AT_RENAME_NOREPLACE): New.
+ [__USE_GNU](AT_RENAME_EXCHANGE): New.
+ [__USE_GNU](AT_RENAME_WHITEOUT): New.
+ * sysdeps/unix/sysv/linux/bits/fcntl-linux.h: Modified.
+ [__USE_GNU](AT_HANDLE_MNT_ID_UNIQUE): New.
+
+2025-04-21 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ COMMIT: 39183b953c68a489cc0b9aefb8974711c834fb38
+ hurd: Make symlink return EEXIST on existing target directory
+
+ * sysdeps/mach/hurd/symlinkat.c: Modified.
+ (__symlinkat): Modified function.
+
+2025-04-21 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ COMMIT: 0d9971468087c77e8727638123ae4aa60724e0ff
+ hurd: Clear FP exceptions before calling signal handler
+
+ * sysdeps/mach/hurd/x86/trampoline.c: Modified.
+ [! __x86_64__](asm): Modified.
+ [! __x86_64__](asm): Modified.
+ [__x86_64__](asm): Modified.
+
+2025-04-21 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ COMMIT: 0f2df19d9535d234b31c65f84a6c67ac2e0bd027
+ hurd: Do not check for xstate level if it was not initialized
+
+ * sysdeps/mach/hurd/x86/trampoline.c: Modified.
+ (_hurd_setup_sighandler): Modified function.
+
+2025-04-21 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ COMMIT: 8d54b428cfe98c21049f94c8af3bf302e44091e9
+ hurd: Do not restore xstate when it is not initialized
+
+ * sysdeps/mach/hurd/i386/sigreturn.c: Modified.
+ (__sigreturn): Modified function.
+ * sysdeps/mach/hurd/x86_64/sigreturn.c: Modified.
+ (__sigreturn): Modified function.
+
+2025-04-20 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ COMMIT: d58ebf51bca1a30e1a07e800e3823f4c96029da0
+ hurd: Make *utime*s catch invalid times [BZ #32802, BZ #32803]
+
+ * sysdeps/mach/hurd/futimens.c: Modified.
+ (__futimens): Modified function.
+ * sysdeps/mach/hurd/futimes.c: Modified.
+ (__futimes): Modified function.
+ * sysdeps/mach/hurd/utime-helper.c: Modified.
+ (utime_ts_from_tval): Modified function.
+ (utime_tvalue_from_tval): Modified function.
+ (hurd_futimes): Modified function.
+ (utime_ts_from_tspec): Modified function.
+ (utime_tvalue_from_tspec): Modified function.
+ (hurd_futimens): Modified function.
+ (check_tval): New function.
+ (check_tspec): New function.
+
+2025-04-18 Luca Dariz <luca@orpolo.org>
+
+ COMMIT: 6d6a6e2dd2133908e3f5cb8a2ed817ccb2a0bb06
+ hurd: save xstate during signal handling
+
+ * hurd/Makefile: Modified.
+ * hurd/test-sig-rpc-interrupted.c: New file.
+ * hurd/test-sig-xstate.c: New file.
+ * hurd/test-xstate.h: New file.
+ * sysdeps/mach/hurd/i386/bits/sigcontext.h: Modified.
+ (sigcontext): Modified.
+ * sysdeps/mach/hurd/i386/sigreturn.c: Modified.
+ (__sigreturn): Modified function.
+ (cpuid.h): Include file.
+ * sysdeps/mach/hurd/x86/trampoline.c: Modified.
+ [! __x86_64__](mach/i386/mach_i386.h): Include file.
+ [__x86_64__](mach/x86_64/mach_i386.h): Include file.
+ (_hurd_setup_sighandler): Modified function.
+ * sysdeps/mach/hurd/x86_64/bits/sigcontext.h: Modified.
+ (sigcontext): Modified.
+ * sysdeps/mach/hurd/x86_64/sigreturn.c: Modified.
+ (__sigreturn): Modified function.
+ (cpuid.h): Include file.
+
+2025-04-18 Zhaoming Luo <zhmingluo@163.com>
+
+ COMMIT: e150ee870907e1c5ded4aad8d22a92a98f59d243
+ hurd: Check return value of mach_port_mod_refs() in the dup routine of fcntl()
+
+ * sysdeps/mach/hurd/dup3.c: Modified.
+ (__dup3): Modified function.
+ * sysdeps/mach/hurd/fcntl.c: Modified.
+ (__libc_fcntl): Modified function.
+
+2025-04-16 Cupertino Miranda <cupertino.miranda@oracle.com>
+
+ COMMIT: 1c9ac027a5deb6c3e026be0e88d38959529e6102
+ malloc: move tcache_init out of hot tcache paths
+
+ * malloc/malloc.c: Modified.
+ [IS_IN (libc)](_mid_memalign): Modified function.
+ [USE_TCACHE](tcache_init): Modified function.
+ [USE_TCACHE](tcache_try_malloc): Modified function.
+ (_int_free_chunk): Modified function.
+
+2025-04-15 Andrew Pinski <quic_apinski@quicinc.com>
+
+ COMMIT: ceeffd970c56893885cbf8382ae34b015f177850
+ aarch64: Add back non-temporal load/stores from oryon-1's memset
+
+ * sysdeps/aarch64/multiarch/memset_oryon1.S: Modified.
+
+2025-04-15 Andrew Pinski <quic_apinski@quicinc.com>
+
+ COMMIT: 0e1aa5db738ac7c73599a3e7f1a0b70b99f99e0a
+ aarch64: Add back non-temporal load/stores from oryon-1's memcpy
+
+ * sysdeps/aarch64/multiarch/memcpy_oryon1.S: Modified.
+
+2025-04-15 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: c968fe50628db74b52124d863cd828225a1d305c
+ malloc: Use tailcalls in __libc_free
+
+ * malloc/malloc.c: Modified.
+ [IS_IN (libc)](__libc_free): Modified function.
+ [USE_TCACHE](tcache_double_free_verify): Modified function.
+ [USE_TCACHE](malloc_printerr_tail): New function.
+ [USE_TCACHE](void): New.
+ [USE_TCACHE](malloc_printerr_tail): New function.
+ (_int_free_chunk): Modified function.
+
+2025-04-15 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: 393b1a6e50883e451b31dd4f3fec73e167d14ab4
+ malloc: Inline tcache_free
+
+ * malloc/malloc.c: Modified.
+ [IS_IN (libc)](__libc_free): Modified function.
+ [USE_TCACHE](tcache_free): Remove function.
+
+2025-04-15 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: 9b0c8ced9c71a86f68d3e29693979dad6da3b79d
+ malloc: Improve free checks
+
+ * malloc/malloc.c: Modified.
+ [IS_IN (libc)](__libc_free): Modified function.
+
+2025-04-15 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: 0296654d61ffa095fc7729f1efafa7d0e4fa4f7a
+ malloc: Inline _int_free_check
+
+ * malloc/malloc.c: Modified.
+ [IS_IN (libc)](__libc_free): Modified function.
+ (_int_free_check): Remove.
+ (void): Modified.
+ (_int_free_check): Remove function.
+ (void): Modified.
+ (void): Modified.
+ (void): Remove.
+
+2025-04-14 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: 69da24fbc5861fbf30c29c89154020a5c40342ca
+ malloc: Inline _int_free
+
+ * malloc/malloc-check.c: Modified.
+ (free_check): Modified function.
+ * malloc/malloc.c: Modified.
+ [IS_IN (libc)](__libc_free): Modified function.
+ (_int_free): Remove.
+ (void): Modified.
+ (_int_free): Remove function.
+ (void): Modified.
+ (void): Modified.
+ (void): Remove.
+
+2025-04-14 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: b0cb99bef5a2142563c49c908c2139310904404a
+ malloc: Move mmap code out of __libc_free hotpath
+
+ * malloc/malloc.c: Modified.
+ [IS_IN (libc)](__libc_free): Modified function.
+ [USE_TCACHE](tcache_init): Modified function.
+ (_int_free_check): Modified function.
+ (_int_free_chunk): Modified function.
+
+2025-04-14 Aurelien Jarno <aurelien@aurel32.net>
+
+ COMMIT: 9df92958c196f7a0be51a204a19caafe2f45a22d
+ manual/tunables: fix a trivial typo
+
+ * manual/tunables.texi: Modified.
+
+2025-04-14 Colin Ian King <colin.i.king@gmail.com>
+
+ COMMIT: 1f8f322823afd67a7ea1adad454332aa1b040254
+ Fix spelling mistake "trucate" -> "truncate"
+
+ * posix/tst-truncate-common.c: Modified.
+ (do_prepare): Modified function.
+
+2025-04-14 Colin Ian King <colin.i.king@gmail.com>
+
+ COMMIT: 1d7834cac3d8a570b84bf1af1205a6897b747a01
+ Fix spelling mistake "suports" -> "supports"
+
+ * math/test-fesetexcept-traps.c: Modified.
+ (do_test): Modified function.
+ * math/test-fexcept-traps.c: Modified.
+ (do_test): Modified function.
+
+2025-04-14 Colin Ian King <colin.i.king@gmail.com>
+
+ COMMIT: a1805753ac461ed211a0627b9b58e662d84b34dd
+ Fix spelling mistake "succsefully" -> "successfully"
+
+ * sysdeps/pthread/tst-stdio2.c: Modified.
+ (do_test): Modified function.
+
+2025-04-14 Collin Funk <collin.funk1@gmail.com>
+
+ COMMIT: 363bbdbd2aeaae1e00f3872f2ba19a4a3c17bdf1
+ manual: Mention POSIX-1.2024 requires time_t to be 64 bit or wider.
+
+ * manual/time.texi: Modified.
+
+2025-04-14 Collin Funk <collin.funk1@gmail.com>
+
+ COMMIT: 93623c03d527dcec76694ab0fcc197193922d1a8
+ manual: Update standardization of getline and getdelim [BZ #32830]
+
+ * manual/stdio.texi: Modified.
+
+2025-04-14 Frédéric Bérat <fberat@redhat.com>
+
+ COMMIT: 11e188659db264f6b101d8eb65824ffa5bc91a0a
+ libio: Add test case for fflush
+
+ * libio/Makefile: Modified.
+ * libio/tst-fflush-NULL.c: New file.
+ * libio/tst-fflush-skeleton.c: New file.
+ * libio/tst-fflush.c: New file.
+
+2025-04-14 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 7b47b3dd214c8ff2c699f13efe5533941be53635
+ libio: Synthesize ESPIPE error if lseek returns 0 after reading bytes
+
+ * libio/fileops.c: Modified.
+ (do_ftell): Modified function.
+ * stdio-common/Makefile: Modified.
+ * stdio-common/tst-fclose-devzero.c: New file.
+
+2025-04-12 H.J. Lu <hjl.tools@gmail.com>
+
+ COMMIT: de14f1959ee5f9b845a7cae43bee03068b8136f0
+ x86: Detect Intel Diamond Rapids
+
+ * sysdeps/x86/cpu-features.c: Modified.
+ (intel_microarch): Modified.
+ (init_cpu_features): Modified function.
+
+2025-04-11 Sunil K Pandey <sunil.k.pandey@intel.com>
+ H.J. Lu <hjl.tools@gmail.com>
+
+ COMMIT: 9f0deff558d1d6b08c425c157f50de85013ada9c
+ x86: Handle unknown Intel processor with default tuning
+
+ * sysdeps/x86/cpu-features.c: Modified.
+ (<anonymous>): Remove.
+ (intel_get_fam6_microarch): Modified function.
+ (init_cpu_features): Modified function.
+ (intel_microarch): New.
+
+2025-04-10 Collin Funk <collin.funk1@gmail.com>
+
+ COMMIT: d18213c6997a058a68bc2547dcb43cf77bc4504f
+ conform: Add initial support for C23.
+
+ * conform/data/aio.h-data: Modified.
+ * conform/data/arpa/inet.h-data: Modified.
+ * conform/data/assert.h-data: Modified.
+ * conform/data/complex.h-data: Modified.
+ * conform/data/cpio.h-data: Modified.
+ * conform/data/ctype.h-data: Modified.
+ * conform/data/dirent.h-data: Modified.
+ * conform/data/dlfcn.h-data: Modified.
+ * conform/data/errno.h-data: Modified.
+ * conform/data/fcntl.h-data: Modified.
+ * conform/data/fenv.h-data: Modified.
+ * conform/data/float.h-data: Modified.
+ * conform/data/fmtmsg.h-data: Modified.
+ * conform/data/fnmatch.h-data: Modified.
+ * conform/data/ftw.h-data: Modified.
+ * conform/data/glob.h-data: Modified.
+ * conform/data/grp.h-data: Modified.
+ * conform/data/iconv.h-data: Modified.
+ * conform/data/iso646.h-data: Modified.
+ * conform/data/langinfo.h-data: Modified.
+ * conform/data/libgen.h-data: Modified.
+ * conform/data/limits.h-data: Modified.
+ * conform/data/locale.h-data: Modified.
+ * conform/data/math.h-data: Modified.
+ * conform/data/monetary.h-data: Modified.
+ * conform/data/mqueue.h-data: Modified.
+ * conform/data/ndbm.h-data: Modified.
+ * conform/data/net/if.h-data: Modified.
+ * conform/data/netdb.h-data: Modified.
+ * conform/data/netinet/in.h-data: Modified.
+ * conform/data/nl_types.h-data: Modified.
+ * conform/data/poll.h-data: Modified.
+ * conform/data/pthread.h-data: Modified.
+ * conform/data/pwd.h-data: Modified.
+ * conform/data/regex.h-data: Modified.
+ * conform/data/sched.h-data: Modified.
+ * conform/data/search.h-data: Modified.
+ * conform/data/semaphore.h-data: Modified.
+ * conform/data/setjmp.h-data: Modified.
+ * conform/data/signal.h-data: Modified.
+ * conform/data/spawn.h-data: Modified.
+ * conform/data/stdalign.h-data: Modified.
+ * conform/data/stdarg.h-data: Modified.
+ * conform/data/stdbool.h-data: Modified.
+ * conform/data/stddef.h-data: Modified.
+ * conform/data/stdio.h-data: Modified.
+ * conform/data/stdlib.h-data: Modified.
+ * conform/data/stdnoreturn.h-data: Modified.
+ * conform/data/string.h-data: Modified.
+ * conform/data/strings.h-data: Modified.
+ * conform/data/sys/ipc.h-data: Modified.
+ * conform/data/sys/mman.h-data: Modified.
+ * conform/data/sys/msg.h-data: Modified.
+ * conform/data/sys/resource.h-data: Modified.
+ * conform/data/sys/select.h-data: Modified.
+ * conform/data/sys/sem.h-data: Modified.
+ * conform/data/sys/shm.h-data: Modified.
+ * conform/data/sys/socket.h-data: Modified.
+ * conform/data/sys/stat.h-data: Modified.
+ * conform/data/sys/statvfs.h-data: Modified.
+ * conform/data/sys/time.h-data: Modified.
+ * conform/data/sys/timeb.h-data: Modified.
+ * conform/data/sys/times.h-data: Modified.
+ * conform/data/sys/types.h-data: Modified.
+ * conform/data/sys/uio.h-data: Modified.
+ * conform/data/sys/un.h-data: Modified.
+ * conform/data/sys/utsname.h-data: Modified.
+ * conform/data/sys/wait.h-data: Modified.
+ * conform/data/syslog.h-data: Modified.
+ * conform/data/tar.h-data: Modified.
+ * conform/data/termios.h-data: Modified.
+ * conform/data/threads.h-data: Modified.
+ * conform/data/time.h-data: Modified.
+ * conform/data/uchar.h-data: Modified.
+ * conform/data/ucontext.h-data: Modified.
+ * conform/data/ulimit.h-data: Modified.
+ * conform/data/unistd.h-data: Modified.
+ * conform/data/utime.h-data: Modified.
+ * conform/data/utmpx.h-data: Modified.
+ * conform/data/wchar.h-data: Modified.
+ * conform/data/wctype.h-data: Modified.
+ * conform/data/wordexp.h-data: Modified.
+
+2025-04-10 Sunil K Pandey <skpgkp2@gmail.com>
+
+ COMMIT: e53eb952b970ac94c97d74fb447418fb327ca096
+ x86: Add ARL/PTL/CWF model detection support
+
+ * sysdeps/x86/cpu-features.c: Modified.
+ (<anonymous>): Modified.
+ (intel_get_fam6_microarch): Modified function.
+ (init_cpu_features): Modified function.
+
+2025-04-10 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 402b591f1b0f721139068bf19a77497ce6e6c4ff
+ timezone: Enhance tst-bz28707 diagnostics
+
+ * timezone/tst-bz28707.c: Modified.
+ (string.h): Remove include.
+ (do_test): Modified function.
+ (errno.h): Include file.
+ (support/check.h): Include file.
+
+2025-04-10 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 77e8b40a6ef4dc70c373523f7ac46e726089906f
+ powerpc: Remove relocation cache flush code for power64
+
+ * sysdeps/powerpc/powerpc64/dl-machine.h: Modified.
+ [! dl_machine_h](elf_machine_runtime_setup): Modified function.
+
+2025-04-09 Jakub Jelinek <jakub@redhat.com>
+
+ COMMIT: 63c99cd50bc9c10f0692f7cb31f4c5f02ff526df
+ math: Fix up THREEp96 constant in expf128 [BZ #32411]
+
+ * sysdeps/ieee754/ldbl-128/e_expl.c: Modified.
+
+2025-04-08 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 12a497c716f0a06be5946cabb8c3ec22a079771e
+ elf: Extend glibc.rtld.execstack tunable to force executable stack (BZ 32653)
+
+ * NEWS: Modified.
+ * elf/Makefile: Modified.
+ * elf/dl-execstack-tunable.c: New file.
+ * elf/dl-support.c: Modified.
+ [! HAVE_AUX_VECTOR](__rtld_lock_define_initialized_recursive): Modified function.
+ (__rtld_lock_define_initialized_recursive): Modified function.
+ * elf/dl-tunables.list: Modified.
+ * elf/rtld.c: Modified.
+ (dl_main): Modified function.
+ * elf/tst-execstack-prog-static-tunable.c: New file.
+ * elf/tst-execstack-tunable.c: New file.
+ * elf/tst-rtld-list-tunables.exp: Modified.
+ * manual/tunables.texi: Modified.
+ * sysdeps/generic/ldsodefs.h: Modified.
+ (stack_tunable_mode): New.
+ (_dl_handle_execstack_tunable): New function.
+
+2025-04-08 Lenard Mollenkopf <glibc@lenardmollenkopf.de>
+
+ COMMIT: 5b132ec2b7712dbc055838b3b538b83ad1196414
+ stdlib: Implement C2Y uabs, ulabs, ullabs and uimaxabs
+
+ * NEWS: Modified.
+ * manual/arith.texi: Modified.
+ * stdlib/Makefile: Modified.
+ * stdlib/Versions: Modified.
+ * stdlib/inttypes.h: Modified.
+ [__GLIBC_USE (ISOC2Y)](uimaxabs): New.
+ * stdlib/stdlib.h: Modified.
+ [__GLIBC_USE (ISOC2Y)](__wur): New.
+ [__GLIBC_USE (ISOC2Y)](__wur): New.
+ [__GLIBC_USE (ISOC2Y)](__wur): New.
+ * stdlib/tst-uabs.c: New file.
+ * stdlib/tst-uimaxabs.c: New file.
+ * stdlib/tst-ulabs.c: New file.
+ * stdlib/tst-ullabs.c: New file.
+ * stdlib/uabs.c: New file.
+ * stdlib/ulabs.c: New file.
+ * stdlib/ullabs.c: New file.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/aarch64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/alpha/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arc/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arm/be/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arm/le/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/csky/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/hppa/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/i386/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/loongarch/lp64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/microblaze/be/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/microblaze/le/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/or1k/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sh/be/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sh/le/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/x86_64/64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist: Modified.
+
+2025-04-08 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 4fa959d13d21b8f56a43aa0a416100303736c55c
+ stdio-common: In tst-setvbuf2, close helper thread descriptor only if opened
+
+ * stdio-common/tst-setvbuf2.c: Modified.
+ [! INDEPENDENT_PART](start_writer_thread_n): Modified function.
+ [! INDEPENDENT_PART](end_writer_thread): Modified function.
+ [! INDEPENDENT_PART](start_reader_thread_n): Modified function.
+ [! INDEPENDENT_PART](end_reader_thread): Modified function.
+ [! INDEPENDENT_PART](recurse): Modified function.
+ [! INDEPENDENT_PART](end_thread): New function.
+ (do_second_part): Modified function.
+
+2025-04-07 Andreas Schwab <schwab@suse.de>
+
+ COMMIT: fb3d821afa86bc9b2e07f0140e7788e421769589
+ Remove duplicates from binaries-shared-tests when creating make rules
+
+ * Rules: Modified.
+
+2025-04-05 Sunil K Pandey <skpgkp2@gmail.com>
+ H.J. Lu <hjl.tools@gmail.com>
+
+ COMMIT: 70b648855185e967e54668b101d24704c3fb869d
+ x86: Optimize xstate size calculation
+
+ * sysdeps/x86/cpu-features.c: Modified.
+ (update_active): Modified function.
+ * sysdeps/x86/sysdep.h: Modified.
+ [! __x86_64__](X86_XSTATE_MAX_ID): New.
+ [__x86_64__](X86_XSTATE_MAX_ID): New.
+
+2025-04-05 Sam James <sam@gentoo.org>
+
+ COMMIT: 8322e93dcdf08d38977f3e9b771c7c1f6dc74542
+ NEWS: update for GCC 12.1 requirement [BZ #32539]
+
+ * NEWS: Modified.
+
+2025-04-02 DJ Delorie <dj@redhat.com>
+
+ COMMIT: aaf94ec804830e0e273cfb45d54f4a04ab778fe5
+ stdio: fix hurd link for tst-setvbuf2
+
+ * stdio-common/Makefile: Modified.
+
+2025-04-02 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: c8e73a1492b01b9b0c189d6a5c53a5a697827bae
+ stdlib: Fix qsort memory leak if callback throws (BZ 32058)
+
+ * stdlib/Makefile: Modified.
+ * stdlib/qsort.c: Modified.
+ (__qsort_r): Modified function.
+ (pthreadP.h): Include file.
+ (qsort_r_mergesort): New function.
+ (qsort_r_malloc): New function.
+ * stdlib/tst-qsort4.c: Modified.
+ (pthread_cleanup_combined_push): New.
+ (pthread_cleanup_combined_pop): New.
+ * stdlib/tst-qsort7.c: New file.
+ * stdlib/tst-qsortx7.c: New file.
+ * sysdeps/htl/pthreadP.h: Modified.
+ [! pthread_cleanup_combined_pop](pthread_cleanup_combined_pop): New.
+ [! pthread_cleanup_combined_push](pthread_cleanup_combined_push): New.
+ (bits/cancelation.h): Include file.
+ * sysdeps/mach/hurd/Makefile: Modified.
+ * sysdeps/nptl/pthreadP.h: Modified.
+
+2025-04-02 Sam James <sam@gentoo.org>
+
+ COMMIT: e8514ac7aaf1bd0cf791dbdac0b2584ef3c42e98
+ sysdeps: powerpc: restore -mlong-double-128 check
+
+ * sysdeps/unix/sysv/linux/powerpc/configure: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/configure.ac: Modified.
+
+2025-04-01 DJ Delorie <dj@redhat.com>
+
+ COMMIT: 95b780c1d0549678c0a244c6e2112ec97edf0839
+ stdio: Add more setvbuf tests
+
+ * stdio-common/Makefile: Modified.
+ * stdio-common/tst-setvbuf2-ind.c: New file.
+ * stdio-common/tst-setvbuf2.c: New file.
+
+2025-04-01 DJ Delorie <dj@redhat.com>
+
+ COMMIT: 81e74c8676479811601b5894d72bb3d7e05f68dd
+ add ptmx support to test-container
+
+ * support/Makefile: Modified.
+ * support/test-container.c: Modified.
+ (main): Modified function.
+ * support/tst-support-openpty-c.c: New file.
+ * support/tst-support-openpty.c: New file.
+
+2025-04-01 Joseph Myers <josmyers@redhat.com>
+
+ COMMIT: 7f163bd2106f96e2925e9bb3e0e545cfae7ba1af
+ Update syscall lists for Linux 6.14
+
+ * sysdeps/unix/sysv/linux/syscall-names.list: Modified.
+
+2025-03-31 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: c6e2895695118ab59c7b17feb0fcb75a53e3478c
+ x86: Link tst-gnu2-tls2-x86-noxsave{,c,xsavec} with libpthread
+
+ * sysdeps/x86/Makefile: Modified.
+
+2025-03-31 John David Anglin <danglin@gcc.gnu.org>
+
+ COMMIT: 38c3896d574a27816caab0b5039402834ecdb210
+ elf: Fix tst-origin build when toolchain defaults to --as-needed (BZ 32823)
+
+ * elf/Makefile: Modified.
+
+2025-03-31 H.J. Lu <hjl.tools@gmail.com>
+
+ COMMIT: 27b96e069aad17cefea9437542180bff448ac3a0
+ Raise the minimum GCC version to 12.1 [BZ #32539]
+
+ * INSTALL: Modified.
+ * configure: Modified.
+ * configure.ac: Modified.
+ * manual/install.texi: Modified.
+ * sysdeps/s390/configure: Modified.
+ * sysdeps/s390/configure.ac: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/configure: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/configure.ac: Modified.
+
+2025-03-31 YLK <yilink10@gmail.com>
+
+ COMMIT: dbb2880e61bf2b2906a40ed00181a831d3a65798
+ Fix typo in comment
+
+ * sysdeps/loongarch/cpu-tunables.c: Modified.
+ * sysdeps/x86/cpu-tunables.c: Modified.
+
+2025-03-31 Samuel Zeter <samuelzeter@gmail.com>
+
+ COMMIT: 87b5a759f48a7d2bec3a8c837a1fc9fd8419f0ad
+ manual: tidy the longopt.c example
+
+ * manual/examples/longopt.c: Modified.
+ (main): Modified function.
+
+2025-03-31 Collin Funk <collin.funk1@gmail.com>
+
+ COMMIT: ee33752b5d8c53eb5a357f67ab7ab6288fba5fd9
+ manual: Document functions adopted by POSIX.1-2024.
+
+ * manual/llio.texi: Modified.
+ * manual/memory.texi: Modified.
+ * manual/message.texi: Modified.
+ * manual/pattern.texi: Modified.
+ * manual/process.texi: Modified.
+ * manual/signal.texi: Modified.
+ * manual/startup.texi: Modified.
+ * manual/string.texi: Modified.
+ * manual/terminal.texi: Modified.
+ * manual/threads.texi: Modified.
+
+2025-03-31 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 4352e2cc934b2874dba37397157bf890fcee455a
+ aarch64: Fix _dl_tlsdesc_dynamic unwind for pac-ret (BZ 32612)
+
+ * sysdeps/aarch64/dl-tlsdesc.S: Modified.
+ * sysdeps/unix/sysv/linux/aarch64/Makefile: Modified.
+ * sysdeps/unix/sysv/linux/aarch64/tst-tlsdesc-pac-mod.c: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-tlsdesc-pac.c: New file.
+
+2025-03-29 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 145097dff170507fe73190e8e41194f5b5f7e6bf
+ x86: Use separate variable for TLSDESC XSAVE/XSAVEC state size (bug 32810)
+
+ * sysdeps/x86/Makefile: Modified.
+ * sysdeps/x86/cpu-features.c: Modified.
+ (update_active): Modified function.
+ (_dl_x86_features_tlsdesc_state_size): New.
+ * sysdeps/x86/cpu-tunables.c: Modified.
+ (TUNABLE_CALLBACK): Modified function.
+ * sysdeps/x86/dl-diagnostics-cpu.c: Modified.
+ (_dl_diagnostics_cpu): Modified function.
+ * sysdeps/x86/include/cpu-features.h: Modified.
+ [IS_IN (rtld) || IS_IN (libc)](_dl_x86_features_tlsdesc_state_size): New.
+ * sysdeps/x86/tst-gnu2-tls2-x86-noxsave.c: New file.
+ * sysdeps/x86/tst-gnu2-tls2-x86-noxsavec.c: New file.
+ * sysdeps/x86/tst-gnu2-tls2-x86-noxsavexsavec.c: New file.
+ * sysdeps/x86_64/dl-tlsdesc-dynamic.h: Modified.
+
+2025-03-29 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 59585ddaa2d44f22af04bb4b8bd4ad1e302c4c02
+ x86: Skip XSAVE state size reset if ISA level requires XSAVE
+
+ * sysdeps/x86/cpu-features.c: Modified.
+ (init_cpu_features): Modified function.
+ (gcc-macros.h): Include file.
+
+2025-03-28 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: b0897944cc3081e019b39981790051f7ee127406
+ malloc: Improve performance of __libc_malloc
+
+ * malloc/malloc.c: Modified.
+ [IS_IN (libc)](__libc_malloc): Modified function.
+ [IS_IN (libc)](__libc_malloc2): New function.
+ (checked_request2size): Modified function.
+
+2025-03-28 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: 0a8e7ac95c69499959151f29c65fc112f09d3973
+ stdio-common: Reject real data w/o exponent digits in scanf [BZ #12701]
+
+ * stdio-common/tstscanf.c: Modified.
+ (main): Modified function.
+ * stdio-common/vfscanf-internal.c: Modified.
+ [! COMPILE_WSCANF](__vfscanf_internal): Modified function.
+ [COMPILE_WSCANF](__vfwscanf_internal): Modified function.
+ * sysdeps/ieee754/dbl-64/tst-scanf-format-double-a.input: Modified.
+ * sysdeps/ieee754/dbl-64/tst-scanf-format-double-aa.input: Modified.
+ * sysdeps/ieee754/dbl-64/tst-scanf-format-double-e.input: Modified.
+ * sysdeps/ieee754/dbl-64/tst-scanf-format-double-ee.input: Modified.
+ * sysdeps/ieee754/dbl-64/tst-scanf-format-double-g.input: Modified.
+ * sysdeps/ieee754/dbl-64/tst-scanf-format-double-gg.input: Modified.
+ * sysdeps/ieee754/flt-32/tst-scanf-format-float-a.input: Modified.
+ * sysdeps/ieee754/flt-32/tst-scanf-format-float-aa.input: Modified.
+ * sysdeps/ieee754/flt-32/tst-scanf-format-float-e.input: Modified.
+ * sysdeps/ieee754/flt-32/tst-scanf-format-float-ee.input: Modified.
+ * sysdeps/ieee754/flt-32/tst-scanf-format-float-g.input: Modified.
+ * sysdeps/ieee754/flt-32/tst-scanf-format-float-gg.input: Modified.
+ * sysdeps/ieee754/ldbl-128/tst-scanf-format-ldouble-a.input: Modified.
+ * sysdeps/ieee754/ldbl-128/tst-scanf-format-ldouble-aa.input: Modified.
+ * sysdeps/ieee754/ldbl-128/tst-scanf-format-ldouble-e.input: Modified.
+ * sysdeps/ieee754/ldbl-128/tst-scanf-format-ldouble-ee.input: Modified.
+ * sysdeps/ieee754/ldbl-128/tst-scanf-format-ldouble-g.input: Modified.
+ * sysdeps/ieee754/ldbl-128/tst-scanf-format-ldouble-gg.input: Modified.
+ * sysdeps/ieee754/ldbl-128ibm/tst-scanf-format-ldouble-a.input: Modified.
+ * sysdeps/ieee754/ldbl-128ibm/tst-scanf-format-ldouble-aa.input: Modified.
+ * sysdeps/ieee754/ldbl-128ibm/tst-scanf-format-ldouble-e.input: Modified.
+ * sysdeps/ieee754/ldbl-128ibm/tst-scanf-format-ldouble-ee.input: Modified.
+ * sysdeps/ieee754/ldbl-128ibm/tst-scanf-format-ldouble-g.input: Modified.
+ * sysdeps/ieee754/ldbl-128ibm/tst-scanf-format-ldouble-gg.input: Modified.
+ * sysdeps/ieee754/ldbl-96/tst-scanf-format-ldouble-a.input: Modified.
+ * sysdeps/ieee754/ldbl-96/tst-scanf-format-ldouble-aa.input: Modified.
+ * sysdeps/ieee754/ldbl-96/tst-scanf-format-ldouble-e.input: Modified.
+ * sysdeps/ieee754/ldbl-96/tst-scanf-format-ldouble-ee.input: Modified.
+ * sysdeps/ieee754/ldbl-96/tst-scanf-format-ldouble-g.input: Modified.
+ * sysdeps/ieee754/ldbl-96/tst-scanf-format-ldouble-gg.input: Modified.
+ * sysdeps/ieee754/ldbl-opt/tst-scanf-format-ldouble-a.input: Modified.
+ * sysdeps/ieee754/ldbl-opt/tst-scanf-format-ldouble-aa.input: Modified.
+ * sysdeps/ieee754/ldbl-opt/tst-scanf-format-ldouble-e.input: Modified.
+ * sysdeps/ieee754/ldbl-opt/tst-scanf-format-ldouble-ee.input: Modified.
+ * sysdeps/ieee754/ldbl-opt/tst-scanf-format-ldouble-g.input: Modified.
+ * sysdeps/ieee754/ldbl-opt/tst-scanf-format-ldouble-gg.input: Modified.
+
+2025-03-28 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: 0b390b55085070bfa9598fb42049a32460681308
+ stdio-common: Reject significand prefixes in scanf [BZ #12701]
+
+ * stdio-common/vfscanf-internal.c: Modified.
+ [! COMPILE_WSCANF](__vfscanf_internal): Modified function.
+ [COMPILE_WSCANF](__vfwscanf_internal): Modified function.
+ * sysdeps/ieee754/dbl-64/tst-scanf-format-double-a.input: Modified.
+ * sysdeps/ieee754/dbl-64/tst-scanf-format-double-aa.input: Modified.
+ * sysdeps/ieee754/flt-32/tst-scanf-format-float-a.input: Modified.
+ * sysdeps/ieee754/flt-32/tst-scanf-format-float-aa.input: Modified.
+ * sysdeps/ieee754/ldbl-128/tst-scanf-format-ldouble-a.input: Modified.
+ * sysdeps/ieee754/ldbl-128/tst-scanf-format-ldouble-aa.input: Modified.
+ * sysdeps/ieee754/ldbl-128ibm/tst-scanf-format-ldouble-a.input: Modified.
+ * sysdeps/ieee754/ldbl-128ibm/tst-scanf-format-ldouble-aa.input: Modified.
+ * sysdeps/ieee754/ldbl-96/tst-scanf-format-ldouble-a.input: Modified.
+ * sysdeps/ieee754/ldbl-96/tst-scanf-format-ldouble-aa.input: Modified.
+ * sysdeps/ieee754/ldbl-opt/tst-scanf-format-ldouble-a.input: Modified.
+ * sysdeps/ieee754/ldbl-opt/tst-scanf-format-ldouble-aa.input: Modified.
+
+2025-03-28 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: e78cb4f6bd033b09eaf316057598df9315891860
+ stdio-common: Reject integer prefixes in scanf [BZ #12701]
+
+ * stdio-common/tst-scanf-format-char-i.input: Modified.
+ * stdio-common/tst-scanf-format-llong-i.input: Modified.
+ * stdio-common/tst-scanf-format-short-i.input: Modified.
+ * stdio-common/tst-scanf-format-uchar-b.input: Modified.
+ * stdio-common/tst-scanf-format-uchar-x.input: Modified.
+ * stdio-common/tst-scanf-format-uchar-xx.input: Modified.
+ * stdio-common/tst-scanf-format-ullong-b.input: Modified.
+ * stdio-common/tst-scanf-format-ullong-x.input: Modified.
+ * stdio-common/tst-scanf-format-ullong-xx.input: Modified.
+ * stdio-common/tst-scanf-format-ushort-b.input: Modified.
+ * stdio-common/tst-scanf-format-ushort-x.input: Modified.
+ * stdio-common/tst-scanf-format-ushort-xx.input: Modified.
+ * stdio-common/vfscanf-internal.c: Modified.
+ [! COMPILE_WSCANF](__vfscanf_internal): Modified function.
+ [COMPILE_WSCANF](__vfwscanf_internal): Modified function.
+ * sysdeps/wordsize-32/tst-scanf-format-int-i.input: Modified.
+ * sysdeps/wordsize-32/tst-scanf-format-long-i.input: Modified.
+ * sysdeps/wordsize-32/tst-scanf-format-uint-b.input: Modified.
+ * sysdeps/wordsize-32/tst-scanf-format-uint-x.input: Modified.
+ * sysdeps/wordsize-32/tst-scanf-format-uint-xx.input: Modified.
+ * sysdeps/wordsize-32/tst-scanf-format-ulong-b.input: Modified.
+ * sysdeps/wordsize-32/tst-scanf-format-ulong-x.input: Modified.
+ * sysdeps/wordsize-32/tst-scanf-format-ulong-xx.input: Modified.
+ * sysdeps/wordsize-64/tst-scanf-format-int-i.input: Modified.
+ * sysdeps/wordsize-64/tst-scanf-format-long-i.input: Modified.
+ * sysdeps/wordsize-64/tst-scanf-format-uint-b.input: Modified.
+ * sysdeps/wordsize-64/tst-scanf-format-uint-x.input: Modified.
+ * sysdeps/wordsize-64/tst-scanf-format-uint-xx.input: Modified.
+ * sysdeps/wordsize-64/tst-scanf-format-ulong-b.input: Modified.
+ * sysdeps/wordsize-64/tst-scanf-format-ulong-x.input: Modified.
+ * sysdeps/wordsize-64/tst-scanf-format-ulong-xx.input: Modified.
+
+2025-03-28 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: a26638424ffea604f7ef94d0c6f3940304698442
+ stdio-common: Also reject exp char w/o significand in i18n scanf [BZ #13988]
+
+ * localedata/Makefile: Modified.
+ * localedata/tst-bz13988.c: New file.
+ * stdio-common/vfscanf-internal.c: Modified.
+ [! COMPILE_WSCANF](__vfscanf_internal): Modified function.
+ [COMPILE_WSCANF](__vfwscanf_internal): Modified function.
+
+2025-03-28 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: 47076b3163ce645f791d5c8f80080e9811733347
+ stdio-common: Add tests for formatted vsscanf input specifiers
+
+ * stdio-common/Makefile: Modified.
+ * stdio-common/tst-scanf-format-vs-c.c: New file.
+ * stdio-common/tst-scanf-format-vs-char.c: New file.
+ * stdio-common/tst-scanf-format-vs-double.c: New file.
+ * stdio-common/tst-scanf-format-vs-float.c: New file.
+ * stdio-common/tst-scanf-format-vs-int.c: New file.
+ * stdio-common/tst-scanf-format-vs-ldouble.c: New file.
+ * stdio-common/tst-scanf-format-vs-llong.c: New file.
+ * stdio-common/tst-scanf-format-vs-long.c: New file.
+ * stdio-common/tst-scanf-format-vs-short.c: New file.
+ * stdio-common/tst-scanf-format-vs-uchar.c: New file.
+ * stdio-common/tst-scanf-format-vs-uint.c: New file.
+ * stdio-common/tst-scanf-format-vs-ullong.c: New file.
+ * stdio-common/tst-scanf-format-vs-ulong.c: New file.
+ * stdio-common/tst-scanf-format-vs-ushort.c: New file.
+ * stdio-common/tst-scanf-format-vs.h: New file.
+
+2025-03-28 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: 53ee7ede430b92fcefd31fc00bfd3fa9acec5846
+ stdio-common: Add tests for formatted vfscanf input specifiers
+
+ * stdio-common/Makefile: Modified.
+ * stdio-common/tst-scanf-format-vf-c.c: New file.
+ * stdio-common/tst-scanf-format-vf-char.c: New file.
+ * stdio-common/tst-scanf-format-vf-double.c: New file.
+ * stdio-common/tst-scanf-format-vf-float.c: New file.
+ * stdio-common/tst-scanf-format-vf-int.c: New file.
+ * stdio-common/tst-scanf-format-vf-ldouble.c: New file.
+ * stdio-common/tst-scanf-format-vf-llong.c: New file.
+ * stdio-common/tst-scanf-format-vf-long.c: New file.
+ * stdio-common/tst-scanf-format-vf-short.c: New file.
+ * stdio-common/tst-scanf-format-vf-uchar.c: New file.
+ * stdio-common/tst-scanf-format-vf-uint.c: New file.
+ * stdio-common/tst-scanf-format-vf-ullong.c: New file.
+ * stdio-common/tst-scanf-format-vf-ulong.c: New file.
+ * stdio-common/tst-scanf-format-vf-ushort.c: New file.
+ * stdio-common/tst-scanf-format-vf.h: New file.
+
+2025-03-28 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: 63c81fa0dbf741b33bbac03bf204d896ee8e4694
+ stdio-common: Add tests for formatted vscanf input specifiers
+
+ * stdio-common/Makefile: Modified.
+ * stdio-common/tst-scanf-format-v-c.c: New file.
+ * stdio-common/tst-scanf-format-v-char.c: New file.
+ * stdio-common/tst-scanf-format-v-double.c: New file.
+ * stdio-common/tst-scanf-format-v-float.c: New file.
+ * stdio-common/tst-scanf-format-v-int.c: New file.
+ * stdio-common/tst-scanf-format-v-ldouble.c: New file.
+ * stdio-common/tst-scanf-format-v-llong.c: New file.
+ * stdio-common/tst-scanf-format-v-long.c: New file.
+ * stdio-common/tst-scanf-format-v-short.c: New file.
+ * stdio-common/tst-scanf-format-v-uchar.c: New file.
+ * stdio-common/tst-scanf-format-v-uint.c: New file.
+ * stdio-common/tst-scanf-format-v-ullong.c: New file.
+ * stdio-common/tst-scanf-format-v-ulong.c: New file.
+ * stdio-common/tst-scanf-format-v-ushort.c: New file.
+ * stdio-common/tst-scanf-format-v.h: New file.
+
+2025-03-28 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: bf6ac302cde4aef55ded7e5340f16e6cd8b8e874
+ stdio-common: Add tests for formatted sscanf input specifiers
+
+ * stdio-common/Makefile: Modified.
+ * stdio-common/tst-scanf-format-ss-c.c: New file.
+ * stdio-common/tst-scanf-format-ss-char.c: New file.
+ * stdio-common/tst-scanf-format-ss-double.c: New file.
+ * stdio-common/tst-scanf-format-ss-float.c: New file.
+ * stdio-common/tst-scanf-format-ss-int.c: New file.
+ * stdio-common/tst-scanf-format-ss-ldouble.c: New file.
+ * stdio-common/tst-scanf-format-ss-llong.c: New file.
+ * stdio-common/tst-scanf-format-ss-long.c: New file.
+ * stdio-common/tst-scanf-format-ss-short.c: New file.
+ * stdio-common/tst-scanf-format-ss-uchar.c: New file.
+ * stdio-common/tst-scanf-format-ss-uint.c: New file.
+ * stdio-common/tst-scanf-format-ss-ullong.c: New file.
+ * stdio-common/tst-scanf-format-ss-ulong.c: New file.
+ * stdio-common/tst-scanf-format-ss-ushort.c: New file.
+ * stdio-common/tst-scanf-format-ss.h: New file.
+
+2025-03-28 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: 50576060c8bf88a3c64c9ab1cdd516974ffb2690
+ stdio-common: Add tests for formatted fscanf input specifiers
+
+ * stdio-common/Makefile: Modified.
+ * stdio-common/tst-scanf-format-f-c.c: New file.
+ * stdio-common/tst-scanf-format-f-char.c: New file.
+ * stdio-common/tst-scanf-format-f-double.c: New file.
+ * stdio-common/tst-scanf-format-f-float.c: New file.
+ * stdio-common/tst-scanf-format-f-int.c: New file.
+ * stdio-common/tst-scanf-format-f-ldouble.c: New file.
+ * stdio-common/tst-scanf-format-f-llong.c: New file.
+ * stdio-common/tst-scanf-format-f-long.c: New file.
+ * stdio-common/tst-scanf-format-f-short.c: New file.
+ * stdio-common/tst-scanf-format-f-uchar.c: New file.
+ * stdio-common/tst-scanf-format-f-uint.c: New file.
+ * stdio-common/tst-scanf-format-f-ullong.c: New file.
+ * stdio-common/tst-scanf-format-f-ulong.c: New file.
+ * stdio-common/tst-scanf-format-f-ushort.c: New file.
+ * stdio-common/tst-scanf-format-f.h: New file.
+
+2025-03-28 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: d527f34cb1d487a4788fe88278a9ad832c53c3ee
+ stdio-common: Add scanf long double data for Intel/Motorola 80-bit format
+
+ * sysdeps/ieee754/ldbl-96/Makefile: Modified.
+ * sysdeps/ieee754/ldbl-96/tst-scanf-format-ldouble-a.input: New file.
+ * sysdeps/ieee754/ldbl-96/tst-scanf-format-ldouble-aa.input: New file.
+ * sysdeps/ieee754/ldbl-96/tst-scanf-format-ldouble-e.input: New file.
+ * sysdeps/ieee754/ldbl-96/tst-scanf-format-ldouble-ee.input: New file.
+ * sysdeps/ieee754/ldbl-96/tst-scanf-format-ldouble-f.input: New file.
+ * sysdeps/ieee754/ldbl-96/tst-scanf-format-ldouble-ff.input: New file.
+ * sysdeps/ieee754/ldbl-96/tst-scanf-format-ldouble-g.input: New file.
+ * sysdeps/ieee754/ldbl-96/tst-scanf-format-ldouble-gg.input: New file.
+ * sysdeps/ieee754/ldbl-96/tst-scanf-format-skeleton-ldouble.c: New file.
+
+2025-03-27 Joseph Myers <josmyers@redhat.com>
+
+ COMMIT: 75ad83f564b822de0f1f5fb6ed29f105373d3c49
+ Implement C23 pown
+
+ * NEWS: Modified.
+ * manual/math.texi: Modified.
+ * math/Makefile: Modified.
+ * math/Versions: Modified.
+ * math/auto-libm-test-in: Modified.
+ * math/auto-libm-test-out-pown: New file.
+ * math/bits/mathcalls.h: Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL): Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL): Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL): New function.
+ * math/gen-auto-libm-tests.c: Modified.
+ (func_calc_method): Modified.
+ (func_calc_desc): Modified.
+ (calc_generic_results): Modified function.
+ (FUNC_mpfr_fL_f): New.
+ * math/gen-tgmath-tests.py: Modified.
+ * math/libm-test-driver.c: Modified.
+ (test_fL_f_data): New.
+ (RUN_TEST_fL_f): New.
+ (RUN_TEST_LOOP_fL_f): New.
+ * math/libm-test-pown.inc: New file.
+ * math/s_pown_template.c: New file.
+ * math/test-tgmath.c: Modified.
+ [! HAVE_MAIN](NCALLS): Modified.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](TYPE): Modified.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](TYPE): Modified.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](TYPE): Modified.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](TYPE): New.
+ [HAVE_MAIN](F): New function.
+ * math/tgmath.h: Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](pown): New.
+ * sysdeps/generic/math-type-macros-double.h: Modified.
+ (M_SET_RESTORE_ROUND): New.
+ * sysdeps/generic/math-type-macros-float.h: Modified.
+ (M_SET_RESTORE_ROUND): New.
+ * sysdeps/generic/math-type-macros-float128.h: Modified.
+ [! SET_RESTORE_ROUNDF128](M_SET_RESTORE_ROUND): New.
+ [SET_RESTORE_ROUNDF128](M_SET_RESTORE_ROUND): New.
+ (fenv_private.h): Include file.
+ * sysdeps/generic/math-type-macros-ldouble.h: Modified.
+ (M_SET_RESTORE_ROUND): New.
+ * sysdeps/generic/math-type-macros.h: Modified.
+ * sysdeps/ieee754/ldbl-128ibm-compat/Versions: Modified.
+ * sysdeps/ieee754/ldbl-opt/Makefile: Modified.
+ * sysdeps/ieee754/ldbl-opt/nldbl-pown.c: New file.
+ * sysdeps/loongarch/math_private.h: Move to...
+ * sysdeps/loongarch/fenv_private.h: ... here.
+ (LOONGARCH_MATH_PRIVATE_H): Remove.
+ (_next <math_private.h): Remove include.
+ (LOONGARCH_FENV_PRIVATE_H): New.
+ (_next <fenv_private.h): Include file.
+ * sysdeps/mach/hurd/i386/libm.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/aarch64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/alpha/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arc/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arm/be/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arm/le/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/csky/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/hppa/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/i386/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/loongarch/lp64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/microblaze/be/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/microblaze/le/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips32/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/or1k/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/riscv/rv32/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/riscv/rv64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sh/be/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sh/le/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/x86_64/64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist: Modified.
+
+2025-03-26 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: be61b9493d38032519e596f282f9695667402c8d
+ support: Use unwinder in links-dso-program-c only with libgcc_s
+
+ * support/Makefile: Modified.
+
+2025-03-26 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: 1233da4943a9a0e334748490225ae10b0d770c0a
+ malloc: Use __always_inline for simple functions
+
+ * malloc/arena.c: Modified.
+ (heap_min_size): Modified function.
+ (heap_max_size): Modified function.
+ (heap_for_ptr): Modified function.
+ (arena_for_chunk): Modified function.
+ (TUNABLE_CALLBACK_FNDECL): Modified.
+ * malloc/malloc.c: Modified.
+ [USE_TCACHE](tcache_free): Modified function.
+ (checked_request2size): Modified function.
+ (get_max_fast): Modified function.
+ (void): Modified.
+ (void): Modified.
+
+2025-03-25 Collin Funk <collin.funk1@gmail.com>
+
+ COMMIT: 3263675250cbcbbcc76ede4f7c660418bd345a11
+ linux: Fix integer overflow warnings when including <sys/mount.h> [BZ #32708]
+
+ * sysdeps/unix/sysv/linux/sys/mount.h: Modified.
+ (<anonymous>): Modified.
+
+2025-03-25 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: cd335350021fd0b7ac533c83717ee38832fd9887
+ malloc: Use _int_free_chunk for remainders
+
+ * malloc/malloc.c: Modified.
+ [IS_IN (libc)](__libc_realloc): Modified function.
+ (sysmalloc): Modified function.
+ (_int_realloc): Modified function.
+
+2025-03-25 Joseph Myers <josmyers@redhat.com>
+
+ COMMIT: 8bac7f7a434e158e9765b3b4d1ecaf10304f5994
+ Use MPFR 4.2.2 and Linux 6.14 in build-many-glibcs.py
+
+ * scripts/build-many-glibcs.py: Modified.
+
+2025-03-25 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: 4bea073069e9e457258d082786297a867593d05b
+ stdio-common: Add scanf long double data for IBM 128-bit format
+
+ * sysdeps/ieee754/ldbl-128ibm-compat/Makefile: Modified.
+ * sysdeps/ieee754/ldbl-128ibm/Makefile: Modified.
+ * sysdeps/ieee754/ldbl-128ibm/tst-scanf-format-ldouble-a.input: New file.
+ * sysdeps/ieee754/ldbl-128ibm/tst-scanf-format-ldouble-aa.input: New file.
+ * sysdeps/ieee754/ldbl-128ibm/tst-scanf-format-ldouble-e.input: New file.
+ * sysdeps/ieee754/ldbl-128ibm/tst-scanf-format-ldouble-ee.input: New file.
+ * sysdeps/ieee754/ldbl-128ibm/tst-scanf-format-ldouble-f.input: New file.
+ * sysdeps/ieee754/ldbl-128ibm/tst-scanf-format-ldouble-ff.input: New file.
+ * sysdeps/ieee754/ldbl-128ibm/tst-scanf-format-ldouble-g.input: New file.
+ * sysdeps/ieee754/ldbl-128ibm/tst-scanf-format-ldouble-gg.input: New file.
+
+2025-03-25 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: 771cda3c9cbbfc33a1a337d964e7749b245dec38
+ stdio-common: Add scanf long double data for IEEE 754 binary64 format
+
+ * sysdeps/ieee754/ldbl-64-128/Makefile: New file.
+ * sysdeps/ieee754/ldbl-opt/Makefile: Modified.
+ * sysdeps/ieee754/ldbl-opt/tst-scanf-format-ldouble-a.input: New file.
+ * sysdeps/ieee754/ldbl-opt/tst-scanf-format-ldouble-aa.input: New file.
+ * sysdeps/ieee754/ldbl-opt/tst-scanf-format-ldouble-e.input: New file.
+ * sysdeps/ieee754/ldbl-opt/tst-scanf-format-ldouble-ee.input: New file.
+ * sysdeps/ieee754/ldbl-opt/tst-scanf-format-ldouble-f.input: New file.
+ * sysdeps/ieee754/ldbl-opt/tst-scanf-format-ldouble-ff.input: New file.
+ * sysdeps/ieee754/ldbl-opt/tst-scanf-format-ldouble-g.input: New file.
+ * sysdeps/ieee754/ldbl-opt/tst-scanf-format-ldouble-gg.input: New file.
+
+2025-03-25 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: 1890e63c86ceb04a49a914dc2cafa9862e938ef6
+ stdio-common: Add scanf long double data for IEEE 754 binary128 format
+
+ * sysdeps/ieee754/ldbl-128/Makefile: Modified.
+ * sysdeps/ieee754/ldbl-128/tst-scanf-format-ldouble-a.input: New file.
+ * sysdeps/ieee754/ldbl-128/tst-scanf-format-ldouble-aa.input: New file.
+ * sysdeps/ieee754/ldbl-128/tst-scanf-format-ldouble-e.input: New file.
+ * sysdeps/ieee754/ldbl-128/tst-scanf-format-ldouble-ee.input: New file.
+ * sysdeps/ieee754/ldbl-128/tst-scanf-format-ldouble-f.input: New file.
+ * sysdeps/ieee754/ldbl-128/tst-scanf-format-ldouble-ff.input: New file.
+ * sysdeps/ieee754/ldbl-128/tst-scanf-format-ldouble-g.input: New file.
+ * sysdeps/ieee754/ldbl-128/tst-scanf-format-ldouble-gg.input: New file.
+
+2025-03-25 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: 0b311614395586608b5433dc8151e098d1906446
+ stdio-common: Add scanf double data for IEEE 754 binary64 format
+
+ * sysdeps/ieee754/dbl-64/Makefile: Modified.
+ * sysdeps/ieee754/dbl-64/tst-scanf-format-double-a.input: New file.
+ * sysdeps/ieee754/dbl-64/tst-scanf-format-double-aa.input: New file.
+ * sysdeps/ieee754/dbl-64/tst-scanf-format-double-e.input: New file.
+ * sysdeps/ieee754/dbl-64/tst-scanf-format-double-ee.input: New file.
+ * sysdeps/ieee754/dbl-64/tst-scanf-format-double-f.input: New file.
+ * sysdeps/ieee754/dbl-64/tst-scanf-format-double-ff.input: New file.
+ * sysdeps/ieee754/dbl-64/tst-scanf-format-double-g.input: New file.
+ * sysdeps/ieee754/dbl-64/tst-scanf-format-double-gg.input: New file.
+
+2025-03-25 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: 26df22636d5876352cbd53b8662173e461e1e220
+ stdio-common: Add scanf float data for IEEE 754 binary32 format
+
+ * sysdeps/ieee754/flt-32/Makefile: New file.
+ * sysdeps/ieee754/flt-32/tst-scanf-format-float-a.input: New file.
+ * sysdeps/ieee754/flt-32/tst-scanf-format-float-aa.input: New file.
+ * sysdeps/ieee754/flt-32/tst-scanf-format-float-e.input: New file.
+ * sysdeps/ieee754/flt-32/tst-scanf-format-float-ee.input: New file.
+ * sysdeps/ieee754/flt-32/tst-scanf-format-float-f.input: New file.
+ * sysdeps/ieee754/flt-32/tst-scanf-format-float-ff.input: New file.
+ * sysdeps/ieee754/flt-32/tst-scanf-format-float-g.input: New file.
+ * sysdeps/ieee754/flt-32/tst-scanf-format-float-gg.input: New file.
+
+2025-03-25 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: a2bacea239c1780b20a1b23a9c3c836ef61c6172
+ stdio-common: Add scanf integer data for LP64 targets
+
+ * sysdeps/wordsize-64/Makefile: Modified.
+ * sysdeps/wordsize-64/tst-scanf-format-int-d.input: New file.
+ * sysdeps/wordsize-64/tst-scanf-format-int-i.input: New file.
+ * sysdeps/wordsize-64/tst-scanf-format-long-d.input: New file.
+ * sysdeps/wordsize-64/tst-scanf-format-long-i.input: New file.
+ * sysdeps/wordsize-64/tst-scanf-format-uint-b.input: New file.
+ * sysdeps/wordsize-64/tst-scanf-format-uint-o.input: New file.
+ * sysdeps/wordsize-64/tst-scanf-format-uint-u.input: New file.
+ * sysdeps/wordsize-64/tst-scanf-format-uint-x.input: New file.
+ * sysdeps/wordsize-64/tst-scanf-format-uint-xx.input: New file.
+ * sysdeps/wordsize-64/tst-scanf-format-ulong-b.input: New file.
+ * sysdeps/wordsize-64/tst-scanf-format-ulong-o.input: New file.
+ * sysdeps/wordsize-64/tst-scanf-format-ulong-u.input: New file.
+ * sysdeps/wordsize-64/tst-scanf-format-ulong-x.input: New file.
+ * sysdeps/wordsize-64/tst-scanf-format-ulong-xx.input: New file.
+
+2025-03-25 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: d7584e4d367ccb281ecf68980995e9b5ca0aff46
+ stdio-common: Add scanf integer data for ILP32 targets
+
+ * sysdeps/wordsize-32/Makefile: New file.
+ * sysdeps/wordsize-32/tst-scanf-format-int-d.input: New file.
+ * sysdeps/wordsize-32/tst-scanf-format-int-i.input: New file.
+ * sysdeps/wordsize-32/tst-scanf-format-long-d.input: New file.
+ * sysdeps/wordsize-32/tst-scanf-format-long-i.input: New file.
+ * sysdeps/wordsize-32/tst-scanf-format-uint-b.input: New file.
+ * sysdeps/wordsize-32/tst-scanf-format-uint-o.input: New file.
+ * sysdeps/wordsize-32/tst-scanf-format-uint-u.input: New file.
+ * sysdeps/wordsize-32/tst-scanf-format-uint-x.input: New file.
+ * sysdeps/wordsize-32/tst-scanf-format-uint-xx.input: New file.
+ * sysdeps/wordsize-32/tst-scanf-format-ulong-b.input: New file.
+ * sysdeps/wordsize-32/tst-scanf-format-ulong-o.input: New file.
+ * sysdeps/wordsize-32/tst-scanf-format-ulong-u.input: New file.
+ * sysdeps/wordsize-32/tst-scanf-format-ulong-x.input: New file.
+ * sysdeps/wordsize-32/tst-scanf-format-ulong-xx.input: New file.
+
+2025-03-25 Maciej W. Rozycki <macro@redhat.com>
+
+ COMMIT: d1a621b735247ba0f7bf288e35a1b172cb6803f6
+ stdio-common: Add tests for formatted scanf input specifiers
+
+ * Makerules: Modified.
+ * stdio-common/Makefile: Modified.
+ * stdio-common/tst-scanf-format-c-b.input: New file.
+ * stdio-common/tst-scanf-format-c-c.input: New file.
+ * stdio-common/tst-scanf-format-c-s.input: New file.
+ * stdio-common/tst-scanf-format-char-d.input: New file.
+ * stdio-common/tst-scanf-format-char-i.input: New file.
+ * stdio-common/tst-scanf-format-character.h: New file.
+ * stdio-common/tst-scanf-format-integer.h: New file.
+ * stdio-common/tst-scanf-format-llong-d.input: New file.
+ * stdio-common/tst-scanf-format-llong-i.input: New file.
+ * stdio-common/tst-scanf-format-real.h: New file.
+ * stdio-common/tst-scanf-format-s-c.c: New file.
+ * stdio-common/tst-scanf-format-s-char.c: New file.
+ * stdio-common/tst-scanf-format-s-double.c: New file.
+ * stdio-common/tst-scanf-format-s-float.c: New file.
+ * stdio-common/tst-scanf-format-s-int.c: New file.
+ * stdio-common/tst-scanf-format-s-ldouble.c: New file.
+ * stdio-common/tst-scanf-format-s-llong.c: New file.
+ * stdio-common/tst-scanf-format-s-long.c: New file.
+ * stdio-common/tst-scanf-format-s-short.c: New file.
+ * stdio-common/tst-scanf-format-s-uchar.c: New file.
+ * stdio-common/tst-scanf-format-s-uint.c: New file.
+ * stdio-common/tst-scanf-format-s-ullong.c: New file.
+ * stdio-common/tst-scanf-format-s-ulong.c: New file.
+ * stdio-common/tst-scanf-format-s-ushort.c: New file.
+ * stdio-common/tst-scanf-format-s.h: New file.
+ * stdio-common/tst-scanf-format-short-d.input: New file.
+ * stdio-common/tst-scanf-format-short-i.input: New file.
+ * stdio-common/tst-scanf-format-skeleton-c.c: New file.
+ * stdio-common/tst-scanf-format-skeleton-char.c: New file.
+ * stdio-common/tst-scanf-format-skeleton-double.c: New file.
+ * stdio-common/tst-scanf-format-skeleton-float.c: New file.
+ * stdio-common/tst-scanf-format-skeleton-int.c: New file.
+ * stdio-common/tst-scanf-format-skeleton-ldouble.c: New file.
+ * stdio-common/tst-scanf-format-skeleton-llong.c: New file.
+ * stdio-common/tst-scanf-format-skeleton-long.c: New file.
+ * stdio-common/tst-scanf-format-skeleton-short.c: New file.
+ * stdio-common/tst-scanf-format-skeleton-uchar.c: New file.
+ * stdio-common/tst-scanf-format-skeleton-uint.c: New file.
+ * stdio-common/tst-scanf-format-skeleton-ullong.c: New file.
+ * stdio-common/tst-scanf-format-skeleton-ulong.c: New file.
+ * stdio-common/tst-scanf-format-skeleton-ushort.c: New file.
+ * stdio-common/tst-scanf-format-skeleton.c: New file.
+ * stdio-common/tst-scanf-format-skeleton.h: New file.
+ * stdio-common/tst-scanf-format-uchar-b.input: New file.
+ * stdio-common/tst-scanf-format-uchar-o.input: New file.
+ * stdio-common/tst-scanf-format-uchar-u.input: New file.
+ * stdio-common/tst-scanf-format-uchar-x.input: New file.
+ * stdio-common/tst-scanf-format-uchar-xx.input: New file.
+ * stdio-common/tst-scanf-format-ullong-b.input: New file.
+ * stdio-common/tst-scanf-format-ullong-o.input: New file.
+ * stdio-common/tst-scanf-format-ullong-u.input: New file.
+ * stdio-common/tst-scanf-format-ullong-x.input: New file.
+ * stdio-common/tst-scanf-format-ullong-xx.input: New file.
+ * stdio-common/tst-scanf-format-ushort-b.input: New file.
+ * stdio-common/tst-scanf-format-ushort-o.input: New file.
+ * stdio-common/tst-scanf-format-ushort-u.input: New file.
+ * stdio-common/tst-scanf-format-ushort-x.input: New file.
+ * stdio-common/tst-scanf-format-ushort-xx.input: New file.
+
+2025-03-25 Zhaoming Luo <zhmingluo@163.com>
+
+ COMMIT: 0544df4f4a9c6ce72de589e95f5bdadce8f103d0
+ mach: Use the host_get_time64 to replace the deprecated host_get_time for CLOCK_REALTIME when it's available
+
+ * config.h.in: Modified.
+ * sysdeps/mach/clock_gettime.c: Modified.
+ (__clock_gettime): Modified function.
+ * sysdeps/mach/configure: Modified.
+ * sysdeps/mach/configure.ac: Modified.
+
+2025-03-25 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ COMMIT: b62692d3c77617747263a4cff5ea3db1ab731df0
+ aio_suspend64: Fix clock discrepancy [BZ #32795]
+
+ * rt/aio_suspend.c: Modified.
+ (___aio_suspend_time64): Modified function.
+ * sysdeps/nptl/aio_misc.h: Modified.
+ (AIO_MISC_WAIT): Modified.
+
+2025-03-24 Aaron Merey <amerey@redhat.com>
+ Frédéric Bérat <fberat@redhat.com>
+
+ COMMIT: e3a6e85d67f1a48dec3e2557a83d6ce1544a58cb
+ Add _FORTIFY_SOURCE support for inet_pton
+
+ * debug/Makefile: Modified.
+ * debug/Versions: Modified.
+ * debug/inet_pton_chk.c: New file.
+ * debug/tst-fortify.c: Modified.
+ (do_test): Modified function.
+ * include/arpa/inet.h: Modified.
+ [! _ISOMAC](libc_hidden_proto): Modified.
+ [! _ISOMAC](libc_hidden_proto): Modified.
+ [! _ISOMAC](libc_hidden_proto): Modified.
+ [! _ISOMAC](libc_hidden_proto): New.
+ * inet/bits/inet-fortified-decl.h: Modified.
+ (__inet_pton_chk): New function.
+ (__REDIRECT_FORTIFY_NTH): New function.
+ (__REDIRECT_NTH): New function.
+ * inet/bits/inet-fortified.h: Modified.
+ (__NTH): New function.
+ * manual/maint.texi: Modified.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/aarch64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/alpha/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arc/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arm/be/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arm/le/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/csky/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/hppa/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/i386/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/loongarch/lp64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/microblaze/be/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/microblaze/le/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/or1k/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sh/be/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sh/le/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/x86_64/64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist: Modified.
+
+2025-03-24 Aaron Merey <amerey@redhat.com>
+ Frédéric Bérat <fberat@redhat.com>
+
+ COMMIT: a71db81ed1353edd00ca2901d2fefd98c53209d3
+ Prepare inet_pton to be fortified
+
+ * resolv/Makefile: Modified.
+ * resolv/inet_pton.c: Modified.
+ (arpa/nameser.h): Remove include.
+ (ctype.h): Remove include.
+ (errno.h): Remove include.
+ (netinet/in.h): Remove include.
+ (string.h): Remove include.
+ (sys/socket.h): Remove include.
+ (sys/types.h): Remove include.
+ (inet_pton4): Remove.
+ (inet_pton6): Remove.
+ (__inet_pton_length): Remove function.
+ (libc_hidden_def): Modified.
+ (libc_hidden_def): Remove.
+ (inet_pton4): Remove function.
+ (hex_digit_value): Remove function.
+ (inet_pton6): Remove function.
+ * resolv/inet_pton_length.c: New file.
+
+2025-03-24 Joseph Myers <josmyers@redhat.com>
+
+ COMMIT: 2fb0009ff1994db2848fd2becd9e7eaaefd7b673
+ Update kernel version to 6.13 in header constant tests
+
+ * sysdeps/unix/sysv/linux/tst-mman-consts.py: Modified.
+ * sysdeps/unix/sysv/linux/tst-mount-consts.py: Modified.
+ * sysdeps/unix/sysv/linux/tst-sched-consts.py: Modified.
+
+2025-03-21 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 5dfbc3c43ecc1bcfc760a032c91bb002660051bc
+ support: Link links-dso-program-c with libgcc_s only if available
+
+ * configure: Modified.
+ * configure.ac: Modified.
+ * support/Makefile: Modified.
+
+2025-03-21 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 2f8e8c9cb72c0f479bd4f9249ef681fe4f36d280
+ elf: Use +nolink-deps to add make-only dependency for tst-origin
+
+ * elf/Makefile: Modified.
+
+2025-03-21 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: c3410db9d0f941a6c464acabb8a63633ef614cbf
+ Makeconfig: Support $(+nolink-deps) in link flags
+
+ * Makeconfig: Modified.
+ * Makerules: Modified.
+
+2025-03-21 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: ed6a68bac7cd056abda9008019c71b167f0362dc
+ debug: Improve '%n' fortify detection (BZ 30932)
+
+ * Makeconfig: Modified.
+ * debug/Makefile: Modified.
+ * debug/readonly-area.c: Modified.
+ (__readonly_area): Modified function.
+ (ldsodefs.h): Include file.
+ * debug/tst-sprintf-fortify-rdonly-dlopen.c: New file.
+ * debug/tst-sprintf-fortify-rdonly-mod.c: New file.
+ * debug/tst-sprintf-fortify-rdonly.c: Modified.
+ (chk_fail_buf): Modified.
+ (chk_fail_ok): Modified.
+ (str2): Modified.
+ (buf2): Remove.
+ (do_test): Modified function.
+ (support/xdlfcn.h): Include file.
+ (ret): New.
+ (handler): New function.
+ (FORTIFY_FAIL): New.
+ (CHK_FAIL_START): New.
+ (CHK_FAIL_END): New.
+ (writeable_format): New.
+ (init_writable): New function.
+ (sprintf_writable): New function.
+ (sprintf_relro): New function.
+ (sprintf_writable_malloc): New function.
+ (str): New.
+ (init_writable_dlopen): New.
+ (sprintf_writable_dlopen): New.
+ (sprintf_rdonly_dlopen): New.
+ (sprintf_writable_malloc_dlopen): New.
+ * elf/Makefile: Modified.
+ * elf/dl-readonly-area.c: New file.
+ * elf/rtld.c: Modified.
+ * include/stdlib.h: Modified.
+ [! _ISOMAC](readonly_error_type): New.
+ [! _ISOMAC](__readonly_area): New function.
+ [! _ISOMAC](__readonly_area_fallback): New function.
+ * stdio-common/vfprintf-internal.c: Modified.
+ (printf_positional): Modified.
+ (Xprintf_buffer): Modified function.
+ (printf_positional): Modified function.
+ * stdio-common/vfprintf-process-arg.c: Modified.
+ (if): Modified function.
+ (if): Modified.
+ (if): Modified.
+ (if): Modified.
+ (if): Remove function.
+ (if): Modified.
+ (if): Remove.
+ (readonly_format): New.
+ (switch): New function.
+ * sysdeps/generic/ldsodefs.h: Modified.
+ [SHARED](rtld_global_ro): Modified.
+ (dl_readonly_area_error_type): New.
+ (_dl_readonly_area): New function.
+ * sysdeps/mach/readonly-area.c: Move to...
+ * sysdeps/mach/readonly-area-fallback.c: ... here.
+ (__readonly_area): Remove function.
+ (__readonly_area_fallback): New function.
+ * sysdeps/unix/sysv/linux/readonly-area.c: Move to...
+ * sysdeps/unix/sysv/linux/readonly-area-fallback.c: ... here.
+ (__readonly_area): Remove function.
+ (__readonly_area_fallback): New function.
+
+2025-03-21 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 1894e219dc530d7074085e95ffe3c1e66cebc072
+ Remove eloop-threshold.h
+
+ * elf/chroot_canon.c: Modified.
+ (eloop-threshold.h): Remove include.
+ (chroot_canon): Modified function.
+ (min-eloop-threshold.h): Include file.
+ * hurd/lookup-retry.c: Modified.
+ (eloop-threshold.h): Remove include.
+ (__hurd_file_name_lookup_retry): Modified function.
+ (min-eloop-threshold.h): Include file.
+ * stdlib/canonicalize.c: Modified.
+ [! _LIBC](eloop-threshold.h): Include file.
+ [! _LIBC](MIN_ELOOP_THRESHOLD): New.
+ [_LIBC](min-eloop-threshold.h): Include file.
+ [_LIBC || !FUNC_REALPATH_WORKS](realpath_stk): Modified function.
+ (eloop-threshold.h): Remove include.
+ * stdlib/tst-canon-bz26341.c: Modified.
+ (eloop-threshold.h): Remove include.
+ (create_link): Modified function.
+ (min-eloop-threshold.h): Include file.
+ * sysdeps/generic/eloop-threshold.h: Delete file.
+ * sysdeps/generic/min-eloop-threshold.h: New file.
+ * sysdeps/mach/hurd/eloop-threshold.h: Move to...
+ * sysdeps/mach/hurd/min-eloop-threshold.h: ... here.
+ (_ELOOP_THRESHOLD_H): Remove.
+ (__eloop_threshold): Remove function.
+ (_MIN_ELOOP_THRESHOLD_H): New.
+ (MIN_ELOOP_THRESHOLD): New.
+ * sysdeps/mach/hurd/sysconf.c: Modified.
+ (eloop-threshold.h): Remove include.
+ (SYMLOOP_MAX): Modified.
+ (min-eloop-threshold.h): Include file.
+
+2025-03-21 Cupertino Miranda <cupertino.miranda@oracle.com>
+
+ COMMIT: 855561a1fbc601aa6c373c8a036d472cb52786e7
+ malloc: missing initialization of tcache in _mid_memalign
+
+ * malloc/malloc.c: Modified.
+ [IS_IN (libc)](_mid_memalign): Modified function.
+
+2025-03-21 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 3e2be87832781a29ed67f38f87c1ce3dd4c1b866
+ support: Link links-dso-program-c against libgcc_s
+
+ * support/Makefile: Modified.
+ * support/links-dso-program-c.c: Modified.
+ (main): Modified function.
+ (dlfcn.h): Include file.
+ (cleanup_function): New function.
+ (invoke_callback): New function.
+
+2025-03-21 Frédéric Bérat <fberat@redhat.com>
+
+ COMMIT: 090dfa40a5e46f7c0e4d6e8369bcbbd51267625f
+ Add _FORTIFY_SOURCE support for inet_ntop
+
+ * debug/Makefile: Modified.
+ * debug/Versions: Modified.
+ * debug/inet_ntop_chk.c: New file.
+ * debug/tst-fortify.c: Modified.
+ (do_test): Modified function.
+ (arpa/inet.h): Include file.
+ * include/arpa/inet.h: Modified.
+ [! _ISOMAC](libc_hidden_proto): Modified.
+ [! _ISOMAC](libc_hidden_proto): Modified.
+ [! _ISOMAC](libc_hidden_proto): Modified.
+ [! _ISOMAC](libc_hidden_proto): Modified.
+ [! _ISOMAC](libc_hidden_proto): Modified.
+ [! _ISOMAC](bits/inet-fortified-decl.h): Include file.
+ [! _ISOMAC](libc_hidden_proto): New.
+ * include/bits/inet-fortified-decl.h: New file.
+ * include/bits/inet-fortified.h: New file.
+ * inet/Makefile: Modified.
+ * inet/arpa/inet.h: Modified.
+ [__USE_FORTIFY_LEVEL > 0 && __forty_function](bits/inet-fortified.h): New.
+ * inet/bits/inet-fortified-decl.h: New file.
+ * inet/bits/inet-fortified.h: New file.
+ * manual/maint.texi: Modified.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/aarch64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/alpha/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arc/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arm/be/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arm/le/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/csky/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/hppa/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/i386/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/loongarch/lp64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/microblaze/be/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/microblaze/le/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/or1k/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sh/be/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sh/le/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/x86_64/64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist: Modified.
+
+2025-03-21 Frédéric Bérat <fberat@redhat.com>
+
+ COMMIT: 3cdb99d8bb9d0008b2b297080e61d6c10dd66cc8
+ Add missing guards in include/arpa/inet.h
+
+ * include/arpa/inet.h: Modified.
+
+2025-03-21 Frédéric Bérat <fberat@redhat.com>
+
+ COMMIT: 84373ef7b72c9c8ab61ce1fdfd798777715a1a52
+ Prepare inet_ntop to be fortified
+
+ * include/arpa/inet.h: Modified.
+ [! _ISOMAC](libc_hidden_proto): Modified.
+ [! _ISOMAC](__inet_ntop): New.
+ * nss/getnameinfo.c: Modified.
+ (gni_host_inet_numeric): Modified function.
+ * resolv/inet_ntop.c: Modified.
+ (inet_ntop): Remove function.
+ (libc_hidden_def): Modified.
+ (__inet_ntop): New function.
+ (weak_alias): New.
+
+2025-03-19 Paul Zimmermann <Paul.Zimmermann@inria.fr>
+
+ COMMIT: c5113a838b28a8894da19794ca7a69c5ace959a3
+ add inputs giving large errors for rsqrt
+
+ * math/auto-libm-test-in: Modified.
+ * math/auto-libm-test-out-rsqrt: Modified.
+
+2025-03-18 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: 575de3d6663273b9d4d8fd483a9b45a971aac3af
+ malloc: Improve csize2tidx
+
+ * malloc/malloc.c: Modified.
+ [USE_TCACHE](csize2tidx): Modified.
+
+2025-03-18 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 5291d9f1e274dd869bc0b3d044fd4cbae486893d
+ elf: Fix tst-origin make rules
+
+ * elf/Makefile: Modified.
+
+2025-03-18 Pierre Blanchard <pierre.blanchard@arm.com>
+
+ COMMIT: cf56eb28fa277d9dbb301654682ca89f71c30a48
+ AArch64: Optimize algorithm in users of SVE expf helper
+
+ * sysdeps/aarch64/fpu/coshf_sve.c: Modified.
+ * sysdeps/aarch64/fpu/expf_sve.c: Modified.
+ * sysdeps/aarch64/fpu/sv_expf_inline.h: Modified.
+ (sv_expf_data): Modified.
+ (SV_EXPF_DATA): Modified.
+ (C): Remove.
+ (expf_inline): Modified function.
+
+2025-03-18 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: 9f551e28a74941e17ed4572511a2308c03f5a718
+ malloc: Improve arena_for_chunk()
+
+ * malloc/arena.c: Modified.
+ (heap_min_size): Modified function.
+ (heap_max_size): Modified function.
+ (ptmalloc_init): Modified function.
+ (new_heap): Modified function.
+
+2025-03-18 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: dd003db8d127b0a8ebabc6a972501a7d881073ea
+ benchtests: Increase iterations of bench-malloc-simple
+
+ * benchtests/bench-malloc-simple.c: Modified.
+ (NUM_ITERS): Modified.
+
+2025-03-17 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 997f49fbadf892136c77115edd537c832fb8074d
+ elf: Fix tst-origin make rules
+
+ * elf/Makefile: Modified.
+
+2025-03-15 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ COMMIT: bfb2f2f481147da54237ade3266f2586a51d43c9
+ htl: Make pthread_setcanceltype / state a cancellation point
+
+ * htl/pt-setcancelstate.c: Modified.
+ (__pthread_setcancelstate): Modified function.
+ * htl/pt-setcanceltype.c: Modified.
+ (__pthread_setcanceltype): Modified function.
+ * sysdeps/htl/pthreadP.h: Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): New.
+
+2025-03-14 Siddhesh Poyarekar <siddhesh@sourceware.org>
+
+ COMMIT: 10af00f7a135c85796a9c4c75228358b8898da5c
+ tst-fopen-threaded: Only check EOF for failing read
+
+ * sysdeps/pthread/tst-fopen-threaded.c: Modified.
+ (threadReadRoutine): Modified function.
+
+2025-03-14 Joseph Myers <josmyers@redhat.com>
+
+ COMMIT: 409668f6e88b63607e2cea29b3ce2a1c25f04bf1
+ Implement C23 powr
+
+ * NEWS: Modified.
+ * manual/math.texi: Modified.
+ * math/Makefile: Modified.
+ * math/Versions: Modified.
+ * math/auto-libm-test-in: Modified.
+ * math/auto-libm-test-out-powr: New file.
+ * math/bits/mathcalls.h: Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL): Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL): New function.
+ * math/gen-auto-libm-tests.c: Modified.
+ * math/gen-tgmath-tests.py: Modified.
+ * math/libm-test-powr.inc: New file.
+ * math/s_powr_template.c: New file.
+ * math/test-tgmath.c: Modified.
+ [! HAVE_MAIN](NCALLS): Modified.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](TYPE): Modified.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](TYPE): Modified.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](TYPE): Modified.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](TYPE): New.
+ [HAVE_MAIN](F): New function.
+ * math/tgmath.h: Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](powr): New.
+ * sysdeps/ieee754/ldbl-128ibm-compat/Versions: Modified.
+ * sysdeps/ieee754/ldbl-opt/Makefile: Modified.
+ * sysdeps/ieee754/ldbl-opt/nldbl-powr.c: New file.
+ * sysdeps/mach/hurd/i386/libm.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/aarch64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/alpha/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arc/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arm/be/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arm/le/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/csky/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/hppa/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/i386/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/loongarch/lp64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/microblaze/be/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/microblaze/le/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips32/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/or1k/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/riscv/rv32/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/riscv/rv64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sh/be/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sh/le/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/x86_64/64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist: Modified.
+
+2025-03-13 Sunil K Pandey <skpgkp2@gmail.com>
+
+ COMMIT: c7c4a5906f326f1290b1c2413a83c530564ec4b8
+ x86_64: Add atanh with FMA
+
+ * benchtests/atanh-inputs: Modified.
+ * sysdeps/ieee754/dbl-64/e_atanh.c: Modified.
+ [! SECTION](SECTION): New.
+ (SECTION): New.
+ * sysdeps/x86_64/fpu/multiarch/Makefile: Modified.
+ * sysdeps/x86_64/fpu/multiarch/e_atanh-fma.c: New file.
+ * sysdeps/x86_64/fpu/multiarch/e_atanh.c: New file.
+
+2025-03-13 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+ Geoffrey Thomas <geofft@ldpreload.com>
+
+ COMMIT: 9b646f5dc933dfa019f2ed7f80b6198b43e31f62
+ elf: Canonicalize $ORIGIN in an explicit ld.so invocation [BZ 25263]
+
+ * elf/Makefile: Modified.
+ * elf/dl-load.c: Modified.
+ [! EXTERNAL_MAP_FROM_FD](_dl_map_object_from_fd): Modified function.
+ * elf/dl-origin.c: Modified.
+ (_dl_canonicalize): New function.
+ * elf/liborigin-mod.c: New file.
+ * elf/tst-origin.c: New file.
+ * elf/tst-origin.sh: New file.
+ * stdio-common/Makefile: Modified.
+ * stdio-common/_fitoa_word.c: New file.
+ * stdio-common/_itoa.c: Modified.
+ [IS_IN (libc)](_itoa_word): Remove.
+ [IS_IN (libc)](SPECIAL): Remove.
+ (_fitoa_word): Remove function.
+ * sysdeps/generic/_itoa.h: Modified.
+ [!(IS_IN (libc))](_itoa_word): Remove.
+ [!(IS_IN (libc))](SPECIAL): Remove.
+ [IS_IN (libc)](_itoa_word): Remove.
+ (_itoa_word): New function.
+ * sysdeps/generic/ldsodefs.h: Modified.
+ (_dl_canonicalize): New function.
+ * sysdeps/mach/hurd/Makefile: Modified.
+ * sysdeps/unix/sysv/linux/dl-origin.c: Modified.
+ (fd_to_filename.h): Include file.
+ (_dl_canonicalize): New function.
+
+2025-03-13 Sunil K Pandey <skpgkp2@gmail.com>
+
+ COMMIT: dded0d20f67ba1925ccbcb9cf28f0c75febe0dbe
+ x86_64: Add sinh with FMA
+
+ * benchtests/sinh-inputs: Modified.
+ * sysdeps/ieee754/dbl-64/e_sinh.c: Modified.
+ [! SECTION](SECTION): New.
+ (SECTION): New.
+ * sysdeps/x86_64/fpu/multiarch/Makefile: Modified.
+ * sysdeps/x86_64/fpu/multiarch/e_sinh-fma.c: New file.
+ * sysdeps/x86_64/fpu/multiarch/e_sinh.c: New file.
+
+2025-03-13 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 5e1a64736ea472274d51073898e4b5f2f23904cc
+ benchtests: Remove wrong snippet from 360cce0b06
+
+ * benchtests/tanh-inputs: Modified.
+
+2025-03-13 Sunil K Pandey <skpgkp2@gmail.com>
+
+ COMMIT: c6352111c72a20b3588ae304dd99b63e25dd6d85
+ x86_64: Add tanh with FMA
+
+ * sysdeps/ieee754/dbl-64/s_tanh.c: Modified.
+ [! SECTION](SECTION): New.
+ (SECTION): New.
+ * sysdeps/x86_64/fpu/multiarch/Makefile: Modified.
+ * sysdeps/x86_64/fpu/multiarch/s_tanh-fma.c: New file.
+ * sysdeps/x86_64/fpu/multiarch/s_tanh.c: New file.
+
+2025-03-13 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 360cce0b066f34e85e473c04cdc16e6fa426021b
+ nptl: Check if thread is already terminated in sigcancel_handler (BZ 32782)
+
+ * benchtests/tanh-inputs: Modified.
+ * nptl/pthread_cancel.c: Modified.
+ (sigcancel_handler): Modified function.
+ * sysdeps/pthread/Makefile: Modified.
+ * sysdeps/pthread/tst-cancel32.c: New file.
+
+2025-03-13 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: dbc5a50d12eff4cb3f782129029d04b8a76f58e7
+ nptl: PTHREAD_COND_INITIALIZER compatibility with pre-2.41 versions (bug 32786)
+
+ * sysdeps/nptl/bits/thread-shared-types.h: Modified.
+ (__pthread_cond_s): Modified.
+ * sysdeps/nptl/pthread.h: Modified.
+ (PTHREAD_COND_INITIALIZER): Modified.
+
+2025-03-12 zhenwei pi <pizhenwei@bytedance.com>
+
+ COMMIT: a8e9022e0f829d44a818c642fc85b3bfbd26a514
+ getaddrinfo.c: support MPTCP (BZ #29609)
+
+ * nss/getaddrinfo.c: Modified.
+ * nss/tst-getaddrinfo3.c: Modified.
+ (do_test): Modified function.
+
+2025-03-12 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 3e8814903c584b582740b42fa5fb0ad4e0e480bf
+ math: Refactor how to use libm-test-ulps
+
+ * Makefile.in: Modified.
+ * manual/Makefile: Modified.
+ * manual/math.texi: Modified.
+ * math/Makefile: Modified.
+ * math/README.libm-test: Modified.
+ * math/gen-libm-test.py: Modified.
+ * math/libm-test-support.c: Modified.
+ (find_ulps): Modified function.
+ (init_max_error): Modified function.
+ (check_complex_max_error): Modified function.
+ (libm_test_finish): Modified function.
+ (array_length.h): Include file.
+ (stdbool.h): Include file.
+ (is_complex): New.
+ (default_max_valid_error): New function.
+ * sysdeps/aarch64/libm-test-ulps: Delete file.
+ * sysdeps/aarch64/libm-test-ulps-name: Delete file.
+ * sysdeps/alpha/fpu/libm-test-ulps: Delete file.
+ * sysdeps/alpha/fpu/libm-test-ulps-name: Delete file.
+ * sysdeps/arc/fpu/libm-test-ulps: Delete file.
+ * sysdeps/arc/fpu/libm-test-ulps-name: Delete file.
+ * sysdeps/arc/nofpu/libm-test-ulps: Delete file.
+ * sysdeps/arc/nofpu/libm-test-ulps-name: Delete file.
+ * sysdeps/arm/libm-test-ulps: Delete file.
+ * sysdeps/arm/libm-test-ulps-name: Delete file.
+ * sysdeps/csky/fpu/libm-test-ulps: Delete file.
+ * sysdeps/csky/fpu/libm-test-ulps-name: Delete file.
+ * sysdeps/csky/nofpu/libm-test-ulps: Delete file.
+ * sysdeps/csky/nofpu/libm-test-ulps-name: Delete file.
+ * sysdeps/generic/libm-test-ulps: Delete file.
+ * sysdeps/generic/libm-test-ulps-name: Delete file.
+ * sysdeps/hppa/fpu/libm-test-ulps: Delete file.
+ * sysdeps/hppa/fpu/libm-test-ulps-name: Delete file.
+ * sysdeps/i386/fpu/libm-test-ulps: Modified.
+ * sysdeps/i386/fpu/libm-test-ulps-name: Delete file.
+ * sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Delete file.
+ * sysdeps/i386/i686/fpu/multiarch/libm-test-ulps-name: Delete file.
+ * sysdeps/ieee754/flt-32/libm-test-ulps: New file.
+ * sysdeps/loongarch/lp64/libm-test-ulps: Delete file.
+ * sysdeps/loongarch/lp64/libm-test-ulps-name: Delete file.
+ * sysdeps/m68k/coldfire/fpu/libm-test-ulps: Delete file.
+ * sysdeps/m68k/coldfire/fpu/libm-test-ulps-name: Delete file.
+ * sysdeps/m68k/m680x0/fpu/libm-test-ulps: Delete file.
+ * sysdeps/m68k/m680x0/fpu/libm-test-ulps-name: Delete file.
+ * sysdeps/microblaze/libm-test-ulps: Delete file.
+ * sysdeps/microblaze/libm-test-ulps-name: Delete file.
+ * sysdeps/mips/mips32/libm-test-ulps: Delete file.
+ * sysdeps/mips/mips32/libm-test-ulps-name: Delete file.
+ * sysdeps/mips/mips64/libm-test-ulps: Delete file.
+ * sysdeps/mips/mips64/libm-test-ulps-name: Delete file.
+ * sysdeps/or1k/fpu/libm-test-ulps: Delete file.
+ * sysdeps/or1k/fpu/libm-test-ulps-name: Delete file.
+ * sysdeps/or1k/nofpu/libm-test-ulps: Delete file.
+ * sysdeps/or1k/nofpu/libm-test-ulps-name: Delete file.
+ * sysdeps/powerpc/fpu/libm-test-ulps: Delete file.
+ * sysdeps/powerpc/fpu/libm-test-ulps-name: Delete file.
+ * sysdeps/powerpc/nofpu/libm-test-ulps: Delete file.
+ * sysdeps/powerpc/nofpu/libm-test-ulps-name: Delete file.
+ * sysdeps/riscv/nofpu/libm-test-ulps: Delete file.
+ * sysdeps/riscv/nofpu/libm-test-ulps-name: Delete file.
+ * sysdeps/riscv/rvd/libm-test-ulps: Delete file.
+ * sysdeps/riscv/rvd/libm-test-ulps-name: Delete file.
+ * sysdeps/s390/fpu/libm-test-ulps: Delete file.
+ * sysdeps/s390/fpu/libm-test-ulps-name: Delete file.
+ * sysdeps/sh/libm-test-ulps: Delete file.
+ * sysdeps/sh/libm-test-ulps-name: Delete file.
+ * sysdeps/sparc/fpu/libm-test-ulps: Delete file.
+ * sysdeps/sparc/fpu/libm-test-ulps-name: Delete file.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Delete file.
+ * sysdeps/x86_64/fpu/libm-test-ulps-name: Delete file.
+
+2025-03-12 Joseph Myers <josmyers@redhat.com>
+
+ COMMIT: eea6f1e079a301dfd5c7b7f4faf38b4d6e7ea059
+ Update syscall lists for Linux 6.13
+
+ * sysdeps/unix/sysv/linux/aarch64/arch-syscall.h: Modified.
+ (__NR_getxattrat): New.
+ (__NR_listxattrat): New.
+ (__NR_removexattrat): New.
+ (__NR_setxattrat): New.
+ * sysdeps/unix/sysv/linux/alpha/arch-syscall.h: Modified.
+ (__NR_getxattrat): New.
+ (__NR_listxattrat): New.
+ (__NR_removexattrat): New.
+ (__NR_setxattrat): New.
+ * sysdeps/unix/sysv/linux/arc/arch-syscall.h: Modified.
+ (__NR_getxattrat): New.
+ (__NR_listxattrat): New.
+ (__NR_removexattrat): New.
+ (__NR_setxattrat): New.
+ * sysdeps/unix/sysv/linux/arm/arch-syscall.h: Modified.
+ (__NR_getxattrat): New.
+ (__NR_listxattrat): New.
+ (__NR_removexattrat): New.
+ (__NR_setxattrat): New.
+ * sysdeps/unix/sysv/linux/csky/arch-syscall.h: Modified.
+ (__NR_getxattrat): New.
+ (__NR_listxattrat): New.
+ (__NR_removexattrat): New.
+ (__NR_setxattrat): New.
+ * sysdeps/unix/sysv/linux/hppa/arch-syscall.h: Modified.
+ (__NR_getxattrat): New.
+ (__NR_listxattrat): New.
+ (__NR_removexattrat): New.
+ (__NR_setxattrat): New.
+ * sysdeps/unix/sysv/linux/i386/arch-syscall.h: Modified.
+ (__NR_getxattrat): New.
+ (__NR_listxattrat): New.
+ (__NR_removexattrat): New.
+ (__NR_setxattrat): New.
+ * sysdeps/unix/sysv/linux/loongarch/arch-syscall.h: Modified.
+ (__NR_getxattrat): New.
+ (__NR_listxattrat): New.
+ (__NR_removexattrat): New.
+ (__NR_setxattrat): New.
+ * sysdeps/unix/sysv/linux/m68k/arch-syscall.h: Modified.
+ (__NR_getxattrat): New.
+ (__NR_listxattrat): New.
+ (__NR_removexattrat): New.
+ (__NR_setxattrat): New.
+ * sysdeps/unix/sysv/linux/microblaze/arch-syscall.h: Modified.
+ (__NR_getxattrat): New.
+ (__NR_listxattrat): New.
+ (__NR_removexattrat): New.
+ (__NR_setxattrat): New.
+ * sysdeps/unix/sysv/linux/mips/mips32/arch-syscall.h: Modified.
+ (__NR_getxattrat): New.
+ (__NR_listxattrat): New.
+ (__NR_removexattrat): New.
+ (__NR_setxattrat): New.
+ * sysdeps/unix/sysv/linux/mips/mips64/n32/arch-syscall.h: Modified.
+ (__NR_getxattrat): New.
+ (__NR_listxattrat): New.
+ (__NR_removexattrat): New.
+ (__NR_setxattrat): New.
+ * sysdeps/unix/sysv/linux/mips/mips64/n64/arch-syscall.h: Modified.
+ (__NR_getxattrat): New.
+ (__NR_listxattrat): New.
+ (__NR_removexattrat): New.
+ (__NR_setxattrat): New.
+ * sysdeps/unix/sysv/linux/or1k/arch-syscall.h: Modified.
+ (__NR_getxattrat): New.
+ (__NR_listxattrat): New.
+ (__NR_removexattrat): New.
+ (__NR_setxattrat): New.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/arch-syscall.h: Modified.
+ (__NR_getxattrat): New.
+ (__NR_listxattrat): New.
+ (__NR_removexattrat): New.
+ (__NR_setxattrat): New.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/arch-syscall.h: Modified.
+ (__NR_getxattrat): New.
+ (__NR_listxattrat): New.
+ (__NR_removexattrat): New.
+ (__NR_setxattrat): New.
+ * sysdeps/unix/sysv/linux/riscv/rv32/arch-syscall.h: Modified.
+ (__NR_getxattrat): New.
+ (__NR_listxattrat): New.
+ (__NR_removexattrat): New.
+ (__NR_setxattrat): New.
+ * sysdeps/unix/sysv/linux/riscv/rv64/arch-syscall.h: Modified.
+ (__NR_getxattrat): New.
+ (__NR_listxattrat): New.
+ (__NR_removexattrat): New.
+ (__NR_setxattrat): New.
+ * sysdeps/unix/sysv/linux/s390/s390-32/arch-syscall.h: Modified.
+ (__NR_getxattrat): New.
+ (__NR_listxattrat): New.
+ (__NR_removexattrat): New.
+ (__NR_setxattrat): New.
+ * sysdeps/unix/sysv/linux/s390/s390-64/arch-syscall.h: Modified.
+ (__NR_getxattrat): New.
+ (__NR_listxattrat): New.
+ (__NR_removexattrat): New.
+ (__NR_setxattrat): New.
+ * sysdeps/unix/sysv/linux/sh/arch-syscall.h: Modified.
+ (__NR_getxattrat): New.
+ (__NR_listxattrat): New.
+ (__NR_removexattrat): New.
+ (__NR_setxattrat): New.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/arch-syscall.h: Modified.
+ (__NR_getxattrat): New.
+ (__NR_listxattrat): New.
+ (__NR_removexattrat): New.
+ (__NR_setxattrat): New.
+ * sysdeps/unix/sysv/linux/sparc/sparc64/arch-syscall.h: Modified.
+ (__NR_getxattrat): New.
+ (__NR_listxattrat): New.
+ (__NR_removexattrat): New.
+ (__NR_setxattrat): New.
+ * sysdeps/unix/sysv/linux/syscall-names.list: Modified.
+ * sysdeps/unix/sysv/linux/x86_64/64/arch-syscall.h: Modified.
+ (__NR_getxattrat): New.
+ (__NR_listxattrat): New.
+ (__NR_removexattrat): New.
+ (__NR_setxattrat): New.
+ * sysdeps/unix/sysv/linux/x86_64/x32/arch-syscall.h: Modified.
+ (__NR_getxattrat): New.
+ (__NR_listxattrat): New.
+ (__NR_removexattrat): New.
+ (__NR_setxattrat): New.
+
+2025-03-12 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 517846c85dfc48aa231e28e95e8f90a6d8a8efde
+ Makefile: Clean up pthread_atfork integration
+
+ * nptl/Makefile: Modified.
+ * sysdeps/pthread/Makefile: Modified.
+
+2025-03-12 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 6e30efe570f1ba135747c6d8f4004e78cd24c49c
+ nptl: Include <stdbool.h> in tst-pthread_gettid_np.c
+
+ * nptl/tst-pthread_gettid_np.c: Modified.
+ (stdbool.h): Include file.
+
+2025-03-12 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 1ec411f7aec1bb7fb0992c8e23a42cea306305aa
+ Linux: Add new test misc/tst-sched_setattr-thread
+
+ * sysdeps/unix/sysv/linux/Makefile: Modified.
+ * sysdeps/unix/sysv/linux/tst-sched_setattr-thread.c: New file.
+
+2025-03-12 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 74c68fa61b5ebf4c64605a3cc5e47154a66671ce
+ Linux: Remove attribute access from sched_getattr (bug 32781)
+
+ * sysdeps/unix/sysv/linux/bits/sched.h: Modified.
+ [__USE_GNU](sched_getattr): Modified.
+
+2025-03-12 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 74d463c50bb1096efef47022405c7db33f83fb5a
+ Linux: Add the pthread_gettid_np function (bug 27880)
+
+ * NEWS: Modified.
+ * manual/process.texi: Modified.
+ * nptl/Makefile: Modified.
+ * nptl/Versions: Modified.
+ * nptl/pthread_gettid_np.c: New file.
+ * nptl/tst-pthread_gettid_np.c: New file.
+ * sysdeps/nptl/pthread.h: Modified.
+ [__GNUC__ && __EXCEPTIONS][__cplusplus][__USE_GNU][__USE_GNU][__USE_GNU](pthread_gettid_np): New function.
+ * sysdeps/unix/sysv/linux/aarch64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/alpha/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arc/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arm/be/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arm/le/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/csky/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/hppa/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/i386/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/loongarch/lp64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/microblaze/be/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/microblaze/le/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/or1k/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sh/be/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sh/le/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/x86_64/64/libc.abilist: Modified.
+ * sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist: Modified.
+
+2025-03-11 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: d604f9c500570e80febfcc6a52b63a002b466f35
+ elf: Test dlopen (NULL, RTLD_LAZY) from an ELF constructor
+
+ * elf/Makefile: Modified.
+ * elf/dl-open.c: Modified.
+ * elf/tst-dlopen-constructor-null-mod1.c: New file.
+ * elf/tst-dlopen-constructor-null-mod2.c: New file.
+ * elf/tst-dlopen-constructor-null.c: New file.
+
+2025-03-11 Stefan Liebler <stli@linux.ibm.com>
+
+ COMMIT: 6eda7a59dda129d462ab3f157eda280dbf0ed168
+ s390x: Regenerate ULPs.
+
+ * sysdeps/s390/fpu/libm-test-ulps: Modified.
+
+2025-03-08 Aurelien Jarno <aurelien@aurel32.net>
+
+ COMMIT: 443cb0b5f25129dd0f1e9f9101299d31c4700b7f
+ math: Remove an extra semicolon in math function declarations
+
+ * math/bits/mathcalls-macros.h: Modified.
+ (__MATHDECLX): Modified.
+
+2025-03-07 Sergey Kolosov <skolosov@redhat.com>
+ DJ Delorie <dj@redhat.com>
+
+ COMMIT: a9017caff3b77032d04e2e439f7c04a63241e63e
+ nptl: extend test coverage for sched_yield
+
+ * sysdeps/unix/sysv/linux/tst-skeleton-affinity.c: Modified.
+ (do_test): Modified function.
+ (support/test-driver.h): Include file.
+ * sysdeps/unix/sysv/linux/tst-skeleton-thread-affinity.c: Modified.
+ (thread_burn_one_cpu): Modified function.
+ (thread_burn_any_cpu): Modified function.
+ (early_test): Modified function.
+ (barrier): New.
+
+2025-03-07 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 6ef0bd02dbe34aab8b956ffa2db5679341d520f5
+ posix: Move environ helper variables next to environ definition (bug 32541)
+
+ * posix/environ.c: Modified.
+ (stdlib/setenv.h): Include file.
+ (__environ_array_list): New.
+ (__environ_counter): New.
+ * stdlib/Makefile: Modified.
+ * stdlib/getenv.c: Modified.
+ (__environ_array_list): Remove.
+ (__environ_counter): Remove.
+ * stdlib/tst-getenv-static.c: New file.
+
+2025-03-07 Joseph Myers <josmyers@redhat.com>
+
+ COMMIT: 77261698b4e938020a1b2032709a54d942ba330f
+ Implement C23 rsqrt
+
+ * NEWS: Modified.
+ * manual/math.texi: Modified.
+ * math/Makefile: Modified.
+ * math/Versions: Modified.
+ * math/auto-libm-test-in: Modified.
+ * math/auto-libm-test-out-rsqrt: New file.
+ * math/bits/mathcalls.h: Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](__MATHCALL): New function.
+ * math/gen-auto-libm-tests.c: Modified.
+ * math/gen-tgmath-tests.py: Modified.
+ * math/libm-test-rsqrt.inc: New file.
+ * math/s_rsqrt_template.c: New file.
+ * math/test-tgmath.c: Modified.
+ [! HAVE_MAIN](NCALLS): Modified.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](TYPE): Modified.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](TYPE): Modified.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](TYPE): Modified.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](F): Modified function.
+ [HAVE_MAIN](TYPE): New.
+ [HAVE_MAIN](F): New function.
+ * math/tgmath.h: Modified.
+ [__GLIBC_USE (IEC_60559_FUNCS_EXT_C23)](rsqrt): New.
+ * sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Modified.
+ * sysdeps/ieee754/ldbl-128ibm-compat/Versions: Modified.
+ * sysdeps/ieee754/ldbl-opt/Makefile: Modified.
+ * sysdeps/ieee754/ldbl-opt/nldbl-rsqrt.c: New file.
+ * sysdeps/mach/hurd/i386/libm.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/aarch64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/alpha/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arc/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arm/be/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/arm/le/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/csky/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/hppa/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/i386/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/loongarch/lp64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/microblaze/be/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/microblaze/le/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips32/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/mips/mips64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/or1k/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/riscv/rv32/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/riscv/rv64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sh/be/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sh/le/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/x86_64/64/libm.abilist: Modified.
+ * sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist: Modified.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Modified.
+
+2025-03-07 Joseph Myers <josmyers@redhat.com>
+
+ COMMIT: ee3b1d15da412be19583085f81c220653b270c1f
+ Use binutils 2.44 branch and Linux 6.13 in build-many-glibcs.py
+
+ * scripts/build-many-glibcs.py: Modified.
+
+2025-03-07 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 46d31980943d8be2f421c1e3276b265c7552636e
+ elf: Fix handling of symbol versions which hash to zero (bug 29190)
+
+ * elf/Makefile: Modified.
+ * elf/dl-lookup.c: Modified.
+ (check_match): Modified function.
+ * elf/dl-version.c: Modified.
+ (_dl_check_map_versions): Modified function.
+ * elf/tst-version-hash-zero-linkmod.c: New file.
+ * elf/tst-version-hash-zero-linkmod.map: New file.
+ * elf/tst-version-hash-zero-mod.c: New file.
+ * elf/tst-version-hash-zero-mod.map: New file.
+ * elf/tst-version-hash-zero-refmod.c: New file.
+ * elf/tst-version-hash-zero.c: New file.
+
+2025-03-07 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 59dc232df277c21239c357e3519682c26e182cd7
+ configure: Fix spelling of -Wl,--no-error-execstack option
+
+ * configure: Modified.
+ * configure.ac: Modified.
+
+2025-03-06 Carlos O'Donell <carlos@redhat.com>
+
+ COMMIT: 5b309075456e07b6231db331092a1f307cb7664b
+ manual: Mark perror as MT-unsafe and update check-safety.sh
+
+ * manual/check-safety.sh: Modified.
+ * manual/errno.texi: Modified.
+
+2025-03-07 H.J. Lu <hjl.tools@gmail.com>
+
+ COMMIT: 9b91484bee8f6f1bf1e2d26a8df461b553784528
+ elf: Check if __attribute__ ((aligned (65536))) is supported
+
+ * configure: Modified.
+ * configure.ac: Modified.
+ * elf/Makefile: Modified.
+
+2025-03-06 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ COMMIT: 4e68a5ca5da468c7e8a710a94455d5b27722f8e6
+ htl: Make __pthread_create_internal directly call __pthread_sigmask
+
+ * htl/pt-create.c: Modified.
+ (__pthread_create_internal): Modified function.
+
+2025-03-06 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ COMMIT: 81c4ec1ca8c5c4030c1784a098091b6308f98595
+ htl: Make __pthread_sigmask directly call __sigthreadmask
+
+ * htl/pt-sigmask.c: Modified.
+ (__pthread_sigmask): Modified function.
+ (hurd/signal.h): Include file.
+ * sysdeps/mach/hurd/sigthreadmask.c: Modified.
+ (__sigthreadmask): Modified function.
+
+2025-03-06 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ COMMIT: 7a185eb9e944553fb5f8ce8491e1f8569f2f4aa0
+ hurd: Consolidate signal mask change
+
+ * hurd/Makefile: Modified.
+ * sysdeps/hurd/include/hurd/signal.h: Modified.
+ [! _HURD_SIGNAL_H][! _ISOMAC](bits/types/error_t.h): Include file.
+ [! _HURD_SIGNAL_H][! _ISOMAC](__sigthreadmask): New function.
+ * sysdeps/mach/hurd/htl/pt-sigstate.c: Modified.
+ (__pthread_sigstate): Modified function.
+ * sysdeps/mach/hurd/sigprocmask.c: Modified.
+ (__sigprocmask): Modified function.
+ * sysdeps/mach/hurd/sigthreadmask.c: New file.
+
+2025-03-06 H.J. Lu <hjl.tools@gmail.com>
+
+ COMMIT: 596130591ae4b058a529cc1318b95e624559054c
+ static-pie: Skip the empty PT_LOAD segment at offset 0 [BZ #32763]
+
+ * elf/Makefile: Modified.
+ * elf/dl-reloc-static-pie.c: Modified.
+ (_dl_relocate_static_pie): Modified function.
+ * elf/tst-pie-bss-static.c: New file.
+ * elf/tst-pie-bss.c: New file.
+
+2025-03-05 Ronan Pigott <ronan@rjp.ie>
+
+ COMMIT: 50351e05707f982c06c6d4d7c8fc819f6a5f66f5
+ sysdeps: linux: Add BTRFS_SUPER_MAGIC to pathconf
+
+ * sysdeps/unix/sysv/linux/linux_fsinfo.h: Modified.
+ (BTRFS_LINK_MAX): New.
+ * sysdeps/unix/sysv/linux/pathconf.c: Modified.
+ (__statfs_link_max): Modified function.
+
+2025-03-05 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 6cb703b81d18d64447a2cd1069fda30994542c60
+ linux: Prefix AT_HWCAP with 0x on LD_SHOW_AUXV
+
+ * sysdeps/unix/sysv/linux/dl-sysdep.c: Modified.
+ [SHARED](_dl_show_auxv): Modified function.
+
+2025-03-05 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 1d60b9dfdab411a0cd8856adffc5124c86cde5e1
+ Remove dl-procinfo.h
+
+ * elf/dl-cache.c: Modified.
+ (dl-procinfo.h): Remove include.
+ * elf/dl-diagnostics.c: Modified.
+ (dl-procinfo.h): Remove include.
+ * elf/dl-hwcaps.c: Modified.
+ (dl-procinfo.h): Remove include.
+ * elf/dl-support.c: Modified.
+ (dl-procinfo.h): Remove include.
+ * elf/dl-usage.c: Modified.
+ (dl-procinfo.h): Remove include.
+ * elf/ldconfig.c: Modified.
+ (dl-procinfo.h): Remove include.
+ * elf/rtld.c: Modified.
+ (dl-procinfo.h): Remove include.
+ * scripts/gen-tunables.awk: Modified.
+ * sysdeps/generic/dl-procinfo.h: Delete file.
+ * sysdeps/i386/fpu/fclrexcpt.c: Modified.
+ (dl-procinfo.h): Remove include.
+ * sysdeps/i386/fpu/fedisblxcpt.c: Modified.
+ (dl-procinfo.h): Remove include.
+ * sysdeps/i386/fpu/feenablxcpt.c: Modified.
+ (dl-procinfo.h): Remove include.
+ * sysdeps/i386/fpu/fegetenv.c: Modified.
+ (dl-procinfo.h): Remove include.
+ * sysdeps/i386/fpu/fegetmode.c: Modified.
+ (dl-procinfo.h): Remove include.
+ * sysdeps/i386/fpu/feholdexcpt.c: Modified.
+ (dl-procinfo.h): Remove include.
+ * sysdeps/i386/fpu/fesetenv.c: Modified.
+ (dl-procinfo.h): Remove include.
+ * sysdeps/i386/fpu/fesetmode.c: Modified.
+ (dl-procinfo.h): Remove include.
+ * sysdeps/i386/fpu/fesetround.c: Modified.
+ (dl-procinfo.h): Remove include.
+ * sysdeps/i386/fpu/feupdateenv.c: Modified.
+ (dl-procinfo.h): Remove include.
+ * sysdeps/i386/fpu/fgetexcptflg.c: Modified.
+ (dl-procinfo.h): Remove include.
+ * sysdeps/i386/fpu/ftestexcept.c: Modified.
+ (dl-procinfo.h): Remove include.
+ * sysdeps/i386/setfpucw.c: Modified.
+ (dl-procinfo.h): Remove include.
+ * sysdeps/mach/hurd/dl-sysdep.c: Modified.
+ (dl-procinfo.h): Remove include.
+ * sysdeps/powerpc/fpu/math_private.h: Modified.
+ (dl-procinfo.h): Remove include.
+ * sysdeps/powerpc/hwcapinfo.c: Modified.
+ (dl-procinfo.h): Remove include.
+ * sysdeps/unix/sysv/linux/dl-sysdep.c: Modified.
+ [SHARED](_dl_show_auxv): Modified function.
+ (dl-procinfo.h): Remove include.
+ * sysdeps/unix/sysv/linux/powerpc/elision-conf.c: Modified.
+ (dl-procinfo.h): Remove include.
+ * sysdeps/x86/dl-hwcap.h: Modified.
+ (_dl_procinfo): Remove.
+
+2025-03-05 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 2fd580ea465d1a74214546d59714f662e74b3022
+ powerpc: Remove unused dl-procinfo.h
+
+ * sysdeps/powerpc/dl-procinfo.h: Delete file.
+ * sysdeps/powerpc/hwcapinfo.h: Modified.
+ [! HWCAPINFO_H](__tcb): Remove.
+ [! HWCAPINFO_H](_DL_FIRST_PLATFORM): New.
+ [! HWCAPINFO_H](PPC_PLATFORM_POWER4): New.
+ [! HWCAPINFO_H](PPC_PLATFORM_PPC970): New.
+ [! HWCAPINFO_H](PPC_PLATFORM_POWER5): New.
+ [! HWCAPINFO_H](PPC_PLATFORM_POWER5_PLUS): New.
+ [! HWCAPINFO_H](PPC_PLATFORM_POWER6): New.
+ [! HWCAPINFO_H](PPC_PLATFORM_CELL_BE): New.
+ [! HWCAPINFO_H](PPC_PLATFORM_POWER6X): New.
+ [! HWCAPINFO_H](PPC_PLATFORM_POWER7): New.
+ [! HWCAPINFO_H](PPC_PLATFORM_PPCA2): New.
+ [! HWCAPINFO_H](PPC_PLATFORM_PPC405): New.
+ [! HWCAPINFO_H](PPC_PLATFORM_PPC440): New.
+ [! HWCAPINFO_H](PPC_PLATFORM_PPC464): New.
+ [! HWCAPINFO_H](PPC_PLATFORM_PPC476): New.
+ [! HWCAPINFO_H](PPC_PLATFORM_POWER8): New.
+ [! HWCAPINFO_H](PPC_PLATFORM_POWER9): New.
+ [! HWCAPINFO_H](PPC_PLATFORM_POWER10): New.
+ [! HWCAPINFO_H](PPC_PLATFORM_POWER11): New.
+ [! HWCAPINFO_H](_dl_string_platform): New function.
+ (string.h): Include file.
+ * sysdeps/powerpc/nptl/tls.h: Modified.
+ [! __ASSEMBLER__](__tcb): New.
+ * sysdeps/powerpc/test-get_hwcap.c: Modified.
+ [! STATIC_TST_HWCAP](cpu-features.h): Include file.
+ (dl-procinfo.h): Remove include.
+ (hwcapinfo.h): Include file.
+ * sysdeps/unix/sysv/linux/powerpc/cpu-features.c: Modified.
+ (ldsodefs.h): Include file.
+ * sysdeps/unix/sysv/linux/powerpc/elision-conf.c: Modified.
+ (ldsodefs.h): Include file.
+
+2025-03-05 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: a768993c10c64eeea0d4b9997db0bd3e48e868be
+ powerpc: Move cache geometry information to ld diagnostics
+
+ * sysdeps/powerpc/dl-diagnostics-cpu.c: Modified.
+ (_dl_diagnostics_cpu): Modified function.
+ (print_cache_geometry_value): New function.
+ * sysdeps/powerpc/dl-procinfo.h: Modified.
+ [IS_IN (rtld)](cache_geometry): Remove.
+ [IS_IN (rtld)](_dl_procinfo): Remove.
+ (_dl_procinfo): New.
+
+2025-03-05 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 8a995670a8c25e7145201ec52b0c648dae0ff9c2
+ powerpc: Move AT_HWCAP descriptions to ld diagnostics
+
+ * sysdeps/powerpc/dl-diagnostics-cpu.c: New file.
+ * sysdeps/powerpc/dl-procinfo.c: Modified.
+ [!IS_IN (ldconfig)][!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL][!(! PROCINFO_DECL && SHARED)][! PROCINFO_DECL](_dl_powerpc_cap_flags): Remove.
+ [!IS_IN (ldconfig)][!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL][!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL][!IS_IN (ldconfig)][!(! PROCINFO_DECL && SHARED)][! PROCINFO_DECL](_dl_cache_line_size): Remove.
+ [!IS_IN (ldconfig)][!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL][!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL][!IS_IN (ldconfig)][!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL](PROCINFO_DECL): Remove.
+ [!IS_IN (ldconfig)][!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL][!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL][!IS_IN (ldconfig)][!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL](PROCINFO_CLASS): Remove.
+ [!IS_IN (ldconfig)][!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL][!IS_IN (ldconfig)][!(! PROCINFO_DECL && SHARED)][! PROCINFO_DECL](_dl_cache_line_size): New.
+ [!IS_IN (ldconfig)][!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL][!IS_IN (ldconfig)][!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL](PROCINFO_DECL): New.
+ [!IS_IN (ldconfig)][!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL][!IS_IN (ldconfig)][!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL](PROCINFO_CLASS): New.
+ * sysdeps/powerpc/dl-procinfo.h: Modified.
+ [IS_IN (rtld)](_dl_procinfo): Modified function.
+ (sysdep.h): Remove include.
+ (_DL_HWCAP_SIZE): Remove.
+ (_DL_HWCAP2_OFFSET): Remove.
+ (_DL_HWCAP3_OFFSET): Remove.
+ (_DL_HWCAP4_OFFSET): Remove.
+ (_dl_hwcap_string): Remove function.
+ * sysdeps/unix/sysv/linux/powerpc/Makefile: Modified.
+ * sysdeps/unix/sysv/linux/powerpc/cpu-features.c: Modified.
+ (TUNABLE_CALLBACK): Modified function.
+ (dl-hwcap-info.h): Include file.
+ (set_hwcap_bit): New function.
+ * sysdeps/unix/sysv/linux/powerpc/cpu-features.h: Modified.
+ (hwcap_names): Remove.
+ (<anonymous>): Remove.
+ * sysdeps/unix/sysv/linux/powerpc/dl-hwcap-info.c: New file.
+ * sysdeps/unix/sysv/linux/powerpc/dl-hwcap-info.h: New file.
+
+2025-03-05 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: 3a9fb97caf3d4c04a812f51d4c5139cb2b9ed52e
+ benchtests: Add random strlen benchmark
+
+ * benchtests/Makefile: Modified.
+ * benchtests/bench-strlen-random.c: New file.
+
+2025-03-05 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: dac7ea4a6fb8111e60fc35c104302800cf986ad2
+ benchtests: Improve large memcpy/memset benchmarks
+
+ * benchtests/bench-bzero-large.c: Modified.
+ (START_SIZE): Modified.
+ (MIN_PAGE_SIZE): Modified.
+ (TIMEOUT): Remove.
+ (do_one_test): Modified function.
+ (do_test): Modified function.
+ * benchtests/bench-memcpy-large.c: Modified.
+ [! MEMCPY_RESULT](MIN_PAGE_SIZE): Modified.
+ [! MEMCPY_RESULT](TIMEOUT): Remove.
+ (do_one_test): Modified function.
+ (do_test): Modified function.
+ * benchtests/bench-memmove-large.c: Modified.
+ (BASE_PAGE_SIZE): Remove.
+ (START_SIZE): Modified.
+ (TIMEOUT): Remove.
+ (do_one_test): Modified function.
+ (do_test): Modified function.
+ * benchtests/bench-memset-large.c: Modified.
+ (START_SIZE): Modified.
+ (MIN_PAGE_SIZE): Modified.
+ (TIMEOUT): Remove.
+ (do_one_test): Modified function.
+ (do_test): Modified function.
+
+2025-03-04 Siddhesh Poyarekar <siddhesh@sourceware.org>
+
+ COMMIT: 226476e32251b5688eead482a9338c04ce84d715
+ manual: Explain sched_yield semantics with different schedulers
+
+ * manual/resource.texi: Modified.
+
+2025-03-04 Sam James <sam@gentoo.org>
+
+ COMMIT: a2bd5008a99032830add3e4005c25b61e3207112
+ Pass -Wl,--no-error-execstack for tests where -Wl,-z,execstack is used [PR32717]
+
+ * config.make.in: Modified.
+ * configure: Modified.
+ * configure.ac: Modified.
+ * elf/Makefile: Modified.
+ * nptl/Makefile: Modified.
+
+2025-03-03 Ben Kallus <benjamin.p.kallus.gr@dartmouth.edu>
+
+ COMMIT: 4cf2d869367e3813c6c8f662915dedb1f3830c53
+ malloc: Add integrity check to largebin nextsizes
+
+ * malloc/malloc.c: Modified.
+ (_int_malloc): Modified function.
+
+2025-03-03 Samuel Zeter <samuelzeter@gmail.com>
+
+ COMMIT: 8c6fee9f7f4c09bf96766942fdd430f8beb638b0
+ libio: Clean up fputc/putc comments
+
+ * libio/stdio.h: Modified.
+
+2025-03-02 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ COMMIT: ccdb68e829a31e4cda8339ea0d2dc3e51fb81ba5
+ htl: move pthread_once into libc
+
+ * htl/Makefile: Modified.
+ * htl/Versions: Modified.
+ * sysdeps/htl/libc-lockP.h: Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Remove.
+ (libc_hidden_proto): New function.
+ * sysdeps/htl/pt-once.c: Modified.
+ (weak_alias): Remove.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/i386/libpthread.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libc.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libpthread.abilist: Modified.
+
+2025-02-28 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: e5893e6349541d871e8a25120bca014551d13ff5
+ Remove unused dl-procinfo.h
+
+ * sysdeps/alpha/dl-procinfo.h: Delete file.
+ * sysdeps/csky/dl-procinfo.h: Delete file.
+ * sysdeps/generic/dl-procinfo.h: Modified.
+ (_dl_hwcap_string): Remove.
+ (_DL_HWCAP_COUNT): Remove.
+ * sysdeps/i386/dl-procinfo.c: Modified.
+ [!(! PROCINFO_DECL && SHARED)][! PROCINFO_DECL](_dl_x86_cap_flags): Remove.
+ [!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL](PROCINFO_DECL): Remove.
+ [!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL](PROCINFO_CLASS): Remove.
+ (PROCINFO_DECL): New.
+ (PROCINFO_CLASS): New.
+ * sysdeps/mips/dl-procinfo.c: Delete file.
+ * sysdeps/mips/dl-procinfo.h: Delete file.
+ * sysdeps/s390/Makefile: Modified.
+ * sysdeps/s390/cpu-features.c: Modified.
+ (ldsodefs.h): Include file.
+ (sys/auxv.h): Include file.
+ * sysdeps/s390/dl-procinfo-s390.c: Delete file.
+ * sysdeps/s390/dl-procinfo.c: Modified.
+ * sysdeps/s390/dl-procinfo.h: Delete file.
+ * sysdeps/s390/multiarch/ifunc-resolve.h: Modified.
+ (dl-procinfo.h): Remove include.
+ (ldsodefs.h): Include file.
+ (sys/auxv.h): Include file.
+ * sysdeps/s390/s390-32/dl-machine.h: Modified.
+ [! dl_machine_h](sysdeps/s390/dl-procinfo.h): Remove include.
+ * sysdeps/s390/s390-64/dl-hwcaps-subdirs.c: Modified.
+ (sys/auxv.h): Include file.
+ * sysdeps/s390/s390-64/dl-machine.h: Modified.
+ [! dl_machine_h](sysdeps/s390/dl-procinfo.h): Remove include.
+ * sysdeps/sparc/dl-procinfo.c: Delete file.
+ * sysdeps/sparc/dl-procinfo.h: Delete file.
+ * sysdeps/unix/sysv/linux/aarch64/dl-procinfo.c: Modified.
+ [!IS_IN (ldconfig)][!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL][!(! PROCINFO_DECL && SHARED)][! PROCINFO_DECL](_dl_aarch64_cap_flags): Remove.
+ [!IS_IN (ldconfig)][!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL][!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL](PROCINFO_DECL): Remove.
+ [!IS_IN (ldconfig)][!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL][!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL](PROCINFO_CLASS): Remove.
+ [!IS_IN (ldconfig)][!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL](_DL_HWCAP_COUNT): Remove.
+ [!IS_IN (ldconfig)][!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL](PROCINFO_DECL): New.
+ [!IS_IN (ldconfig)][!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL](PROCINFO_CLASS): New.
+ * sysdeps/unix/sysv/linux/aarch64/dl-procinfo.h: Delete file.
+ * sysdeps/unix/sysv/linux/arm/dl-procinfo.c: Delete file.
+ * sysdeps/unix/sysv/linux/arm/dl-procinfo.h: Delete file.
+ * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Delete file.
+ * sysdeps/unix/sysv/linux/s390/dl-procinfo.h: Delete file.
+ * sysdeps/unix/sysv/linux/s390/elision-conf.c: Modified.
+ (dl-procinfo.h): Remove include.
+ (ldsodefs.h): Include file.
+ (sys/auxv.h): Include file.
+ * sysdeps/unix/sysv/linux/s390/sysconf.c: Modified.
+ (dl-procinfo.h): Remove include.
+ (ldsodefs.h): Include file.
+ (sys/auxv.h): Include file.
+ * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.h: Delete file.
+ * sysdeps/x86/dl-hwcap.h: Modified.
+ (_dl_hwcap_string): Remove function.
+ * sysdeps/x86/dl-procinfo.c: Modified.
+ [!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL][!(! PROCINFO_DECL && SHARED)][! PROCINFO_DECL](_dl_x86_hwcap_flags): Remove.
+ [!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL][!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL][SHARED && !IS_IN (ldconfig)][PROCINFO_DECL][! PROCINFO_DECL](_dl_x86_tlsdesc_dynamic): Remove.
+ [!(! PROCINFO_DECL && SHARED)][PROCINFO_DECL][SHARED && !IS_IN (ldconfig)][PROCINFO_DECL][! PROCINFO_DECL](_dl_x86_tlsdesc_dynamic): New.
+ * sysdeps/x86/dl-procinfo.h: Delete file.
+
+2025-02-28 Xi Ruoyao <xry111@xry111.site>
+
+ COMMIT: c0f380c465915faf30dbd10acccdf8b1affda083
+ LoongArch: Optimize f{max,min}imum_mag_num{,f}
+
+ * sysdeps/loongarch/fpu/s_fmaximum_mag_num.c: Delete file.
+ * sysdeps/loongarch/fpu/s_fmaximum_mag_num_template.c: New file.
+ * sysdeps/loongarch/fpu/s_fmaximum_mag_numf.c: Delete file.
+ * sysdeps/loongarch/fpu/s_fminimum_mag_num.c: Delete file.
+ * sysdeps/loongarch/fpu/s_fminimum_mag_num_template.c: New file.
+ * sysdeps/loongarch/fpu/s_fminimum_mag_numf.c: Delete file.
+
+2025-02-28 Xi Ruoyao <xry111@xry111.site>
+
+ COMMIT: efd13567f7ff1be010c10e3fef010b9165d1b0ad
+ LoongArch: Optimize f{max,min}imum_num{,f}
+
+ * sysdeps/loongarch/fpu/s_fmaximum_num.c: Delete file.
+ * sysdeps/loongarch/fpu/s_fmaximum_num_template.c: New file.
+ * sysdeps/loongarch/fpu/s_fmaximum_numf.c: Delete file.
+ * sysdeps/loongarch/fpu/s_fminimum_num.c: Delete file.
+ * sysdeps/loongarch/fpu/s_fminimum_num_template.c: New file.
+ * sysdeps/loongarch/fpu/s_fminimum_numf.c: Delete file.
+
+2025-02-28 Xi Ruoyao <xry111@xry111.site>
+
+ COMMIT: ee4ee1cb02a803342b4ba245e2bb20075978f9d3
+ LoongArch: Optimize f{max,min}imum_mag{,f}
+
+ * sysdeps/loongarch/fpu/s_fmaximum_mag.c: Delete file.
+ * sysdeps/loongarch/fpu/s_fmaximum_magf.c: Move to...
+ * sysdeps/loongarch/fpu/s_fmaximum_mag_template.c: ... here.
+ (NO_MATH_REDIRECT): Remove.
+ (math.h): Remove include.
+ (libm-alias-float.h): Remove include.
+ (fpu_control.h): Remove include.
+ (__fmaximum_magf): Remove function.
+ [! INSN_FMT](_next <s_fmaximum_mag_template.c): New.
+ [INSN_FMT](math.h): New.
+ [INSN_FMT](M_DECL_FUNC): New.
+ [INSN_FMT](declare_mgen_alias): New.
+ * sysdeps/loongarch/fpu/s_fminimum_mag.c: Delete file.
+ * sysdeps/loongarch/fpu/s_fminimum_magf.c: Move to...
+ * sysdeps/loongarch/fpu/s_fminimum_mag_template.c: ... here.
+ (NO_MATH_REDIRECT): Remove.
+ (math.h): Remove include.
+ (libm-alias-float.h): Remove include.
+ (fpu_control.h): Remove include.
+ (__fminimum_magf): Remove function.
+ [! INSN_FMT](_next <s_fminimum_mag_template.c): New.
+ [INSN_FMT](math.h): New.
+ [INSN_FMT](M_DECL_FUNC): New.
+ [INSN_FMT](declare_mgen_alias): New.
+
+2025-02-28 Xi Ruoyao <xry111@xry111.site>
+
+ COMMIT: 0195552e158e007a456e568018c25280a96c3b99
+ LoongArch: Optimize f{max,min}imum{,f}
+
+ * sysdeps/loongarch/fpu/s_fmaximum.c: Move to...
+ * sysdeps/loongarch/fpu/math-type-macros-double.h: ... here.
+ (NO_MATH_REDIRECT): Remove.
+ (math.h): Remove include.
+ (libm-alias-double.h): Remove include.
+ (fpu_control.h): Remove include.
+ (__fmaximum): Remove function.
+ (_next <math-type-macros-double.h): Include file.
+ (INSN_FMT): New.
+ * sysdeps/loongarch/fpu/s_fminimum.c: Move to...
+ * sysdeps/loongarch/fpu/math-type-macros-float.h: ... here.
+ (NO_MATH_REDIRECT): Remove.
+ (math.h): Remove include.
+ (libm-alias-double.h): Remove include.
+ (fpu_control.h): Remove include.
+ (__fminimum): Remove function.
+ (_next <math-type-macros-float.h): Include file.
+ (INSN_FMT): New.
+ * sysdeps/loongarch/fpu/s_fmaximumf.c: Move to...
+ * sysdeps/loongarch/fpu/s_fmaximum_template.c: ... here.
+ (NO_MATH_REDIRECT): Remove.
+ (math.h): Remove include.
+ (libm-alias-float.h): Remove include.
+ (fpu_control.h): Remove include.
+ (__fmaximumf): Remove function.
+ [! INSN_FMT](_next <s_fmaximum_template.c): New.
+ [INSN_FMT](math.h): New.
+ [INSN_FMT](M_DECL_FUNC): New.
+ [INSN_FMT](declare_mgen_alias): New.
+ * sysdeps/loongarch/fpu/s_fminimumf.c: Move to...
+ * sysdeps/loongarch/fpu/s_fminimum_template.c: ... here.
+ (NO_MATH_REDIRECT): Remove.
+ (math.h): Remove include.
+ (libm-alias-float.h): Remove include.
+ (fpu_control.h): Remove include.
+ (__fminimumf): Remove function.
+ [! INSN_FMT](_next <s_fminimum_template.c): New.
+ [INSN_FMT](math.h): New.
+ [INSN_FMT](M_DECL_FUNC): New.
+ [INSN_FMT](declare_mgen_alias): New.
+
+2025-02-27 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: 0f044be1dae5169d0e57f8d487b427863aeadab4
+ AArch64: Use prefer_sve_ifuncs for SVE memset
+
+ * sysdeps/aarch64/multiarch/memset.c: Modified.
+ (__typeof): Modified function.
+
+2025-02-26 Sergei Zimmerman <sergei.zimmerman@syntacore.com>
+
+ COMMIT: 9e51ae3cd0c7f65bdeba93b7f1d780cdb21fc269
+ sysdeps/ieee754: Fix remainder sign of zero for FE_DOWNWARD (BZ #32711)
+
+ * math/libm-test-remainder.inc: Modified.
+ * sysdeps/ieee754/flt-32/e_remainderf.c: Modified.
+ (__ieee754_remainderf): Modified function.
+ * sysdeps/ieee754/ldbl-128/e_remainderl.c: Modified.
+ (__ieee754_remainderl): Modified function.
+
+2025-02-25 John David Anglin <danglin@gcc.gnu.org>
+
+ COMMIT: 2fe5e2af0995a6e6ee2c761e55e7596a3220d07c
+ math: Add optimization barrier to ensure a1 + u.d is not reused [BZ #30664]
+
+ * sysdeps/ieee754/dbl-64/s_fma.c: Modified.
+ (__fma): Modified function.
+
+2025-02-25 Yangyu Chen <cyy@cyyself.name>
+ Vivian Wang <dramforever@live.com>
+
+ COMMIT: 3fd2ff7685e3ee85c8cd2896f28ad62f67d7c483
+ RISC-V: Fix IFUNC resolver cannot access gp pointer
+
+ * sysdeps/riscv/dl-machine.h: Modified.
+ [RESOLVE_MAP](elf_machine_runtime_setup): Modified function.
+
+2025-02-24 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: 935563754bb5e1f16b9edb392d6c80c6827ddfca
+ AArch64: Remove LP64 and ILP32 ifdefs
+
+ * sysdeps/aarch64/bits/wordsize.h: Modified.
+ [! __LP64__](__WORDSIZE): Remove.
+ [! __LP64__](__WORDSIZE32_SIZE_ULONG): Remove.
+ [! __LP64__](__WORDSIZE32_PTRDIFF_LONG): Remove.
+ [__LP64__](__WORDSIZE): Remove.
+ (__WORDSIZE): New.
+ * sysdeps/aarch64/nptl/bits/pthreadtypes-arch.h: Modified.
+ [! __ILP32__](__SIZEOF_PTHREAD_ATTR_T): Remove.
+ [! __ILP32__](__SIZEOF_PTHREAD_MUTEX_T): Remove.
+ [! __ILP32__](__SIZEOF_PTHREAD_MUTEXATTR_T): Remove.
+ [! __ILP32__](__SIZEOF_PTHREAD_CONDATTR_T): Remove.
+ [! __ILP32__](__SIZEOF_PTHREAD_RWLOCK_T): Remove.
+ [! __ILP32__](__SIZEOF_PTHREAD_BARRIER_T): Remove.
+ [! __ILP32__](__SIZEOF_PTHREAD_BARRIERATTR_T): Remove.
+ [__ILP32__](__SIZEOF_PTHREAD_ATTR_T): Remove.
+ [__ILP32__](__SIZEOF_PTHREAD_MUTEX_T): Remove.
+ [__ILP32__](__SIZEOF_PTHREAD_MUTEXATTR_T): Remove.
+ [__ILP32__](__SIZEOF_PTHREAD_CONDATTR_T): Remove.
+ [__ILP32__](__SIZEOF_PTHREAD_RWLOCK_T): Remove.
+ [__ILP32__](__SIZEOF_PTHREAD_BARRIER_T): Remove.
+ [__ILP32__](__SIZEOF_PTHREAD_BARRIERATTR_T): Remove.
+ (__SIZEOF_PTHREAD_ATTR_T): New.
+ (__SIZEOF_PTHREAD_MUTEX_T): New.
+ (__SIZEOF_PTHREAD_MUTEXATTR_T): New.
+ (__SIZEOF_PTHREAD_CONDATTR_T): New.
+ (__SIZEOF_PTHREAD_RWLOCK_T): New.
+ (__SIZEOF_PTHREAD_BARRIER_T): New.
+ (__SIZEOF_PTHREAD_BARRIERATTR_T): New.
+ * sysdeps/aarch64/nptl/bits/semaphore.h: Modified.
+ [! __ILP32__](__SIZEOF_SEM_T): Remove.
+ [__ILP32__](__SIZEOF_SEM_T): Remove.
+ (__SIZEOF_SEM_T): New.
+ * sysdeps/unix/sysv/linux/aarch64/bits/fcntl.h: Modified.
+ [! __ILP32__](__O_LARGEFILE): Remove.
+ [__ILP32__](__O_LARGEFILE): Remove.
+ [__LP64__](F_GETLK64): Remove.
+ [__LP64__](F_SETLK64): Remove.
+ [__LP64__](F_SETLKW64): Remove.
+ (__O_LARGEFILE): New.
+ (F_GETLK64): New.
+ (F_SETLK64): New.
+ (F_SETLKW64): New.
+ * sysdeps/unix/sysv/linux/aarch64/dl-cache.h: Modified.
+ [! __LP64__](_DL_CACHE_DEFAULT_ID): Remove.
+ [__LP64__](_DL_CACHE_DEFAULT_ID): Remove.
+ (add_system_dir): Modified.
+ (_DL_CACHE_DEFAULT_ID): New.
+ * sysdeps/unix/sysv/linux/aarch64/sysdep.h: Modified.
+ [! __ASSEMBLER__][! __LP64__](VDSO_NAME): Remove.
+ [! __ASSEMBLER__][! __LP64__](VDSO_HASH): Remove.
+ [! __ASSEMBLER__][__LP64__](VDSO_NAME): Remove.
+ [! __ASSEMBLER__][__LP64__](VDSO_HASH): Remove.
+ [! __ASSEMBLER__](VDSO_NAME): New.
+ [! __ASSEMBLER__](VDSO_HASH): New.
+
+2025-02-24 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: 4c1137910683c12cf1edb31e511e11289cd1a9db
+ AArch64: Simplify lrint
+
+ * sysdeps/aarch64/fpu/s_lrint.c: Modified.
+ [! __ILP32__](OREG_SIZE): Remove.
+ [OREG_SIZE != 32](OREGS): Remove.
+ [OREG_SIZE == 32](OREGS): Remove.
+ [__ILP32__](OREG_SIZE): Remove.
+ (IREG_SIZE): Remove.
+ (IREGS): Remove.
+ (__lrint): Modified function.
+
+2025-02-24 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: 0a021727bc4c122cd5accbb9ee69a5e82460a442
+ AArch64: Remove AARCH64_R macro
+
+ * elf/elf.h: Modified.
+ (R_AARCH64_P32_ABS32): Remove.
+ (R_AARCH64_P32_COPY): Remove.
+ (R_AARCH64_P32_GLOB_DAT): Remove.
+ (R_AARCH64_P32_JUMP_SLOT): Remove.
+ (R_AARCH64_P32_RELATIVE): Remove.
+ (R_AARCH64_P32_TLS_DTPMOD): Remove.
+ (R_AARCH64_P32_TLS_DTPREL): Remove.
+ (R_AARCH64_P32_TLS_TPREL): Remove.
+ (R_AARCH64_P32_TLSDESC): Remove.
+ (R_AARCH64_P32_IRELATIVE): Remove.
+ * sysdeps/aarch64/dl-irel.h: Modified.
+ (elf_irela): Modified function.
+ * sysdeps/aarch64/dl-machine.h: Modified.
+ [! dl_machine_h](ELF_MACHINE_JMP_SLOT): Modified.
+ [RESOLVE_MAP](elf_machine_rela): Modified function.
+ [RESOLVE_MAP](elf_machine_lazy_rel): Modified function.
+ * sysdeps/aarch64/sysdep.h: Modified.
+ (AARCH64_R): Remove.
+
+2025-02-24 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: eb7ac024d9e5ac71f6c9695703c3db6b05744b86
+ AArch64: Cleanup pointer mangling
+
+ * sysdeps/aarch64/__longjmp.S: Modified.
+ * sysdeps/aarch64/setjmp.S: Modified.
+ * sysdeps/aarch64/sysdep.h: Modified.
+ [__ASSEMBLER__](LDST_PCREL): Remove.
+ [__ASSEMBLER__](LDST_GLOBAL): Remove.
+ * sysdeps/unix/sysv/linux/aarch64/pointer_guard.h: Modified.
+ [!((IS_IN (rtld) || (! SHARED && (IS_IN (libc) || IS_IN (libpthread)))))][__ASSEMBLER__](PTR_MANGLE): Modified.
+ [!((IS_IN (rtld) || (! SHARED && (IS_IN (libc) || IS_IN (libpthread)))))][__ASSEMBLER__](PTR_MANGLE2): Remove.
+ [!((IS_IN (rtld) || (! SHARED && (IS_IN (libc) || IS_IN (libpthread)))))][__ASSEMBLER__](PTR_DEMANGLE): Modified.
+ [!((IS_IN (rtld) || (! SHARED && (IS_IN (libc) || IS_IN (libpthread)))))][__ASSEMBLER__](PTR_DEMANGLE2): Remove.
+ [(IS_IN (rtld) || (! SHARED && (IS_IN (libc) || IS_IN (libpthread))))][__ASSEMBLER__](PTR_MANGLE): Modified.
+ [(IS_IN (rtld) || (! SHARED && (IS_IN (libc) || IS_IN (libpthread))))][__ASSEMBLER__](PTR_MANGLE2): Remove.
+ [(IS_IN (rtld) || (! SHARED && (IS_IN (libc) || IS_IN (libpthread))))][__ASSEMBLER__](PTR_DEMANGLE): Modified.
+ [(IS_IN (rtld) || (! SHARED && (IS_IN (libc) || IS_IN (libpthread))))][__ASSEMBLER__](PTR_DEMANGLE2): Remove.
+
+2025-02-24 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: 19860fd42e39cfa03ba3c3c8becf27229eabc597
+ AArch64: Remove PTR_REG defines
+
+ * sysdeps/aarch64/crti.S: Modified.
+ * sysdeps/aarch64/dl-start.S: Modified.
+ * sysdeps/aarch64/dl-tlsdesc.S: Modified.
+ * sysdeps/aarch64/dl-trampoline.S: Modified.
+ * sysdeps/aarch64/start.S: Modified.
+ * sysdeps/aarch64/sysdep.h: Modified.
+ [! __LP64__](AARCH64_R): Remove.
+ [! __LP64__](PTR_REG): Remove.
+ [! __LP64__](PTR_LOG_SIZE): Remove.
+ [! __LP64__](PTR_ARG): Remove.
+ [! __LP64__](SIZE_ARG): Remove.
+ [__ASSEMBLER__][! __LP64__](MOVL): Remove.
+ [__ASSEMBLER__][__LP64__](MOVL): Remove.
+ [__ASSEMBLER__](LDST_PCREL): Modified.
+ [__ASSEMBLER__](LDST_GLOBAL): Modified.
+ [__LP64__](AARCH64_R): Remove.
+ [__LP64__](PTR_REG): Remove.
+ [__LP64__](PTR_LOG_SIZE): Remove.
+ [__LP64__](PTR_ARG): Remove.
+ [__LP64__](SIZE_ARG): Remove.
+ (PTR_SIZE): Remove.
+ (AARCH64_R): New.
+ * sysdeps/unix/sysv/linux/aarch64/getcontext.S: Modified.
+
+2025-02-24 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: ce2f26a22e6b6f5c108d156afd9b43a452bb024c
+ AArch64: Remove PTR_ARG/SIZE_ARG defines
+
+ * sysdeps/aarch64/__longjmp.S: Modified.
+ * sysdeps/aarch64/__mtag_tag_region.S: Modified.
+ * sysdeps/aarch64/__mtag_tag_zero_region.S: Modified.
+ * sysdeps/aarch64/dl-start.S: Modified.
+ * sysdeps/aarch64/dl-tlsdesc.S: Modified.
+ * sysdeps/aarch64/memchr.S: Modified.
+ * sysdeps/aarch64/memcmp.S: Modified.
+ * sysdeps/aarch64/memcpy.S: Modified.
+ * sysdeps/aarch64/memrchr.S: Modified.
+ * sysdeps/aarch64/memset.S: Modified.
+ * sysdeps/aarch64/multiarch/memchr_nosimd.S: Modified.
+ * sysdeps/aarch64/multiarch/memcpy_a64fx.S: Modified.
+ * sysdeps/aarch64/multiarch/memcpy_mops.S: Modified.
+ * sysdeps/aarch64/multiarch/memcpy_oryon1.S: Modified.
+ * sysdeps/aarch64/multiarch/memcpy_sve.S: Modified.
+ * sysdeps/aarch64/multiarch/memmove_mops.S: Modified.
+ * sysdeps/aarch64/multiarch/memset_a64fx.S: Modified.
+ * sysdeps/aarch64/multiarch/memset_emag.S: Modified.
+ * sysdeps/aarch64/multiarch/memset_kunpeng.S: Modified.
+ * sysdeps/aarch64/multiarch/memset_mops.S: Modified.
+ * sysdeps/aarch64/multiarch/memset_oryon1.S: Modified.
+ * sysdeps/aarch64/multiarch/strlen_asimd.S: Modified.
+ * sysdeps/aarch64/setjmp.S: Modified.
+ * sysdeps/aarch64/strchr.S: Modified.
+ * sysdeps/aarch64/strchrnul.S: Modified.
+ * sysdeps/aarch64/strcmp.S: Modified.
+ * sysdeps/aarch64/strcpy.S: Modified.
+ * sysdeps/aarch64/strlen.S: Modified.
+ * sysdeps/aarch64/strnlen.S: Modified.
+ * sysdeps/aarch64/strrchr.S: Modified.
+ * sysdeps/unix/sysv/linux/aarch64/clone.S: Modified.
+ * sysdeps/unix/sysv/linux/aarch64/clone3.S: Modified.
+ * sysdeps/unix/sysv/linux/aarch64/getcontext.S: Modified.
+ * sysdeps/unix/sysv/linux/aarch64/setcontext.S: Modified.
+ * sysdeps/unix/sysv/linux/aarch64/swapcontext.S: Modified.
+
+2025-02-24 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: be0cfd848d9ad7378800d6302bc11467cf2b514f
+ stdlib: Add single-threaded fast path to rand()
+
+ * stdlib/random.c: Modified.
+ (__random): Modified function.
+ (sys/single_threaded.h): Include file.
+
+2025-02-24 Stefan Liebler <stli@linux.ibm.com>
+
+ COMMIT: 4734d0f8adde573aeafe79ad0c71807833db1cae
+ Increase the amount of data tested in stdio-common/tst-fwrite-pipe.c
+
+ * stdio-common/tst-fwrite-pipe.c: Modified.
+ (ITERATIONS): Modified.
+ (do_test): Modified function.
+
+2025-02-24 Frédéric Bérat <fberat@redhat.com>
+
+ COMMIT: 8a46bf41e5a61248f626a8213520de499f388122
+ posix: Rewrite cpuset tests
+
+ * posix/Makefile: Modified.
+ * posix/tst-cpuset-dynamic.c: New file.
+ * posix/tst-cpuset-skeleton.c: New file.
+ * posix/tst-cpuset-static.c: New file.
+ * posix/tst-cpuset.c: Delete file.
+
+2025-02-24 Frédéric Bérat <fberat@redhat.com>
+
+ COMMIT: fa53723cdb6f0338558e57a2a0a6459c00a1bc5f
+ support: Add support_next_to_fault_before support function
+
+ * support/next_to_fault.c: Modified.
+ (support_next_to_fault_allocate): Modified function.
+ (stdbool.h): Include file.
+ (support_next_to_fault_allocate_any): New function.
+ (support_next_to_fault_allocate_before): New function.
+ * support/next_to_fault.h: Modified.
+ (support_next_to_fault_allocate_before): New function.
+
+2025-02-23 koraynilay <koray.fra@gmail.com>
+ Nemanja Ivanovic <nemanja.i.ibm@gmail.com>
+
+ COMMIT: 29803ed3ce420f01e7c567c97fc8945d5e5e5992
+ math: Fix `unknown type name '__float128'` for clang 3.4 to 3.8.1 (bug 32694)
+
+ * sysdeps/x86/bits/floatn.h: Modified.
+ [! __ASSEMBLER__][__HAVE_FLOAT128][!__GNUC_PREREQ (7, 0) || ( __cplusplus && !__GNUC_PREREQ (13, 0)) || __glibc_clang_prereq (3, 4)](_Float128): Remove.
+ [! __ASSEMBLER__][__HAVE_FLOAT128][!__GNUC_PREREQ (7, 0) || ( __cplusplus && !__GNUC_PREREQ (13, 0)) || __glibc_clang_prereq (3, 9)](_Float128): New.
+ [!(( __x86_64__ ? __GNUC_PREREQ (4, 3) : ( __GNU__ ? __GNUC_PREREQ (4, 5) : __GNUC_PREREQ (4, 4))) || (__glibc_clang_prereq (3, 4) && (! __INTEL_LLVM_COMPILER || ! SYCL_LANGUAGE_VERSION)))](__HAVE_FLOAT128): Remove.
+ [( __x86_64__ ? __GNUC_PREREQ (4, 3) : ( __GNU__ ? __GNUC_PREREQ (4, 5) : __GNUC_PREREQ (4, 4))) || (__glibc_clang_prereq (3, 4) && (! __INTEL_LLVM_COMPILER || ! SYCL_LANGUAGE_VERSION))](__HAVE_FLOAT128): Remove.
+ [!(( __x86_64__ ? __GNUC_PREREQ (4, 3) : ( __GNU__ ? __GNUC_PREREQ (4, 5) : __GNUC_PREREQ (4, 4))) || (__glibc_clang_prereq (3, 9) && (! __INTEL_LLVM_COMPILER || ! SYCL_LANGUAGE_VERSION)))](__HAVE_FLOAT128): New.
+ [( __x86_64__ ? __GNUC_PREREQ (4, 3) : ( __GNU__ ? __GNUC_PREREQ (4, 5) : __GNUC_PREREQ (4, 4))) || (__glibc_clang_prereq (3, 9) && (! __INTEL_LLVM_COMPILER || ! SYCL_LANGUAGE_VERSION))](__HAVE_FLOAT128): New.
+
+2025-02-21 Michael Jeanson <mjeanson@efficios.com>
+
+ COMMIT: 689a62a4217fae78b9ce0db781dc2a421f2b1ab4
+ nptl: clear the whole rseq area before registration
+
+ * sysdeps/nptl/dl-tls_init_tp.c: Modified.
+ (dl-symbol-redir-ifunc.h): Include file.
+ * sysdeps/unix/sysv/linux/rseq-internal.h: Modified.
+ [RSEQ_SIG](rseq_register_current_thread): Modified function.
+
+2025-02-21 Yury Khrustalev <yury.khrustalev@arm.com>
+
+ COMMIT: 41f6684557255c8bdb7b5ec5bfe63c4e6c6cd5cf
+ aarch64: Add GCS test with signal handler
+
+ * sysdeps/unix/sysv/linux/aarch64/Makefile: Modified.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-noreturn.c: New file.
+
+2025-02-21 Yury Khrustalev <yury.khrustalev@arm.com>
+
+ COMMIT: 15afd01e80dc158c5095b16d458851b6d81b4e13
+ aarch64: Add GCS tests for dlopen
+
+ * Makeconfig: Modified.
+ * sysdeps/unix/sysv/linux/aarch64/Makefile: Modified.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-dlopen-disabled.c: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-dlopen-enforced.c: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-dlopen-optional-off.c: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-dlopen-optional-on.c: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-dlopen-override.c: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-dlopen.c: New file.
+
+2025-02-21 Yury Khrustalev <yury.khrustalev@arm.com>
+
+ COMMIT: 57ee1deb1f7a35506f6fc36e32895960ffe263bf
+ aarch64: Add GCS tests for transitive dependencies
+
+ * sysdeps/unix/sysv/linux/aarch64/Makefile: Modified.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-helper.h: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-mod1.c: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-mod2.c: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-mod3.c: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-shared-disabled.c: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-shared-enforced-abort.c: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-shared-optional.c: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-shared-override.c: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-shared.c: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-skeleton.c: Modified.
+ (support/check.h): Remove include.
+ (support/support.h): Remove include.
+ (support/test-driver.h): Remove include.
+ (stdio.h): Remove include.
+ (sys/auxv.h): Remove include.
+ (__check_gcs_status): Remove function.
+ (tst-gcs-helper.h): Include file.
+
+2025-02-21 Yury Khrustalev <yury.khrustalev@arm.com>
+
+ COMMIT: 82decb59bcecb9bf9efd252e0cf67e893221cd94
+ aarch64: Add tests for Guarded Control Stack
+
+ * sysdeps/unix/sysv/linux/aarch64/Makefile: Modified.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-abort.sh: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-disabled-static.c: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-disabled.c: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-enforced-abort.c: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-enforced-static-abort.c: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-enforced-static.c: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-enforced.c: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-optional-off.c: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-optional-on.c: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-optional-static-off.c: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-optional-static-on.c: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-override-static.c: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-override.c: New file.
+ * sysdeps/unix/sysv/linux/aarch64/tst-gcs-skeleton.c: New file.
+
+2025-02-21 Yury Khrustalev <yury.khrustalev@arm.com>
+
+ COMMIT: c05086d9043e996ba0490f029e96ca8ea549de66
+ aarch64: Add configure checks for GCS support
+
+ * configure: Modified.
+ * configure.ac: Modified.
+
+2025-02-20 Carlos O'Donell <carlos@redhat.com>
+
+ COMMIT: 6d24313e4a4098f7c469e119784bfbbfdb1ec749
+ manual: Mark setlogmask as AS-unsafe and AC-unsafe.
+
+ * manual/syslog.texi: Modified.
+
+2025-02-20 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: 163b1bbb76caba4d9673c07940c5930a1afa7548
+ AArch64: Add SVE memset
+
+ * sysdeps/aarch64/multiarch/Makefile: Modified.
+ * sysdeps/aarch64/multiarch/ifunc-impl-list.c: Modified.
+ (__libc_ifunc_impl_list): Modified function.
+ * sysdeps/aarch64/multiarch/memset.c: Modified.
+ (__typeof): Modified function.
+ (__memset_sve_zva64): New.
+ * sysdeps/aarch64/multiarch/memset_sve_zva64.S: New file.
+
+2025-02-20 H.J. Lu <hjl.tools@gmail.com>
+
+ COMMIT: 5a4573be6f96ff49111bb6cae767676b5aafa7a8
+ x86 (__HAVE_FLOAT128): Defined to 0 for Intel SYCL compiler [BZ #32723]
+
+ * sysdeps/x86/bits/floatn.h: Modified.
+ [!(( __x86_64__ ? __GNUC_PREREQ (4, 3) : ( __GNU__ ? __GNUC_PREREQ (4, 5) : __GNUC_PREREQ (4, 4))) || __glibc_clang_prereq (3, 4))](__HAVE_FLOAT128): Remove.
+ [( __x86_64__ ? __GNUC_PREREQ (4, 3) : ( __GNU__ ? __GNUC_PREREQ (4, 5) : __GNUC_PREREQ (4, 4))) || __glibc_clang_prereq (3, 4)](__HAVE_FLOAT128): Remove.
+ [!(( __x86_64__ ? __GNUC_PREREQ (4, 3) : ( __GNU__ ? __GNUC_PREREQ (4, 5) : __GNUC_PREREQ (4, 4))) || (__glibc_clang_prereq (3, 4) && (! __INTEL_LLVM_COMPILER || ! SYCL_LANGUAGE_VERSION)))](__HAVE_FLOAT128): New.
+ [( __x86_64__ ? __GNUC_PREREQ (4, 3) : ( __GNU__ ? __GNUC_PREREQ (4, 5) : __GNUC_PREREQ (4, 4))) || (__glibc_clang_prereq (3, 4) && (! __INTEL_LLVM_COMPILER || ! SYCL_LANGUAGE_VERSION))](__HAVE_FLOAT128): New.
+
+2025-02-19 Carlos O'Donell <carlos@redhat.com>
+
+ COMMIT: ad9c4c536115ba38be3e63592a632709ec8209b4
+ manual: Document setlogmask as MT-safe.
+
+ * manual/syslog.texi: Modified.
+
+2025-02-17 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 0242c9f9e606ade838651dadea13c251e3cc4ac2
+ math: Consolidate acosf and asinf internal tables
+
+ * math/Makefile: Modified.
+ * sysdeps/ieee754/flt-32/e_acosf.c: Modified.
+ (__ieee754_acosf): Modified function.
+ (s_asincosf_data.h): Include file.
+ * sysdeps/ieee754/flt-32/e_asinf.c: Modified.
+ (__ieee754_asinf): Modified function.
+ (s_asincosf_data.h): Include file.
+ * sysdeps/ieee754/flt-32/s_asincosf_data.c: New file.
+ * sysdeps/ieee754/flt-32/s_asincosf_data.h: New file.
+
+2025-02-17 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 1faccf388abb497fc9429126ae5e333daa24efb3
+ math: Consolidate acospif and asinpif internal tables
+
+ * math/Makefile: Modified.
+ * sysdeps/ieee754/flt-32/s_acospif.c: Modified.
+ (__acospif): Modified function.
+ (s_asincospif_data.h): Include file.
+ * sysdeps/ieee754/flt-32/s_asincospif_data.c: New file.
+ * sysdeps/ieee754/flt-32/s_asincospif_data.h: New file.
+ * sysdeps/ieee754/flt-32/s_asinpif.c: Modified.
+ (__asinpif): Modified function.
+ (s_asincospif_data.h): Include file.
+
+2025-02-17 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 246e52574d0c6dd3523a6e6f680b1599655f7aa1
+ math: Consolidate cospif and sinpif internal tables
+
+ * math/Makefile: Modified.
+ * sysdeps/ieee754/flt-32/s_cospif.c: Modified.
+ (__cospif): Modified function.
+ (s_sincospif_data.h): Include file.
+ * sysdeps/ieee754/flt-32/s_sincospif_data.c: New file.
+ * sysdeps/ieee754/flt-32/s_sincospif_data.h: New file.
+ * sysdeps/ieee754/flt-32/s_sinpif.c: Modified.
+ (__sinpif): Modified function.
+ (s_sincospif_data.h): Include file.
+
+2025-02-16 gfleury <gfleury@disroot.org>
+
+ COMMIT: 4afbc1aa2e08f6abe319be8ff3c0d6c4a42430a0
+ htl: don't export __pthread_default_rwlockattr anymore.
+
+ * htl/Versions: Modified.
+ * htl/pt-internal.h: Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Remove.
+ * sysdeps/htl/pt-rwlock-attr.c: Modified.
+ (libc_hidden_data_def): Remove.
+
+2025-02-16 gfleury <gfleury@disroot.org>
+
+ COMMIT: 6f6732c1c48b288a4ca7effb86831e7bc06a2fc8
+ htl: move pthread_rwlock_init into libc.
+
+ * htl/Makefile: Modified.
+ * htl/Versions: Modified.
+ * sysdeps/htl/libc-lockP.h: Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Remove.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): New.
+ * sysdeps/htl/pt-rwlock-init.c: Modified.
+ (_pthread_rwlock_init): Remove function.
+ (strong_alias): Remove.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (__pthread_rwlock_init): New function.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/i386/libpthread.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libc.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libpthread.abilist: Modified.
+
+2025-02-16 gfleury <gfleury@disroot.org>
+
+ COMMIT: d3ef1b56aa81d7f86ebf04c849258f0cf85c4217
+ htl: move pthread_rwlock_destroy into libc.
+
+ * htl/Makefile: Modified.
+ * htl/Versions: Modified.
+ * sysdeps/htl/libc-lockP.h: Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Remove.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): New.
+ * sysdeps/htl/pt-rwlock-destroy.c: Modified.
+ (_pthread_rwlock_destroy): Remove function.
+ (strong_alias): Remove.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (__pthread_rwlock_destroy): New function.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/i386/libpthread.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libc.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libpthread.abilist: Modified.
+
+2025-02-16 gfleury <gfleury@disroot.org>
+
+ COMMIT: 25650ef6b9606dcfe3112d4a662ae44f55f5568c
+ htl: move pthread_rwlock_{rdlock, timedrdlock, timedwrlock, wrlock, clockrdlock, clockwrlock} into libc.
+
+ * htl/Makefile: Modified.
+ * htl/Versions: Modified.
+ * htl/pt-initialize.c: Modified.
+ * sysdeps/htl/libc-lockP.h: Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Remove.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Remove.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): New.
+ (libc_hidden_proto): New.
+ * sysdeps/htl/pt-rwlock-rdlock.c: Modified.
+ (weak_alias): Remove.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/htl/pt-rwlock-timedrdlock.c: Modified.
+ (weak_alias): Remove.
+ (weak_alias): Remove.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_32, GLIBC_2_42)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/htl/pt-rwlock-timedwrlock.c: Modified.
+ (weak_alias): Remove.
+ (weak_alias): Remove.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_32, GLIBC_2_42)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/htl/pt-rwlock-wrlock.c: Modified.
+ (weak_alias): Remove.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/htl/pthread-functions.h: Modified.
+ (__pthread_rwlock_rdlock): Remove.
+ (__pthread_rwlock_wrlock): Remove.
+ (pthread_functions): Modified.
+ * sysdeps/htl/pthreadP.h: Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (__pthread_rwlock_clockrdlock): New function.
+ (__pthread_rwlock_clockwrlock): New function.
+ (__pthread_rwlock_timedrdlock): New function.
+ (__pthread_rwlock_timedwrlock): New function.
+ (libc_hidden_proto): New.
+ (libc_hidden_proto): New.
+ (libc_hidden_proto): New.
+ (libc_hidden_proto): New.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/i386/libpthread.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libc.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libpthread.abilist: Modified.
+
+2025-02-16 gfleury <gfleury@disroot.org>
+
+ COMMIT: 119798a7b1670065c9ccdc3e49440f1034961524
+ htl: move pthread_rwlock_unlock into libc.
+
+ * htl/Makefile: Modified.
+ * htl/Versions: Modified.
+ * htl/pt-initialize.c: Modified.
+ * sysdeps/htl/libc-lockP.h: Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Remove.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): New.
+ * sysdeps/htl/pt-rwlock-unlock.c: Modified.
+ (weak_alias): Remove.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/htl/pthread-functions.h: Modified.
+ (__pthread_rwlock_unlock): Remove.
+ (pthread_functions): Modified.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/i386/libpthread.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libc.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libpthread.abilist: Modified.
+
+2025-02-16 gfleury <gfleury@disroot.org>
+
+ COMMIT: 18accc19b994a1123125df6e89a6b3e83422eb96
+ htl: move pthread_rwlock_tryrdlock, pthread_rwlock_trywrlock into libc.
+
+ * htl/Makefile: Modified.
+ * htl/Versions: Modified.
+ * sysdeps/htl/libc-lockP.h: Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Remove.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Remove.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): New.
+ (libc_hidden_proto): New.
+ * sysdeps/htl/pt-rwlock-tryrdlock.c: Modified.
+ (pthread_rwlock_tryrdlock): Remove function.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (__pthread_rwlock_tryrdlock): New function.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/htl/pt-rwlock-trywrlock.c: Modified.
+ (pthread_rwlock_trywrlock): Remove function.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (__pthread_rwlock_trywrlock): New function.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/i386/libpthread.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libc.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libpthread.abilist: Modified.
+
+2025-02-16 gfleury <gfleury@disroot.org>
+
+ COMMIT: 4b25413df5127b7ff7fb3903bf8acb8a64743db4
+ htl: move pthread_rwlockattr_getpshared, pthread_rwlockattr_setpshared into libc.
+
+ * htl/Makefile: Modified.
+ * htl/Versions: Modified.
+ * sysdeps/htl/pt-rwlockattr-getpshared.c: Modified.
+ (pthread_rwlockattr_getpshared): Remove function.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (__pthread_rwlockattr_getpshared): New function.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/htl/pt-rwlockattr-setpshared.c: Modified.
+ (pthread_rwlockattr_setpshared): Remove function.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (__pthread_rwlockattr_setpshared): New function.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/htl/pthreadP.h: Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (__pthread_rwlockattr_getpshared): New function.
+ (__pthread_rwlockattr_setpshared): New function.
+ (libc_hidden_proto): New.
+ (libc_hidden_proto): New.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/i386/libpthread.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libc.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libpthread.abilist: Modified.
+
+2025-02-16 gfleury <gfleury@disroot.org>
+
+ COMMIT: cd2d31ed58542adc0869ca17c88a45f41117db8b
+ htl: move pthread_rwlockattr_destroy into libc.
+
+ * htl/Makefile: Modified.
+ * htl/Versions: Modified.
+ * sysdeps/htl/pt-rwlockattr-destroy.c: Modified.
+ (pthread_rwlockattr_destroy): Remove function.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (__pthread_rwlockattr_destroy): New function.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/htl/pthreadP.h: Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (__pthread_rwlockattr_destroy): New function.
+ (libc_hidden_proto): New.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/i386/libpthread.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libc.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libpthread.abilist: Modified.
+
+2025-02-16 gfleury <gfleury@disroot.org>
+
+ COMMIT: e618b671cdac1e98632ec9db439a585a55739e4b
+ htl: move pthread_rwlockattr_init into libc.
+
+ * htl/Makefile: Modified.
+ * htl/Versions: Modified.
+ * sysdeps/htl/pt-rwlockattr-init.c: Modified.
+ (pthread_rwlockattr_init): Remove function.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (__pthread_rwlockattr_init): New function.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/htl/pthreadP.h: Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (__pthread_rwlockattr_init): New function.
+ (libc_hidden_proto): New.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/i386/libpthread.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libc.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libpthread.abilist: Modified.
+
+2025-02-16 gfleury <gfleury@disroot.org>
+
+ COMMIT: 8f842ce13e5ba7577decb4ad6d66e159d00b18c7
+ htl: move __pthread_default_rwlockattr into libc.
+
+ * htl/Makefile: Modified.
+ * htl/Versions: Modified.
+ * htl/pt-internal.h: Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): New.
+ * sysdeps/htl/pt-rwlock-attr.c: Modified.
+ (libc_hidden_data_def): New.
+
+2025-02-15 Aurelien Jarno <aurelien@aurel32.net>
+
+ COMMIT: 60f2d6be657aa8c663ee14bd266d343ae0f35afb
+ Fix tst-aarch64-pkey to handle ENOSPC as not supported
+
+ * sysdeps/unix/sysv/linux/aarch64/tst-aarch64-pkey.c: Modified.
+ (do_test): Modified function.
+
+2025-02-14 Tulio Magno Quites Machado Filho <tuliom@redhat.com>
+
+ COMMIT: 1b6f868625403d6b7683af840e87d2b18d5d7731
+ Increase the amount of data tested in stdio-common/tst-fwrite-bz29459.c
+
+ * stdio-common/tst-fwrite-bz29459.c: Modified.
+ (ITERATIONS): Modified.
+ (main): Modified function.
+
+2025-02-13 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: aa3d7bd5299b33bffc118aa618b59bfa66059bcb
+ elf: Keep using minimal malloc after early DTV resize (bug 32412)
+
+ * elf/Makefile: Modified.
+ * elf/dl-tls.c: Modified.
+ (_dl_resize_dtv): Modified function.
+ * elf/tst-audit-tlsdesc-dlopen2.c: New file.
+ * elf/tst-auditmod-tlsdesc2.c: New file.
+
+2025-02-13 Tulio Magno Quites Machado Filho <tuliom@redhat.com>
+
+ COMMIT: 88f7ef881d1b9507aa934104c338b958c37821d7
+ libio: Initialize _total_written for all kinds of streams
+
+ * libio/fileops.c: Modified.
+ (_IO_new_file_init_internal): Modified function.
+ * libio/genops.c: Modified.
+ (_IO_no_init): Modified function.
+
+2025-02-13 Ben Kallus <benjamin.p.kallus.gr@dartmouth.edu>
+
+ COMMIT: d10176c0ffeadbc0bcd443741f53ebd85e70db44
+ malloc: Add size check when moving fastbin->tcache
+
+ * malloc/malloc.c: Modified.
+ (_int_malloc): Modified function.
+
+2025-02-13 Tobias Stoeckmann <tobias@stoeckmann.org>
+
+ COMMIT: 6a3cb6b1bd63e167fc525cce07010ff78197b271
+ nss: Improve network number parsers (bz 32573, 32575)
+
+ * inet/inet_net.c: Modified.
+ (__inet_network): Modified function.
+ * nss/Makefile: Modified.
+ * nss/nss_files/files-network.c: Modified.
+ (if): Remove function.
+ (n_net): New.
+ (if): New function.
+ * nss/tst-nss-files-network.c: New file.
+ * support/namespace.h: Modified.
+ (support_chroot_configuration): Modified.
+ (support_chroot): Modified.
+ * support/support_chroot.c: Modified.
+ (support_chroot_create): Modified function.
+ (support_chroot_free): Modified function.
+
+2025-02-13 Carlos O'Donell <carlos@redhat.com>
+
+ COMMIT: 991febc2f46d51801691bbd489d290820728d241
+ nptl: Remove unused __g_refs comment.
+
+ * nptl/pthread_cond_wait.c: Modified.
+
+2025-02-13 Siddhesh Poyarekar <siddhesh@sourceware.org>
+
+ COMMIT: a30374e4ce29197e281beefb6e55e218539e6d58
+ advisories: Fix up GLIBC-SA-2025-0001
+
+ * advisories/GLIBC-SA-2025-0001: Modified.
+
+2025-02-13 Yat Long Poon <yatlong.poon@arm.com>
+
+ COMMIT: 95e807209b680257a9afe81a507754f1565dbb4d
+ AArch64: Improve codegen for SVE powf
+
+ * sysdeps/aarch64/fpu/powf_sve.c: Modified.
+ (Shift): Remove.
+ (data): Modified.
+ (sv_zeroinfnan): Modified function.
+ (sv_call_powf_sc): Modified function.
+ (sv_powf_core_ext): Modified function.
+ (sv_powf_core): Modified function.
+ (SV_NAME_F2): Modified function.
+
+2025-02-13 Yat Long Poon <yatlong.poon@arm.com>
+
+ COMMIT: 0b195651db3ae793187c7dd6d78b5a7a8da9d5e6
+ AArch64: Improve codegen for SVE pow
+
+ * sysdeps/aarch64/fpu/pow_sve.c: Modified.
+ (A): Remove.
+ (C): Remove.
+ (sv_isodd): Modified function.
+ (sv_zeroinfnan): Modified function.
+ (sv_log_inline): Modified function.
+ (sv_exp_inline): Modified function.
+ (SV_NAME_D2): Modified function.
+ (SmallBoundX): New.
+ (data): New.
+ (sv_exp_core): New function.
+
+2025-02-13 Yat Long Poon <yatlong.poon@arm.com>
+
+ COMMIT: f5ff34cb3c75ec1061c75bb9188b3c1176426947
+ AArch64: Improve codegen for SVE erfcf
+
+ * sysdeps/aarch64/fpu/erfcf_sve.c: Modified.
+ (SV_NAME_F1): Modified function.
+
+2025-02-13 Luna Lamb <luna.lamb@arm.com>
+
+ COMMIT: c0ff447edf19bd4630fe79adf5e8b896405b059f
+ Aarch64: Improve codegen in SVE exp and users, and update expf_inline
+
+ * sysdeps/aarch64/fpu/cosh_sve.c: Modified.
+ (data): Modified.
+ (special_case): Modified function.
+ (exp_inline): Modified function.
+ (SV_NAME_D1): Modified function.
+ * sysdeps/aarch64/fpu/exp10_sve.c: Modified.
+ (poly_sve_f64.h): Remove include.
+ (data): Modified.
+ (special_case): Modified function.
+ (SV_NAME_D1): Modified function.
+ * sysdeps/aarch64/fpu/exp2_sve.c: Modified.
+ (poly_sve_f64.h): Remove include.
+ (data): Modified.
+ (special_case): Modified function.
+ (SV_NAME_D1): Modified function.
+ * sysdeps/aarch64/fpu/exp_sve.c: Modified.
+ (data): Modified.
+ (C): Remove.
+ (special_case): Modified function.
+ (SV_NAME_D1): Modified function.
+ * sysdeps/aarch64/fpu/sv_expf_inline.h: Modified.
+
+2025-02-13 Luna Lamb <luna.lamb@arm.com>
+
+ COMMIT: 8f0e7fe61e0a2ad5ed777933703ce09053810ec4
+ Aarch64: Improve codegen in SVE asinh
+
+ * sysdeps/aarch64/fpu/asinh_sve.c: Modified.
+ (poly_sve_f64.h): Remove include.
+ (data): Modified.
+ (__sv_log_inline): Modified function.
+ (SV_NAME_D1): Modified function.
+ (IndexMask): New.
+
+2025-02-13 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ COMMIT: 5afaf99edb326fd9f36eb306a828d129a3a1d7f7
+ math: Improve layout of exp/exp10 data
+
+ * sysdeps/ieee754/dbl-64/math_config.h: Modified.
+ (exp_data): Modified.
+
+2025-02-13 Siddhesh Poyarekar <siddhesh@sourceware.org>
+
+ COMMIT: cdb9ba84191ce72e86346fb8b1d906e7cd930ea2
+ assert: Add test for CVE-2025-0395
+
+ * assert/Makefile: Modified.
+ * assert/tst-assert-sa-2025-0001.c: New file.
+
+2025-02-12 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: b81252c4b9d8f624ce6519d38bfa7d77ec36f403
+ math: Consolidate coshf and sinhf internal tables
+
+ * math/Makefile: Modified.
+ * sysdeps/ieee754/flt-32/e_coshf.c: Modified.
+ (__ieee754_coshf): Modified function.
+ (e_sincoshf_data.h): Include file.
+ * sysdeps/ieee754/flt-32/e_sincoshf_data.c: New file.
+ * sysdeps/ieee754/flt-32/e_sincoshf_data.h: New file.
+ * sysdeps/ieee754/flt-32/e_sinhf.c: Modified.
+ (__ieee754_sinhf): Modified function.
+ (e_sincoshf_data.h): Include file.
+
+2025-02-12 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 994007ff29358560d85a3b29915b0ffcda553a84
+ math: Consolidate acoshf and asinhf internal tables
+
+ * math/Makefile: Modified.
+ * sysdeps/ieee754/flt-32/e_acoshf.c: Modified.
+ (__ieee754_acoshf): Modified function.
+ (s_asincoshf_data.h): Include file.
+ * sysdeps/ieee754/flt-32/s_asincoshf_data.c: New file.
+ * sysdeps/ieee754/flt-32/s_asincoshf_data.h: New file.
+ * sysdeps/ieee754/flt-32/s_asinhf.c: Modified.
+ (__asinhf): Modified function.
+ (s_asincoshf_data.h): Include file.
+
+2025-02-12 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 8f170dc81918813132998e4b306388c5663cb4c1
+ math: Use tanpif from CORE-MATH
+
+ * SHARED-FILES: Modified.
+ * sysdeps/aarch64/libm-test-ulps: Modified.
+ * sysdeps/arc/fpu/libm-test-ulps: Modified.
+ * sysdeps/arc/nofpu/libm-test-ulps: Modified.
+ * sysdeps/arm/libm-test-ulps: Modified.
+ * sysdeps/hppa/fpu/libm-test-ulps: Modified.
+ * sysdeps/i386/fpu/libm-test-ulps: Modified.
+ * sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Modified.
+ * sysdeps/ieee754/flt-32/math_config.h: Modified.
+ [! ROUNDEVENF_INTRINSICS](ROUNDEVENF_INTRINSICS): New.
+ (roundevenf_finite): New function.
+ * sysdeps/ieee754/flt-32/s_tanpif.c: New file.
+ * sysdeps/loongarch/lp64/libm-test-ulps: Modified.
+ * sysdeps/mips/mips64/libm-test-ulps: Modified.
+ * sysdeps/or1k/fpu/libm-test-ulps: Modified.
+ * sysdeps/or1k/nofpu/libm-test-ulps: Modified.
+ * sysdeps/powerpc/fpu/libm-test-ulps: Modified.
+ * sysdeps/powerpc/fpu/math_private.h: Modified.
+ [_ARCH_PWR6](ROUNDEVENF_INTRINSICS): New.
+ * sysdeps/riscv/nofpu/libm-test-ulps: Modified.
+ * sysdeps/riscv/rvd/libm-test-ulps: Modified.
+ * sysdeps/s390/fpu/libm-test-ulps: Modified.
+ * sysdeps/sparc/fpu/libm-test-ulps: Modified.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Modified.
+
+2025-02-12 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: de2fca9fe20e70d3c42b0a7a6baf684492dd4dbb
+ math: Use sinpif from CORE-MATH
+
+ * SHARED-FILES: Modified.
+ * sysdeps/aarch64/libm-test-ulps: Modified.
+ * sysdeps/arc/fpu/libm-test-ulps: Modified.
+ * sysdeps/arc/nofpu/libm-test-ulps: Modified.
+ * sysdeps/arm/libm-test-ulps: Modified.
+ * sysdeps/hppa/fpu/libm-test-ulps: Modified.
+ * sysdeps/i386/fpu/libm-test-ulps: Modified.
+ * sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Modified.
+ * sysdeps/ieee754/flt-32/s_sinpif.c: New file.
+ * sysdeps/loongarch/lp64/libm-test-ulps: Modified.
+ * sysdeps/mips/mips64/libm-test-ulps: Modified.
+ * sysdeps/or1k/fpu/libm-test-ulps: Modified.
+ * sysdeps/or1k/nofpu/libm-test-ulps: Modified.
+ * sysdeps/powerpc/fpu/libm-test-ulps: Modified.
+ * sysdeps/riscv/nofpu/libm-test-ulps: Modified.
+ * sysdeps/riscv/rvd/libm-test-ulps: Modified.
+ * sysdeps/s390/fpu/libm-test-ulps: Modified.
+ * sysdeps/sparc/fpu/libm-test-ulps: Modified.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Modified.
+
+2025-02-12 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: be85208b9fcaf7d7de7aec074e80177739b89947
+ math: Use cospif from CORE-MATH
+
+ * SHARED-FILES: Modified.
+ * sysdeps/aarch64/libm-test-ulps: Modified.
+ * sysdeps/arc/fpu/libm-test-ulps: Modified.
+ * sysdeps/arc/nofpu/libm-test-ulps: Modified.
+ * sysdeps/arm/libm-test-ulps: Modified.
+ * sysdeps/hppa/fpu/libm-test-ulps: Modified.
+ * sysdeps/i386/fpu/libm-test-ulps: Modified.
+ * sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Modified.
+ * sysdeps/ieee754/flt-32/s_cospif.c: New file.
+ * sysdeps/loongarch/lp64/libm-test-ulps: Modified.
+ * sysdeps/mips/mips64/libm-test-ulps: Modified.
+ * sysdeps/or1k/fpu/libm-test-ulps: Modified.
+ * sysdeps/or1k/nofpu/libm-test-ulps: Modified.
+ * sysdeps/powerpc/fpu/libm-test-ulps: Modified.
+ * sysdeps/riscv/nofpu/libm-test-ulps: Modified.
+ * sysdeps/riscv/rvd/libm-test-ulps: Modified.
+ * sysdeps/s390/fpu/libm-test-ulps: Modified.
+ * sysdeps/sparc/fpu/libm-test-ulps: Modified.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Modified.
+
+2025-02-12 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 95a01ea9551f09c5e6accd07105bac360f2d38e6
+ math: Use atanpif from CORE-MATH
+
+ * SHARED-FILES: Modified.
+ * math/auto-libm-test-in: Modified.
+ * math/auto-libm-test-out-atanpi: Modified.
+ * sysdeps/aarch64/libm-test-ulps: Modified.
+ * sysdeps/arc/fpu/libm-test-ulps: Modified.
+ * sysdeps/arc/nofpu/libm-test-ulps: Modified.
+ * sysdeps/arm/libm-test-ulps: Modified.
+ * sysdeps/hppa/fpu/libm-test-ulps: Modified.
+ * sysdeps/i386/fpu/libm-test-ulps: Modified.
+ * sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Modified.
+ * sysdeps/ieee754/flt-32/s_atanpif.c: New file.
+ * sysdeps/loongarch/lp64/libm-test-ulps: Modified.
+ * sysdeps/mips/mips64/libm-test-ulps: Modified.
+ * sysdeps/or1k/fpu/libm-test-ulps: Modified.
+ * sysdeps/or1k/nofpu/libm-test-ulps: Modified.
+ * sysdeps/powerpc/fpu/libm-test-ulps: Modified.
+ * sysdeps/riscv/nofpu/libm-test-ulps: Modified.
+ * sysdeps/riscv/rvd/libm-test-ulps: Modified.
+ * sysdeps/s390/fpu/libm-test-ulps: Modified.
+ * sysdeps/sparc/fpu/libm-test-ulps: Modified.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Modified.
+
+2025-02-12 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 1cd9ccd8c0b23a3106f08f6e29bcbb1f57d3334c
+ math: Use atan2pif from CORE-MATH
+
+ * SHARED-FILES: Modified.
+ * sysdeps/aarch64/libm-test-ulps: Modified.
+ * sysdeps/arc/fpu/libm-test-ulps: Modified.
+ * sysdeps/arc/nofpu/libm-test-ulps: Modified.
+ * sysdeps/arm/libm-test-ulps: Modified.
+ * sysdeps/hppa/fpu/libm-test-ulps: Modified.
+ * sysdeps/i386/fpu/libm-test-ulps: Modified.
+ * sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Modified.
+ * sysdeps/ieee754/flt-32/s_atan2pif.c: New file.
+ * sysdeps/loongarch/lp64/libm-test-ulps: Modified.
+ * sysdeps/mips/mips64/libm-test-ulps: Modified.
+ * sysdeps/or1k/fpu/libm-test-ulps: Modified.
+ * sysdeps/or1k/nofpu/libm-test-ulps: Modified.
+ * sysdeps/powerpc/fpu/libm-test-ulps: Modified.
+ * sysdeps/riscv/nofpu/libm-test-ulps: Modified.
+ * sysdeps/riscv/rvd/libm-test-ulps: Modified.
+ * sysdeps/s390/fpu/libm-test-ulps: Modified.
+ * sysdeps/sparc/fpu/libm-test-ulps: Modified.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Modified.
+
+2025-02-12 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: ae679a0aca66b04eead859360f7fbca387adf02c
+ math: Use asinpif from CORE-MATH
+
+ * SHARED-FILES: Modified.
+ * sysdeps/aarch64/libm-test-ulps: Modified.
+ * sysdeps/arc/fpu/libm-test-ulps: Modified.
+ * sysdeps/arc/nofpu/libm-test-ulps: Modified.
+ * sysdeps/arm/libm-test-ulps: Modified.
+ * sysdeps/hppa/fpu/libm-test-ulps: Modified.
+ * sysdeps/i386/fpu/libm-test-ulps: Modified.
+ * sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Modified.
+ * sysdeps/ieee754/flt-32/s_asinpif.c: New file.
+ * sysdeps/loongarch/lp64/libm-test-ulps: Modified.
+ * sysdeps/mips/mips64/libm-test-ulps: Modified.
+ * sysdeps/or1k/fpu/libm-test-ulps: Modified.
+ * sysdeps/or1k/nofpu/libm-test-ulps: Modified.
+ * sysdeps/powerpc/fpu/libm-test-ulps: Modified.
+ * sysdeps/riscv/nofpu/libm-test-ulps: Modified.
+ * sysdeps/riscv/rvd/libm-test-ulps: Modified.
+ * sysdeps/s390/fpu/libm-test-ulps: Modified.
+ * sysdeps/sparc/fpu/libm-test-ulps: Modified.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Modified.
+
+2025-02-12 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: edb2a8f0ae1b849737a7559c39779131f908adaa
+ math: Use acospif from CORE-MATH
+
+ * SHARED-FILES: Modified.
+ * sysdeps/aarch64/libm-test-ulps: Modified.
+ * sysdeps/arc/fpu/libm-test-ulps: Modified.
+ * sysdeps/arc/nofpu/libm-test-ulps: Modified.
+ * sysdeps/arm/libm-test-ulps: Modified.
+ * sysdeps/hppa/fpu/libm-test-ulps: Modified.
+ * sysdeps/i386/fpu/libm-test-ulps: Modified.
+ * sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Modified.
+ * sysdeps/ieee754/flt-32/s_acospif.c: New file.
+ * sysdeps/loongarch/lp64/libm-test-ulps: Modified.
+ * sysdeps/mips/mips64/libm-test-ulps: Modified.
+ * sysdeps/or1k/fpu/libm-test-ulps: Modified.
+ * sysdeps/or1k/nofpu/libm-test-ulps: Modified.
+ * sysdeps/powerpc/fpu/libm-test-ulps: Modified.
+ * sysdeps/riscv/nofpu/libm-test-ulps: Modified.
+ * sysdeps/riscv/rvd/libm-test-ulps: Modified.
+ * sysdeps/s390/fpu/libm-test-ulps: Modified.
+ * sysdeps/sparc/fpu/libm-test-ulps: Modified.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Modified.
+
+2025-02-12 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 57d1fc997143c15a1fb06aaf038f1ef3afe7bd91
+ benchtests: Add tanpif
+
+ * benchtests/Makefile: Modified.
+ * benchtests/tanpif-inputs: New file.
+
+2025-02-12 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 10370a4d0063d7b71b48fe7b5cdb7d602e14e8b4
+ benchtests: Add sinpif
+
+ * benchtests/Makefile: Modified.
+ * benchtests/sinpif-inputs: New file.
+
+2025-02-12 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 180e97bee68bc16e07cfa0d9c8cefda0cb0020fe
+ benchtests: Add cospif
+
+ * benchtests/Makefile: Modified.
+ * benchtests/cospif-inputs: New file.
+
+2025-02-11 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 1700d306d4bee04583afe60e4e8362c69cc9c419
+ benchtests: Add atanpif
+
+ * benchtests/Makefile: Modified.
+ * benchtests/atanpif-inputs: New file.
+
+2025-02-11 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: ec9d2f30662565cc720c75988fa223b18157493e
+ benchtests: Add atan2pif
+
+ * benchtests/Makefile: Modified.
+ * benchtests/atan2pif-inputs: New file.
+
+2025-02-11 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 082ffa4ddcb08a4b35cab8c5cf54ccac92415a7b
+ benchtests: Add asinpif
+
+ * benchtests/Makefile: Modified.
+ * benchtests/asinpif-inputs: New file.
+
+2025-02-11 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 3e0e782b29ea115415d45a0ef66b4c6f251c228f
+ benchtests: Add acospif
+
+ * benchtests/Makefile: Modified.
+ * benchtests/acospif-inputs: New file.
+
+2025-02-10 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ COMMIT: 392261a2b6f94a32ff0dc511a52275d62301f535
+ hurd: Replace char foo[1024] with string_t
+
+ * hurd/hurd/lookup.h: Modified.
+ (__hurd_file_name_lookup_retry): Modified.
+ (hurd_file_name_lookup_retry): Modified.
+ * hurd/hurdlookup.c: Modified.
+ (__hurd_file_name_lookup): Modified function.
+ * hurd/lookup-at.c: Modified.
+ (__file_name_lookup_at): Modified function.
+ * hurd/lookup-retry.c: Modified.
+ (__hurd_file_name_lookup_retry): Modified function.
+ * sysdeps/mach/hurd/bind.c: Modified.
+ (__bind): Modified function.
+ * sysdeps/mach/hurd/dl-sysdep.c: Modified.
+ (open_file): Modified function.
+ * sysdeps/mach/hurd/fexecve.c: Modified.
+ (fexecve): Modified function.
+ * sysdeps/mach/hurd/getlogin.c: Modified.
+ (getlogin): Modified function.
+ * sysdeps/mach/hurd/readlinkat.c: Modified.
+ (__readlinkat): Modified function.
+ * sysdeps/mach/hurd/ttyname.c: Modified.
+ (ttyname): Modified function.
+ * sysdeps/mach/hurd/ttyname_r.c: Modified.
+ (__ttyname_r): Modified function.
+
+2025-02-10 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ COMMIT: 659fa18dde83be7e723dcdc1624a3a1f2c180665
+ hurd: Drop useless buffer initialization in ttyname*
+
+ * sysdeps/mach/hurd/ttyname.c: Modified.
+ (ttyname): Modified function.
+ * sysdeps/mach/hurd/ttyname_r.c: Modified.
+ (__ttyname_r): Modified function.
+
+2025-02-10 Flavio Cruz <flaviocruz@gmail.com>
+
+ COMMIT: da49165ea6ca9a759229becc5e269594a80b0976
+ mig_strncpy: ensure destination string is null terminated
+
+ * mach/mig_strncpy.c: Modified.
+ (__mig_strncpy): Modified function.
+
+2025-02-10 gfleury <gfleury@disroot.org>
+
+ COMMIT: 6bcd7bf10062005a10c2a9d0dbbb7bdc995e5503
+ htl: stop exporting __pthread_default_barrierattr.
+
+ * htl/Versions: Modified.
+ * htl/pt-internal.h: Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Remove.
+ * sysdeps/htl/pt-barrier.c: Modified.
+ (libc_hidden_data_def): Remove.
+
+2025-02-10 gfleury <gfleury@disroot.org>
+
+ COMMIT: 710bbc9659566017cb75d5d2bfb42f077350a25a
+ htl: move pthread_barrier_wait into libc.
+
+ * htl/Makefile: Modified.
+ * htl/Versions: Modified.
+ * sysdeps/htl/pt-barrier-wait.c: Modified.
+ (pthread_barrier_wait): Remove function.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (__pthread_barrier_wait): New function.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/htl/pthreadP.h: Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (__pthread_barrier_wait): New function.
+ (libc_hidden_proto): New.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/i386/libpthread.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libc.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libpthread.abilist: Modified.
+
+2025-02-10 gfleury <gfleury@disroot.org>
+
+ COMMIT: 2789003489c93305ecdc9f27d583507e07886631
+ htl: move pthread_barrier_init into libc.
+
+ * htl/Makefile: Modified.
+ * htl/Versions: Modified.
+ * sysdeps/htl/pt-barrier-init.c: Modified.
+ (pthread_barrier_init): Remove function.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (__pthread_barrier_init): New function.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/htl/pthreadP.h: Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (__pthread_barrier_init): New function.
+ (libc_hidden_proto): New.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/i386/libpthread.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libc.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libpthread.abilist: Modified.
+
+2025-02-10 gfleury <gfleury@disroot.org>
+
+ COMMIT: 735c9b73d6182f2fa9b72f708bd1f651b7c2717b
+ htl: move pthread_barrier_destroy into libc.
+
+ * htl/Makefile: Modified.
+ * htl/Versions: Modified.
+ * sysdeps/htl/pt-barrier-destroy.c: Modified.
+ (pthread_barrier_destroy): Remove function.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (__pthread_barrier_destroy): New function.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/htl/pthreadP.h: Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (__pthread_barrier_destroy): New function.
+ (libc_hidden_proto): New.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/i386/libpthread.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libc.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libpthread.abilist: Modified.
+
+2025-02-10 gfleury <gfleury@disroot.org>
+
+ COMMIT: ccf19a68ab067c81a3d24d9b5d1743ca2cf79184
+ htl: move pthread_barrierattr_getpshared, pthread_barrierattr_setpshared into libc.
+
+ * htl/Makefile: Modified.
+ * htl/Versions: Modified.
+ * sysdeps/htl/pt-barrierattr-getpshared.c: Modified.
+ (pthread_barrierattr_getpshared): Remove function.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (__pthread_barrierattr_getpshared): New function.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/htl/pt-barrierattr-setpshared.c: Modified.
+ (pthread_barrierattr_setpshared): Remove function.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (__pthread_barrierattr_setpshared): New function.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/htl/pthreadP.h: Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (__pthread_barrierattr_getpshared): New function.
+ (__pthread_barrierattr_setpshared): New function.
+ (libc_hidden_proto): New.
+ (libc_hidden_proto): New.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/i386/libpthread.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libc.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libpthread.abilist: Modified.
+
+2025-02-10 gfleury <gfleury@disroot.org>
+
+ COMMIT: ca2a95ee677867168bd9b5542a70255b47c12849
+ htl: move pthread_barrierattr_init into libc.
+
+ * htl/Makefile: Modified.
+ * htl/Versions: Modified.
+ * sysdeps/htl/pt-barrierattr-init.c: Modified.
+ (pthread_barrierattr_init): Remove function.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (__pthread_barrierattr_init): New function.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/htl/pthreadP.h: Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (__pthread_barrierattr_init): New function.
+ (libc_hidden_proto): New.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/i386/libpthread.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libc.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libpthread.abilist: Modified.
+
+2025-02-10 gfleury <gfleury@disroot.org>
+
+ COMMIT: 40cbd3c361f8460a53484d6803b96618119d078b
+ htl: move pthread_barrierattr_destroy into libc.
+
+ * htl/Makefile: Modified.
+ * htl/Versions: Modified.
+ * sysdeps/htl/pt-barrierattr-destroy.c: Modified.
+ (pthread.h): Remove include.
+ (pthread_barrierattr_destroy): Remove function.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ (pthreadP.h): Include file.
+ (shlib-compat.h): Include file.
+ (__pthread_barrierattr_destroy): New function.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/htl/pthreadP.h: Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (__pthread_barrierattr_destroy): New function.
+ (libc_hidden_proto): New.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/i386/libpthread.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libc.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libpthread.abilist: Modified.
+
+2025-02-10 gfleury <gfleury@disroot.org>
+
+ COMMIT: 7d799d85e82f58cff0dea0363d0b056a85ef5c44
+ htl: move __pthread_default_barrierattr into libc.
+
+ * htl/Makefile: Modified.
+ * htl/Versions: Modified.
+ * htl/pt-internal.h: Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): New.
+ * sysdeps/htl/pt-barrier.c: Modified.
+ (libc_hidden_data_def): New.
+
+2025-02-05 DJ Delorie <dj@redhat.com>
+
+ COMMIT: bb6496b96444dfd55d7105396780f6eba14b1cd9
+ manual: Update signal descriptions
+
+ * manual/signal.texi: Modified.
+
+2025-02-05 Tulio Magno Quites Machado Filho <tuliom@redhat.com>
+
+ COMMIT: cdb0800022110bc68a033944f09e501be5bd72d7
+ libio: Replace __LP64__ with __WORDSIZE
+
+ * libio/bits/types/struct_FILE.h: Modified.
+ (_IO_FILE_complete): Modified.
+ (bits/wordsize.h): Include file.
+
+2025-02-05 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 3755ffb665ab544396d871c517a218d863f1cf52
+ powerpc64le: Also avoid IFUNC for __mempcpy
+
+ * sysdeps/powerpc/powerpc64/le/multiarch/dl-symbol-redir-ifunc.h: Modified.
+ (__mempcpy): New.
+
+2025-02-05 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 68c9ef4419b8a4574dacc8e96296ec24bdc01da8
+ elf: Build dl-tls.o with early startup symbol redirections
+
+ * csu/libc-tls.c: Modified.
+ (dl-symbol-redir-ifunc.h): Include file.
+ * elf/dl-tls.c: Modified.
+ [! SHARED](dl-symbol-redir-ifunc.h): Include file.
+
+2025-02-04 DJ Delorie <dj@redhat.com>
+
+ COMMIT: 37a0933e1bf97346b45463bde0c4631be8abaa07
+ manual: make @manpageurl more specific to each output
+
+ * manual/intro.texi: Modified.
+ * manual/macros.texi: Modified.
+ * manual/resource.texi: Modified.
+
+2025-02-03 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 09e7f4d594b4308fbea18e3044148d67b59757c9
+ math: Fix tanf for some inputs (BZ 32630)
+
+ * math/auto-libm-test-in: Modified.
+ * math/auto-libm-test-out-tan: Modified.
+ * sysdeps/ieee754/flt-32/s_tanf.c: Modified.
+ (__tanf): Modified function.
+
+2025-02-02 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: fc058b46c78f090580c1ca5b785b54ae4092f0c1
+ elf: Use _dl_find_object instead of _dl_find_dso_for_object in dlopen
+
+ * elf/dl-open.c: Modified.
+ (_dl_open): Modified function.
+
+2025-02-02 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: b05e78d47351181694d7eda3dfcccc495b538fa8
+ elf: Add fast path to dlopen for fully-opened maps
+
+ * elf/dl-open.c: Modified.
+ (dl_open_worker_begin): Modified function.
+ (_dl_open): Modified function.
+ (is_already_fully_open): New function.
+
+2025-02-02 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: edc6842bbc1e052a4df4e449d2ce2b8d0991bd34
+ elf: Determine the caller link map in _dl_open
+
+ * elf/dl-open.c: Modified.
+ (dl_open_args): Modified.
+ (dl_open_worker_begin): Modified function.
+ (_dl_open): Modified function.
+
+2025-02-02 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: d12cb8e45232f11ee77f8b6d8cd71cc96fbff4a4
+ elf: Merge __dl_libc_freemem into __rtld_libc_freeres
+
+ * elf/dl-libc.c: Modified.
+ (free_slotinfo): Remove function.
+ (__dl_libc_freemem): Remove function.
+ * elf/dl-libc_freeres.c: Modified.
+ (__rtld_libc_freeres): Modified function.
+ (free_slotinfo): New function.
+ * include/set-freeres.h: Modified.
+ (__dl_libc_freemem): Remove.
+ * malloc/set-freeres.c: Modified.
+ (__libc_freeres): Modified function.
+
+2025-02-02 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 749310c61b66aa2af0422db25686440b64a14800
+ elf: Add l_soname accessor function for DT_SONAME values
+
+ * elf/dl-load.c: Modified.
+ [! EXTERNAL_MAP_FROM_FD](_dl_map_object_from_fd): Modified function.
+ (_dl_lookup_map): Modified function.
+ * elf/dl-open.c: Modified.
+ (dl_open_worker_begin): Modified function.
+ * elf/rtld.c: Modified.
+ (rtld_chain_load): Modified function.
+ (dl_main): Modified function.
+ * elf/setup-vdso.h: Modified.
+ (setup_vdso): Modified function.
+ * elf/sprof.c: Modified.
+ (load_shobj): Modified function.
+ * sysdeps/generic/ldsodefs.h: Modified.
+ (l_soname): New function.
+
+2025-02-02 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: aa1bf8903992cc0d26cacb9e5930a9fed8f50548
+ elf: Split _dl_lookup_map, _dl_map_new_object from _dl_map_object
+
+ * elf/dl-load.c: Modified.
+ (_dl_map_object): Modified function.
+ (_dl_lookup_map): New function.
+ (_dl_map_new_object): New function.
+ * sysdeps/generic/ldsodefs.h: Modified.
+ (_dl_lookup_map): New function.
+ (_dl_map_new_object): New function.
+
+2025-02-01 Sergey Bugaev <bugaevc@gmail.com>
+
+ COMMIT: a7aad6e2b774f24934d8925d3169ee6bf9d7538c
+ hurd: Use the new __proc_reauthenticate_complete protocol
+
+ * hurd/hurdsig.c: Modified.
+ (reauth_proc): Modified function.
+ * sysdeps/mach/hurd/spawni.c: Modified.
+ (__spawni): Modified function.
+
+2025-02-01 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 96429bcc91a14f71b177ddc5e716de3069060f2c
+ elf: Do not add a copy of _dl_find_object to libc.so
+
+ * elf/Makefile: Modified.
+ * elf/dl-find_object.c: Modified.
+ (__dl_find_object): Remove function.
+ (hidden_def): Remove.
+ (weak_alias): Remove.
+ (_dl_find_object): New function.
+ (rtld_hidden_def): New.
+ * include/dlfcn.h: Modified.
+ [! _ISOMAC](__dl_find_object): Remove.
+ [! _ISOMAC](hidden_proto): Remove.
+ [! _ISOMAC](rtld_hidden_proto): New.
+ * sysdeps/arm/find_exidx.c: Modified.
+ (__gnu_Unwind_Find_exidx): Modified function.
+ (ldsodefs.h): Include file.
+
+2025-02-01 gfleury <gfleury@disroot.org>
+
+ COMMIT: cf51d18b9daf510de1997d4d87328c03103a6b68
+ htl: move pthread_setcancelstate into libc.
+
+ * htl/Makefile: Modified.
+ * htl/Versions: Modified.
+ * htl/forward.c: Modified.
+ (FORWARD): Remove.
+ (strong_alias): Remove.
+ * htl/pt-initialize.c: Modified.
+ * htl/pt-setcancelstate.c: Modified.
+ (weak_alias): Remove.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_21)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/htl/libc-lockP.h: Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Remove.
+ (__pthread_setcancelstate): New function.
+ (libc_hidden_proto): New.
+ * sysdeps/htl/pthread-functions.h: Modified.
+ (__pthread_setcancelstate): Remove.
+ (pthread_functions): Modified.
+ * sysdeps/htl/pthreadP.h: Modified.
+ (__pthread_setcancelstate): Remove.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/i386/libpthread.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libpthread.abilist: Modified.
+ * sysdeps/pthread/sem_open.c: Modified.
+ (__sem_open): Modified function.
+
+2025-01-31 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 04588633cff835db7d838aa57c3def90d2621b76
+ math: Fix sinhf for some inputs (BZ 32627)
+
+ * math/auto-libm-test-in: Modified.
+ * math/auto-libm-test-out-sinh: Modified.
+ * sysdeps/ieee754/flt-32/e_sinhf.c: Modified.
+ (__ieee754_sinhf): Modified function.
+
+2025-01-31 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: c79277a16785c8ae96d821414f4d31d654a0177c
+ math: Fix log10p1f internal table value (BZ 32626)
+
+ * math/auto-libm-test-in: Modified.
+ * math/auto-libm-test-out-log10p1: Modified.
+ * sysdeps/ieee754/flt-32/s_log10p1f.c: Modified.
+ (__log10p1f): Modified function.
+
+2025-01-31 Tulio Magno Quites Machado Filho <tuliom@redhat.com>
+
+ COMMIT: 1b29cb7b781ecf3f6dc4647c32861119bacbd5ef
+ manual: Safety annotations for timespec_get and timespec_getres
+
+ * manual/time.texi: Modified.
+
+2025-01-31 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: 22a11aa1c3fba1918ed5f288176ad58385e5838c
+ sh: Fix tst-guard1 build
+
+ * sysdeps/sh/nptl/pthreaddef.h: Modified.
+ (sysdep.h): Remove include.
+
+2025-01-30 Arjun Shankar <arjun@redhat.com>
+
+ COMMIT: 47c4f4045caaaad1e6165cb638e45d633d6ca97f
+ manual: Add links to POSIX Semaphores man-pages documentation
+
+ * manual/threads.texi: Modified.
+
+2025-01-30 Arjun Shankar <arjun@redhat.com>
+
+ COMMIT: a3a5634d9b0e193502d16488205452598dc4aa74
+ manual: Consolidate POSIX Semaphores docs in Threads chapter
+
+ * manual/ipc.texi: Modified.
+ * manual/threads.texi: Modified.
+
+2025-01-30 Petr Malat <oss@malat.biz>
+
+ COMMIT: 4c43173eba874039c96eca893041745c6d7be38a
+ ld.so: Decorate BSS mappings
+
+ * elf/dl-map-segments.h: Modified.
+ (_dl_map_segments): Modified function.
+ (setvmaname.h): Include file.
+ * nptl/allocatestack.c: Modified.
+ (ANON_VMA_NAME_MAX_LEN): Remove.
+ * sysdeps/generic/setvmaname.h: Modified.
+ (stdbool.h): Include file.
+ (ANON_VMA_NAME_MAX_LEN): New.
+ (__is_decorate_maps_enabled): New function.
+ * sysdeps/unix/sysv/linux/setvmaname.c: Modified.
+ (__set_vma_name): Modified function.
+ (<anonymous>): New.
+ (__is_decorate_maps_enabled): New function.
+ * sysdeps/unix/sysv/linux/setvmaname.h: Modified.
+ [IS_IN(libc) || IS_IN(rtld)](stdbool.h): Include file.
+ [IS_IN(libc) || IS_IN(rtld)](__is_decorate_maps_enabled): New function.
+ (ANON_VMA_NAME_MAX_LEN): New.
+
+2025-01-30 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ COMMIT: a6fbe36b7f31292981422692236465ab56670ea9
+ nptl: Add support for setup guard pages with MADV_GUARD_INSTALL
+
+ * nptl/Makefile: Modified.
+ * nptl/TODO-testing: Modified.
+ * nptl/allocatestack.c: Modified.
+ (guard_position): Modified function.
+ (setup_stack_prot): Modified function.
+ (allocate_stack): Modified function.
+ (name_stack_maps): Modified function.
+ (allocate_stack_mode): New.
+ (stack_prot): New function.
+ (allocate_thread_stack): New function.
+ (adjust_stack_prot): New function.
+ * nptl/descr.h: Modified.
+ (pthread): Modified.
+ (allocate_stack_mode_t): New.
+ * nptl/nptl-stack.c: Modified.
+ (__nptl_deallocate_stack): Modified function.
+ * nptl/pthread_create.c: Modified.
+ (start_thread): Modified function.
+ * nptl/tst-guard1.c: New file.
+ * sysdeps/nptl/dl-tls_init_tp.c: Modified.
+ (__tls_init_tp): Modified function.
+ * sysdeps/nptl/fork.h: Modified.
+ (reclaim_stacks): Modified function.
+ * sysdeps/unix/sysv/linux/bits/mman-linux.h: Modified.
+ [__USE_MISC](MADV_GUARD_INSTALL): New.
+ [__USE_MISC](MADV_GUARD_REMOVE): New.
+
+2025-01-29 John David Anglin <danglin@gcc.gnu.org>
+
+ COMMIT: 8e86549d1417a4618ab98d10aaba427350b321c6
+ nptl: Correct stack size attribute when stack grows up [BZ #32574]
+
+ * nptl/pthread_getattr_np.c: Modified.
+ (__pthread_getattr_np): Modified function.
+
+2025-01-29 Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 32ac9f8049adc7a7b92c3f27286de745691ad233
+ manual: Update compatibility note on flushing of line-oriented files
+
+ * manual/stdio.texi: Modified.
+
+2025-01-29 gfleury <gfleury@disroot.org>
+
+ COMMIT: 9a31eb64dbd4f2d16b206eba20960d2c10414dd8
+ htl: move pthread_setcanceltype into libc.
+
+ * htl/Makefile: Modified.
+ * htl/Versions: Modified.
+ * htl/forward.c: Modified.
+ (FORWARD): Remove.
+ * htl/pt-initialize.c: Modified.
+ * htl/pt-setcanceltype.c: Modified.
+ (weak_alias): Remove.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_21)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/htl/pthread-functions.h: Modified.
+ (__pthread_setcanceltype): Remove.
+ (pthread_functions): Modified.
+ * sysdeps/htl/pthreadP.h: Modified.
+ (libc_hidden_proto): Modified.
+ (__pthread_setcanceltype): New function.
+ (libc_hidden_proto): New function.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/i386/libpthread.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libpthread.abilist: Modified.
+
+2025-01-29 gfleury <gfleury@disroot.org>
+
+ COMMIT: 265c5991afde5b64bf895f3a561c23f64ae4a5f9
+ htl: move pthread_mutex_consistent, pthread_mutex_consistent_np into libc.
+
+ * htl/Makefile: Modified.
+ * htl/Versions: Modified.
+ * sysdeps/htl/pthreadP.h: Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (__pthread_mutex_consistent): New function.
+ (libc_hidden_proto): New.
+ * sysdeps/mach/hurd/htl/pt-mutex-consistent.c: Modified.
+ (pthread.h): Remove include.
+ (pthread_mutex_consistent): Remove function.
+ (weak_alias): Remove.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_32, GLIBC_2_42)](compat_symbol): New.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_32, GLIBC_2_42)](compat_symbol): New.
+ (pthreadP.h): Include file.
+ (shlib-compat.h): Include file.
+ (__pthread_mutex_consistent): New function.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ (versioned_symbol): New function.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/i386/libpthread.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libc.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libpthread.abilist: Modified.
+
+2025-01-29 gfleury <gfleury@disroot.org>
+
+ COMMIT: 8bfabe7a92322bde46f25671cc29d66111321d38
+ htl: move pthread_mutex_destroy into libc.
+
+ * htl/Makefile: Modified.
+ * htl/Versions: Modified.
+ * htl/forward.c: Modified.
+ (FORWARD): Modified.
+ (FORWARD): Modified.
+ (FORWARD): Remove.
+ * htl/pt-initialize.c: Modified.
+ * sysdeps/htl/libc-lockP.h: Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Remove.
+ * sysdeps/htl/pthread-functions.h: Modified.
+ (_pthread_mutex_destroy): Remove.
+ (pthread_functions): Modified.
+ * sysdeps/htl/pthreadP.h: Modified.
+ [IS_IN (libpthread)](hidden_proto): Modified.
+ [IS_IN (libpthread)](hidden_proto): Remove.
+ (__pthread_mutex_destroy): Remove.
+ * sysdeps/mach/hurd/htl/pt-mutex-destroy.c: Modified.
+ (weak_alias): Remove.
+ (hidden_def): Remove.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_21)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/i386/libpthread.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libpthread.abilist: Modified.
+
+2025-01-29 gfleury <gfleury@disroot.org>
+
+ COMMIT: be9f0e768125c211383fbf0add21dd659d49bd07
+ htl: move pthread_mutex_getprioceiling, pthread_mutex_setprioceiling into libc
+
+ * htl/Makefile: Modified.
+ * htl/Versions: Modified.
+ * sysdeps/htl/pthreadP.h: Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (__pthread_mutex_getprioceiling): New function.
+ (__pthread_mutex_setprioceiling): New function.
+ (libc_hidden_proto): New.
+ (libc_hidden_proto): New.
+ * sysdeps/mach/hurd/htl/pt-mutex-getprioceiling.c: Modified.
+ (pthread.h): Remove include.
+ (pthread_mutex_getprioceiling): Remove function.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ (pthreadP.h): Include file.
+ (shlib-compat.h): Include file.
+ (__pthread_mutex_getprioceiling): New function.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/mach/hurd/htl/pt-mutex-setprioceiling.c: Modified.
+ (pthread.h): Remove include.
+ (pthread_mutex_setprioceiling): Remove function.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ (pthreadP.h): Include file.
+ (shlib-compat.h): Include file.
+ (__pthread_mutex_setprioceiling): New function.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/i386/libpthread.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libc.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libpthread.abilist: Modified.
+
+2025-01-29 gfleury <gfleury@disroot.org>
+
+ COMMIT: 2ebc2d8e24976ae9779d1d78ba8a1ed9b7b1ded7
+ htl: move pthread_mutex_{lock, unlock, trylock, timedlock, clocklock}
+
+ * htl/Makefile: Modified.
+ * htl/Versions: Modified.
+ * htl/forward.c: Modified.
+ (FORWARD): Modified.
+ (FORWARD): Modified.
+ (FORWARD): Remove.
+ (FORWARD): Remove.
+ * htl/pt-initialize.c: Modified.
+ * hurd/hurdlock.c: Modified.
+ (libc_hidden_def): New.
+ (libc_hidden_def): New.
+ (libc_hidden_def): New.
+ (libc_hidden_def): New.
+ (libc_hidden_def): New.
+ * hurd/hurdlock.h: Modified.
+ (libc_hidden_proto): New.
+ (libc_hidden_proto): New.
+ (libc_hidden_proto): New.
+ (libc_hidden_proto): New.
+ (libc_hidden_proto): New.
+ * sysdeps/htl/libc-lockP.h: Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Remove.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Remove.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Remove.
+ * sysdeps/htl/pthread-functions.h: Modified.
+ (__pthread_mutex_lock): Remove.
+ (__pthread_mutex_trylock): Remove.
+ (__pthread_mutex_unlock): Remove.
+ (pthread_functions): Modified.
+ * sysdeps/htl/pthreadP.h: Modified.
+ [IS_IN (libpthread)](hidden_proto): Modified.
+ [IS_IN (libpthread)](hidden_proto): Remove.
+ [IS_IN (libpthread)](hidden_proto): Remove.
+ [IS_IN (libpthread)](hidden_proto): Remove.
+ [IS_IN (libpthread)](hidden_proto): Remove.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (__pthread_mutex_clocklock): New function.
+ (libc_hidden_proto): New.
+ (libc_hidden_proto): New.
+ (libc_hidden_proto): New.
+ (libc_hidden_proto): New.
+ (libc_hidden_proto): New.
+ * sysdeps/htl/timer_routines.c: Modified.
+ (thread_cleanup): Modified function.
+ (thread_expire_timer): Modified function.
+ (thread_func): Modified function.
+ (__timer_mutex_cancel_handler): Modified function.
+ * sysdeps/mach/hurd/htl/pt-mutex-lock.c: Modified.
+ (pthread.h): Remove include.
+ (hidden_def): Remove.
+ (strong_alias): Remove.
+ (weak_alias): Remove.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_21)](compat_symbol): New.
+ (pthreadP.h): Include file.
+ (shlib-compat.h): Include file.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/mach/hurd/htl/pt-mutex-timedlock.c: Modified.
+ (pthread.h): Remove include.
+ (hidden_def): Remove.
+ (pthreadP.h): Include file.
+ (libc_hidden_def): New.
+ (libc_hidden_def): New.
+ * sysdeps/mach/hurd/htl/pt-mutex-trylock.c: Modified.
+ (pthread.h): Remove include.
+ (hidden_def): Remove.
+ (strong_alias): Remove.
+ (weak_alias): Remove.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)](compat_symbol): New.
+ (pthreadP.h): Include file.
+ (shlib-compat.h): Include file.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/mach/hurd/htl/pt-mutex-unlock.c: Modified.
+ (pthread.h): Remove include.
+ (hidden_def): Remove.
+ (strong_alias): Remove.
+ (weak_alias): Remove.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_21)](compat_symbol): New.
+ (pthreadP.h): Include file.
+ (shlib-compat.h): Include file.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/i386/libpthread.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libc.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libpthread.abilist: Modified.
+
+2025-01-29 gfleury <gfleury@disroot.org>
+
+ COMMIT: e892a930736ba8f3c19a47dc0f46fec87da38313
+ htl: move pthread_mutex_init into libc.
+
+ * htl/Makefile: Modified.
+ * htl/Versions: Modified.
+ * htl/forward.c: Modified.
+ (FORWARD): Modified.
+ (FORWARD): Modified.
+ (FORWARD): Modified.
+ (FORWARD): Modified.
+ (FORWARD): Remove.
+ * htl/pt-initialize.c: Modified.
+ * sysdeps/htl/libc-lockP.h: Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Remove.
+ * sysdeps/htl/pthread-functions.h: Modified.
+ (_pthread_mutex_init): Remove.
+ (pthread_functions): Modified.
+ * sysdeps/htl/pthreadP.h: Modified.
+ [IS_IN (libpthread)](hidden_proto): Modified.
+ [IS_IN (libpthread)](hidden_proto): Modified.
+ [IS_IN (libpthread)](hidden_proto): Modified.
+ [IS_IN (libpthread)](hidden_proto): Modified.
+ [IS_IN (libpthread)](hidden_proto): Modified.
+ [IS_IN (libpthread)](hidden_proto): Modified.
+ [IS_IN (libpthread)](hidden_proto): Remove.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): Modified.
+ (libc_hidden_proto): New.
+ * sysdeps/htl/timer_routines.c: Modified.
+ (reinit_after_fork): Modified function.
+ * sysdeps/mach/hurd/htl/pt-mutex-init.c: Modified.
+ (weak_alias): Remove.
+ (hidden_def): Remove.
+ [OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_21)](compat_symbol): New.
+ (shlib-compat.h): Include file.
+ (libc_hidden_def): New.
+ (versioned_symbol): New function.
+ * sysdeps/mach/hurd/i386/libc.abilist: Modified.
+ * sysdeps/mach/hurd/i386/libpthread.abilist: Modified.
+ * sysdeps/mach/hurd/x86_64/libpthread.abilist: Modified.
+
+2025-01-29 gfleury <gfleury@disroot.org>
+
+ COMMIT: 56b25bfd60b736c7e7124b6fdd505a5622531a87
+ htl: remove leftover for pthread_mutexattr_settype
+
+ * sysdeps/htl/libc-lockP.h: Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Modified.
+ [! __NO_WEAK_PTHREAD_ALIASES && !IS_IN (libpthread)][weak_extern](weak_extern): Remove.
+ (__pthread_mutexattr_settype): Remove.
+ * sysdeps/htl/pthreadP.h: Modified.
+ (__pthread_mutexattr_settype): Modified.
+ (__pthread_mutexattr_settype): Remove.
+
+2025-01-28 Joseph Myers <josmyers@redhat.com>
+
+ COMMIT: 203452a460143c2b0bf80e0e92027e0fd6e19fa4
+ Add test of input file flushing / offset issues
+
+ * stdio-common/Makefile: Modified.
+ * stdio-common/tst-read-offset.c: New file.
+
+2025-01-28 Joseph Myers <josmyers@redhat.com>
+
+ COMMIT: 3ff3b9997cfef891ba33a14f1dcba0310d96369c
+ Fix fflush handling for mmap files after ungetc (bug 32535)
+
+ * libio/fileops.c: Modified.
+ (_IO_file_sync_mmap): Modified function.
+ * stdio-common/Makefile: Modified.
+ * stdio-common/tst-fflush-mmap.c: New file.
+
+2025-01-28 Joseph Myers <josmyers@redhat.com>
+
+ COMMIT: 0dcc0b2f63051863187dc678964eb17761b1a820
+ Fix fseek handling for mmap files after ungetc or fflush (bug 32529)
+
+ * libio/fileops.c: Modified.
+ (_IO_file_seekoff_mmap): Modified function.
+ * stdio-common/Makefile: Modified.
+ * stdio-common/tst-fseek-mmap.c: New file.
+
+2025-01-28 Joseph Myers <josmyers@redhat.com>
+
+ COMMIT: 94251ae99edaa911f4cb8056748dca0874ea268c
+ Make fflush (NULL) flush input files (bug 32369)
+
+ * libio/genops.c: Modified.
+ (_IO_flush_all): Modified function.
+ * stdio-common/Makefile: Modified.
+ * stdio-common/tst-fflush-all-input.c: New file.
+
+2025-01-28 Joseph Myers <josmyers@redhat.com>
+
+ COMMIT: be6818be31e756398e45f70e2819d78be0961223
+ Make fclose seek input file to right offset (bug 12724)
+
+ * libio/fileops.c: Modified.
+ (_IO_new_file_close_it): Modified function.
+ * stdio-common/Makefile: Modified.
+ * stdio-common/tst-fclose-offset.c: New file.
+
+2025-01-28 Joseph Myers <josmyers@redhat.com>
+
+ COMMIT: 377e9733b50ce41e496c467ddcc112f73c88f3bd
+ Fix fflush after ungetc on input file (bug 5994)
+
+ * libio/fileops.c: Modified.
+ (_IO_new_file_sync): Modified function.
+ * stdio-common/Makefile: Modified.
+ * stdio-common/tst-ungetc-fflush.c: New file.
+
+2025-01-28 Tulio Magno Quites Machado Filho <tuliom@redhat.com>
+
+ COMMIT: 1515f74fd81035a79861cd9fa12053fa9450ec65
+ libio: Add a new fwrite test that evaluates partial writes
+
+ * stdio-common/Makefile: Modified.
+ * stdio-common/tst-fwrite-pos.c: New file.
+
+2025-01-28 Tulio Magno Quites Machado Filho <tuliom@redhat.com>
+ Florian Weimer <fweimer@redhat.com>
+
+ COMMIT: 596a61cf6b51ce2d58b8ca4e1d1f4fdfe1440dbc
+ libio: Start to return errors when flushing fwrite's buffer [BZ #29459]
+
+ * libio/bits/types/struct_FILE.h: Modified.
+ (_IO_FILE_complete): Modified.
+ * libio/fileops.c: Modified.
+ (_IO_new_file_init_internal): Modified function.
+ (_IO_new_file_write): Modified function.
+ * libio/iofwrite.c: Modified.
+ (_IO_fwrite): Modified function.
+ * stdio-common/Makefile: Modified.
+ * stdio-common/tst-fwrite-bz29459.c: New file.
+ * stdio-common/tst-fwrite-bz29459.sh: New file.
+ * stdio-common/tst-fwrite-pipe.c: New file.
+
+2025-01-28 Martin Coufal <mcoufal@redhat.com>
+
+ COMMIT: 45c42b65c29422b773ac94771aa71165e245f8f8
+ Add new tests for fopen
+
+ * stdio-common/Makefile: Modified.
+ * stdio-common/tst-fopen.c: New file.
+ * sysdeps/pthread/Makefile: Modified.
+ * sysdeps/pthread/tst-fopen-threaded.c: New file.
+
+2025-01-28 Andreas K. Hüttel <dilfridge@gentoo.org>
+
+ COMMIT: 42aba9189557280ad367c35908cbdfe26f5aeeb1
+ Increase version to 2.41.9000, add new section to NEWS
+
+ * NEWS: Modified.
+ * version.h: Modified.
+ (RELEASE): Modified.
+ (VERSION): Modified.
+
diff --git a/INSTALL b/INSTALL
index d3200f2..1fd8d56 100644
--- a/INSTALL
+++ b/INSTALL
@@ -7,8 +7,7 @@ and describes problems you may experience with compilation and
installation.
You will need recent versions of several GNU tools: definitely GCC
-and GNU Make, and possibly others. *Note Tools for Compilation::,
-below.
+and GNU Make, and possibly others. See Tools for Compilation, below.
Configuring and compiling the GNU C Library
===========================================
@@ -213,8 +212,8 @@ passed to 'configure'. For example:
slightly increased program load times.
'--enable-pt_chown'
- The file 'pt_chown' is a helper binary for 'grantpt' (*note
- Pseudo-Terminals: Allocation.) that is installed setuid root to fix
+ The file 'pt_chown' is a helper binary for 'grantpt' (see
+ Pseudo-Terminals: Allocation) that is installed setuid root to fix
up pseudo-terminal ownership on GNU/Hurd. It is not required on
GNU/Linux, and the GNU C Library will not use the installed
'pt_chown' program when configured with '--enable-pt_chown'.
@@ -292,6 +291,14 @@ passed to 'configure'. For example:
Default is to disable fortification.
+'--enable-sframe'
+ Experimental option supported by some architectures, where the GNU
+ C Library is built with '-Wa,--gsframe' if 'binutils' supports it.
+ Currently this is only supported on x86_64 and aarch64. The option
+ enables SFrame support on 'backtrace'.
+
+ Default is to disable SFrame support.
+
To build the library and related programs, type 'make'. This will
produce a lot of output, some of which may look like errors from 'make'
but aren't. Look for error messages from 'make' containing '***'.
@@ -309,10 +316,10 @@ an appropriate numeric parameter to 'make'. You need a recent GNU
To build and run test programs which exercise some of the library
facilities, type 'make check'. If it does not complete successfully, do
not use the built library, and report a bug after verifying that the
-problem is not already known. *Note Reporting Bugs::, for instructions
-on reporting bugs. Note that some of the tests assume they are not
-being run by 'root'. We recommend you compile and test the GNU C
-Library as an unprivileged user.
+problem is not already known. See Reporting Bugs, for instructions on
+reporting bugs. Note that some of the tests assume they are not being
+run by 'root'. We recommend you compile and test the GNU C Library as
+an unprivileged user.
Before reporting bugs make sure there is no problem with your system.
The tests (and later installation) use some pre-existing files of the
@@ -493,7 +500,7 @@ build the GNU C Library:
GCC 12.1 or higher is required. In general it is recommended to
use the newest version of the compiler that is known to work for
building the GNU C Library, as newer compilers usually produce
- better code. As of release time, GCC 14.2.1 is the newest compiler
+ better code. As of release time, GCC 15.1.1 is the newest compiler
verified to work to build the GNU C Library.
For multi-arch support it is recommended to use a GCC which has
@@ -511,20 +518,13 @@ build the GNU C Library:
Check the FAQ for any special compiler issues on particular
platforms.
- * GNU 'binutils' 2.25 or later
+ * GNU 'binutils' 2.39 or later
You must use GNU 'binutils' (as and ld) to build the GNU C Library.
No other assembler or linker has the necessary functionality at the
- moment. As of release time, GNU 'binutils' 2.43.1 is the newest
+ moment. As of release time, GNU 'binutils' 2.45 is the newest
verified to work to build the GNU C Library.
- For PowerPC 64-bits little-endian (powerpc64le), 'objcopy' is
- required to support '--update-section'. This option requires
- binutils 2.26 or newer.
-
- ARC architecture needs 'binutils' 2.32 or higher for TLS related
- fixes.
-
* GNU 'texinfo' 4.7 or later
To correctly translate and install the Texinfo documentation you
@@ -539,7 +539,7 @@ build the GNU C Library:
'awk' is used in several places to generate files. Some 'gawk'
extensions are used, including the 'asorti' function, which was
introduced in version 3.1.2 of 'gawk'. As of release time, 'gawk'
- version 5.3.1 is the newest verified to work to build the GNU C
+ version 5.3.2 is the newest verified to work to build the GNU C
Library.
Testing the GNU C Library requires 'gawk' to be compiled with
@@ -556,7 +556,7 @@ build the GNU C Library:
Perl is not required, but if present it is used in some tests and
the 'mtrace' program, to build the GNU C Library manual. As of
- release time 'perl' version 5.40.0 is the newest verified to work
+ release time 'perl' version 5.42.0 is the newest verified to work
to build the GNU C Library.
* GNU 'sed' 3.02 or newer
@@ -568,7 +568,7 @@ build the GNU C Library:
* Python 3.4 or later
Python is required to build the GNU C Library. As of release time,
- Python 3.12.8 is the newest verified to work for building and
+ Python 3.13.5 is the newest verified to work for building and
testing the GNU C Library.
* PExpect 4.0
@@ -586,7 +586,7 @@ build the GNU C Library:
A missing 'abnf' module does not reduce the test coverage of the
library itself.
- * GDB 7.8 or later with support for Python 2.7/3.4 or later
+ * GDB 7.8 or later with support for Python 3.4 or later
GDB itself needs to be configured with Python support in order to
use the pretty printers. Notice that your system having Python
@@ -608,7 +608,7 @@ and if you change any of the message translation files you will need
* GNU 'gettext' 0.10.36 or later
- As of release time, GNU 'gettext' version 0.23 is the newest
+ As of release time, GNU 'gettext' version 0.23.2 is the newest
version verified to work to build the GNU C Library.
You may also need these packages if you upgrade your source tree using
@@ -682,8 +682,8 @@ Unix C libraries permit things that we don't, such as closing a file
twice.
If you think you have found some way in which the GNU C Library does
-not conform to the ISO and POSIX standards (*note Standards and
-Portability::), that is definitely a bug. Report it!
+not conform to the ISO and POSIX standards (see Standards and
+Portability), that is definitely a bug. Report it!
Once you're sure you've found a bug, try to narrow it down to the
smallest test case that reproduces the problem. In the case of a C
diff --git a/Makeconfig b/Makeconfig
index a2ea4f6..7102d92 100644
--- a/Makeconfig
+++ b/Makeconfig
@@ -639,7 +639,7 @@ link-libc-printers-tests = $(link-libc-rpath) \
# This is how to find at build-time things that will be installed there.
rpath-dirs = math elf dlfcn nss nis rt resolv mathvec support misc debug
rpath-link = \
-$(common-objdir):$(subst $(empty) ,:,$(patsubst ../$(subdir),.,$(rpath-dirs:%=$(common-objpfx)%)))
+$(common-objdir):$(subst $(empty) ,:,$(patsubst ../$(subdir),.,$(rpath-dirs:%=$(common-objpfx)%))):$(gnulib-extralibdir)
else # build-static
link-libc = $(common-objpfx)libc.a $(otherlibs) $(gnulib) $(common-objpfx)libc.a $(gnulib)
link-libc-tests = $(common-objpfx)libc.a $(otherlibs) $(gnulib-tests) $(common-objpfx)libc.a $(gnulib-tests)
@@ -696,6 +696,11 @@ link-libc-static-tests = -Wl,--start-group $(common-objpfx)libc.a $(static-gnuli
# some cases and it is preferable to link with libgcc_eh or libgcc_s
# so that the testing is as similar as possible to how programs will
# be built with the installed glibc.
+# This leads to moderate difficulties, also since distributions may
+# install libgcc_s.so in directories only found via ld.so.conf, e.g.
+# to be able to switch between gcc versions. We need to add the
+# corresponding directory to the library search path to make sure
+# our test programs can find it.
#
# Some architectures have architecture-specific systems for exception
# handling that may involve undefined references to
@@ -713,6 +718,7 @@ libgcc_eh := -Wl,--as-needed -lgcc_s $(libunwind) -Wl,--no-as-needed
gnulib-arch =
gnulib = -lgcc $(gnulib-arch)
gnulib-tests := -lgcc $(libgcc_eh)
+gnulib-extralibdir = $(dir $(shell $(CC) -print-file-name=libgcc_s.so$(libgcc_s.so-version)))
static-gnulib-arch =
# By default, elf/static-stubs.o, instead of -lgcc_eh, is used to
# statically link programs. When --disable-shared is used, we use
@@ -785,10 +791,12 @@ endif
# How to run a program we just linked with our library.
# The program binary is assumed to be $(word 2,$^).
+# We may require additional libraries from gcc (e.g. libgcc_s.so for exception
+# handling), which unfortunately somewhat breaks the isolation.
built-program-file = $(dir $(word 2,$^))$(notdir $(word 2,$^))
rtld-prefix = $(elf-objpfx)$(rtld-installed-name) \
--library-path \
- $(rpath-link)$(patsubst %,:%,$(sysdep-library-path))
+ $(rpath-link)$(patsubst %,:%,$(sysdep-library-path)):$(gnulib-extralibdir)
ifeq (yes,$(build-shared))
comma = ,
sysdep-library-path = \
@@ -896,7 +904,8 @@ endif
ifeq ($(enable-werror),yes)
+gccwarn += -Werror
endif
-+gccwarn-c = -Wstrict-prototypes -Wold-style-definition
++gccwarn-c = -Wstrict-prototypes -Wold-style-definition \
+ $(cc-option-wfree-labels) $(cc-option-wmissing-parameter-name)
# We do not depend on the address of constants in different files to be
# actually different, so allow the compiler to merge them all.
@@ -1021,6 +1030,12 @@ endif
# Filter out 64 bit time_t flags if compiler defines it by default.
+cflags += $(no-time-bits-source)
+# Enable SFrame while compiling for stack backtracing.
+ifeq ($(enable-gsframe),yes)
+as-sframe = -Wa,--gsframe
+endif
++cflags += $(as-sframe)
+
# Each sysdeps directory can contain header files that both will be
# used to compile and will be installed. Each can also contain an
# include/ subdirectory, whose header files will be used to compile
@@ -1169,7 +1184,7 @@ endif
ifndef ASFLAGS
ASFLAGS := $(filter -g% -fdebug-prefix-map=%,$(CFLAGS))
endif
-override ASFLAGS += -Werror=undef $(ASFLAGS-config) $(asflags-cpu)
+override ASFLAGS += -Werror=undef $(ASFLAGS-config) $(asflags-cpu) $(as-sframe)
move-if-change = $(SHELL) $(..)scripts/move-if-change
diff --git a/Makefile b/Makefile
index 97b4328..cb927fb 100644
--- a/Makefile
+++ b/Makefile
@@ -634,6 +634,11 @@ $(objpfx)testroot.pristine/install.stamp :
cp $(objpfx)support/shell-container $(objpfx)testroot.pristine/bin/sh
cp $(objpfx)support/echo-container $(objpfx)testroot.pristine/bin/echo
cp $(objpfx)support/true-container $(objpfx)testroot.pristine/bin/true
+ # We need to be able to load extra language libraries.
+ mkdir -p $(objpfx)testroot.pristine/etc/ld.so.conf.d
+ echo 'include ld.so.conf.d/*.conf' > $(objpfx)testroot.pristine/etc/ld.so.conf
+ echo $(gnulib-extralibdir) >> $(objpfx)testroot.pristine/etc/ld.so.conf
+ echo '# file without content' > $(objpfx)testroot.pristine/etc/ld.so.conf.d/999-empty.conf
ifeq ($(run-built-tests),yes)
# Copy these DSOs first so we can overwrite them with our own.
for dso in `$(test-wrapper-env) LD_TRACE_LOADED_OBJECTS=1 \
diff --git a/Makerules b/Makerules
index cd6c998..7714888 100644
--- a/Makerules
+++ b/Makerules
@@ -1400,7 +1400,7 @@ endif
ifneq (,$(strip $(gpl2lgpl)))
ifneq (,$(wildcard $(..)gpl2lgpl.sed))
-# Snarf from the master source and frob the copying notice.
+# Snarf from the original source and frob the copying notice.
$(gpl2lgpl): %: $(..)gpl2lgpl.sed /home/gd/gnu/lib/%
sed -f $^ > $@-tmp
# So I don't edit them by mistake.
diff --git a/NEWS b/NEWS
index 703f08a..30c2b87 100644
--- a/NEWS
+++ b/NEWS
@@ -5,6 +5,33 @@ See the end for copying conditions.
Please send GNU C library bug reports via <https://sourceware.org/bugzilla/>
using `glibc' in the "product" field.
+Version 2.43
+
+Major new features:
+
+ [Add new features here]
+
+Deprecated and removed features, and other changes affecting compatibility:
+
+ [Add deprecations, removals and changes affecting compatibility here]
+
+Changes to build and runtime requirements:
+
+ [Add changes to build and runtime requirements here]
+
+Security related changes:
+
+The following CVEs were fixed in this release, details of which can be
+found in the advisories directory of the release tarball:
+
+ [The release manager will add the list generated by
+ scripts/process-advisories.sh just before the release.]
+
+The following bugs were resolved with this release:
+
+ [The release manager will add the list generated by
+ scripts/list-fixed-bugs.py just before the release.]
+
Version 2.42
Major new features:
@@ -14,30 +41,188 @@ Major new features:
functions for float, double, long double, _FloatN and _FloatNx, and a
type-generic macro in <tgmath.h>.
- - Power and absolute-value functions: pown, powr, rsqrt.
+ - Power and absolute-value functions: compoundn, pown, powr, rootn,
+ rsqrt.
* On Linux, the pthread_gettid_np function has been added.
+* The ISO C2Y family of unsigned abs functions, i.e. uabs, ulabs,
+ ullabs, and uimaxabs, is now supported.
+
+* On Linux, the <termios.h> interface now supports arbitrary baud rates;
+ speed_t is redefined to simply be the baud rate specified as an
+ unsigned int, which matches the kernel interface.
+
+* The thread-local cache in malloc (tcache) now supports caching of
+ large blocks. This feature can be enabled by setting the tunable
+ glibc.malloc.tcache_max to a larger value (max 4194304). Tcache is
+ also significantly faster for small sizes.
+
+* A new configure option, "--enable-sframe", can be used to enable
+ SFrame support of the GNU C Libraries. SFrame is a new stack trace
+ information format which can be used by backtrace. It requires
+ binutils with a minimum version of 2.45.
+
+* Support for lightweight stack guard pages via madvise and the
+ MADV_GUARD_INSTALL flag has been added to pthread_create.
+
+* Additional optimized and correctly rounded mathematical functions have
+ been imported from the CORE-MATH project, in particular acospif,
+ asinpif, atanpif, atan2pif, cospif, sinpif, tanpif.
+
+* The testsuite has been significantly extended, including coverage of
+ the functionality of the printf and scanf function families in many
+ variants.
+
+* The manual has been significantly extended and updated, particularly
+ the threads, terminal, filesystem, resource, and math chapters.
+
+* Code has been added to detect the x86-64 Intel Arrow Lake, Panther
+ Lake, Clearwater Forest, and Diamond Rapids microarchitectures.
+
+* Regarding S390, support for the new z17 platform has been added.
+
Deprecated and removed features, and other changes affecting compatibility:
- [Add deprecations, removals and changes affecting compatibility here]
+* The glibc.rtld.execstack tunable now supports a compatibility mode to
+ allow programs that require an executable stack through dynamically
+ loaded shared libraries.
+
+* On Linux, the <termio.h> header and the definition of struct termio
+ in <sys/ioctl.h> have been removed. The termio interface has been
+ obsolete since the very first version of POSIX.1 in 1988, replaced
+ with <termios.h>.
+
+* The support for TX lock elision of pthread mutexes has been deprecated
+ on all architectures and will be removed in the next release.
+
+* On AArch64 Linux targets supporting the Scalable Matrix Extension
+ (SME), setjmp and sigsetjmp will disable the ZA state of SME.
Changes to build and runtime requirements:
* GCC 12.1 or later is now required to build the GNU C Library.
+* GNU Binutils 2.39 or later is now required to build the GNU C Library.
+
Security related changes:
The following CVEs were fixed in this release, details of which can be
found in the advisories directory of the release tarball:
- [The release manager will add the list generated by
- scripts/process-advisories.sh just before the release.]
+ GLIBC-SA-2025-0001:
+ assert: Buffer overflow when printing assertion failure message
+ (CVE-2025-0395)
+
+ GLIBC-SA-2025-0003:
+ power10: strcmp fails to save and restore nonvolatile vector
+ registers (CVE-2025-5702)
+
+ GLIBC-SA-2025-0004:
+ power10: strncmp fails to save and restore nonvolatile vector
+ registers (CVE-2025-5745)
+
+ GLIBC-SA-2025-0005:
+ posix: Fix double-free after allocation failure in regcomp
+ (CVE-2025-8058)
The following bugs were resolved with this release:
- [The release manager will add the list generated by
- scripts/list-fixed-bugs.py just before the release.]
+ [5994] stdio: fflush after ungetc on seekable input stream
+ [12724] stdio: fclose violates POSIX 2008 on seekable input streams
+ [25263] dynamic-link: ldd and ld.so fail to resolve $ORIGIN with cross
+ dir symlink
+ [27880] nptl: Please provide a pthread pid accessor
+ [29190] dynamic-link: Symbols with version hash zero lead to crashes,
+ not matched correctly
+ [29459] stdio: fwrite does not return EPIPE when underlying write
+ fails with EPIPE.
+ [31791] nss: [Regression] nss: memory for >8 elements in nsswitch.conf
+ is not freed
+ [32058] libc: qsort leaks memory if C++ exception is thrown from
+ comparison function
+ [32269] dynamic-link: RISC-V IFUNC resolver cannot access gp pointer
+ [32369] stdio: fflush(NULL) doesn't properly flush files opened in
+ read mode
+ [32411] math: THREEp96 seems wrong
+ [32412] dynamic-link: Initial DTV is reallocated using main realloc in
+ auditing mode
+ [32483] locale: ctype.h macros segfault in multithreaded programs with
+ multiple libc.so
+ [32529] stdio: fseek failure on file opened with "rm" mode after
+ ungetc
+ [32535] stdio: fflush failure on file opened with "rm" mode after
+ ungetc
+ [32541] libc: getenv cannot be overridden in static builds
+ [32574] libc: pthread_attr_getstacksize/pthread_attr_getstack return
+ incorrect main stack size
+ [32612] dynamic-link: [aarch64 PAC] _dl_tlsdesc_dynamic can't be
+ unwound through with _Unwind_Backtrace
+ [32626] math: math: log10p1f is not correctly rounded
+ [32627] math: math: sinhf is not correctly rounded
+ [32630] math: math: tanf is not correctly rounded for all rounding
+ modes
+ [32653] dynamic-link: Review options for improving both security and
+ backwards compatibility of glibc 2.41 dlopen / execstack handling
+ [32694] math: wrong clang version 3.4 prereq checks in bits/floatn.h
+ for __float128 support, should be 3.9
+ [32708] libc: Inclusion of sys/mount.h triggers many gcc warnings
+ using -Wshift-overflow=2 -Wsystem-headers
+ [32711] math: math: remainder incorrect sign of zero result
+ [32717] libc: glibc tests fail when bfd is built with --enable-error-
+ execstack=yes
+ [32723] math: [2.41 Regression] /usr/include/bits/floatn.h doesn't
+ work with Intel SYCL compiler
+ [32763] dynamic-link: Static PIE with more than one PT_LOAD segments
+ at offset 0 segfault
+ [32777] crypt: The performance of the rand() function degradation
+ [32781] libc: Inccorect attribute access for sched_getattr
+ [32782] nptl: Race conditions in pthread cancellation causing crash
+ [32786] nptl: pthread_cond_* symbols should probably have had a
+ version bump in 2.41
+ [32795] nptl: aio_suspend_time64 confuses CLOCK_MONOTONIC and
+ CLOCK_REALTIME
+ [32810] dynamic-link: Immediate crash on x86-64 when running with
+ GLIBC_TUNABLES=glibc.cpu.hwcaps=-XSAVEC
+ [32823] libc: make[2]: *** [../Rules:248:
+ /home/dave/gnu/glibc/objdir/elf/tst-origin] Error 1
+ [32897] dynamic-link: pthread_getattr_np fails when executable stack
+ tunable is set
+ [32918] math: math: atanhf triggers UB
+ [32919] math: math: coshf triggers UB
+ [32920] math: math: logf triggers UB
+ [32921] math: math: sinhf triggers UB
+ [32922] math: math: cbrtf triggers UB
+ [32923] math: math: cospif triggers UB
+ [32924] math: math: erfcf triggers UB
+ [32925] math: math: sinpif triggers UB
+ [32932] libc: riscv: __riscv_hwprobe function attributes are incorrect
+ [32947] libc: stdlib: wrong iovec array size on __libc_message_impl
+ [32980] manual: getopt_long_only does not check long options first, as
+ the manual claims
+ [32981] ports: elf/tst-execstack-prog-static-tunable fails on
+ sparc64-linux-gnu
+ [32987] libc: New tst-dlopen-sgid test FAILs
+ [32996] malloc: i386 TLS helper functions don't preserve XMM registers
+ [33035] libc: [2.27 regression] Linux: __close_nocancel_nostatus
+ clobbers errno
+ [33056] string: Power 10 strcmp clobbers nonvolatile vector registers
+ (CVE-2025-5702)
+ [33059] string: Power 10 memchr clobbers v20
+ [33060] string: Power 10 strncmp clobbers nonvolatile vector registers
+ (CVE-2025-5745)
+ [33088] dynamic-link: __ehdr_start may need run-time relocation
+ [33089] build: [2.42 Regression] GCC 14.2.1 failed to build glibc
+ [33134] libc: mcount_internal shouldn't use vector/r16-r31 registers
+ nor call memcpy/memset
+ [33139] stdio: %n after static dlopen is unreliable if file
+ descriptors are exhausted
+ [33165] build: [2.42 Regression] FAIL: elf/check-localplt
+ [33173] math: Wrong IFUNC selector is used for modf/modff
+ [33185] regex: Double-free after memory allocation failure in regcomp
+ bracket expression parsing (CVE-2025-8058)
+ [33224] dynamic-link: _dl_debug_state hook no longer works (since
+ 8329939a37f483a16013dd8af8303cbcb86d92cb)
Version 2.41
diff --git a/Rules b/Rules
index c8adc00..44c041c 100644
--- a/Rules
+++ b/Rules
@@ -152,7 +152,8 @@ tests: $(addprefix $(objpfx),$(filter-out $(tests-unsupported), \
$(tests-mcheck:%=%-mcheck) \
$(tests-malloc-check:%=%-malloc-check) \
$(tests-malloc-hugetlb1:%=%-malloc-hugetlb1) \
- $(tests-malloc-hugetlb2:%=%-malloc-hugetlb2)) \
+ $(tests-malloc-hugetlb2:%=%-malloc-hugetlb2) \
+ $(tests-malloc-largetcache:%=%-malloc-largetcache)) \
$(test-srcs)) $(tests-special) \
$(tests-printers-programs)
xtests: tests $(xtests-special)
@@ -165,6 +166,7 @@ tests: $(tests:%=$(objpfx)%.out) $(tests-internal:%=$(objpfx)%.out) \
$(tests-malloc-check:%=$(objpfx)%-malloc-check.out) \
$(tests-malloc-hugetlb1:%=$(objpfx)%-malloc-hugetlb1.out) \
$(tests-malloc-hugetlb2:%=$(objpfx)%-malloc-hugetlb2.out) \
+ $(tests-malloc-largetcache:%=$(objpfx)%-malloc-largetcache.out) \
$(tests-special) $(tests-printers-out)
xtests: tests $(xtests:%=$(objpfx)%.out) $(xtests-special)
endif # $(run-built-tests) != no
@@ -179,6 +181,7 @@ tests-expected = $(tests) $(tests-internal) $(tests-printers) \
$(tests-container) $(tests-malloc-check:%=%-malloc-check) \
$(tests-malloc-hugetlb1:%=%-malloc-hugetlb1) \
$(tests-malloc-hugetlb2:%=%-malloc-hugetlb2) \
+ $(tests-malloc-largetcache:%=%-malloc-largetcache) \
$(tests-mcheck:%=%-mcheck)
xtests-expected = $(xtests)
endif # $(run-built-tests) != no
@@ -211,6 +214,7 @@ binaries-mcheck-tests = $(tests-mcheck:%=%-mcheck)
binaries-malloc-check-tests = $(tests-malloc-check:%=%-malloc-check)
binaries-malloc-hugetlb1-tests = $(tests-malloc-hugetlb1:%=%-malloc-hugetlb1)
binaries-malloc-hugetlb2-tests = $(tests-malloc-hugetlb2:%=%-malloc-hugetlb2)
+binaries-malloc-largetcache-tests = $(tests-malloc-largetcache:%=%-malloc-largetcache)
else
binaries-all-notests =
binaries-all-tests = $(tests) $(tests-internal) $(xtests) $(test-srcs)
@@ -224,6 +228,7 @@ binaries-mcheck-tests =
binaries-malloc-check-tests =
binaries-malloc-hugetlb1-tests =
binaries-malloc-hugetlb2-tests =
+binaries-malloc-largetcache-tests =
endif
binaries-pie = $(binaries-pie-tests) $(binaries-pie-notests)
@@ -241,7 +246,7 @@ $(addprefix $(objpfx),$(binaries-shared-notests)): %: %.o \
endif
ifneq "$(strip $(binaries-shared-tests))" ""
-$(addprefix $(objpfx),$(binaries-shared-tests)): %: %.o \
+$(addprefix $(objpfx),$(sort $(binaries-shared-tests))): %: %.o \
$(link-extra-libs-tests) \
$(sort $(filter $(common-objpfx)lib%,$(link-libc))) \
$(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit)
@@ -290,6 +295,14 @@ $(addprefix $(objpfx),$(binaries-malloc-hugetlb2-tests)): %-malloc-hugetlb2: %.o
$(+link-tests)
endif
+ifneq "$(strip $(binaries-malloc-largetcache-tests))" ""
+$(addprefix $(objpfx),$(binaries-malloc-largetcache-tests)): %-malloc-largetcache: %.o \
+ $(link-extra-libs-tests) \
+ $(sort $(filter $(common-objpfx)lib%,$(link-libc))) \
+ $(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit)
+ $(+link-tests)
+endif
+
ifneq "$(strip $(binaries-pie-tests))" ""
$(addprefix $(objpfx),$(binaries-pie-tests)): %: %.o \
$(link-extra-libs-tests) \
@@ -339,6 +352,12 @@ $(1)-malloc-hugetlb2-ENV += GLIBC_TUNABLES=glibc.malloc.hugetlb=2
endef
$(foreach t,$(tests-malloc-hugetlb2),$(eval $(call malloc-hugetlb2-ENVS,$(t))))
+# All malloc-largetcache tests will be run with GLIBC_TUNABLE=glibc.malloc.tcache_max=1048576
+define malloc-largetcache-ENVS
+$(1)-malloc-largetcache-ENV += GLIBC_TUNABLES=glibc.malloc.tcache_max=1048576
+endef
+$(foreach t,$(tests-malloc-largetcache),$(eval $(call malloc-largetcache-ENVS,$(t))))
+
# mcheck tests need the debug DSO to support -lmcheck.
define mcheck-ENVS
$(1)-mcheck-ENV = LD_PRELOAD=$(common-objpfx)/malloc/libc_malloc_debug.so
diff --git a/aclocal.m4 b/aclocal.m4
index e06366c..2180142 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -145,6 +145,10 @@ if test -z "$NM"; then
NM=`$CC -print-prog-name=nm`
fi
AC_SUBST(NM)
+if test -z "$STRIP"; then
+ STRIP=`$CC -print-prog-name=strip`
+fi
+AC_SUBST(STRIP)
])
dnl Run a static link test with -nostdlib -nostartfiles.
diff --git a/advisories/GLIBC-SA-2025-0002 b/advisories/GLIBC-SA-2025-0002
new file mode 100644
index 0000000..161da13
--- /dev/null
+++ b/advisories/GLIBC-SA-2025-0002
@@ -0,0 +1,23 @@
+elf: static setuid binary dlopen may incorrectly search LD_LIBRARY_PATH
+
+A statically linked setuid binary that calls dlopen (including internal
+dlopen calls after setlocale or calls to NSS functions such as getaddrinfo)
+may incorrectly search LD_LIBRARY_PATH to determine which library to load,
+leading to the execution of library code that is attacker controlled.
+
+The only viable vector for exploitation of this bug is local, if a static
+setuid program exists, and that program calls dlopen, then it may search
+LD_LIBRARY_PATH to locate the SONAME to load. No such program has been
+discovered at the time of publishing this advisory, but the presence of
+custom setuid programs, although strongly discouraged as a security
+practice, cannot be discounted.
+
+CVE-Id: CVE-2025-4802
+Public-Date: 2025-05-16
+Vulnerable-Commit: 10e93d968716ab82931d593bada121c17c0a4b93 (2.27)
+Fix-Commit: 5451fa962cd0a90a0e2ec1d8910a559ace02bba0 (2.39)
+Fix-Commit: 3be3728df2f1912c80abd3288bc6e3a25ad679e4 (2.38-132)
+Fix-Commit: 7403ede2d7752e59e0c47d5d33d73c2bf850e7be (2.37-154)
+Fix-Commit: 2ef7850279b2931caf6d6d6743ebaa91839e1cf7 (2.36-227)
+Fix-Commit: 621c65ccf12ddd415ceeb2234423bd1acd0fabb3 (2.35-387)
+Fix-Commit: 35018c0fd20eac9ceaf60060fed2745b3177359d (2.34-517)
diff --git a/advisories/GLIBC-SA-2025-0003 b/advisories/GLIBC-SA-2025-0003
new file mode 100644
index 0000000..2adeb3c
--- /dev/null
+++ b/advisories/GLIBC-SA-2025-0003
@@ -0,0 +1,30 @@
+power10: strcmp fails to save and restore nonvolatile vector registers
+
+The Power 10 implementation of strcmp in
+sysdeps/powerpc/powerpc64/le/power10/strcmp.S failed to save/restore
+nonvolatile vector registers in the 32-byte aligned loop path. This
+results in callers reading content from those registers in a different
+context, potentially altering program logic.
+
+There could be a program context where a user controlled string could
+leak through strcmp into program code, thus altering its logic. There
+is also a potential for sensitive strings passed into strcmp leaking
+through the clobbered registers into parts of the calling program that
+should otherwise not have had access to those strings.
+
+The impact of this flaw is limited to applications running on Power 10
+hardware that use the nonvolatile vector registers, i.e. v20 to v31
+assuming that they have been treated in accordance with the OpenPower
+psABI. It is possible to work around the issue for those specific
+applications by setting the glibc.cpu.hwcaps tunable to "-arch_3_1" like
+so:
+
+ export GLIBC_TUNABLES=glibc.cpu.hwcaps=-arch_3_1
+
+CVE-Id: CVE-2025-5702
+Public-Date: 2025-06-04
+Vulnerable-Commit: 3367d8e180848030d1646f088759f02b8dfe0d6f (2.39)
+Fix-Commit: 15808c77b35319e67ee0dc8f984a9a1a434701bc (2.42)
+Fix-Commit: 0c76c951620f9e12df2a89b2c684878b55bb6795 (2.41-60)
+Fix-Commit: 7e12550b8e3a11764a4a9090ce6bd3fc23fc8a8e (2.40-139)
+Fix-Commit: 06a70769fd0b2e1f2a3085ad50ab620282bd77b3 (2.39-209)
diff --git a/advisories/GLIBC-SA-2025-0004 b/advisories/GLIBC-SA-2025-0004
new file mode 100644
index 0000000..9409ca2
--- /dev/null
+++ b/advisories/GLIBC-SA-2025-0004
@@ -0,0 +1,29 @@
+power10: strncmp fails to save and restore nonvolatile vector registers
+
+The Power 10 implementation of strncmp in
+sysdeps/powerpc/powerpc64/le/power10/strncmp.S failed to save/restore
+nonvolatile vector registers in the 32-byte aligned loop path. This
+results in callers reading content from those registers in a different
+context, potentially altering program logic.
+
+There could be a program context where a user controlled string could
+leak through strncmp into program code, thus altering its logic. There
+is also a potential for sensitive strings passed into strncmp leaking
+through the clobbered registers into parts of the calling program that
+should otherwise not have had access to those strings.
+
+The impact of this flaw is limited to applications running on Power 10
+hardware that use the nonvolatile vector registers, i.e. v20 to v31
+assuming that they have been treated in accordance with the OpenPower
+psABI. It is possible to work around the issue for those specific
+applications by setting the glibc.cpu.hwcaps tunable to "-arch_3_1" like
+so:
+
+ export GLIBC_TUNABLES=glibc.cpu.hwcaps=-arch_3_1
+
+CVE-Id: CVE-2025-5745
+Public-Date: 2025-06-05
+Vulnerable-Commit: 23f0d81608d0ca6379894ef81670cf30af7fd081 (2.40)
+Fix-Commit: 63c60101ce7c5eac42be90f698ba02099b41b965 (2.42)
+Fix-Commit: 84bdbf8a6f2fdafd3661489dbb7f79835a52da82 (2.41-57)
+Fix-Commit: 42a5a940c974d02540c8da26d6374c744d148cb9 (2.40-136)
diff --git a/advisories/GLIBC-SA-2025-0005 b/advisories/GLIBC-SA-2025-0005
new file mode 100644
index 0000000..8bcccc5
--- /dev/null
+++ b/advisories/GLIBC-SA-2025-0005
@@ -0,0 +1,14 @@
+posix: Fix double-free after allocation failure in regcomp
+
+The regcomp function in the GNU C library version from 2.4 to 2.41 is
+subject to a double free if some previous allocation fails. It can be
+accomplished either by a malloc failure or by using an interposed
+malloc that injects random malloc failures. The double free can allow
+buffer manipulation depending of how the regex is constructed.
+This issue affects all architectures and ABIs supported by the GNU C
+library.
+
+CVE-Id: CVE-2025-8058
+Public-Date: 2025-07-22
+Vulnerable-Commit: 963d8d782fc98fb6dc3a66f0068795f9920c269d (2.3.3-1596)
+Fix-Commit: 7ea06e994093fa0bcca0d0ee2c1db271d8d7885d (2.42)
diff --git a/argp/argp-parse.c b/argp/argp-parse.c
index 82c7b78..99f8d9e 100644
--- a/argp/argp-parse.c
+++ b/argp/argp-parse.c
@@ -735,12 +735,15 @@ parser_parse_opt (struct parser *parser, int opt, char *val)
}
}
else
- /* A long option. We use shifts instead of masking for extracting
- the user value in order to preserve the sign. */
- err =
- group_parse (&parser->groups[group_key - 1], &parser->state,
- (opt << GROUP_BITS) >> GROUP_BITS,
- parser->opt_data.optarg);
+ /* A long option. Preserve the sign in the user key, without
+ invoking undefined behavior. Assume two's complement. */
+ {
+ int user_key =
+ ((opt & (1 << (USER_BITS - 1))) ? ~USER_MASK : 0) | (opt & USER_MASK);
+ err =
+ group_parse (&parser->groups[group_key - 1], &parser->state,
+ user_key, parser->opt_data.optarg);
+ }
if (err == EBADKEY)
/* At least currently, an option not recognized is an error in the
diff --git a/benchtests/Makefile b/benchtests/Makefile
index cccee62..53f84bf 100644
--- a/benchtests/Makefile
+++ b/benchtests/Makefile
@@ -63,10 +63,12 @@ bench-math := \
exp2f \
exp2m1f \
expf \
+ expl \
expm1 \
expm1f \
floor \
floorf \
+ fmal \
fmax \
fmaxf \
fmin \
@@ -94,6 +96,7 @@ bench-math := \
log1pf \
log2 \
log2f \
+ log2l \
log2p1f \
logb \
logbf \
@@ -101,10 +104,12 @@ bench-math := \
lrint \
lrintf \
modf \
+ modff \
nearbyint \
nearbyintf \
pow \
powf \
+ powl \
rint \
rintf \
roundeven \
@@ -155,6 +160,11 @@ bench-pthread := \
thread_create \
# bench-pthread
+bench-resolv := \
+ inet_ntop_ipv4 \
+ inet_ntop_ipv6 \
+ # bench-resolv
+
LDLIBS-bench-pthread-mutex-lock += -lm
LDLIBS-bench-pthread-mutex-trylock += -lm
LDLIBS-bench-pthread-spin-lock += -lm
@@ -328,8 +338,10 @@ CFLAGS-bench-isfinite.c += $(config-cflags-signaling-nans)
ifeq (${BENCHSET},)
bench-malloc := \
calloc-simple \
+ calloc-tcache \
calloc-thread \
malloc-simple \
+ malloc-tcache \
malloc-thread \
# bench-malloc
else
@@ -412,6 +424,7 @@ ifeq (${BENCHSET},)
bench := \
$(bench-math) \
$(bench-pthread) \
+ $(bench-resolv) \
$(bench-string) \
# bench
else
@@ -450,11 +463,14 @@ ifneq ($(strip ${BENCHSET}),)
VALIDBENCHSETNAMES := \
bench-math \
bench-pthread \
+ bench-resolv \
bench-string \
calloc-simple \
+ calloc-tcache \
calloc-thread \
hash-benchset \
malloc-simple \
+ malloc-tcache \
malloc-thread \
math-benchset \
stdio-benchset \
@@ -493,11 +509,16 @@ bench-set: $(binaries-benchset)
bench-malloc: $(binaries-bench-malloc)
for run in $^; do \
echo "$${run}"; \
- if [[ `basename $${run}` =~ bench-[cm]alloc-thread ]]; then \
+ if basename $${run} | grep -q "bench-[cm]alloc-thread"; then \
for thr in 1 8 16 32; do \
echo "Running $${run} $${thr}"; \
$(run-bench) $${thr} > $${run}-$${thr}.out; \
done;\
+ elif basename $${run} | grep -q "bench-[cm]alloc-tcache"; then \
+ for thr in 64 512 1024; do \
+ echo "Running $${run} $${thr}"; \
+ $(run-bench) $${thr} > $${run}-$${thr}.out; \
+ done;\
else \
for thr in 8 16 32 64 128 256 512 1024 2048 4096; do \
echo "Running $${run} $${thr}"; \
diff --git a/benchtests/atan2-inputs b/benchtests/atan2-inputs
index 41f9ebd..03d7bf6 100644
--- a/benchtests/atan2-inputs
+++ b/benchtests/atan2-inputs
@@ -1,1005 +1,1004 @@
## args: double:double
## ret: double
## includes: math.h
-# Random inputs y*2^f, x*2^e where x,y are random in [1/2,1]
-# and e,f are random in [-1073,1024]
-0xf.e64ade01a4bcp-112, 0x1.51e7f10afb4d8p+292
-0x1.eb1594e8f1c6ap+348, 0x3.f3ad0d8215544p+112
-0x1.088f870ee691ap+280, 0x2.cfaffd3a44354p+900
-0x1.958092dd184ap-196, 0x1.2d547e5e0d0a9p+412
-0xe.dee18e7a8b8ep-848, 0x1.765fff587d5f3p-1024
-0x7.5224020da9c5p+768, 0x2.1e01c025eaf62p+212
-0x7.5da25daeca808p+400, 0x1.248a2a8873f16p+276
-0x9.b96d1dba2d8dp+628, 0x3.4262411da747cp+876
-0x3.8dcdb12e8f006p-520, 0x7.ca40e5d987398p+44
-0x1.9ee50c39f32d1p-48, 0x5.1e4326c496ad4p-204
-0x1.be04f86130756p+180, 0x2.d457c98518efp+308
-0x7.2e751bf2b8fccp+876, 0x1.12169563f86d4p+968
-0x3.26da26f2e0f7ap+596, 0x1.b5fa5c347616ap-28
-0x3.5c8cf5fa36fd8p-320, 0x1.909d3b62e5cfap-596
-0x3.8da67c7c8e46p-396, 0x1.e3c256ec4e494p-132
-0xa.8bbfd4f4ed25p-100, 0x1.7c770ae7b8856p+88
-0xf.d001af3a9085p-108, 0x2.f58c9c0b64848p+776
-0x1.9628542428016p-920, 0x1.25c4f0f55ca49p+124
-0x2.af8a460766408p-996, 0x5.f43a3724bae98p+824
-0x2.8b2e9d0564734p+952, 0x5.595a4250d1c2cp+140
-0x6.953df8526b648p+448, 0x6.cd4712d97a2c4p-772
-0x3.144607cac8e44p-396, 0x1.f7968b8c31942p+376
-0xd.d17dd2506e198p-128, 0x4.5029c933ee4cp-1040
-0x6.dc60eb08e7758p+260, 0x5.f8accf3e52e2cp+812
-0x4.849555e2ca9e8p+776, 0xd.98371e7122e5p+688
-0x2.2bee8b9b42bacp+112, 0xc.597cc8159771p-192
-0x6.26c71bdfbf598p+828, 0x3.c8e253c4556b8p+756
-0xc.43564b360047p+296, 0x1.036f7af72ab25p+372
-0x5.fab523d53372p-952, 0x7.196ba059143b8p-44
-0x4.dc658c0eaa674p-416, 0x1.02b8af8ce8482p+1016
-0x2.43bfd5633b1bcp-208, 0x3.660ae6406fb5ep+476
-0x8.65f073c6979f8p-176, 0x1.3a08958c564cdp+348
-0x1.c998958142e68p+880, 0x1.7ec64b4f45cccp+716
-0xa.f5949874c1dp+56, 0x1.a363b4e2f472ap-52
-0x3.b03271a1c01e4p-304, 0x3.0fa7e7ef6ceccp-116
-0x2.a5a5d6695d63cp+152, 0x1.b66a73c2ea728p+64
-0x5.1d4bb47746748p-504, 0xe.ec21bf413a2fp-812
-0x5.c648ea0d96674p-100, 0x1.6ddfb8431aa8cp-680
-0x7.4bc1dd3401be8p+876, 0x1.38acc8fe3787ap+12
-0x3.585e233258274p+52, 0x2.a2aeee2fc0ebp+96
-0x5.db94503dfb874p-720, 0x2.abf5b9fa1bf3cp+368
-0x5.0f3b462ee21p-788, 0x1.69ecfd91fb9d2p-456
-0x1.75710a89f8007p-164, 0x5.9c18df3380e08p-580
-0x1.f5dbb94358d72p-868, 0x1.e053f1c2f68c6p+364
-0xd.012531065743p-584, 0x6.a70dd5b92b9a8p+968
-0xd.4fe53c5e934bp-868, 0x4.7dd5de2eb4ep-640
-0x6.5cc6284cac46cp+832, 0x9.164da0139c63p+200
-0x1.51fd1c202e5fp-952, 0x1.29cf107bc7d2ap-976
-0x3.f18c72435d034p+812, 0xe.b02c11048e05p+332
-0x3.577fc1909cf74p+324, 0x2.054b57128cc2ap+984
-0x3.720e627078e0cp+280, 0x5.40dfc61849aep-1056
-0xe.b263e62d00a9p-756, 0x7.a57cbabc1ea7cp+244
-0x3.24274890bcbeep-224, 0x1.6c35ac17f3958p-856
-0xf.412008621829p-700, 0x3.874d8524e05dap+340
-0x2.fcc56e0b04048p+824, 0x6.84f3042f4438p+824
-0x5.c66cdf1e9d3cp-304, 0x8.d61ca0f7a30ap-1072
-0x7.1af1640f99754p+544, 0x4.ed53dab8f77ep+184
-0x4.6b431d7fd9c8p+408, 0xb.06f5f247f22ep-136
-0x1.e0aef53445013p-708, 0x9.8403722b764ep+944
-0x6.c2e473092a8f4p-468, 0x3.9f2f924a40fa8p-936
-0x1.7a000b5ff424cp+964, 0x7.c19e0cb3b0fa8p-188
-0x3.a29126cdc15acp-656, 0x1.7c80fc7dead3ep-912
-0x2.407aba3dff534p+236, 0x1.95f8a02c6a09p-252
-0x3.d8337d0c49ae4p+592, 0x1.c7c69edd549dp-200
-0x1.5334a822bc6ecp-628, 0x9.c4c4cdd162cb8p-352
-0x2.be0f104d85c38p-784, 0xe.f22b29fade1dp-700
-0x2.4ae91c1683368p+152, 0x6.a3ff0e0190f1p+148
-0xf.b137e644b7efp+340, 0x6.1fe4fb548eb18p+288
-0x5.d09faad0d26a8p-604, 0x5.2bfd22bf079e8p-16
-0x1.2da12571a266cp-920, 0x1.238d5bb74cd41p+36
-0x6.7901c11c2a958p+532, 0x4.6ed8643b29818p+140
-0x6.3f3764382c69p-1008, 0x6.7d1a0c7cff718p-196
-0x2.432012c11cb9cp-956, 0x3.62e1b870dfe68p+828
-0x1.5a75dd3d46b3ap-52, 0xb.20bc6cca08dd8p-52
-0x1.039c817b1e754p+900, 0x4.8af2e9bb880f4p-36
-0x3.374cfdd0d958cp+48, 0x8.cffad14f7d49p+808
-0x8.45a78fae8395p+8, 0x3.ff2a6d61de1a8p+776
-0x2.0dfcbf647488cp-48, 0x3.a4f0a7f53eb4ap-448
-0x6.5f603cd9c086p-484, 0x8.974457ae13b5p+124
-0x1.c44c73ea4d6d4p+764, 0x1.f365d6441732ap-164
-0x1.21b7c518c8cdep+548, 0x1.c527626b4003p-448
-0xd.3f70caa95124p-792, 0x2.5e617f4ee6c9cp+756
-0x3.38a11f34a53fp+984, 0x7.ac733cfc91c8p+120
-0x2.99b3647427724p-864, 0x1.7eef87419ab23p+976
-0x2.f8ba052e65924p+696, 0x7.483c41c523fp-188
-0x3.b1fca129f69cep+1000, 0x2.1e5e1cfe0324cp-720
-0x7.35c7cd0cdc05p+768, 0x1.6ca14e5eb8bccp+792
-0x2.bef21fb88019cp+280, 0x1.165bc4808772p+88
-0x4.3d52323287198p-92, 0x3.3b8e4099d5c78p-88
-0x3.af22fa9209678p-180, 0x6.62eeca19fc4fp-436
-0xd.a4eef5515ca4p-468, 0x4.c987328716c48p+468
-0x4.c9d2db543e798p-920, 0x1.25bdec8404d2ep+796
-0x1.8cc4d2e56579bp+192, 0x1.34066c6510e9p-8
-0x7.35d2d66efc668p+4, 0x2.53a9a66eff12ep-1040
-0x2.6fe1dea6f4018p+932, 0x8.b010ae35b2028p+624
-0x2.be12b601aeec8p+348, 0x1.d0fb6f0c984d1p+432
-0x7.1794afc2cbc2cp-408, 0x8.e88a0fa60941p-648
-0x2.639a4bdf9e574p-592, 0x6.39b1fdc44737p+800
-0xc.d4e937c6c08ep-648, 0xa.6eb04d5850468p-952
-0x1.a200f30f09d36p+896, 0x1.af0bb6b837ccfp-648
-0x4.678eb15984c48p+260, 0xb.59619a546942p-460
-0xe.33e689cd0b64p+568, 0x1.5adf9a4ec17a6p-4
-0x1.609d1d930e30ap-712, 0x6.637609c9a499p+428
-0x2.bf7627d27029p+388, 0xe.a57e83b2fdd5p-108
-0x6.8fdecbbe2ecfp-32, 0x5.0b980a7d45cd8p+740
-0x1.9dd0e698d2f82p-1036, 0x1.b4f7bf3e0cfbdp-232
-0x3.d8db3fe25738p+872, 0xc.16538658b3828p-456
-0x1.79fe74de9bae2p-328, 0x2.31290e2e4fdf4p-228
-0x1.2d49573a18bfep-620, 0x6.e737ee350c30cp-868
-0xb.8b16ca316ca2p-688, 0x1.fd7b162f797c2p+956
-0x4.95db373e83578p-4, 0x2.3df574c0b2bf4p+480
-0x6.1e877a5c4a614p-52, 0xe.06ff7b7b9278p+236
-0x3.63120428fc99p-476, 0x4.f533a0d338248p-524
-0x5.2ef37c2a778dp+304, 0x5.4e0c2932acc8p+852
-0x3.ae29fff71a16p-808, 0x7.989da49d834ecp+420
-0x1.ed5bc3bb667abp-344, 0xc.4c773260b9388p-184
-0xe.2682c59cd715p+824, 0x6.b53ad7e54e0f8p-580
-0x1.6140c28ad9384p-960, 0x1.e606defb78483p-436
-0xd.5f7e9a8665dp-816, 0x1.4cf53d17f6036p-956
-0x7.36ddffad116dp+260, 0x1.d760f2e156bcfp-852
-0xa.dae175b9dcd78p-784, 0x3.90571ff2f954ep-212
-0xf.c3f98a4f749p-860, 0x3.2c8f867af2dap-864
-0x5.5ff55c4d6381p+144, 0x4.5e7adaf849388p-712
-0xc.b85fe56ea69bp-1044, 0x1.360ca2a17c7e2p-284
-0x7.cd8138381e5ep-412, 0xc.c0096f131357p+484
-0x1.00724b00a26fp-916, 0x5.61fc1314cf7a8p+904
-0x7.3d5d197d0ad5p-524, 0x2.f117316899242p+784
-0xa.e54baa694256p+12, 0x9.0166c5bb0997p+596
-0x8.c8f199c549bap+428, 0xe.e6f4971a1ffe8p-116
-0xe.1911c56cd424p-268, 0xb.636d0fa48fb1p+48
-0x1.3ee4f286b9eabp+448, 0xc.9bb2d4c3107dp+848
-0x1.b9d7a664f0c9bp+524, 0x1.6fd48d906368p+708
-0x1.700a831dc5ccap+180, 0x3.570f9aaec7ddcp+320
-0xb.0e5628310cf8p+644, 0x1.ded813d67a59p+88
-0x1.9b66c7d4f997fp-324, 0xd.ac6bae2d9808p-252
-0x1.e5e0b226372bep-924, 0xc.fdc2de9d45e8p-404
-0xf.ec2648722fcdp-168, 0x3.f3512227dc024p-868
-0x4.4a1604ed62e2cp-1024, 0x1.e64565681e8ecp-400
-0x2.918b7f1b43478p-856, 0x9.cf5a57ee25b9p-964
-0x1.928f8281663b5p+732, 0x3.8c37b9f2b9c44p-68
-0x1.47d022447d0d9p-212, 0x7.3003d07b98becp+336
-0x1.7478127c022bep+108, 0xe.db203d98e5b4p+956
-0x3.e215aa8a7081cp-792, 0x6.b88e76c4439p-472
-0xf.a75abb96d5378p-1060, 0x4.3f8f0317952ecp-472
-0x1.54aa777eb8cacp-172, 0x2.f7c43f0883afap-804
-0xc.278a41202728p-372, 0x3.bb6e98051a084p-788
-0x3.81aca23dac714p+780, 0x1.a901ac7572b76p-844
-0x3.7e57612ade912p+616, 0x1.96dca3bd63e4p+476
-0x7.0104a5d4969e4p-780, 0x6.55a4b56d20f34p-1052
-0x1.978a2a42b7a1p+816, 0x2.da4f604068c8p-868
-0x7.3c8bf43147cbcp-476, 0x4.2fa5efe2658dp+788
-0x5.a2a48df0c9a9cp-964, 0xc.be9c4e4835ap-220
-0x1.e760064ea6764p+208, 0x4.5470c47ab193cp+648
-0x5.bade57403303p-560, 0x7.586deffa315d8p+612
-0x1.b092c08816f3ap+76, 0xc.eeadbebbb8aep+880
-0xd.c474e046fc9bp-776, 0x7.e9aab9320d518p-784
-0xc.d6345ea415ebp-632, 0x3.9b43f679ce1fcp-744
-0x4.e2270e454804p+668, 0x1.732bb96673a3p+552
-0x3.a2b01ec82b18cp-940, 0x9.7946d49a7efep-792
-0x8.588c53fb075p-380, 0xd.f2a013fb82768p+932
-0x7.843c28b11b0dcp+608, 0x2.c1415855cc2b4p-740
-0x5.f576ab5c5d068p-132, 0x9.3d4ad13e5adf8p-892
-0x3.5a259e389097p-768, 0x1.ce12bfcb61592p+552
-0xc.08cce6344882p-396, 0x2.b0aa1def16b84p-284
-0xf.849eed4bd969p-104, 0xc.f1ff6a1e30f3p+656
-0x3.60cf6872405dp+216, 0xe.916cb1a07e21p+488
-0x8.afa0246884d7p-4, 0x2.aa9026cb11502p-1068
-0x5.8459722493b6cp+364, 0x1.9a4a1881cff3p+828
-0x8.d1fea3e3ec8ep-1064, 0x2.a6ea369fc5a04p+896
-0x5.98b34bed20424p-224, 0xc.b4bef5e2dd3ap-660
-0x6.82e6415d201b8p+488, 0x5.0845350b3ef2cp+312
-0x4.02185391eac34p-780, 0x2.3f260ffa0a38p+12
-0xa.3a2ab72455728p-732, 0x1.ac457643819eap-868
-0x1.1e452f0447ccap-1052, 0x1.82814a5d9d79p-152
-0xb.c06d651760dcp+716, 0x6.c352ff76dacap-232
-0xe.b168b1855a5dp+196, 0x1.33ae7942d28b4p+176
-0x5.d5d69f9a0b7dp-212, 0x3.3495e0864b17cp+736
-0xc.3f0567b829c1p+376, 0x8.c590999b3ceep-296
-0x1.f6fc01e1050e2p+712, 0xc.0c2125131f4cp-476
-0x1.897bce0913784p-400, 0x1.c5ef4d3868c5ap-16
-0x1.59dab541131eap-536, 0x7.819776061a66cp-876
-0x3.f25dc36b6237ep+420, 0x2.1185326bc2f7cp+648
-0x3.e661c67fc9d14p+632, 0x1.cd220c0d8c697p-544
-0x2.9b2ea8ec0335ep+204, 0x3.96cef7c99ed6cp+736
-0x3.a5b56029ca106p+720, 0x5.0ddbd8c34bb38p+732
-0x1.bd0b04b0d5ffp+768, 0x2.acb086485c0acp+228
-0x1.253ebc6eca2f1p-328, 0x5.28a35c4d7273p+216
-0x1.c7ea9d9e6d606p+216, 0xf.9c8b53d0cabp+268
-0x2.7da9dc9e7f3f4p+380, 0x2.2c94bd9739264p+100
-0x1.42fbbef780b89p-208, 0x1.162f54ac2c616p-1052
-0x1.8c75f21ff63d4p+196, 0xa.8efb1f73da5ap-772
-0x5.3c267ea019b2p-1068, 0x3.48cfb105670fp-824
-0x2.b4145495175c8p+128, 0x5.48614324aad44p-340
-0x6.233f74ee5efc8p+624, 0x1.914e55cce282bp-636
-0x1.4acb38cb1a918p+324, 0x1.f9e9ede35d216p-680
-0x1.cfe994bda3f56p-952, 0x2.6b1c92872537cp+872
-0x2.66d4aba59fa24p-800, 0x1.8019acfcda12bp-436
-0x2.5199427fa20a4p-32, 0x1.fd96bbfc3f9fcp-468
-0x4.e655d3343f5e8p+56, 0x1.3f492e7cd0dfap-80
-0x5.d9a335474947p+548, 0x9.ac1d614150b18p-988
-0x5.b2451c618e62p-68, 0x2.9c3deca394cdcp+696
-0x3.7dac74e990246p-768, 0x1.5dfc6042b1b8cp+572
-0x1.ccb45ef84dc6p-76, 0x1.273b361c6d5b3p-220
-0x1.5e2613f706d82p+260, 0x3.9064078ea96d8p+16
-0x1.46ea9a76a8cbep+252, 0x2.84ac448cf3e7cp+1008
-0x6.a67693dbd8f78p-956, 0x8.0025c257d52p-924
-0x1.e0fe63888157p+884, 0x9.2ae8309feaeap+1016
-0x2.5b9c6a88ca5ecp-156, 0x3.3ae1d36734fbp-28
-0x9.8facae4bc3f1p+32, 0x1.9e88ee1f6597ap+240
-0xb.c53a4f6348bc8p+124, 0x7.8af8454f9f79p-996
-0x2.3c91ecfbfe8p-140, 0x1.7f7978441c1dep+676
-0xc.4c86fd4536f28p+1000, 0x1.0855cb68a6e14p+828
-0x1.b0de303b74bep+416, 0x1.569a02a128dbap-628
-0x5.8e3754c745bb4p+196, 0x1.1719ac573d318p-120
-0x4.4472680edad9p-212, 0xe.e7a8b9fd1a6cp+816
-0x3.b9c681dcb8abp-532, 0x1.88f9d054fec01p-56
-0x1.d88ba612f7fb7p+92, 0x9.719683b165228p-488
-0x3.417187152d65cp-532, 0xb.34c6a168dcb88p-1004
-0x3.db242662b06a4p+728, 0x4.4e01364fed234p-412
-0x4.0932a06158358p-1032, 0x2.21a57514c6456p-1004
-0xc.32b403b648068p+424, 0x5.0ff2decbda358p-492
-0x1.345d42d59c984p+24, 0xa.9ec32e5a2b72p-1044
-0x3.0fcc7d196782p-668, 0x5.af2fea109a398p+520
-0x3.d943088a6f7c8p-840, 0x6.6c37491c8481p+404
-0xa.ac6a25358517p-528, 0x5.67f0bfadc5ddp+204
-0x3.9dbe4836ecc2p+488, 0xd.3a40509ac8bp+660
-0x2.f8cfb00bedb04p+368, 0x3.d87d01a84c9a8p-92
-0xe.53c7e8e5b73fp-20, 0xd.b82fa0586e4fp+404
-0x2.bdcb25535d68p-724, 0x8.89c60faceb9ep+932
-0x1.97f5a2418f81fp+972, 0x2.fe67c6004c6e6p-188
-0x3.d04a4c119b1cep-932, 0x3.0aff7ccf9f8ecp+284
-0x1.182cce72bb41cp+452, 0x1.ad0bc9c68c36bp-552
-0x1.684fd90dbb208p+36, 0x4.6e1de256dd1a8p-356
-0x7.7f05b8fd7d7p-832, 0x5.fbb1fd05105p+536
-0x1.5ec928b34cafcp-72, 0x1.e5fc7acfa9e74p-648
-0x1.07d7a7615c51ep+508, 0xe.92a9c751387d8p+268
-0x1.d762e9fa5d72ap-580, 0x2.a2931f295bddcp-1072
-0x7.2512f9d7d7d34p-60, 0x2.c791974941d6ep-952
-0x1.9bd1cfc2ec966p+600, 0x6.ffe56421c30a8p-80
-0x6.9210e729dcad8p+56, 0x2.243058779b208p+260
-0xf.10f6a16c1ccdp+568, 0xb.a25e09b995c7p+196
-0x1.510e5ff05af4bp-1072, 0x1.8c4c538c69d11p-808
-0x2.faddd1e3b2768p+496, 0x6.e96782e3bacfp+840
-0xa.a4362636c1f5p-1048, 0x6.413a2dca2e034p-488
-0x2.6c8d95ffa492cp+324, 0x7.bae5c23b589p-336
-0x1.64dc38f761fap+628, 0x6.0dc8eabe0938cp+564
-0x1.7ee4b301a8002p-476, 0x3.24921ef5419f4p-572
-0x1.7bc129dd6efc2p+144, 0x1.09371dceb369ep-336
-0xc.11c0516c1738p+916, 0xc.4ffde18fb84cp-680
-0x2.66e67bbbe01ecp+660, 0x2.4937b1de7b71ap+500
-0xf.82ba09a38e418p+796, 0x2.7a7450f4bc2bcp-756
-0x4.9740dd4aa7848p-128, 0x5.f8700b2b49f4p-492
-0x1.91984fb0fea5bp-436, 0x2.68668e5643bdp+696
-0x3.c33d070cfa60cp-120, 0x1.e1f8cae8de11dp+380
-0x5.7b902827b714p-420, 0x1.7d4bb2081bb24p-560
-0x8.b72267532875p-44, 0x8.4176a0baf9p+36
-0x1.d10fabe9c9deap-776, 0x4.679a35f3387d8p-224
-0xb.ebe17a1f957a8p-988, 0x5.07b71fe55d2cp-684
-0x5.6d7aba592b68cp+280, 0xb.d72d43e798aep+392
-0x1.4659a9e7c2018p-884, 0x1.6c53ab0decda2p-924
-0x4.a6139c1c9b18cp+436, 0xc.b7e077f90cbcp+240
-0x7.549c041e9f128p-48, 0x4.989b096e8217cp-488
-0x5.e3f4f1436ce78p+928, 0x4.7e719087b4294p+720
-0x8.4c109bca8df3p-676, 0x1.db485c4c6df52p+768
-0x2.e7203c3fc44f6p+1016, 0x4.96e71e2d28afp+680
-0xf.0cfb8eaa550cp-400, 0xc.42c8d7095b438p+248
-0x4.0add4991fa678p-348, 0x1.1bf7717f8a70ap-448
-0x6.9984051334efp+656, 0x1.ccf93bfed74fcp-272
-0x6.1c4e547ea7448p-416, 0x2.f1e0e622f805p+832
-0x1.d28130e0e2ba8p+532, 0x1.f1af55b769352p+400
-0x3.4d366e6b1d0d2p-284, 0x1.93f305f8e1748p-220
-0xf.9dc83412b42ap+252, 0x1.b9cc96d24f8f6p+728
-0x7.9f25b233a349p-1060, 0x6.fe6bfac66d608p+84
-0xb.869e5dc1048dp+688, 0x4.6dbaaaaac1a38p+400
-0x9.80e6fea95636p+912, 0xd.0b2c58fe84fbp+1012
-0x3.fc4641cfd33b4p-308, 0x1.a2c939e0dc69dp+1020
-0x5.6eee6a72a9208p+704, 0x2.8fe8497484468p+648
-0x3.b56ecc4313cfcp+964, 0x2.f743973497184p-328
-0x1.72e3bafd6432ap-128, 0x7.862e2927e375p-76
-0x2.7fdbab81135c4p+804, 0x3.0380bf5de3d3p-1064
-0x2.a919cbb7d4406p-780, 0x1.57278c5a02164p-200
-0x1.a2841d9dd6c36p+864, 0x2.40b450568e868p+192
-0x1.d1ff447462ed9p+704, 0x1.287734cabaf5p+908
-0xe.50a499854669p-36, 0xe.16113a974e5d8p+500
-0x5.e36a6731dae5p-356, 0x1.ac7b7ff80a72p-720
-0x1.400eb401a5744p-932, 0x1.a3a765a5ecb0dp+944
-0x3.fecead10bd7aap-404, 0x4.bb7a8c66e5a38p+488
-0x2.5eb0d73b5472cp+320, 0x1.c0bd9a0b2aef3p+632
-0x1.4a68d446d932cp-568, 0xa.9bb59ae1f67dp-324
-0x2.41b130bf5ea2ep+924, 0x1.14ddbc8ab57c6p+976
-0x3.1f2dd0f293098p+468, 0x7.7d22a52340f18p+720
-0x8.089a6dc1d9bd8p+84, 0x2.93a3adfc03a9cp-360
-0x5.f42077a81305cp+388, 0x3.4d26ff0b0d788p+640
-0x7.760d4e3473d98p-592, 0x2.ca922fc58e644p-1016
-0x1.144c4c97f8116p-764, 0x1.cc2dc6d47a63ep-596
-0xc.9cf16b7d5bb7p+104, 0x7.15ba644ebbba4p+656
-0x3.b259f33fbfa2p-56, 0x2.3a88166b38d1cp-732
-0x1.3874fa207e618p-1044, 0x1.01bd7d6e5157p-180
-0x4.e0e18d640826p-296, 0x3.a5d4b0c2a543p+184
-0x5.d64aa5979956p+456, 0x1.de3346e7e12d6p+280
-0x4.b11b826129748p-700, 0x4.7ca8e4d541abcp-700
-0xe.747e5c8c48e5p+496, 0x3.2e3870826209p-288
-0x1.da1fc4468e206p-420, 0x1.c0b794a423c0dp+64
-0x2.93a228def5274p+384, 0x8.9e2392564d23p+1004
-0x6.885977457021p+820, 0x2.e6d472908a1e8p-608
-0x2.294a0ae86cb1ep-612, 0x7.60d840b08c648p-472
-0x7.8795ad25fe428p-840, 0x1.e5019f5f617bap-992
-0x5.ee48452d87168p-616, 0x1.1512d1303c50cp+12
-0x6.f32041a900488p+392, 0x9.318469fbbc71p-464
-0x7.991cce573e9f4p+28, 0x9.e13667e145898p+596
-0x1.12844254e372ep+12, 0x1.77c6b97f585ddp+808
-0x2.445306fdcd81cp-808, 0xc.21a9f51bd368p-1024
-0xe.d39ec7af267fp-908, 0x1.dd4d21c9f6491p+328
-0x4.57a2c47b1d4ep-632, 0xb.38d83d9bf6028p+876
-0xe.ce00e28a67fe8p-336, 0x7.22aff1e8df1fp+112
-0x4.36eb1220b4f8p+256, 0x7.3f1c13461e438p+88
-0x3.a42e006f19c4p-580, 0x3.69cacaee59b2p-240
-0x7.ead41e3b9bb9cp-936, 0xd.62561acca511p+348
-0x3.7724321a8dd28p+436, 0x5.527b6ad943138p-112
-0x1.f32d87bc72e63p-756, 0x5.1e33d73ea14acp-700
-0x4.0f12d1a0bfa7cp+968, 0x5.878d52bcdaea8p-284
-0x2.efb04b65dee26p+124, 0xf.f04d459858228p-516
-0x5.4f336dc2d3d1p+112, 0x6.6eca0075b9d8p-336
-0x8.4c397d597576p-916, 0x1.b0f1b2c7c6e78p+528
-0x1.6267710f2a244p+4, 0xd.a7204563b052p-496
-0x5.20be4b42e90dcp-1016, 0x1.bb5d82daa9e21p+452
-0x1.f86acaa184a54p+972, 0x1.9b0b586486cf5p+148
-0x1.5f76f7af414f2p+96, 0x1.7ce2a37a333e9p+548
-0x1.c45f46e92334fp+996, 0xa.e30448fba792p+496
-0x6.22e02f952fb5p+784, 0x4.e34c2787e1e1p+848
-0x2.ca8c84a7183dp-716, 0x8.d001caa07f12p-1056
-0x2.0bcdc44ce882cp+132, 0x7.71b224797dba8p-724
-0x1.69d92e9ae3d02p+344, 0xd.55018c3fc39ep+516
-0x1.af281bf6b32b2p+572, 0xb.7e341156e617p+392
-0xa.933b3d4ed762p-280, 0x2.988c7e6ffa784p+512
-0x4.aabc2b7dc1a4p+880, 0xd.10eeccabbe478p-1064
-0x3.55362662b0822p+636, 0x2.eb5407d01a76ep+640
-0x6.7d93f3110ae74p+228, 0x7.d3a224fd8534p-448
-0x4.888a0a062c6acp+668, 0x6.6f56b65b96dfp-256
-0x9.14e63ae74bf4p+324, 0x6.52d9e926f0b78p+536
-0x5.9dfe5df6b8738p+452, 0x2.941ea7ce1a19ap+960
-0xc.fba00009464b8p+776, 0xc.e320e178f47ap-772
-0x7.235873c5fa28cp-52, 0x7.249c3250f91e8p-204
-0xc.1125b4bed8418p-612, 0x1.7ef2ac2f367dfp+100
-0x1.6b2d8d0162df3p+376, 0x2.e8331afa1f6a4p+784
-0x8.e2054988b942p+724, 0xc.276a8b4db454p-824
-0x1.303924f2d614fp+532, 0x1.cdfd68ddf63bbp+8
-0x6.476ac01a34128p-748, 0x2.d1631b04acc38p+856
-0x6.254ae3c698bf8p-904, 0x3.0f4bccaa717a8p-1056
-0x2.783acb329a718p-1064, 0x1.5fde8317e355cp+596
-0xd.3150da1a78e58p+684, 0x1.8f9627f5854f7p-1000
-0x3.94e8a189ed3ecp+232, 0x1.aa98b429bde2p-644
-0x9.8ab6c4711f46p-92, 0xa.83186f99d8dep+356
-0xd.cba22764d7fdp-692, 0x1.260d8c3941abp-764
-0x7.aab8d18d67c18p-628, 0xc.65fe0867c7ee8p+476
-0x3.67f98823b7cb4p-136, 0x3.60b1123ced952p-952
-0x2.29dae0ac6a94cp-908, 0x7.960e82b2a64d8p-600
-0x1.0dfcd104cf31ap+348, 0x3.d17aee3c390eep+480
-0xf.b050d1454144p+1004, 0x3.012f752f58464p-388
-0x5.70fd809e7e73p+584, 0x3.c6c6bf6ec8604p-204
-0x3.01ad750c96b96p+556, 0xc.c60d6d811caap-496
-0xd.de9ab38c5303p+116, 0x1.507dbd680ea73p-252
-0x3.70dd7ba8b1db6p+68, 0x3.437a923cfaedp-104
-0x4.9ec194802a7c8p+420, 0x2.f68328d13e53cp-728
-0x1.9ea423b87e115p+236, 0xc.378aed07569b8p-748
-0x4.0916ff61f6bd8p+392, 0x9.f75ed97e674ep+704
-0x3.fc2a6456727eap+344, 0x3.cbd6afeffe662p+532
-0xc.4d46ebe45b678p+236, 0xc.4b5701a3a1d7p-784
-0xd.57862d1054cfp+608, 0x1.fc5ead28d616cp+580
-0x1.f9249b1ec9fdep+776, 0xd.907f7b3836848p+400
-0x2.f812202a7d214p+964, 0x1.f8c1ac3bf6e66p+656
-0xe.98ef5b3b29fcp+4, 0x3.7ef8ba287056p-312
-0x7.b564a267ffeap+360, 0x5.5528d072e5984p-236
-0x2.4fbc555a46464p-464, 0xd.441b7ec86c96p-700
-0x3.ed0da23eda51cp+236, 0x1.4b7765597a086p+224
-0xf.e98f56a7364fp-212, 0xb.ee672898f7988p-352
-0xb.a2b6b5979cd7p-280, 0x4.974214fa5fb38p-8
-0x1.ae3abd8edad9ap+732, 0x5.9e56016418eb4p+752
-0x3.2afcb9f631d2cp+484, 0x2.122e2f2bed14p-212
-0x4.042e590ea31p-820, 0x5.bf8ad4f229ad8p-852
-0x2.423d9cdf3e338p-228, 0x3.df9a729e942a4p-736
-0xa.d143ce93c6318p+68, 0x1.9e4cc7a88abep+60
-0x3.8c3df5da8dea8p-500, 0x3.047662add01ap-352
-0x5.2f936b883b7f8p+668, 0x3.5ff3f0ca10bbp+364
-0x3.8e839fdd3a63cp+932, 0x2.e5c226a64fcc8p-120
-0x3.38d5c9df34f8ap+424, 0x4.d5af3efd87498p-776
-0x1.fc3378f8fe934p+320, 0x1.459bf6c2d0e86p+736
-0xd.ea4164021784p-568, 0x9.e9554e257e748p-832
-0x1.70f62b1865e8ep-240, 0x3.6aebd9ebd4104p-144
-0x7.880178e774ccp-420, 0x3.cfd6ea5c450cp-500
-0x1.b34494c9d378cp+552, 0xe.fba1acb258b7p-268
-0x7.4a572dea73128p+76, 0xe.b9651f2ca523p-820
-0xa.bde669d6f036p-768, 0x2.dc32c0b3cc2bp+940
-0x1.a58028c6a4a84p+56, 0x2.9cfc58ae238ap+124
-0x1.49e0adaa1c834p+896, 0x1.d52120ff4bd76p+528
-0xb.4a847f5caaf3p+260, 0xa.151ca10323758p-772
-0x2.38904d3899358p+240, 0xc.4c604e47ba87p+108
-0x6.9cf8703cfdeb8p+616, 0xe.04e292f79c66p-968
-0x7.cf9245ec208a4p+376, 0x1.8e178b17c3b44p-208
-0xf.6f8e9ae21d84p-572, 0x1.848657e4f328cp+516
-0x9.f1ecb8a17a57p+952, 0x2.ddcbcf33186d8p+788
-0x3.cfb9b3eeace9p-936, 0x1.27f0fafea1e0ap-772
-0xc.9386c9bb19b4p+632, 0x1.e980fc563b614p+944
-0x3.ffdf267ced49p-904, 0x3.c12fc6be69898p-260
-0x1.893fa843411ffp-964, 0x1.e0b4945036246p-1028
-0xa.94814f8b7e4cp+780, 0x3.37952be2825e6p-184
-0xa.2b9407aca2488p+624, 0xe.1003b47dedba8p-324
-0x1.1c48ed95a8618p+440, 0x9.64e7fcdf1374p-508
-0x6.9fec47ac9329p+492, 0x3.86e2498d9976cp+660
-0xe.ca39aabbbd2ep-292, 0x3.0316c296b1fcp-704
-0x6.c9bdc0cb8f118p-880, 0x2.9acbc4f9144a2p-968
-0x7.886bdcea2735cp+996, 0x2.a43b625914c34p+876
-0x6.36425676ba89p-716, 0xd.de514256bce4p-976
-0x1.c7320eb01e55ap+620, 0x3.09e6ea4a626cp+620
-0xa.f2fbd8a35787p+1016, 0x3.1efb7da0aa278p-848
-0x2.a9f0acfb2716ep+324, 0x8.cc5a12dec07fp+196
-0x5.4f2d0a6a9699p+296, 0x2.d0fdd188fdc24p+32
-0x1.41a482c422228p-356, 0x9.b97e0b87f628p+832
-0x1.79e4ff7ab4b02p+464, 0x1.2ba38059848ccp+108
-0xd.f501aac49b378p-744, 0x3.eda919909732p-56
-0xc.a481a97d8e3ep-244, 0x1.202393135134p-892
-0x6.b4565c2ea5d6p-268, 0x2.613b4f04adb24p+1004
-0xf.94ad384c6f33p+592, 0x1.5022e1b9d1d78p-772
-0x6.ad138a3c67894p+148, 0x5.92aa0b9762cfcp-328
-0x9.13cad8e27c35p-704, 0x8.ea03cc66ff328p+112
-0x6.aa54a5e58f374p+724, 0x1.2ad5539936655p+120
-0x4.94f4f78604194p+580, 0x2.8037db175604p-1040
-0x2.ae3880da2f2d4p+916, 0x3.210a5e686ee6ap-724
-0x6.f37f70d2cdf98p-528, 0x6.580f72d4c275cp+132
-0x1.4cf3f765c94p+1008, 0x1.ccfd8431f7d6dp-404
-0x5.07f34c977ba54p-152, 0x1.580c4908303cbp+260
-0x1.b1cd829f03558p-416, 0x1.3aee6629428ap+852
-0x6.37dbc75598c44p-860, 0x2.24f1736691a84p-376
-0x3.e75f0c85f23p+76, 0x1.ba253190713bcp+508
-0x1.bb646e909df64p+916, 0x6.518e98c5b3bcp+292
-0x1.ddd0cc6dc8184p+756, 0x7.feccb6b1a4c9p+360
-0xb.bf7a30070093p-516, 0x1.fd70bf9d7d57cp-904
-0x2.19f76df72475p-824, 0x7.1b71f331fa254p+760
-0x1.e6c2ed52ef49dp-784, 0x2.ca1b9bb27c912p-640
-0x1.bc79578223e9ep-360, 0x2.5eae3b220b0a6p-84
-0x6.a2c20a9ecf0b8p+524, 0x1.8777fa657f76p+980
-0x1.677c61fc6c51ap+512, 0x2.f6c788c97a764p-124
-0x1.ed0dce824273p+716, 0xc.c39063372cd78p+356
-0x1.0d2c9d82cae2ap-20, 0x2.c186aa73491a4p-292
-0x3.66731605a0d94p+28, 0x3.00f53ecacd0d8p-548
-0x7.92f162d7a2168p+228, 0xe.dcbd47619d71p+252
-0x1.7f6ad058ad128p-384, 0x8.685fff6a08d2p-372
-0x1.7b5e066be63p-216, 0xb.1c77bc44e6ddp-520
-0x1.beddcfb66e505p+4, 0x9.a3e4ef20bd99p+432
-0x1.cff84615837e6p+164, 0x3.d86e03768e99ep+484
-0x2.a300f0a220876p-168, 0x3.d18a46be621bp+332
-0x4.cea8cf37d3e14p-540, 0x2.2958caddb5a26p-960
-0x1.a1af93dfda061p+492, 0x2.504ec42a8c632p-124
-0xd.6410044e62628p-364, 0x1.221b63030b9aep+520
-0x1.6dd360537b632p+380, 0x1.41c25d53ce21ep+960
-0xd.b4eca36b85fdp+776, 0x1.206ac295f3ffdp-916
-0x6.5fff39bd8a5f4p+832, 0xa.99cb17b0efa5p+252
-0x3.cae4280ab193p+804, 0x2.2f49deb7628e2p+848
-0x1.64f73bafb181cp-1020, 0x1.2674451e1c4fap+48
-0x3.e7233e3fa31d6p+360, 0x1.7959d82b209c2p-328
-0x5.219a3b891f3f8p-60, 0x1.20618bc5365cdp-232
-0x5.354bea852f2dp+388, 0x1.414d60faa5f58p-604
-0x9.af26751352878p-648, 0x3.38ee7be445584p+636
-0x1.5504b938b4402p+224, 0xe.a17ad9d3b6a7p-20
-0x3.9d5c2c20ce666p+816, 0x1.f267437fd89fap-180
-0x2.95936ff763526p+416, 0x5.9015efbe9ce9p+136
-0x2.299bd7e0833e6p-472, 0x7.b9843f2b061e4p+620
-0x4.7f041d77b4324p+152, 0x9.671fd6c19e8bp-4
-0x6.0382bb7a5d2p+940, 0x7.6db9fe2f80738p+272
-0x1.ea02acee90874p-500, 0x1.014d46d4e97b1p-1044
-0x2.b86a38667367cp-948, 0x3.94935f2201274p-524
-0xa.d2f1c7e3559d8p-28, 0x1.7896787392224p-228
-0x3.d3835d73a43p+496, 0x5.975ff8e13f074p+380
-0x1.cf7599398d70bp-1036, 0x1.628c9ddb3d55p+644
-0x6.fb89afca7031p-876, 0xd.94d6918988ccp-812
-0x1.6bfb5be076218p-1064, 0x8.e9d6f9b726e48p-132
-0x5.a0a08b1099dbp+160, 0x4.57a27e437a0a8p-564
-0x5.6931b7f5110ep-212, 0x7.a224d6b54d5f8p-192
-0x1.72754feea8bep-64, 0xe.bfffea109b02p+128
-0x6.61d2b160bd818p-56, 0xb.0da6fe74da36p+960
-0x5.32074a9c86e78p+476, 0x3.f9844e949b95ap-108
-0x1.4906ec04b2fc6p-808, 0x7.ce269d2636184p+872
-0xe.f4140c66ffbcp-820, 0x1.22c64a837f3edp+248
-0x7.a7f929eb50448p-228, 0x1.c99a67873cce7p-16
-0x7.297762f36b398p+872, 0x1.f6ed9c583f814p-336
-0x9.52ab590c2c38p+248, 0xb.ee3f87f6b6178p+108
-0x7.c536741353d38p-864, 0xc.44c6d0b9bbb9p-164
-0x1.07716b6aa5c96p+564, 0x1.8c8cf22b47d4ap-484
-0x1.f152d451e56dep-36, 0x3.3c0845963a8b2p-496
-0x1.cb8a3898f379ap+916, 0x5.908c0b441371p+852
-0xa.18274a2c72ff8p+32, 0x2.b5c87f54c803p+984
-0x6.8948c4377366p-292, 0x2.69c062ad7a6f6p-120
-0x5.cebc236669a0cp+168, 0x6.5caaba79aa828p+1008
-0x2.3f9ef1486826cp+312, 0x3.35a00a65a1494p+692
-0x9.a97366835e01p+156, 0x7.82617650e4a3p-452
-0x1.5eca88945266ep-804, 0x7.8b215f972bdap+180
-0x3.a99391d3573b8p+504, 0xd.ef87187325a08p-212
-0xe.324861dd76478p-416, 0x1.e1b471f00c424p-288
-0x3.365a94911637cp+992, 0x2.cb6409abe9e6ep-664
-0x7.a9c0be22c416p-668, 0xe.59a8d3e160c6p-188
-0x5.3f5c088685bb8p-532, 0x4.70cee0b0f284cp+1012
-0x5.d16c1882a332cp+640, 0xf.1460cc6d0e3ap-460
-0x1.6e3bf9968f9afp-484, 0x6.6267c4b5801fcp-520
-0xf.d5ef05945adp+892, 0x1.037407a24f012p-1072
-0x2.16a6da54723d4p+356, 0x1.b3d97ec4c0454p-992
-0xd.5321f2e34663p+80, 0x6.8447d17938f4p-720
-0x3.a71a1b142eecp-744, 0x1.e6accbf8896f2p+348
-0x1.657613a154639p+332, 0x2.7416e5dd59d24p-396
-0x3.07dcc0499153p+84, 0x4.721c4dd1045b8p-1032
-0x6.52aebfa673dc8p+668, 0x5.678f4cf978a5p+144
-0x4.c83fb95464168p+932, 0x6.f7c34fb6e219p+740
-0x2.65b1bc1226f0cp+228, 0x8.0c2a0eed9e3fp+344
-0x1.6bea77f703bb1p+800, 0xd.d0f47f24b366p-664
-0x1.5b83c5c8a9434p+248, 0x2.61c8f5c29c8d4p-884
-0xa.dd232b25f4c9p+540, 0x9.5cc98c5aad2p+144
-0xa.32fadfe3a77fp+272, 0x7.03b19901e1668p+948
-0x6.8bfce4b207c2p+356, 0x2.a4bba3dfbd808p-216
-0xf.860d537e09adp+76, 0x1.752be6cab8a8ap-192
-0x7.ed8f7155cb3p-176, 0xc.c5fdd82f7495p-132
-0x1.69ebaf0e3aa56p+528, 0xe.5c469c44375b8p-1024
-0x7.d889515eaed44p-488, 0xd.0e0708fdb1ce8p-688
-0xf.6666c05a3bf4p-696, 0x8.a0529f56d498p+408
-0x5.ddb5d0449117p-1016, 0xf.1ae6cd163636p+80
-0xb.49702498a767p-536, 0x5.f3bdd318bd2b8p+876
-0x7.af243c77859c8p+596, 0x3.9986e4dfb3a54p+60
-0x1.b10eb26c92e2ep+420, 0x2.75002fa180ce4p-372
-0xb.bac2a08b337dp-580, 0x1.6456fe2bd6bc8p+436
-0x6.cdbde83d7d9dp+440, 0x3.227fba2b18984p+716
-0x4.7d1795207ba3p-876, 0xd.fb3ae6a6d974p+716
-0x7.2db71fd9639d8p+208, 0xb.9541a1776cf7p+772
-0x4.9b7ffb1b837ap+240, 0xe.d915034122038p+972
-0x1.f6c429f506438p-312, 0x1.05262713a7116p+456
-0x2.01a33f8183e68p-756, 0x7.9c7104b3433e8p+680
-0x1.3f56db3ef28b9p+548, 0x1.0c9d8cab221aap-324
-0x1.2ca76c29edb24p+160, 0x2.6523f66254954p+248
-0x3.c8a04b8a5a3b2p-208, 0xf.6de4e8795cedp-360
-0x2.be8ccb6413c48p+116, 0x5.a311cf7df50b8p-516
-0x6.af871d1a5ec1p+580, 0x4.e66c9fac1b9ep+668
-0x1.688223cc38b04p-440, 0x7.d6185a14b5a3p+32
-0x5.ababb43ed82e8p+1000, 0x2.bca071f5399c6p-672
-0x9.bf3e2ba5c166p+716, 0x1.1595532b99bbp+560
-0x4.684440250497p+224, 0x3.0085801faa94p+460
-0xf.e01ebf790931p-156, 0x2.61e85d2ef07fp-444
-0x2.96a474a22352cp+124, 0x3.8822c884b3586p+424
-0x1.5c75dbb9d0c9cp-1020, 0x1.41d8cf85de5cep+668
-0x3.e7e636789098cp+316, 0xd.f82f221b2dcfp+924
-0x2.24284c8f0cap+732, 0x9.092020d6c372p-560
-0x1.1d8b68d0870ccp-232, 0x8.e6d5b5b35c75p+936
-0x5.83c80ce403f98p+268, 0x4.c256b72643b4cp-208
-0x1.dc2c0deeee228p+180, 0x4.1fd87b7019dbp+1008
-0x1.7e7b9cdb73b54p-440, 0x1.2ea7fd3295f6ap-180
-0x5.4939d3da9eb44p-852, 0x3.bf36f68aca44p-860
-0x1.5cd6c3b6c3c81p+724, 0xd.3f70654e05b6p-212
-0xf.640e657bb4ed8p-88, 0xe.fe6fd523da25p-968
-0x9.fe7f04343e3bp+596, 0x3.4ca1571aa4b1cp-960
-0x6.e5c1c64a37fb4p-172, 0x1.5b710e90ebc62p+800
-0x2.c31c4509a7eeap+0, 0xf.43cb971b74028p-544
-0x3.03f9ab6030348p-272, 0x5.4c8c501a8331cp-216
-0x7.df2904a3ec328p+712, 0xb.735b2667398p+636
-0x5.144222c5616f8p-912, 0x6.cb959ebd3c68p-944
-0x3.c7839b2f0054ap+600, 0x4.000ee27f5792cp-12
-0x3.f51c0dad41bb4p-892, 0x6.4ff0f934ceb4cp-824
-0x3.fe4a9902cd784p-584, 0x7.f40dc8118ef1p+996
-0xa.836f6e2a9a39p+816, 0x3.e5cbbbc53d77cp+776
-0x9.a93ed53b00c1p+104, 0x4.6ec0afe19454cp-776
-0x3.180d9f767c9dcp+200, 0x3.30f81ee2c291ep-240
-0x3.b79566ad9463ap+444, 0x1.5475796bf429fp-56
-0xd.e5f7d4616e478p+832, 0x6.ea9244c42df1p+548
-0x1.7659d9cee550ep-696, 0x2.7bf53efef7e7p+964
-0x1.94b7d4e1e8f62p-212, 0x1.74f0444fda8ap-72
-0x1.4b77939717efep-100, 0x9.415c2dd8715ap-1040
-0xa.4341bc4d97558p+96, 0x4.64d4c082e9a4p-944
-0x3.52e125440f092p+708, 0x2.c43ee9b98527ap-444
-0x1.faa9ebc9d31c4p+756, 0xb.a53f64af3ec1p+708
-0x3.f1104ca32099cp-268, 0x7.ee941912f49fp+748
-0x1.fe0d6aefbf58fp-692, 0x5.351d218023d58p+848
-0x3.a5542fd6eab44p+136, 0xf.9fa057b2ba2f8p+408
-0xa.9181c0a510d5p+96, 0x1.d3eb00331e936p-24
-0x5.97c04d9e72328p-296, 0x4.b772ed78637d8p-436
-0xf.d3bd42603fa2p+588, 0x1.d384ad40c576p+828
-0x3.0c52b06ecf4bcp+192, 0x1.1cc4f4298b7p-868
-0xd.cbbea37d3ac2p+780, 0xd.990e5904855ep-1048
-0x1.eca70f2cb91d8p+248, 0xc.cbc5b2df2e6cp-160
-0x1.94fc6a4aed928p-264, 0x1.994652e707ep+720
-0x3.b68010ed3408cp+760, 0x1.8da03e183f65ep-728
-0x3.bc37d84c3ce24p-372, 0xa.0b9f475b05dc8p+784
-0x1.7ec437ba9fc63p+932, 0x2.e351ef189dc14p+856
-0x1.ccd0595497833p-336, 0x1.d9c63920843dp-284
-0x1.6c3599371ac32p+524, 0x8.c84511bf8e02p-372
-0x7.9f1b14531d498p+732, 0xa.ffb48ee6129ep-452
-0xc.528ab41df54ep-740, 0xf.983fb8fb485p-404
-0x6.308fa477c79d4p-700, 0xc.6a4cd22016b5p-896
-0xd.c9244530c055p+656, 0x1.e1ef46278f7c9p+676
-0x7.6f46b2e70815p+208, 0x9.3cada4d9444p+428
-0x9.52be2d5b16728p+604, 0x1.fe615286f1764p-644
-0x5.f2a2ee89f52f8p+808, 0x5.63aa773924214p+580
-0x1.01f790a802abbp-88, 0x3.6e65b723d474ap+532
-0x3.81faffb4bf5dcp-916, 0x5.f5f30ccbac144p-440
-0x6.1552e7a1f9bd4p-372, 0x1.7f7e9039d34a9p-220
-0x3.36e9cfaf20f6p-852, 0x4.444b32f2b839cp+452
-0x5.e12b6dc6a3378p+756, 0xf.5439cdede5adp+372
-0x3.112067b2155c6p+624, 0x6.33f17958def1p-520
-0x5.13e66ecaea5b8p-1020, 0xe.5b7667b06dbep-588
-0x8.3347b7d74841p-168, 0x2.723a196678accp+576
-0x1.0989ed37394dp+564, 0x1.eac7dc66e46fap+40
-0x2.c730713795d12p-124, 0x2.8efbe124d2e54p-692
-0x5.f64aa96d4180cp-772, 0x5.41752ba4c094p-684
-0x2.6905451103c82p-1072, 0x1.720d8938f0226p-216
-0x7.cd74eadbb199p+768, 0x6.86c4137370e58p+448
-0x3.ccd6d3384920ep-108, 0xc.d8fae26144498p-924
-0x1.f75decd862f0cp+416, 0x1.8bae854bf219dp+308
-0x4.88ba1dd2475f8p-580, 0x1.b2f267e23e798p+100
-0xd.0c653ec89f4ep+1004, 0x2.e89d06f3eb0c8p-160
-0x1.3efb38649d778p+740, 0x1.8fc9023dc08e8p+616
-0x4.bc94c03529388p+524, 0x1.f76542b7dfa9p-800
-0x1.9bc5271e94085p-664, 0x1.8a4c393336fb8p-1064
-0x1.9a5df8c24c75p-156, 0x3.38a5d2c7ca67cp-564
-0xf.5c16f86d88be8p-812, 0x1.b05fbd39bc8aap+20
-0x5.8627177a5b9dp-768, 0x7.42ecefaa88aep-628
-0xa.b666d95986bbp-88, 0x9.53e1c469cbbb8p-496
-0x3.cd7abb848d17ep+400, 0x1.10a3e50795c1ap+660
-0x4.824cb83202b48p+460, 0xd.07f24664e626p+324
-0x1.a9ab9e4c4360cp+156, 0xf.0169c0b6b75a8p-880
-0xd.b02ada7748dep+468, 0xd.d7457266c583p+768
-0xd.acb8e4229b7ep+212, 0x7.0b44fc819f2p+76
-0x5.df4a3ceb0307p-512, 0x8.58e292164d0ep+112
-0x9.cf19ca151418p-576, 0x1.2e740c7b67c48p-556
-0x5.260400e987c98p-356, 0x3.d764164fb32e4p+92
-0xc.d55edaf18a38p-104, 0x4.d3df059f55084p+300
-0xf.ae3fb2b7f53b8p+100, 0x3.4c868512d7034p-816
-0x4.8f7529c420718p+192, 0x5.5319b0f6148d8p+432
-0xb.989c29b92462p+968, 0x5.78b29e81efc7cp+616
-0x1.d1088907e019ap+680, 0xe.84f1171c8a178p-612
-0xb.d296a54d97348p+772, 0x2.6259c354ffa2ep-540
-0x5.f7a2926a978d4p-396, 0x2.37045d86626fcp-68
-0x7.5ccbc7a4eb72p+792, 0xa.0e2a45d2ccdp+172
-0x2.e9eadc9d6b0c4p-4, 0x6.460f52dc88758p+328
-0x4.3faeb17b8fdep-1056, 0x4.e1b06d9d9a468p+640
-0x7.7bc68f7b04c8p-768, 0x5.f4ae1a1fe99bcp-900
-0x4.b11f24875b9d8p+720, 0x2.6b66facd94fd6p-924
-0x2.f796d55e9afb4p-72, 0x1.bcfe2cac6f076p+900
-0x3.97e814f0f4f68p-916, 0x2.c340bb0962148p-488
-0x1.97eb91a734dcbp+20, 0x2.dbefc93c2b0fcp+460
-0x1.4d7a256a40808p+876, 0x2.0755e04213408p+588
-0x1.daa618b8f4f6p-216, 0x1.e8d8b31bd7bf4p+56
-0x2.db5760ff1209p-928, 0xe.dc529defdb78p-424
-0x1.f6f2e93bd6fb5p-512, 0x5.45616d14c463cp+964
-0x1.1a68b30d51387p+220, 0xd.7d87133a14aep-1060
-0x1.41413b2db4581p+448, 0xf.b9e6ba7c2b098p-124
-0x1.4d016275e9f0cp-596, 0x5.19467c7975acp+888
-0x1.7fcf15c526cacp+636, 0x4.5cc00c1cbba5cp-788
-0xc.a2e589bdc3b9p+760, 0x6.4b5074238f16cp-316
-0xa.4d977da5afa3p+332, 0x1.2891b953d4d7fp+716
-0x9.5cc2575ad12p-516, 0xe.f973852160eep-164
-0x2.5d8ae9f980606p-336, 0x1.c9b4b216586c2p-376
-0xe.7fe8dc6bf949p+28, 0x6.34aefc7bb043p-688
-0x2.3e9fdb8e9d31cp+36, 0x1.d83499f79f15ep-924
-0x3.bfd55fc517aecp-556, 0x7.2d9ddf391ee7p-652
-0x5.fc9e04cfe70bp-544, 0x3.22aac28eb53ep-460
-0x3.874973bb01c7cp+484, 0x6.7f8d5067e1598p-484
-0xa.ea1d735c271ap-852, 0x3.84e430321ecdap+692
-0x2.311a1c57ec548p+800, 0x3.2a65843bc660ap-1044
-0x1.44ad8a1f6526fp+196, 0x1.a6df006ad0b7p+40
-0x2.cd3a0bd5431d4p+776, 0x8.5b843f1f772cp-1032
-0xc.a78f2c0e30afp+792, 0x1.8ee3fcbd2e0e8p-144
-0x3.55ad5fa25f9ccp+104, 0x3.9c5c6cb83586cp+280
-0x1.0fa3dbededd35p+24, 0x3.f326bfb61edbcp+864
-0x1.4741becf13d3ep-376, 0xd.2486b2d6b4c9p+632
-0x5.0cd299fceb49p+32, 0xc.ebbff073e9d78p-1016
-0x7.5723b0b887ffp-928, 0x9.bbc8a29c1022p-528
-0x3.24d46eee8b6fp+412, 0x7.b5c08e063167p+576
-0x8.693c3f943ef1p-696, 0x7.55a3a3ce02034p+772
-0x7.73e8cfb6f9dbp+596, 0x1.7cb9a17ae108cp+252
-0x7.4d34acc975e18p-352, 0x2.1d63d81e0e872p-800
-0x6.e8d8c6cf19a14p-388, 0x1.021545b0baf25p+932
-0x3.cf8ae9177c41ep-448, 0x4.e2468019e3938p-616
-0xa.1a5738fae288p+716, 0x1.fb74263564eb2p-496
-0x4.ce5c5c93471p+28, 0x1.98931db9f9cbcp-664
-0x4.0ec2b4b0fcd3p+376, 0x2.88d19d770da88p-204
-0x1.e7d233a2fbf6ap-1032, 0x2.67de107d59288p+16
-0x1.5821977b2f114p-448, 0x1.6d68f808ea7a6p-872
-0x1.c68471bd08d24p-236, 0x4.2dc56844cffc8p+928
-0x6.809da516c5d4p-936, 0x1.972fca6b83988p-748
-0x4.f33d1765fd3e8p+672, 0x3.760b53476cc5cp-388
-0x1.4cf2b0bcedccp+624, 0x7.3693d35a1be64p+704
-0xd.d7dc2e4854f9p+872, 0x3.427f3e2c69b0ep-840
-0x8.ebfd8b5e6f4ep-544, 0x1.29599d85085fp+40
-0x1.d0f604ef0f1fap-344, 0xb.3da822900994p-1064
-0x1.c98342264077p-912, 0x1.7d714c0eac215p+964
-0x2.e5776a55df064p-228, 0x2.e050be518f0c6p+760
-0xc.41358da1bfbcp-960, 0x6.72f24ce3850dp-796
-0x1.6fc7cf1179f07p-760, 0x1.82d3b0a900dcp+932
-0x2.c735540514bcp+116, 0x2.6ab56030b2f04p+160
-0xf.1407191bd79d8p-328, 0x1.e013fc0c9ccbep-820
-0x6.ff3859a993a58p+232, 0x1.df977166d1958p-760
-0xd.67cbbfa32a7fp-500, 0xb.782de178f70cp+840
-0x7.12520ed2540c4p-548, 0x5.22089db66a41p+688
-0x7.ce31d43a28cp-264, 0x2.761ef0c90bc92p-968
-0x4.bb0e33acac428p-704, 0x4.426646233ea54p+472
-0x1.e71a7b9483262p-764, 0x2.5d4fcf74d0f2ep-208
-0x9.0a6547cd6aa2p-1012, 0x3.e360d680a159ep+44
-0x3.d88eac7397f44p+840, 0x1.373179e0ec7d4p+60
-0x5.2142a3c93df8p-252, 0x1.039e03b094544p+796
-0x1.1e4ab59556d8cp-360, 0xf.40a55512548p+620
-0x7.e9d464c17e26p-740, 0x2.b99b3f7e4c0aep+364
-0xa.ab6676b77ca58p+812, 0x5.754d469551e4p+456
-0xd.9e0e5fbf24f4p-732, 0x1.f340fd8ac5e33p+768
-0x4.3264152160d94p-120, 0x1.37f61eefc612ap+932
-0x9.419975e41042p-824, 0x1.5bf1d2c95a902p-1048
-0x7.6d1983abd113p+848, 0x7.8135c2c4c0c1p-232
-0xa.c1005d5f4048p-572, 0x2.1fe8b343e4ebcp-204
-0x1.54008aa19a8f7p+120, 0x1.a9e6190cfe6e6p-1072
-0x5.66e2e4073fcc8p+228, 0x2.145a7c2f0ef3ep+812
-0x1.db36596ba5ffap+388, 0x3.11cd9eea3e36cp-496
-0x1.04168c45ecc05p+828, 0x4.6e3f71059997cp+832
-0xc.2384de1acf8dp+348, 0x8.01901ee64d2cp+788
-0x7.1c662fa02dd98p+608, 0x3.c1b6fb8a9184cp-692
-0x1.11287146a09b8p+644, 0x4.64bfc1e0e0c9p+396
-0x1.57f03c8810d69p+712, 0xc.a5984068f7b8p+48
-0x4.2dbe0ddf26ccp-340, 0x3.81a50b1409c54p+936
-0x4.d9c2d41a2dc4cp-1056, 0xd.1b5afa68a5e4p-532
-0x5.d0ab0b1cf5e8p+148, 0x9.a949b81507e8p+20
-0x1.79ae6b1efe6dcp+232, 0x6.41a9f79985fdp-96
-0x5.05eec59eb754p-624, 0x3.4cc2f9aa0af64p-464
-0x1.f02d73297d6c6p-232, 0x6.38ccafed3759cp+420
-0x7.76422f66dca28p+400, 0x3.0f188be2d4cbcp+68
-0xf.0090a7a284728p-924, 0x4.b7eb047c002b8p+328
-0x1.0b82fa80a9958p+564, 0xf.c73ba6cadab28p+520
-0x1.14a9b777040ecp-316, 0x6.5427c18eecc78p+4
-0x8.06c88342835fp+652, 0x1.a9ecb1bc7ec68p+348
-0x5.2f6c56d6d7bf8p-868, 0x7.18b3507eac248p+120
-0xe.1a4db1cdc2c38p-56, 0xa.3133554848dcp+828
-0x1.a1a22b18422acp+1004, 0x1.ce9da6a1e10dep+28
-0x5.36c7b2a139168p+188, 0x2.17bfa02d08afcp+724
-0xc.12d14dc2762cp+880, 0x1.310d308201d6dp+592
-0x2.bf79a9dd664f2p+524, 0x1.86f734d98e336p-656
-0x1.3c9f682a4ba58p+88, 0x1.8f85eb09cfc9cp-828
-0x4.a399c75def23p-960, 0x2.b4d0dce1da9bcp+664
-0x2.92d2da0fa44dcp+460, 0x2.afe026630c358p+292
-0x1.329a26a06bfc6p-836, 0x1.3dbb1169888b1p-704
-0x5.58d13cbf02864p+336, 0x4.edc53cfc2c038p-1040
-0x5.2c5976335c2b4p+304, 0x5.1924523b61d04p-76
-0x6.a0cee90336cb8p+492, 0x3.3914e22cc9d98p-264
-0x5.b4a291a0804d8p+924, 0x9.36e41234299bp-640
-0x3.20de4ac4786e8p+1004, 0x2.ccde30990bba4p-868
-0x1.ab7cec250013ap-428, 0x1.b9a9b5919516dp-344
-0x1.875f445637d72p-108, 0x4.63b5957f961a8p-728
-0xb.5d0330145432p-780, 0x5.408ed43c8e5cp+664
-0x5.2438018ea3a58p-472, 0x9.4a84f86da354p+652
-0x7.72f18ec491888p-492, 0x1.3331f25383814p+156
-0x7.7dcef653e4874p-928, 0x1.f4151e4719c26p-92
-0x1.212156368d704p-540, 0x1.5f542034797e9p+840
-0x1.3f8ca43e5b666p-244, 0x8.668b7b8012e3p+876
-0x1.d9e9a8524d717p+428, 0x9.0bc4e638d9c1p-36
-0x9.c07f91c0985bp-648, 0x3.291e01b81f474p+860
-0x2.af8605cee03d8p+88, 0x1.eaeb5c03368dcp+968
-0x8.01283a1c6c51p+620, 0x9.e3322da8f1b6p-832
-0x2.40528c7551aa2p-792, 0x1.f8c2e2f89a138p+552
-0x6.1bb4ad46dac9cp-516, 0x3.2a19917dba274p-504
-0xd.0098d3af3d23p+976, 0x1.906c30ecb5d84p+220
-0x2.36d68cdfbb2ep-176, 0xf.4f3019984a7ep+464
-0x1.fc5c7ecf4bd47p-712, 0x1.9618668d15dfdp-460
-0xa.f06d70b95351p+64, 0xe.8649783f745p-356
-0x7.59874cb1d6a98p-292, 0xe.a5ca6a1006f4p+996
-0x3.4cf49b29fe33cp+848, 0x2.d40be94e2c0d4p-276
-0x8.7665c42d24abp+196, 0x2.4dca94d4649a8p+684
-0x3.36c7ef01bb74cp-272, 0x1.137bdf47da448p+592
-0x1.fb114d861e46p+84, 0x1.eff2dedbe3a0ep+280
-0x8.ecd3b57973p-172, 0x8.0c87b303c7c48p-948
-0x2.1b3a6347dfc52p-932, 0x2.950ad07097a9cp-592
-0x1.a2c2c251b8791p-88, 0x9.9048e2ee0c48p+44
-0x5.0195e1227288p+996, 0x1.53430625a99dep-72
-0x1.bb256f33a2928p-1056, 0x1.111181fd387d6p+44
-0x3.4a8bd1614f92p+876, 0x1.711da46412e06p-952
-0x1.bfce6df0b8c3ap-200, 0x1.9ae0427ca101ap+672
-0x7.e108b54ac316cp-996, 0x7.762d2664d9308p+680
-0x1.af5ba8dc2a986p-632, 0x1.f755a142bd03cp-536
-0xe.5e1718c8f278p-996, 0x8.ed350005edc3p+444
-0x2.bf96653a1ae4p-540, 0x1.1b760ff00cf35p-728
-0xb.d99fbe5bc9a2p-904, 0xb.bc792cccc763p+388
-0x3.8791717b4b732p-552, 0x3.60bb7d8a9507cp+252
-0x4.e1181e8a3e6fp-896, 0xf.3149c8905db8p-24
-0x5.3a685435314c4p-776, 0x3.cba1e6f66d7f4p-440
-0xf.fc3f3b0f3613p+1000, 0x5.81d6d241045ep-588
-0xb.5ecb27592451p+624, 0x8.12f22be7539bp-804
-0x3.c9bada3c5d85cp-876, 0x1.4fb8562419378p-552
-0x4.8ffde17365bfp+948, 0x1.4c946f1f25d4p-100
-0x4.764e1ddcf9738p-120, 0x4.05cf0f0ae5794p-316
-0xd.abbf56bce609p+996, 0xd.cddbb5ebc80dp+412
-0x1.037c3be04f858p-900, 0x4.db9c734a6703p+228
-0xd.85003f403e2ep-652, 0x1.4b2c61e9f3b74p-1036
-0x6.f1103d861794p-272, 0xb.3c0aa3106ef7p+848
-0x1.a2ae87100cf83p+552, 0x6.a1a5eb07b0f88p-180
-0x2.f2683a37d210ap-284, 0x7.0dfe2b55d662p+844
-0x3.d60307bdf6928p-892, 0x2.fdf9526c9c592p-432
-0xb.0258f83ea6f08p-744, 0x1.dc0fc9c12c11ep-868
-0xb.3c5d152152eep-88, 0x1.1d742b6849eafp-764
-0x7.1fe2d9f87546cp-884, 0x3.e31aee915002ep-608
-0x7.fd90ef744b3fp-984, 0x1.a254b20cc44ecp-620
-0x8.b7cc4830f22a8p-916, 0xf.f2d3141573eap+368
-0x6.02a3c5d1a255cp-1060, 0x8.d2e0d38b1504p-804
-0xd.eab105cefe1bp-440, 0x1.565224b3708f3p+524
-0x6.547f9d75ee9cp-1056, 0x3.76aee96ac78fcp+908
-0x2.ee60ac28f8074p+636, 0x2.94491dcea838cp-192
-0x3.3adfc727517c8p+488, 0x8.34e253705e4ap-1064
-0x1.cdba2cd5f54bap+300, 0x2.822fc10c598c4p-688
-0x4.fb4a4547d10d8p+336, 0xc.ea8a3e77261ap+184
-0x1.635bebc53307cp-532, 0x1.aeae6ade0cd9ep+616
-0x3.a4690af97e544p-1032, 0x2.769a69438c574p-184
-0x8.ab9bb10f6ea9p+528, 0x1.25d8fded0dc8p+924
-0x4.370d3e4b080b4p+436, 0xd.8cb2725e33ab8p+708
-0x1.4895e320f2ba6p-796, 0x9.fc41d5c8264p+908
-0x1.93519b573032ep-688, 0x7.10d1859ace57p+872
-0x2.4a7f9c4b0c49p-316, 0x1.a8d4608ae427ap-256
-0xb.3648e80a18edp+864, 0x3.0a5476e2540b8p+40
-0x1.4a7ddc8bc4a5ap-512, 0x1.78ac8ee74060ap-836
-0x6.da4cf3bb04f6p-12, 0x3.56b3ec00c8be4p+128
-0x5.15fac5363c22p-324, 0x2.7c5282d1fc73ap-852
-0xb.fb4b0ff4207dp-436, 0x5.b4a041f55e6ecp-356
-0x4.160de27a7f308p+808, 0x7.c6916a8d28f7p+912
-0x5.4b808a97688ap+972, 0x3.794b29b89aeacp+156
-0x2.7b1f447480b1cp+244, 0xf.32799349a89ep-1000
-0x8.9313007aac898p+208, 0x7.06de7da0ddb48p-200
-0x1.1184c8ad9a126p-628, 0x5.d2675abc93d3p+564
-0x5.fbf4481d851bcp+920, 0xa.d98a5055796cp+448
-0xb.1b13e17851f7p+920, 0x1.5f601cadbee55p+216
-0x1.36c695c4cebdbp-672, 0x3.e3179a9c0c8b8p+440
-0x4.24f5c2e84255p-132, 0x1.992dce8c1e0dep-608
-0x7.05211b2d7ba24p+816, 0x5.2dbcb400c2388p+732
-0xc.ebb82790e2248p-944, 0x6.a6cac5abe71a8p-912
-0x7.635a189c3559p+1000, 0x3.1c79ce8a6193cp-596
-0x1.bc16a5a664943p-212, 0x3.20fd587384e74p+268
-0x1.d8f5f5909a6c1p+64, 0x1.95b5cd4f321fdp-1048
-0xa.b514a9fc49ddp+904, 0xe.ac263d7232738p-732
-0x3.361c4740c546ep-592, 0x2.af93343887774p-288
-0x3.a1d706acac868p+548, 0xe.ef9cd2dfde13p-1036
-0x1.a3b3fd7de4ff7p+836, 0x2.9bd52c1afcb82p-328
-0xd.0e90419468fe8p-296, 0x2.debd029d76ba4p+712
-0x1.e7213b32b5402p+172, 0xc.75424ccca583p+736
-0xe.7be0fb216e87p-460, 0x1.41db2e8111782p+428
-0x3.1aabdc370a068p-740, 0x1.3d8d947358a84p+892
-0x1.d635a72fb8fa4p-328, 0x2.ee43757ccee5ap-76
-0x1.97b79a8db9647p+128, 0xe.d6e29c7d3d4fp-264
-0x1.7d2e32005ea32p+792, 0x1.f6c07f3405953p-964
-0xb.c1090d1777fcp+116, 0x4.0cbc9f20f5868p+720
-0x2.f16763f5629b4p+252, 0x2.a80e582ad9988p-864
-0xc.decdbb8bab228p-256, 0xb.722a51742a158p+444
-0x1.4a3ad54b20ec7p+448, 0x2.38b64c86b64fcp+344
-0x3.4673778d461ap+444, 0x2.a91e0f1d2906cp-852
-0xd.b85beacdf9fb8p-1076, 0x1.e95f7bc0cbe98p+496
-0x3.868f7c7983b64p+248, 0x2.484503e75957cp-788
-0x3.1996b58c96adp+32, 0x7.2b7913eb78608p+304
-0x8.d92b03868e09p-332, 0x2.0cc4e23c8a95cp-740
-0x5.16192b7bc5c7p-152, 0x4.3b6301a285b44p+88
-0xf.01312df862fbp-156, 0x1.d8d9015062fbp-484
-0x6.bbf185b1a72fcp-176, 0x1.1448c90b9b50ap+212
-0x2.fb1b827ddbefp-1004, 0x6.2b91442df1d88p-252
-0x3.eea265be0ed6cp-420, 0x1.6979a53a58ed4p+132
-0x2.76f29ff09ef3cp-324, 0x2.9bb80577b9a16p-496
-0x1.8315bf29b818ep-60, 0x1.962a17b47f4f8p+984
-0x2.b5951a0514674p-1040, 0x4.54fbcbcf940bp-148
-0x7.373eb0cadbd1p+408, 0xb.9637578014a48p+560
-0x3.2855b79dece44p+700, 0x3.dd621596b99f8p+248
-0x4.6715c08b31328p-408, 0xe.79ffaa58e533p-100
-0x3.51b70220ed1c8p+968, 0x1.e64c4e91741bep-1016
-0xf.562b84bebcbe8p-8, 0x3.6bcda9a68b198p-656
-0x3.e0365420f27dp-216, 0x5.0a67f41cfb218p+392
-0x5.6fab6994774fp-288, 0x1.008fdd33f16e4p-824
-0x1.dada3414222bfp-252, 0x1.118f230a197bep+596
-0xf.235346f7623ep+132, 0x1.4731a69ab5b1cp-968
-0x3.b6aa8e01e416p-828, 0xb.41acde26ef6b8p-320
-0x1.2002025daf3ecp-1060, 0x2.e6a265193f8acp+528
-0xf.0e1568e6b60bp+124, 0x1.770d6c170e6fcp+920
-0x3.9cfe68e8dbd38p+400, 0x1.f0ea46487d9eap-76
-0x7.356ed29fbc3b8p-92, 0x7.66273cf04d1cp+16
-0x1.83b4513ed8c6p-692, 0x1.6e5c994cbd1fcp-4
-0x1.c093172db7058p-832, 0x9.0020ecd425p-724
-0xc.4b9d43cdab5p+144, 0x1.9573c014b1d7p-600
-0xa.6c962c159cadp+700, 0x2.516f8ea4dc66cp+832
-0xe.e9ef5bc90ef8p-472, 0xa.ceb95c116a96p-956
-0x4.7a82cfa181bf4p+376, 0xd.3ba2895aaf3f8p+912
-0x1.3e6919507aad8p-748, 0x7.ac24d06cae4fp-604
-0x1.a5685b67d975bp-760, 0x8.bec479de0814p-676
-0x4.c17fa429c727p+304, 0x7.a076dc1c58ea8p-436
-0xd.3a60dbe676ap-436, 0xb.d7fd3ecfd0bp+700
-0x1.6db05819a731ap-316, 0x5.cbaa3f9d708c8p-708
-0x7.a4e9fc600f39p+784, 0x2.78bd5a2fdeedp-256
-0x1.a51f975bebd49p+648, 0x4.6f1b9792ef23p-1016
-0xb.426a826bbb2ep-956, 0x2.2988e40c021bap+336
-0x7.0ad681674d404p+996, 0x3.5110f12201184p+704
-0x3.508cc1e3fe9cep+428, 0xb.e4f3b8257906p+916
-0x2.3d25bae6cc2b6p-712, 0x3.4476b6d116f18p+8
-0x7.668519e5f4c9p+488, 0x1.23b90f6c8af84p+716
-0xc.ba04649c24f5p-428, 0xf.6aedd6061b5p+300
-0x1.7acb043cd5646p+608, 0x3.0529459ad31ecp-520
-0x1.ab2a61b2e713cp-160, 0xd.d492f30ffbf7p-1072
-0x4.55c81a7d97b6p+776, 0x5.902573c115b78p-972
-0x3.3a1a658e23dbep+940, 0x2.920d0560c389p+476
-0x1.859b54f3394cp+192, 0x5.6cc1bb97f343p-908
-0xe.35e05bc94c85p+436, 0x1.67c0b3f3c1b8fp-676
-0xc.4689b97a58bcp+76, 0x1.11d2bf21c7811p-120
-0x4.a90ad7df9b808p-668, 0x1.145d33272f345p+480
-0x1.561915b868afcp-140, 0x6.7fcdf4d0b775p+312
-0x1.4d2e2df9ac4dap-652, 0x5.0a41f0e20f4bcp-148
-0x1.b5f7cddb382b6p-188, 0xd.963007bf1aebp+396
-0xc.327b046ba01ep+672, 0x1.664e6e62b266ap+548
-0x7.d1e0f4d973504p+552, 0x1.0960ca9ead237p+932
-0x2.b833874ecc5bcp+784, 0x7.7728c825e3ea8p-744
-0xc.ed74b52461008p+528, 0x2.ba337c4d266c8p-460
-0x1.8b1c17b4f0aa6p-800, 0x5.7181457aefe58p-1032
-0xf.b093234a9ae9p+444, 0x6.d51e72d5c9cd8p+96
-0xb.41312f6979af8p-640, 0x3.d4a1e6e4572a8p-1044
-0xf.d1d26136ff42p+608, 0x5.4e28377ed1438p+960
-0x1.baed27235cbf9p+396, 0x5.7f36a96247738p+716
-0x3.1908f44f9e5acp+36, 0xb.e287b22deb6c8p-200
-0x6.c85649ece8328p-888, 0x5.10954872d83f4p+344
-0xb.7289d369ebe9p+480, 0xb.364fe986b507p-1072
-0x1.b60b18e72b616p-356, 0x6.96322cdcb805cp+188
-0x1.18044a2c3524ap-732, 0x7.1cfeb6c32d9e4p+196
-0x1.dd49ee2511f12p-548, 0x6.388cb280c1acp+540
-0xf.4637e82f032dp-188, 0x1.ea525d4f26b2ep-652
-0xc.8ec2fcbc89b7p+428, 0x6.afb3dfab45148p-312
-0x5.96c4b2f3e046p+868, 0x1.4fa64194d6737p-484
-0x3.cc2935c1d7a98p+132, 0xc.b9132c3b7e03p-364
-0x4.708b4d5c3e08p+400, 0x1.7dead4481cddcp+620
-0xf.4ead78490959p-428, 0x5.881eeff3cd02p-888
-0x3.8f93c36ea7528p+588, 0x6.e489f741b446p-656
-0x1.29623281e850ap+840, 0x3.f4d2e10f895fp-960
-0x7.f6dd2ff29fbb8p-688, 0xd.fb27c57cb34p-764
-0x3.28b3c0e41db9cp+444, 0x3.15892f3a16c1p-844
-0xc.c480dfe091668p-276, 0x4.d2571cfec4c58p+100
-0x2.4811362cc7124p-240, 0x2.dff54b843ae46p-756
-0x3.0da93c4715cd4p-92, 0x7.9c15ce00c77e8p-656
-0x7.f0dcddebdcd28p-868, 0xc.599ea43e2bbfp+220
-0x1.95a25ee7268b4p-912, 0xd.5ff365717f9b8p+276
-0x1.d560268d06079p+420, 0x2.4a263345196a8p-444
-0x1.079c47420a4dbp+560, 0x1.889f112d42453p+528
-0x7.cdf64073ea828p-76, 0x1.a0731fb5ffbc7p+32
-0x1.cfbe77eaa2a21p+940, 0x1.b6b012b005f6p+348
-0x5.def2a0248482p+816, 0x8.4f2da16827fdp-964
-0x1.90d5cc6c42498p-836, 0x3.7a22e7d59ea44p+816
-0x7.7570d2255b48cp+880, 0x6.ac05601176dbp-52
-0x8.95762dfa20adp-668, 0x3.aadf1a1ec4d18p+620
-0x2.fe1bc76a8c23ap+804, 0x2.88575bc0e4228p+64
-0x6.a0747031aa078p+872, 0x3.c1d01466fbf04p-952
-0x5.d87619363c04p-552, 0x4.70bfee674c9f4p-56
-0x1.b7ad68c381dd6p+928, 0x6.6e6a652b37158p+676
-0x1.f359ac732fc26p+288, 0x1.3c34074a8b2f8p-576
-0x2.7eec8890eb218p+144, 0x3.0a6e6d2517c8cp+280
-0x1.7c560c66a0a33p+276, 0x5.e14a1a2c23d14p-928
-0x2.29faf3f3ce9fcp-424, 0xa.953da4f876c3p+644
-0x1.e0823670155ecp-976, 0x5.e7be0f4d7e528p+176
-0x4.180d0f133e86p-956, 0xd.a2e35bc12ca8p-1040
-0x5.684c626aac24cp-204, 0x7.c5a5208f02d88p-732
-0x6.2fe3b9265349p+420, 0x3.5173ac781fe2ep-456
-0x2.aaba7a32c624cp-1060, 0xf.0a4837afa4dep-1076
-0x1.3c709863adb35p-364, 0x3.afd3e4f32ce52p-488
-0x5.7d5d9b5bddbb8p-1024, 0x3.a8a95f0b8b908p+280
-0x2.ba9daa70bd824p+708, 0x1.b74b9a90b6648p-656
-0x3.7a020765d7c44p-948, 0x2.d653a91e7547cp-760
-0x3.cce03bc79c0bcp+568, 0x3.874dd663697c8p-796
-0x2.93a71bf03bb68p+508, 0x9.3d2d628dc54e8p-88
-0x7.3e572337c45d4p+756, 0x3.3562fedc22274p-836
-0x1.ad49a2d117ba2p-888, 0x4.d076d3f4d9f34p+908
-0x1.a502a91351ff4p+348, 0x1.ee7be9cf93b3fp-124
-0x3.140093828b04cp-456, 0x9.d96849890b3ap+152
-0x2.2b809e1cdae6cp+976, 0x1.96430f46ddf6fp-896
-0x6.0b6b1e6f695b4p+880, 0x3.2710f27541992p+520
-0x6.3e9355fdb6dp-1020, 0xb.6795e26664be8p-844
-0x3.bd080a5791b2p+164, 0x1.d50ef4fe9ebb5p-468
-0xd.603b36a4c0f1p+652, 0x4.5bd4964d0f5c8p+940
-0x3.efce09ef1b4cp+1004, 0x5.58274e481b0cp+776
-0x9.bdb3926c2739p+592, 0xd.693f7ebb888ep+60
-0x1.45fda30c0c696p+964, 0x7.7ef981c0fac2p-312
-0x5.3903dc26ea74cp-936, 0x1.6ce6a22a9cc4p-884
-0x6.efe370ccbcc4p+772, 0x3.2a68e91d4d908p-840
-0x2.e8b91189c5a9cp-352, 0xa.affd373c131cp+72
-0x1.92e29687b8ba7p+852, 0xa.70b2724980788p+232
-0xa.c7e8553edfadp+916, 0xa.5da5437b9d42p-272
-0x9.807fc42aac07p-600, 0x8.866c80721372p-724
-0x3.98e91636f5084p-436, 0x3.f5f1a1922718ap-220
-0x2.7442ad2df0302p-832, 0x5.1bc80305b26acp-248
-0x1.8e66eb2b69bbcp+44, 0x2.c1fdc734c50e8p-940
-0x5.0de13a7bcaac8p+808, 0x5.493bbe67104ccp-344
-0x9.cc1fcf2dde7f8p+840, 0x2.aa6a8273978cp-208
-0x1.c2895ee333becp+460, 0x1.ceaf6635b0b8p+668
-0x3.fb6fb365e2ce8p+868, 0x1.a03d232d45996p+344
-0xf.0ae3f7ac9bedp-172, 0x9.98a156749b26p+384
-0x3.204fdf620703p+412, 0x1.629b90983dc36p-1012
-0x2.e30666494ac98p-216, 0xa.89da8ae9e5528p+212
-0x7.a17a32efd3c34p+660, 0x8.0cc4f4756028p-428
-0x1.31ee8aa18dae4p+728, 0xa.99a88028a213p+484
-0x1.a45b87b0bb4cbp-844, 0x3.fa28793e4185ap-260
-0x1.7b04390e5b62p+684, 0x1.66153c838d268p-752
-0x9.f73b5d2f6777p-1064, 0x7.dedccbf89985cp-356
-0x2.926816c87d8c4p+836, 0xc.bba0f8c0d84bp+168
-0x4.1334094679d34p-212, 0x5.19ad2f924736cp+280
-0x6.aebd3868bdfd8p+464, 0x3.ea24e1cd3f29p+264
-0x1.1f0fb4a6d9b96p-544, 0x7.1f1404514303p-24
-0x4.6ee2397edec14p+48, 0x1.97401a620ba56p+732
+# Random inputs in [-10,10]
+0x1.f742cc57e9f5p+1,0x1.cc346c467d654p+2
+-0x1.5d01ec4ee9238p+2,-0x1.423e905baeacp-2
+0x1.447937c198cbp+2,-0x1.fc8c1ff66dbcp+0
+0x1.4b5b54c1da1ep-2,0x1.f21febb5e4d14p+2
+0x1.0e8fff7889ap-2,0x1.6f2f6bb33976cp+2
+-0x1.e6ca1f7793ap-5,0x1.68924f7287b2p-1
+-0x1.23dda89660a2ep+3,0x1.c8880fe734f4cp+1
+-0x1.c96ac31d537d8p+0,-0x1.11146def3adcep+3
+-0x1.c08016e94f68ep+2,-0x1.39259b820ac3ap+2
+0x1.849920469a0ecp+2,0x1.1a8b9c5dee166p+3
+0x1.1a56404dd2326p+2,-0x1.c6c5634f83cep-1
+0x1.49513cd3c51cp+0,-0x1.03c3e869616bp+1
+0x1.fd99e93450bfp+1,0x1.7d2761317a728p+2
+0x1.0c40c1833d0bcp+2,0x1.3b21f8642dap+3
+-0x1.e812cfb85e5b8p+2,0x1.bda59c422bc3p+0
+0x1.0612e8bfc46cap+2,-0x1.3dc12e70c95d8p+3
+0x1.ae62a69b859fp+2,-0x1.1c6dbf63a53f2p+2
+-0x1.081b5a7805f4ap+2,-0x1.e1b905858f7p+1
+-0x1.9c17f482ac09ap+1,-0x1.21d1da0dbfb4fp+3
+0x1.9526e4f30e788p+2,-0x1.d62199525f138p+2
+0x1.d445ef0fa47acp+1,0x1.b85b78f59ca84p+2
+0x1.d71b6cd64c9p+0,0x1.28477cd0f0284p+2
+0x1.f752af23803fp+0,-0x1.23bb8ebef0598p+3
+0x1.1a812a8d4439ep+2,-0x1.98efcae81f84p-3
+0x1.c0efa894d87fp+1,-0x1.71e24795900f8p+0
+-0x1.23099788d5b69p+3,0x1.886da6786da8p+2
+0x1.724a39c43f96p+1,-0x1.1f7635e746468p+3
+0x1.3459e2d4f6cf2p+2,0x1.3c861cf60afeep+3
+-0x1.24b08af646766p+3,0x1.04749a4f7412p+1
+0x1.401a796c3d38cp+2,-0x1.4a385d23b412p+0
+-0x1.8a3dc9fa0615ep+2,-0x1.7b9d750ad4e7p+1
+-0x1.39904d223bb8ap+3,-0x1.6443f53ae26f8p+1
+-0x1.cfd6d03f2a5dp+2,0x1.51e236292037cp+2
+-0x1.dc8bf59e47af6p+2,-0x1.b6c21495c538p+0
+-0x1.b7e4c9d0b4f18p+2,-0x1.3a075f19e66d1p+3
+-0x1.c8185a9d27ebep+2,-0x1.32730e46ba36ap+1
+0x1.aff50d1e36a2cp+2,0x1.061f80ba53442p+3
+0x1.92e2f4dae7ae8p+1,-0x1.3e09e21d9856cp+2
+-0x1.7eabd56951e6p-2,0x1.703b0d710771p+0
+0x1.5785225ef4ad4p+1,-0x1.f61d71490a26p-2
+-0x1.1e101eb27805cp+3,0x1.fdb956bfb5decp+1
+0x1.2e61f0bfe2ed8p+2,0x1.a289d09fa83fp+2
+-0x1.5b09db18c2ef4p+1,-0x1.ca71e22ab339p-1
+-0x1.65a0f88166f98p+2,0x1.f59d8d6dbad1cp+1
+0x1.1182191c2cd08p+1,0x1.3a8abeb1a808ap+3
+0x1.ecec7bbd9c6c8p+0,0x1.fc5b316696384p+2
+0x1.b83254796f87p+2,0x1.8fdf53a886d1cp+2
+-0x1.582f4829e1fd8p+1,-0x1.223f1362738bbp+3
+0x1.7ec419a4965p+0,-0x1.a0b1fa80a0b6cp+1
+0x1.1a22072922aep-1,0x1.277501c46270ep+3
+-0x1.d084c96cc9d48p+1,-0x1.d858966082586p+1
+-0x1.125c52ff3ba5p+3,-0x1.d2a904c8c1bep+0
+0x1.dfae8bfcced74p+1,-0x1.99245060534bp+1
+0x1.3d5e7ae8bf826p+2,0x1.13c3672438302p+2
+-0x1.5ab1e854f31a8p+1,0x1.b48fe5647346p-2
+0x1.78865e4bc5cbcp+2,-0x1.246a158c9bf24p+1
+-0x1.cfd68395f1b1p+2,0x1.2fafed8905582p+2
+-0x1.3d0f83a0552fcp+2,-0x1.5ac26ebea4984p+2
+-0x1.153b7ee90357p-1,0x1.6c01e380da828p+2
+-0x1.d1ee4d60f774bp+2,-0x1.86a8799327cacp+1
+0x1.2023bf972e944p+2,0x1.3db945ce5caaap+3
+-0x1.216d35727b898p+2,-0x1.58e43ce9118ebp+2
+-0x1.f3fd4fa982604p+1,0x1.690f01192da54p+2
+0x1.0acb0fbe85456p+2,0x1.98cc392c368ccp+2
+0x1.bc961007d46ep+1,0x1.1ea736b5e5358p+1
+0x1.b5eb9d31c18acp+2,-0x1.0a8e1a935be38p+0
+-0x1.abc45f4f1be0ep+2,0x1.89db546be92ep+2
+-0x1.29bb55f58e03bp+3,0x1.3811c8acdfe3ap+3
+0x1.ef93fbe5fa34p+0,-0x1.2e2ce402d1aa8p+2
+0x1.05467a4d6e0a2p+2,-0x1.76e39dd1e5f14p+1
+0x1.2e3264c8299p+2,0x1.cc7bf5fe143ap+1
+0x1.1293a7834b684p+3,0x1.9e76b78c2d0ecp+1
+-0x1.10b0d73c493e1p+3,-0x1.3a487fac3384dp+3
+0x1.330fe7244d2dp+2,-0x1.09f6779349a54p+3
+-0x1.85d712a93543ep+1,-0x1.cedd551ac0f86p+1
+0x1.3a20a70d063fap+2,-0x1.7a796b5b9624ep+2
+-0x1.11a3c9657e79p+0,0x1.5f5b15005ffc4p+1
+0x1.b478b8720aec8p+1,0x1.1991856af25f8p+1
+-0x1.3a2ccfaa978eap+3,-0x1.171e56de0f193p+2
+-0x1.d807a875eeeaep+1,-0x1.cb98f0af4de62p+2
+-0x1.0c1873ed245afp+2,-0x1.ca532140eabacp+1
+0x1.2ef351aaa2658p+1,-0x1.eaa5a107def96p+1
+-0x1.32602dc6a84e2p+3,0x1.1677c1a1047cep+3
+-0x1.6df255dce374ap+1,0x1.37623cd8fc3cap+2
+0x1.10a3c89b5258ap+3,-0x1.a242fbde89698p+2
+0x1.2cac6be306ddp+1,-0x1.124b3e06462fep+2
+0x1.0a8f0b10aa8b6p+3,-0x1.f09a5f0086cbcp+1
+0x1.f86b2fa15348cp+2,0x1.b56cd23e60b8cp+2
+-0x1.639fd08cb9604p+2,-0x1.4777d334f44b2p+1
+-0x1.303413b850d1ep+3,0x1.3736e6780b574p+3
+-0x1.2b00c9aefd215p+3,0x1.d663daea0e83cp+2
+0x1.c0035ac98261p+0,-0x1.7cc39f32c7c1p+1
+-0x1.46b364aad2c5p+0,-0x1.6629f1c5b2bdp+0
+0x1.b4741e0cee1p-4,0x1.ffcab017e8a28p+1
+0x1.ee0f374236ea4p+2,-0x1.7cabc352d11acp+1
+0x1.d654fbd415894p+2,-0x1.6eca85256db2cp+2
+0x1.11de4bc8685b8p+3,-0x1.0b81c389c17c5p+3
+0x1.29d614f8d828p+0,0x1.3052a24757d58p+3
+0x1.227f065a5a248p+2,0x1.c5a52b5a5f1ccp+2
+0x1.91927babb92f8p+1,0x1.02786ea2aa288p+3
+-0x1.0806568d3e273p+3,0x1.2a29496bfb74p-3
+0x1.f69babd4f1aacp+2,0x1.bd483d2ec635cp+2
+0x1.07ad268eb4248p+3,0x1.ad35f6f67156p+0
+0x1.a17717578d8cp+2,-0x1.bd61f14fc0626p+2
+-0x1.e9152e58893ep-2,-0x1.17e6be3eb4111p+3
+-0x1.3b06271914ap+2,-0x1.18738aaad926p+2
+-0x1.cb88bd875e246p+2,0x1.f1535d57ee42cp+2
+0x1.4f99b77e8f25p+0,-0x1.00cad35e4cf89p+3
+0x1.7147d94fd60b8p+1,-0x1.f75574f9599bp+2
+-0x1.5cea69cb86a24p+2,-0x1.803d779b22ab1p+2
+0x1.9288f3483c0b8p+2,-0x1.3345c8595d701p+3
+0x1.c09364d00a454p+2,-0x1.84ab26261805cp+1
+0x1.78d3fa5300544p+2,-0x1.a3ccfbecd711p+2
+-0x1.ede689c77fde2p+2,0x1.622c3c8c79c38p+2
+0x1.eaf13ea9bc688p+2,0x1.6265f1bddd1f6p+2
+-0x1.50180edeb9606p+2,0x1.c0f690de232fp+2
+-0x1.35ed34789c83p+1,-0x1.ea87f3ddbc9fp-1
+0x1.7ff7336117f1p+2,-0x1.2d09d167b5f28p+0
+0x1.e7fa929e12a74p+2,0x1.099a1acf96e1ap+3
+0x1.f52387301d7ccp+2,0x1.c8e382cf7bde4p+2
+-0x1.0c180ffb5aa2ap+1,0x1.04fce9df956cp+2
+0x1.ed1db16c603cp-2,0x1.ca317b3eb122p+1
+0x1.771d9e40fe8b8p+0,-0x1.c4c183352b234p+1
+0x1.aeafa6f2e08ap+2,-0x1.1acb93b3a4a8p-3
+-0x1.61df618782476p+2,-0x1.33f57a66fb499p+3
+-0x1.aa2d63e0c7bp-5,0x1.6743838e6d698p+2
+0x1.3aed486464bb6p+3,0x1.0f8f6c79277bap+3
+-0x1.0c6a78081863ep+3,0x1.0f541d2850ba2p+3
+-0x1.2df1ec1c920ap+3,0x1.daa2cf64c94fcp+1
+0x1.fc61cd2eb64ep+0,0x1.52a6ead046138p+1
+-0x1.3c661312e74c8p+0,-0x1.e9f28bc8dca08p+2
+-0x1.3c1fecf28dc25p+2,-0x1.a0c1ed88bd0b4p+1
+0x1.a1cec18a5e2fp+2,-0x1.09d1417bf1972p+3
+-0x1.78f266710ced8p+2,0x1.1e57e0d2e63dcp+2
+0x1.e60669c2ca6f8p+2,-0x1.625d8fb86f166p+2
+0x1.a3630108a1804p+2,0x1.3cc218a08a7b6p+3
+0x1.2cfce0060b5cep+3,-0x1.2db60da10ca61p+3
+0x1.8fba9cbd26528p+0,0x1.156ef1af3308ep+3
+-0x1.d7a33b771db0cp+1,-0x1.085d3678af70ap+2
+-0x1.06a92d24663f8p+1,-0x1.462a5f18a4fep-1
+-0x1.270deda6ee198p+0,-0x1.10bb21da4e1e2p+3
+-0x1.dcda095657624p+2,0x1.0be71163b8c3p+3
+0x1.27dd7a325592ep+3,-0x1.dce20c2d96c8p-2
+-0x1.75dda612aa49ep+1,-0x1.1dba913a9153p+0
+0x1.4d9c6f6091f2p+1,-0x1.74e67b9849a28p+0
+-0x1.77a1fc17df7fep+1,0x1.811983b6bd6ap+0
+-0x1.c15f22906526p+0,-0x1.277e69039ff2p+0
+-0x1.eafd7f17a036p-2,-0x1.0ba372c6e4bd7p+3
+-0x1.3926a4e205c47p+3,-0x1.8128e7b102764p+2
+0x1.1bb2d9b04e7f4p+3,0x1.2828da3c973fp+2
+-0x1.9c8c20fe0f26ep+2,-0x1.189e5b17df9dap+3
+-0x1.02b89c553b134p+3,-0x1.fc38e6844e6c3p+2
+-0x1.3a0c526da64dp+3,-0x1.c30b7e4a8dfcp+2
+0x1.f8df03d230fcp-1,0x1.1a759cf6201e8p+1
+0x1.89f425deee0b8p+2,0x1.4db6ef10e77c4p+1
+0x1.d3c456eefebfp+0,0x1.907e8946102p-4
+0x1.0633be70f848ap+3,0x1.58093c0535a4p+2
+0x1.bfac15c7b14b8p+1,-0x1.73a163897cc3ap+2
+-0x1.3cc9108a62a3ep+3,-0x1.6b783a991bde8p+1
+-0x1.07e03a82a771p+1,-0x1.836043d5f6234p+2
+-0x1.f9f1dd76c293p-1,-0x1.78a022b81c1bep+2
+-0x1.67e43f3951e49p+2,0x1.b2bcd50e1e33p-1
+-0x1.62953ffe5951cp+2,-0x1.099043b8fab18p+2
+0x1.311e982e1a70cp+3,0x1.2cdc322de80a8p+3
+0x1.4aae98ed1f2cp+1,-0x1.c7988d34f2492p+2
+-0x1.ba0f626194aep+1,-0x1.730fb7c521c7p+0
+0x1.3a86a9712cc4p+2,-0x1.27169ff01514p+3
+0x1.3b50875e6d6d4p+2,-0x1.c9c07fe71c458p+0
+0x1.0d5ecf140c114p+3,-0x1.1ca6a403d7d18p+1
+-0x1.3c942bd533135p+3,0x1.3aee33e79f508p+1
+-0x1.2d1fe90053b2p+1,-0x1.b1dd854bf7cfp+1
+-0x1.52cb97cf934cp+0,-0x1.1328c5d8cdf22p+2
+0x1.27fcb9b8ce942p+3,0x1.bb9c59e63ae9p+2
+-0x1.c998d246fda76p+2,0x1.696a8b33956dp+1
+-0x1.040d0d6cdda0fp+3,-0x1.3936b0734a59fp+3
+0x1.36fc696fc7184p+3,0x1.23eb47bb42a5ep+3
+-0x1.d652564e6df6ep+2,-0x1.4cdb9ab269a66p+2
+0x1.e4e7b24483fa8p+2,0x1.44f41e1de54dp+2
+0x1.aaf09ab780518p+2,0x1.af9764da704p+2
+-0x1.3e7e1dc78af58p+2,-0x1.1922eabc95346p+3
+-0x1.5bf8653976adp-1,-0x1.30a9d6ab8c5ap+0
+-0x1.bb8fd6a87c21p+2,-0x1.688362c5a75ep-2
+0x1.3203d47790edp+1,-0x1.d9f82918bb9f8p+0
+0x1.0289d1574f2c8p+3,-0x1.8d627ea0714fcp+2
+0x1.00d78548b5844p+3,0x1.b8736cb122448p+0
+0x1.d14760d4f9fep-2,0x1.3b0940fe0cdap+3
+0x1.17f0836af139ep+2,0x1.26572c72b667cp+3
+-0x1.e53c8738e62a2p+1,0x1.72f77c8ce015p+1
+-0x1.897b4bd1b631p-1,0x1.2d3c77e14013ap+3
+-0x1.43ab6665c0c98p+0,0x1.2a326075c2cc8p+0
+0x1.47cdae15a4fa6p+2,0x1.5acf65bc77d4p+1
+0x1.00ff812562658p+3,-0x1.47801225244ccp+1
+-0x1.642735bbd536p+0,-0x1.5ffafb812511p-1
+0x1.1b076f7cf2874p+3,0x1.6d39eeb7706acp+2
+0x1.75838370b0ad4p+1,-0x1.1e3d55c9fd72p-2
+-0x1.fdfa0c84f3dc6p+2,0x1.c2771fd98cd4p-1
+0x1.99ddac9d36e4p+2,-0x1.a8404b769ed96p+2
+0x1.b47bfb33db008p+1,-0x1.a91ac6be24898p+0
+-0x1.c8376fccde6dp+2,0x1.3473bd843d2b2p+2
+-0x1.075fbcc8bd73p+3,-0x1.981b1f507982p-1
+-0x1.2d3a0c5f81986p+2,-0x1.0decab493p+0
+-0x1.81d042456fa38p+2,-0x1.2e9c7c5c38492p+2
+0x1.4b979736a0b5p+0,-0x1.c2dea10a51434p+1
+-0x1.327296a419878p+0,0x1.4d38b089e828cp+2
+-0x1.641dd2c6bd9c4p+2,0x1.297c6c71d300ap+2
+0x1.bf61dbc5054dcp+2,-0x1.24dab03b7c8fcp+1
+0x1.b112a33a5d4fcp+2,-0x1.736e86238a07fp+2
+-0x1.9777242fe4afp+0,-0x1.a0a44105c757p+1
+-0x1.34d7a9bda4004p+1,-0x1.e5f0d622a30e8p+2
+-0x1.1c45dc3c04af8p+0,-0x1.e91142b5e4419p+2
+-0x1.edab422290ep-5,0x1.dd29dcf9251fp-1
+-0x1.28623d42c1668p+1,-0x1.9f777bc948dedp+2
+-0x1.f38a2094fdf5ap+1,0x1.24dab8b7b604p+3
+-0x1.20ae862570655p+3,-0x1.ce628637f0b64p+1
+-0x1.3b4447691c02p+1,-0x1.ba5517b70efdcp+2
+-0x1.f820dd3a46cp+2,0x1.08043405579eap+3
+0x1.a28dd256c63p-1,-0x1.9ce2973e5b004p+1
+0x1.bfcf0d020f86p-2,-0x1.b737ee11d0984p+2
+-0x1.9eb587559189cp+1,0x1.6b6cf9b49b068p+2
+0x1.0369f292c33dcp+3,0x1.84dccc881bdbp-1
+-0x1.8eab0d4b28772p+2,0x1.6c7004e765p+0
+0x1.25a9b104aed5ap+2,-0x1.5e6870ac676bap+2
+-0x1.2d67d820c0b2dp+3,-0x1.a6d4ab309090ep+2
+0x1.1c6d71da2a9eep+3,0x1.13aae96a981p+3
+0x1.79d62a87789bap+2,0x1.cd35a4b3181c8p+2
+-0x1.50bb85135b314p+1,0x1.2219e3980c55cp+3
+0x1.ea79939c2327p+2,-0x1.047f6c79c182p-1
+-0x1.8f92aedf53cecp+2,0x1.64b9f73975f3p+2
+-0x1.30d583e911d95p+3,0x1.0676b69e2c9ap+3
+0x1.a63d1395f9a38p+1,0x1.b4fefa9647188p+1
+0x1.639f2a3f37856p+2,0x1.edd75f496c548p+1
+-0x1.06d9dc92e80b4p+3,0x1.27b26a563a09ep+3
+-0x1.9d2a4e927bd0ap+1,0x1.0ef78e5c14142p+2
+0x1.3593d693e4ecep+2,0x1.8911651a90d58p+1
+0x1.63060e5df8e7cp+2,-0x1.f704bce577c0ap+1
+0x1.13a55cf5d3296p+2,0x1.2114bee9eff36p+2
+0x1.3cfcf09ca5e26p+3,-0x1.41f4e5d539fep+0
+-0x1.cea27ef2c2a38p+0,-0x1.0f5bcd19fb328p+1
+0x1.7f09f66107128p+1,0x1.a603b6ff9da48p+2
+-0x1.30e350c69eef9p+2,0x1.f5d48045907c8p+2
+-0x1.a8e8aea85895ap+1,0x1.2bfce4000e2e8p+1
+0x1.c99aab780eabcp+1,-0x1.12c1329c9dbdp-1
+-0x1.a35ebdb56fd4p-1,-0x1.3df947f1afd0cp+2
+0x1.a1a4fc39ae3cp-3,-0x1.02e00a9c9c74ep+3
+-0x1.cc3f5e2059938p+2,0x1.3a55367f6186cp+3
+-0x1.1007968b9764cp+1,-0x1.1fe23019027a8p+2
+-0x1.30b21cbbdf1dp+0,0x1.22cde1483e2fp+2
+-0x1.3c5232ee44e9cp+1,-0x1.7699e69bfc50bp+2
+-0x1.3841ff489e206p+1,-0x1.61a6dea6fcba5p+2
+0x1.626efc6acc018p+0,-0x1.15348c9c8dfep+3
+-0x1.571f553f4d894p+2,0x1.380f99fc24268p+3
+0x1.0943839a49dp+1,-0x1.ae238586acea2p+1
+-0x1.86e1df2c8d4cp-2,-0x1.fd56b56a7b758p+0
+-0x1.dca1ab3e3dc5p+0,-0x1.b5565174dba2ep+2
+-0x1.2f05f83309207p+2,0x1.c86821f3ca1c4p+2
+-0x1.3d8dd29e670d4p+1,-0x1.ac11ff66295ap+0
+0x1.0ccb64a49e71ep+3,-0x1.487e75856e78p-2
+0x1.347b509321acp-2,-0x1.986e8d119ad84p+2
+0x1.9f9692ba36fp-2,0x1.38c7d8f195ep-3
+0x1.a68db4df3ccp-6,0x1.2707016763186p+2
+-0x1.cd612b67cc115p+2,0x1.6240347821b1ap+2
+0x1.9a61ec6be7078p+1,0x1.a955d6447d4ep-1
+0x1.cd8450102e588p+1,-0x1.b6f2933424aeep+2
+-0x1.b81ac13a6d9b8p+1,-0x1.bc5d71831a73cp+1
+0x1.c2764f3100e1cp+2,0x1.0721cbf1bb37p+0
+0x1.a9282b910edp-1,-0x1.b1ddd083c9108p+2
+0x1.f87a49c18f7ap+2,0x1.35b0dd0db557p+2
+0x1.13f15611e77a6p+2,-0x1.4cec8d6a56abp+0
+0x1.85ee492d86278p+1,0x1.6978aee5f33dp+2
+0x1.998200f572e08p+2,-0x1.23eb94fa244ffp+3
+0x1.58ed358503628p+1,0x1.3e499518380e8p+1
+0x1.c26e1b4b137c8p+2,0x1.e40ca190af564p+1
+0x1.26f3f6cf0715p+2,-0x1.332b1d0ce8f4p+3
+-0x1.eb9ead50a8708p+1,-0x1.28557b7c7e34dp+3
+-0x1.a08d7eab4ff52p+2,0x1.1d3d4848528d2p+3
+-0x1.20bec1816eab4p+3,-0x1.ec39b0871a95p+2
+0x1.4a3ef55cb0538p+1,0x1.529c50e94d8cp+1
+-0x1.1cf53500d25e8p+3,-0x1.2f897a7648fb2p+1
+-0x1.0a3357e00e9a9p+2,0x1.39434f00e0baep+2
+-0x1.ebcfcf4c96f2p+2,0x1.baa9a7bf9746p+2
+-0x1.66f403a1fc19p+0,-0x1.f0f518333c91p+0
+0x1.6ac4f12cd89dp+2,0x1.1877b1bcf400ap+3
+-0x1.d2797be329a74p+1,-0x1.55ef97cc2d7f8p+1
+-0x1.284a6872aacep+1,0x1.7c6aa6c07b45p+0
+-0x1.a5407649d9557p+2,0x1.7347f42a7740cp+2
+-0x1.2e223c17c21fp-1,-0x1.9388cb546ea6ap+2
+-0x1.364d50735135ep+3,0x1.25a6a286ae8bep+2
+-0x1.892cde7edd806p+2,0x1.09b093951609p+1
+0x1.0d9446e7a35p+2,0x1.4c978f461b84p+1
+0x1.924f0e416b92p-2,-0x1.265b51960052p-2
+0x1.d24112a928434p+2,-0x1.201a14e0b135p+0
+0x1.c1bac58c97d44p+2,-0x1.351ab411d36cep+1
+-0x1.62cb1158b677cp+2,-0x1.2c9ddab7fadbdp+3
+0x1.015b1cc9a2d3p+1,0x1.83c84ade92738p+2
+-0x1.9cf279f4570d1p+2,-0x1.f7bfd5ef7facap+2
+-0x1.5899667eff2fp+0,0x1.6cc6430072c98p+2
+0x1.095f19eb19a2ap+2,-0x1.db0c7e87b8e88p+2
+0x1.d5c926ccd767p-1,-0x1.b75ace7c8668p+0
+0x1.71b6e5989db7cp+1,0x1.5da2e5d655936p+2
+0x1.8cfe038304d8p+1,-0x1.312681b0295aep+3
+-0x1.aa4b8db00df02p+2,0x1.2e93f321b6a38p+0
+0x1.d42b78a822178p+2,-0x1.eb15b07aa12a7p+2
+0x1.ef3d0ff0c10cp+1,-0x1.57652c0df1938p+0
+-0x1.05f5eec676aep-1,-0x1.1f4870da68764p+1
+0x1.b4ac7aad76308p+0,-0x1.77f0e42b3120dp+2
+0x1.212bf42b25a94p+2,0x1.2fdc44f7c1142p+3
+-0x1.75dded3e85ae4p+1,-0x1.81f608e8ce24cp+1
+-0x1.ed66ca8851p-9,-0x1.0b89901827b8fp+2
+0x1.74f6736af54bp+1,-0x1.95a7b8c913f08p+1
+-0x1.aeda1ba960ad2p+1,-0x1.5d27c122c6b29p+2
+0x1.020bcda9d3c1cp+2,0x1.27c1c563af022p+3
+-0x1.43e11e2c19182p+2,0x1.54c07d14e5f8p+0
+-0x1.4f7e177e64608p+1,-0x1.d5a7abcdba507p+2
+0x1.0fc2dd3354c2p+0,-0x1.0fdfc26d50d04p+3
+-0x1.8eeee6480bad8p+2,-0x1.a872a8778a37ap+2
+-0x1.10814bfdbc36p+1,-0x1.1d8521abe7255p+3
+0x1.4d4f4af8d87bcp+1,-0x1.146f07d2b92f9p+3
+-0x1.893d3dc926da8p+0,-0x1.849fa662b572ep+1
+-0x1.deb53914c62b8p+2,0x1.c22b51e064de4p+1
+-0x1.05ed5f6de31f8p+2,0x1.30621eb1df348p+3
+0x1.d3d7e1172d688p+0,-0x1.90c6b67a8dacp-3
+0x1.15652eb2df98p-1,-0x1.a463fec3b8e9p+1
+-0x1.be1a6adb0006cp+2,-0x1.492098d8d4f95p+2
+-0x1.2257802bae049p+2,-0x1.3abd75430cda8p+2
+0x1.d78e94c88d0c8p+1,0x1.badb64100e6d8p+2
+0x1.57d9cd77b635p+1,0x1.a55110566fdap+0
+0x1.11fd4a18d0de8p+1,0x1.5a0b5f043624p+2
+0x1.1c2f1e4be46bcp+2,-0x1.1d325dad7ae92p+3
+-0x1.e7fba8ae7f5e9p+2,0x1.6ffb1621a621cp+2
+0x1.576f1f8058d78p+2,0x1.129f3cd420ae8p+1
+0x1.5261b46316518p+0,0x1.01298f326645ap+3
+-0x1.b99237985de8cp+1,-0x1.1207327c80efcp+1
+0x1.c4e4765b0e144p+2,0x1.306fe4d5bcbbp+0
+0x1.675ec3a2aca3p+2,0x1.35ae3b76c34fcp+2
+-0x1.7bddef8b67eb6p+2,0x1.0bec76b477d5cp+3
+0x1.31a0cbee9928p+2,0x1.30c125fff9b56p+3
+0x1.229d7d2b9bbe4p+3,0x1.872c534310c9cp+2
+-0x1.32194ba702ac3p+2,0x1.74cdaf5963b1cp+2
+-0x1.592d0c0f981aap+2,-0x1.e962711ff69bcp+1
+-0x1.b013bcd5ae488p+1,0x1.01410457c1ab8p+1
+0x1.3518dccbcb954p+2,-0x1.b6a9a7280c142p+2
+0x1.19655d9e8b1b4p+3,-0x1.bb7abea3e930ep+2
+0x1.8dac6a32a585cp+1,0x1.1965ddc4a40aap+3
+0x1.c4f1966ba1e8p-4,-0x1.0a6b6fe6f1a19p+3
+-0x1.175ffbb2b846ap+3,-0x1.c9f95ecaaac8p-4
+-0x1.25c40dbcfd428p+0,-0x1.3cc10a50573p-1
+0x1.c23cf75893fccp+1,-0x1.8f95aac725bd2p+1
+-0x1.2bbe5033ba85cp+3,0x1.2a61902697d2ep+3
+0x1.306e367fad9ecp+3,-0x1.c46e81f434e3cp+1
+-0x1.3521f9bd9704p+3,0x1.76e337a5b14a4p+2
+-0x1.b2af155bebc8p+0,0x1.f1e1f312c5c6p+1
+0x1.87599e63ecff8p+1,0x1.7500b988d75bp-1
+0x1.0edb7e201df64p+1,0x1.952a439a9414p-3
+0x1.1cbfa9787fd1ep+3,0x1.1ea2d5b040a0ep+2
+-0x1.bc47cef7c5822p+2,0x1.f44b4f381fde8p+2
+0x1.615355ff8a6cap+2,-0x1.261a4200cfb97p+2
+-0x1.c5e6d11a6c6e4p+2,-0x1.1a971bcdb9573p+2
+0x1.f8bb5d359b634p+1,0x1.629435842a29cp+2
+0x1.3d305d2b9b93ap+3,-0x1.2baf3664ddc68p+1
+-0x1.4d9e6ab4e27ffp+2,-0x1.bd3452f8fa1f2p+1
+0x1.609e8706febcap+2,-0x1.20a3d0df265cp+0
+-0x1.fb88a51c0571p-1,-0x1.9b6f20771898bp+2
+0x1.001ac4c330c5p+3,-0x1.ff137a0e07de4p+1
+0x1.1b4a5ef1e40ap-2,0x1.2674b4cb859bcp+3
+0x1.f4b7990325348p+2,-0x1.2f46404f106b6p+1
+-0x1.93e6c70dffcf6p+2,0x1.b2a1a39621c34p+1
+-0x1.c1509f4b8853p+2,-0x1.8f9e55a111e4p-2
+-0x1.954bd738dd6cfp+2,0x1.a247d93aba37cp+2
+-0x1.a32990f13ff9cp+1,0x1.f93833c9d2344p+2
+-0x1.4be03cb948c33p+2,-0x1.33315104b369ap+3
+-0x1.0672039dc31a8p+0,-0x1.8d56055162e8p+1
+0x1.989c88be54014p+1,0x1.b753aa54ad3c8p+1
+-0x1.0da354e641a55p+3,-0x1.850adddda0deap+2
+0x1.152d23aacf64p+0,-0x1.1f5fc58e51981p+3
+-0x1.6816e0170973cp+2,-0x1.f94acb9872322p+2
+0x1.048f9bca21588p+3,0x1.b833a290e7778p+1
+0x1.f1367d1985e8p+1,0x1.0fefe0b1d201p+0
+0x1.3bdf579b0a898p+0,0x1.8c1300b62824cp+2
+0x1.d0f254e2a9f5p+2,0x1.d6c84a4fb95cp+1
+-0x1.6aa735b89d398p+2,0x1.a9aa1bb0a15b4p+1
+-0x1.c3479b7386b82p+2,-0x1.a196acd266de2p+1
+0x1.0909b3139651ep+3,0x1.d2e2024c1a788p+2
+-0x1.d2eb8f53ec9b8p+1,0x1.413b6b3c50988p+2
+-0x1.28bff52e9df4bp+3,-0x1.24f4ff92e87a9p+2
+-0x1.dba404557b048p+0,0x1.e321b4ab75ee4p+2
+0x1.25cff858367eep+3,-0x1.d4b26ee9e6ecfp+2
+0x1.1d405ab3be354p+1,-0x1.6aba5b867b064p+1
+0x1.d70d10cdd496p+2,0x1.d5524965dce2p-1
+-0x1.6548571883d8p-4,-0x1.302598749ff98p+3
+-0x1.ed52935c501cp+2,0x1.4095c9b1315dcp+1
+-0x1.03bd5c56c9115p+3,-0x1.0341896f7a8f9p+3
+0x1.eaa01a576bc78p+1,-0x1.3d7fabb04a9bfp+3
+0x1.1ef912ddeb5fp+3,-0x1.2e099ffdf951cp+3
+-0x1.8e20ecec8be98p+2,-0x1.eebc0e72c1adcp+2
+-0x1.120135b595fa7p+2,0x1.2673e8b3f2758p+3
+-0x1.0be5e845a7be2p+3,-0x1.0c5fc8f3af35fp+3
+0x1.c0390cd00369p+0,-0x1.3b4b6971a4a9cp+2
+-0x1.c48732bb380ap-1,-0x1.be0551f63459p+0
+-0x1.4583765bd5504p+2,-0x1.6a23e354695f4p+2
+-0x1.3760095a0f228p+2,0x1.0174e0d74025ep+3
+0x1.03fe1917da602p+2,0x1.c2556327a893p+2
+0x1.046d375652d1ep+3,0x1.6be72031e481ap+2
+-0x1.09aca6ca98d05p+2,0x1.2a641702a2ac8p+3
+0x1.560889201104p-1,-0x1.77888d13a5eccp+1
+0x1.81d2a546e2ba4p+2,-0x1.e84dcbd32a2c8p+2
+-0x1.852b687ce7214p+2,0x1.807c77c9cb8dcp+2
+-0x1.3ebf81e0a364ap+3,0x1.698c5cc6cde1p+1
+0x1.07dcfebd524p-3,0x1.6247461d541c4p+1
+-0x1.16f42c6ca97fcp+3,0x1.0c01296e46c3cp+3
+-0x1.89d902a77104p-1,-0x1.3fcefa4c52526p+3
+-0x1.81970d47691p-3,-0x1.8dc4f69e8513ep+2
+0x1.e5f05c041ee3p+2,-0x1.1cdbb3abf8e78p+1
+0x1.29871bb36871p-1,-0x1.ddb154e7287ep+0
+-0x1.99e302c8f38ap+1,-0x1.5d3e7af59d898p+0
+-0x1.5920c94f0076ap+1,0x1.1b29efc94d308p+3
+-0x1.9a72bc8bd56p-1,0x1.3a9c11d7fbaep+3
+-0x1.56b5435f8304p-2,0x1.2d36c511098dep+3
+-0x1.46e24048a69cap+2,-0x1.d8e4608160014p+1
+-0x1.0202f69c8631p-1,-0x1.92a5850241ddcp+2
+-0x1.6c06d96ec3a9p-1,0x1.d5bda96af4becp+2
+0x1.989f3e2c4c38p-3,-0x1.98bf8a197fdp-2
+0x1.f34e83816a4ap+2,0x1.3944e27b3af54p+3
+-0x1.b705c835e7d04p+1,-0x1.5140a052b6dp-1
+-0x1.52552663d09d4p+1,-0x1.530fb931688d4p+2
+0x1.5efc5aedf131p-1,0x1.1e26c256a97f6p+3
+-0x1.c116908f48292p+2,-0x1.2d57424a4126p+1
+0x1.865f693b25a58p+2,0x1.28de9adc26c18p+1
+0x1.26a92ccf7028p+3,-0x1.22e781dd11b3dp+3
+0x1.b8a099e4e7954p+1,-0x1.1269bb8d74f34p+1
+0x1.59688a844e9d6p+2,0x1.24346a1dc3558p+2
+0x1.1b60c71b3b0ep+2,0x1.3423afde0426p+1
+-0x1.1da31fba6857ep+2,0x1.e5bdfc402d7ap+2
+0x1.28937de3ea662p+2,0x1.64dd94ea63684p+2
+0x1.c912d5feada7p+2,-0x1.a9fb80e62a788p+1
+0x1.476a48d552b3cp+1,0x1.ba130c571178p-3
+0x1.b0390ff02438p-3,-0x1.6bbbaa0c0f387p+2
+0x1.55cf1537be754p+1,0x1.39bc841e0e8c8p+1
+0x1.e289cf63e10c8p+1,0x1.e2a7014624c28p+0
+0x1.da94279ce212p+2,0x1.6e50a4a852dep+2
+-0x1.78f9a7b9a0594p+2,-0x1.6d933d397eep+1
+-0x1.8fa7317681c2p+1,0x1.d28cc4deb07bcp+1
+0x1.7701b01757d6p+1,0x1.6c75f5165ece8p+1
+-0x1.d2ce21535c758p+0,0x1.8398969d43e7cp+1
+0x1.23b2da86e8734p+2,-0x1.fe34ddb9dbebp+2
+-0x1.cfca1d53b0eadp+2,-0x1.29831141585e7p+3
+-0x1.6a3df7d43b40fp+2,0x1.02245da6b513ep+3
+0x1.a936b38bcb944p+2,0x1.58f529ec786b8p+1
+0x1.a04ee7a36dd38p+1,0x1.9cd42583bc7c4p+2
+0x1.583f31661e4c6p+2,0x1.3d8220715ccf6p+3
+0x1.e16fa60a3acap-1,0x1.06f9f71b20dd4p+3
+-0x1.814952754a9f2p+2,0x1.69e551fe6784p-1
+0x1.e0ebcc119d954p+1,-0x1.e2e8b3de929afp+2
+0x1.385c535bea838p+2,0x1.43953dd5107f8p+1
+-0x1.69b6607a2bc08p+1,0x1.70d593b3047d6p+2
+0x1.909cc295e4624p+2,-0x1.6c4c528066adap+2
+0x1.ade04781e7304p+2,0x1.60bd6ecd1119cp+2
+-0x1.1139dc0b96869p+3,-0x1.715132d4b4a58p+0
+-0x1.fa306ac0d06b8p+1,0x1.ce06ca973e04cp+2
+0x1.a9229f3645a5p+2,0x1.d79e0f6b38adp+2
+0x1.026037e9e1decp+2,-0x1.534e8df4de04cp+1
+-0x1.eb8947da8413p+0,-0x1.0edf13c5674fep+3
+-0x1.2c6f81e2586e7p+3,0x1.d916fbf49c5ep+0
+-0x1.479079a67bap-4,-0x1.3c46961b81cap+1
+-0x1.eec4f0304a96p-1,-0x1.2e0c81167f452p+3
+-0x1.1f3a8b10756fp+2,-0x1.37d36b56983c2p+3
+0x1.4a50bfe00abdp+0,-0x1.9f6816b309286p+1
+0x1.2ad853788069ap+3,0x1.258bf06b641eep+2
+-0x1.e88d6a4d60988p+2,0x1.cbeef28e4c9a8p+2
+-0x1.7ff6d1a8fac5ep+2,-0x1.417598ca30ep-2
+0x1.bb97671fb472p-2,0x1.ae909e1f8e6d8p+0
+0x1.341b7bc279f2ap+3,0x1.9438dff909498p+1
+0x1.3c7862f1109p+1,-0x1.1a6e068178d78p+1
+-0x1.1822550ea8b9p-1,-0x1.ac5cca8e3accp+1
+0x1.c9f52f57f30fp+2,0x1.c63fea1fa5a7cp+1
+-0x1.6016b1401b77ep+2,-0x1.592b674bc852cp+1
+-0x1.18817f80df1cp-2,0x1.4933823af0754p+2
+0x1.9a7799c13d29p+2,-0x1.0613e153a27b6p+2
+-0x1.d6c3ba4f3dc6cp+1,0x1.dcb3fa8c509ap+2
+-0x1.794f6b66026bcp+1,-0x1.f6f612c8782cp-1
+0x1.297dad25a1f24p+3,0x1.a9b6efdbc3bd8p+2
+0x1.fad07bae2a128p+1,0x1.43786509385eap+2
+0x1.90c96d7c5120cp+2,-0x1.3c84f7f2b13a6p+3
+-0x1.108d83c0b3616p+2,-0x1.c0198742094cp-2
+0x1.976fc1c4c8028p+2,0x1.bddd43899009p+0
+-0x1.af72b1fa58893p+2,0x1.633b87b1a5f5p+0
+0x1.c38011c50ae18p+2,0x1.1fd58af2e6b68p+2
+-0x1.20789f2814548p+3,-0x1.237dd41eb9f7p-1
+0x1.0a2448d856ba2p+3,0x1.22b2479414ea8p+1
+0x1.009d16f10787p+0,-0x1.f3b677b2fc069p+2
+-0x1.0a4e679eead89p+3,0x1.b431eab9cd44cp+1
+-0x1.576b53c35fc64p+2,-0x1.fe6e4f1e3df5p+1
+-0x1.15c39a907ca4bp+3,-0x1.4cafbb4daf856p+2
+0x1.2d2930f53d492p+3,0x1.0c1416bc59334p+2
+0x1.d80088e975db8p+2,-0x1.eef360dfd1c2cp+1
+-0x1.71d6030079ed6p+2,-0x1.55d37ae9281c5p+2
+0x1.0845f1013a8p+2,-0x1.e1c6da0925a9ap+2
+0x1.222f49a58e456p+2,-0x1.27f8840920b1ap+3
+0x1.170fec76e56cp-2,0x1.16cce7cbb89c4p+1
+-0x1.0ab20ee2be88ap+3,-0x1.382b8defee2b6p+3
+0x1.6d344df745614p+2,-0x1.774f22f9e6e4p+0
+0x1.56c599f33ef2ep+2,-0x1.afa12a52563b2p+2
+0x1.853758428e77p+1,0x1.6baf4be3c581p+0
+-0x1.d515fdadd9848p+0,0x1.1e1f8c882340ap+3
+0x1.c38309e8ad488p+1,0x1.405ab4ba25f68p+2
+-0x1.ddcdff2928ba8p+0,-0x1.fdb40222fd83ep+2
+-0x1.978fbf47eee5bp+2,0x1.4ad63d8b992dp+0
+-0x1.35d1b8684c364p+3,0x1.618348f83b4ep+2
+0x1.18092040984b8p+0,-0x1.0435461924db4p+2
+-0x1.04a4c307c0557p+3,0x1.2240d490861dap+3
+0x1.0e74c3cfa3078p+1,-0x1.109b61168f73p+1
+0x1.8fe96facbe9fcp+2,-0x1.2ebcd9fbdab8p+0
+0x1.62a3e07a8930cp+1,0x1.8f94e92716d6cp+2
+0x1.44f95785ca984p+2,0x1.260be789a7aa8p+1
+-0x1.d2b89a58f198p-3,-0x1.9a7363e4271dp-1
+0x1.0eeb6a1c1384ep+3,0x1.d2aadbd896934p+2
+-0x1.0cec4c880eaebp+3,-0x1.008aa4cdaf73ep+3
+0x1.8c3127893c54p-1,-0x1.e15163437e01ap+2
+-0x1.17423e205a6c4p+3,0x1.81a327696bc64p+2
+0x1.97974a3b9e3c8p+2,-0x1.ad20e0d8fe84p+2
+-0x1.4f5c556051d8p-2,0x1.e0544a7af1444p+2
+-0x1.fa2d46ad050f8p+0,0x1.07655c0221584p+3
+0x1.2b77289e7aedp+3,-0x1.72082f75c787ep+2
+0x1.043f60b4e19fp+3,-0x1.55c4bb9e8c01cp+2
+0x1.2cddc747bd128p+3,0x1.d8f084d081c78p+2
+0x1.f5c3f13f5d69p+2,-0x1.b478c62d0d878p+1
+0x1.1e95ddfe1b1d2p+3,0x1.e29eb9eaa8b7p+2
+0x1.b621f33b9aa3cp+2,-0x1.05b2328cb182ep+3
+0x1.1735d3e61773ap+3,0x1.25b7f5fb1f432p+3
+-0x1.43697e66cb0bap+2,-0x1.2fb63b417a4f8p+0
+0x1.bf7fd37ed272p-1,0x1.b0dbb77b023b8p+2
+-0x1.b97bcfe3c52ep-1,0x1.0986559d95a2ep+3
+-0x1.df9ba50f7d8cp-1,-0x1.5dfe65c11d8ep+0
+-0x1.f14f3997e392ap+2,-0x1.8d1cb769b7608p+0
+-0x1.a44abe459b474p+2,0x1.5f65357610eap+0
+-0x1.5c1d2cbd351f6p+1,-0x1.010ea764e6727p+3
+-0x1.50766ca5605cp-3,-0x1.545f84b7c784p-2
+0x1.e9dd5f8cb2fbcp+2,0x1.ef05f9231d848p+0
+-0x1.052ef7b6c6eeap+2,-0x1.157d71d986f8ap+3
+-0x1.1ff184b0edf6ep+3,-0x1.44e3acd32cfc5p+2
+0x1.7a43d136975p-5,-0x1.d60c233fd4021p+2
+0x1.05867a59f9bp+0,0x1.046ef75326e08p+3
+0x1.ba0f776c0a9dp+0,-0x1.39e129ecb6477p+2
+-0x1.1e8ef9a97e1e9p+3,-0x1.7433da24d60e5p+2
+-0x1.8d60c564b6c9p+2,0x1.78b50fef3ee1p+0
+0x1.b1c097d870608p+0,0x1.def7f901a2d94p+2
+0x1.eb894a5fdc79cp+1,0x1.901a36eedd3bp+0
+-0x1.500092e48d53bp+2,-0x1.20680cd9b12dp+3
+0x1.4cb98a47f9d2p-2,0x1.012d481bf5e9cp+3
+0x1.81d07f96fc3cp+2,0x1.7582f736faaap+1
+0x1.7b2d300258f64p+2,-0x1.1cac56c5ed632p+3
+0x1.eb67b1d99ed5cp+1,0x1.32749a397f592p+3
+-0x1.0f45d584e83ap+1,-0x1.6532ca17cd05cp+1
+0x1.f00f62d9703e4p+2,0x1.c30ff0f46795p+0
+-0x1.1686f88340fccp+3,-0x1.665c109904e44p+1
+-0x1.286c51a53fbb1p+3,0x1.335f888f184b4p+2
+0x1.850557ef51a1cp+1,0x1.d6ae5aef5204cp+2
+0x1.818da6a6781p+1,0x1.46121f0bf743p+0
+0x1.d60b140851124p+2,0x1.093e699293f48p+1
+-0x1.3ec478f671cdap+2,-0x1.4a1f0c8b427d2p+1
+-0x1.2cbce10aeaeap-1,-0x1.d34d7b39b2fbep+2
+0x1.27290ff47e814p+2,0x1.f8aba368fdcfcp+1
+0x1.c157cf6d7c328p+2,-0x1.7ab00f22c168cp+2
+-0x1.c13208f8184fep+2,0x1.4f1164d3c4d3p+2
+0x1.76c6899683d7p+0,0x1.eb1bb4d4c1d48p+1
+0x1.3de43bd854fdap+2,-0x1.3f12ef7c47bfp+3
+-0x1.2d9ca29730b42p+3,0x1.707d3e4b399bcp+2
+0x1.35ac70db25586p+3,0x1.05687554c8acep+3
+-0x1.0aea346cb858p+3,-0x1.03054ebc6bc9cp+1
+-0x1.67e8bdce32e4p-2,0x1.d51954d6fe76p+2
+-0x1.14b95ec3a0613p+3,0x1.2a5d0844fcebp+3
+0x1.cbc5f9b6ab724p+2,0x1.15f37e597b034p+3
+-0x1.71985a1ee6c64p+2,0x1.3e12ec7d9b3bcp+3
+-0x1.0f1f19fcd0bdp+1,0x1.dcb63c776baf8p+1
+0x1.ba184d2fd6a8p+2,-0x1.91e901436957cp+1
+0x1.5cea9bd3e7c72p+2,-0x1.2c5e0dfa60fbp+1
+0x1.f7bfd5aae06cp+2,0x1.27cfa17836e84p+2
+-0x1.8cf76ef7950e8p+1,-0x1.8359044d7160ep+1
+-0x1.952c2c5f0d6f4p+1,-0x1.084136f2c49e2p+3
+0x1.975ebd5a081d4p+2,0x1.2eec58eb3625p+1
+-0x1.dbafd8c2e43cp-2,-0x1.28fd538b7190cp+1
+-0x1.132b738667c1p+3,0x1.a3385b5ab7f8p-2
+0x1.1506bcc183664p+1,-0x1.289b7f0a66835p+3
+0x1.0866bf003a03cp+2,-0x1.2b7626f609994p+2
+-0x1.5a08ea6946327p+2,-0x1.1e5b0bb804d74p+2
+0x1.102d52ed66eep+3,0x1.a8964f11b6068p+2
+-0x1.f6a7bd97f671cp+1,-0x1.38db76026457ep+3
+0x1.da8dd88901dep+2,0x1.0fdd990f33b1p+0
+-0x1.3a27c3e87226ep+3,-0x1.9e8501adf5c66p+2
+0x1.751633d03cc04p+2,-0x1.84a99fd22dep-5
+0x1.e01a42094fd48p+1,0x1.55cb4663860c6p+2
+0x1.828d60db41b84p+2,0x1.f37eaab3ca668p+2
+0x1.1c664c324d41p+1,-0x1.b4a766099e16p-1
+-0x1.c689e0c3d5872p+1,-0x1.12af99fa48e5ep+3
+0x1.9ae5c4f741dp-3,0x1.f178714835794p+1
+0x1.b4f9ca33e3938p+2,-0x1.76f469b1b6144p+1
+0x1.40d3efaa3486p+2,0x1.71ba64f9e55a8p+1
+0x1.e5944374c1f6p-1,0x1.0ae1400ba5fecp+2
+-0x1.36bbdbc050029p+3,0x1.ce90ff50c5a28p+0
+-0x1.3c582384f9235p+3,0x1.3bc3608cbe05ap+3
+-0x1.14e77d820d5fap+3,0x1.0740a8e78ad74p+2
+0x1.545dfb68354f2p+2,-0x1.efc167a4c94ep-1
+-0x1.fa7547b2bfd1cp+1,0x1.53941ebf7f9ep+0
+0x1.225e5a8ec5ad2p+3,-0x1.0602768ced648p+2
+0x1.4663a030d715cp+2,-0x1.0d5deb3de7528p+3
+-0x1.32411ec7fd3acp+3,-0x1.4e9fad523d47p+1
+-0x1.22e330a65c139p+3,0x1.9e674be5df698p+0
+0x1.1be0c51bb01aep+3,0x1.26717a516acp+0
+0x1.174069a13d59cp+3,-0x1.4611f07ca176ep+2
+0x1.9bfb53a320a48p+2,0x1.0511799a7950ep+3
+0x1.c0722175fad4p+2,0x1.8f9b0900899e8p+1
+0x1.dc8b2c3447bfp+1,0x1.bdd0022619a94p+2
+-0x1.d84c221acf3acp+1,0x1.cb003a302ba44p+2
+-0x1.f49decf93d8ep+1,0x1.7e49666d5637p+1
+0x1.3399e3078b1c2p+3,-0x1.4c055e862ff85p+2
+-0x1.0ba3c0088075fp+2,0x1.827e841d66368p+2
+-0x1.3ba8ef56bc20ap+3,-0x1.12c92d1715e5dp+3
+-0x1.9a6af482c5d44p+2,0x1.d9c445e1ba6cp-2
+0x1.3c400ab8571a4p+3,0x1.5171983d929p+0
+-0x1.c3059b51fe5p-1,0x1.7a12919b014p-7
+0x1.dcfd25940657p+1,0x1.92a115f03d9a8p+2
+0x1.990b42005af54p+2,0x1.74a6e376ce772p+2
+0x1.1121c6a4dfca4p+3,-0x1.101ea75396e81p+3
+0x1.b287993c8515p+2,-0x1.354baa8c7fe8bp+3
+0x1.ab6c3a7055e78p+1,0x1.a563e69b05c8cp+2
+0x1.93e37b2c8efc4p+2,0x1.20e955c4e6e36p+3
+-0x1.5c057f8a5585p-1,-0x1.b81e44d5c2512p+2
+0x1.15ae566fc05cp+2,0x1.8f3f61d6abf9cp+2
+0x1.019cfadd95af2p+2,-0x1.877e2c399c4ap+0
+0x1.21f5cce0a719cp+3,0x1.0e78193a29e5cp+2
+0x1.8efd4aa32b0dp+0,-0x1.3539df7d08852p+3
+0x1.bbeb2d52257p+2,0x1.4ae6cc1fa114cp+2
+0x1.e397ebd6b469p+1,0x1.1b2ac381e54dap+3
+0x1.6e390d062131ep+2,0x1.e7e8ce730e1ep-1
+-0x1.9389d4320ba8p+0,-0x1.258fa27de395bp+2
+-0x1.4046d9971195p+0,-0x1.9143b1e500918p+2
+0x1.31c8d71b4f1a4p+3,0x1.31cdd20660eb8p+1
+-0x1.23e41dceb7c5ep+3,0x1.db1672b8a05f4p+2
+0x1.6ff89188822e6p+2,-0x1.634ff602661bp+1
+0x1.06daf4442a916p+3,0x1.fcaae25d9cbbp+2
+0x1.35bff6dd6726ap+2,-0x1.40aa1094d4b35p+2
+-0x1.3af8ae32449d5p+3,-0x1.a068ff39801c7p+2
+0x1.65a6336f3bf3cp+1,-0x1.576caf5564fb8p+0
+-0x1.1dda34c5254acp+1,0x1.31c6e2bee61c8p+3
+-0x1.1ca9655454b3p+3,-0x1.37a0c603014bp+0
+0x1.1c41d49517b68p+2,-0x1.8117dad5126p-5
+0x1.e61a97cbab11p+1,-0x1.832043637c682p+1
+-0x1.c56fa69958066p+2,-0x1.80fcd852488bcp+2
+0x1.50570996e16p+2,0x1.38b725199a48ep+3
+-0x1.6bebbbfe683ep+1,0x1.92203cf70b28p+2
+-0x1.a9ff6c1b2bb08p+2,0x1.104ce87e523fp+3
+0x1.3b9dfac37c65ap+3,-0x1.c8a500de15ae2p+2
+-0x1.9952f9a20e94ep+2,0x1.61e809f1c7d2p+2
+0x1.7f2cfb20a0472p+2,-0x1.7a8f415d08454p+2
+0x1.b07f059b8276cp+1,0x1.df4e7094731ecp+2
+0x1.9d61d17a2ee18p+1,-0x1.d7e73b37017c4p+1
+0x1.37134d222cf02p+3,0x1.e851342f9cfp-1
+0x1.0c1188dc98956p+2,-0x1.1d11bf4a3857p+2
+-0x1.34de9b857dc48p+3,0x1.9c45891fe5fbp+2
+-0x1.153311e91cfaap+3,-0x1.34077c72834e8p+0
+0x1.e911ff57b51a8p+1,0x1.383f35db67d1ep+3
+-0x1.80b74e0e45f54p+2,-0x1.7d56bac30d815p+2
+0x1.ab8e0f3ca6bp-1,0x1.9f3283d34bd2p-2
+0x1.991baeea34858p+0,-0x1.c85745e2b7135p+2
+-0x1.b1253e5aee926p+2,0x1.ef7314b2842f4p+2
+-0x1.bd07f326536ap+0,0x1.48b5227538296p+2
+0x1.1653447036dcp-2,-0x1.efbaf0e023544p+2
+-0x1.bcb84249c2b38p+2,-0x1.248d0d7ecb3p-3
+0x1.0b72f320841f8p+3,0x1.f7eda38557b8p-1
+0x1.a80aeb0dc42dp+0,-0x1.368bdf08ebbfcp+2
+-0x1.28635b44c3f72p+3,0x1.c07d33ba93724p+2
+0x1.a9fa256bef4fcp+2,-0x1.36e22c283a863p+3
+0x1.02357466aa554p+2,-0x1.856faeb4dc626p+2
+-0x1.20b1f0a0d2296p+2,-0x1.7a77980b3ff6p-1
+0x1.fbaebe5f269cp-3,-0x1.217f4608f9afcp+3
+0x1.0f2e7e4f02878p+2,-0x1.e774720331938p+1
+0x1.20985be9e72dep+3,-0x1.00752947d28ccp+3
+0x1.8ea8cd6334eb4p+2,0x1.780a3d907ab78p+2
+0x1.d462c22eed88p+1,0x1.24f556678ed48p+3
+0x1.aae0dcaa93674p+2,-0x1.f5419e20d2a88p+0
+-0x1.256b5ffeeea32p+3,-0x1.fec135769d632p+2
+0x1.8d15121bd4cc4p+2,0x1.eedb4c08801f8p+2
+0x1.bfa78f7a217b4p+2,-0x1.6324e8c957e41p+2
+-0x1.c0b0ea03f2d6ap+2,-0x1.eb18ec548374p-2
+0x1.9ef4da1f31424p+2,0x1.0505e9cd3eee4p+3
+0x1.3bda534d47b62p+3,0x1.2a1c84245b4f4p+2
+0x1.31a73bd51ae86p+3,0x1.bf768d2a827c8p+1
+0x1.8539b4c9b7954p+2,0x1.5187ab35d07a4p+1
+0x1.3a8b196c96222p+2,-0x1.5e9a6c27b35cap+2
+-0x1.f56203092474p-2,-0x1.62683b8e17254p+2
+0x1.89243348c11f8p+2,-0x1.204209128b6a4p+2
+-0x1.085e716c074p-3,0x1.660e456e25f5p+2
+-0x1.a587343b3b78p+1,-0x1.04282b16a1cacp+3
+0x1.5e47bd1b598d8p+0,0x1.60a995225182p+0
+0x1.7e10b7514a0b6p+2,-0x1.da4629979bf44p+1
+-0x1.4f6e6971b1c32p+2,0x1.bcbe8c692ba18p+2
+0x1.125d205fd4dc8p+3,-0x1.6de2c8dbedf08p+1
+-0x1.9313a477a30d9p+2,0x1.aaf984906238p+2
+0x1.3aa38379d7eap-1,-0x1.f4391d7e5eb8p-3
+-0x1.2baf4583e467p+1,-0x1.b1bda0dfabcb8p+2
+-0x1.3fc647f33b1a6p+2,0x1.dab381078a82cp+2
+0x1.1a7a500a1b06ap+2,-0x1.3ea0680921308p+1
+-0x1.5ff439305866ap+1,-0x1.18868d0652828p+1
+0x1.02f24e0f133aep+3,-0x1.0c3dd2aa45538p+3
+-0x1.cda589b599c29p+2,0x1.d53b92787154p+2
+-0x1.375bd896ceb74p+3,0x1.d042719e88168p+2
+-0x1.847ea088cffadp+2,0x1.16ca0a4888e7ep+3
+0x1.52d78a494008p+1,0x1.163c1d867fdfcp+3
+0x1.54f9b13188782p+2,0x1.3443c54291cp+0
+0x1.2d801e36880bep+3,-0x1.29724d749affp+2
+-0x1.b14a07329850cp+2,-0x1.7ca6532640b1ap+2
+-0x1.64441f22eed6p+0,0x1.20ad271b4232p+1
+-0x1.ccd3341f03e8p+1,0x1.8f7d94e119b6p+1
+0x1.f043ffeef428p+1,0x1.1eccd61f891c4p+3
+-0x1.f23908345fap+1,0x1.255d1e45936d4p+3
+-0x1.d11137aa4defp+2,-0x1.09f399dfc4c4cp+2
+0x1.1223628558102p+3,0x1.4c1e647c03006p+2
+0x1.924149c4d1eecp+2,0x1.8a4b0c9e2afcp-2
+0x1.47f708b4499b8p+1,-0x1.c98b482981bfcp+1
+-0x1.1667756dab126p+3,0x1.19986a7172d12p+3
+0x1.271f5ca344436p+2,-0x1.44325fa400313p+2
+-0x1.72faecb1c76dp+1,0x1.533aa494dacp-1
+0x1.8c64f275546c4p+2,0x1.0b2bede81ffp+0
+0x1.a8d2f01e98bf8p+2,0x1.6e11619093862p+2
+0x1.cedafd4849124p+1,-0x1.516ee90e0194p-2
+0x1.6542b6da423dp+0,0x1.329f9319123f4p+2
+-0x1.ee69385c488d8p+2,0x1.e5a3927aa439p+1
+0x1.2831ac4ac3966p+2,0x1.c8b10ce41e0acp+1
+0x1.2a88ae02347a2p+3,0x1.7de61d3a29b58p+0
+0x1.95ff60d60b378p+1,0x1.300d3abe56294p+3
+-0x1.38c7cbc08da59p+3,0x1.2132a9211d6ep+3
+0x1.0826f50b352a8p+2,0x1.32eee9bc08b44p+3
+0x1.4b24086ac5d6ap+2,-0x1.0e3fadcee3c9p+1
+0x1.5d2868695824p-1,0x1.0b058a85b7e8p+1
+0x1.ae1d73ad2bc6cp+1,0x1.252027dff038cp+3
+-0x1.9fe6f7dc81798p+0,-0x1.a9e9382148808p+0
+0x1.c97b62b2943cp-1,-0x1.3125e930092aep+2
+-0x1.16b9ba74d10a4p+3,0x1.9bc9e9de39ffp+2
+0x1.316f1a668d8eap+2,-0x1.2ccdf152ba19p+3
+-0x1.7f78bf97e51ap+0,0x1.d3e9b6bc187e8p+2
+0x1.22639b516917cp+3,-0x1.ca7d809253dfcp+2
+0x1.f982489d7f34p+0,0x1.2485c385ac61p+3
+0x1.0581f976a2fcp-2,-0x1.04653ef5c26e3p+2
+0x1.16488151b75b4p+2,0x1.2c1d9682c79a2p+3
+-0x1.9badd46018fe2p+2,0x1.7126d35073198p+1
+0x1.dfcd5460cdd88p+0,-0x1.cfea07c150c84p+1
+0x1.56a3fae7810ccp+2,-0x1.b9a1d23ea43f4p+2
+-0x1.7e070e22d7bcp+1,-0x1.1fcc9d8f7da24p+3
+-0x1.0ec224c023618p+2,-0x1.5e5a65b3e13ep-1
+-0x1.38d885f33c10ap+1,0x1.5d73520e4e65cp+1
+0x1.3f9fa7932ad94p+2,0x1.3a709586765fp+2
+0x1.13da06a1b553ep+3,0x1.2f923aa546e36p+2
+-0x1.9ead825b0f554p+2,0x1.c209c8d4b910cp+1
+-0x1.55c306f16b6ep-2,0x1.5d25013b9f79p+1
+-0x1.05a7abfa37394p+3,-0x1.d9705af608432p+2
+-0x1.c2afc0eb0d4cp+0,0x1.721eeff1646ep-2
+-0x1.bd2b8a2ee868p+0,-0x1.885de3432a82p+1
+-0x1.d67c62f875fdap+1,0x1.0ffa087ce4d36p+3
+0x1.3f8d1b0880fdep+2,-0x1.ea199cf03b29ep+1
+0x1.aa8b29dcff64p-2,0x1.8a5f7ee7e6e2p-2
+0x1.f474166acdf14p+2,0x1.49873c3f3f714p+2
+0x1.734424bcaf02p+1,0x1.0b08704c10cdep+3
+-0x1.0afe6b7a7ebb8p+0,0x1.a445a9a5fc3bp+2
+-0x1.22c29d2987a4p+3,0x1.001fcca9281f8p+3
+0x1.e4b6d1fb882fcp+2,0x1.301880861196ap+3
+0x1.5e84f8c218136p+2,0x1.2ecd72cd17312p+2
+-0x1.fda7f5bab14p-3,0x1.3ba6d3a9bfcb4p+2
+-0x1.dd341b38b69b8p+2,-0x1.fc9464e5c99d7p+2
+0x1.0784e15aa3a18p+2,0x1.72317d29cec7p+2
+0x1.9c3d217c5171p+2,0x1.16985c69996dp-1
+0x1.3a639e1dc99f8p+2,-0x1.19ce1107691e6p+3
+-0x1.5ce9121fb358p+0,-0x1.e51ff06369154p+1
+-0x1.83abd442930dp+1,0x1.89abf686d9bb8p+2
+0x1.ebcf61252c88p+1,-0x1.20edf10c8d036p+3
+0x1.9bc59082aaae8p+1,-0x1.71c0a23dd346p+2
+-0x1.2f41e69fc046p+0,-0x1.257ecf3a4cfb9p+3
+-0x1.03e32569a4918p+3,-0x1.403cd6ec5a096p+2
+0x1.2c61a8d583498p+3,-0x1.d994ee3d57a3p+2
+-0x1.0bb9e90bd560cp+2,-0x1.59cb57ae8c8b8p+1
+-0x1.a08af28a38037p+2,-0x1.4867f0bdacadp-1
+0x1.3975aa9fe1f38p+2,0x1.487ad4afdacb8p+2
+-0x1.fdb7145a246ccp+2,0x1.215e80761c5p-4
+0x1.4a469851031acp+1,0x1.965e9229e8c7p+1
+-0x1.7cecf94142ep-6,0x1.eeda846392278p+2
+-0x1.2bbb9f184d225p+3,0x1.b68a7db9891dp+0
+0x1.21bcc28cb592cp+3,-0x1.e0535776ca07ap+2
+-0x1.a8eb7c35f9ab6p+2,0x1.127bceec1a52p+0
+-0x1.048abcad4e8ap-2,-0x1.e671f6af028d4p+2
+0x1.55358ad06f3cp-3,-0x1.ae3ca7ba415ap-2
+0x1.2e0170437ae94p+2,0x1.5444851648462p+2
+-0x1.cb330929ccd0cp+1,0x1.3efb2d599e94cp+3
+-0x1.a62e9a199cf4p+2,-0x1.2df322a74a48p-1
+0x1.84d8f9390387p+1,0x1.b67e0761fe6b8p+2
+0x1.f8a08b4e961e8p+2,-0x1.181f87141402ep+3
+0x1.80dabf31625c8p+0,0x1.83a09b97daa98p+0
+0x1.ac05c515b9934p+2,-0x1.167145a6ae5a1p+3
+-0x1.6f506376ad8aap+2,0x1.7ef3dad697804p+2
+0x1.e2d349bbf7728p+0,0x1.c7321a8917dcp+1
+-0x1.7f8c9b822f438p+2,0x1.71da86374bfdp-1
+-0x1.de0c8dccba948p+2,-0x1.bfd5c833e801p-1
+-0x1.772bf1c263cdp+0,0x1.59001aaa746acp+2
+0x1.9e5e03ecb7b68p+0,-0x1.395a2f546206p-2
+0x1.7151f7655760ep+2,0x1.1e5cedb72c038p+2
+-0x1.184af4c9bb8e7p+3,-0x1.adb8fbfa8e1b7p+2
+0x1.264fe3dde3c3p+1,0x1.374b709c6d218p+3
+-0x1.2d7dc46ceb9abp+3,-0x1.f6033afc3719p+1
+0x1.267f9a7e435cp+3,0x1.0a6d9263e7b8ap+3
+-0x1.d930ab270292ep+2,0x1.a163f133a0ed4p+1
+-0x1.5abbebdfaf016p+2,-0x1.31be6ff640c43p+3
+0x1.f98bdacdd9478p+2,-0x1.8a0553674b04p-1
+-0x1.19c9a1c04296p-1,0x1.3076aee04f31ap+3
+0x1.a8bc6100a9c3cp+1,0x1.d4f6e4529ecbp+0
+-0x1.a065f0a487358p+2,-0x1.77e3a711d7aep+2
+0x1.5bca78944f478p+2,0x1.11086d9941e18p+1
+0x1.b7e0a0f16e1b4p+2,-0x1.33cd74958c959p+2
+-0x1.83f520d05c32ep+2,0x1.6156b3d364b78p+2
+0x1.1c3f2f633ff54p+1,0x1.7bec8cb3c17fcp+2
+0x1.1187e51481b8ap+2,0x1.35cee87c8dcc8p+3
+-0x1.0caddeb3badfep+1,-0x1.2e45cf9c94974p+2
+-0x1.b1af0ececf95p+0,0x1.3cdf14d813986p+3
+-0x1.b7a91334b8c4p+1,-0x1.2a65e58f302ap+1
+0x1.77979113db2ccp+1,-0x1.bd1bee93e27f2p+2
+0x1.21bd4abff07ccp+2,-0x1.339a23a9512a7p+3
+0x1.13144cae9e404p+1,0x1.d8226206b9158p+2
+-0x1.16ef1f320f4acp+1,-0x1.47bbbee41c16dp+2
+0x1.9e9c619b72d64p+2,-0x1.8bb15b65cdb48p+2
+0x1.e58cf1ea6896cp+2,0x1.27870ad01b368p+0
+0x1.9745b1a492de8p+1,0x1.e4c33d972019p+0
+-0x1.125fc6aed8fdp+1,-0x1.ef7589ac28d8p-3
+0x1.f3d3723caa84p-3,0x1.bc3400e2197ep+0
+-0x1.22621aa5302e2p+2,-0x1.2374f58641cd8p+1
+-0x1.64a84a12ee745p+2,-0x1.1de701d226f48p+0
+0x1.d50ba2d3e6e1p+2,-0x1.b9bab246e4403p+2
+0x1.54b4c5f065892p+2,-0x1.3b449cfd9528p-2
+0x1.1d74616306208p+3,0x1.1ce7f24975464p+1
+-0x1.02edc1c22f105p+2,-0x1.728720d47302p+0
+-0x1.0bf7f009f2e25p+3,-0x1.eb51658d25a84p+2
+-0x1.4fcafd31f696p-2,0x1.6e4e021f79938p+0
+0x1.692a6749a2db8p+0,0x1.394b75f1e0132p+3
+-0x1.3e215d5c64613p+3,-0x1.898033866c5p-5
+-0x1.1230a594f8c7ap+3,0x1.5fcb4cbea2d64p+2
+-0x1.5dd5e4bb3e072p+2,-0x1.0e62ef04da568p+3
+-0x1.0471e013483eap+2,0x1.34e9ca1c6bd64p+3
+0x1.327aaeaaedda8p+3,0x1.0b566423fc1e8p+3
+-0x1.b4ecfbb53cad8p+2,-0x1.7ab6b2f1ae44p-1
+-0x1.fccf957063d48p+0,-0x1.3d34192b659adp+3
+-0x1.3553fc8b0486p-1,0x1.fdf384ad012p-5
+0x1.f2fdf7110bf4cp+2,-0x1.557b0833f1e2p+0
+0x1.f486e596526dcp+2,0x1.65efd5836e0b4p+2
+-0x1.1640b400ecc42p+3,-0x1.2d3c3bdcc00b4p+2
+-0x1.134985ebdd2ecp+1,-0x1.2e921e23ce9b8p+3
+0x1.30a3ca81fa9bep+3,-0x1.691072fcbfa3dp+2
+-0x1.f7a64933a254p-2,-0x1.204a26d3bb9fcp+3
+0x1.a782b4f69ac18p+2,0x1.9fa6901385f68p+1
+0x1.6bae2bdfa64c2p+2,0x1.22775c0eef7ap+0
+-0x1.33e021178193ep+2,-0x1.fb39d0664b89ep+2
+-0x1.d3bcefade28e5p+2,-0x1.253685e4d8ba2p+3
+0x1.f4f5040e471ep-1,-0x1.742ed3d8bbfdap+1
+0x1.c502f2ac075bp+2,0x1.25d17a3650472p+3
+0x1.14f97ef8fdadap+3,0x1.8d019937d65ep+1
+-0x1.7b48e527d6f11p+2,0x1.87adad1aa4a9cp+2
+-0x1.f772c8f62827p+2,-0x1.0dbb2e85b1dd4p+3
+0x1.1718f14ddb91cp+3,-0x1.ea332ccf862dep+1
+-0x1.4a7efdaf09c82p+2,-0x1.e68e356e4edc8p+0
+0x1.83af77a0844f4p+2,-0x1.c4f09182bbcfp+1
+0x1.a6fab09518db8p+2,-0x1.0c674fd08632p+0
+0x1.ef8401abed2a8p+1,-0x1.92f43671ee424p+1
+0x1.be9686aeac2dp-1,0x1.6e8b1f864eefcp+2
+-0x1.4abbda3e46f12p+1,-0x1.238142d82b4fcp+1
+0x1.75d90e855558p+1,-0x1.67e64a2f814f4p+2
+0x1.ef395a7e0112p+2,-0x1.51d617a537d6p-2
+0x1.cec23d407f1d8p+1,-0x1.2197051968933p+3
+0x1.d64dda5d82408p+2,0x1.8435a76caf4ep+0
+0x1.6889630e64ac4p+2,-0x1.cf615eef8e6b8p+1
+-0x1.b73cecf7efbe4p+1,-0x1.34b45b2986988p+1
+0x1.c035c7446e7b8p+1,0x1.e7452fbb2436p+1
+0x1.fc47625051abp+0,0x1.3adfe21bd36cp-1
+0x1.c7e0760f90a6cp+1,-0x1.9ac79e6469714p+1
+0x1.12059a041fc58p+2,-0x1.b964745f9b786p+2
+-0x1.dfaafc638d506p+2,0x1.01623647a26c2p+3
+0x1.682315d6e005p+0,-0x1.525aa94977e0ep+2
+0x1.4782ed4f21314p+2,0x1.23a02e793aae6p+3
+0x1.1f1251d133a4cp+3,0x1.a83c0c36e205p+2
+0x1.a39fb56103e6p+2,-0x1.541601e7fb42ep+1
+0x1.3ac4540712bd8p+2,0x1.0419ec2c90af8p+3
+0x1.140e8cd565492p+3,0x1.8b5fe3634f578p+2
+-0x1.1c52766efbe9dp+3,0x1.7bfcaaded8742p+2
+0x1.5b6998e455728p+1,-0x1.3bb871c45107ep+3
+-0x1.2f47512f499b4p+3,0x1.678f20d1338ep-1
+-0x1.81be9d3a9623fp+2,-0x1.15d4248e4814p+0
+-0x1.705e384f721cp+0,-0x1.7834f646ab206p+2
+0x1.5c1a0f79b2f88p+1,-0x1.8b1a145ac7a4p+0
+-0x1.a2a602347077cp+1,0x1.5ee9eee8f0386p+2
+-0x1.f9af6154f4c2p-1,0x1.66f71026ffb04p+1
+0x1.e9b2b0288733p+2,0x1.2fb6514efed2ep+2
+-0x1.9aa35fb6d90b4p+2,0x1.23724a16161dcp+3
+-0x1.2caa3495f3856p+2,0x1.1c31377141778p+2
+0x1.49ee38f05136cp+2,-0x1.edd7583e5b27cp+2
+-0x1.6db64a896e7p-5,0x1.d9c38873800ep+2
+-0x1.213b86a8d969ep+3,0x1.13f75c600d7p-5
+-0x1.5ee1d3f63588p+0,-0x1.029b4bfb31246p+3
+-0x1.27f3eec20b5aep+1,0x1.256dbcf8e7602p+3
+-0x1.d8e8289413978p+2,-0x1.4770c047c05c4p+1
+0x1.286b1466190b2p+3,0x1.720dccb899088p+0
+0x1.70e3812216bf4p+2,-0x1.35ae6654b0f82p+3
+-0x1.8502f5af5270fp+2,0x1.4ae400f69df98p+1
+-0x1.14f748874d111p+2,0x1.895307ac96adp+0
+-0x1.29ed83842fbc6p+3,-0x1.30165452ae157p+3
+-0x1.429e0276be0fap+2,-0x1.3d96124c42076p+2
+-0x1.a06714bdfecbp-1,0x1.cd8735b18ce58p+1
+-0x1.1986516ede96p+3,-0x1.225cac1873ec2p+3
+-0x1.97dc8b137599cp+2,-0x1.bb999d96dcf1p+0
+0x1.b2877ce52062p-2,0x1.f8e897f94863p+2
+-0x1.eaea136cc72dfp+2,0x1.8ac60f0c5c01p+2
+0x1.e219d7795c194p+1,-0x1.6e21c47ad9a7ep+1
+-0x1.0db90dd3e6598p+2,-0x1.12f9680c2cff8p+3
+-0x1.2c4f66709dc4p-3,0x1.1f78df6fbb15p+1
+-0x1.3c24aaaba5b38p+2,-0x1.19e3ab473992cp+2
+-0x1.d9b1b783884f8p+0,0x1.967a821c18bdp+1
+0x1.3f6e789b61a72p+2,-0x1.dd18f9aa30ce8p+2
+-0x1.16196f13a4872p+3,0x1.338eedeb9bde8p+3
+-0x1.69a3f3c46448p-1,-0x1.449a8882737aep+2
+-0x1.71c2babd09148p+0,0x1.a9f4c3e2daf2cp+2
+0x1.f51f11ffc5494p+2,-0x1.d6be5e7440c7p+0
+0x1.bd9761aaccdf8p+2,-0x1.ea054aecebp-8
+0x1.079e23c55d3ap-1,-0x1.10b6e193f77f2p+3
+-0x1.2d4d2b716e7fdp+3,-0x1.058f15dbee068p+3
+0x1.f30d8769c2028p+2,-0x1.27190e7015dbcp+3
+0x1.0808866f4a1ap-1,-0x1.7c5646e6c80ep-1
+0x1.b1aba473bd374p+2,-0x1.e4caab721b37ap+2
+0x1.d4cd14f18ccf8p+1,-0x1.dd6999ea68694p+2
+0x1.0c95865cbb352p+3,-0x1.9dc830610c82p+0
+0x1.072ef754ebefap+3,0x1.9297cf0a3f49cp+2
+0x1.34372254c0cfcp+3,0x1.2ed7cb4c4c89ep+3
+0x1.e99671b1d56ep-2,0x1.d94c07eb59a2cp+1
+-0x1.7bae8b801ba76p+1,-0x1.410ae1fc40f8p-2
+-0x1.a9f0d90550d48p+0,-0x1.37d07cff2f262p+3
+-0x1.2969bab12ab98p+0,-0x1.285c3080ac946p+3
+0x1.221258b25338ap+3,0x1.39a93486f5d16p+3
+-0x1.32fe22e66751ap+3,0x1.148039057c2a4p+2
+0x1.0171b44dc02bp+3,-0x1.b0de39fdf7232p+2
+0x1.38b8ad2f9d6p+2,-0x1.5d978981779e2p+2
+-0x1.aafc54bdf85b8p+2,-0x1.6614e0422ecap+0
+-0x1.3ba32a12b8d78p+0,0x1.d944e94f6ea2p-1
+-0x1.4b10f585497d7p+2,0x1.e866be98b292p+1
+0x1.b52291a665cccp+2,-0x1.bb4a362fff4a4p+1
+-0x1.e3d54d0209cf2p+2,0x1.9e8e4a85d3268p+2
+-0x1.8edd7969e1488p+1,-0x1.5abf84beded94p+2
+0x1.ce0281f5c1758p+2,0x1.25410a5f80998p+0
+0x1.9f9bd59fac0bcp+2,-0x1.ebea756c466d6p+1
+0x1.c2fd5b11543f8p+2,0x1.1cf2a6e8837f8p+0
+0x1.3b03682887f3cp+3,-0x1.9f8661811f3ep-1
+0x1.be81ad0d2f92p-1,-0x1.5e01302905234p+1
+0x1.bb31f7159de7cp+2,0x1.039a6dcc9f508p+3
+0x1.e40c810bfc26p+2,-0x1.4db2aa3a8986p-1
+-0x1.b93da1013794ap+2,-0x1.03799f024d38ep+3
+0x1.2e87f5463a402p+3,0x1.367e70c2f6b3cp+1
+0x1.df6c3f10c77f4p+2,-0x1.0354a6b090e22p+3
+-0x1.a4755c1f9cb8p+0,0x1.efbbb3d732e9cp+2
+0x1.560b0feeb1908p+1,0x1.0eb36f1a2f8dp+0
+-0x1.f3d89f66ad824p+2,0x1.d6865035f4d5cp+1
+0x1.be15ca999e618p+2,0x1.3283217cc1b5cp+3
+0x1.5ffe971784376p+2,0x1.1f06256f2605p+3
+-0x1.75281d5cb3e78p+2,0x1.1fdce06998084p+1
+0x1.6d77d5043ae2ap+2,-0x1.1a7bd6ac13118p+1
+-0x1.a00e525d8c53cp+2,-0x1.c9d222da0af2p+1
+0x1.19abef2609e58p+1,0x1.3f97c63feaf94p+3
+0x1.09d90b5c60e26p+3,0x1.a3c91724193p-2
+-0x1.6cb692d19f802p+2,0x1.5120d93161624p+1
+-0x1.ebaacf6c997ap+0,0x1.62381db387c88p+1
+-0x1.6ae5bfa6eb0e8p+1,0x1.8705cbaa60318p+2
+-0x1.3831aef4881p+1,-0x1.05fcadcb433abp+2
+-0x1.75b42a848998p-3,-0x1.9d7bcb84d04d9p+2
+-0x1.ab4bcc152b51ep+2,-0x1.06f717ba3357p-1
+0x1.273cbc05c38p+1,0x1.3bc4b7ffe2a2p+1
+-0x1.4b7581f93c185p+2,0x1.2dc69f2eedb9ap+3
+0x1.34489fb5cc844p+3,-0x1.9ed7c35eb7476p+2
+-0x1.f615c2dd2ef58p+2,-0x1.2c365e2ff8d9bp+3
+0x1.422d7c5eb4f3ap+2,0x1.0d60b2502f1b8p+2
+0x1.0109511ecf9e8p+1,0x1.04e3da4970b28p+2
+0x1.2a3119e75c2f8p+3,-0x1.2f11cd06e31p-3
+0x1.6814aacbdede6p+2,-0x1.6790f2a297eadp+2
+0x1.2b17eb3857468p+1,0x1.69b591f9d0468p+1
+-0x1.cf39ece579e28p+1,-0x1.0fc797334b3b9p+2
+0x1.28cce201d1a1cp+3,0x1.43322e9fd7a0cp+2
+0x1.ee90a3b40f92cp+2,0x1.7cb4cee81358p+0
+0x1.32e6486335ec2p+3,-0x1.33ddda0236fe2p+3
+-0x1.cb55cabae8388p+2,-0x1.1152fa1d65221p+3
+-0x1.e0d2aacb26c98p+0,0x1.a29cd28a22c18p+2
+0x1.8f4ea37af6174p+2,0x1.766f851cac564p+2
+0x1.db751e4fbede8p+2,-0x1.20998b2ae390cp+2
+0x1.39efad5b861f8p+3,0x1.61dd7994bb244p+1
+-0x1.24bdeda049b6ep+3,-0x1.3386569e3e4eep+3
+-0x1.2aa426503f69ap+2,-0x1.2ead2c5d230b8p+1
+-0x1.cd077f53fbcc2p+2,0x1.78f68e1164bcp-2
+0x1.dc7799eb0ca04p+2,0x1.f2e3d2861ce8p+2
+0x1.3dde93cd5f32cp+2,-0x1.2c2762af5214p+3
+-0x1.4c0cc83ea03f6p+2,-0x1.5f79a581d0088p+0
+0x1.9d6665c975964p+2,0x1.860a8a530ba6p+2
+-0x1.6827835e399ffp+2,0x1.c71bc0fb919p+1
+-0x1.8e677da4f3d7ap+2,-0x1.3f025010fcdap+0
diff --git a/benchtests/bench-calloc-tcache.c b/benchtests/bench-calloc-tcache.c
new file mode 100644
index 0000000..5303f87
--- /dev/null
+++ b/benchtests/bench-calloc-tcache.c
@@ -0,0 +1,22 @@
+/* Benchmark calloc and free functions.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#define TEST_FUNC(size) calloc (1, size)
+#define TEST_NAME "calloc"
+
+#include "bench-malloc-tcache.c"
diff --git a/benchtests/bench-malloc-tcache.c b/benchtests/bench-malloc-tcache.c
new file mode 100644
index 0000000..4bd9808
--- /dev/null
+++ b/benchtests/bench-malloc-tcache.c
@@ -0,0 +1,174 @@
+/* Benchmark tcache hotpath allocations.
+ Copyright (C) 2013-2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#ifndef TEST_FUNC
+# define TEST_FUNC(size) malloc(size)
+# define TEST_NAME "malloc"
+#endif
+
+#include <errno.h>
+#include <signal.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <sys/time.h>
+#include <sys/resource.h>
+
+#include "bench-util.h"
+#include "bench-util.c"
+#include "bench-timing.h"
+#include "json-lib.h"
+
+/* Benchmark duration in seconds. */
+#define BENCHMARK_DURATION 3
+
+static volatile bool timeout;
+size_t alloc_size;
+
+static void
+alarm_handler (int signum)
+{
+ timeout = true;
+}
+
+struct bench_result {
+ size_t iters;
+ timing_t elapsed;
+};
+
+static __always_inline size_t
+malloc_benchmark_loop (void **elems, size_t nr_items)
+{
+ size_t iters = nr_items;
+
+ while (!timeout)
+ {
+ elems[iters % nr_items] = TEST_FUNC (alloc_size);
+ iters++;
+ free (elems[iters % nr_items]);
+ }
+
+ return iters - nr_items;
+}
+
+static void
+do_benchmark (struct bench_result *res)
+{
+ timing_t start, stop;
+ void *elems[10];
+ memset (elems, 0, sizeof(elems));
+
+ alarm (BENCHMARK_DURATION);
+ /* Ramp up cpu before measuring. */
+ bench_start ();
+ TIMING_NOW (start);
+ res[0].iters = malloc_benchmark_loop (elems, 1);
+ TIMING_NOW (stop);
+ TIMING_DIFF (res[0].elapsed, start, stop);
+
+ timeout = false;
+ alarm (BENCHMARK_DURATION);
+ bench_start ();
+ TIMING_NOW (start);
+ res[1].iters = malloc_benchmark_loop (elems, 4);
+ TIMING_NOW (stop);
+ TIMING_DIFF (res[1].elapsed, start, stop);
+}
+
+static void usage (const char *name)
+{
+ fprintf (stderr, "%s: <alloc_size>\n", name);
+ exit (1);
+}
+
+int
+main (int argc, char **argv)
+{
+ json_ctx_t json_ctx;
+ double d_total_s, d_total_i;
+ struct sigaction act;
+
+ if (argc == 1)
+ alloc_size = 1024;
+ else if (argc == 2)
+ {
+ long ret;
+
+ errno = 0;
+ ret = strtol (argv[1], NULL, 10);
+
+ if (errno || ret == 0)
+ usage (argv[0]);
+
+ alloc_size = ret;
+ }
+ else
+ usage (argv[0]);
+
+ json_init (&json_ctx, 0, stdout);
+
+ json_document_begin (&json_ctx);
+
+ json_attr_string (&json_ctx, "timing_type", TIMING_TYPE);
+
+ json_attr_object_begin (&json_ctx, "functions");
+
+ json_attr_object_begin (&json_ctx, TEST_NAME);
+
+ memset (&act, 0, sizeof (act));
+ act.sa_handler = &alarm_handler;
+
+ sigaction (SIGALRM, &act, NULL);
+
+ struct bench_result res[2];
+ memset (res, 0, sizeof (struct bench_result) * 2);
+
+ do_benchmark (res);
+
+ d_total_s = res[0].elapsed;
+ d_total_i = res[0].iters;
+
+ json_attr_object_begin (&json_ctx, "simple");
+
+ json_attr_double (&json_ctx, "alloc_size", alloc_size);
+ json_attr_double (&json_ctx, "duration", d_total_s);
+ json_attr_double (&json_ctx, "iterations", d_total_i);
+ json_attr_double (&json_ctx, "time_per_iteration", d_total_s / d_total_i);
+
+ json_attr_object_end (&json_ctx);
+
+ d_total_s = res[1].elapsed;
+ d_total_i = res[1].iters;
+
+ json_attr_object_begin (&json_ctx, "optimized");
+
+ json_attr_double (&json_ctx, "alloc_size", alloc_size);
+ json_attr_double (&json_ctx, "duration", d_total_s);
+ json_attr_double (&json_ctx, "iterations", d_total_i);
+ json_attr_double (&json_ctx, "time_per_iteration", d_total_s / d_total_i);
+
+ json_attr_object_end (&json_ctx);
+
+ json_attr_object_end (&json_ctx);
+
+ json_attr_object_end (&json_ctx);
+
+ json_document_end (&json_ctx);
+
+ return 0;
+}
diff --git a/benchtests/bench-malloc-thread.c b/benchtests/bench-malloc-thread.c
index d16befa..7759c61 100644
--- a/benchtests/bench-malloc-thread.c
+++ b/benchtests/bench-malloc-thread.c
@@ -17,7 +17,7 @@
<https://www.gnu.org/licenses/>. */
#ifndef TEST_FUNC
-# define TEST_FUNC(size) malloc(size)
+# define TEST_FUNC(size) malloc (size)
# define TEST_NAME "malloc"
#endif
@@ -36,7 +36,7 @@
#include "json-lib.h"
/* Benchmark duration in seconds. */
-#define BENCHMARK_DURATION 10
+#define BENCHMARK_DURATION 3
#define RAND_SEED 88
#ifndef NUM_THREADS
@@ -206,12 +206,12 @@ do_benchmark (size_t num_threads, size_t *iters)
for (size_t i = 0; i < num_threads; i++)
{
args[i].working_set = working_set[i];
- pthread_create(&threads[i], NULL, benchmark_thread, &args[i]);
+ pthread_create (&threads[i], NULL, benchmark_thread, &args[i]);
}
for (size_t i = 0; i < num_threads; i++)
{
- pthread_join(threads[i], NULL);
+ pthread_join (threads[i], NULL);
TIMING_ACCUM (elapsed, args[i].elapsed);
*iters += args[i].iters;
}
@@ -219,7 +219,7 @@ do_benchmark (size_t num_threads, size_t *iters)
return elapsed;
}
-static void usage(const char *name)
+static void usage (const char *name)
{
fprintf (stderr, "%s: <num_threads>\n", name);
exit (1);
@@ -241,15 +241,15 @@ main (int argc, char **argv)
long ret;
errno = 0;
- ret = strtol(argv[1], NULL, 10);
+ ret = strtol (argv[1], NULL, 10);
if (errno || ret == 0)
- usage(argv[0]);
+ usage (argv[0]);
num_threads = ret;
}
else
- usage(argv[0]);
+ usage (argv[0]);
init_random_values ();
@@ -275,7 +275,7 @@ main (int argc, char **argv)
cur = do_benchmark (num_threads, &iters);
struct rusage usage;
- getrusage(RUSAGE_SELF, &usage);
+ getrusage (RUSAGE_SELF, &usage);
d_total_s = cur;
d_total_i = iters;
diff --git a/benchtests/expl-inputs b/benchtests/expl-inputs
new file mode 100644
index 0000000..9e429fd
--- /dev/null
+++ b/benchtests/expl-inputs
@@ -0,0 +1,1004 @@
+## args: long double
+## ret: long double
+## includes: math.h
+# Random inputs in [-10,10]
+-0x1.e789bfea7e0b7b2p+2l
+-0x1.402ce9cd820ba22p-1l
+0x1.0aff75533049c4fp+3l
+-0x1.5e877741882a3faap+2l
+0x1.52f42e7ceb880f2p-1l
+-0x1.02403d7952f2780cp+2l
+0x1.ff3411a45d039e88p+2l
+-0x1.0f3cad2392b81492p+3l
+-0x1.1f0a76abe016e8b8p+3l
+0x1.d4bf8c1a75ec682p+2l
+0x1.9229a9dec96315e8p+1l
+-0x1.a4b22031d574ae68p+2l
+0x1.64138024cea3d334p+2l
+-0x1.02a0b11943757306p+2l
+-0x1.454f53ef5d0b9acp-2l
+0x1.7ba5053e60291c98p+2l
+-0x1.2ab42be196e5cfep+3l
+0x1.3bcc82111aa14b34p+2l
+-0x1.630435ce88cce36p+2l
+0x1.04f4dc3e9bd7853p+1l
+-0x1.0ebbeceb9e3be7bp+3l
+0x1.26cbb541e5e4e5ap+0l
+0x1.1b8ea75123208ac8p+3l
+-0x1.cbd4daee8a4761p+0l
+-0x1.b4d89d5bd14f609cp+2l
+-0x1.fa6003cab764811p+0l
+-0x1.6f912b9f1ffec2p-2l
+0x1.3772cd49fb3fa0ap+3l
+-0x1.92c58088516e164p-2l
+0x1.05289001a75a4344p+3l
+0x1.a648980822811a8p+1l
+0x1.3a211c91d642cc1p+1l
+-0x1.bd4350d7fd5a7148p+1l
+-0x1.09175c9e71a9ffccp+3l
+-0x1.396634f7a2beb314p+2l
+0x1.5ceb175223db80bp+2l
+0x1.e32149055424404p+2l
+0x1.3fcb04ef68b2dbfp+0l
+0x1.3001a196923e54c8p+3l
+0x1.eacf870f01812fa8p+2l
+-0x1.7e1e2c766408b34p+2l
+0x1.0b9e00d8faf97658p+3l
+-0x1.65c588bbe879a5p-2l
+-0x1.13ccd97ab4820c5cp+3l
+-0x1.596f1545fa1f64eep+2l
+0x1.209c78fec17e73c8p+3l
+-0x1.d145923081d6ab62p+2l
+-0x1.a2bd852cafcaae3cp+1l
+0x1.76dfdfa7fa4dd6ep+2l
+-0x1.1b4208a1c5c101b2p+3l
+-0x1.44d756cd1ce5f4cp+0l
+0x1.c6bafeae6458edep-1l
+0x1.2e1041051d49deap+3l
+-0x1.906d7a88f19e726p+2l
+-0x1.e72a1dffcd7095p-3l
+0x1.f9047a6579beeaa8p+1l
+-0x1.e4543fc8c8342e14p+2l
+-0x1.61e482b5ad0dc1eap+2l
+0x1.38d67ef82f9a0b9p+2l
+0x1.08579fdcf8114788p+3l
+-0x1.b9a29a68db9fd9c2p+2l
+-0x1.b68b06b758e43b88p+1l
+-0x1.20766050a9f169eep+3l
+0x1.c7708e9625e93ap+2l
+0x1.ade8f58cb43dab2p-1l
+0x1.049fe37d9d715c1p+0l
+0x1.b887277f1f02cp-1l
+-0x1.b243bfadc5ddc2ep+2l
+-0x1.11487236451fa91cp+3l
+0x1.2630dec58a45c1f8p+3l
+-0x1.01fc94737a1eff26p+3l
+-0x1.28dfdfe7e0cfa078p+3l
+-0x1.c6973626cd0b89a4p+2l
+0x1.6828109c3d1e4b8p+0l
+-0x1.9f4932f5dc3d6b72p+2l
+-0x1.26207aaa7c150e6p+1l
+-0x1.d179181846330eacp+2l
+-0x1.f38c8bea3c560d54p+1l
+0x1.17c623cc8f38148p+2l
+0x1.3363bf8e6499c4p-2l
+-0x1.8a53aaa55b40a648p+1l
+-0x1.ad40b55b66fa3dap+0l
+0x1.6e998340d2819cf8p+2l
+-0x1.0694046421688544p+3l
+-0x1.49bace6eab49acf4p+2l
+0x1.fa40f72bfa662a88p+1l
+-0x1.18b9a8d41eb699p-2l
+-0x1.0a52573ff6356f8p+0l
+0x1.8fc3ddbaeee00eap+2l
+-0x1.9c5b48a3d51f0c2p+2l
+-0x1.435b7d4fabc1880cp+1l
+-0x1.6f53dadb30f2c35p+1l
+-0x1.0b55f0a12aa5f808p+2l
+-0x1.fa22b2bdb0a8f54p+0l
+-0x1.f154f0683db6d1bcp+2l
+0x1.043cec84fc912114p+3l
+-0x1.f00870521a8faf3p+1l
+-0x1.a661670f8bd47e2p+2l
+-0x1.1ea1774a6d65dd68p+1l
+0x1.283e1ec165ca678p+2l
+0x1.93411f1537237d78p+2l
+0x1.ce098081bbf2816p+1l
+-0x1.160e35e2a2ca6edcp+3l
+0x1.c5233ba4f9bb23cp-1l
+0x1.674d499bce136968p+1l
+0x1.5a33d5430077a7ap+1l
+0x1.080e0a8444240e1p+1l
+0x1.9bb39f0e4304aedp+2l
+0x1.03630a4d4d27b2dp+2l
+0x1.073c436c47848fe8p+3l
+0x1.d02157960cad702p+2l
+-0x1.5f40f740f3a54c58p+1l
+-0x1.e5a024b7308934p-2l
+0x1.3b65be5ae5c566fcp+3l
+-0x1.ecc75fa9fa61633cp+2l
+0x1.250c9992277475ap+2l
+-0x1.9ff4f42793ebep+1l
+-0x1.c912ae3277f07d7p+2l
+-0x1.d4544b83fc79c3bcp+2l
+-0x1.e12fe6386590d5f4p+2l
+0x1.2edf6b2fda92293cp+2l
+0x1.3a06739825b0b0dp+1l
+0x1.ffd0cbda983bcd88p+2l
+0x1.5778f7a61ce22964p+2l
+-0x1.333b908c4c42149p+0l
+-0x1.f322c1791082e234p+2l
+0x1.dea0513ebca1c6a8p+2l
+-0x1.104486b017e1c158p+2l
+-0x1.0d184c4ff9ca712p+0l
+-0x1.1ec3e8cb81b61b44p+3l
+0x1.f7cfb63f44f73fap+1l
+-0x1.a1919055b48e144p-1l
+-0x1.bf388de1caf8539ep+2l
+0x1.f8736096d49c7fa8p+2l
+-0x1.93dbbc3e453b24b8p+1l
+-0x1.8da7879e66dd1aep+1l
+0x1.098ad76d82c0398p+1l
+0x1.522d3502802087bp+1l
+0x1.928ab228775239p-3l
+0x1.df25df6d3ff68p-11l
+-0x1.5813cc1b2e02c98p+2l
+0x1.362a38bae6052d2p+1l
+-0x1.eed6cb53e0d9b6cp+2l
+-0x1.d0940a5ff2d33052p+2l
+-0x1.fa024b4ea1276ap-5l
+-0x1.0d7d9c64a8072854p+3l
+-0x1.8e766aa23898249cp+2l
+-0x1.b8db5a928f5923a4p+2l
+0x1.e85c9845d4472658p+2l
+0x1.1c6e50e6c12b3788p+2l
+-0x1.200a4c0baa64f3fp+1l
+0x1.014aa890a6583508p+3l
+0x1.d9863011deec2ep-1l
+0x1.0db57ad176bdec34p+2l
+-0x1.2f4410925993f59cp+1l
+0x1.e4c91152d55628e8p+2l
+0x1.3a55bc651e299544p+2l
+0x1.04a94d5e97273934p+2l
+0x1.0d130ef9bdc9bb1p+2l
+0x1.18e64636178f5a74p+2l
+-0x1.93f458f549797858p+1l
+0x1.1e9e0d5e0343d8f8p+2l
+0x1.26d4bdf1c51e714p-1l
+-0x1.7b62a4a4f802532p-1l
+0x1.e5aa90c97c4675bp+2l
+-0x1.312951dbdb3dabcp+0l
+0x1.dc6a39a05567779p+2l
+-0x1.e004b4f2820f97eep+2l
+-0x1.0aa3096fc16a844ep+3l
+0x1.c765a9d57994cee8p+1l
+0x1.914eb4e20f1457a8p+1l
+0x1.1f906f18a0962ep-4l
+-0x1.c65e9a780146cd84p+2l
+0x1.dc97b1e7ba1eabcp-1l
+-0x1.7dc65952eafbbc48p+2l
+0x1.335c604104264078p+3l
+0x1.689d6a5e179e216cp+2l
+0x1.0eda20d2be0c9238p+3l
+-0x1.03a823fa7ffb0198p+1l
+0x1.47702f41f2c487cp-2l
+0x1.a4679ddb7d5c62cp+2l
+0x1.1e9ae7cde6d64378p+3l
+0x1.106a0e0a14170108p+3l
+-0x1.9b5afcacb7ce6dfp+1l
+-0x1.311a2386b2d368d2p+3l
+-0x1.266e5116df96878ep+3l
+-0x1.1689855fcd97ac5p+2l
+0x1.f6359036d7ee49a8p+1l
+-0x1.1199a6917f4bbf5ap+3l
+0x1.193f46f4f5ef899cp+3l
+-0x1.560ad53795d5322p+0l
+-0x1.2f316f34137dd8ap+1l
+0x1.27349ad563cdb2bp+3l
+-0x1.036cdb509a4b3c54p+2l
+0x1.fe680bfe14b2426p+0l
+-0x1.c9fb596c3b347ad8p+2l
+-0x1.7e562a84532cd38p-2l
+0x1.314b5818c555f5cp-2l
+0x1.7daabd936b1f25bcp+2l
+0x1.c5c8b6f4c0121p-3l
+0x1.16dfcdeedae826a4p+3l
+-0x1.a934f04d2b86333p+0l
+0x1.123a572565ea2114p+3l
+-0x1.160528e9183a258cp+2l
+0x1.5d39d58ed2ef036p+2l
+0x1.12804e2a233e3278p+3l
+0x1.ea0786e29d495cp-3l
+-0x1.0f8b9abe97665d8cp+1l
+-0x1.19f405cd85ccdaaap+2l
+-0x1.9b4110c73b2a972p+1l
+0x1.134ce743f9d40fap+1l
+0x1.3aa72e6f3bb6f03p+3l
+0x1.fe72e134af47798p+2l
+0x1.949d34efeb82b6ap+0l
+0x1.2deb59ce44ae872p-1l
+-0x1.f9ac8621bb4b33f8p+2l
+-0x1.94e948db4960c0fp+2l
+-0x1.241f54727184909ep+3l
+0x1.a541fb872349d03p+2l
+-0x1.9a1afd055e65bd2p-1l
+0x1.d718277aa515798p+1l
+0x1.cb82bd737c0f39ep+0l
+0x1.f4d19bc02f6497ap+2l
+0x1.f396eed13d3a7ad8p+2l
+0x1.1ed7d0d5cfeaf55p+1l
+0x1.6d920d5e1161b8p+0l
+-0x1.1452f89366e70baap+3l
+-0x1.bdda90cd25ed2b28p+2l
+-0x1.52c7f405410f9acp+0l
+-0x1.abcc2fde1abf3074p+2l
+0x1.28c060175a14431cp+3l
+-0x1.3392531603c4d24p+0l
+-0x1.2a179120e3c23e2p-1l
+-0x1.c20aa8ec83aea1d8p+2l
+0x1.238be8cce341f9bp+1l
+-0x1.d24ac8996328526p+2l
+-0x1.190c701b70a62986p+3l
+-0x1.14854910de2766e4p+2l
+-0x1.1f35343d09c6f8fcp+1l
+0x1.230cd6ed94aaecacp+2l
+-0x1.2107c372b3059b12p+3l
+-0x1.a6a563a1d0ae1ebp+1l
+-0x1.776f8cca0bdb4ae4p+1l
+0x1.66b3fb3d827646d8p+2l
+0x1.d3fc5e541ff0e27p+0l
+-0x1.1a2f4761fc7a0b4p-1l
+0x1.e116afd8ff6c92cp-1l
+-0x1.99fa54aca05566ep+0l
+-0x1.b3c60c9436471794p+2l
+-0x1.ca24c3fca327468ep+2l
+0x1.eea89a51f83c5db8p+2l
+0x1.f294236f9a04ed38p+2l
+0x1.05acb5b1ece32dcp+0l
+0x1.3e096846750d5d4p+2l
+0x1.2f6a957eeb24b87p+1l
+0x1.d69ae3cd1891d22p+2l
+0x1.c372c9dd4f80a05p+2l
+-0x1.c4ef9624b7a4d61p+2l
+0x1.0792c878d381c7p-1l
+0x1.244c8c1635e56638p+3l
+-0x1.105b6845cc40a1ap+0l
+-0x1.02cddc1271b225dp+1l
+-0x1.6cd86b16e08527d2p+2l
+-0x1.9c4cb251b9e67038p+2l
+-0x1.aacc9646b1da61dap+2l
+0x1.adbcf3398cc4b98p-1l
+-0x1.1be21090bfd7a5cap+3l
+0x1.b30f414ce703da7p+2l
+0x1.3977936bf61b56bp+2l
+0x1.7486f1c34fef44c8p+1l
+0x1.196c5444ab658518p+1l
+0x1.4bcd5aea20c7b8ep+1l
+-0x1.481f3b109feebcfp+0l
+0x1.2cc94273ec3ba0dp+2l
+0x1.0cb56d0382ef7b04p+3l
+-0x1.78c8714e98b6e16cp+2l
+-0x1.e8096b8f4435df3p+0l
+-0x1.73839566ca1d951p+0l
+-0x1.8ade9ae79f9621dp+2l
+0x1.31435fd6a51cb4fp+3l
+0x1.2fcfef197e307d34p+3l
+0x1.56af3f89adf57668p+2l
+0x1.7344fd837d6e1ed8p+2l
+0x1.fbfe3a5c345bdc48p+2l
+-0x1.2800b9524cc067f6p+2l
+0x1.f8f2df26a8f9094p+1l
+-0x1.3c7d15f2577fd0b4p+2l
+0x1.c7e6edb48bbdfecp+2l
+-0x1.7066004abaa8633ap+2l
+0x1.747ac849e3853b2p-1l
+0x1.f55f987bc716b518p+1l
+0x1.a956a85983143118p+2l
+0x1.a3b25268c75f953p+0l
+0x1.d82d76bd2fadb54p+2l
+-0x1.bab4ab2d73a153dp+1l
+-0x1.b4b819289c9d1d58p+1l
+-0x1.ca7e30dd6c3c3e2ap+2l
+0x1.2a566ebdbfb07e6cp+2l
+0x1.891fbcee66dcecdp+2l
+-0x1.29f325541634f09ep+3l
+0x1.1abcb0740d4d6a74p+3l
+-0x1.29e4d1429f8e835cp+3l
+0x1.1302daedb1324d3p+0l
+0x1.9bd0d8834894e28p-3l
+-0x1.2a0f985d3776e58p+1l
+0x1.1396416a30ab1cep-1l
+-0x1.20e7002263cbd456p+3l
+0x1.9b137b6bf47bd78p+0l
+0x1.4f69ad880ffe21bp+2l
+-0x1.c25b9bac58b8c3a8p+1l
+-0x1.19da47962c6c49p+1l
+0x1.da570eee749717b8p+2l
+-0x1.e46dbd51e4b20fe8p+2l
+0x1.8dd2bef1437c2p+2l
+-0x1.12f621369ab01d44p+2l
+0x1.797731d804aa37dp+2l
+0x1.29e8d5ea5ff3031p+1l
+0x1.4d44f9ef640caf1p+1l
+-0x1.3eaf6c647598cdd4p+3l
+0x1.c0c0e11854be758p+2l
+0x1.5eacd355235e2528p+2l
+0x1.3cfc847834a5c3d8p+3l
+0x1.049820624dd6002p-1l
+-0x1.0db663ef006fea5ep+3l
+0x1.9b1437fa3da40808p+2l
+0x1.0c25883913d3dbfp+2l
+0x1.852ade7cd1607d2p+2l
+-0x1.3abac366d0b4d5cp+3l
+0x1.6a56257c1138d54cp+2l
+0x1.3d427dc7a7116528p+3l
+-0x1.a397980397d57c94p+2l
+0x1.aad7371fa96b16d8p+2l
+-0x1.e4136a1e660cc1d6p+2l
+0x1.6da2bf98726d9d5p+0l
+-0x1.6c63ec6cb561414p+2l
+0x1.eca1d0e20cb302e8p+2l
+-0x1.528a9884ce32de9p+1l
+0x1.d5c981ffe6294ep-1l
+-0x1.3bdabad98013cae4p+3l
+0x1.9cbada1299c0f01p+2l
+0x1.2e40a5376c780cp+3l
+-0x1.102530c75f18dd8p+2l
+0x1.72b0235c9ad31e8p-1l
+-0x1.14a8449de2605732p+3l
+0x1.3bd357e3504fb25cp+2l
+0x1.80d45a6aaa792a9p+2l
+-0x1.06df9b55792fe0bp+3l
+-0x1.ca984018b26730acp+2l
+0x1.f2f316bfa49064ap+1l
+-0x1.0a059c4ed3e1a58p+2l
+0x1.e9804b664b96fbfp+0l
+0x1.00cf399683208b2cp+3l
+-0x1.4c24fb12d818e7p+1l
+-0x1.174e2bc629e041fp+1l
+-0x1.0901ba575d86318p+0l
+0x1.6051bc1f7d3b22ep+1l
+-0x1.a28f83dda623abb4p+2l
+0x1.9c8c63c9eff99888p+2l
+-0x1.1b7553e771eadaa8p+3l
+-0x1.d57d95bb4ee98c98p+1l
+0x1.6e974a46254b0448p+2l
+0x1.36fa2f09839e2c08p+3l
+-0x1.2d126d9f61610f68p+1l
+-0x1.9e75033444aee792p+2l
+0x1.ed1f3d4d3025592p+2l
+0x1.39fa499e03db7038p+2l
+-0x1.d65a09b4abd32ed4p+2l
+0x1.eb86d3a8b7d70308p+2l
+0x1.d86a560c16f5ad48p+2l
+-0x1.9dd8e3fa57fc65p-3l
+-0x1.80f61cf71388ad52p+2l
+-0x1.fb956480a7143ef2p+2l
+0x1.a823b7686813c308p+2l
+-0x1.3d2b09b19056dc9p+0l
+-0x1.14dee653a4b9f776p+3l
+0x1.4330c1e6f5bf92a4p+2l
+-0x1.70d154f4c770ab54p+2l
+0x1.bca715264dce36cp+1l
+0x1.7d939287cb2ac32p+1l
+0x1.e1abb17f8289b16p+0l
+-0x1.d67096348890a4fp+1l
+0x1.97360e3c0fa1e908p+2l
+-0x1.74e99eb4bd342b6p-1l
+-0x1.26cc55807b8317c8p+1l
+-0x1.3807131facc49f58p+3l
+-0x1.a40902b12d5a7f3cp+1l
+-0x1.ba6b0233e66c0eep+0l
+0x1.78a074e6fdb7a02p+1l
+-0x1.3a79b3dc308e18dcp+3l
+-0x1.993761846a8b9cfp+2l
+0x1.559b8c147a4bd3dcp+2l
+0x1.7ae21fe6de6e55f8p+1l
+0x1.325837f838ad0cc4p+3l
+0x1.74feb5b1cc5b8858p+2l
+-0x1.352bf1044b3e356cp+2l
+-0x1.21034f18363433c6p+2l
+-0x1.0932b475c2785a18p+3l
+-0x1.393aacad24767802p+3l
+-0x1.2b9dc282cbd494cp-1l
+0x1.2fb62c86c34c4a78p+3l
+0x1.5d3284cbaa6874cp-1l
+0x1.d7ec63bb0c195b3p+1l
+-0x1.bf30cae0543685e4p+2l
+0x1.50110e87dd2acfp+1l
+0x1.303f3b4c06d05d9p+3l
+0x1.0005c20b0a013368p+3l
+0x1.269ac3086fd1e3ep+3l
+0x1.ccc200a070d76p+2l
+-0x1.ab2984a5ba30ddep+2l
+0x1.05bda482442163ccp+3l
+-0x1.aca2410d02a70dap-1l
+0x1.9acb4ace85a1c108p+2l
+-0x1.9713b1e496721cfp+1l
+-0x1.1fac392ebf3c4316p+3l
+-0x1.d500a5eb3b37725cp+2l
+0x1.b10803c7cfba934p-1l
+0x1.e4e0da1d4fc40788p+2l
+-0x1.d582953beed93738p+1l
+-0x1.cb20d44974a921b4p+2l
+0x1.2becf58983cde2p-3l
+-0x1.181938f703525d3p+2l
+0x1.05a62ef5285d819cp+2l
+0x1.215428be91005318p+2l
+0x1.bc943e2de4643db8p+1l
+0x1.1ef991db3164e258p+2l
+0x1.9a11733c6e7f0288p+2l
+0x1.7f7a31af9dfa7b78p+2l
+-0x1.eb83717b9e590d98p+1l
+-0x1.dd275539027c9364p+2l
+-0x1.121d2e6c48e321p+2l
+-0x1.16335eb55946394ep+3l
+0x1.b25ed5721f917d48p+2l
+0x1.acdc9d4f4c6a2a7p+2l
+0x1.9c17298383879cb8p+2l
+-0x1.06c0a469a7b3d4cep+3l
+0x1.4a2784e0866ad04p+0l
+0x1.b2f86175e491a94p+2l
+-0x1.5a0efd32de3d49cp+2l
+-0x1.caee58ed27798cep-1l
+-0x1.080c394be4c93a2p+1l
+0x1.9d8eda813d1604p-5l
+-0x1.7a56f17a687d819cp+2l
+-0x1.90d3ce2a0d4a2bd8p+1l
+0x1.d6d9a69e1d61ee2p-1l
+-0x1.bcafd1cab992786cp+2l
+-0x1.e9596fb61dd8e118p+2l
+0x1.76e5acd280e8254p-1l
+-0x1.b231fe826949035cp+2l
+0x1.36f9e752f5ef551p+1l
+-0x1.9ba8e1b5ff1aff4p+2l
+-0x1.13b605316a459c1cp+1l
+0x1.c4563c920875cc18p+2l
+-0x1.db261127d316b868p+1l
+0x1.f84cbfab8e3e87fp+2l
+-0x1.958f6ee2556b48dp+2l
+-0x1.11c368f6f0134e64p+2l
+0x1.5d765b8020eff56p-1l
+-0x1.d78d93cf69ba1c64p+2l
+-0x1.1646d8c8ab7aedfcp+2l
+0x1.944e53e265368c5p+1l
+0x1.337f97e427b2c698p+1l
+-0x1.0ee186a16907511cp+2l
+-0x1.8e4c6350b691802p+1l
+-0x1.9d83332006d7381p+0l
+0x1.f17f5e27fd952f3p+2l
+0x1.092ffff97fadc79p+3l
+0x1.38d112f031bee00cp+2l
+0x1.2a34380200420bep+2l
+-0x1.d7b3edac5817ab88p+1l
+0x1.d7bc196f339e5068p+2l
+0x1.448032d4229b5e04p+2l
+-0x1.2a4e435a2afdb34ep+3l
+-0x1.b0cddef58df775b8p+1l
+-0x1.5d0afe9056f985cp+0l
+0x1.250dfc5b93041c08p+3l
+-0x1.757da5f57b8c0a44p+2l
+-0x1.751d9e3ff11652p-4l
+-0x1.1c2078930e749bcp-1l
+-0x1.fe6b4ec84b4a40b6p+2l
+-0x1.997efffddaf8ada8p+2l
+-0x1.f795ba692e2093acp+2l
+-0x1.c88d12fc37ffe208p+2l
+-0x1.43a53bef954628aap+2l
+0x1.de776d19a286bb8p-3l
+0x1.dd7be8ee602c51bp+2l
+-0x1.2b2c4f7acf6707b8p+2l
+0x1.b9fc6ec4626d643p+1l
+0x1.3f8ecb24d4a8d578p+2l
+0x1.d81ffede4da75dcp+1l
+-0x1.ae3b082796ed39b4p+2l
+-0x1.4579b82e2647eea8p+2l
+0x1.a0f13db4e190a56p-1l
+-0x1.845dbd61b2cd3566p+2l
+0x1.db010cc7884f14dp+1l
+-0x1.545bed856e604fa8p+2l
+0x1.8848c528b2ac791p+2l
+0x1.6ff743db80dd0b4p-1l
+-0x1.0a31dae0e3e0cab4p+3l
+0x1.dd2b87ca514b208p-3l
+0x1.e50cf26e835cfd2p-1l
+-0x1.d8a2204c9bc27224p+2l
+-0x1.3c2c5e5d5910bd42p+3l
+-0x1.ac701821499797dp+2l
+-0x1.eff66b74059aa2aap+2l
+-0x1.1417314c2b35a64cp+3l
+0x1.e7d7f658e028664p+1l
+0x1.0f447041460a1dccp+3l
+-0x1.aef6aa7a737a169p+0l
+-0x1.7577a4e455d99b94p+2l
+0x1.fe213dd581a5cf28p+2l
+-0x1.be97aebbd9b8d288p+2l
+0x1.cf8cdbb6815299ap+1l
+-0x1.569fc518ed44a7e2p+2l
+-0x1.2dd5f460c33a880cp+1l
+0x1.2cf2d5079b631ddp+3l
+0x1.dd9a8cea6ec239p-4l
+-0x1.7bc7ad5066de3938p+1l
+-0x1.b16b002a76ce77p-2l
+0x1.8bbacfb463be6928p+1l
+-0x1.fdd185899dda686p+0l
+-0x1.6e81c6861fd43034p+2l
+-0x1.7c4efd5875b60a98p+2l
+0x1.bcf2549f9bf9375p+2l
+0x1.bd8899a88425616p+0l
+0x1.636209b5a92d87d8p+1l
+-0x1.69eb096c0b42c598p+2l
+0x1.c821a82e7282c808p+1l
+0x1.12482cd19df491cp+0l
+0x1.024091708e2adadcp+3l
+0x1.2829a98226212df8p+2l
+0x1.b3b1084744747b8p+1l
+-0x1.c4a554a7c86a691ap+2l
+0x1.0d3543a7208c0e18p+2l
+0x1.b4ef8862c1b56b48p+1l
+0x1.47bcefb630ba9cf8p+2l
+0x1.f89f71d7c142fap-3l
+0x1.b4402ca4d014f718p+1l
+0x1.565f47630e95292p-1l
+-0x1.ac0f9dd3a2f5fb8p-2l
+0x1.536e16001074268p-1l
+0x1.3033f1cdebbbfa58p+3l
+0x1.b3687b960ce3fb1p+2l
+-0x1.f2e3d99dad555cp-1l
+0x1.2e7e71a495f4a0dp+2l
+0x1.a8a58472f27d84cp-2l
+-0x1.24c60111af2ac6p-5l
+-0x1.e57c0cc7e7431812p+2l
+0x1.46b2e56621f82e6p-1l
+0x1.ad81e81333d72f78p+1l
+-0x1.5e3331e54eafb1ecp+1l
+-0x1.fc72c7c9e12c2d7cp+2l
+0x1.51589b244c66d408p+2l
+-0x1.370113ade2575f4ep+2l
+-0x1.1067a189494e7a1ap+3l
+-0x1.b5ce9143e00ba1cp+0l
+-0x1.097b18eac5d841f8p+3l
+0x1.fbb187564d9d6a3p+2l
+0x1.7ae8c777ea5f275p+0l
+0x1.7fc60f6d3d28072p-1l
+0x1.fd9312cc8dca8edp+2l
+-0x1.c1b3c854234522ep+2l
+0x1.e72f953d0a4ba4e8p+2l
+0x1.78167ea0cafe5328p+2l
+-0x1.faa7575fd53e38cp+0l
+0x1.1227bd27c1c7a1fp+3l
+-0x1.03f1561a5bb0a8f8p+2l
+0x1.0c5c7fa1c4fc89bp+3l
+0x1.535362b33b0606ap+2l
+-0x1.1f451d72396ea7cap+3l
+0x1.fe19b2aea9bdac5p+2l
+-0x1.a7803f8ba3fcc4p-2l
+-0x1.035b2485848edp-2l
+0x1.6f323500c53b42c8p+1l
+-0x1.2cf86635f125bf18p+2l
+0x1.59e2453f9086bep+2l
+-0x1.8b0869bdd099487p+1l
+0x1.d72169c2b4c71ap-2l
+0x1.d7d41622e65127ep+2l
+0x1.2bf7cf80057df3e4p+3l
+0x1.4fe78019918017bp+2l
+0x1.190857657014b9ap+0l
+-0x1.1fcd86c4f1004d34p+3l
+-0x1.1a521ed1e3db87eap+3l
+-0x1.30619a0869df0522p+2l
+0x1.9f07a57401581bp-4l
+-0x1.2e9c1180841184b8p+1l
+0x1.e1d8212c45242bc8p+1l
+-0x1.bd536f11349b4afp+1l
+-0x1.0ea6b0f854cff35p+2l
+-0x1.02a8cce3ddf7e58ap+3l
+-0x1.2d9a7b97a7965676p+3l
+-0x1.f9df01e8141bd004p+1l
+-0x1.bb17bd6ee28cdd8p-1l
+0x1.ecda03107d093eep+2l
+0x1.18c73022d2d764ccp+2l
+-0x1.f52ade79328bd05p+1l
+-0x1.21945ff3c8192424p+3l
+0x1.967f5b88b65619ap+2l
+-0x1.dabb785b74e98f6p+0l
+-0x1.2c6dd0f7e84f618p+0l
+0x1.48a3d15ed427069p+2l
+0x1.13652e71c8e4b3b4p+3l
+0x1.0eaf34ee7b712fap+0l
+0x1.c3b2daf4c28d31bp+0l
+-0x1.428134bb231b4446p+2l
+-0x1.69617bd7a32694fp+2l
+-0x1.87a1f3e364aded88p+1l
+-0x1.9dc4cf7adeae3914p+2l
+-0x1.5f9c1c6ca67ebep+2l
+0x1.794e71eb9fa9d884p+2l
+0x1.fd0011380488fe58p+2l
+-0x1.512b3229657452p-3l
+0x1.00ec4f75b15779fp+2l
+0x1.a1898f99805fb1p+2l
+-0x1.62528abfe7ab39p+0l
+0x1.62a63bf7387fab4p+2l
+0x1.7e442efe24d2734p+1l
+-0x1.dc5aa9032b60bb68p+1l
+0x1.c493f99d5b83981p+1l
+-0x1.8eb0166508ff708p-3l
+-0x1.af618a87657c7d8cp+2l
+-0x1.b22aad922c3c5868p+2l
+-0x1.cb9b741410a463p+0l
+-0x1.7ec2b1d5baacc8p+0l
+0x1.112f01dbeac0999p+1l
+0x1.1dc57a97d2f79994p+3l
+0x1.d9f52ceae81bace8p+2l
+-0x1.37d953d9974f9082p+3l
+-0x1.14b904ec2257f2ep-1l
+0x1.49c06199d695fc54p+2l
+0x1.d1ee0f46a19513cp+2l
+-0x1.0809acd9b861caaap+3l
+0x1.663f7285506a27dp+0l
+0x1.0ae55707429d511p+1l
+0x1.57c0c150464618a8p+1l
+0x1.f110471afccd825p+2l
+-0x1.de2cecd4d85e666p+1l
+-0x1.49c5b5053fb731acp+2l
+-0x1.d4a48992d685a936p+2l
+0x1.cbd4aabd51058e48p+2l
+0x1.2b9cd3b7ed2eeedp+1l
+0x1.753d43672584ceep+0l
+-0x1.8c9bde42cfe2ae54p+1l
+-0x1.c817c79b1249beep-1l
+-0x1.aba3e8a654cc03e8p+2l
+0x1.2e06ed606674806p+3l
+0x1.4d1563fbe883d138p+1l
+-0x1.ec8b43e6b12b7478p+2l
+-0x1.de735128a55e9ce8p+2l
+-0x1.e0aa63afd857247p+0l
+-0x1.8a61f0f9aaba77ep+2l
+-0x1.f2d5dd5a362d358p-1l
+0x1.281c7bf1ff8f2978p+3l
+0x1.cfccf00333a55138p+1l
+0x1.936eb275b6509eap+1l
+-0x1.73229bf4a5755d4cp+1l
+-0x1.8c4e3b34e32901c4p+2l
+-0x1.38ae748d01eacdbp+0l
+0x1.2917dceee47264p+2l
+0x1.c660d7fe501909b8p+2l
+-0x1.ca7c5a46983d386p-1l
+-0x1.c5f05b81502d11p+1l
+-0x1.56e941ca08827d8cp+2l
+-0x1.6081bc0ed72a4d8p+2l
+-0x1.148c19ce1bfcebc8p+2l
+-0x1.008529b7ab4a2642p+3l
+0x1.db1ac03dbd3d8758p+2l
+0x1.f014639fc5421p+2l
+-0x1.336514d6adee196p+2l
+-0x1.09c74e61daac94bap+3l
+0x1.b994ee6b9c4b85b8p+1l
+0x1.02f715dfa2435ec8p+3l
+0x1.46f3710d981ad09p+1l
+-0x1.bd0a086b0a389e3p+1l
+-0x1.0eb2e64673586916p+3l
+0x1.adb841087261638p+2l
+-0x1.aa5b7265e1d0cebcp+2l
+0x1.d9c0e35dd5b9362p+1l
+0x1.19643f2062cb0558p+2l
+-0x1.16bdd8a578384d58p+2l
+0x1.09d24ed36d3ed9e8p+3l
+-0x1.66db6bfbb88fb458p+1l
+-0x1.dbaac6191de075ep-1l
+0x1.774a38297764db84p+2l
+-0x1.755336bf5bf5e3c4p+1l
+-0x1.5411b54a6984d5dp+1l
+-0x1.bbe8381cd853953p+0l
+0x1.8f24cb28c238774p+2l
+-0x1.ace2f6530cfe5ap-3l
+0x1.4915eb62cdafb9d8p+2l
+0x1.a39457a2db47396p+0l
+-0x1.0d27aee9f8b545c4p+2l
+-0x1.96b3a51cbe9aef54p+2l
+-0x1.20e206c1d398458p+0l
+-0x1.28d4e3eaf2427d4p-2l
+-0x1.2524be13a10445cep+3l
+0x1.2b1c91e5fe21a778p+2l
+0x1.3570dfe170b2e9a4p+3l
+0x1.1328dacf9c5f6e58p+3l
+-0x1.e5a3b37ad3b30dc6p+2l
+0x1.1e2f5a2216c45f98p+3l
+0x1.57fb010365d538p-3l
+-0x1.09e43365625638ecp+3l
+0x1.11bd2a96b6e21bp-2l
+-0x1.f334dff953126fep+0l
+-0x1.43856069d03d735ep+2l
+0x1.03d1bf9287d80dep+1l
+-0x1.2432548ea35080f8p+3l
+0x1.1a7557c43a144f68p+1l
+-0x1.933720c486e8b098p+1l
+-0x1.11567aaae2ff57ap+3l
+-0x1.092bd1ad0b9c6c32p+3l
+0x1.fd6ef6f3670c7fcp+1l
+-0x1.593830f0edf58e34p+1l
+0x1.68190ed9fc9edfecp+2l
+-0x1.936e5b2700f79ddap+2l
+0x1.b447e0b06a4555c8p+1l
+-0x1.25365be442f1b434p+2l
+0x1.3f5a26dc52dc813cp+3l
+-0x1.44c9c9d22dbf793p+2l
+-0x1.519151213026518p+0l
+0x1.285a28892fa918ecp+3l
+-0x1.2cdf1bd2270d1f88p+2l
+0x1.c4341fddf096a19p+2l
+0x1.292df2fa474c2b6p+2l
+-0x1.01c745e96e41fe6p+1l
+-0x1.3c7262bb38370982p+2l
+0x1.542d4880dc0609p+0l
+0x1.9208acc6c3b1793p+0l
+0x1.2b97d27b7628e4ecp+2l
+-0x1.93dc44f723dfbfap+1l
+-0x1.6d0f4e0ad3ef96p-4l
+0x1.6292aa3124daf6dp+1l
+0x1.04111377a83b69d4p+3l
+-0x1.2a2600742df2965p+3l
+-0x1.423ee6c53d4c40fp+1l
+-0x1.033ca69b08f17e6ep+3l
+-0x1.6b01e441f6d6c0bap+2l
+-0x1.0177f41b2db53dbap+2l
+0x1.74de655eab7ef2p+1l
+-0x1.6585b7026d231fbp+0l
+-0x1.29608c0d0ce0e6d8p+1l
+-0x1.effceee4766c28bap+2l
+-0x1.61438c42c8e9149cp+2l
+0x1.2b72a672a4adefap+0l
+-0x1.80f421b90678e78p-2l
+0x1.59ab4ed5858b948p+0l
+-0x1.35433d878f314caap+2l
+0x1.37e5db07d1b10f7p+3l
+0x1.f23c369e83e8b2ep-1l
+0x1.7b55b17bbe0eebd8p+2l
+-0x1.340548c18fa31b5p+0l
+-0x1.ae5fc0a436cc37dcp+2l
+0x1.09f958e6f40609bcp+2l
+0x1.b800bf38b40b579p+2l
+-0x1.2988356eb3df568p-2l
+0x1.f6eb6f421ebea9ap+2l
+0x1.293afc5862bd9a84p+3l
+0x1.13ab2034e91386e4p+3l
+-0x1.d890ac5be58230f4p+2l
+0x1.1f9bb34079d07c4p+1l
+0x1.2b2096cebdd7c3cp+3l
+-0x1.2cb901ce63c1d3dp+1l
+-0x1.d59ca1e539ef5cb8p+1l
+-0x1.6f4dd551433dcf0cp+1l
+-0x1.aab0a50455d0aa38p+2l
+-0x1.675869550e5cc6e4p+2l
+0x1.47ca2c5c1c22703cp+2l
+0x1.1c437c52a02eb248p+1l
+0x1.85200c408cd1fp+0l
+-0x1.872dff034b008d7p+1l
+-0x1.7de8ee0a485bf5a6p+2l
+-0x1.06bd1be769dc951cp+2l
+0x1.552e4ee8d81b4e3p+0l
+0x1.8d9a7098d713be2p+1l
+0x1.2dcc57ec5733a2bp+0l
+-0x1.be45aa299cd303a4p+1l
+0x1.6861fd8969de5dc8p+1l
+-0x1.1b217198dc78cb88p+3l
+-0x1.29b210f62c55c368p+1l
+-0x1.3e3f2da052f9855ap+2l
+-0x1.a1311fce6788024p-1l
+-0x1.c70ed29bc9e83ccp+2l
+-0x1.1168ad8650f058f8p+2l
+0x1.27218831bdb4af3cp+3l
+-0x1.321f2fbf85e3b646p+3l
+0x1.8f71f682bdf06e58p+2l
+0x1.9cdf1b9bb772078p+1l
+0x1.86469e7247877e4p+2l
+0x1.9c93efaf226e574p-1l
+0x1.9e7dde158dff3fp+2l
+0x1.e5790055340944e8p+2l
+0x1.9dd88a00f9ff876p-1l
+0x1.38c327063f8b6d18p+1l
+0x1.13af8e86498ee81p+3l
+-0x1.7d41e39c23bfa928p+2l
+-0x1.330bb2d70257d82p+3l
+-0x1.daa358f7358dabb2p+2l
+-0x1.f681c01c030d74d4p+2l
+-0x1.9c4c5f13bd2a4818p+2l
+0x1.d57743abdacc943p+2l
+0x1.51164d812d6975d8p+1l
+-0x1.20e7027af5d623p+0l
+0x1.fb341bc9eb2dd26p+0l
+0x1.b9a5009bfdcad9p+0l
+-0x1.95369638a23fe42p+0l
+-0x1.3ff760db08462b4p+3l
+-0x1.290d888cd634c4d8p+2l
+0x1.39dbb183260c7d2cp+3l
+-0x1.d2251b0d3396f3bcp+1l
+0x1.164a741a87e1ab6p+3l
+-0x1.ee5157e4f616bb5p+1l
+0x1.7eefde481c7639cp-2l
+-0x1.02dc5cbbf5c14c38p+1l
+0x1.efdb1c39658d0308p+2l
+0x1.65e55524006bd328p+2l
+0x1.5d5fd107dee15c4cp+2l
+-0x1.1d3dcadd2988e96ap+3l
+0x1.a5674afbd96afdp+2l
+-0x1.7d632522bfc25e8p-1l
+-0x1.908e51efbc36173p+2l
+-0x1.3206c9b681046042p+3l
+0x1.513c441f7e2334dp+2l
+-0x1.1996451edc2184c4p+2l
+0x1.b38b6a1575304708p+1l
+-0x1.30e781af07304778p+3l
+0x1.862e3fa5742869a8p+2l
+-0x1.30a2c3422d22247p+2l
+0x1.8e2f90affded13p+0l
+0x1.60418360f7b1ad64p+2l
+0x1.c6e3f76d27560e38p+1l
+-0x1.03603a32e7b4933p+3l
+0x1.2ec29a4dbd33a2d4p+2l
+0x1.3e3a60705820b548p+1l
+0x1.09563aa03f541b9cp+3l
+0x1.71cceb27c30f085p+2l
+-0x1.b6c00d1a9799d8fp+2l
+0x1.784f05a55a05a4f8p+1l
+0x1.e809000bed00b91p+2l
+-0x1.3d57aff6c2fe620cp+3l
+-0x1.37698735e1211aecp+3l
+0x1.2a6b6d426fb679c4p+2l
+-0x1.f9a2aaf6abb87168p+1l
+-0x1.3cf089b12bea3c6p+0l
+0x1.15354c723d55720cp+3l
+-0x1.9a237362f75c1016p+2l
+-0x1.891ba0331c95d67p+0l
+0x1.933de74faece1b78p+2l
+0x1.2cbbcd09e7c27f4p+3l
+-0x1.9a6ebf001089bf5p+2l
+0x1.2922ef92bc3372a4p+3l
+0x1.70e05231d7f1ee38p+2l
+-0x1.fad9f3c83ec350f8p+2l
+0x1.63e93ac5b5c3ef8p+0l
+-0x1.f2129f03426e579ap+2l
+-0x1.4bb443206203c62p+0l
+0x1.03a0c42d46716878p+2l
+0x1.14e4596e667e94cp+3l
+-0x1.bd08244c4523788p+1l
+-0x1.978ac90b3b0da028p+2l
+-0x1.a2ec4ba6d93924e6p+2l
+0x1.6d029fe3698c8c74p+2l
+0x1.4c738e3e199603ep+1l
+-0x1.34507bf89caa607cp+1l
+-0x1.0f40e718176d92p+1l
+0x1.ec70557e293d3a4p+0l
+-0x1.8154d4e79070fc78p+1l
+-0x1.91135dcde581b71p+0l
+-0x1.3f25db28d50211f4p+3l
+0x1.187fb934e2fc50cp+2l
+0x1.53172ed11433e18p+1l
+0x1.1ab62fd78574e57p+1l
+-0x1.a699cc6fed6215p+0l
+-0x1.054be46c696fdc3cp+3l
+-0x1.3df135a5d4d6fccep+3l
+0x1.3b9abc0a75dd395p+3l
+-0x1.71309b99f107788ep+2l
+0x1.0aa96a60e9aa1ca8p+3l
+-0x1.ca5a69a0f99603cp-1l
+0x1.3349458cd2e99f1p+3l
+-0x1.000c16e5308da70ap+3l
+-0x1.5d87ddc473f6f32cp+2l
+-0x1.496e40ce61b01c82p+2l
+-0x1.38c34a938d00b652p+3l
+-0x1.f68e6d79de6db324p+1l
+-0x1.28fecca2c3f4f858p+3l
+0x1.828ce124be53f78p+1l
+0x1.17cbf7ae9a2f4a7p+3l
+0x1.ccca89e567df2b88p+2l
+0x1.14235d293d3e84c4p+2l
+0x1.c9395b43eefe0078p+2l
+-0x1.e742ea22dbcc538ap+2l
+-0x1.5324a12912147b2p+1l
+-0x1.375bd290cff89b6cp+2l
+0x1.a9633c2ce2c4d98p-3l
+0x1.894be1bfe0220d98p+2l
+-0x1.8997f35e1562828cp+2l
+0x1.8cb0f689e6751bcp+2l
+0x1.4721a726072644a8p+2l
+0x1.185ececd6b3f9dbp+2l
+-0x1.08a2d97429d55a5ap+3l
+-0x1.0f715ff1af0b10c6p+3l
+0x1.e6583c5f7f93319p+2l
+-0x1.00c09ff57791c046p+3l
+0x1.238466a4de3e36ecp+3l
+-0x1.a18d61615779738p-3l
+0x1.696d1c905c0b09bp+1l
+0x1.07b81ada25ab65f8p+1l
+0x1.3ccf20abcd549af8p+1l
+0x1.fe5350bea3b6b6ap+2l
+-0x1.be5eb7bd7a8e4ddp+0l
+0x1.114d7c2cc6ec6e98p+3l
+0x1.75ae6a62162a622p+2l
+-0x1.574b06b59d756c08p+2l
+0x1.3867a0061f60bbcp+2l
+0x1.9356d91ed07def78p+2l
+0x1.4b0c35e6cba93a2p+2l
+-0x1.12fab525fb50715ep+2l
+0x1.26793b0c9c209f6p+2l
+0x1.eb5668ad0e15d71p+1l
+0x1.286ea4b95b40e388p+2l
+0x1.1e4c636565744e4p+2l
+-0x1.9c128f53c3ce28d8p+1l
+0x1.7ec4ced37e904a1p+2l
+0x1.7fe84f7e7fd0824p+2l
+-0x1.04d8847afde0e902p+3l
+-0x1.6e32a39112af123cp+2l
+-0x1.cbe0dc3c4dfc5c1p+1l
+0x1.a426acd914a11cp+0l
+-0x1.28e0084c66e6a57p+3l
+0x1.77c3e1535866fddp+0l
+0x1.dbad40266fbf4bbp+1l
+0x1.06dbd580e34eda9p+1l
+-0x1.3930dc8dd62ab2c4p+3l
+-0x1.f75e11936efe1f4ap+2l
+0x1.6e2cd5b75300378cp+2l
+-0x1.7b2b6748568b1f2p-1l
+0x1.b08ce51e9cb0aap-2l
+0x1.b288fb151cb2542p+1l
+0x1.78f8881c651b18fp+1l
+0x1.5099630932614904p+2l
+-0x1.4db3120a358df488p+2l
+-0x1.3a646ff8fd878f1p+0l
+-0x1.27d432ab0ea20744p+2l
+0x1.25bbe1a9770fdf94p+2l
+-0x1.0ff44c7349094a94p+1l
+-0x1.55fd18082a9c507p+0l
+-0x1.a40303f0fc831abp+2l
+-0x1.0dc0abc1c876cfccp+3l
+-0x1.2eee35b56c4d084ep+3l
+0x1.291dbd62fe5b4e6p+1l
+0x1.148ec7f57c1203p-2l
+0x1.440ad26a29f944cp+1l
+0x1.15c17bc2e30eafp+3l
+0x1.61ed20f2f8917dcp-2l
+0x1.c222265f403d215p+2l
+-0x1.ab7d409aac332672p+2l
+0x1.b1a35d545020ffp+0l
+0x1.3edadd5573482ef8p+1l
+-0x1.ea62f4deb1d1ec4p+2l
+0x1.0b4210ea1ab3c164p+3l
+-0x1.7c70a4adbc8b7bc4p+2l
+0x1.210da0af7bb8663cp+3l
+-0x1.ae89e42967b86a7p+0l
+-0x1.0231e4660e7771aep+3l
+0x1.12cf2364d3aa935cp+3l
+-0x1.eab245dd56b54f8cp+2l
+-0x1.224a0d61291392aap+3l
+0x1.23f2d9fae79b9318p+3l
+0x1.828fdbc955c0d91p+2l
+-0x1.2bffe9a85e06de42p+3l
+0x1.cd766d8488cd28p+2l
+0x1.2621f8d5774a237p+3l
+0x1.39601d88aa65e858p+3l
+0x1.7b9a8056a6b898ecp+2l
+0x1.264209636d11a528p+3l
+-0x1.1e6c7c11ea603554p+3l
+-0x1.3fd2058969413fap+3l
+0x1.aea2fbb41cff82fp+0l
+0x1.91681ccf3196398p+2l
+-0x1.72d7c25943b8e78p-3l
+0x1.3d8dd9bf27fa6f8cp+2l
+0x1.5d43b1244ed977fcp+2l
+-0x1.c13490d5291c65d4p+1l
+0x1.671d9640ecb6fb18p+2l
+0x1.11016109b1f1a684p+3l
+0x1.6aaabd66c77abfap+0l
+-0x1.5768338d272cba98p+2l
+0x1.795432bbab4f223p+0l
+0x1.66eb3923a842bfp-4l
+0x1.7acb910e2795bebp+0l
+0x1.d06ccd46355e1b4p+2l
+-0x1.ed5b72262998455cp+2l
+-0x1.8153f12738051bap+2l
+0x1.c00ecc83cba858p-3l
+0x1.03e2162a21226a88p+3l
+0x1.bf5fb0484d3c9da8p+1l
+-0x1.5ffb251561b48c1cp+1l
+0x1.a6760a4bb7976ccp+2l
+-0x1.71746c4ec39b3b64p+1l
diff --git a/benchtests/fmal-inputs b/benchtests/fmal-inputs
new file mode 100644
index 0000000..4a8c8fb
--- /dev/null
+++ b/benchtests/fmal-inputs
@@ -0,0 +1,1003 @@
+## args: long double:long double:long double
+## ret: long double
+## includes: math.h
+0x1.d76482a32425276p+1l, -0x1.da30a5652216e33cp+2l, -0x1.f738d527163ad23p+2l
+-0x1.a786d34c2918f0ep-1l, -0x1.1a33d2d02d08f584p+3l, -0x1.5e7431210a4aa4dp+2l
+0x1.03839c8a40901ebp+3l, 0x1.5d2826a919cd0bap+1l, 0x1.34185715132e156p+1l
+0x1.238ad21540202ba4p+3l, 0x1.1f2039b224041dd4p+3l, -0x1.71b16c682d4e02e8p+2l
+-0x1.f987b5013365508p-2l, 0x1.1a8fdce55a68a3ap+0l, -0x1.1cc3ac22dbb721p+0l
+0x1.8c10bca79e763b8p-1l, 0x1.2e83f225c3e1b99p+1l, -0x1.949afb3dbedf5426p+2l
+0x1.4067abd046804b3p+1l, -0x1.e53178b1192d1274p+1l, -0x1.5419145e8fa22accp+1l
+0x1.c3598c71a10e1c2p+0l, 0x1.946477380892e5bp+2l, 0x1.07c0ebc0d429f12p+2l
+0x1.98698919289ec07p+2l, 0x1.bbc1ec5ee3958848p+2l, -0x1.8ccd1c21b771e3ep+0l
+-0x1.a9238e3c5de67076p+2l, 0x1.b08e6c234d791978p+2l, -0x1.c002fe9faa4b4cp-3l
+0x1.6f9319e01cb355c4p+2l, -0x1.b8ceb8a97648a318p+2l, -0x1.ceba821783946924p+2l
+0x1.ab775c7a4b015e48p+2l, 0x1.645be70515cf504p+0l, 0x1.da42c3a0a9b7a288p+2l
+-0x1.d1a96c3d91512928p+1l, 0x1.956180cb91f3e0bp+1l, 0x1.065dfd23bd04a1cp+3l
+-0x1.320e4ac0961010ap+0l, 0x1.121efaac88a68d5p+0l, -0x1.1ade39161e750afp+0l
+-0x1.40475340b173bd2ep+2l, -0x1.b82b8ffa627effdcp+1l, 0x1.dca2744cf4232808p+2l
+-0x1.3b589ab63366b2ap+1l, -0x1.09ce7345ef3efeccp+2l, 0x1.9bb43359eb2e5498p+1l
+-0x1.89b7ddaf4484f9ep+2l, -0x1.80f3584edf529134p+2l, 0x1.768f31d6358e2a8p+1l
+0x1.a63ddfe0af77118p+0l, -0x1.697e159f482df188p+2l, 0x1.06b38669305897fcp+3l
+-0x1.b02c12b05bab7ec8p+1l, -0x1.ff0d49f439470024p+1l, 0x1.089a05bfec9176e8p+3l
+0x1.18789dc2b589152p+0l, -0x1.046e881c049a52fp+2l, -0x1.117ee052fdc4c8p-5l
+0x1.210c58afc566b2b8p+1l, 0x1.e7447048e3bac858p+1l, 0x1.187132d4d3ddf2ap+1l
+-0x1.02525044dcf0886p+1l, 0x1.7c60dd1ec0413a9p+0l, -0x1.9f18c40ba47334b2p+2l
+0x1.8997c7a2376039dp+2l, -0x1.0d8eb540b886252ap+3l, 0x1.180657e5e493046p-1l
+0x1.4a6cc989aa4c89acp+2l, -0x1.1b639ceeaaa8c464p+3l, -0x1.5bb3e70abe12b1cp+2l
+0x1.3c79597e6875f71p+3l, -0x1.33561c94510bfb8p+0l, -0x1.c8e1a2884022162ep+2l
+0x1.dbe3cc2a0831755p+1l, 0x1.08d49e793d49cd98p+3l, 0x1.cc8fc071849f35p+2l
+-0x1.40a1833a6473735p+1l, 0x1.2a6f47916df6e2p+1l, 0x1.680cad878f09165p+2l
+0x1.220565e22a3bcf7p+2l, -0x1.b6f1d2ad9ce779dp+1l, -0x1.99c9feaac7181bbp+2l
+-0x1.b5801e17c911d4fp+1l, -0x1.bdb4586d03a8acdcp+1l, 0x1.384529b2a8a65b8p+3l
+0x1.3df910eea3326a3p+2l, 0x1.b28a83e71e00d3b8p+2l, 0x1.333f240f3fe543p-1l
+0x1.31a3aa139d95913p+3l, -0x1.3011c08d20744556p+3l, -0x1.f4a9f1c86647cca8p+2l
+-0x1.286ed247f2c75184p+3l, 0x1.75be2df7a08cfcp-2l, 0x1.5b8e379039df1cbp+1l
+-0x1.0ead19b94905e35cp+2l, 0x1.02951f94bd940038p+3l, 0x1.5999457645110fa8p+2l
+-0x1.20364fa4e55398ap+3l, 0x1.afa494288f49edd8p+1l, 0x1.5a63cb9ec9350b54p+2l
+-0x1.457995e64e54e7a8p+2l, -0x1.043380d03c3d185cp+3l, -0x1.2bbe6ad0f240691ap+3l
+0x1.8c259187c42f218p-3l, -0x1.a13f10dd5a6e5504p+2l, 0x1.68c2c0c32f6d8f78p+1l
+0x1.139a9620d509b41p+0l, 0x1.1b3fa511495bf918p+2l, 0x1.7c2911274354eaccp+2l
+-0x1.30ef94e2cfbf78ap+2l, 0x1.987d6c59a01a7958p+2l, -0x1.27e28620ff8bbdep+3l
+0x1.29eb6aa8baf67e78p+2l, -0x1.cb5a1b9f6cbeddfp+2l, -0x1.28c04273e1b398c4p+2l
+-0x1.3eff6e82f6d2184p+0l, -0x1.1021028da92a84d6p+3l, 0x1.0d23b33354f8b7ap+3l
+-0x1.38f83fcc26e09b58p+3l, 0x1.f2056812075b393p+1l, 0x1.2f31a5dd42b545d8p+1l
+0x1.342c23f4d6548618p+1l, 0x1.09810b5adf15b2e8p+3l, -0x1.14b19e2890080d58p+2l
+0x1.ff3e109b1c5407cp+2l, -0x1.1582f3c0fa236c82p+3l, 0x1.29b0623e5f6e22c8p+2l
+0x1.43d683f19302404p+2l, -0x1.c3bb44e51ca46d8cp+2l, 0x1.37dfb6d873f068f4p+2l
+0x1.3c403b216a9235f4p+2l, 0x1.f956a69c831bb288p+2l, 0x1.33d0fe9d1eb35aap+1l
+0x1.f8284fbff9cf79b8p+2l, -0x1.005a29a01167bfc8p+1l, 0x1.1611e1cb3c9012bp+1l
+0x1.2fe8efb58815e7c4p+2l, -0x1.d9b3205f8d8d4f38p+2l, 0x1.055fecae40e635dp+2l
+0x1.d6e029e2a29417fp+1l, -0x1.59b75207fac9c958p+1l, 0x1.4d1cf21685c95c8p+0l
+-0x1.818b73d53fae594p+0l, -0x1.5e299bef7479c648p+1l, -0x1.a323c7f3ebb453c4p+2l
+-0x1.861487195fc12b2p-1l, -0x1.1baf3f607467e31cp+3l, -0x1.1562805b9736e142p+2l
+-0x1.1ac9aa362fe9e1ep+3l, 0x1.a7fcf7e2896218cp+2l, 0x1.d9f2a5c23343c9ap+0l
+0x1.289329626d2d515p+1l, -0x1.ce03520e0fb68ep+1l, -0x1.5123407911f2a63ap+2l
+0x1.8bc4affecb80cecp-1l, -0x1.ad431514898de3ep+2l, 0x1.dd5e0dd518e72d6p+0l
+-0x1.cef827a85a3ecde8p+2l, -0x1.77179ebc533b8b14p+1l, 0x1.721d4353228e3e6p-1l
+0x1.87f90e1bcd778bap+0l, 0x1.07dce1e481c570fcp+3l, -0x1.11deca29548876p+2l
+0x1.386499eaef1ba488p+1l, -0x1.76ffa8b58224aacp-1l, 0x1.0eafc8ff909dab34p+3l
+0x1.48526953ab70f8cp-1l, 0x1.9a6879a35f7ed88p+2l, 0x1.038e9bf9a3339484p+3l
+0x1.3a3d8c2198a2aa3p+3l, 0x1.cdbd96d61e963d5p+1l, 0x1.2360c6f2441a0e7cp+2l
+-0x1.d001e762a62bd3d8p+2l, 0x1.fef3d6bd790ea16p+1l, 0x1.1bde289855588ap-5l
+-0x1.1a6c424c13c0794cp+3l, -0x1.901ed153f67bf14p-2l, -0x1.b4e957c00c40519p+0l
+-0x1.3a6105b65aace934p+1l, 0x1.38216254f1a9fc88p+3l, -0x1.6a0dfd194cf8e22p+2l
+0x1.3ca2ee13ac0049f4p+3l, 0x1.94815a9d17b2bcfp+1l, -0x1.f66f45a5cf4c37p+0l
+0x1.1e6571b922f612fp+3l, 0x1.12fd24ec6d26a154p+3l, -0x1.42bcefa5386fa4p-6l
+0x1.9a4cb91fa757677p+1l, -0x1.fa3fcf55a928f84p+0l, -0x1.3a71b715bfba002ap+3l
+0x1.54466b10cc86b8ap+0l, -0x1.10ffca39d5f6b9cp+3l, -0x1.c7fe72ff0030f06cp+2l
+0x1.cddb9b727ca6752p+1l, 0x1.6278a81060e1de6p+0l, 0x1.f60657865d741fbp+0l
+0x1.f7761fc4d62a332p-1l, 0x1.35daced14ba5e0ap+3l, 0x1.b072ffdedadccdp+2l
+-0x1.3cfb6bda5f2e4eep+3l, -0x1.598ea158e92341c4p+2l, -0x1.26ceb1ac508acdp-1l
+-0x1.3220c1620414611p+3l, 0x1.d16a09c0fec479dp+1l, 0x1.851048c4c28c16ap+2l
+-0x1.af94322e7f2b55c8p+2l, 0x1.ab3c1844744441p-1l, -0x1.761822114aefb8dcp+2l
+-0x1.8a66aaf38d7812cp-2l, -0x1.54a107496583d8cp-1l, -0x1.0562a64a3db48296p+3l
+-0x1.7137f2a401915f4p+0l, -0x1.01625c99f6905acp-1l, -0x1.466ccd67c5fa5b3cp+1l
+-0x1.300a977789ae3c3cp+2l, 0x1.d01fa30e9825baa8p+1l, -0x1.d83faf8d8948eaacp+2l
+-0x1.3f81099b5e63e398p+2l, -0x1.8644608025317bep+0l, 0x1.47b42d643e86ac98p+1l
+-0x1.051f002b42ba57p+0l, 0x1.f7ebc55bf641aep-2l, -0x1.e2eb7f3bfa462c8p+0l
+-0x1.12e5522af8566684p+3l, 0x1.398c878f7cf43f6p+0l, -0x1.597d335db981b8c6p+2l
+0x1.b7835564859ae62p+2l, 0x1.641085ea0df27e8p-1l, 0x1.672202600cf80cecp+2l
+0x1.32577fa2469d1fccp+3l, -0x1.f62c70f65fc6d1ep+1l, 0x1.3270ebf118e001f8p+2l
+0x1.0bf0fa4ad2510488p+2l, -0x1.ae7f13750d286958p+2l, -0x1.8886c8dab4fa5fp-2l
+0x1.849d9decd88876bp+2l, -0x1.23ab11a09e080a1cp+3l, 0x1.6aa3d7058c92bcdcp+2l
+0x1.dd794c4ffc06614p+1l, -0x1.22a9250f842f34aap+3l, -0x1.1339586e80f26abap+3l
+0x1.dc325783eeb65b9p+0l, 0x1.5658cfb478b62c4p+0l, 0x1.e5cf26a1f0365dp-1l
+0x1.d0da7f7555074978p+2l, 0x1.0072b47c871f1f94p+2l, -0x1.3e6fe2b4aa7275eap+3l
+0x1.89be1d35b0b4675p+2l, 0x1.ebd995fbab1248fp+2l, 0x1.146159d797a458fp+3l
+-0x1.45c13742891d65a4p+2l, 0x1.4d2194c040b942a4p+2l, -0x1.3799e83670754d78p+2l
+0x1.f8a2b85ca3a9a0b8p+1l, -0x1.13af00520da551e8p+3l, -0x1.60fc70a7f7db4ebp+1l
+0x1.504f47ff04e111a4p+2l, 0x1.88a17fdf43023f9p+2l, 0x1.29986a6458fa582p+3l
+0x1.209bc3e60bc9efccp+3l, -0x1.e0ecc07faf8782ecp+2l, 0x1.f2e0474119f7e76p+2l
+0x1.c6bc019a8d9d94bp+1l, -0x1.2864f61e2d9137d2p+3l, 0x1.0c18dfcf75de9d6p+2l
+-0x1.e33fb9cb57590fa8p+1l, 0x1.f9368b59570c0318p+2l, -0x1.c414dcc58dc5b32p+1l
+0x1.a2f90061057709p+1l, 0x1.9c0514318909ee4p+2l, -0x1.f7e467d388d83ffap+2l
+-0x1.61acb7b9ea36dcb8p+2l, -0x1.9222d7839cccd5cp+0l, 0x1.fdfbb89b32fea348p+2l
+0x1.41f952321cf38d7p+1l, 0x1.70112c002e5a437p+0l, 0x1.17db284d55e89aa8p+3l
+-0x1.baebab8f373e10d4p+2l, 0x1.c01589b2cfcd1f7p+1l, 0x1.eb8ee811e77716dp+2l
+-0x1.8eb04516659df61p+0l, -0x1.43ff1238bb9c1c34p+1l, -0x1.1e80c6ed9a1e43e8p+1l
+-0x1.115f94ac346c0dd8p+1l, 0x1.4b957fbc565065ccp+2l, -0x1.ce8a4659399cd8bcp+2l
+0x1.0381a6fa7fca1eep-1l, -0x1.196755f2d88e8b8cp+3l, -0x1.134a53848f065e68p+2l
+-0x1.d0f4ced5bb35b0cp+2l, -0x1.8dea71f2394f5f8p-3l, -0x1.203ab793e5a5645p+2l
+0x1.2343ec5363f315p-1l, -0x1.2cbb95533eaf0a9cp+3l, -0x1.9c5458b5422407f8p+1l
+-0x1.451c5bb2f24ed2d4p+2l, 0x1.023e6a8ad5ca34p-1l, 0x1.9a2d02f2e85c47ep+1l
+-0x1.1ae6de83577c9298p+3l, 0x1.b48cc56b3d48219p+0l, 0x1.117aca88c24916c8p+3l
+-0x1.d32484c5429434d4p+2l, -0x1.a73ee79d0911d018p+2l, -0x1.dcda9482cb3ecb2p-1l
+-0x1.17b023e4af6a34d4p+3l, 0x1.f7af30e52f4523p-3l, -0x1.3460120ba2ba1cbp+1l
+0x1.53e91941f5c6ae7p+0l, -0x1.7dbfd99cf7988cbp+0l, 0x1.05f399fadda0a2p-4l
+0x1.1af583de76923fp-3l, -0x1.aa369c483332de9p+1l, -0x1.f7468f25c71ac0f4p+2l
+0x1.cc6843cd6477d18p+1l, 0x1.dcb95153a51e23cp+1l, -0x1.28613cdeb66d6acp+3l
+-0x1.58d631d04ef2fd16p+2l, -0x1.09460ce085d13c08p+3l, 0x1.3df90811a3e8351p+3l
+0x1.1ae0226332dcfff8p+2l, 0x1.c04fb45ebdd8864p+2l, -0x1.7f7a6b48c8092d52p+2l
+0x1.1950c59e494c5b4p-1l, 0x1.7f5db44a12675bf4p+2l, 0x1.4cf508bf74efd478p+2l
+0x1.45ee0ab67431bfp-2l, -0x1.21fceea4f8bea7c8p+1l, 0x1.4f073bd38adca0dp+2l
+0x1.30a561d6fc822718p+2l, -0x1.1b13cecacd6903b6p+3l, -0x1.fbacd8996ebdb41cp+2l
+0x1.d701cca2db11ed1p+2l, -0x1.eef852a4abd9f73p+0l, 0x1.9ab55833e0af364p+1l
+0x1.2c030edbfc1cd998p+1l, -0x1.61a4c5d11a2091ap+2l, 0x1.70ccfa974977b194p+2l
+-0x1.234b644ed1ad7ed8p+3l, -0x1.b9f055b328d4944p-2l, 0x1.b283028c0ccef36p+2l
+-0x1.d38c7d24445b5b74p+2l, -0x1.df886c7a07f5fc7ep+2l, 0x1.1f7205e51f5739c8p+2l
+-0x1.35240d0673c2697cp+3l, -0x1.646fe617d26731c6p+2l, -0x1.70a14ede97bef302p+2l
+0x1.e5625730898c756p+1l, -0x1.cb95881846b2cbbap+2l, -0x1.f69fe41336b00288p+2l
+0x1.44f9514e3eeb544p+0l, -0x1.fc8d03434ddcd1c8p+1l, -0x1.9f5e4272fc04e1fp+2l
+0x1.41689876558b315p+2l, 0x1.e3961faacb19765p+1l, 0x1.cc5fd0b20b7c9128p+2l
+-0x1.3eff431c043112e4p+3l, -0x1.62c032ab2acd6778p+1l, -0x1.94ced4e9b5169ccp+0l
+0x1.29187c02240113ccp+3l, 0x1.1fdd0a28a6def78p+3l, -0x1.0bddefbeee3704ccp+3l
+0x1.688f4192237eed4p-1l, -0x1.1eec7ee1625b708p+1l, 0x1.d931c1d35d229328p+1l
+0x1.fb036af9a9f63a8p-2l, -0x1.ef33bd586c061394p+2l, 0x1.32ac9b782b536664p+3l
+0x1.b47366ef518bf5a8p+2l, 0x1.3007fa2bef703148p+3l, 0x1.b59ccc7d004b2ccp+2l
+-0x1.3174c63103d046eap+3l, 0x1.32b729fb3bd8f7ecp+3l, 0x1.7c6494e868a9a44p+0l
+0x1.6c288157618ebb7p+2l, 0x1.06774c4a5831e58p-3l, -0x1.99e0a461b816f82p-1l
+0x1.80111dc96491c62p+2l, 0x1.f038fe024a54d5d8p+1l, -0x1.1c3d2199bf5ca5cep+2l
+0x1.0262e6d51a3dd9cp+3l, 0x1.cb619fe5f6f544p-1l, 0x1.25f30e8d5e4d264p+1l
+0x1.a6122e530610a79p+1l, 0x1.1d173a31293031bcp+3l, -0x1.1dcdd42c9aa969dcp+2l
+-0x1.6cf61a98b7b09dbap+2l, 0x1.f853a1713e14ba9p+2l, -0x1.9f0bc83a711272b8p+1l
+-0x1.a6ece96f0663e2cap+2l, 0x1.191a83552d4e63a8p+3l, 0x1.c7f9c75e031fb8a8p+2l
+0x1.504b54773178cc1p+1l, 0x1.04afb650e07b6ef8p+1l, 0x1.78246516f7f1096cp+2l
+0x1.5e88af32478e74dp+1l, -0x1.a0f3f82d810fd568p+1l, -0x1.06acf46b6043af54p+3l
+-0x1.1e7b53fc999d814p+3l, -0x1.d426a8fe1ebf4e6p+0l, -0x1.41dc5c2868f3f44p+1l
+-0x1.f4a5eacdd24184f4p+2l, -0x1.b6efd92dafcc6bep+2l, -0x1.88943d1fedf633fep+2l
+0x1.e14577c922f5f6bp+2l, 0x1.12166bb5c7a24984p+2l, 0x1.2b7a60d3c8af5c24p+2l
+-0x1.ae34c32b3a0b4976p+2l, 0x1.6604d72b5506c4ap+2l, 0x1.8fbf75f5e7c7d75p+1l
+-0x1.2f4ed5e2c1ed4706p+3l, -0x1.ac7f545c7a35200cp+1l, 0x1.28913d7efd46b1f8p+3l
+0x1.136b403ea7baff2p+1l, -0x1.2b382abb96cf0c2p+2l, 0x1.a678a119440e6d18p+1l
+-0x1.3637b238e9faf04p+3l, -0x1.1c509a1a5ce253e8p+1l, 0x1.b6a8134ee4c8895p+1l
+-0x1.3f34b1bf68c17e34p+3l, -0x1.afde151632865b8cp+2l, -0x1.26366b3c2ba226bcp+2l
+-0x1.3560ddac371bc44p+1l, 0x1.e048aa70628d127p+2l, 0x1.03e02603a87ce028p+2l
+-0x1.19e76cb0146d38f4p+1l, 0x1.e68ebde73331339p+2l, 0x1.605a21e80f95ccc8p+2l
+0x1.020853202f3defd4p+2l, 0x1.0740ee7919942c1p+2l, -0x1.3c293893608af5bp+3l
+0x1.cfa88870a0ae56b8p+2l, 0x1.5b1b4d96c5ae385p+1l, 0x1.5dfdc2f850d04p+0l
+0x1.4f4ef310ab69d0fp+2l, 0x1.9baad6e3c4be71e8p+2l, 0x1.c9e93b0442adaedp+2l
+-0x1.13c28a3a73a29accp+3l, 0x1.9e51ac69b62c986p+2l, -0x1.8f019c22804d3368p+2l
+-0x1.e35d3471c009153ep+2l, -0x1.6847d2a2d27d8e3p+1l, 0x1.7d25b06a1cafb03p+2l
+-0x1.64a48cd35892df1cp+2l, 0x1.7feb63dde6d1d89p+1l, -0x1.7ece16625480965p+1l
+0x1.030d7c7a48405c88p+3l, -0x1.9350a75d51319558p+1l, 0x1.30f955f8298b2248p+3l
+-0x1.bfc71dd5f91ddae8p+2l, -0x1.a502b089a1688bap+1l, 0x1.b7cd62bd0c724bc8p+1l
+0x1.0dbae2a12a2d6ed4p+3l, -0x1.0b8f15656aae0e94p+2l, -0x1.1856f8bba05430bep+3l
+0x1.3856cbe9176ac4ep+1l, -0x1.82137bf296b1669p+1l, -0x1.b096b947905bdep-4l
+0x1.88d68cd8c44934dp+1l, -0x1.b30446532c4526f2p+2l, -0x1.447f540b5549a56p+2l
+-0x1.1893fed8860d748p+3l, -0x1.d653cf8307af3aa8p+2l, 0x1.289286d30c57022cp+3l
+0x1.ff9c5cb6ea1833p-3l, 0x1.265c36a7cfc24868p+3l, 0x1.49d84d327946c9ep+2l
+0x1.a65ddaaca6c4a1ap+1l, -0x1.3d21fe26a932d1p-2l, 0x1.379620fa9e4468f4p+3l
+-0x1.5b1ba96f7965094p-1l, -0x1.a7c46b6027d61e1ep+2l, 0x1.dba9a98b7158d35p+0l
+-0x1.0f6abfd6a9d072p+3l, 0x1.ebdaca70154f1b9p+1l, 0x1.83d1d6be7d633ba8p+2l
+0x1.cf8b741abcaf1ef8p+2l, 0x1.6c5cf2fb9923bdb4p+2l, -0x1.3cfd016358160e32p+3l
+0x1.7549ed343d0d93bcp+2l, -0x1.228b4dfdd5abb4dp+3l, -0x1.0e78b9aaace8a68p-1l
+-0x1.279cf35b17e05a5p+1l, 0x1.71a74264a94246ap+2l, -0x1.95da47835582ecdp+0l
+0x1.4524b5066f8535b8p+2l, 0x1.1f6b32c5900454e4p+3l, 0x1.3afc5317b772303p+2l
+-0x1.c55782d70ebf9994p+2l, -0x1.9cff78e0a9f66214p+2l, -0x1.02dfdcebccd7c2c4p+2l
+0x1.6dd80cb9425cad3cp+2l, -0x1.3e345599548348e8p+1l, -0x1.fa1b7711383eb4a4p+2l
+-0x1.7ee730a3a42b9c3p+2l, 0x1.627f10ee5c5910cp+2l, 0x1.1284710c9978875cp+3l
+0x1.a944a4718b93a368p+2l, 0x1.d829121fe5138208p+2l, -0x1.0c0faf9488fc4dcap+3l
+0x1.3abc90a4d125e198p+3l, -0x1.cc95e77af300c3c4p+2l, -0x1.f863b55732fe56ep+1l
+-0x1.55e372f043b24c16p+2l, 0x1.3c3d42a657081968p+1l, -0x1.732df3b132135e78p+2l
+-0x1.7958c1e0a28e2142p+2l, 0x1.b3e0bbd96fe424a8p+2l, 0x1.649245be57871c3p+2l
+-0x1.33a6fa33a9032104p+3l, -0x1.47192a36bbbdd5f8p+1l, -0x1.efe74a2a674b1f22p+2l
+-0x1.c9fb9d10583c3478p+2l, -0x1.4cdcefdffe72c6p+2l, 0x1.1848644244ff8178p+2l
+0x1.1b45054047b94f18p+3l, 0x1.37f4d19f4e936f68p+2l, 0x1.22b25299e2cf59ep+0l
+0x1.fc875e3d059712ap-1l, -0x1.5de825c0648c5c04p+2l, -0x1.344419434a350ce4p+1l
+0x1.9c90c33d7ed135a8p+2l, 0x1.a292fde3812b6068p+2l, 0x1.36dd2ced9bae0bep+3l
+-0x1.4e9da4de3fe576dp+2l, 0x1.385fd5ee5da02694p+3l, -0x1.1eeb4fb2f1b4377cp+3l
+0x1.ee62e70ac439a06p-1l, 0x1.c7240c0a121494bp+1l, -0x1.c0c1e275935728ap+0l
+0x1.5f8bf519feb06308p+2l, -0x1.4271352126ba1b8p-1l, -0x1.47773ae82b3c473p+1l
+-0x1.aff64a03b3bba688p+1l, 0x1.f7e85da1e3528d58p+2l, -0x1.c1616d0fd1f3b6e2p+2l
+0x1.3bcfa16abb0e7274p+2l, -0x1.ff3a97db2f801f5p+2l, -0x1.2289ff7a6281c5dp+3l
+0x1.a3b3e57e700ad8e8p+2l, 0x1.29a7d90ab3972864p+2l, 0x1.0958c9895f9dc574p+2l
+-0x1.fa50a9616e94cb5p+1l, -0x1.ceddc285a86c8d2cp+2l, -0x1.b73c53cc1bfd29cp-1l
+0x1.08ab750a4d92e8f4p+3l, -0x1.b7ac4abe8fb5921ep+2l, -0x1.7a461f9d023dcd9cp+1l
+-0x1.38ea7e249f15b044p+3l, 0x1.b9fa3dc21d92d78p-2l, 0x1.830529193ccf1b88p+2l
+0x1.1dfac9432280d8dp+1l, -0x1.3410e357f447cab6p+3l, -0x1.5d6bf138df168018p+1l
+0x1.2098f7e7b030d168p+2l, -0x1.cd380135690fe9ep+1l, 0x1.49e76c7224103774p+2l
+-0x1.fa883b58f41ea68p-2l, 0x1.6282cf7f1cbd82e8p+1l, 0x1.4143f2df2aa68cp+1l
+-0x1.8b7e91512a69fbc8p+2l, 0x1.300389bc57c67e84p+3l, 0x1.4b6839e7c30103ccp+2l
+0x1.38ccf2b6f9d4db58p+1l, 0x1.c350168525fad498p+1l, -0x1.f57832587c67918p-1l
+-0x1.1d4cc5ec84c6e8cep+3l, 0x1.ac8a654c5351377p+1l, 0x1.77a35665704a8ebp+1l
+-0x1.097b8765420d3f14p+3l, -0x1.1e29a6666a9967dap+2l, -0x1.e1c6e22ebb0f20d2p+2l
+0x1.00ebc426cac0bcc4p+3l, 0x1.e9bfc802c60ff148p+2l, -0x1.65ccd9a2355906p+1l
+0x1.b3503ac2f9f72c7p+1l, -0x1.0877649b88f61588p+3l, 0x1.60abd74f384862p-2l
+0x1.2fce853de9db782cp+2l, 0x1.7d3f0dd43e622aep+1l, -0x1.a39549786add10bp+2l
+-0x1.049032ba1022ec2cp+1l, 0x1.867604b4aaab41ep+2l, 0x1.3e84f08750fce9acp+3l
+0x1.e701c04cdb5e64p-6l, 0x1.76cf4d1545bc75dp+1l, -0x1.2125573e11459382p+3l
+-0x1.42bc9e6f138936cp+0l, -0x1.7abc1664a22048dp+1l, 0x1.2f7d150dc7866b74p+3l
+0x1.f3b2044f68f84418p+2l, -0x1.ec1f68bc22e0ab0cp+2l, 0x1.830ce2a6d0f401p-1l
+0x1.99c2cf1befa8296p+0l, 0x1.b3302c2b03f3ec78p+2l, -0x1.88154c622166f398p+1l
+-0x1.3c2355127d1a11c4p+3l, 0x1.38f9c972b1c3943p+2l, -0x1.db5df6c8205cb45cp+2l
+0x1.e5f66eddf41d2fa8p+2l, -0x1.85978b0c2d8b092p+0l, -0x1.04d4911e53a07e68p+2l
+0x1.f186792735bbcd9p+2l, -0x1.603614238ff43a6p+1l, 0x1.10deb3a2225966b8p+2l
+-0x1.7ca56439158d0148p+1l, 0x1.9e7e6a935695aaf8p+2l, -0x1.39f4d7ad6487208p+1l
+-0x1.450eb134ffbdd4c4p+1l, 0x1.40f4ba50b8f527ep+1l, 0x1.1888b08312ec538p+1l
+-0x1.510236b7e7c3cf34p+2l, -0x1.6d4f35d669f64bd8p+1l, -0x1.33ed353d1a2a5c9cp+2l
+-0x1.f060a522b04b7a8p-1l, 0x1.885a0379f7bc951p+2l, -0x1.0979f955f5282ef8p+2l
+0x1.11bee2b1e5132f3p+0l, 0x1.c97b875bdad07dp-1l, -0x1.0e26bc584a18f43p+3l
+0x1.062e8457f36acc58p+3l, 0x1.1b978ce7f50cfefcp+3l, 0x1.bd8ef3446fbae0a8p+1l
+0x1.7b598330e2f9f8cp+0l, -0x1.e041a1807ff78c1p+2l, -0x1.0b75b78f7b51b17cp+3l
+-0x1.bc947810b2c68aap-1l, 0x1.1c542e455c56c36cp+3l, 0x1.0de58dc9a686eac4p+2l
+-0x1.492987f6905098cp+0l, -0x1.9605a92412b26dc2p+2l, 0x1.1fbda1d60418b2acp+3l
+0x1.331643dc976b4d3p+1l, 0x1.1c82ba6100f88e6p+0l, 0x1.32a6dfb93d4e14b8p+1l
+0x1.d5891375156d875p+2l, -0x1.61d1a26145089be8p+1l, -0x1.0d783b5b58b0edb4p+2l
+-0x1.838b61517b2ae8cp-1l, 0x1.3651366a104ff524p+3l, -0x1.af3872ca246bacfp+1l
+0x1.d5e60c9656f0178p+2l, -0x1.a9f308c8755f802cp+1l, -0x1.658195b83ebd0fbp+2l
+-0x1.6f91f5e01cb91b8p+2l, -0x1.376e13ac58e61234p+1l, -0x1.348100b96950e21ep+3l
+-0x1.3076e085f8f61696p+2l, -0x1.5b3619a91921ca5p+1l, -0x1.9273c240282337bp+0l
+0x1.b58bf41a410b10a8p+2l, 0x1.a88fcab342c83p-7l, 0x1.f2de46ea215a608p-1l
+-0x1.37041571938908aep+3l, 0x1.21b881f394028f18p+3l, 0x1.33e72837ae311d1cp+3l
+-0x1.e8c2bbb79ad14cc2p+2l, -0x1.e17955c58a747fc4p+2l, -0x1.ba0819ae55b8a748p+1l
+-0x1.ddfd15b097a043p+0l, -0x1.e213f586ce22a55p+2l, -0x1.8a21538c1b9d3fcp+0l
+0x1.2f19b6eafa18ep-4l, -0x1.6ac8dc2038508p-5l, 0x1.12901fe614d807c4p+3l
+-0x1.75ea35f1d1c771cp+0l, 0x1.05f65028b93b1f9p+3l, 0x1.edbc863a90234018p+1l
+0x1.071560c0e30a6734p+3l, 0x1.d9614419493a286p+2l, 0x1.6afa4814c605ddf8p+2l
+-0x1.8c5eb360e6b9279cp+2l, -0x1.dc439b9fe61da238p+2l, -0x1.5dd5e27d896e8d2cp+1l
+-0x1.c207e01528e20a2p-1l, -0x1.26d91bc9293daa9ap+3l, -0x1.9d915218cc2cece8p+2l
+0x1.cd0a2ce862228e8p+1l, -0x1.2dda2b350ef610ccp+1l, -0x1.1724177d3dde8b82p+2l
+0x1.7bbeb1330f8189a8p+2l, -0x1.516a6172496e161p+0l, 0x1.46e17c593aa805fp+2l
+0x1.9c1dc51486729e48p+2l, -0x1.aabc2a1afb3aa62cp+2l, -0x1.92329351678482dcp+2l
+-0x1.66a833686c63e4p-1l, -0x1.4e27f8017e6a0bb4p+2l, 0x1.a400cae881d323p-1l
+-0x1.319f08b6ba2a1716p+3l, -0x1.302079e58344d68cp+2l, -0x1.33b15200b38d161p+0l
+0x1.db670a96418fc3bp+1l, -0x1.965d69b0e4978b94p+2l, -0x1.50c052a615fcafcep+2l
+-0x1.1a530380dc546694p+3l, 0x1.33d819ed3f4cd85p+2l, -0x1.35ed78c070d67faep+3l
+-0x1.3dd0d4d5ae060728p+1l, 0x1.cef4be02a8b19bep+2l, 0x1.45d02c0c6fad3e78p+2l
+-0x1.23e705965fc95d7p+3l, -0x1.3da9a967eb8ab15ap+3l, 0x1.0453d95a6c0beebp+1l
+-0x1.beaf18e62599b27p+2l, 0x1.c6aa1039f6b302f8p+1l, -0x1.25f840ed64035dbcp+3l
+-0x1.40736de71e2a84cp+2l, 0x1.6bbde68a45cd14fp+1l, -0x1.097f43db7f40e5cp+3l
+-0x1.3bbef9d1d63e8f8ap+3l, -0x1.a869b73b6ec6dfap+1l, -0x1.9fc8956744bf218p-1l
+-0x1.7056ffbe15b1016p+2l, -0x1.61eea1602b131528p+2l, -0x1.22e12152caca95c4p+2l
+0x1.607c13e30d69a13p+1l, -0x1.92ebc5e7d522afa8p+1l, -0x1.1324ccec0699ebf4p+3l
+0x1.c20b703c71d56758p+1l, -0x1.efa08db95a9e327p+0l, 0x1.8cc9711f9d417acp+1l
+-0x1.0f5d18259704a1dcp+3l, 0x1.844bde7e6914fee8p+2l, -0x1.370188fffd2e4ccp+3l
+-0x1.faa093eb2a68f19p+2l, -0x1.2169d89345a139ecp+3l, 0x1.17d009604d5f678p+2l
+-0x1.0b9f5bc78a49c058p+3l, -0x1.1bc403c0b6edccb4p+3l, -0x1.7f54a61cc40d8a8p-1l
+0x1.c526e26dc0536cdp+2l, -0x1.34f15501bccc394p+3l, -0x1.3664e955506b1176p+2l
+-0x1.9d1674de966c32ep-1l, -0x1.ca0d49718998c388p+1l, 0x1.15413cd22586e54p+0l
+0x1.3f5cf170e22b538p+2l, 0x1.21c20a24ec730688p+1l, -0x1.1590801301d8905p+0l
+-0x1.16b477f13ad84e8p+0l, -0x1.db5f0572e5509152p+2l, 0x1.378abd53c83f97ap+0l
+-0x1.5c43d105c0e6f112p+2l, 0x1.7b52d9bfe209c22p+0l, -0x1.e86190f67e36d66ap+2l
+0x1.3dfaf0f09a23d9bcp+2l, -0x1.0cace3273e689ff6p+3l, 0x1.81484699b8caf838p+2l
+-0x1.37d394b496b0b64p+1l, 0x1.16740e30da645cdcp+3l, 0x1.6b51905a713ad2bp+0l
+-0x1.3aba52a4fc616beep+3l, -0x1.a8ebb7aa1ec71cfp+0l, 0x1.0976c34ab401e818p+2l
+0x1.0bfb3b16aad73ad4p+3l, 0x1.e56e1d43ff7b29f8p+2l, 0x1.14cfc2143f29d61p+2l
+-0x1.4f035dd25ddab80ep+2l, -0x1.a6d473be729374a4p+1l, -0x1.b1ec93f0fa55fc48p+1l
+-0x1.e31f6b1e1f11b294p+2l, -0x1.f8743d42ce9677d4p+2l, 0x1.bcf74c8ce43d1448p+2l
+-0x1.a8371a8c8af4dedcp+2l, -0x1.ff035121e8752a2p+2l, 0x1.35aa8c03f23599bp+3l
+0x1.fb3debb5de93cc18p+2l, -0x1.f4e03148ec45c52cp+2l, -0x1.eed677d6b5569c98p+2l
+-0x1.20cc7ef36eea8c14p+3l, -0x1.1b905589805b507p+1l, -0x1.617c6f480cf9948p-1l
+-0x1.11cbc85b959ae7eap+2l, 0x1.f47ca6d0dc1b5efp+2l, -0x1.f57f6ed3e1ac5ap-1l
+-0x1.95a02a52afc08208p+2l, -0x1.347a9f6cca5d53aap+2l, 0x1.156afaeeee3ca4ap+1l
+-0x1.433eb250d005b258p+1l, -0x1.14a167569dfc11e6p+3l, 0x1.0e0aac91164f78b8p+1l
+-0x1.23de02f9f1e56c7cp+2l, 0x1.7237fa3682d72c8p+2l, 0x1.cfe29e6b846f1938p+1l
+0x1.26c5d6559b2a655cp+2l, 0x1.291a716efc322e2p+1l, 0x1.3b98afb59817e32p+3l
+0x1.04b5411cba1f757cp+3l, 0x1.47e1af677202cf78p+2l, -0x1.698af172dd593508p+2l
+0x1.07472d64014f526cp+3l, 0x1.3a4dbfa00f576f9p+0l, 0x1.a914c47883ac0468p+2l
+-0x1.81b4a436351a5808p+1l, -0x1.a666e4f6050e9bcp-2l, 0x1.7b662fdaa8bae8p-2l
+0x1.487885e4210f4b8p-2l, 0x1.e6d3d17b94104398p+2l, 0x1.51a96abe49dada2cp+2l
+-0x1.ed42db025b1d78ap-1l, 0x1.5ca01536c89b92e8p+2l, -0x1.e66bedb59bda6968p+1l
+-0x1.02f495f858abbdbcp+2l, -0x1.2738498cd4b76c3p+1l, -0x1.fb28835fb7d1b202p+2l
+-0x1.265fb33b698e38dcp+2l, -0x1.46d2932c84ae1f06p+2l, -0x1.143c517f429af306p+3l
+0x1.c611cd8d345b78ap+1l, 0x1.a10f3907492eaa98p+1l, 0x1.71809df2a38c36cp+1l
+0x1.c98862e9ea5ef12p+0l, 0x1.8d377b14b9e8d948p+2l, 0x1.09d9fd797d61cbbcp+3l
+-0x1.f7b1f5f87742f418p+2l, -0x1.56a9fd861c82e828p+1l, -0x1.8f3bb8aab12f4318p+1l
+0x1.9d5544421dd728ep+2l, -0x1.cdc8772e18231c4p+1l, -0x1.e63eab553ff933ep+2l
+0x1.2e81b0cb916f0dfcp+3l, -0x1.ccb7786a97b902p-5l, -0x1.c1c0bf5c6f78c888p+2l
+-0x1.0c450f5faeffa04p+3l, 0x1.12c36160d98df05cp+3l, 0x1.aab3816af009479p+2l
+-0x1.9df314d66e4d0e6cp+2l, -0x1.f877070518a7d3b8p+2l, -0x1.fe700e2d4b913b4p-1l
+0x1.21fb247dd79c07b4p+3l, 0x1.805be0d3dbd8e788p+2l, 0x1.26e60a6fe1a3436p+0l
+0x1.4ce3fbce04a1faccp+2l, 0x1.f17dbf23077937e8p+1l, 0x1.9c748e82fc88e8ep+2l
+0x1.23b1cf02e01b57b8p+2l, -0x1.566f81741a2f77b4p+1l, -0x1.166ed659d3c9eed8p+3l
+0x1.89f9da13b8839cf8p+2l, 0x1.d32d4cc5c546e688p+2l, -0x1.34d74f9b545d954cp+3l
+-0x1.027545ca852e24eap+2l, -0x1.2c8d28b77507f2ap+2l, 0x1.a2440b35474e1c7p+1l
+-0x1.9c3b3c36a49b2dp-1l, -0x1.2e09e925a2f6f00ep+3l, -0x1.52415bd963e110ep-1l
+-0x1.24a4e86e3a21293ep+3l, 0x1.9ccb32e5a89ce1p-2l, 0x1.6bc9f5064425fa3p+2l
+0x1.30e2e9537a2a597p+0l, -0x1.10bd5462e2ad86d4p+3l, 0x1.c1d5658bb3a35afp+0l
+0x1.c38ccd9baa15d51p+2l, -0x1.3f422d2203afbb84p+3l, -0x1.1a55dc4345e1968cp+3l
+-0x1.9487fa2fe8979a2p-1l, -0x1.f752be51e0e5cdcp-1l, -0x1.053e7601f167f73cp+3l
+0x1.b6a95bcef92f2bfp+1l, -0x1.eac8bfe5ca652c4p-1l, -0x1.4b58cd3c959e4b7cp+2l
+0x1.33f21cddce50032p+2l, -0x1.170dbdc959bc4ebep+3l, -0x1.b859398a034fab54p+2l
+0x1.58fe60f4419f9734p+2l, 0x1.55fb098547bfb208p+2l, -0x1.3a95606478d0785cp+3l
+0x1.ba8cacf386445c98p+2l, -0x1.b5152a65e709702p+1l, -0x1.ac059b2e126a6f7ep+2l
+0x1.12066a1ceb029bb8p+3l, -0x1.7e1a4755afc35ap-3l, 0x1.f9b718b86cf0192p+2l
+0x1.01bc40a0edd915fcp+3l, 0x1.b8ac6b3c98447edp+2l, -0x1.17be573043ee6464p+2l
+-0x1.cb3c16c43730847cp+2l, 0x1.6aef0b83a2324dc8p+2l, 0x1.b5df69b589115ca8p+2l
+0x1.1db60fa43d05e1f8p+3l, -0x1.1bd67c857df42c3cp+3l, -0x1.03e40cac9987a024p+2l
+-0x1.244f6a7b69c9ebfp+0l, 0x1.72e9556e7b312f8p-1l, 0x1.6ee41387e0b7121p+2l
+0x1.5f6272a9c1dc77dp+2l, -0x1.c07c67f8d20acdcap+2l, -0x1.9a631dd02a0aa4e8p+2l
+-0x1.dd16a5ec1b50d1f4p+1l, 0x1.0c23c177494dbcdp+2l, 0x1.d8d4c3187598f89p+2l
+0x1.2f3b2ccd2a13f86p+2l, 0x1.14189751793f2fp+0l, -0x1.1c8a5ab06fe7f96ap+3l
+0x1.3834c68805afdaf8p+2l, -0x1.6359447e906b902p-1l, -0x1.28feff4e4f6117ap+0l
+0x1.841d2cce22cb2e4p-2l, -0x1.1951a261f2899ecap+3l, 0x1.18f0b03aafd27414p+2l
+-0x1.34994a9a24f0e334p+2l, -0x1.7a121f270df7696p+1l, 0x1.e5b2db4b34c2b34p+0l
+-0x1.1f91f89783f0c92p+1l, 0x1.e61a6fd7ff60ccp-4l, 0x1.339be6ee597e1dap+2l
+-0x1.756ac5925c396bfcp+1l, -0x1.2f5e4d95137da338p+2l, -0x1.42e12f9a0eb648p-5l
+0x1.37661bca1f227448p+1l, -0x1.0164b98d5d132fbep+3l, -0x1.34da319af6f52fp-1l
+-0x1.37bad9a1ddeee254p+2l, 0x1.67f822544697ebb4p+2l, 0x1.2289f466186396fp+2l
+0x1.c7d3e283fb455368p+1l, -0x1.310778d21fed06c8p+2l, 0x1.23cefe365f8b512p-1l
+0x1.dc17333c187bcffp+2l, 0x1.8b55188697aff698p+1l, -0x1.5ddcf21305c804p-5l
+-0x1.8fe93ad11a9509c4p+2l, -0x1.89c009d8a50c422p+0l, 0x1.9861016762c9bcfp+2l
+0x1.0d406cbbdf06048p-1l, -0x1.bf2bd4e1a72242bp+2l, -0x1.38d5a424538388dcp+2l
+0x1.0f415735af40a5b8p+2l, 0x1.dd386392209bed08p+1l, -0x1.3e040375062b01eep+3l
+-0x1.b227c2ba20f00d3ep+2l, -0x1.663f8e06565ba798p+1l, 0x1.70547114061066p+2l
+-0x1.60d499e09ae8e3bap+2l, 0x1.d1f30a0c0f2aa48p+0l, 0x1.2410bb5e54e1f08p-1l
+-0x1.977c2c35512d2594p+2l, -0x1.b98f860e22b87058p+1l, -0x1.0d45777cc38ee0b8p+3l
+0x1.044de18aba3772e4p+3l, -0x1.63a2c33b26d2e192p+2l, 0x1.9c526e530a897p-4l
+0x1.0820f4f238133fdp+1l, 0x1.3f6aab072c6f31ap+1l, 0x1.3a8cfb047d936418p+2l
+0x1.3fccd737a5bd4d18p+3l, -0x1.a103ecad548ae2a4p+2l, 0x1.b8601d6176c3dfc8p+1l
+-0x1.0de1649f9a8245f8p+3l, 0x1.c5578062ab89024p+2l, 0x1.693fbcc6423f35e4p+2l
+-0x1.d7b9b7865ab4fac4p+2l, -0x1.73fdeb110820309cp+2l, 0x1.65785367be7392d8p+1l
+-0x1.57239e73763dcp+1l, -0x1.a7d66442ab713ap-4l, -0x1.299a1f922507d35cp+2l
+-0x1.4ef22f1757cf0b18p+2l, 0x1.cb7984a775780768p+1l, -0x1.4047c14cb3dfaf58p+2l
+-0x1.d0e75f573c78dffap+2l, 0x1.c066f8f3f6070dp-1l, -0x1.6dc49b8059efab4cp+2l
+0x1.7caecdb3ec426dcp+1l, -0x1.9dce252621ffb53ep+2l, 0x1.8632640b1840586p+2l
+-0x1.e1cd48ca0f74a198p+2l, -0x1.1fb67156a09227fcp+2l, -0x1.31e246c41e11946p+0l
+0x1.4ae1941a93e581ep+2l, -0x1.dafe2b3fcdaca9p+2l, -0x1.70141783dbeba9fp+0l
+-0x1.6e760cd960c5cfp-3l, -0x1.01c5a22c88689ddp+2l, -0x1.bee7bda075048344p+2l
+0x1.072e96f764cae97p+1l, 0x1.1c2fa825e47a2428p+3l, 0x1.0cc2d9ed26dcda8p-2l
+0x1.1e3ad67f71c0bc78p+3l, 0x1.483b3dcd0f7f0f6p+0l, 0x1.f5de9b471d0dc028p+2l
+0x1.fa8b23e6d4243abp+2l, 0x1.0a06827c2ffab228p+3l, 0x1.30fca2527da9d69p+2l
+-0x1.5e1995dff50275d6p+2l, -0x1.b1b1ceaf565cd6cp+1l, 0x1.5337b6aea8a22b98p+2l
+0x1.291f01ed2358c8p+0l, 0x1.f365397287640e5p+1l, -0x1.fea455c901eec92p-1l
+0x1.46b0046e6630afe8p+1l, 0x1.f89b882f019873p-1l, 0x1.09c0c054dd5d1e84p+3l
+0x1.a0bc92eca9e4fdap+2l, 0x1.37619e1c417cb214p+2l, -0x1.f3ab7ae96e72e85p+0l
+0x1.2f59c269407216cp+3l, 0x1.71dbee85255ff218p+1l, 0x1.3e5e2ad0a4fc3c44p+3l
+-0x1.713136865532b00cp+2l, -0x1.11186fdf3c66f8cp+1l, -0x1.52a0510b13374f7ap+2l
+-0x1.2d75bd7097938eep-1l, -0x1.2491780f5729d2ep+3l, -0x1.1571d8efe2a0828p+0l
+-0x1.7135185d91e4227p+1l, -0x1.28484a5c2dd9403cp+2l, -0x1.d2c0912cfe479fcp+0l
+0x1.47075b54f6f47418p+2l, 0x1.3034fde5aeb89258p+3l, -0x1.cafc07cf11c5516p+1l
+0x1.55a30d8b6e5092ccp+2l, 0x1.54489c737a92d3p-2l, 0x1.d1cabe29a1360728p+1l
+0x1.002bf56a26a5a548p+3l, 0x1.3244ff9c7aae9f1p+2l, 0x1.fbad75651c79a4fp+1l
+0x1.bec3947cf9a37128p+2l, -0x1.88b0d8c1006f9a8p+1l, 0x1.65141dad21c6096p+0l
+-0x1.17633edd76fc1a64p+3l, 0x1.13541334b77efep-4l, -0x1.b4ecfd5468f7597p+0l
+0x1.9aacb25094243b78p+2l, -0x1.f43840d94b423cap-1l, 0x1.3f1821765c164efp+1l
+0x1.9304cc978bf7a8p-3l, 0x1.02dda3e4e9c62p-1l, 0x1.86eb568e94488ddp+2l
+-0x1.2cbd2836960c6bbcp+2l, 0x1.1812b2c4ca4c3bc8p+2l, 0x1.c6cdf38773129538p+1l
+0x1.ff2d4e9dd8f6d0ap+2l, -0x1.14c9fb4405bb8c98p+2l, 0x1.d6b46e38167b4c4p+2l
+-0x1.b33ea35daa7bdacep+2l, -0x1.1b23fdac3b1201e8p+3l, -0x1.90f03816acb97acp-2l
+-0x1.e7a84ceeb6db405p+0l, 0x1.442e7ee8cfda33f8p+2l, -0x1.324ab72a39373708p+2l
+-0x1.4f80bb799bd5d084p+2l, -0x1.2d817c3336091f4p+0l, 0x1.7d053542126d3788p+1l
+-0x1.4b737860e7e8cba8p+2l, -0x1.36d23c2c335fa61p+1l, -0x1.f7e762b99cf7d1f8p+1l
+-0x1.8b72543e6986ecb4p+1l, -0x1.e014ff34f8c5df98p+1l, 0x1.e8dc10cb65d1884p+2l
+0x1.0c62243f4d30900cp+2l, -0x1.0544a65f6bb60acep+3l, 0x1.eac3813a7d7bc8p-2l
+-0x1.2db4ce25c24924p+3l, -0x1.2b23a60d7aa51b78p+1l, 0x1.e7631d2de7eb9a08p+2l
+0x1.2d294e8aad1ca588p+1l, 0x1.0b4f0079b8d6e68p-3l, -0x1.316710f18954816ep+3l
+0x1.8efcd0cb6c6a24ep+0l, -0x1.69822dffdb6d0c54p+1l, 0x1.45bae11515b9a3a4p+2l
+-0x1.2e324aaac9be8a3ep+3l, -0x1.7a6a2c0415d3782p+0l, -0x1.2bedec59e31aa04cp+1l
+-0x1.bb83976ef71ccfcp+0l, 0x1.0f0eb0bb2607faf4p+3l, 0x1.b9c6b8020f1ec92p+2l
+0x1.d8541708e62c22bp+2l, -0x1.e361b6e418792b5p+1l, 0x1.1486a376933b47bcp+2l
+-0x1.38604207889959dp+3l, 0x1.10d4f5cad900af78p+1l, -0x1.af2c5336b3a24d9p+2l
+0x1.cd3da016799d43c8p+2l, 0x1.08d6b0fb181992ep+3l, 0x1.049a36ae490d027cp+3l
+0x1.7bce74e8194585dcp+2l, -0x1.106d184ea3f6d6a8p+3l, -0x1.18c22f57a6e52558p+3l
+0x1.0943f8720671a14p+1l, -0x1.82e95c86009df2e2p+2l, -0x1.b02c7c11c505a6c8p+2l
+0x1.a5286fa682b9e6cp+2l, -0x1.171f54ecfc8d65bp+3l, -0x1.a3a66b1967f19adcp+2l
+-0x1.6ae4404fe229824p-1l, 0x1.4fc6a85009952adcp+2l, -0x1.8ee4f3be396c386ep+2l
+0x1.069a7cb92bcd6488p+3l, -0x1.390c227cee28acd4p+1l, 0x1.fd910f96c8c80d48p+2l
+0x1.d45cd16aab9f95dp+2l, 0x1.35eaf74146a79ac8p+3l, -0x1.791b745976b6686p+0l
+-0x1.b45171162dce449p+0l, -0x1.fa050a345e27d90cp+2l, 0x1.43e5020231ef23ep+1l
+0x1.7d1b01377500fcfcp+2l, 0x1.4505134f9dee20ep+1l, 0x1.3fa64e68716518b4p+2l
+0x1.f5013475c04bbf9p+2l, 0x1.8e7fe6a23a1c0bp+2l, 0x1.49d110b117c3af88p+1l
+-0x1.2f485d4bd0bb599p+3l, 0x1.1d596bc97fc2b298p+3l, -0x1.84669b87007473fp+0l
+0x1.2a6a7e2ea9a1aep+3l, -0x1.ce33addf9cf3af5cp+2l, -0x1.26964b8156f38e06p+3l
+0x1.c6e46bc0032feeep+2l, 0x1.17bcd67d96bb89fp+3l, 0x1.9c20966803273cc8p+2l
+0x1.5a9698b917a8635p+2l, 0x1.1e89ed72a53669fcp+3l, -0x1.dc5dc414beb09ffp+1l
+0x1.fd3053ff31e9944p-1l, -0x1.38b343fd261c8a96p+2l, 0x1.85012de20afbf348p+2l
+0x1.1b9eda5228d91cf8p+3l, -0x1.362c345410cd26c4p+2l, 0x1.3121f841f077ca58p+1l
+0x1.2ebbc5cd17299c8p+3l, 0x1.36ef3ba0bcb730a8p+3l, 0x1.e669f4727bfedefp+2l
+-0x1.8ffa8e3474bc3fbep+2l, -0x1.115e38a110901ep+0l, -0x1.975b6bcc81444d38p+2l
+-0x1.8ef1caf397bc8e14p+1l, -0x1.4ebe991f206c67e8p+1l, 0x1.db39adf53aec639p+2l
+0x1.0892e6f02b955b74p+2l, -0x1.c16d8fb222d1cfd8p+2l, 0x1.f242d983dc09b8f8p+2l
+0x1.b205e3486fc3294p+2l, -0x1.b5d74eb191d7c31p+1l, 0x1.10c29592fef9cd3cp+3l
+-0x1.3cde33b7ed8b1092p+3l, -0x1.8a6cde2c04fc132p+2l, -0x1.cf3d3c7f64c49bap+0l
+0x1.d6784e091f2e0bp+2l, -0x1.488c02b989b55b9p+1l, -0x1.89c478f7a70cp-10l
+0x1.33f5d0a75dea0808p+1l, 0x1.e7bd5ac6a0a3e9ep+0l, 0x1.64bc9b648478249p+0l
+0x1.29c2fd7cc3d5055cp+3l, 0x1.07ee95b4e71a18c4p+3l, -0x1.d8f1a25fecd32c9p+2l
+-0x1.6a8b47db447d7f2p+1l, -0x1.ff30103c6f056768p+1l, 0x1.6ab1b53a3ccb0038p+2l
+-0x1.1b7601eed946dbcap+3l, 0x1.3c1ab6a80f9e8968p+3l, 0x1.cd178d46b1b384fp+1l
+0x1.7f6292ccfe8b4168p+2l, -0x1.ab5f095280027ec4p+2l, 0x1.3a8f575c33bbca8cp+3l
+0x1.e7077d984794632p+1l, -0x1.44e4fc1cf8e5aac4p+1l, 0x1.8152a2a97de0dap-2l
+0x1.df42a86c397807dp+1l, 0x1.87e175f8ef1edf8p+2l, 0x1.9a1d058ac1322a58p+1l
+0x1.89866d66f2f2838p+2l, 0x1.01791a810d5fc568p+2l, 0x1.db3ca1f6b061d75p+2l
+-0x1.5c544c77abbbfc88p+1l, -0x1.48e23c9e760a528ap+2l, -0x1.1e81e998bdc582ep+2l
+0x1.23875bd15a01904p-1l, 0x1.4ff5ac290199d5b4p+2l, -0x1.4732b2e6f9bfdf2ap+2l
+-0x1.24e28d9f9451887p+3l, 0x1.4946ce0f8db793p-2l, 0x1.c46d4a32ca8b08ep-1l
+-0x1.9928d931b0758f3p+0l, -0x1.2a88c0afcfe07c68p+2l, -0x1.f9877174c1a1f03p+0l
+0x1.88d861612d8d0afp+2l, -0x1.3d0e2013c2265d8cp+3l, 0x1.330f52c87da86b88p+3l
+-0x1.1b76e64e381d1364p+3l, 0x1.f4ce4459185b8bap+1l, -0x1.eefb9e724d9cbefap+2l
+0x1.44bd95b5d04beedp+2l, 0x1.da55aa5c21f7cbf8p+1l, -0x1.69b4a00f2011777ep+2l
+0x1.27c64f7a060d636p+2l, -0x1.947c76f1937dbe38p+1l, 0x1.06e900c412a5f3e4p+3l
+-0x1.8288e1791d63f39p+1l, -0x1.2e90575281b019ccp+2l, 0x1.c78bd5bda4615118p+2l
+-0x1.35481309200edbd4p+3l, -0x1.d4cd0a7a8e2397e4p+2l, 0x1.c28a6a7cad51cp+1l
+-0x1.57ff8c4ef901719cp+1l, 0x1.c8377138185eb388p+2l, 0x1.0b8156d421747b18p+1l
+0x1.8508eab222504908p+2l, -0x1.5eb1d5acfeec4194p+2l, -0x1.9110a90cdf0d9ab6p+2l
+-0x1.dcc36f4eec31a9c8p+2l, 0x1.0808cf397ed2c8acp+3l, -0x1.68ba005ef91ddbf8p+2l
+0x1.0fceea1d78dfd918p+2l, 0x1.aa767f17b258842p+0l, 0x1.2bfb846bb30f959p+3l
+0x1.94ca9e15e895dffp+2l, -0x1.c282e28ccc9e347p+1l, -0x1.2f2be43c6ea681p-1l
+0x1.f934b47b8089be4p+2l, 0x1.3f728b5fd5c0dfdcp+2l, 0x1.9d525bd4192f94p+2l
+0x1.b05b6558643febd8p+2l, -0x1.7869fe5d4ea9c102p+2l, -0x1.06bc7bfe96cd5ba2p+3l
+-0x1.c0f3ef372642e8ccp+2l, 0x1.b2e4af569800b53p+1l, 0x1.30fdda116a74e4fcp+3l
+0x1.8ab0af61e8786308p+2l, 0x1.ea821953cf2854fp+1l, 0x1.273d5ba25242683cp+3l
+-0x1.cebffd5b940e02p-4l, -0x1.5d47cb477e62cc5cp+2l, -0x1.6d86174b53721e74p+1l
+-0x1.b3f684ad52a7f6p-1l, -0x1.0e8fdaf408c34e48p+3l, 0x1.98c77df0116a8668p+2l
+-0x1.ad71df92fa292abp+0l, -0x1.f62a8205aa5dd07cp+2l, 0x1.6d2c8ac7d77895ap+2l
+-0x1.8a99281f50cc79b6p+2l, -0x1.988b7dfc196f8458p+2l, 0x1.0426452cd6d47b08p+3l
+-0x1.2b0aa95dc1405294p+3l, 0x1.fdd495f64b2bb2c8p+1l, -0x1.b2172ba327230634p+1l
+0x1.b923523f4b104328p+2l, 0x1.ff8925d50b730958p+2l, -0x1.3d6125af776d6dap-1l
+0x1.e79d1cf126539c2p+2l, 0x1.49e10d6ad2b94248p+2l, -0x1.101ab33a1ffd2468p+2l
+-0x1.7b5166ace194ac7p+2l, 0x1.d9edd52c82a6e72p+0l, 0x1.353665e62595d67p+0l
+-0x1.2bbc9f2a7d553384p+3l, 0x1.36a0e363e6e28438p+1l, -0x1.49d036190c298fe8p+2l
+-0x1.04ab2cecd02b67fp+1l, 0x1.16ff500ff20f665cp+2l, 0x1.c76813b6841d2fdp+2l
+-0x1.397c2e4fe55bbe7ep+3l, 0x1.643394cc27377ef8p+2l, -0x1.a20c460a472eb8d6p+2l
+0x1.3c482ad120fd4058p+2l, -0x1.d972562e19230ffp+2l, 0x1.19f494f79c825974p+3l
+0x1.d16ce689734da39p+2l, 0x1.d08f214e5765575p+2l, 0x1.21cba3aa8a02f13p+0l
+0x1.ffd4c8388b154bdp+1l, -0x1.23b9d15cc8db53bp+1l, 0x1.bc529b8dbdbbdb9p+2l
+-0x1.217eb8f015dfd688p+1l, -0x1.c6fdc71e7773e4cp+0l, 0x1.063ff23a796e3d18p+2l
+-0x1.853329604872e218p+1l, 0x1.f0bf3718776bea4p+1l, 0x1.e90deb962334f8p-6l
+-0x1.06c50329b18d64f8p+3l, -0x1.632d3e241872c148p+2l, -0x1.1f3269b1234f852p-1l
+0x1.785ff5369da7e94p-1l, -0x1.1d2accec93aaecb8p+2l, 0x1.537a8738350e044p-1l
+-0x1.25b0b3b3fbc72e88p+3l, 0x1.e4381078effdf2bp+0l, -0x1.3a4d5c22bef61704p+3l
+0x1.3ad4ee4e1257b3b4p+3l, -0x1.bea0197105b6560cp+2l, -0x1.9713dd57191c565p+1l
+0x1.ba6ce057cda393ep+0l, -0x1.c78176f4366b97p+0l, -0x1.185eb594fbcbea78p+2l
+-0x1.48776de3ab89cc74p+2l, 0x1.f0d15c31bb9e9b4p-2l, -0x1.080263071faac05ap+2l
+-0x1.75afa4f7aee9406ep+2l, 0x1.d2218f6895689c3p+1l, -0x1.bbe31c946ccad17cp+2l
+-0x1.3d2a5b60ff6fecp-1l, 0x1.c519328ec3820768p+2l, -0x1.63405cccebdd6f6p-1l
+-0x1.916722465ea19b4p+0l, -0x1.50a3982ecbff799ap+2l, 0x1.03f15a435c1b9f9cp+3l
+-0x1.1e34321045698e98p+1l, 0x1.cad89057dd9fc0a8p+2l, -0x1.f9702d05cb40b08p+1l
+-0x1.391b63ddfb3cbf58p+3l, -0x1.76ff6f974eb2d8fcp+2l, -0x1.af7f19e4e720a89p+2l
+-0x1.ef4430d8fc8e3d4p-1l, 0x1.10d10c44ff68b558p+2l, 0x1.ea42a55c9b34ee8p+1l
+-0x1.b65af64c57e564p-5l, 0x1.1f46e197c74a366p+2l, -0x1.97d01f4d2afb6ee4p+2l
+-0x1.006969307d6008e6p+3l, 0x1.426d4aeca810da5p+1l, -0x1.04a29ffe5c836654p+3l
+0x1.62b63d782c57e678p+2l, -0x1.0056fe6ca01b52cap+3l, -0x1.12f5c2c211e4267cp+2l
+-0x1.adac616d079f70b4p+1l, -0x1.cabb887eb20a7e78p+2l, -0x1.58a46124f8a7c3p-2l
+0x1.f69ba7a645468f48p+2l, -0x1.0e57bab3855177dcp+3l, 0x1.1631a40ac3c6573p+3l
+0x1.e5946ec7eb957c48p+2l, -0x1.ce348136751472bp+2l, -0x1.ac5b5aae66142p-4l
+0x1.67ce5a483ba91d1p+0l, 0x1.c9b21b464f61cb88p+2l, 0x1.c2f29989af79d1p+2l
+-0x1.81a94bf07a47bac4p+2l, 0x1.20126b62aedccd04p+3l, 0x1.2258170335033d38p+2l
+0x1.1e65c309a9715f94p+3l, -0x1.c0fe576d83690804p+2l, 0x1.5d897866f0df6f4p-1l
+0x1.c72ba1bed2aa947p+1l, -0x1.1c01a864af729696p+3l, 0x1.88bf198db0e8398p+2l
+-0x1.268283c6c21d854cp+2l, -0x1.2535de4dc9eabb6ap+3l, -0x1.99e76ff0ab592d2cp+1l
+-0x1.758cf02e04681bp+0l, -0x1.c7b04a2f5494a87p+0l, -0x1.1fd56c86b861405cp+2l
+0x1.12b6c24d790bdc6p-1l, 0x1.f02d34774fbad9b8p+2l, -0x1.64eb034e58d6659p+0l
+0x1.9ec347067862d5p+2l, 0x1.17f51a4a2db3e738p+3l, -0x1.1015c7e58904acf8p+1l
+-0x1.163af84d29aee41p+1l, -0x1.bccfd49f2e21855p+0l, 0x1.6e78b786bb4f863p+1l
+-0x1.9e3e736cbf7cd3p+0l, 0x1.03bbcc65318769p-1l, -0x1.753c7125f03c1bb8p+2l
+-0x1.3f7544b887966bf4p+2l, 0x1.7871b9cdf3900bbcp+2l, 0x1.71a571430a6d6214p+2l
+0x1.efa04f5a1e0be9cp-2l, -0x1.306ed6de2934d184p+2l, -0x1.c3bff63e5e73c16cp+1l
+-0x1.2e6c64054c17f51p+2l, -0x1.bcfc5f33c64669f4p+2l, 0x1.173d127d985bf5p-1l
+-0x1.242cd91ec7ebf5ccp+2l, 0x1.fbd4ba2212c14cp-3l, 0x1.34274696f54792p+2l
+-0x1.bf3dd4983f11314p-2l, 0x1.7bd9e3638973c4e8p+2l, -0x1.496f82a51fd01794p+2l
+-0x1.b3b7b591fd1755ep+2l, -0x1.5d9d4f53ee3ad2ecp+1l, 0x1.3b5b0798b913118p+3l
+-0x1.3cfcbbff28476f44p+2l, -0x1.7e42320e9fcc1784p+1l, 0x1.202729744d9b948p-1l
+-0x1.a93f43a7a2c3c19p+2l, -0x1.d2acfd0256862208p+2l, 0x1.69c56f3d94dd53ap+0l
+0x1.023c72d35bb852dp+3l, -0x1.314c52b661eeac9p+3l, -0x1.f928090e31a27c2p+0l
+0x1.9fc23cb8eca7372p-1l, 0x1.27fc00c8450b6ef8p+1l, -0x1.8795d232031e8ep+2l
+0x1.82e31b407d51e2bp+2l, -0x1.4f095294f470ee4p+1l, 0x1.a9d2cc451be4585p+2l
+-0x1.962c2225353eaffep+2l, 0x1.e91c08bed0e1e088p+2l, -0x1.74cd628e5e83bfap-1l
+-0x1.5267ed6ac3dbb14cp+2l, -0x1.24e043d0562b056cp+3l, -0x1.8f8c06362b01a0a8p+2l
+0x1.32b5519854ac80fp+3l, 0x1.c07ac8f7dff9d21p+2l, 0x1.02544fd30c8c38f8p+3l
+0x1.50d41caff18f241p+2l, -0x1.94c9ba70ccceef4p+2l, 0x1.2a1ca08a79990b3p+2l
+0x1.fc96c5c5b6373b3p+1l, -0x1.13ffe7fcc8c749e4p+3l, 0x1.3a84293e1979e9d4p+3l
+-0x1.3cca8f7fe79a9bc2p+3l, -0x1.19a44f8c93a38936p+2l, -0x1.2109897de66d7118p+3l
+0x1.9e92e18c402a95cp-1l, -0x1.db9c7a330cf9e3bcp+1l, -0x1.9d0336c76b3b56f4p+2l
+0x1.99eeedbe84f2ad9p+2l, 0x1.c4941988eeecac8p+0l, 0x1.ca39f083f42ba4p-4l
+-0x1.2c2b39f500b9d268p+2l, -0x1.00221bbe3d335518p+1l, -0x1.05ef3b0782b8b9dcp+3l
+0x1.c6f19abe28cd77cp+0l, -0x1.10a9b72086871fdp+0l, -0x1.54ce5b08966339dcp+2l
+0x1.e3c625b4e6b6845p+2l, 0x1.5546e49f00159718p+2l, 0x1.9e2fd930fb1863bp+1l
+-0x1.ce1fae64750a93fp+2l, 0x1.81d7e84ba83ab7e8p+2l, 0x1.12b883f90d8bb4bp+1l
+0x1.ee728825bedf242p+1l, -0x1.6e3b0153a94d426p-1l, 0x1.85fb39015b10c64p+1l
+-0x1.571fe9d095410c94p+2l, -0x1.afdb3c4595273328p+1l, -0x1.cacfec88c99ac65p+1l
+0x1.0f56343f92851b28p+3l, -0x1.5a5fa37e1f435994p+1l, 0x1.1d232411c4151c78p+1l
+0x1.06fe7a2ae2110568p+1l, -0x1.98c97efc4b7b4ccp-1l, 0x1.58220ab7cac3aeep+0l
+-0x1.653ec9417ffc9c0ap+2l, -0x1.19ba4932c674f838p+3l, -0x1.1481a9b41bd419fcp+2l
+-0x1.97f9039199cd92acp+2l, 0x1.8981decf829f6f1p+2l, -0x1.0fd8acdb72b0b8dap+3l
+-0x1.21e5f7d01638c968p+2l, -0x1.597d3aad7a06327ep+2l, -0x1.62cd1e01b6cfe9ep+0l
+0x1.23f1425c7e1a264p+2l, -0x1.19105695cb634768p+3l, 0x1.4262dbdb20b1f1ep+0l
+0x1.0abb62909da605b8p+3l, -0x1.00e5ba66162f0fcp+0l, -0x1.02ccdf8552bd4d24p+3l
+0x1.aa3c00e5a059088p-1l, 0x1.3b7da713596fd3cp+3l, 0x1.5993547d7a7ad68p-2l
+0x1.59bd972975dc572p+1l, 0x1.7d9e37581d90f67p+2l, -0x1.7eb4a82c7c7b9dc8p+1l
+0x1.adac57c6d7fbdbep+2l, -0x1.a090c86d1b37e86cp+2l, -0x1.71929b143ee78c94p+2l
+0x1.01ccf4f647080dp-1l, 0x1.4b4e27a6ee3e52p+0l, 0x1.4038f695c10ecd2p-1l
+-0x1.8f780cfe32b82364p+2l, -0x1.8cdbffb8d8479788p+1l, -0x1.b53ef7e3b5cd6c08p+2l
+-0x1.7b28e870f55ea274p+1l, 0x1.dbbc84d07cb42338p+2l, 0x1.30512e67123fe81p+2l
+0x1.85a2f364a752a6fp+2l, -0x1.0b73b48a44edba2ep+3l, 0x1.1296fe3de99fcf5p+1l
+-0x1.c230eb4af8542ep-5l, -0x1.2d2cc7152871f0ap+1l, -0x1.722317ae59aa6fd8p+1l
+0x1.54bc873a7aaa9098p+2l, -0x1.654a948101c4afb4p+2l, -0x1.8b34eccd3d9a552ap+2l
+-0x1.a9f3ca984d00896cp+2l, -0x1.b019c3bdb535b48p-2l, -0x1.74486267ea378cap+2l
+0x1.55f7b6cffcf76658p+2l, 0x1.d9994ce7c2a3729p+2l, -0x1.a9261b07347a4cd4p+2l
+0x1.7a98dca8b8c0bap+0l, 0x1.49ebf269b56caa7cp+2l, 0x1.59070f2270cbe02cp+2l
+-0x1.d89578e2a5dedb78p+1l, -0x1.179d479193882fdp+0l, 0x1.21b671a4c82eb12p+3l
+-0x1.680f698b49e780aep+2l, 0x1.3fbbe2f07c441ccp-1l, -0x1.49b8904163c6e068p+1l
+-0x1.71d2bc41da7238cp-1l, 0x1.c43a446b26752268p+2l, -0x1.d11cf788a508c4a4p+2l
+-0x1.3f5df59fc51e1272p+3l, -0x1.15745a948f637e68p+3l, -0x1.f3cc1ba290ee25dcp+2l
+0x1.3c2738bf331b41p+3l, -0x1.07552f959316797p+3l, -0x1.13328a65d15276e6p+3l
+0x1.02b6a3ccd189b23cp+3l, 0x1.09d9b28b184f9504p+2l, -0x1.eb4868dd07b5cbecp+2l
+0x1.07563540c4eec57p+3l, 0x1.d7b3ec688065ed58p+2l, 0x1.2560267552df629p+3l
+0x1.8734a4e336004848p+1l, 0x1.f6734a1aca6c0668p+2l, -0x1.ab34761dbcfc31ep+2l
+-0x1.799aa99393c509ecp+2l, -0x1.a18bb50fd23fe4b6p+2l, 0x1.12d2a89a6c4b02dp+1l
+-0x1.159e3d766d7bf97p+3l, 0x1.eced3a9a5244b54p-2l, 0x1.9b2ea383879ba48p-1l
+-0x1.0dccec08b2d6e8ep+3l, -0x1.986b9654e4685a9p+2l, 0x1.e2e83c9c00ee3748p+1l
+-0x1.e70bfbd48fde39bp+2l, -0x1.a4eb7530316bdabap+2l, -0x1.086286e4df56342p+3l
+0x1.770eebc505c8813cp+2l, 0x1.8746ee92d877e3p+0l, 0x1.b0d95f9aba30ebe8p+2l
+0x1.6263b642f31c4818p+1l, 0x1.d93c04893e3af4ep+2l, -0x1.454ec35c79ed0a08p+2l
+-0x1.774687ad5b865dfp+0l, 0x1.24ae1bd747b23698p+2l, -0x1.5b4312ec0b34113p+2l
+0x1.b61100115966e948p+2l, 0x1.8cfdf8616c4679bp+1l, -0x1.f9a41b6a481292a8p+2l
+0x1.39528c1c9be041cp+1l, -0x1.732026aa328c3dc6p+2l, -0x1.0d4cd6a3085ea354p+3l
+0x1.bf137e7ecf5896bp+2l, -0x1.8ea46d127fc7ef24p+1l, 0x1.7857d411bb71a708p+2l
+-0x1.9b683cc322b1d4fcp+1l, -0x1.24edd65c89f99144p+2l, 0x1.232af896d26aa348p+3l
+-0x1.31668270094b855p+0l, -0x1.076b28c92c5b2fe8p+1l, -0x1.158a8081ece2aa78p+2l
+0x1.244142ac66a62498p+3l, -0x1.0f1b0c59c89e7d4p+0l, 0x1.26b11ec0b17f6a24p+3l
+-0x1.3fc86d7091c8c29ep+3l, -0x1.e45f683cde584624p+2l, 0x1.1c1b08d8e84170bp+0l
+-0x1.b231920409da8f02p+2l, -0x1.94a631dfbc79114p+1l, 0x1.46147aa7184e79ap+0l
+0x1.24656a770080bd8cp+3l, -0x1.818855d248fefefp+2l, 0x1.62e7fd78aa2b9d38p+2l
+0x1.2c3914d1c4360888p+1l, -0x1.1911181620163c64p+3l, 0x1.28a078fade8854bcp+2l
+0x1.06083859a67c1458p+3l, -0x1.19d99055a631ada4p+3l, -0x1.bae94cb971dd7bcp+1l
+0x1.380494998157eadp+1l, 0x1.bdd8e2142aa57d1p+2l, -0x1.82ff6c146061369p+0l
+0x1.8dca637ac0be628p-3l, 0x1.c8f5068b06bbf1cp+2l, 0x1.81c4ea9b1daedf3p+2l
+0x1.0b9592b2077bf08p+3l, -0x1.c0452a8be1865a8p+2l, 0x1.5a09239700285ep-5l
+-0x1.3ed13899bc5e781p+3l, -0x1.0aa02bf289640aa4p+3l, -0x1.925ff1a5df174368p+1l
+-0x1.488c4233dd79d9ap+0l, 0x1.436b2a97ba8a46ep+2l, 0x1.2866f052d1ffd99p+0l
+0x1.187babf1c4372624p+2l, 0x1.8dbe112710768aap+0l, 0x1.621be34d09f2e7d8p+1l
+-0x1.991057a8ff22a88p+1l, -0x1.8d7b9ebc78c7346cp+2l, -0x1.1d5904316329ad6ep+2l
+0x1.ef40c3e7ef8b0408p+2l, 0x1.37e5bfb010f6d15p+3l, 0x1.ec4c66b009eac23p+0l
+0x1.68f7ffcd89f38c84p+2l, -0x1.32e823cb2771c9a8p+1l, 0x1.0ba5e9f2633fc9ap+1l
+-0x1.21948378b3c9ca84p+3l, 0x1.2bd400eec184235p+0l, -0x1.60dc6d8755a2e63p+0l
+0x1.a4b11a255929f09p+2l, -0x1.491088921fdded4p-2l, 0x1.64ce4b5fad99fbp+1l
+0x1.2577f004302717d8p+1l, 0x1.8123c93d89d639cp-1l, -0x1.b9e8f79886eeadcp-2l
+0x1.ce92f568b48b585p+2l, 0x1.1f6ac0d19f301038p+2l, -0x1.249cbf17aedd827cp+2l
+0x1.e3aa8317c9e75b98p+1l, 0x1.1329a8dec102d258p+3l, -0x1.22144cc4c72fbc48p+1l
+0x1.43c04e719f035d38p+2l, -0x1.4600f2c008cf96p+1l, -0x1.8d829bf93f4d9574p+2l
+-0x1.d4c1a2da0c717bcp+2l, 0x1.6b550783abd28cfcp+2l, -0x1.2775b79645fc3a1ap+3l
+0x1.e308fdfc9a12d868p+1l, 0x1.4b030c02c1b3776p-1l, -0x1.b06e42044301bd0cp+2l
+-0x1.3b488c5dff39d9d8p+3l, -0x1.2462f4c56f0415dap+3l, 0x1.3e404beab8cf13b4p+3l
+-0x1.de5a08f2dfdca16cp+2l, -0x1.d4b1bc19c343b24p-1l, 0x1.7006633ccabb22p-4l
+0x1.955df96f1696fd4p+2l, -0x1.72f0d92b529494d4p+2l, 0x1.32a65e3a5275b258p+2l
+-0x1.e774fbcf36f019cp+1l, -0x1.ade1df5a86431ef2p+2l, 0x1.0955a04849bb76dp+2l
+0x1.4afaa0beb5295468p+1l, -0x1.30f3b91ae99b9f94p+3l, 0x1.b92499e0e3ece688p+2l
+-0x1.e4cec832f274aef4p+2l, -0x1.f72365076ee7611p+1l, 0x1.2981067811022b98p+3l
+-0x1.fa3c9eda5a8adfcp+0l, 0x1.8472b15ec422bdcp+0l, -0x1.949bb1821b2b71d8p+1l
+0x1.e7559f9a4c70278p-1l, 0x1.a698bdf9467fd64p+1l, -0x1.1e31565f3693e73cp+3l
+-0x1.177751ee19d36358p+1l, -0x1.9ffc1e71a6b9b188p+2l, 0x1.287e028a691b24f8p+1l
+-0x1.1bd7ade5bc1fdcd8p+1l, 0x1.0a4bf7308dc7c4e8p+3l, -0x1.80e0e9ce05768e4ep+2l
+-0x1.279ce30a8e307bp+3l, 0x1.41209ca4cb955a8p+1l, -0x1.7ae49e0f12ee7f08p+2l
+-0x1.6fc62eb7bb96044p+2l, -0x1.f56805ee06e265fep+2l, -0x1.61ad5cd02160517cp+2l
+0x1.02d9b716e4f43564p+3l, -0x1.7934f5f9aff6a764p+2l, 0x1.a020ddb787abf06p+0l
+0x1.1b435b09bd242b1p+2l, -0x1.1dcc2ab9fa891cfep+2l, -0x1.967bffe609b71ec2p+2l
+-0x1.55607b9405321fdcp+2l, -0x1.ef706390181213bp+1l, -0x1.d1f14e20b36f50aep+2l
+0x1.76183750a2126c58p+2l, -0x1.5b490f13346bddp+2l, -0x1.0e2e2670cd504346p+3l
+-0x1.19b96ff1141e195cp+2l, 0x1.7f636ddbeb4f34bp+2l, -0x1.3dff84fd82a20b7ap+3l
+-0x1.ec516722ae81ed4p+2l, 0x1.4584dcc6b6b5d56p+1l, -0x1.e3fab8b119997c78p+2l
+0x1.c5389bd011aed038p+2l, -0x1.29e1abba46cb4d0ep+3l, 0x1.e38b25d30606638p-1l
+-0x1.3be73ecfa5e3f5cp+3l, -0x1.2322201f3e6a6bbp+0l, -0x1.c415090c3bcd0f0cp+1l
+0x1.6fa09d4d40f6fc7p+2l, 0x1.db3553f32514b79p+2l, -0x1.bbcce3f7333eff08p+1l
+-0x1.02c2f188f7e86dc6p+3l, 0x1.353714400870301p+3l, 0x1.961e1dd02c9e9be8p+2l
+-0x1.d82b6fc8bcd8a5dcp+1l, 0x1.b0a743eb4de607fp+2l, 0x1.54a3e92a982e6a08p+2l
+-0x1.6afb8f3248dbc68cp+2l, 0x1.5cfa3e594d20326cp+2l, 0x1.1e5d4a8d6ac3e0dcp+3l
+0x1.8f645a84644898p-6l, -0x1.c0dfd27b6d6f769p+2l, 0x1.b0679870cf0ec64p+2l
+0x1.6fb5271eb9dbbbfp+1l, 0x1.662c1d5c84a9ccp+2l, -0x1.7f05aed8cf97877cp+1l
+0x1.97422390a537adbp+2l, 0x1.74169e847c4a34f8p+2l, 0x1.311cee660e36125p+2l
+-0x1.b73905caa6a96164p+1l, 0x1.f90bd737a5358d9p+0l, -0x1.b78f3cf583f5d6dp+0l
+-0x1.31a6eb64982a61d8p+1l, -0x1.3053b198481c728cp+2l, 0x1.a00f21bf8da66e9p+0l
+-0x1.5226b56bd75e6674p+2l, 0x1.3d73418963266cfp+1l, 0x1.e84bbb10e4ed5c18p+1l
+0x1.6b0ab43794a25f28p+1l, -0x1.db0aff41d4f9e39p+1l, -0x1.fe8d1594340654e8p+2l
+0x1.4d65804349cffefp+2l, -0x1.a66bc8212be149d4p+2l, 0x1.ce25b5d56c7c83cp+2l
+-0x1.44bd790627b0fa4p-1l, -0x1.ed9b1bc606d642ecp+2l, 0x1.4108d44e0a7fc418p+2l
+0x1.05d1a6bfdd112cep+2l, 0x1.0c73e3b17200ce98p+2l, -0x1.2b2c57e75a9f8dd4p+3l
+0x1.b9512fc071c3a6bp+1l, 0x1.24eb5a72655148f8p+2l, 0x1.59cdd930a1a945d8p+2l
+0x1.0531c8219b4c2af8p+2l, -0x1.ab04b07ecac737bap+2l, 0x1.5203017ec30b04p+2l
+-0x1.10c24bae05f58ddcp+3l, 0x1.97095cab49e4f2cp+2l, -0x1.ab47c1a0d87a2a9p+1l
+-0x1.fbe86e64728ec08ap+2l, 0x1.9b76e5245a482fdp+1l, 0x1.1b05854879b742p-2l
+-0x1.f284888ee3e26dbp+0l, -0x1.2ad5b59288dbf05cp+3l, 0x1.ce045ccff19aa72p+1l
+0x1.c8801eb61a78bbep+0l, 0x1.119b687e71a7d48p-1l, -0x1.8b1fd84c4211e484p+2l
+-0x1.9faf80cf1b285adp+1l, 0x1.6806ff74d3aaff6p+2l, 0x1.c89224f19707588p+1l
+-0x1.15a039e68a11e8aep+2l, 0x1.cbe8d0948d51e04p-1l, -0x1.3f32302862b5913p+0l
+-0x1.c43f977b15d931dcp+2l, 0x1.ed06aee881541a8p-3l, -0x1.8681a877056b2366p+2l
+0x1.add5112fb738085p+2l, -0x1.7454b27946606ddcp+1l, 0x1.25208a890b5cee08p+2l
+-0x1.12a5620c6717986p-1l, 0x1.fd4d50b798484ep+0l, -0x1.911b9c8b1ee1a78cp+2l
+-0x1.020759c8ca9aeb62p+3l, -0x1.65a69332a50241p-3l, 0x1.23e20f68536cc2cp-1l
+-0x1.0992f0b2b2fe2d1p+3l, -0x1.a958f9db86f7b9a8p+1l, -0x1.6acfc12a8520bb6p-1l
+0x1.64f1fda7480217ep+0l, -0x1.1c8a3e5fb27e7d4p+1l, -0x1.140de25b12d6bc1p+3l
+0x1.4b5ef2f3bb829858p+2l, -0x1.838335bb3693b83p+2l, -0x1.886acac6ce951bc8p+2l
+0x1.af85ab0639a72698p+2l, 0x1.09fe9c57f4b63f2p+3l, -0x1.090b2434f180b78p+3l
+0x1.024d8c275ac0af3cp+3l, -0x1.5fa408d8eed87e74p+2l, 0x1.ba4b6c04e7125d8p+2l
+-0x1.30b0c84953bc8b2p-1l, -0x1.b509ad9c7f662ebep+2l, 0x1.62473e9163d8186cp+2l
+-0x1.fc331dd9c95ed2ap-1l, -0x1.a7d7541f19583a7ep+2l, -0x1.56af805f969ab694p+2l
+0x1.8db106457ac0ec6p+1l, -0x1.53422c5453bd8f88p+2l, 0x1.3153b818e61ae65p+1l
+-0x1.e64694a0d5fa33c4p+2l, 0x1.04628ec5b66223cp+0l, -0x1.d0ef469d57bec088p+1l
+0x1.dfc1046fe1e439ap+2l, -0x1.3bc382435f21d2dp+1l, 0x1.2b706f04fc4e0ef4p+3l
+0x1.00f4ef071d2b124p+1l, 0x1.c0fce1daf36faaap-1l, 0x1.8735238d522e9f38p+1l
+0x1.ceb2794e9816d55p+2l, -0x1.af366b7b244435bp+1l, -0x1.dbcf6509c3d1ea2p+1l
+0x1.05606969d8a4b08p+2l, -0x1.a084d9283ccbfb4cp+1l, -0x1.6aabb1d58e52f54p-1l
+-0x1.20e3be920c115c54p+2l, 0x1.6b852f952238d6ep-1l, 0x1.671a08f350b41ad8p+2l
+0x1.401e9b7605e91f6p-1l, -0x1.6e1365e6d07ad8bp+1l, 0x1.3fe74c475158e90cp+2l
+0x1.9ccdc26681bca3p-3l, -0x1.87b1c770a1e3f2fp+0l, 0x1.330ef56b27450a4p-2l
+-0x1.df3e45b9f2a85abp+0l, 0x1.eaeb278a93a617p-1l, 0x1.fc4f2502fc7726cp-1l
+-0x1.1147b4704e9be1f6p+3l, 0x1.0e3c375fef46bb78p+2l, -0x1.48e1adcffbefe864p+1l
+-0x1.c8c15a03fc359458p+1l, -0x1.36c0d3cd5706b18p+2l, 0x1.cf7eff38e317323p+1l
+0x1.863aa5e227ea9728p+1l, 0x1.d27e8415e7e5cbap+2l, 0x1.0df4c2e22b91b3d4p+3l
+-0x1.a5836585d0671928p+1l, 0x1.7f18cf45d1e4b6f8p+2l, 0x1.085e7accef5302cp-2l
+0x1.fbb47e78d71920cp+0l, -0x1.3ca67a17a205818p+2l, -0x1.2ee594674e2cac18p+3l
+0x1.aea035392038372p+0l, -0x1.ecaf8980051935c4p+2l, 0x1.335ea0cf8720245p+0l
+0x1.33d5128b671d8284p+2l, 0x1.792450fba1e37778p+2l, 0x1.348103ac0710bep-2l
+-0x1.d5df26418c410bep+2l, -0x1.4bad5ec06088026p-1l, -0x1.02744e2bc3c00198p+1l
+0x1.ee170274511a964p+1l, -0x1.120b6754d8f8db4ep+3l, -0x1.6ee45b8dd3aad37p+2l
+0x1.a3a3efbeded0c9fp+2l, -0x1.652e32652daaa7dcp+2l, 0x1.c109b0d9191677p+2l
+-0x1.bc149c05d77f948p-1l, 0x1.0c4aa6243f9d94p-2l, -0x1.6bcd3d4c10862666p+2l
+-0x1.16bd6d1ef870e76ap+3l, -0x1.2d853aa6e92e2b58p+3l, 0x1.3e5d8415b8d0ea2cp+2l
+0x1.703ce2cde997341p+0l, -0x1.0e48484fc9340d6p+2l, -0x1.6d91cf350e9e4p-10l
+-0x1.1cc65a20fc4ce8ep+3l, 0x1.cdd3cd1e24b4d258p+2l, -0x1.0d3aee7fd553f3p+3l
+-0x1.b556ea634465008cp+2l, 0x1.1cbfc32a2bef2cd8p+3l, -0x1.868a74111fb6de8p+2l
+-0x1.2bf3fb8cc3c9a78p+0l, -0x1.85c5194a2cde98fcp+2l, -0x1.52fd23e5c1a00af2p+2l
+0x1.657ecb210ed6c91p+1l, 0x1.4ab6cf8e65ce727p+1l, -0x1.645de09c4c2e1f6cp+2l
+0x1.fa3cc6a7f65cd2p-1l, -0x1.b4f82f1802590cep-1l, -0x1.184803cc1cee5ca8p+1l
+0x1.ac21afac94f2d85p+1l, 0x1.3bef2f851fd864ap+1l, 0x1.172e26d49669c0fcp+3l
+0x1.374f2c2cc8699a9p+1l, 0x1.188866c7d8ff576p+3l, -0x1.01d5b5191cdfcbbcp+3l
+-0x1.c406c210ff92278ep+2l, 0x1.56dbe48b63b37cdcp+2l, 0x1.3f8415674c413dap-1l
+0x1.232e5c91526e8ff8p+3l, -0x1.daf64f97e68737ap+0l, -0x1.9607566bd489d714p+2l
+-0x1.3567d139ef5f49p-4l, 0x1.235f8376e71bb71p+1l, 0x1.16991366a33763c8p+3l
+0x1.2aabafa2440af93p+2l, 0x1.130bb4af342f7bd8p+3l, -0x1.3f0554d9e9dfe938p+2l
+0x1.f4de1e2f3704788p+2l, 0x1.4beee423e609f77p+2l, -0x1.bbe724f7be8a015p+0l
+-0x1.23fac3ccdbd5961cp+2l, -0x1.cb2d33d3f0f46228p+1l, 0x1.38d39fdf90068b8p+0l
+0x1.07874582fed30858p+3l, -0x1.5fcaee360d0dbbfcp+1l, 0x1.61704d9edf060c7cp+2l
+0x1.de3fe2216f8e06p-4l, -0x1.7b1b9e3c3fb106ap+2l, 0x1.0fb62cf6fdeaaffp+3l
+-0x1.a0e5803efb4b8f18p+1l, -0x1.3b405ab29d6e12e4p+1l, 0x1.39fc88248cf4145p+0l
+-0x1.9f26e4fe002f7894p+2l, -0x1.bd3e589313f10ep-4l, 0x1.78cf06829906a1ap+0l
+-0x1.fc2374b434ae595p+0l, 0x1.0cad4c357892de8p-2l, 0x1.06daeec487858448p+3l
+-0x1.08020a97604a176p+0l, 0x1.7dcd61b8c0cd3af8p+2l, -0x1.706f4a6731de03p+0l
+0x1.80b5ccb27919c9dp+1l, 0x1.1146c09230da96p-5l, -0x1.02cc32e609653d66p+2l
+-0x1.0e4b6cff2c1a3cacp+2l, -0x1.3756f492586fb7a8p+3l, 0x1.b93c6231f322881p+1l
+-0x1.17b061e5a382630cp+1l, 0x1.96513d0b3965941p+1l, -0x1.cce0cd89bb704e74p+2l
+0x1.9371551062a48e2p+1l, -0x1.73ab2973d1668adp+1l, -0x1.c658f6e1cc9f805p+0l
+-0x1.24a0f17742cbcb68p+1l, 0x1.a812fcd8444469e8p+2l, -0x1.bc6fe6836b1edb08p+2l
+-0x1.21a85bc505822598p+2l, -0x1.ac59cf066c695aep+1l, -0x1.222b15c38ba5ebdep+2l
+0x1.e11dabbf057450dp+2l, -0x1.5d776d01d60c9e3p+1l, -0x1.07fef253912d8e94p+3l
+-0x1.3cfed5bf181b819ep+3l, -0x1.5dbadd01cc4b9678p+2l, -0x1.94cd307e71ffd42p+0l
+0x1.c5616d15d5bb684p+0l, -0x1.3b34663bd018412p-1l, 0x1.0e0c65bb0b1ebddp+1l
+0x1.4b9d3f1d0f6e4p-3l, 0x1.2b518dc264094d8cp+3l, -0x1.3ee5688f13faea34p+3l
+-0x1.705d405d599afa9ap+2l, 0x1.0055af34e1414c3cp+3l, 0x1.06af8403b4e8f2b4p+3l
+-0x1.978f94368e33a85cp+2l, 0x1.c147c95de4f77588p+1l, -0x1.fc30f2642b79be08p+2l
+0x1.264392f9cfe9a72p-1l, 0x1.586406bbd3ee50cp+0l, 0x1.42c74aea0d9ebe2cp+2l
+0x1.b7f2c0bdbf49f36p-1l, -0x1.e2ac2567cbb28c48p+1l, -0x1.140a34b98fc51c18p+1l
+0x1.2a4f0572a49905bp+2l, 0x1.31e6199ab1684f3cp+2l, 0x1.35afa8895b05fd6p+3l
+-0x1.27d2f4168819354cp+2l, 0x1.73f0cca96b38ac08p+1l, 0x1.8af6d8f509097a3p+0l
+-0x1.98d96e9ba2e949d4p+2l, 0x1.3cae358bef8bfbp-4l, 0x1.9b3c807987702f9p+2l
+0x1.18452bfc375d8868p+1l, 0x1.c2b7e473953f0938p+2l, -0x1.a160c6f88d66b548p+1l
+0x1.96e1a580ce5acf78p+2l, -0x1.60ccfcb42a92999cp+2l, 0x1.4a30db31ca1c4p-7l
+-0x1.2c7a23364427dda8p+3l, 0x1.10bde3db43c42eb8p+3l, -0x1.29a328765e9adcp-2l
+0x1.0f433a705d5303c8p+3l, -0x1.87ef252df9fa59ecp+2l, -0x1.df702844df97586cp+2l
+0x1.3dd6e8583ebc9e48p+2l, 0x1.5f111cc6ba81a564p+2l, 0x1.1031457f4a2bfe3p+1l
+-0x1.a0cbb7dff107948p-2l, -0x1.626baee60c84a524p+1l, 0x1.1a79d7b22086997p+1l
+-0x1.deba54a2de31331cp+1l, -0x1.27b31cd9ddf718dp+2l, -0x1.ce13596be236b18p-2l
+0x1.ea6f9017b18bb48p+1l, -0x1.39b491506a117b3cp+2l, -0x1.5a68cc709e19ddb4p+1l
+0x1.44ba64effe6f318p-1l, 0x1.54dd0bc2b262b0d8p+2l, 0x1.df1793b1a696693p+1l
+0x1.306bf14010f1e5e4p+3l, -0x1.897319e50c8e2adp+0l, -0x1.0333003f0bbcdda4p+3l
+-0x1.77ad652c1e7af18cp+2l, -0x1.19f8fc227dbbdb74p+3l, 0x1.d800ea2c8ecb18ep-1l
+-0x1.fca2378f98449f8p+2l, 0x1.cb0e64c6b949b3p+0l, 0x1.1b9008e7dda530a8p+3l
+0x1.93e174cf7beab4dp+1l, -0x1.850b69f61519b7ecp+2l, 0x1.470813a3325b4d6p+1l
+-0x1.85d359c1432e2b48p+1l, -0x1.1d0c9c5a55b44b46p+3l, 0x1.cc4f397f7025e3p+0l
+0x1.d1af715b09896ep-1l, -0x1.25fe34bea84f4e58p+3l, -0x1.1d4a676770de988cp+3l
+-0x1.32c5c732cf65522cp+2l, 0x1.d64f5f3d180eb67p+2l, -0x1.4f7b7ca0949e1ec4p+2l
+-0x1.205cb93b45221782p+2l, 0x1.543642368589655p+1l, -0x1.2219a5b3832bbffcp+2l
+0x1.57237699ef626998p+1l, -0x1.33aadcce8021b9a4p+3l, 0x1.0f3150df8b3271ap-1l
+-0x1.eb9e8fd4bbff34fcp+2l, -0x1.144bb5fc0289e42cp+1l, -0x1.a5113f7dd4905044p+1l
+-0x1.d5921345044e0f7p+1l, -0x1.f40e20c7db32cffp+2l, 0x1.b943dc8f8fee368p+0l
+0x1.856cfc710d6cf9fp+2l, 0x1.50d1736a3fa09dp-4l, -0x1.0f7e3e5d0cc7f9ep+3l
+-0x1.fcd59ba328e9b4fcp+2l, -0x1.5fc0bb3816b9d734p+2l, 0x1.1fc789b52cb335fp+3l
+-0x1.ebb5635b7341144p-1l, 0x1.d42a4a02eec99cp-2l, 0x1.2035adf32786fp+0l
+-0x1.a0cffca66138c2p-3l, -0x1.0293dc0632d8c71p+3l, 0x1.f2f8eb3e13e3ec58p+1l
+-0x1.0b89e881c0f4eep+0l, 0x1.6b4f9fb6377cfad8p+1l, 0x1.878ca14bba5f3cp+2l
+0x1.31422285e62b619p+1l, -0x1.7af6ddfd280c068p+2l, 0x1.aaa472ee1b9e33p+1l
+-0x1.5b698bce4169dcap-1l, 0x1.a3152c63ba206bdp+2l, 0x1.8c74ce51547a53fp+2l
+0x1.75ac22632d481b3p+2l, -0x1.72943a250b344992p+2l, 0x1.2cb4a67c1e4de318p+2l
+0x1.a3b4a47f255df138p+1l, 0x1.317c0da98b4bc5fcp+3l, -0x1.1b47aaed3d275d1cp+3l
+-0x1.144c38afc8f3ccecp+2l, -0x1.3bc294645586837p+0l, -0x1.e313c92cbce7c5p-3l
+-0x1.070e8b4ee0a192d4p+3l, 0x1.1c9763bfc9a2a214p+3l, 0x1.076ceacf70a4db78p+3l
+0x1.805d616709771b6p+1l, -0x1.43c762a43e2ceafp+0l, -0x1.bb6986b1475331acp+2l
+0x1.caff5a21f9c0fp-6l, -0x1.81bb67138976fe6cp+2l, -0x1.08cc5760478a352ap+3l
+-0x1.8bda77ff92ffcfp-1l, 0x1.52850d23f7ad4e4p+2l, 0x1.7883d2aeeb9bb8dp+2l
+-0x1.07b8a680d12292dcp+2l, -0x1.c82f9bd014076de4p+1l, 0x1.f745af7090bf7d7p+2l
+-0x1.e0be34aca36ea4cp+0l, -0x1.697b61a1e9f60f8cp+2l, -0x1.0204df315ca0c1p-3l
+-0x1.aeb12a5426d3445ap+2l, 0x1.0039c0bc2ffa6824p+2l, 0x1.e301d847e0a4ee9p+2l
+-0x1.72e9d87320b929p-3l, -0x1.e80d74feeb8f62dp+0l, -0x1.19e3142d516fcebp+3l
+-0x1.bd28dd0e9eb0486p+1l, 0x1.d7fdd5ac728bcb58p+1l, -0x1.6e08d83bfdbc3df4p+1l
+0x1.06bbbe7311155cap+3l, 0x1.fd0c26442f4f4d8p+2l, -0x1.f01198b5601a1bfp+2l
+0x1.23c1d7d3c23f3834p+3l, -0x1.0d6b49fc99478e3p+2l, -0x1.6549c8ad26d6df38p+2l
+-0x1.bd06b71ba6b0985ap+2l, 0x1.ac48142ffc6a4b58p+2l, -0x1.0c3a531e7fc431ap+3l
+0x1.769ca2fbf3d77aep-1l, 0x1.132f1bfcc91d81ap+3l, -0x1.103fe76a4b23c69cp+2l
+0x1.391d44a529c0ebdcp+3l, 0x1.b3509b6e05a09678p+2l, 0x1.ed7783172dc4202p+2l
+-0x1.1c5d4577d584302p+1l, -0x1.cfc293d443d576bp+0l, -0x1.08d24cc7e1f0d092p+3l
+-0x1.2b800d0f34e03ca4p+1l, -0x1.0715a25d5a6d7698p+3l, -0x1.290ecade460219c4p+3l
+-0x1.d9d626245fa36ae8p+1l, -0x1.04a2a700e2d1356ap+3l, -0x1.1e726a412a64e82cp+2l
+-0x1.691cb69a4b0ddd8p-1l, 0x1.22187472d0f8bf54p+2l, 0x1.2395e42912219d0cp+3l
+0x1.3055c97fa774c264p+2l, -0x1.fd7df223aafb2468p+1l, -0x1.7561bd4141c08bp-3l
+-0x1.802e7eccd12ac8f4p+1l, 0x1.1d9570f6c794008p+1l, -0x1.bc0fd46df5212f6p+2l
+-0x1.f7502332abb263f4p+2l, -0x1.998702ca55c2d8d8p+2l, -0x1.39b259c21ff1b2cp-2l
+0x1.c1d9ac0a7761f6e8p+1l, -0x1.e15d7b4e69294dcp+0l, 0x1.6b4b492058e18018p+1l
+-0x1.06c8810af5f2764p-1l, 0x1.3b0b9ce3e73ac0a8p+3l, -0x1.3f9680e70f04d78ap+2l
+-0x1.858a7a4f1c5119p-2l, -0x1.5a947bb4954c6cap+1l, -0x1.f715ccddaec26b24p+1l
+-0x1.ae0445b64bac132cp+2l, 0x1.0a48ee936160fdf4p+3l, -0x1.a0c9de7753e2a534p+2l
+-0x1.6d31e005a864526cp+2l, 0x1.fd7d595ad7771e8p-2l, 0x1.38cf1546f55bee48p+3l
+0x1.037863bddcb6539p+3l, 0x1.fdc2cbb9085e2fcp+1l, 0x1.eb4fb1608913d36p+2l
+-0x1.1675c711a907672p-1l, 0x1.a1f8e986f8381378p+2l, 0x1.463c0fa1b634b938p+1l
+-0x1.236b52d8cc5bb3p+2l, 0x1.fed2d7fcbdc66778p+2l, 0x1.ad642afd546bcddp+1l
+-0x1.95c979cd6e4bd36p+2l, -0x1.c856e065c2c4231p+1l, 0x1.d509592de749afp-2l
+-0x1.2362d85cfcd4478cp+3l, 0x1.03fc2baf32ddb228p+3l, -0x1.5a7ea06e983e47ap+0l
+-0x1.3e15aee2dccd32a8p+3l, 0x1.10f918acb72d34ep+2l, -0x1.c6ec21e0f114fbbp+1l
+0x1.68040d78dddb7cap+1l, -0x1.5a2f72276c57e24p-1l, -0x1.23d14c77b92b2f08p+3l
+-0x1.f550ee0dcfacd9d4p+2l, 0x1.84e05208934db23p+1l, 0x1.afcb71484bbb9288p+1l
+0x1.75c3756be3f78c88p+2l, 0x1.439497bcd9a88abp+1l, -0x1.b4df11e449f84b7cp+2l
+0x1.d7123a28ec634e2p-1l, -0x1.2654ce41f484041p+2l, 0x1.43ed5648933cb51cp+2l
+0x1.bbd98b119cd782e8p+2l, -0x1.1d5c54b705b4aafp+3l, 0x1.e9f3961e95ff2818p+1l
+0x1.ee25a1ce32c25708p+2l, -0x1.cf1788ea282b86p-3l, -0x1.1dd4fdd932de91b4p+2l
+0x1.a879eebae8e748f8p+1l, -0x1.155a27ee0f82555cp+2l, -0x1.38d6ed7b37ff5b0ap+3l
+0x1.1b987cfb8199c568p+3l, -0x1.3363afb5eebc9a38p+3l, 0x1.c5b01359408ecep-1l
+0x1.a27fbd96b050b2ap+2l, -0x1.804c8128041e8088p+1l, -0x1.5d64d25a8a0ee5f8p+1l
+0x1.67b4aac781c02d3cp+2l, -0x1.3495f8c8ad7b676p+3l, -0x1.f8b80c12ece607f4p+1l
+0x1.05aec2a958241ca4p+2l, 0x1.c55dbb753118d6fp+1l, -0x1.cf710f1abd84944p+1l
+-0x1.69da780f2521d218p+1l, -0x1.6569ec79b8dd053cp+2l, 0x1.ae2a3edee4cd5978p+1l
+-0x1.3cafa8a31fb602bp+3l, -0x1.d1b0b7d638877eap-1l, 0x1.99f4dd0ec4985808p+2l
+-0x1.2fd33da45b9c5ba4p+3l, -0x1.25c656375bdc19ap-1l, -0x1.843c608e5747eecp-1l
+-0x1.07e53a66bf590e14p+2l, -0x1.0e28fda095304af4p+3l, -0x1.16120b84128c25e8p+3l
+-0x1.92b3d92b58fa2bb8p+2l, -0x1.38dfc62564aa334ap+3l, 0x1.8ed55d262f4be1ap+2l
+-0x1.cbf87275067fe744p+2l, -0x1.0f0ef2970d89b13cp+2l, -0x1.e070022c5025c34p+2l
+0x1.656edfa1b7c278bp+1l, -0x1.f36d3fad1ee0b588p+2l, -0x1.715c3df3826be28p+2l
+-0x1.b81806cf987e3dep+2l, 0x1.6782c74753364cd4p+2l, 0x1.036a0f501d6b91fp+2l
+-0x1.585e71022bf343cp+1l, -0x1.7c5494433d310ea8p+2l, 0x1.1034380950b80e9p+0l
+-0x1.a41db0028ff46ef8p+1l, -0x1.2d8fcd4a22a77efcp+3l, -0x1.8e40eccda091e36p+2l
+0x1.113a04318e478c68p+2l, 0x1.c46fc8c3dda5b488p+1l, 0x1.0822b7c6b097a46p+3l
+0x1.48a09a59ba73308p+0l, -0x1.247686fe869afbcp-1l, 0x1.0fe26b44d4759f74p+3l
+0x1.367da1bbfa6e00e8p+1l, -0x1.9d9150243ba3ad74p+1l, -0x1.10fc017df3986804p+3l
+-0x1.a11f956013ae53ap+0l, 0x1.b96d8a20ed97b69p+2l, -0x1.011a94a9acc7ce04p+3l
+0x1.74a6f0d4c1e8c668p+1l, 0x1.1045e79f79bdc14p+1l, 0x1.bc0f9e70cbdb37f8p+2l
+-0x1.d8a541c5b6747698p+1l, -0x1.3dba3d61a2f41d52p+3l, -0x1.345d3bf71e3af4p-5l
+-0x1.00104677efcb929cp+2l, 0x1.8b4d6d45b954c24p+2l, 0x1.82686829232a9e1p+0l
+-0x1.e7bc7417dc78dadp+0l, -0x1.525a2b707f9e4a7p+0l, 0x1.6d5faa05100390d8p+2l
+0x1.042cc06bbecdf404p+2l, 0x1.9ff2630750804d6p+2l, 0x1.295591e7a922d14cp+3l
+0x1.05908858842cb5f8p+2l, -0x1.381ab482c6e7c90cp+1l, 0x1.b686d42c6549abbp+2l
+-0x1.2eaa469a27ba1494p+3l, -0x1.48af2e8a63a48f7p+2l, -0x1.b2c43833f67f2afp+1l
+0x1.4ebe0bf4d6f7a57cp+2l, 0x1.58a1f1afb10d6498p+2l, 0x1.fa265ed2681e9838p+1l
+0x1.623c7b8c0e050a4p-1l, -0x1.56f8487d1e66e23cp+1l, 0x1.8ef1981dc7864678p+2l
+-0x1.87e363588d780ap-2l, -0x1.00450ca39dae89fp+1l, -0x1.31ba7afa8867bbfp+0l
+-0x1.a11a7b07008cb028p+2l, 0x1.945131c5d66c5b68p+2l, -0x1.364d9dc2c41ac0e4p+2l
+0x1.4c035a5e283c8b08p+2l, 0x1.eb8211bd094a88cp+1l, -0x1.5dd2a1d9e67870d4p+2l
+-0x1.0403c59625f091ecp+3l, 0x1.aad43d09cc237c3p+2l, 0x1.4fdbc53514105524p+2l
+-0x1.265291048ceaf92p-1l, -0x1.e95845bde3f0343cp+2l, -0x1.af37f3943f7f641cp+2l
+0x1.7e17956fff5563f8p+1l, -0x1.67691fd34f906c4p+2l, 0x1.14dd5ac8dd326d2p+3l
+-0x1.1ecff55c659ad996p+3l, -0x1.0db20440552cad74p+3l, 0x1.fcf1e1a5294b9bcp+2l
+0x1.1723b11136d64788p+3l, 0x1.29b9cee3f8d61c8cp+2l, 0x1.e42a685a0308935p+2l
+0x1.d27e5267919dfafp+1l, -0x1.bc3756665a02749cp+2l, 0x1.302a4732b59934b4p+3l
+-0x1.20c97e46acbf61ap+3l, 0x1.3dd93d1879e05288p+3l, -0x1.33b418eb6a16d046p+3l
+0x1.0c6c60104ef530ap+2l, 0x1.87a7e6ba88b19aep+0l, 0x1.22b1dc03a04ed338p+2l
+0x1.e0c2f50544af9d2p+1l, 0x1.b120912bd7c80e6p-1l, -0x1.05e81edce440689p+1l
+-0x1.381866dd5e1ad8cp+1l, -0x1.14e2187770de50a4p+3l, 0x1.1f43cc5ec310d0fp+3l
+-0x1.edbd36aa8af21116p+2l, -0x1.d7fcb816ffb14328p+1l, 0x1.6148b09796b7008cp+2l
+0x1.8984d7937be696b8p+2l, 0x1.0166c406a0d08bdp+3l, -0x1.e6ce639344a8c31p+2l
+-0x1.2bcf3ed39dad8fc8p+1l, -0x1.3b74a2886004ef9p+3l, -0x1.4480c1a7ef8f8d3cp+2l
+-0x1.28556d0dfb25e54p+2l, 0x1.c8b4d843f8c11d2p+0l, -0x1.3933570d484b07eap+3l
+-0x1.a9d53e677bfce71p+1l, -0x1.1aeb6b5a745b911cp+2l, 0x1.1891852941517374p+3l
+0x1.57393737b025f35p+0l, -0x1.20ba580dfa5b22cp-1l, -0x1.1d2165635aa9799cp+3l
+-0x1.b98021eceaa1e1c8p+1l, 0x1.c8c708b96abc03ep+0l, 0x1.3d25232e25a2ca88p+2l
+0x1.e291645791b22acp+1l, -0x1.ec5b137f95e8efp-3l, 0x1.b740a48c8b72d7cp+2l
+-0x1.42f7fd466769d9d4p+2l, 0x1.0457ab47ce5d8d84p+3l, 0x1.7ba06584bb97b78p-1l
+-0x1.21f6aff7b0d3d464p+2l, 0x1.3a23620b2a9e6308p+3l, 0x1.20bb2948c865a5cp-2l
+-0x1.38eb68f386cf4c48p+1l, 0x1.012a75472b5a0e68p+1l, 0x1.4c303f1bc44b482p-1l
+0x1.4fe76211bf019f0cp+2l, -0x1.7ae624408edba8dap+2l, 0x1.78ec7cf855dfb88p+2l
+-0x1.15b1674328ec30d8p+3l, -0x1.3918a06b31c5539p+1l, -0x1.a0907f70c73e73fp+2l
+0x1.d0750f106a781318p+2l, 0x1.19de73e536e8874p-1l, -0x1.b9796b685843e7p+2l
+-0x1.64ed6dd409be8784p+1l, 0x1.ffcf498706e2e32p+2l, -0x1.ff40934f00278p-7l
+0x1.8bac48c3838b60bp+2l, 0x1.fca5c8cc449313p+2l, 0x1.d1362ddc34fd87ap+1l
+0x1.217d575167b207a8p+2l, 0x1.53f59d5dce4857p-1l, -0x1.b2505753432fd5b8p+2l
+0x1.53172777f77806ap+1l, -0x1.9c8b2c198c46747cp+2l, 0x1.a77e1be0a11534p-1l
+-0x1.363077aa786203e8p+2l, -0x1.ae4a6bc4f5590194p+1l, -0x1.08f16a3b1497242cp+3l
+0x1.0ef918fc35e4dafp+3l, -0x1.c1d989b23af91cfp+0l, 0x1.eb452d527f2b9f5p+2l
+-0x1.068225081ef666dcp+3l, 0x1.c4449822eaf5e9bp+1l, 0x1.6f09be5a9ff64368p+1l
+-0x1.3718e4a563340b5p+1l, -0x1.5fcc2c0bdb440c8cp+2l, 0x1.058fccb0a22c5a2cp+3l
+0x1.31bd7ea0feaf5d6p+1l, 0x1.e347b9d23d4e304p-2l, -0x1.c1eeb6a0f367c07p+2l
+0x1.d5b8aae36d36392p+0l, -0x1.4a134f28d182d538p+2l, -0x1.49a417f32a79f8ap+0l
+-0x1.802270e56e09d578p+2l, 0x1.b8e807a06d3657ep+2l, -0x1.bb72d6795519671p+2l
+-0x1.056447346ee2868p-1l, -0x1.e10e6d3821969dcp+0l, -0x1.2a7048cef11de9ep+2l
+0x1.b53f7137dacaddp+2l, -0x1.72f7ee0d5c9585cp-2l, 0x1.47871875d51c1d6cp+2l
+0x1.ed2c1ffd205ab24p+1l, -0x1.c74df9e10aba921p+0l, 0x1.1d0f8a3735c0fc48p+3l
+0x1.8622c5ad795f8b5p+2l, -0x1.8f9b4771580a0a7cp+2l, -0x1.f77f00d815ad81bap+2l
+-0x1.f355ba911f530c68p+2l, -0x1.eb8514dbe878f6fp+2l, 0x1.36859f1d9bcd5284p+3l
+-0x1.9b196f4d97fc82fp+1l, -0x1.2445e72e50acb6e8p+2l, -0x1.10b1e411333423a4p+2l
+0x1.32154310de816d34p+3l, -0x1.c6eec8142d1929c8p+1l, 0x1.db36a5f9d7b1803p+2l
+-0x1.3937b7c5b43c2708p+3l, 0x1.4b7596ca330c6fd8p+1l, 0x1.26a1135bc05b7a3p+2l
+0x1.66582b1c2fa49e3cp+2l, -0x1.79fd00a93cd18e7cp+2l, 0x1.0f4b2f9a3d7062c4p+3l
+0x1.2ba9de24d73448f8p+2l, 0x1.826bd84ef7c2886p+2l, 0x1.9f15a10661a227p+2l
+-0x1.5cf97a7401b146cp+2l, -0x1.1cf048d1d074546p+2l, 0x1.d2cfa201e1cf4dbp+1l
+0x1.136c4d88fab8d21p+3l, -0x1.151be91747e49ac8p+1l, 0x1.13276acc0a34ef8p-1l
+-0x1.9a672221fae41f1p+2l, -0x1.6c86efbbac945838p+1l, -0x1.1dfe02a531abf61p+3l
+0x1.fe8d2279cb1da298p+1l, -0x1.8a7e5dd58c0065dp+0l, 0x1.6c161cb7bc5b8298p+1l
+-0x1.df3530007af24b9p+1l, -0x1.fb6d4eb175efc52ep+2l, -0x1.272805969ce0f434p+3l
+-0x1.56b382270911b918p+1l, 0x1.e0ccbd81128851ep+1l, 0x1.784488b770f5bfep-1l
+0x1.16dae33269178eacp+3l, 0x1.37c6421617bbb9d8p+1l, -0x1.1ecd8eda21dfd2bcp+1l
+0x1.3e47d53fe52e9c98p+1l, -0x1.c364a5bf4b7f54bp+0l, -0x1.1994ee433bcfa8cap+2l
+-0x1.847e5b1dc2d17abp+2l, -0x1.ac074fe57221f0dp+1l, -0x1.eadc101596b00808p+2l
+0x1.72d14be23d83602p+1l, 0x1.3dd9a9330da230acp+3l, -0x1.2ad9d825b7878e34p+2l
+0x1.6a225763e728185p+1l, 0x1.0b5e34f1dc329b8p+0l, -0x1.0cdd4e348d2514e4p+1l
+0x1.1af4f83daff5f6b8p+3l, -0x1.2049a8a9f2151e6p+1l, -0x1.dc5df10428d76efp+0l
+-0x1.62d5d02eabbab42p-1l, -0x1.0c76a12d0d2e45d2p+2l, -0x1.d5c1b72e84a2394p+2l
+-0x1.ea6ce8043e88324p-1l, 0x1.da6a76cd32cf25p-1l, -0x1.2f78e8bafd6cfbf2p+2l
+-0x1.117a1b6a471d79f8p+1l, 0x1.9d0d5fe02bd235b8p+2l, -0x1.12a3e8fd7ef0e264p+3l
+-0x1.10dbc4567d232c1ap+3l, 0x1.81e0425e3aa458d8p+2l, -0x1.9837b78ecaa84486p+2l
+0x1.2f02c20d5fb162p+3l, 0x1.06cb918cd634763cp+3l, -0x1.94a4347a9ceb9e0ep+2l
+0x1.113549d6c20f8a2p+1l, -0x1.d8aca74f1cb90db4p+2l, 0x1.7e733b2eca26e2b8p+1l
+-0x1.3a8908bf717adebcp+2l, 0x1.003445b339de3bap+3l, -0x1.cd1bfd0caad5c8fp+2l
+-0x1.3c1d3d7f01f2be02p+3l, -0x1.78e27775d86d471p+1l, -0x1.2c11fbe049663c2ep+3l
+0x1.1ff1d4f7d806ed2p+2l, -0x1.0c8fd1054c1f78p-1l, -0x1.81925cc1bc0b125cp+1l
+-0x1.bf457e2cc14ca6p-1l, 0x1.f6d52d5660c129p-4l, 0x1.0a2839038ad2a3fp+3l
+-0x1.2e811a25fea37d5ep+3l, 0x1.f8c2f86f015730c8p+2l, -0x1.25f869b0303cd2e4p+3l
+-0x1.9c589a4ee47af7bp+0l, -0x1.c108a89211e120fp+2l, 0x1.2c4539e3022d482p+1l
+-0x1.eba0b393026ecb62p+2l, -0x1.3d4fce82c3527cdep+3l, 0x1.65d93f69832d682p+2l
+-0x1.ba71882f8fc7e41p+0l, 0x1.ec6f00c30fe63098p+2l, -0x1.da1a084d9dac7f18p+1l
+0x1.852617a0fc5d2628p+1l, -0x1.0a7abb802dccccep+0l, -0x1.17e7c82e2efcaf74p+3l
+-0x1.4ab19a96521e9cep+0l, -0x1.b78bafe804f131fcp+2l, 0x1.1021538b9792c13p+0l
+0x1.d6894ff7f3b7375p+1l, 0x1.c858f9f9c4a81fcp+2l, -0x1.508f555da54ef04p+0l
+-0x1.ea8a7e80e22ce4dp+1l, -0x1.3d750afdaa726dp+3l, 0x1.04fda2e4ac62b618p+3l
+0x1.4d7faf8d2371543p+2l, -0x1.8b98b470c79b3a18p+2l, 0x1.3c30880bf083c6f8p+2l
+-0x1.200a43600527badcp+2l, -0x1.50741c4c10002ep-2l, 0x1.522118cbe228953p+1l
+-0x1.42822178c8a5e448p+1l, -0x1.b2a0494f427e058p+2l, 0x1.ad8f94cb239f0a5p+2l
+-0x1.952f12e4b05c0b7p+2l, -0x1.52afc3209515bda8p+1l, 0x1.657f92bb16167164p+2l
+-0x1.cf8b459b7aaf0f6p+2l, -0x1.cedc0b516945bc2p-1l, -0x1.66fbfbe8354ddd48p+2l
+0x1.e9fcb20116fb6018p+2l, -0x1.094cad576448b27cp+1l, -0x1.328dc712666f998ep+3l
+-0x1.79ae4702e6eb1ba8p+2l, -0x1.25668553408d26a8p+1l, 0x1.d7e1a92443c996p+0l
+-0x1.40765611e5e653bcp+2l, -0x1.be5e037d54cdf5dp+0l, 0x1.8092fdae61ad19c8p+2l
+0x1.6b7b860f91bfaaep-1l, -0x1.6983ea1be13c1c64p+2l, 0x1.8f32ce50a8419f7p+1l
+0x1.acf6b87ec24202fp+2l, 0x1.7b6d1e923789d5fp+2l, 0x1.3f513909bf5f573cp+3l
+0x1.1637fbd5d187f624p+3l, -0x1.bf385d9ba36b2868p+2l, -0x1.3ff5f915414ef8f8p+3l
+-0x1.002ec39bc45dcb8p+1l, 0x1.3d626ef301ef357p+3l, -0x1.b44f86c2ff1f628p+2l
+0x1.b8cbf136b46757cp-2l, -0x1.95b5ffedceb0bd4cp+2l, 0x1.114f1948a75c5044p+3l
+-0x1.5f294e8cb7962bep+0l, -0x1.e6417c03ca508ea4p+2l, 0x1.687093eb03868b7cp+2l
+-0x1.c5bf4de8eb643b58p+1l, 0x1.f99ad8ff61286acp+0l, -0x1.94c73dafff2ab93cp+2l
+0x1.1af774b4f533f17cp+3l, -0x1.6c4461a1c5faa5f8p+2l, 0x1.094feafce11adce8p+1l
+0x1.2eafe1bec02a9fc8p+2l, 0x1.f63b4a200cfcb9e8p+2l, -0x1.37daa90d2063271p+3l
+-0x1.cf34330ba361642p+2l, -0x1.31597f14f6cf6ab4p+1l, -0x1.9e6f0154b8561aap+2l
+0x1.707439e39018eb2p+1l, 0x1.0cf99f146ac3ffd4p+3l, 0x1.2c8c6f0fe1ec8964p+2l
+0x1.6e167bd8ee145464p+2l, 0x1.27297fcb95af566cp+3l, -0x1.574e9d54971e6eb8p+1l
+-0x1.1b6567d9a122655p+3l, 0x1.8d787b252af63b88p+2l, -0x1.6b23a4343701f08p-2l
+0x1.4ec64553342ff6p-4l, 0x1.10062ecc5413998cp+2l, -0x1.b31a3dd1026da4fp+2l
+-0x1.1978066457caeedap+3l, 0x1.1b4cd5b41fa748a8p+3l, -0x1.191803dab35ce30cp+3l
+-0x1.27cb7709040e02f8p+3l, -0x1.b804fe36b81abb9p+1l, -0x1.30ccf3f0bb29939p+3l
+-0x1.e69dbcb3933a1ccp-1l, 0x1.188c1d110139caa8p+2l, 0x1.33e395aa40a24028p+3l
+-0x1.00537ee9511bcf4p+3l, 0x1.462a6d2f79e4b86cp+2l, -0x1.e9d81a482c7d975cp+2l
+0x1.77b3f6740e500ap-4l, 0x1.5a65d6c1803e0a6p+0l, 0x1.dc308be4f6584768p+1l
+-0x1.68164f43e055456p-1l, 0x1.81540d91db7830ep+2l, 0x1.15f53dfeaa6a9bep+0l
+-0x1.e930a21e15bac61ap+2l, 0x1.47b35e055226dc7p+1l, 0x1.7f566d9a383980e8p+2l
+0x1.a5b7f7e9d19f07dp+2l, -0x1.0ec02da79dba9e64p+2l, -0x1.1acf441d25ef5124p+2l
+-0x1.e8140a8265b2f18p+0l, -0x1.c133845b8222c76p+0l, -0x1.166309ad59329a4cp+3l
+-0x1.1d39f73be4a10fbp+1l, 0x1.a2c319f756d3b5p+2l, 0x1.3f0971df2cfb256p+3l
+0x1.084be3ad95bd9138p+3l, 0x1.14db3ffc1cfde5fp+3l, 0x1.643db9d88b2f5588p+1l
+-0x1.3a909df32847fe6p+3l, -0x1.21711afdbf80a74p+0l, 0x1.bde8ed1ea48a487p+2l
+0x1.c114c080a16a285p+2l, -0x1.41a9fa15a350750ep+2l, -0x1.8989b98e4b7af37p+2l
+0x1.fba651e8c688715p+1l, -0x1.797ddaefad20b504p+2l, -0x1.75008a92ab3e514p-1l
+0x1.385b08c1460f0aacp+3l, -0x1.8217c128f0422834p+1l, 0x1.3f1ca5b00e0dc144p+2l
+-0x1.64355cfa1283e95p+1l, -0x1.a16374e03637e104p+2l, 0x1.4e0ca7b363825a2p-1l
+0x1.4b6f8177ff9b672p+2l, 0x1.7db65c1626d40a18p+2l, 0x1.0846c46f35863b04p+3l
+0x1.4d2b69668437bb8p+1l, -0x1.096ad51e3291651p+2l, 0x1.69c924727d82faep+0l
+0x1.6a5ec1a96a232b3p+2l, 0x1.19d8d1be7898b4p+3l, 0x1.25c5a6d4243160ap+2l
+-0x1.0f746bae5b69c26p+3l, 0x1.69144f679e088718p+2l, -0x1.9173f3a50b828aap+1l
+-0x1.1c791daa835c6bbp+3l, 0x1.30dfcd8d93c4a11cp+2l, 0x1.4f300411072d9188p+2l
+0x1.1450c31f33d7297p+3l, 0x1.42eee8d197f108dcp+2l, 0x1.e3a96c696380e328p+2l
+0x1.d7e0803e5dabaebp+1l, -0x1.8ce1043bb23a5a98p+1l, 0x1.791ffb1b3734ca5p+1l
+-0x1.a5d0960a3db74a48p+2l, -0x1.0439e6bfbf45233p+0l, 0x1.6223d7222488b28p+2l
+0x1.01b3913c90c53968p+3l, -0x1.1fd2c08cd40aa282p+3l, -0x1.0f428d215619ea3cp+3l
+0x1.9014535d71d5309p+2l, -0x1.2d9750e6a4d61afp+0l, 0x1.3cf34cd8a95963d4p+3l
+-0x1.008900bc1b612d1p+3l, -0x1.a11a8e2d7969ac98p+1l, -0x1.144a4cc9e018e1ap+0l
+0x1.d7e536b1a2f0b78p-1l, -0x1.10f12ae9887052c8p+3l, -0x1.a51864de70254934p+2l
+-0x1.a5875a1f6aa09ff8p+2l, 0x1.6060180b1d7a97ap+0l, 0x1.47d729f36248ed0cp+2l
+-0x1.33e4eba049196f42p+3l, 0x1.64d99de3a3cdd7b4p+2l, -0x1.a21892aefa11d99p+1l
+0x1.b922b94dfd2166p+1l, -0x1.9b690948bfc99c8p-3l, -0x1.2fa780e093f914acp+1l
+0x1.b0f19ccf50672db8p+1l, -0x1.a0716d6fad06a188p+2l, 0x1.13e66c9ca763e03p+3l
+-0x1.a48848cc1ab0edaep+2l, -0x1.d2434abe647a338p-3l, -0x1.356c99fd8c7eed08p+3l
+-0x1.28e1756679d8aa44p+3l, -0x1.01b9c5996e59486p+2l, 0x1.90c0a5ada48918ap+0l
+0x1.59f25ef81f5d0d5p+0l, -0x1.ec5a3ad4f1da36ccp+2l, -0x1.4271d2eace670fap+0l
+0x1.31cd10f34ce1c8cp+1l, -0x1.336227e3139daa5cp+2l, -0x1.1ca42e361200026p+3l
+-0x1.50f8d4adf807e17ep+2l, -0x1.09d88d20ac253eecp+3l, -0x1.30baec5bc503139ap+3l
+-0x1.c0214958d63ab1p+2l, 0x1.3ca434570aa3358p+1l, 0x1.cc22d9dc89f0067p+2l
+-0x1.62ce487de1947f48p+2l, -0x1.4ac8683879d80b8p+2l, 0x1.d294bcd068c9274p+0l
+0x1.3c7ae70cdd64d748p+3l, -0x1.333a89f339f233eep+3l, -0x1.3d3ae479a9c9dd48p+3l
+0x1.c03e25ead21c0eap+2l, 0x1.fe1ae48bc207b43p+2l, 0x1.883a2e7c23d79d78p+2l
+0x1.1390d788c43a494p+3l, -0x1.263cd2b4774a86fp+0l, 0x1.da86e3d91de5ddap+2l
+0x1.d355995fad81f5dp+2l, -0x1.ff356252d46fc7p+0l, -0x1.3798ef192cd0ca38p+1l
+-0x1.e53c4b1ee455bb78p+2l, -0x1.de88996821a3c5ep+0l, 0x1.93440027c763e028p+2l
+-0x1.6fd3c1c8ce30cee8p+1l, 0x1.9537c6361b1dd55p+0l, -0x1.43df88fc86ecb5ap+1l
+-0x1.0b996ad851e6babp+0l, 0x1.70d2bee34515939p+1l, 0x1.8961d8250cd64888p+2l
+0x1.d4f57aaed5698458p+2l, 0x1.9aa17cd8770b81ep+1l, 0x1.e3df51b1e29bff8p+2l
+0x1.ed2b85476710232p+2l, -0x1.05f141be13709878p+1l, -0x1.11546cfec73edc96p+2l
+-0x1.6cdd49bab04a871ap+2l, -0x1.01387071cc641e6ap+3l, 0x1.3595b17cb57df26p+3l
+-0x1.dd730f78c88cb1a8p+1l, -0x1.a8f7ebe669d5af88p+2l, 0x1.d5be337905c8e63p+2l
+-0x1.ac11402b42e2a6dcp+1l, 0x1.28528806b0d3542p+0l, 0x1.de3612840e03c04p-2l
+-0x1.173728eabaa553ap+3l, 0x1.46ff703b2cfae728p+2l, -0x1.ff78641689c69166p+2l
+-0x1.83344f3aea96214p-1l, 0x1.1edf1d6e02bdc74cp+2l, -0x1.25654a3cffc639d6p+3l
+0x1.9864c3909d4bfffp+2l, -0x1.b1e73ecd3e2b40dcp+1l, 0x1.5dda98bb0a3ad03p+2l
+0x1.f32c92f4f78c521p+2l, 0x1.32a5f907fa801dbp+0l, 0x1.58ec0f158cef39a8p+2l
+-0x1.66d27efd6c39b24p-2l, 0x1.4bb07b70447f57dp+1l, -0x1.253b791853aecac2p+2l
+-0x1.2c625f43e54df6p+0l, -0x1.0e30076555b5c034p+2l, -0x1.266a5b48ce13a1p+2l
+0x1.977ecdeb602d31p-1l, -0x1.3883bbf1a35f4344p+2l, 0x1.f7edeb16e73fecp+0l
+-0x1.0935173f3f9d518ap+3l, 0x1.fd7557ffcdceb1e8p+2l, -0x1.f6ed8527ac7cb668p+1l
+-0x1.fbe4c8934af13dcp-1l, -0x1.9ce0a4f3cad64684p+2l, -0x1.73b19102315573d4p+2l
+0x1.14d502abbff061bp+3l, 0x1.141f3e9c8d6dc718p+3l, 0x1.564f5cfcec8b0dcp+2l
+-0x1.2c600e86ecc1b33p+3l, 0x1.7c9076f0978d36ecp+2l, -0x1.be51c94111c3eb8p-3l
+-0x1.23776c54e51d1fcp+0l, -0x1.29644ff552ef0542p+3l, 0x1.20f18c0842cb621p+2l
+0x1.094d48a57411f828p+3l, 0x1.84db3389018c04fp+0l, 0x1.75d45a8a871e2bdp+1l
+0x1.356cb9ce71de5a9p+3l, -0x1.1c23ca896ad531dp+2l, -0x1.2d274015b101e6bp+0l
+0x1.fd03964cb1c0d2dp+1l, -0x1.9e80a1ce808bb53ap+2l, 0x1.44c203bf11677e8p+1l
+0x1.74881f6ecbe95ecp+2l, 0x1.1675004f813aa81p+0l, 0x1.3911a43ee1215268p+1l
+-0x1.933937a4c87d217p+0l, 0x1.0906d1a48a40d674p+3l, -0x1.91dc884167f941cp+2l
+0x1.e353f1f1b82c25p-3l, -0x1.55df35e6bfbbf1ccp+1l, -0x1.b4acc2138b72a698p+1l
+0x1.1ad388b945149af8p+3l, 0x1.40eda0cf2747d774p+2l, 0x1.f4fc9582ac1a9fap+1l
+-0x1.e6b937f497fd2d4p+1l, 0x1.7d79ce5b22e975ecp+2l, -0x1.ca0076ec192b33ccp+2l
+-0x1.d26e931216746cbcp+2l, 0x1.c3b173a065e9d56p+2l, 0x1.194b4d19fb034f38p+1l
+0x1.91b6165df88bdcp+1l, -0x1.302654e76f7029ccp+1l, -0x1.8ab76a1bed63fb68p+2l
+0x1.185972e08e22286cp+3l, -0x1.7de15666a1d7f90cp+2l, 0x1.092c016b53f085e8p+2l
+0x1.02ea42fe716b725cp+3l, 0x1.367cd4027da64f8cp+3l, 0x1.8a39f5f893258ea8p+1l
+0x1.16e188f802cc4bc8p+3l, 0x1.d4258ebf2c506078p+2l, -0x1.214a4d2cdf618602p+3l
+-0x1.2684fe1378468678p+3l, 0x1.016db67f2aef1e3p+0l, -0x1.24274f45fe5acbd6p+2l
+0x1.3270b70e1d39fc2p+2l, -0x1.584119d1be6b0f64p+2l, 0x1.c91c8cd693067b8p+2l
+0x1.37364d6dcc55a22p+2l, 0x1.1a04c18d6fca7e3p+1l, 0x1.09fd58ad7595cbdp+3l
+-0x1.ac42e4dd39ec1508p+2l, -0x1.3bc0ce5414623838p+3l, 0x1.e11b2acd6b4d737p+2l
+0x1.c70a4eeeb7cb41b8p+2l, 0x1.d98851a57ec0aa7p+1l, -0x1.60a81742fd5e92b2p+2l
+-0x1.9df01ab78c00e446p+2l, -0x1.64c965e930dbd5p+2l, 0x1.100624958ff32cc4p+3l
+0x1.6b13a54d7707332p+1l, -0x1.032a8ae384830dacp+2l, 0x1.5bdbc00a668b3044p+2l
+-0x1.cffbbf4b7f78d98p-3l, 0x1.c8a74e54f1ac687p+1l, 0x1.67a93c0088466e58p+2l
+-0x1.2ead165139fe09d4p+3l, -0x1.27633afe04ce4cecp+3l, 0x1.0c80bc8626e2fe04p+3l
+0x1.6bc946245d8d1bep+2l, -0x1.c9a702d31f87b6ap+1l, 0x1.006172202855ff64p+3l
+-0x1.b0e1229c014d7eaep+2l, 0x1.34605e766d2c3dp-4l, -0x1.62a277831a72288p-1l
+-0x1.3d38ac743e0e0326p+3l, -0x1.068a3c3f487e77p+2l, 0x1.b79e8bf1b20c8f08p+2l
+-0x1.1f78b3dd248f96e2p+3l, -0x1.79e48a2fa95941a2p+2l, 0x1.472a7ac847712f2p+0l
+-0x1.2bde0ffc591e84a6p+2l, 0x1.18db0f6bbb6e738p-2l, 0x1.673af37d7e1c4048p+2l
+-0x1.9f28e59d0e6035a8p+1l, -0x1.2ff79602bc74c458p+3l, -0x1.b64c8024b74af248p+2l
+-0x1.3c1c6d5ae2a6be8p-3l, 0x1.1608ea006f1803ep+0l, 0x1.ddd50e16a8e2c0bp+1l
+0x1.e97f8f4a7417bcd8p+2l, -0x1.3e3124932b250744p+2l, -0x1.0f3d542f2aa3f4dap+2l
+0x1.0b6eb3b9d65eef74p+3l, 0x1.7b425fc73fd6c64p+0l, 0x1.b05ab83f1e031478p+1l
+0x1.6b7bfd5ad9abdadp+1l, -0x1.193d647bd0e1b78p-2l, -0x1.c36e528fe848714p+1l
+0x1.365e721de0d5b97p+3l, 0x1.99abc736ef97604p+2l, -0x1.0aebb95fa5f15bep-1l
+0x1.35720e910a463e5p+2l, 0x1.5d846bb69009347p+1l, 0x1.48986101f377b6f4p+2l
+0x1.67a8fe4696c4a378p+1l, 0x1.fc56dcda278f1c38p+1l, 0x1.df21db637826467p+0l
+0x1.3ca1cf76549b11b4p+3l, 0x1.67cf47643314a928p+2l, 0x1.ff6e84d0db33b738p+2l
+-0x1.05aef52772181d3cp+3l, -0x1.73bf471d232c538p-3l, 0x1.3d463e81ead33accp+3l
+-0x1.39835f4c29e32f58p+1l, 0x1.c695d192d546f8bp+1l, 0x1.7c861b5bf67f2dbp+1l
+0x1.297110de97aa0bc4p+2l, -0x1.9902a5af3cd5431p+1l, 0x1.2be8dabd09a80f98p+2l
+0x1.3a167f754c40bfcp+3l, -0x1.36d4837776d4d83cp+3l, 0x1.81f031566a941828p+2l
+0x1.9f7d46c4bbbc5738p+2l, 0x1.0137052117d8d4b4p+3l, 0x1.694bb475d00a9958p+2l
+-0x1.e98dacb99fbe668ep+2l, -0x1.ed76bd1c02688d68p+2l, 0x1.b0e217938f8607p+2l
+0x1.2adfb385b919a08p+3l, -0x1.20efd803cb9871acp+3l, -0x1.90e56a7010ed5d1p+0l
+-0x1.7be31a8a005330ep+1l, 0x1.1c8dce7c1bf47444p+3l, -0x1.4d36f534d79efcecp+1l
+-0x1.4b5bc2ec4dfe99p-2l, -0x1.ce315c261cff5d1cp+2l, -0x1.38e64d201d0b02cp+2l
+-0x1.0f9d11ef91358488p+1l, 0x1.a34b1a63b1f795cp-1l, 0x1.f79d6361cc28fa8p+0l
+0x1.3bd22c7f2e787378p+3l, -0x1.56b7e2d9baa52176p+2l, -0x1.34181b17f06ffa58p+3l
+0x1.74724d45de4a2c2cp+2l, -0x1.6d0582c8050b4618p+1l, -0x1.e7c52ef888d6ac9cp+2l
+-0x1.c46b73382e42873p+2l, -0x1.b8bb7004db63a3cp+2l, 0x1.ccda5ff24b4a574p-1l
+0x1.3a41485063cc120cp+3l, 0x1.d8d34640fb80a088p+2l, -0x1.21bb93ea66ab23f2p+3l
+-0x1.71341551e1ed8ac8p+1l, -0x1.07fc2a29916e6664p+3l, -0x1.25b0600ca2d8a88p+3l
+-0x1.57c4496d85570864p+2l, -0x1.335878f42825686p+0l, 0x1.03dd6a168844e5bp+3l
+0x1.d68d7f1179e3879p+2l, 0x1.024302d05629022cp+3l, 0x1.b68a191872f8685p+1l
+0x1.0aca58d9ef4d8f68p+2l, 0x1.1db9a27be52952bcp+2l, 0x1.1578d22b47fd9f4cp+3l
+-0x1.37eadd745a75cdccp+3l, -0x1.3024eb96e2dd566p+3l, 0x1.acb8a31c648503fp+2l
+0x1.405e93180559ed7p+2l, -0x1.99f9a97a1a7501p+1l, 0x1.fb917114aeddde3p+0l
+0x1.258b45e2718993acp+2l, -0x1.25516e731aacd9b4p+2l, -0x1.c6aae5de001fda88p+2l
+0x1.66cd58bf3972ab6p+1l, 0x1.b55e8d3e74a47bap+2l, -0x1.0a01419fab81633ap+3l
+0x1.f68a870908396a48p+2l, -0x1.fcba7a90458c5cap+0l, -0x1.e0a731ee4d3d62f8p+1l
+0x1.0074bcefcc8609e4p+3l, -0x1.f2f05d6006c8f74p+2l, -0x1.02b69b1143a2aedap+3l
+-0x1.1303579b366b5d8cp+2l, -0x1.5fe7f9b43b4f597p+0l, 0x1.8f20b70a712a939p+1l
+-0x1.b51e9762213c76f8p+2l, -0x1.1d4e8e6a9f14b5p-1l, 0x1.7886fe788cd1b1ep+1l
+0x1.f5cd66a2fa478348p+2l, -0x1.0f1b0b139cb93954p+2l, -0x1.24ba9d4d12d20ce4p+1l
+0x1.01f0c0de3246f08p+0l, 0x1.f417f5624546c16p+0l, 0x1.3ad305e105590258p+3l
+0x1.123ff2365bc0e8dp+3l, -0x1.a6d72c5e79a369ecp+2l, 0x1.1ee1905e33dcdad8p+3l
+0x1.6a0fd5ea119205d8p+1l, -0x1.4e83e457e953eeecp+1l, -0x1.2f400c0b3db23e88p+3l
+-0x1.e7018859971e17b2p+2l, -0x1.291a1f6810ae5a8p-2l, 0x1.caf575963b9aee2p+1l
+-0x1.2749b5f7f49d6344p+3l, -0x1.33c1ce446f96842p+2l, 0x1.0b93698bd24c86c4p+2l
+-0x1.5c052087cebd196p+0l, 0x1.820b7eb202d71b2p-1l, -0x1.fb63e3b3d18f7e8cp+2l
+0x1.002ec2458e346d5p+3l, -0x1.4ece61a27ddfdca8p+2l, -0x1.b8bc99b5afcbe6c4p+2l
+0x1.705c88acf459969p+0l, 0x1.473806793c21a8ep+0l, -0x1.0c61640f66d1a704p+3l
+-0x1.b78635d808a2ea04p+2l, 0x1.456941310c3ab5p-2l, -0x1.0675fe2f7060b84p+0l
+0x1.0e89607670a4e128p+3l, 0x1.bdaa45961296a758p+2l, 0x1.9ec1a130dcb6929p+1l
+0x1.1ce56b384becaa8p-1l, -0x1.a703ab7a6e0aa24p-1l, -0x1.40a6dded4f03d8p-5l
+0x1.b5ae9efb5c2b58fp+2l, 0x1.740aa12115f54e54p+2l, 0x1.34e7e0ab980d621p+3l
+0x1.75ad5702f67281acp+2l, -0x1.ca210c536c5834bap+2l, 0x1.3b7f55c5b8b0a498p+3l
+-0x1.05067455d8a3b57ap+2l, 0x1.87b17cae1992e0ap+2l, -0x1.0adcb6cd3552bf76p+3l
+0x1.85ea7006ab91501p+1l, 0x1.1a684cad8404cae8p+2l, 0x1.e7ebe1c0009d0b78p+1l
+0x1.3396b1d4b2cd236p+3l, 0x1.24246a9967c6a3dp+1l, 0x1.e079f0aa5f50ad88p+1l
+-0x1.69bcd24dccc58d02p+2l, 0x1.129f62a3fa0965ep+2l, -0x1.2666c569d6ce645p+1l
+-0x1.36165c11f25028fap+3l, -0x1.8f32481a27d8301ep+2l, 0x1.0097a06aca7e65f4p+3l
+-0x1.e591bfea28b7676p-1l, 0x1.aeaf1a9b3f1d8dap+2l, 0x1.702d69c8e1b327e8p+2l
+0x1.13341f5e1b3e2108p+3l, -0x1.4d5c5da9fefa767ep+2l, 0x1.604ac7115725c87p+2l
+-0x1.35f4e2dfc0cf2176p+3l, -0x1.12899a211023a2b8p+2l, 0x1.8c8191ab5fee954p+0l
+-0x1.3d059266ca412948p+2l, 0x1.81c198a4e65a748p+2l, -0x1.cde8b8ed8e5ec10cp+1l
+-0x1.52d644d97efe7198p+1l, 0x1.dc5d6f5ae604eacp-1l, -0x1.2355b748604bea5ep+3l
+-0x1.04c95482609c4e9p+2l, 0x1.2fbc60b330212d4p+1l, -0x1.02a1b5c929ecd85p+2l
+0x1.13172e3d5722879p+2l, -0x1.1dc2f659e6ded028p+2l, -0x1.6cf3f43b431e3334p+1l
+-0x1.74235a92018d26fcp+2l, -0x1.9ef6164c7d635e0ep+2l, 0x1.7de8d64e65e5bf1p+1l
diff --git a/benchtests/inet_ntop_ipv4-inputs b/benchtests/inet_ntop_ipv4-inputs
new file mode 100644
index 0000000..0ca5e20
--- /dev/null
+++ b/benchtests/inet_ntop_ipv4-inputs
@@ -0,0 +1,1003 @@
+## args: uint32_t
+## include-sources: inet_ntop_ipv4-source.c
+## name: workload-ipv4-random
+0xa5da31b5
+0xc0446e8b
+0x784b9c08
+0xb576afa1
+0x02d2ea9f
+0x4d82ba91
+0xd58a6a63
+0x931a078e
+0x8da553ca
+0xb995e341
+0xab1d3b82
+0x81b87ecf
+0xcd80ca63
+0x2896ed22
+0x8f207762
+0x9f944467
+0x3938ee1f
+0x248059e9
+0xf7333bf7
+0x711e3784
+0xe8becd9d
+0x3a2c5b73
+0x52cdb591
+0x6de2770a
+0x6d6019b1
+0x0cec9b4d
+0x0314b741
+0x3b8dbc18
+0x70becb0f
+0x1fbe2fa7
+0xbbf78a3c
+0x31ad5bbe
+0x5e4539a3
+0xf896555c
+0xe76bcfb5
+0xf8763851
+0xc309adee
+0x31abf300
+0xbba16c8e
+0x587ec525
+0x7507757e
+0xad7f20f3
+0x2e491154
+0xd1026261
+0x90d1bfe6
+0x21b62d60
+0x924edbc8
+0x06ded57e
+0x6e44ee05
+0x4d946fcc
+0x721b295c
+0x18bb6572
+0xdf64dc6f
+0x787912f1
+0x513254ae
+0x9a187f07
+0xbd19260d
+0x2d13f388
+0x72314a5e
+0xd49d1fe6
+0x58a21afd
+0x7265d9ad
+0x0db1242f
+0xda77990a
+0x225dd3f2
+0x7086fbc3
+0xcfa53a4c
+0xa95879e1
+0x1f22dcbf
+0xf2f95ae5
+0x32e55e15
+0x619cc022
+0xcbbc5903
+0x823cdaef
+0xbbc8e074
+0xd4b1abd1
+0xf4cc3b48
+0x54cadfc6
+0x7302fe22
+0x1866356d
+0x9af0f3d4
+0x150d45b7
+0x68d16537
+0x6f9ccab6
+0x30b5aa34
+0xb36e4558
+0xdf464fec
+0xfd553e8b
+0xe2d2b424
+0x401c0d14
+0xfeb219be
+0xe5503a5f
+0xf723b07c
+0x8f82f930
+0x91549eb0
+0xf15125b6
+0xfe746998
+0x5108da05
+0xc955eac0
+0x55132480
+0x6d476b2c
+0xec40f154
+0x91023884
+0xe1a9b815
+0x354daf94
+0x3dfed7ea
+0x2a4e8946
+0xcf9f3e6d
+0xa8041a9f
+0x4d116a0f
+0x31485a57
+0x2986e38a
+0x71c98c92
+0x95b1cf56
+0x02efa54a
+0x21d60c27
+0xe1ff084f
+0x9ea9d2a9
+0xa7a276fb
+0xdd540e04
+0xef5a28de
+0x959e2c45
+0x04e3297e
+0x7f353413
+0x98255f00
+0x8fef4195
+0xd1cf2a83
+0xe01c79fa
+0x8206c984
+0xa4d553b8
+0xb38cf863
+0xf9dc5da0
+0x740123a9
+0x469e28aa
+0xa94d5c0e
+0x099aefa6
+0x42f9ac05
+0xb5fa21a6
+0x605ba8b5
+0xd90eb999
+0xecaa6678
+0x876bd267
+0x584a9246
+0xe8bc8943
+0xba05331a
+0x5a1f8d08
+0x599a1d30
+0xc953fbc2
+0xa62b1bf5
+0x92f13ea2
+0x5260c6a6
+0x6f737ee7
+0x97ed7cf4
+0x1bafedd7
+0xf1c6ba92
+0xc738233a
+0x3c53e713
+0xc2c4f37e
+0x8922083b
+0xa699f915
+0x171a81f9
+0x9bd445c3
+0x582a213b
+0x7f9e6a68
+0xef4f3873
+0x61b6b3fb
+0xa1774a88
+0x5d142b71
+0xea8806dd
+0x37414744
+0x77d3e9a5
+0xdc2806a5
+0xec47420e
+0xaaf9388c
+0xe8ae4a58
+0xd68d3d03
+0x803cae48
+0xfff158dd
+0x0ab7b409
+0x3e1a797f
+0xcaa56e9c
+0xd3b4d996
+0xde20095e
+0x2e6820a4
+0x40e3b4ba
+0x038c5c95
+0x595bcab1
+0x25e23325
+0xb5debde0
+0xd95af591
+0x4750d367
+0xcaa82409
+0xbff0c5f8
+0x7ea63ac5
+0xacc6dce9
+0x08b1578e
+0x31544ded
+0xcbfaa140
+0xff149214
+0x29e4cdd9
+0x73277dba
+0x8150630e
+0xee66e89a
+0xff71f280
+0x2744a947
+0x9d71d581
+0x50d74a61
+0xb3f4cdb0
+0x2591b7c9
+0xa9f246ac
+0xaee36992
+0xa3777eca
+0xf642ae36
+0x9873836b
+0x0e9e0aa0
+0x1cb9a1ef
+0xeb6670fd
+0xe34ddf2b
+0x40cf1014
+0x8f8d532c
+0x2b1e2fec
+0x658f6ef4
+0x9117db64
+0xd8ffc94a
+0xbbce24da
+0x259029d5
+0xfff5bdc7
+0xfb7359e2
+0xf09be114
+0xda873a2b
+0x43ef9ca3
+0xafcfcce8
+0x4b14e050
+0xb7ef4c29
+0x2e8921fb
+0x1dc912d9
+0x946fd27e
+0xb6eb2bc3
+0x40ae2332
+0x373008ab
+0x8d1f0f0c
+0x1098cef6
+0x33dfa381
+0x6278717b
+0x8cfbfdc0
+0x6e4fafb5
+0x3e107d03
+0x8b82d5d4
+0xb3c70294
+0x4f5dfaf4
+0x13f862a1
+0xc03845f1
+0xe1645e9f
+0x620a157e
+0x27a318c5
+0xc6a1fd96
+0x01043a6c
+0xee82aebe
+0x77f9bcc7
+0xb0d67169
+0x5106f72a
+0xe1519086
+0x8e6d09c3
+0x2d35991b
+0xad33888a
+0xd281a2ce
+0x70094cdc
+0x09aee178
+0xb7a988d1
+0x7904d40a
+0xd505cebd
+0x5fc4744b
+0xd68e7e6e
+0x319c19db
+0x2c20f498
+0x5eefe1ac
+0x78107b15
+0x5d2c14a3
+0x8c352429
+0x98be10d6
+0x19fd3aa2
+0xdc151452
+0xd4f815ce
+0x40f9d4d8
+0x70922d99
+0xf3bc698a
+0x693e4c96
+0x5cd85948
+0x152565d9
+0x4673c6d2
+0xf26a8869
+0xeccdee1e
+0x2558149c
+0x32ed00cf
+0xccc8c08a
+0x6bb7e3ef
+0xd48bb23a
+0x11a7767a
+0x94e3fc39
+0x142ab220
+0x495ef56b
+0x5e0b1723
+0x7bf26602
+0xda933551
+0x3d9a9c93
+0x710a1aed
+0x0f3dbe35
+0x1fadfb03
+0xc42ce7ce
+0x34c4aac6
+0x422ea139
+0x9f37c92a
+0x28e80d7e
+0x7ac19552
+0x9b7c5bd2
+0x64ebdbf2
+0xdfcf3512
+0x1738765e
+0xd813cc0a
+0xf4d56f0e
+0x18f4dea7
+0xad277bf3
+0xa8fb80e7
+0xfbcd2419
+0x21f193f9
+0x2e9aef5d
+0x161cdc5b
+0x517e55ed
+0xb4cf6787
+0xc093cece
+0xa50fdca8
+0x0d8950d9
+0xd1d37d33
+0x822508b9
+0x60a3c4c6
+0x374d271b
+0xcea8f60e
+0xf4c0ccaa
+0x93affaab
+0x234a8e2e
+0xaf46d13e
+0xbdbd788f
+0x80c185d6
+0xade21b1f
+0xa9bb3117
+0x5f1e204f
+0x837b7278
+0xde83f661
+0x0e5a6d49
+0x06fdf305
+0xbad99c55
+0xf1c0b007
+0x6670d798
+0xaea379a9
+0xd2707d28
+0xf37ef4a8
+0x73e2534b
+0xe49f4fca
+0x91ad5854
+0x983540ce
+0x3179618f
+0xcb43e37d
+0x1a60cc04
+0x9cb2b42c
+0x5bc5d477
+0x298c8af2
+0x598fdb6e
+0xead6ed6e
+0x39264dc4
+0xbe2ded13
+0x9f75105a
+0xa854b5a8
+0x489686a8
+0x9f10a548
+0x4af5eb0b
+0x1c0d5f3d
+0x979eb255
+0x0a998273
+0x96d9cdfb
+0xb153737d
+0x8b8197b5
+0xb0af9d15
+0x53beec22
+0x47267074
+0xee08fee3
+0xa58581ba
+0x42c2d63d
+0x48a5105e
+0x4e1cb416
+0xb351b511
+0xf6da2304
+0x829f9f57
+0x06246258
+0xb78e2e76
+0xd7b3075e
+0x39af4dd5
+0x4de2271c
+0x2258853d
+0xfe857499
+0xed16ca3c
+0x51b77690
+0x91320d13
+0x8f7df385
+0x6563a1d8
+0xa9627f9f
+0xab8453ba
+0xf63b7678
+0xcbfc4991
+0x1ace8191
+0x4a341adf
+0x1e40a45d
+0x46d1807c
+0x92505c89
+0x6855a1ad
+0xa4fa9549
+0x1673a0a8
+0x6af29474
+0x760c8bc3
+0x48bc6521
+0xe871db92
+0x6fbcc444
+0x6dedbc0c
+0xde2d7351
+0x22b8fc16
+0x323bd522
+0xb935bcf5
+0x931e43c0
+0xdffa2198
+0xc1d19b85
+0xf60500b4
+0xd094c23d
+0xb7970257
+0x607f1b7d
+0x97e2eecb
+0x941fa489
+0xfae425c7
+0x64ffc9a3
+0x9482b9ba
+0xb489d435
+0x349452df
+0x5ffeec2d
+0x32b3584c
+0x3e548467
+0x530d9e32
+0x569353dd
+0xf4747702
+0xd856bd4e
+0x1bfc0426
+0x34e60c9b
+0xfe485d81
+0x7b184ad1
+0x1d307393
+0x4d21f87d
+0x492808a5
+0x9e857cbb
+0x6197f915
+0x80bb7d6a
+0x1aeb5dfb
+0xc7d4c551
+0x6c039c4f
+0x40f7c95e
+0x01322b6e
+0x35ee3d94
+0x399bfefc
+0x03b71c31
+0xa135ba00
+0x22e7b8bf
+0xd8e37293
+0x1ef10ddc
+0x5c4f977f
+0x32cbb232
+0x3746c6de
+0x7d37f74b
+0x2812718c
+0xa7c4873c
+0x8d8c7d79
+0x19007a1e
+0x4c785e68
+0xfb4849b3
+0x4c73c0c2
+0xe5ca4a89
+0x563af045
+0x08e67f32
+0x1af10bc6
+0xcb1697b0
+0xe4855c82
+0xbcf70a5c
+0x4bbec148
+0x7449d1c9
+0xe309b641
+0x72dab52e
+0xd73bcd11
+0xa50619ce
+0x9d13e90e
+0x15196926
+0x87f387a0
+0x0360b492
+0xbec6a221
+0x9d4f153f
+0x2ef40495
+0xa1fc8ec0
+0x3e7f36eb
+0xe5bdecc0
+0x2567db2e
+0x9e15fd71
+0xf9239150
+0xda4a4a28
+0xedb5b4b1
+0xb169302d
+0x81d1bc0a
+0xda01fc0f
+0xd9523ad0
+0x75c995cd
+0x4e7c5fd4
+0x1ccdacf4
+0x9e3409a6
+0xddb5f406
+0x39ae2258
+0x685eaef8
+0x27ec63ee
+0xc76f84fb
+0x0b1a116c
+0x7fcabb8a
+0xb6a1884b
+0x7c7a8a41
+0x8c741a5d
+0x6d61784e
+0x6fefe2d7
+0xdefa0e7f
+0xc8bf47d6
+0xd3972e7e
+0xf9f55896
+0x665b924a
+0x66f07987
+0x9a36fe39
+0xa52d6389
+0x985288c4
+0x776b1b14
+0x3b2b5df3
+0x8230278a
+0x4e20943b
+0xf194f3cd
+0x1923ba51
+0x0c161e54
+0x273c499c
+0x4893dfd1
+0x5d8d10c4
+0x912bccef
+0x37b3b8f2
+0xc9259773
+0xce403126
+0xaf67e43c
+0xb11526bb
+0x8e00961f
+0xd9309328
+0xf8fda5d4
+0x32cc9da3
+0x1ef0a26e
+0x1c2a4a6f
+0x40f252f5
+0x3c10be9f
+0xa4700a26
+0x6c2bf2db
+0xd6931843
+0x187457ca
+0x8c447237
+0x9b01fc11
+0x2e98780d
+0xa37b95e3
+0x22548e5f
+0x564ef6a8
+0x392dd4b2
+0xbbcad1ff
+0xa421f4ea
+0xba9af4b6
+0x471cdbcc
+0x4f1a388b
+0x2f9ace06
+0x03921467
+0x9cbfb693
+0x814ddaa6
+0x503644f8
+0x8695c3be
+0x61536ebb
+0x60c00244
+0x38f853d7
+0x57cb8520
+0xcfd2f868
+0xbaee2187
+0x9da049a8
+0x1f174bcd
+0x80e1d699
+0x14293276
+0xeb1a01b2
+0xaf04c079
+0xc2fd2db5
+0xdd55d0cc
+0x0c6cc6ef
+0xe13e3e22
+0xaad6f909
+0x69431d77
+0x614c55d5
+0xa8e99ef2
+0x5b69aae9
+0x1e793ce2
+0x33eac24f
+0x834aa80f
+0x243997d2
+0x85d08fd6
+0xe8bb04fb
+0x400b12f7
+0x4ac67a29
+0xc8c04fc3
+0xcbf8ef42
+0x3bbee941
+0xd46ed2fd
+0xdde37b5c
+0x0d853dee
+0xc94038f2
+0x8e573a21
+0x5e89e1db
+0xe273ddf1
+0xfadea3ca
+0xd2e51c7c
+0x2983594f
+0xe9db618a
+0xbb38a3c9
+0xe4abd34b
+0xfceacb94
+0x943aba94
+0x4f66eafd
+0xe6c0dce6
+0x7be21d78
+0x74337a51
+0xb68da494
+0x436c8bb8
+0x1d09c81a
+0xa62f5dda
+0x1aec137b
+0x2077e121
+0x352d8ed7
+0xa028eee9
+0x22813dfc
+0xcdf67fa5
+0xfda12a9d
+0x662d23dd
+0x9f56ece2
+0xa8bb39f8
+0xf3f4ca31
+0xda299ddb
+0xab321bc9
+0x79dce44b
+0x4bf75128
+0xb1fa5c10
+0xac19c3ca
+0xb2bd1cc7
+0x7bc86a3b
+0xe0c00cdf
+0xedbad3b3
+0x594f47ee
+0x075ab899
+0xd3960dd8
+0xc8b0d906
+0x03b349af
+0x1919a343
+0x104194ad
+0xb20aa561
+0xc45fa6e5
+0x3466ff76
+0x2a0a5f54
+0x76653805
+0x98bc7f9c
+0xe1139106
+0xa8389a71
+0x663cfff8
+0xd98cfad3
+0x8e17de21
+0x23f69152
+0x4b91dff2
+0x79ff012f
+0x5922c1c1
+0x116e15e1
+0xe36c89c2
+0x8dd2b853
+0x387b2f8c
+0xdbcbf47e
+0x6bf70fb9
+0x816db883
+0xa426dc13
+0x9a880e96
+0x67d5583d
+0xb3c12057
+0xdd0d22e3
+0x2fb43bbd
+0x340614c8
+0x1e044117
+0x35fc3d6a
+0x42fb3db4
+0xbd8ee31b
+0xd905e1ba
+0xe76fcf60
+0x261a3bf3
+0x08a5cdc0
+0x87dfba54
+0x374c0896
+0x9ef55ad4
+0x3a0614fe
+0x8d3372b2
+0x717f8d95
+0x1255bd89
+0xce2ecb9e
+0x877e33ab
+0x66dd165d
+0x0d6a31b2
+0x0846b0f3
+0x7a4f7992
+0xa946fdba
+0xfe7bd234
+0x787ec7f8
+0x593d2c82
+0xeef4a314
+0xa5acac01
+0x215492a2
+0x734e2de7
+0x05ddf8c5
+0x4a751f93
+0x2fc22c6e
+0x868492f4
+0x361f5df9
+0xe7882dae
+0xb5521966
+0xecfd094d
+0xade14805
+0xc6e74741
+0xe4334fac
+0xc79ddde0
+0x29e0bad2
+0xc26da1e5
+0x2ceac45e
+0x662dd065
+0xc7d732b6
+0xbedacf38
+0x7e178c0f
+0x250f56e5
+0x6d3cae24
+0x7be42fb5
+0x2f0181ba
+0xb07745f9
+0x36a363fc
+0xe104fa08
+0x6c92c379
+0xc1dab0eb
+0x012d850d
+0x8b30ded3
+0x1ceb4f74
+0xc6474a0d
+0x426b18a5
+0x8134b4b8
+0x9aba46a5
+0x0f615a99
+0xca2cb595
+0xde4ceaff
+0xb07c55b0
+0x6b461b61
+0x77d47aec
+0x713ccd15
+0x144f02a3
+0x98dbbec1
+0xd3cfa215
+0xe2be01d4
+0xa1e7612a
+0x4f63223d
+0x55a45013
+0x8d5f9526
+0x4f56252d
+0xe79994f6
+0xc1d2f899
+0x43fc9cb1
+0x6e593540
+0x1c480d66
+0x29a45a98
+0x1c778b80
+0x2fe5748b
+0xc42b1a8c
+0x84d82db6
+0xe234d779
+0x53cc2d3d
+0x2e0753ca
+0xea7c29ee
+0xd1baacdc
+0x0881e994
+0xa96f5873
+0x3a540ab0
+0x644c0daa
+0xfbed1c47
+0x0200b1bb
+0x19f3d066
+0x4d4a21d9
+0xc659473f
+0xb5afa485
+0xb1d92a44
+0x1ccffa38
+0xddadda5c
+0xb8478606
+0x7726d254
+0xb9f51015
+0xf1ccf5d0
+0xe9e4324d
+0x3330bacb
+0x75eb08d2
+0x9daaaca2
+0x877da369
+0xd41b8d85
+0x5aa83ea8
+0xfce6f734
+0xac2d5035
+0x847a0468
+0x3df04c98
+0xde4ed62a
+0x78a76589
+0x2b3215e7
+0x181f3a5e
+0x610f0e99
+0x6b95e44c
+0x990743d1
+0xb5ed2257
+0x3b516ec6
+0x71bc6e83
+0x447665fc
+0x0c1d0de5
+0x66b2a479
+0xea2502aa
+0xce222a1c
+0x6974ee5c
+0x74470d06
+0x1a208879
+0x107f95b1
+0xe5975ed3
+0x96928e1c
+0x7fe84e1b
+0xc85a6056
+0x4a005cfd
+0xd7d97bb7
+0x9a23c5b0
+0xd0b7f4a9
+0xfd61a22a
+0xf8107003
+0xec63357c
+0xe89fc352
+0xabdfaf5e
+0x7c161c96
+0x9ea703d6
+0x556ae863
+0x03695ff1
+0x5ba06bc4
+0x907dacbb
+0xba297579
+0x983c7e47
+0xf1d3ce7e
+0x9274a5ef
+0xf4dae517
+0xc2d11106
+0x08323755
+0x585c7faa
+0xa36d0de2
+0x35ec9280
+0x64709d92
+0x5100906a
+0x7671dda5
+0x73f81121
+0xf28246e2
+0x08466cdf
+0x537e6791
+0x13efc923
+0xe9d24e9d
+0xd22fc0a4
+0xd59be5c9
+0xa3e52d63
+0x7464d9f3
+0x866e5618
+0xe75e46b6
+0x2cd15f24
+0x07494a14
+0x5b34be38
+0x2da10a27
+0x7b827711
+0xc2b8bdb8
+0x9f8deb86
+0x37b7e667
+0xc54692dd
+0x44179846
+0xd326fad8
+0x71a9d932
+0x7b8f17fe
+0x13d9ce59
+0x4a054101
+0xf866d958
+0xcd730d08
+0xb82ea973
+0x99800ca3
+0x44090dc0
+0x07272d2c
+0xc577fad1
+0x81c656fb
+0x543ebd82
+0x63d9f998
+0x41cad4d1
+0x5ec695a6
+0x6d2e8c4a
+0x9d47a964
+0xe9e19be0
+0x87524147
+0x6d94b687
+0x28998c92
+0xd5222e46
+0xa06f762d
+0x19f1b572
+0x7cbd4b3b
+0x067f6470
+0xd2e4a695
+0x003c78df
+0x274a4992
+0x7ff14a7f
+0x4179cb9c
+0x395eab4d
+0xec0723cf
+0x48e9197b
+0x812fc24a
+0x8b7e1a3d
+0x7a65730d
+0xcf036e17
+0x18437977
+0x1b45a0ca
+0xdc52cc7b
+0x7eec75bf
+0xa19d3e46
+0x3ef0de98
+0x9004569b
+0x2e8bc8b2
+0xba0d6d10
+0x1645bff8
+0x842bba26
+0x4661f344
+0x0ee549d6
+0xd09b8818
+0xac8d33e8
+0x553e4f3e
+0x1d0f1368
+0x3135e79a
+0x415d934e
+0xa81d576a
+0xb3828841
+0x6afed044
+0x5b9d934c
+0xe13c6e07
+0xc9a2623c
+0x900b7d1f
+0x4dc8f0b7
+0x8af660e2
+0x942b98ec
+0xc1c35ac5
+0x8bc17e39
+0x9da5b510
+0xaf90fff9
+0x890cb584
+0x4edb77a1
+0x200de01e
+0x3b94fc5a
+0x977a6bdd
+0xed432809
+0x66d6f6b3
+0x3aee997f
+0xe0dedca6
+0x0eba9d2c
+0x2b77cd8b
+0xc0a0387e
+0x5a4288d0
+0x8e1a6748
+0x88152e2a
+0x8922cc17
+0x3fc651d8
+0x0d7ad8cf
+0x0f2ddbf6
+0xefe1d16f
+0xab9bcacc
+0x3f12fac8
+0xa7907925
+0xf2877b7c
+0xdf86ae85
+0x2b10f4ad
+0x1c66eccd
+0x0ffe0460
+0x54b1d473
+0x4e0b1b78
+0xebf6a094
+0x210dd5a3
+0x02b08cd8
+0x04450c50
+0x6aa55f9a
+0x1528b220
diff --git a/benchtests/inet_ntop_ipv4-source.c b/benchtests/inet_ntop_ipv4-source.c
new file mode 100644
index 0000000..c595c47
--- /dev/null
+++ b/benchtests/inet_ntop_ipv4-source.c
@@ -0,0 +1,10 @@
+#include <arpa/inet.h>
+#include <stdint.h>
+
+static void
+inet_ntop_ipv4 (uint32_t addr)
+{
+ struct in_addr saddr = { .s_addr = addr };
+ char dst[INET_ADDRSTRLEN];
+ inet_ntop (AF_INET, &saddr, dst, sizeof dst);
+}
diff --git a/benchtests/inet_ntop_ipv6-inputs b/benchtests/inet_ntop_ipv6-inputs
new file mode 100644
index 0000000..69bb4db
--- /dev/null
+++ b/benchtests/inet_ntop_ipv6-inputs
@@ -0,0 +1,1003 @@
+## args: uint32_t:uint32_t:uint32_t:uint32_t
+## include-sources: inet_ntop_ipv6-source.c
+## name: workload-ipv6-random
+0xbd9f474b, 0xfde382d2, 0x16cb0b00, 0x9b234d91
+0xd12b7592, 0xe1f00174, 0xc99ea9f7, 0x204055b4
+0x2c9c4b4e, 0x408d34aa, 0xc325a53f, 0x456d5bcc
+0xc3ee43a6, 0xa26fec15, 0xced19793, 0x24524e9f
+0xa8a1b792, 0x3bd30523, 0x14026fee, 0x483a3515
+0x6325647a, 0x2a97e521, 0x81998a58, 0x2a1b68a9
+0xfd782a5a, 0x9d63cc77, 0x1c88d0b0, 0x890c6b7a
+0x1a27c6a3, 0xdf20c28e, 0xd4b415e8, 0xc83097f2
+0x545c2260, 0x83162b50, 0xe1d7dc29, 0xe3defcee
+0x2697cb3e, 0x6210c389, 0x1d47df5b, 0x3ac1df60
+0xe2f0e379, 0x23763a2c, 0x147abbf8, 0x7e443204
+0xf9b0565c, 0xe5b8fed7, 0xd6aefdb4, 0x33ea6a05
+0xa529fdde, 0xcf1763ce, 0x296954f1, 0xcb07ade5
+0x9df1742d, 0x589fd1b8, 0xeee576aa, 0x2dec41a2
+0xc345dad9, 0x8745413c, 0x7684a5d6, 0x19ab74bf
+0x29d0331a, 0xbee93c3e, 0xd700c312, 0xfebee12d
+0xd7780afd, 0x336e4c2, 0xcf2c8adb, 0xc6159eee
+0x33ea087a, 0x36b335a0, 0x7b476c82, 0x4d4dce7c
+0x5eb59b20, 0xeb76a509, 0xc56b34ad, 0x39d3f8e3
+0x63f36e8f, 0xd9bd4f4d, 0x39e11967, 0x90518f86
+0x1d3bc49, 0x84774417, 0x98abf06e, 0x1889248f
+0x6013682, 0xbf4461db, 0xe46e22c5, 0xac7c9ab2
+0xe15186b9, 0x9f796e63, 0x8491e74c, 0x1b1f500c
+0x8e37425e, 0xb77127b, 0xeb5f7c67, 0xb9988376
+0xafaef488, 0xfd9158fe, 0x34860785, 0xef4ced11
+0xc579a321, 0x6f756b01, 0x91c9df81, 0x8b64ff30
+0xde13a52a, 0xa3d16cc9, 0x29fa138d, 0xfb732cf5
+0xdffa214a, 0xdd75a993, 0x24d2348d, 0x14a7746c
+0x6797d857, 0x23b0273a, 0xc4d67560, 0x570670af
+0x21bdbdcf, 0x963f5e5e, 0xab40422b, 0xdb2404c2
+0x8c903d31, 0x2a0fb212, 0x966b5ee0, 0xd5c807f5
+0xd82db637, 0xf08fd78e, 0xb1fa360f, 0x2ab14dc9
+0x8f78bcfb, 0x2eec02dd, 0xd5adba4c, 0xa7f2e551
+0x71ba0ce4, 0xf90d91ec, 0x377698a5, 0x378d8603
+0xef081070, 0x7e5671c8, 0x35976da1, 0x1e47b84
+0xdea1b54b, 0x5739f249, 0xe8454d07, 0xb8fbca7a
+0xd2a63fdd, 0x4766b033, 0xbe9735ce, 0xd0730cea
+0x4af1f5c1, 0x1ff01d15, 0xd47a2722, 0x5cfa2046
+0xff9f9f75, 0xe1615e29, 0x66cd0d88, 0x676489f4
+0xaff6f421, 0xb6c759c8, 0x98e6510f, 0x59d1589e
+0xf1e93cdf, 0xbf4a2c1, 0xabe705e9, 0x8c80551f
+0x8a2be9ed, 0xfd0ee28a, 0xb380684c, 0x88dd45d7
+0xe9e953ea, 0xa3079df8, 0x15d96297, 0x9f974c0c
+0xd8de9f0d, 0xc36905e8, 0xacd4463f, 0x5637f351
+0x1b829647, 0x8d2b0359, 0x3e5b4b90, 0x5405423c
+0x2d6ef86b, 0x1f609aeb, 0xf0f6bb65, 0xefd9c43b
+0x848dbfff, 0xe0f3531d, 0x2eefd0f6, 0xdbfe8663
+0x45dc79d3, 0x62dc551e, 0x811bcd3d, 0x3f8d9a6a
+0x174a7cfe, 0xbc7528c, 0xc413699c, 0x5e4e6e7f
+0x41c83bfe, 0x1bae5bc0, 0xbd36fcb3, 0xc710625f
+0x9e936eeb, 0x5402cac2, 0xb3060f49, 0x2189610c
+0x3e030d95, 0x5e5563c4, 0xd61e6929, 0x9962d7d8
+0xfa0ed0e1, 0x3e8dbfc6, 0x93f88980, 0x92936be8
+0x7d82dedd, 0x8921d7d5, 0xc530156a, 0xfe42f582
+0x606b6a95, 0x7f40d8cb, 0x3ffcecee, 0x4dc8071e
+0x93f3e7c, 0xa252c16e, 0xf42fd5fb, 0x7457353f
+0x54b57d5e, 0xdaf92c2b, 0xa8eafbab, 0xda96b806
+0x78f7954f, 0x5052ad7b, 0xeb6b2a76, 0xa5ece42a
+0xa6b5135b, 0xf5d06b09, 0x2287772e, 0x9aeae6cd
+0x7179ce31, 0x47ef279d, 0x729d7cf, 0xf400a519
+0x6b92425b, 0xedb7a264, 0x80d70fe2, 0xd2b68bae
+0x391543dd, 0x89421cff, 0xfea7a70f, 0xdd4791c3
+0x3653b93d, 0x7f28269f, 0x29826fbe, 0x23e4ce30
+0x82e39307, 0x8bc31256, 0x15f53c16, 0xa060fedc
+0xb552e1b2, 0xe99677ba, 0x48206f04, 0xecec5430
+0xb9881a63, 0x7b922a29, 0xaf22d00e, 0xbe610c
+0x5307d975, 0x4894a67e, 0x75400f1b, 0x87a95c1b
+0x1eeec7c0, 0xee7039e2, 0xfd23adaa, 0x82e64cb2
+0xf02e05ff, 0x69315980, 0xd2c5eb23, 0xcab646fd
+0x3269d17c, 0xcd057acc, 0xfdcc308a, 0x8d33519
+0xa58b5939, 0x2830186f, 0xd489bdd7, 0xd90080d8
+0x70f19399, 0xdf4be38, 0xb7d369e7, 0xeec0feb4
+0xe1f76dd6, 0xe8736682, 0xa4333fde, 0xd9237fe7
+0xbe0b673b, 0xd2efdd82, 0x899568ae, 0x33f54e39
+0x4dbf00b9, 0xcd098c95, 0xdeda9125, 0x564be620
+0x1f46fc8c, 0x8a227b39, 0xc951aad2, 0xa55d79ee
+0x8e3c6fcf, 0x71a48f78, 0xae687478, 0xbb19a553
+0xe6a00332, 0x3bae39d6, 0xc2272bd5, 0x927139fd
+0x59ac6756, 0x131b13ad, 0x39042c49, 0x861e867e
+0xad21777c, 0x2942f36b, 0x118aff9b, 0x1359a258
+0x44a835ac, 0x827cda6c, 0xc99b642c, 0x40836a8b
+0xf8252dda, 0xcac33381, 0x26ec307c, 0x97a9c486
+0xa86dbf91, 0x3cbc222f, 0x167e91f7, 0x4607a81c
+0xc31a9ac0, 0xb491d2ed, 0xd8452c37, 0xac26308
+0x34e5e9c8, 0x1f7dcf6, 0x26d0a40f, 0xf2455d40
+0x58ed7cdd, 0x8d09de09, 0x5791a5, 0xe7863f68
+0xd168ed25, 0x7d028913, 0xcbf4511a, 0x9e667bce
+0x537c00c1, 0x9d79eb05, 0xb0af9027, 0xbb055470
+0xed3e65d2, 0x4419d2fd, 0xb4935ebd, 0xe914a01d
+0xb6984616, 0x1ce5581d, 0x338850b4, 0x80ef6682
+0xd6605e62, 0x9603bf7e, 0xce7e6fc7, 0x7120a164
+0x33b9739e, 0x8c1ac2de, 0x84fd431c, 0xaad432a5
+0xc7ab0b0e, 0x7fd488d2, 0x81b8f65f, 0xb692f42c
+0xb81a4739, 0xf2dd9ad5, 0xf9fce237, 0xa0347b58
+0x97d70f40, 0x285daec1, 0x8cf631b, 0x61a906ab
+0x2a29c841, 0x97350602, 0x3e2705f4, 0xb1cc6dbf
+0x53d3a7ed, 0x29d8c53b, 0x6434402c, 0xe3ba36b4
+0xb034bee8, 0xb88e6e87, 0xcf1a41d3, 0xb657588d
+0xa50ba997, 0x2fe7ebc5, 0xbaf8ed10, 0xcab8b0f5
+0xacc211c7, 0xad6d796, 0xabb3b3c6, 0x1e5c437b
+0xc76b1163, 0x91a642d9, 0xd211dfb6, 0x4e932d48
+0x8f6f788e, 0x266b94e0, 0xf632e05c, 0x68cdae60
+0x59d3d501, 0xb28c9817, 0xaba3f022, 0x1e4bd55e
+0x24c2438a, 0x8aece7e6, 0xdec43ed7, 0x28354f13
+0xfb35a016, 0xac31c1e5, 0xd9a19e00, 0xbd7668f1
+0xdc170096, 0xe472d6a2, 0x4b672693, 0x331d711a
+0x35ec6ad4, 0xea4a89e2, 0x37fc7bab, 0xf68baa15
+0x5403f8f2, 0xb37b2f00, 0xf23c3c41, 0xabd3d234
+0x16588c62, 0x4693398, 0xd2a4e935, 0xe91b160d
+0x44daac94, 0x8a4fe8cd, 0x1041732e, 0x2d15e3e0
+0x379a33d6, 0x2cc3c03, 0x21207938, 0x172680a2
+0x9b186d0f, 0xc9925f50, 0x681b31d2, 0xb1ef2284
+0xe96a5bd3, 0x68188d73, 0x6f9318e8, 0x1d3f9ae3
+0xb7908d79, 0x19ca19e5, 0xc51cadfd, 0x9cdd65b2
+0x4ca8fe21, 0x67fd0155, 0x7b515e65, 0xd9bda1de
+0x37f1d602, 0x67fd176a, 0x78986154, 0xbc7dd56c
+0x78fe18c3, 0x5de1ce47, 0x661b953, 0x1779eaba
+0x95a167be, 0x8af3177a, 0xb5f736b5, 0xdda134bc
+0xdaac0b73, 0x36ad1710, 0xa2553bf1, 0x528a213c
+0xbf633d66, 0xb9191ea5, 0x6978e517, 0x9b7f9cc4
+0x22910f46, 0x290b00b0, 0x17dce907, 0xcfeffbf
+0x4ca4c531, 0xba1c5e27, 0x21b34182, 0xdfe22981
+0x9f4163b1, 0xd9079607, 0x19368fed, 0xfee01412
+0xe4b4335a, 0x90e57091, 0xd6621c03, 0x9f9167a
+0x4a268d0d, 0xa2578f95, 0x8a2726ed, 0x2371ed6e
+0xab7108c1, 0x7eda438d, 0x91c9e46f, 0x7bd4a534
+0x882a8c9, 0x5ee2ff0e, 0xfbdcb102, 0x626d1103
+0xae8f3624, 0xd0914fe1, 0xa5e054e3, 0x5fc4a6f5
+0xfcdd708e, 0x1898f392, 0xee49523, 0xb231c2ef
+0xd8f7c223, 0xc0da65f2, 0xa39780c9, 0x7561692d
+0x3566b893, 0xa6c69db4, 0x4fe06eaf, 0x8ac2d1ae
+0x55ec082d, 0xc20a63b4, 0x47014dc2, 0x804efc5f
+0x8f06317, 0x32fd3d78, 0xb5c59e6e, 0x6acd7921
+0x8a43ddb, 0x2b4098f2, 0x2f54c2b6, 0x47cfb71d
+0xdf0b31f0, 0x53e6cea0, 0x5edb55eb, 0xb7fece2
+0x14615f59, 0x27b6f7a7, 0x91165128, 0xd33ebcb1
+0x68a2c8d4, 0x29ba37e5, 0xdcb4b3b2, 0x80fcd42f
+0xf83e6f8d, 0x3816547c, 0x21d1e0e5, 0x7c28c98a
+0x583a48b0, 0x1b57ca21, 0x8dfa36c, 0x255b515c
+0xccf35afd, 0x6d844d83, 0x99110a94, 0x81fb6b1
+0x136af512, 0xaef76f2, 0xf4c2385e, 0xf179553e
+0x9d537bbe, 0x9fce7be0, 0x68b424a8, 0xd97f9acf
+0xce28efee, 0x104fac55, 0x9260b465, 0x89f37fee
+0x8cb280af, 0xb015ace8, 0xb82853c9, 0x54165987
+0x3b6c1810, 0x5474a531, 0xbd1a3ffd, 0x8178c7b7
+0xff6736c1, 0x165fb1e4, 0x5b74d02c, 0x94dcdaf1
+0xb4a2a131, 0xc3027508, 0x771d3091, 0xce50e274
+0x3a3ed3bd, 0x8a4cb423, 0x18a4d743, 0x5fa3147c
+0x1ab6a099, 0xaf14b761, 0x862d0c1, 0x8b81f350
+0x24a6f5ff, 0xcb53948, 0x8932f527, 0xe30c64a3
+0x7d002cf4, 0xf847abbe, 0xf00833e7, 0xb841ba1d
+0x9b4895a3, 0xc601250, 0x62d0eef5, 0x79462b3c
+0x25effcc6, 0x7868ffbe, 0x752eb87a, 0x7e2c7faa
+0x9749ceeb, 0x72b92ae6, 0xebdaa22, 0x693b5056
+0xf884ffde, 0x85f908a1, 0xe5d88a30, 0xd7c83ded
+0x5b6c0f4d, 0x78319ab, 0xaa2831cc, 0x150957ea
+0xe2628ea7, 0x9dbfc0d5, 0x21438d50, 0xbcc50e2d
+0x9b541ce1, 0x4448d3e8, 0x910f8834, 0x3fbe9987
+0xd80d397d, 0x926a9b78, 0x9a0c325b, 0xdea1b833
+0xb5725a2f, 0x56ba34b7, 0x870d4543, 0xc6c4d956
+0x78ea0b4c, 0x922e211a, 0x9f6bc0c0, 0x7a4ee798
+0xd1f14857, 0xed9d9ed9, 0xcf2d39f9, 0x2835a355
+0x3eb7a90d, 0x1df8e934, 0x44952424, 0x6e0f94b9
+0x73ab84b9, 0xc8874557, 0x19596bd7, 0x4b709955
+0xfac8a8af, 0xbefd1d16, 0x5a98a82a, 0x7c76d88
+0x434a2e96, 0x1bfd37e6, 0x4c7fa3bc, 0xeb182ac
+0x22cf129c, 0x2330cc48, 0xf8188529, 0xacc3f851
+0x930c37ef, 0xdb90065b, 0xa3b15671, 0x351e5c8d
+0x424e202b, 0xaed5a7f4, 0x4a504fb0, 0x8f969f84
+0xa482185a, 0xc4302500, 0x12ffa83f, 0x5f08425b
+0xb2c64f59, 0xfc29c24b, 0x92b5ca02, 0xa803823c
+0x18b8f646, 0xaa02f091, 0x2620d1f8, 0x9d805e86
+0xc018b81d, 0x4fbfa15c, 0xfc056a07, 0xa7b30d50
+0x76ac8cdb, 0x3e063aa3, 0xac239672, 0xd16764c0
+0x6d40c135, 0xc7302076, 0xa70201d6, 0x6991a045
+0x9eb61c4e, 0x8bf8dfd5, 0xcb636346, 0xdbaa0243
+0x29651df6, 0xfd9c3a0c, 0xa122089, 0xfd1df17
+0x33f3218b, 0xb4836cf6, 0x4a5e2ac8, 0x3c0f1f2d
+0x879fb8d9, 0xf8c38cea, 0x5e95b279, 0xffae9fa3
+0x5d4516c4, 0xff353935, 0xf19dd00c, 0x4d810e66
+0xbbd67859, 0xde9a326f, 0x671f5622, 0xf5ef5600
+0x85c00b1e, 0xb39589b8, 0x1bd1d5f2, 0xab363d4e
+0xee3fe8ea, 0x28d29a10, 0x17f51f68, 0x63ca9441
+0x859ce27f, 0x871bfcaf, 0xa5203c7b, 0x46175512
+0x32361523, 0x4c0e79f2, 0x29eda94, 0xa9840241
+0x8faeeabe, 0x8f3a9de9, 0xef643936, 0x9fa8f9be
+0x35cc55f6, 0xcc7c7a0e, 0x297bb3e1, 0xdb5d4e03
+0x4d8dceb9, 0x70148563, 0x9b04da64, 0x5ffcf932
+0xed373548, 0x49a4e038, 0xc12c8311, 0x5f4a8b75
+0x89af58f2, 0xaa455a7b, 0x8911fc26, 0xc05e76bc
+0xa9736f59, 0xcea9aee2, 0xf40afb52, 0x6e1bc405
+0xd62b5dd0, 0xfd335653, 0x2b2cd29d, 0x6f22cc7a
+0x22ddde88, 0xc38ff07b, 0x426fec57, 0xacff773d
+0xee681325, 0x1d9b52ae, 0x659a7f83, 0x60ba682c
+0xccaae62b, 0x42eb5ef6, 0x1fa3b03e, 0x8cd9b22f
+0x86b86b26, 0x11ee0672, 0x2d4e19e5, 0x8ab91734
+0x8ac4fc04, 0x7264e3c1, 0xaf855cc1, 0xab9c475c
+0xa36db77f, 0xd4b4ee5c, 0x403fb29f, 0x6e1e42ec
+0xda6e091d, 0x6cff1b43, 0xf99978b, 0x19a1c211
+0xb72886dc, 0x6d50fdac, 0x5afa580b, 0x11bae67e
+0xc4c3d05d, 0x1f4b0cdb, 0xb68672b4, 0x3ef0f9a6
+0xd22573b5, 0x152d20a, 0x68f48ec, 0xe23ecbf9
+0x373bb124, 0x5b379993, 0x33be8e67, 0xf4f0793e
+0xc75e1a8b, 0x17ea774, 0xa1967301, 0x9b088e66
+0x5220286, 0xfe0366a6, 0x7db08c47, 0x6af61d06
+0x5109ceb3, 0xc2a32347, 0x497daee2, 0x97240c78
+0xd762659, 0x569e6641, 0xfd0c5b5d, 0x1a0b4435
+0x92693f5d, 0x9ce42f0b, 0x4e789f53, 0x8c222a81
+0xee801ed3, 0xd94bcb2c, 0xb60b3b00, 0x7ebbc78d
+0x51ed4a51, 0x5df7a9df, 0x2fb0116, 0x441a97f1
+0x6e7d2a9a, 0xb86f925e, 0xae49a7f5, 0xb4cd5e15
+0x1a81f24b, 0x1d497c6c, 0x76218902, 0x21709933
+0x2dd09b35, 0xf25ede10, 0x541fdd77, 0x62ff37b9
+0x3bf21978, 0xd74f1185, 0xbc8ac99f, 0xde71ad53
+0x71a5c8ed, 0x15208271, 0xb826e59a, 0x6bd8c57f
+0x1ccbef2a, 0xf326371a, 0xe09fdff0, 0xb8dbad93
+0xc7dbbc2b, 0x6181becb, 0x565d6ff, 0xc34ee769
+0x1e6c149d, 0x30e30ef1, 0x1b39080c, 0xbdcf5405
+0xf116f011, 0x829eb8b3, 0x9b4829e7, 0x2a94ed53
+0x94e07aa1, 0x81aa2457, 0x6036cd55, 0x4c5e01fe
+0xa92cfb5b, 0xfdcdf83d, 0x6cd312b1, 0x90835d34
+0x94951caa, 0xaec2995f, 0x4c7e050, 0x4a46a70f
+0x415c9aea, 0x6d8f9225, 0x92c49240, 0x635c5e05
+0xb7da2084, 0xa4ceb6a4, 0x9ee53754, 0x9bac543d
+0xbcb61a3d, 0x0a209f, 0xc5d14e96, 0x5aae6429
+0x97f39972, 0xdf98317e, 0x326e422c, 0x9b1c4e19
+0x26e7f90d, 0x592bb6b9, 0x5403ea9c, 0xadbdc615
+0x72771b77, 0x4b987a80, 0xc1c56e86, 0xa224efbd
+0xb04ba885, 0x925a9646, 0x2d7d4ae7, 0x273cfc81
+0xb7f1d2da, 0xb223722, 0xe7688d04, 0xd1198c14
+0xd55a5f16, 0xb51512ff, 0xc68ef463, 0x79d319b6
+0x1b00a2ab, 0xbe6e3f07, 0xd594fe11, 0x3d2dd7c1
+0x28810f8a, 0x1da2d4ce, 0x4dbe7205, 0xc6431ff2
+0x3241aa6c, 0x381921ec, 0xc164cf03, 0x5dbfba8f
+0xac494cf8, 0x5ed43eee, 0x8d843cf3, 0x7c87f04c
+0xbc1b58c8, 0x851533d, 0x79534cdb, 0x9ff7c0e2
+0x2e5d6cd6, 0x888875ec, 0x1fad7a31, 0xbea0a42d
+0xcf6fdaca, 0x140207c6, 0xcf0af10f, 0x71a69c42
+0xf95618c1, 0x74d1494f, 0xcf2d688f, 0xface6c1c
+0x6e17f14c, 0xab9cb4e1, 0x5f0fc7ac, 0xf465c570
+0x943216e0, 0xde0e38ad, 0x729e69d1, 0x30b44c39
+0xfae0da2c, 0xa12956a1, 0xae7299d, 0xf1e2311b
+0x7d81571, 0x4778ae4b, 0x62c30846, 0x34a88f69
+0xf03972bb, 0x4218a376, 0xf6762118, 0x23a2213
+0x79443a0a, 0x68f11b15, 0x98cf449b, 0x1d5d508a
+0x27cd1d30, 0xf92063f0, 0xf71edb35, 0xe866dcb4
+0x7b9b9ef3, 0x61b0fc22, 0x2a728ee8, 0x3f2e7c3f
+0xd3b77800, 0xbf34704c, 0xab77fd56, 0x664dd5bb
+0x73a057a4, 0x1434a17, 0x12e1dfce, 0x4178e65
+0x111eda27, 0xb3abae02, 0xff7fea7e, 0x6d24abec
+0x48e8a019, 0x73f257c4, 0x73d3269f, 0x56e6311d
+0x3d10812f, 0x892f2de3, 0x2a16ca7a, 0x92e5d3fd
+0xd5bef4c9, 0x6f5e4db1, 0xcd35c033, 0xbd78c72
+0xd5151606, 0xac129527, 0xe6bc7fd1, 0xa96d60d5
+0xb565de7f, 0x6c0ab1c5, 0x78a9e7e5, 0xcbe00dc5
+0xc87c3032, 0xc43df43e, 0x8ea6fca6, 0x61aefa28
+0x96b80947, 0x74133fe1, 0x26404df6, 0xd764d917
+0xf098a512, 0x24194cfb, 0xdde22f8b, 0xd269ef5c
+0x3f967fa8, 0x5d9483cf, 0x70923734, 0x4f2b73b4
+0xf664a529, 0x229fd71c, 0x92bf87a2, 0x5d1532fd
+0xabe3b5ae, 0x75fb5f67, 0x7312feb6, 0x16cdd974
+0x8e62b5a8, 0x7054d0d2, 0x2ed032e8, 0xc91147eb
+0x7dbddc71, 0x6f095c1c, 0x98a48983, 0x6b1aed1
+0xa6d6ae3c, 0x20f4888d, 0xa2ff7321, 0x4ccde447
+0x92a0955b, 0xc62db688, 0xfa7591f1, 0x19a8c001
+0x559b18b7, 0x6fe12e2c, 0x18bdf657, 0x79398635
+0xea30633f, 0x207f6d0f, 0x5be67f32, 0x335c9d3f
+0x9ba6347f, 0xebfb5673, 0x63ddf16e, 0x6f134ae2
+0xbfefb776, 0xa4617d14, 0x9c7411a4, 0x291dcf08
+0x1954aed9, 0xe3c7925c, 0x41374a00, 0xa7cc2832
+0xdd54629f, 0xab81b50c, 0x7ab1cbd, 0xea8dab11
+0xe6f93c8d, 0xcbab4f09, 0x8f1fe8fe, 0xee01ede6
+0x85267e8c, 0x61e5330b, 0x12542982, 0xfdf1f303
+0x42095d4a, 0xeb3fca7, 0xa93cdc56, 0x400469eb
+0x444c470e, 0x89852958, 0x51e0c508, 0x295262df
+0xcc722bb9, 0xb541f8c8, 0x864aeae0, 0x414761f0
+0x4ad9af72, 0x87496bbb, 0xec3ca2ef, 0x5f4aa9ce
+0xd17c3608, 0x56e1c14a, 0xdf73a8fd, 0xd13d97b0
+0x83a853a6, 0xfac6f300, 0x25db14f4, 0xfb598c90
+0xf5d53667, 0x931bc23a, 0xcd3e2bd6, 0xe05a1ba6
+0xf6d2e4ea, 0xd477bec2, 0xf658d119, 0xf61bbcd8
+0x536f644, 0x4818a8aa, 0xc54e4e71, 0xfbaf1a18
+0x93b1aee6, 0xa1877c6c, 0xb183713b, 0xfbdcd409
+0x6ccf822b, 0xfe8dba32, 0x47e13049, 0xbf27c3bf
+0xd54e9fa6, 0x86e31082, 0xac5623d0, 0xee5295c5
+0xe9eea95, 0x4d8a5a85, 0x1b8174d4, 0xcb92e7a7
+0x7f04f54, 0xdb481c2e, 0x831271d0, 0xc5eb0011
+0x20c55390, 0x48cbac3a, 0xf44f45f7, 0x7438e130
+0x38ee02cd, 0x33037bfb, 0xb52f2088, 0x9ea5417a
+0x26fd4ec1, 0xee9abe8, 0xe17dfcca, 0x9b000fa5
+0xa6db8a79, 0x638473d5, 0xed3099bb, 0x57e43a3a
+0x246a9aad, 0x8b19abeb, 0x24686a81, 0x7d50e9ad
+0x9ef9fddb, 0x454c0453, 0xee2a77d4, 0x93df806
+0xb054473, 0x545b98c4, 0xfa2b2b06, 0x2795e22b
+0xffb13319, 0x3b996846, 0xa7d1055a, 0x6e95d991
+0x75ec8fb8, 0x1493fc08, 0x9d8b575f, 0x1222e6a5
+0x6e630ffa, 0x2030561d, 0xe9c32ea9, 0x7ce66f69
+0xa9b0fac2, 0xe67087a1, 0xaa024d95, 0xbc5069fb
+0xffed84b3, 0xb64d86c0, 0x7a6a0cf9, 0xbd412ad6
+0xc17356ff, 0x613ab3d0, 0x5e419312, 0x5f709785
+0xe94340a, 0x3d1f175f, 0x909de22, 0x7179f889
+0xb622ca58, 0x56f6dd64, 0xdde7bb8e, 0x7b226847
+0x8b9ef8f2, 0x9248d402, 0x334efa8e, 0x6ce56c7c
+0x258a8a74, 0x1a50b2d5, 0x18d54442, 0x93413627
+0x7cad27f8, 0x8c4d5cfd, 0x7f16827c, 0xa53429ea
+0xc70adff7, 0x9107390b, 0xd514595c, 0x6b3c653c
+0xd1d6e0c3, 0xc75e6b, 0x6235436e, 0xb170bb87
+0xf45dfbc2, 0x449b602d, 0x9edc60e5, 0x69e5f6c5
+0xd1a153c, 0x85a20a06, 0xce6c09c6, 0xcea3be9b
+0x170ad880, 0x4ff7a04c, 0x114bfe90, 0x45020f3c
+0x4e816cac, 0x9aaebdbf, 0x6841a418, 0x3b4f2a
+0x21111e66, 0xfa694e3f, 0x38d36514, 0xa2b85c5c
+0x5eb19889, 0x50309cca, 0x3b56ec51, 0xc1150cb6
+0x4d7b6c46, 0xa8388593, 0x61bbe7c, 0x9469413
+0x7069abdf, 0x7447eec7, 0x31e881f8, 0x47eb26ce
+0xa5ca1c5d, 0x86ab4db3, 0x3e1a024b, 0x884338d2
+0x9a2cbfb8, 0x8e69e2d3, 0xf74fd167, 0xf1c6e0bb
+0x87f709f2, 0x6c55a5b7, 0x9b66affb, 0xf0368424
+0xb8da8554, 0x1d1d1192, 0xa7670222, 0x4f9e2810
+0xfc979ec0, 0x2b3a53e4, 0x830b8a3b, 0xc8feae4
+0x4f35d720, 0x53a03130, 0x703fb44e, 0xe6868670
+0x31cf77bc, 0xed1591f1, 0xfad8785d, 0x29b07623
+0xefa3e4, 0x8ec2e79f, 0xc7f03877, 0xc5b72848
+0x16d2753b, 0x3c9609a9, 0x3bac122f, 0xb2350a47
+0x1e3c482b, 0xe7eeb7f0, 0xac621c4e, 0x4e6acf2a
+0x85787e54, 0xa1063df1, 0x21a5a3aa, 0x769ffcdf
+0x68f13e71, 0x79a16ffb, 0x1f50deb, 0xc6300472
+0xab2efc6f, 0x3112b462, 0x452ec58a, 0x8683445e
+0xf5b09516, 0xc64411ab, 0x1ef2bbcd, 0x575c5eaa
+0xd7264caa, 0xdc3c4d6c, 0xbf699ae0, 0x315cc36
+0x20c0462f, 0xcfe50122, 0x3dfe83c5, 0xc16af63f
+0x188cce06, 0x81bc3c50, 0xdb2f4c54, 0x63e0e74
+0xd9484cf6, 0xf045126c, 0x5ff590ed, 0xd868b5ec
+0x97a4815, 0xa45b4c50, 0x3843f6a, 0x89c37471
+0xef5402ca, 0xfcb3d2aa, 0xe84ad9c9, 0xf0b85fa1
+0x23f7af79, 0xcc77e06a, 0x4da81f, 0xbc9f2663
+0x43fea4a7, 0x689d2945, 0x83f41f79, 0x2671dc75
+0xd117cd3d, 0x67568810, 0x5060de47, 0x3717bf77
+0xf24f1264, 0x8e93d48c, 0x4d8c7d09, 0xa54386d6
+0x18a0c4d1, 0xfbd0d0bf, 0x9f2a6abf, 0x842fdd44
+0xa0a351c8, 0x524874fa, 0x5b7833f1, 0x6a3ea190
+0x8a8d654a, 0x2f1acefd, 0x8426203b, 0x844be522
+0xb12df02d, 0x27fbead5, 0x4a849bc1, 0xca70e659
+0xb5bec7e9, 0xbc1cdc48, 0x390e590e, 0x92c5d952
+0x83a206c1, 0xf2bd4966, 0x1c5ebcba, 0x491072f7
+0xb641da5e, 0x92420bab, 0x50e58c36, 0x92c5a00d
+0xfb00dd7f, 0xc7c4824c, 0xf3486fff, 0x6387ceca
+0x67d2a38f, 0x584e1806, 0x3c2ef2d8, 0xb1617930
+0x50c58c19, 0xae4b5226, 0x6bfd4287, 0xe3aafb10
+0xd8be2c82, 0x1c566179, 0xa5b0eba4, 0xa76fb0e0
+0x3fbd341b, 0x7fb87140, 0x16c542b3, 0x7ecf1602
+0xa5f66e99, 0xf08b3457, 0xee22d2b8, 0xe291c87d
+0x4c9fc1a7, 0xb359af7b, 0xd60578f8, 0x63597f2f
+0x704453f8, 0xeadf0e6f, 0x342b292f, 0x16e37e1c
+0x7415eb4f, 0xdc687630, 0xd73b7814, 0x338172ea
+0x15e9e155, 0x44a82953, 0x6d206bc6, 0xc0b3df79
+0xe29aa3b5, 0x7585d329, 0xb3eb0667, 0x979bfcd7
+0xcad4834b, 0xf5853466, 0xb193ec88, 0x7f6d1efe
+0xae1da438, 0x683f22f5, 0x7f9d9ea0, 0x59be8cd4
+0xee0ff046, 0xa1817fc6, 0x3c7a0509, 0xa4750f25
+0x2e158f9e, 0xfdea8911, 0xfc49b7b1, 0xe3a0244a
+0x10fdabe6, 0x56a75b0e, 0xa817a773, 0x82a74857
+0xa336a0bd, 0xb3cf7765, 0xe4c4ea59, 0xb18124f5
+0x1efb517d, 0x8f0a2f07, 0xbd5c2941, 0x1dde7a92
+0xccc1e104, 0xefb60237, 0x15a283b, 0xe6b68842
+0x5d1c1eb1, 0xaaa1f821, 0x7663ce10, 0x1d2523c9
+0x7dec96e1, 0x2183d818, 0xaa2398e, 0x2919d1d
+0x3c5d641c, 0xfa9ebf23, 0xe9fa442d, 0x29c16432
+0xe200edef, 0x32fd4aee, 0xe90c98b2, 0x61f9fd99
+0xd0c5ee15, 0xee86a73b, 0xa46ec94f, 0xcc37521e
+0xbd037a48, 0x42415b2a, 0x48b0abea, 0xb6b26a65
+0x89a555df, 0xe47212b5, 0x81904a8b, 0xaea08d29
+0x2923bdc4, 0xde18ce6, 0x1d201ad7, 0x5acc12ca
+0xa527ac6d, 0xe1a1633d, 0xcff60f0c, 0xdb5cb8bb
+0x152227a9, 0x9b4a1063, 0xbea64cb2, 0x29cc049
+0x64caf5f0, 0xabc03fa7, 0x5d8ee8e9, 0xdb35bba0
+0x85321f08, 0x94c14a4b, 0xc7cef4f7, 0x448bdd81
+0x7b97aec3, 0x95f405cc, 0xeb78ba40, 0x926e174a
+0xbaee835, 0xa21d612, 0x17a6bf8, 0xa0ccd1d5
+0x7a6ad0be, 0x7e3c527b, 0x7193dce3, 0x21052646
+0x253e1acd, 0x12b90a52, 0x681df045, 0xa5814c4a
+0x678165ee, 0xe3a22525, 0x28bddfd, 0x9868831
+0x1b5fdfde, 0xa72318c5, 0x6da08564, 0xff3ae0f6
+0xf3a9b583, 0x7b68a1f7, 0x221713e1, 0xc951f632
+0x3eabdae4, 0x61bc0072, 0x25644780, 0x73b1fa7
+0xccb2a42a, 0xaa13f91a, 0x82297617, 0x3a1952c5
+0x39c8874c, 0xc93940dd, 0x570c2a51, 0xd0a7c58a
+0x12671b0c, 0x119c652e, 0x9ebe2d0f, 0x123f771
+0x1133cd69, 0x492800e0, 0xf2d5bcff, 0x17d9485
+0x5c3bd606, 0xda319ab1, 0xc22d1d8d, 0xaa36abb3
+0x82f0f0de, 0xb138788c, 0x423d9ff, 0xea2f1cba
+0xdd9b1a34, 0x39859074, 0xd1a6c1a9, 0x57d17190
+0x1bcd5aaa, 0x28fd685e, 0x6853c29b, 0xb678dc47
+0x80f2f6f4, 0x6fe0545a, 0x22cd60c6, 0x6209d7b0
+0xd27a33a6, 0xb172cfe8, 0x261e4eeb, 0x7e41010a
+0xa1a1448a, 0x427d7a4b, 0x24ccb788, 0xd9974123
+0xf8376f5, 0x93b80ea0, 0xb68db9f, 0x43d63e5f
+0x7a310c18, 0xa080d19d, 0x978235c7, 0xb39fb5c4
+0xa3a1f759, 0x3bb2ba25, 0x2af86a26, 0x7499be13
+0x48740187, 0x331c8aa5, 0x12c0c47b, 0x5b40dabb
+0xbf743446, 0xadc9e56b, 0x18c9d036, 0x27b3602d
+0x680b2d17, 0x5e8a36bf, 0x1d2dc8a7, 0xb5aeeaa6
+0xb3e36064, 0xa7ee3b87, 0xd6682095, 0x67f7903d
+0x44fb184a, 0xaab407cc, 0x55932d5b, 0xd8862db5
+0xafbb6451, 0x1a294b62, 0x635f0746, 0xf86f044a
+0x549940af, 0x194d29f2, 0x483180e4, 0xe6ba52d2
+0x41391fbe, 0x721caef3, 0x83a58280, 0xaf476fd0
+0xa9583df, 0xcb130879, 0x6a136cde, 0x547f8ee1
+0x3662e217, 0x3acd43bc, 0xe7b90fb4, 0xbdd2c9dc
+0xaca2df54, 0x3b0e7d05, 0x1a1b30f1, 0x391824f5
+0x7186b953, 0x52bb48e5, 0x739bc0d5, 0xc032ee10
+0xb3cd3648, 0xe38b7b7f, 0x6a21f02a, 0xb4081250
+0x6c00ab4b, 0xace9cc7, 0xc4dd4ccc, 0xc56e7e9b
+0x8bc33d9, 0x16f43f99, 0x7d738f47, 0xbd094293
+0xf18882f9, 0x98cb621f, 0x8f258f53, 0xe9a600c7
+0x22314622, 0x22ecec73, 0x3197bd4b, 0x82197168
+0x5af8c454, 0x150762ef, 0x3348d549, 0x451f070d
+0x9d93e6ac, 0x9b2ee7c6, 0xee59d423, 0xde563c43
+0x76d15035, 0x1b1fb4e4, 0x61c8da72, 0xae4a752f
+0xe2a90f64, 0xfcc3f15e, 0x4c4d6875, 0xe1e76a83
+0x71fb66b3, 0x33458471, 0x72fdefe6, 0x6535cc98
+0x787bc82e, 0x1938ca1f, 0xd2547587, 0x35edb1dd
+0x699deb2f, 0x6a6aad37, 0xae933fd0, 0x5f5d67cf
+0xec564cf, 0x865aaa3c, 0xc1c94cd8, 0xe6219f85
+0x1528fa81, 0xd37388da, 0xbdb10700, 0xdd2e422b
+0xcc95a962, 0x961c1b10, 0x63a078e6, 0x440f9142
+0x35d2abb, 0x88643926, 0xf2b22caf, 0xf82b855b
+0x7ef9677c, 0x3c913f3e, 0x19cbb308, 0xdb1aea9b
+0xe0cedaa3, 0x8c72eff1, 0x66a0b19f, 0x660d78eb
+0xb0523ccf, 0x2d059cdb, 0x1bac46e7, 0x8504aa2b
+0x80759294, 0x33add1eb, 0x1307be28, 0x32b02b5f
+0x30eeb446, 0xd2756ebf, 0x6110fd73, 0x1a2290e1
+0x9af17bd6, 0x518adf18, 0xaa37fdee, 0x34d90799
+0xe5fd80fd, 0xa3529f49, 0xda58760a, 0xf52db54
+0x1c010d29, 0x62f8a328, 0x413c3e74, 0x70a2a15
+0xbab6e100, 0x4edca554, 0x7e5d9ba9, 0xa9f4dd76
+0x7fc0c22b, 0x94ec923b, 0xf3ed87d3, 0xe792e4eb
+0xeca64183, 0x6460844b, 0x4fbaf87d, 0x50ac78e9
+0xdb7f751d, 0x26840e93, 0xddb0208a, 0xde9e6622
+0xe9618ddd, 0x5ceb80e7, 0x4ec9f278, 0x9f81e6b3
+0xb9429029, 0x7c9f1161, 0xd3514693, 0xb98d167d
+0xd41d8560, 0x32b1f66f, 0x628dc9e2, 0x63f755e6
+0x7f1f316e, 0x333537da, 0xef3487fb, 0x5d987bc8
+0xb1fe81e8, 0x811f4fee, 0xc5b5463, 0x3a78ffb9
+0x946610c, 0x5c09df, 0x490542d1, 0x528ff6f0
+0xdf32e5cf, 0x29e1b871, 0x2feef2d3, 0x120890e4
+0x697b1bb0, 0x24f06881, 0xa1aeee74, 0x4e9f1297
+0x948fdc37, 0xd5f44dce, 0xf904aa05, 0x635334bd
+0x50bc15f3, 0x40f3031a, 0x4265b999, 0xe5bc3fa6
+0xd1993127, 0xda60d098, 0xc4f94480, 0x9c9abf9d
+0xc49b309d, 0x45c1139b, 0x47e2237, 0x5b539d04
+0x3d1f8c2c, 0xcbc1358b, 0x566e861e, 0xf0cf1729
+0xc76b5046, 0xe316cd1b, 0x9ce7a91e, 0x208de9a8
+0x8028ad53, 0x9e7b7d58, 0xb810ef50, 0xf0e5a309
+0xb147a1cc, 0xf06f1dcd, 0xcd4e4933, 0x277fb8b6
+0x77f89978, 0x41809239, 0x8015f75c, 0xb75f6c5a
+0x148ade05, 0x73e9ff48, 0xc93eccc6, 0xb87ee725
+0xdd24897c, 0xbafd2300, 0x55d34632, 0xfb6b4185
+0x8da25e3d, 0x422f9109, 0xe4dd3418, 0xc5cb79e5
+0xb8fe5623, 0x134f8d27, 0x9ea5ef9b, 0x96547101
+0x61662606, 0x2309e728, 0x5975045a, 0xd3912101
+0xc3f77679, 0xd2db396b, 0x171889e7, 0xebb728bf
+0x54f08130, 0x2fc6b961, 0xadd98a6e, 0x989d0ab4
+0x570eaabb, 0x5b0816cb, 0x3c25451f, 0x41dc86b0
+0x519eb7a4, 0xe0adb356, 0xd6d80411, 0x3e8a0b45
+0x8c2d2ed5, 0xc0411ee2, 0xef431a0f, 0x8b66fd6a
+0x2e61a59d, 0xf411d477, 0x32011de8, 0xa1460ef2
+0x8f211bd8, 0xc06811b9, 0x6b951749, 0x3ba6ba80
+0x12c032ce, 0xaa0b9062, 0xb87346be, 0x642b52cd
+0xdc426ea3, 0x730ec245, 0x64bad806, 0xee165598
+0x1912b00b, 0x3c4a6c01, 0x5ce6793b, 0x18bccbe3
+0x4718c7a7, 0x10142a70, 0xd8e2643e, 0x8f594d21
+0x8af05690, 0xae2094b5, 0x1fafdda9, 0x3e4fbdf7
+0x55e8504c, 0xc11d68e, 0xb4b64f33, 0x301cc0fe
+0x8a8d7d84, 0x9c0c018b, 0xf7e9a35e, 0x3f13cbf7
+0xc6c732ce, 0xcc5ced62, 0x744133c7, 0x4b22de30
+0x58b86be5, 0xf2e0a3be, 0x98b5aa36, 0x58e780d3
+0x99d0568e, 0xe87e27ba, 0x63a6c2db, 0xe656bec3
+0x1db080ea, 0x15c60066, 0x77ad449f, 0x43920d62
+0x1e0f4721, 0x6f7e30c9, 0xeca03d9c, 0xe1f011d0
+0xd8c80f14, 0x99a2c1a0, 0xae0d1a9f, 0xf7c6ad3f
+0x4ad31d23, 0x63be60eb, 0xd4d5ece9, 0xa9f4135c
+0xc2b0f232, 0xfbb268e0, 0x6af528ca, 0xebd48782
+0x23919301, 0x9dbd4d4c, 0x6010b963, 0xbed8ca80
+0x7960e796, 0x3f9b0dad, 0x612449a3, 0xbf978904
+0xf02ef517, 0xfee7d4da, 0x914e6acb, 0x5ce2d065
+0x340cc27d, 0xfc12c09c, 0x2d18da5e, 0x5810e9df
+0x7624e356, 0x4ff0c4d3, 0x70deb5b0, 0x7df6661b
+0x41df3562, 0xc7518622, 0xd8439c02, 0xaa19b740
+0x1be1fbe8, 0x6e0846ad, 0x76b09c43, 0x559f00e3
+0x30c82cec, 0xa53e99b7, 0xdc779f9a, 0x2463b1f3
+0x6b263524, 0xde39ccb3, 0x8d510868, 0xf7726914
+0x1dda70a4, 0x2b0b2577, 0x3d439fa6, 0x1a6aaeb4
+0xf659467d, 0xeb250447, 0x5d52eacb, 0x9766d5c8
+0xda991861, 0x2b111c3, 0x55411a98, 0xde330972
+0xa591bcfa, 0xa9aa6676, 0xd629d3a, 0x18927551
+0x4a487832, 0xde2cad16, 0x569f846, 0x903461c0
+0x6669ccc8, 0x7486237f, 0x78302af, 0x28679884
+0x4ca470bf, 0x177a1d66, 0x2249ebe2, 0x6b0360aa
+0x23c5eec8, 0xf1ad0ff2, 0x20a0c2b7, 0xc12073c2
+0xd879b313, 0x29f7499e, 0x528cd91d, 0xa527c073
+0x4f3cb413, 0x89b6a38, 0x9bf02bf1, 0x8be7cce5
+0xda994578, 0x314bb5ac, 0x9bc8095, 0xb6f398e6
+0x26d79f0b, 0x23f03183, 0x5a827a7, 0xa9cf1773
+0x85e15d58, 0x1ec2403, 0x83d5c4a8, 0x95d7f5f6
+0x32dee0ee, 0xe72a14e7, 0x39627d85, 0xba78cb25
+0x6ddfe3a0, 0x145446e3, 0xc55b6175, 0x6dc9403b
+0x761ba617, 0xf046f2e8, 0xab074d3d, 0x204f9771
+0x9fb58da, 0x44625861, 0x4cc002df, 0x7b1e36
+0x54c54e83, 0xf4fcdd03, 0x6cc8fb22, 0x685a7cea
+0x6f80fc7a, 0x3f631ce1, 0x49e0e784, 0xb6da7bfc
+0x922d2521, 0x8e209566, 0xf0810fa3, 0x2543a49f
+0x1ce7a70d, 0x15474206, 0xc934f318, 0x17bdfbb7
+0xa9782caf, 0x64e9eb8c, 0xb2d90c5e, 0x87f2c09f
+0x5b1cbb85, 0xfbf30990, 0xfce5d4b2, 0xeea12716
+0x8819b49e, 0x55a0edc5, 0xb56a2f98, 0x53175f5d
+0x7e4af593, 0xe5c33dd3, 0xb2f65ef8, 0x88169ff6
+0xb03eb83f, 0x5f0e4bb6, 0x172d99d1, 0x2455c2e0
+0x8344300e, 0xf7dd552b, 0xdec771a0, 0x79e2e49c
+0x897f52a4, 0x5ca565f3, 0x24c14211, 0xdc48d5a
+0x59257e2d, 0x96849788, 0x864eb663, 0x856ffbe3
+0x32e56ec0, 0xde698ff9, 0x53bf7701, 0x6912e29e
+0x4f34c903, 0xf94e9ed6, 0x42bf98c9, 0xe19a966f
+0x80503dec, 0xbfade023, 0x70f49d3f, 0xb9dfd059
+0x901292cf, 0x4c175391, 0xc194fa76, 0xba99fcca
+0xc9ed30a, 0x5166cc98, 0x76b4b1d, 0xf55b8e61
+0x58dfd4a5, 0xf7b1d1a7, 0x1cff1a86, 0xcc3a8653
+0xe0d906b1, 0x60ca8fce, 0x17e49b35, 0x528fad4d
+0xce2c6af8, 0x1882ca60, 0xbc2b7f81, 0x7bcae14c
+0x27f76e2a, 0xfefae7c4, 0xcacadee0, 0xcdd97f70
+0x37871a3a, 0x6bb6f8f7, 0x838460a6, 0x15b5c9e2
+0x71b9458d, 0xb0e4add8, 0xb9b255a9, 0xbd4af746
+0x9ce5e778, 0xce88ebbe, 0xd222c3a8, 0xa89a867e
+0xba154bf, 0xa854c3c1, 0xcceb3d31, 0x59c02665
+0x56b5138c, 0xe46f6a33, 0xbeec78d7, 0x213ee1db
+0xc4ff6fd2, 0x4bbdaa18, 0x1b4bad97, 0x47ffed55
+0xf815af6d, 0x304b3a4e, 0x860d1a1, 0x8fc47019
+0x284f6734, 0xd1a79e1a, 0xc7342562, 0x98497008
+0x25215dc3, 0x5eb1553f, 0x9840e9e4, 0x135e7abd
+0xc6aa8439, 0x2de238f4, 0x7f9a8c6b, 0x413d308d
+0x6a7c59f2, 0xe994a82e, 0x73d74eb7, 0xfdd8ccbb
+0x31c8573f, 0xe70dc627, 0xffd107f4, 0x1ea5c7aa
+0x900772eb, 0x80b615fc, 0x9d615014, 0x19900390
+0x3c4b6527, 0x76f5e1f5, 0x9db29a22, 0x91e714a
+0x82830313, 0x6f43b7bb, 0xb71caa4c, 0x9c72a28d
+0x227e4437, 0xad89833a, 0x5be78620, 0x287e52f7
+0x446b839d, 0xc1e99567, 0x158b7af7, 0x815c17e9
+0xf9cb64c0, 0x2db37c42, 0x7705db51, 0x9759451e
+0x8f4f519e, 0xefa3fd53, 0xe1c5955c, 0x46233d3e
+0x910691ec, 0x94bde9ea, 0xa28ffedd, 0x927fc5a1
+0x8f110190, 0x32cc8b9a, 0x52af9a3e, 0x92ba27c
+0xcd377701, 0x8a697ecf, 0x4529c597, 0x244a960f
+0x5caa8ad8, 0xdf626111, 0x4c1c8aee, 0x99f235df
+0xdaec48f1, 0x74ee10bd, 0xef09da5e, 0xee38980d
+0xfad74acf, 0x8bd335f7, 0x689faac, 0x8ea0ce1
+0x479c52ee, 0x4cee55a7, 0xb25edd41, 0xdd199872
+0x9df002e0, 0x966ad04e, 0xdd47116, 0xbc7e8191
+0x51b8f70a, 0x31195f0e, 0x1169dfc6, 0xbafddf64
+0x397ea736, 0x459d772d, 0x2a118531, 0xc7639bbc
+0x420bc78c, 0x29a2394d, 0xaa07f711, 0xa96a83b2
+0x46cef638, 0x92a9c9ef, 0xb9f16f5d, 0x4a958401
+0xa160d3b0, 0x4042d070, 0xee8256d4, 0xe97c2dfe
+0x9f014ed7, 0x1f4fe7, 0x6c5b7ced, 0x80f944d4
+0x55ed13da, 0x2586f6ef, 0x90be1a50, 0x51f999e8
+0xb4fcf1c8, 0xdb97deb4, 0x212ecc7d, 0x8c1f1e9d
+0x4293c4f7, 0xfb875cbc, 0xfd0eedbb, 0x41ea55d1
+0x5637f81, 0x84eb03f3, 0x626bc121, 0xb3004ac7
+0xef13cc73, 0xb3ba04c3, 0xf107f46b, 0x59c2aa76
+0x93e8c02e, 0x6399c958, 0xc3c11f96, 0x575b05d0
+0x463e42ca, 0x22712504, 0x5690dc1d, 0xb565a56c
+0xe90543a1, 0xea1de8a2, 0xeedaee02, 0xcc67108c
+0xbc855a29, 0x88c758ad, 0x7a530614, 0x7a25d9e4
+0xf5df464, 0x5e983d69, 0x7d50cf69, 0x6794b649
+0xa462f934, 0x7ac5d66e, 0xf35d2406, 0xfe6c4d2b
+0xa7e65114, 0xdb6e1e88, 0x27c7e01a, 0xbdfe008e
+0x34796ba, 0x5ebab58c, 0xd7f55ae4, 0xa139f493
+0x398a45a1, 0xff93f929, 0x52432511, 0x9f3b7dfb
+0x433ef08e, 0xb2a70a19, 0x6f55e3f7, 0x321bc65b
+0x3e4a702e, 0x4e7be74a, 0x72378d12, 0x5694f41d
+0x60264090, 0x2a6cb53, 0xa12ca14d, 0xd409d296
+0xc9f72236, 0x12b8ddd3, 0xa4d8b5a8, 0x38234420
+0x27e986ac, 0xad15d0d1, 0xadb9dc2b, 0x583b4a15
+0x189c6bf0, 0x867d96d0, 0x2af01063, 0x4c56882f
+0xe0b548eb, 0xdb617815, 0xbf18c1f5, 0x4d3a7881
+0xb860c6d2, 0x69cbfd65, 0xd591643e, 0xe57ea9c8
+0x4cbb776, 0xe7e44874, 0xacb51cef, 0xd3525f4e
+0x2d81a8d3, 0x6854e63a, 0xe4e53a06, 0x80d083d8
+0x82d6673e, 0x35fe872a, 0x6b837052, 0x1093abf2
+0xdc485a87, 0xebd60708, 0x674d4d50, 0x78d6b77c
+0x483b01d5, 0xaa23d8e6, 0x422625d8, 0x43b3ebef
+0x4ce017ee, 0x632b2d1c, 0x153da038, 0x92ead944
+0x3ed6ca65, 0xed3876f4, 0x9ba4d438, 0x83494412
+0x427c66a1, 0xdd9709b4, 0x46d5e258, 0x47a49554
+0x192d918, 0xfcfc08c6, 0x61f04d75, 0x7a18a2c0
+0xa7a1cc82, 0x6f02a855, 0x12bf3b37, 0xc50f2a03
+0x21de0103, 0x48645d88, 0x586d2951, 0x762a1e2c
+0x27f97998, 0x10731f72, 0x2c2b670e, 0x7d9468b2
+0x890988e1, 0x412e0fa0, 0x9172c095, 0x69720b4c
+0x96c8221d, 0xbcbb91fc, 0x780ac1d6, 0x20374dec
+0x171c1acb, 0x33c1ad46, 0x2ecd1f14, 0x5e6d3940
+0xa37e753a, 0x683e5ef, 0x8b2a4167, 0x565be62
+0x24835c0f, 0xcb5981c9, 0x1f1fd1e5, 0x3f3aba11
+0xf8533e9b, 0x65421a0f, 0x2cbd9f5f, 0xca04ccc5
+0xf56da8df, 0x26202d3f, 0xd8f87abd, 0xd737cfd8
+0xc3945291, 0xaa157895, 0x7fa76c05, 0xf3046925
+0x70347cff, 0xbadc54c5, 0x6637a0ef, 0x40a76999
+0x47aa91d3, 0xa6a7730a, 0x2ad78f2a, 0x83f96e96
+0x6a7862ca, 0x22865bff, 0x8c8a5219, 0x1327954b
+0x21b08e1f, 0x6736f68a, 0x1e54288d, 0xb488823c
+0xb72b32a9, 0xae2987c9, 0x53ae84d0, 0x61c8e5b6
+0x692cf2a6, 0x4f34d761, 0x8f3720ba, 0x7721665
+0x5eb0a08a, 0x438b0a5, 0x5f632dcc, 0x3a3a49d4
+0xcb56e910, 0x25c452ea, 0x66d09e9d, 0xbd5d7891
+0x687b24d5, 0xf37b63d7, 0x599ba7ce, 0xe6e69137
+0x9d490112, 0xaccbcab0, 0x89ef722b, 0x6e9e8bc0
+0x18320cf5, 0xfa2b18d, 0x5d6cb275, 0x1df02fd4
+0x5864aa49, 0x11e4712a, 0x7c83657a, 0x3694686c
+0xd3630a33, 0xb34703a0, 0x768a16af, 0x26ae6c0c
+0x1e3dbaa7, 0x3fd52344, 0x87c37191, 0xebb7850f
+0x101cbeea, 0x1e89159b, 0x17c1eef0, 0x8eea243a
+0xbeef68cb, 0x6b2ca0ee, 0x525d82b2, 0xcf951c7d
+0x805eb6f6, 0x4bf5c6ad, 0x7b72005f, 0x7607ead9
+0xf0e9d61e, 0xd06010d, 0xe43eb27c, 0x31623fc0
+0x3620a219, 0xe0920e49, 0x90f4f507, 0x8fa907ab
+0xf125f114, 0xc84bb3a0, 0xbabbb3c2, 0xa3f8642
+0x5add89ca, 0x402417fb, 0x3fd70dbd, 0x37d9e11d
+0x94985df7, 0x7039e236, 0x9630ba5f, 0x6e36e454
+0xe608c1dd, 0x3eed27c5, 0x18bc8f01, 0x8e7bb0c9
+0x35e0453a, 0x97e91592, 0x4c3cc119, 0xfd6b72bb
+0x414f6590, 0x39deeac5, 0xe1b035f, 0x576703a6
+0x106c2ac9, 0xf5251683, 0x8b964bc5, 0x38508a86
+0x4ff0bc9c, 0x1e886ce2, 0x50e161b5, 0x71f6317a
+0xd0a19809, 0x5cd19ae0, 0xc5921e4c, 0x660656bf
+0x69079b1e, 0xcbf1b7ad, 0x2d6a920d, 0x87283681
+0x4b91531f, 0x9603f951, 0x6021bd96, 0xce3211a8
+0xc10b949d, 0xaacd403f, 0x76c05497, 0xb701204a
+0xd168290d, 0xd82f6283, 0x2133963f, 0x8f79f19e
+0x4163216e, 0xc922e271, 0xaa5cc126, 0xff6b210a
+0xc35de145, 0x8f9e7059, 0x6539b367, 0xcec81f9e
+0xd4e91fa4, 0x461ef762, 0x47d8609e, 0x90d98cde
+0x71eb361b, 0x59757d52, 0xc57991a1, 0xf571fd8
+0x8acd9d9c, 0x32078bde, 0x64a29f51, 0x9b257ffb
+0xf56b571b, 0xc90d290d, 0xe193ad9a, 0x2d531701
+0xeec5c5c9, 0xb2493aae, 0x9ef8e161, 0x1facb7aa
+0xf403112e, 0xd8448d2a, 0xf8c42e84, 0xfc8ee83e
+0x6e99610c, 0x23544561, 0x1937918f, 0xd52a037e
+0x92b767f6, 0x60def8e5, 0x95481ae4, 0xb04fb33a
+0x3018a90e, 0xeb92470d, 0x72f3fb26, 0x42d79a0c
+0x39854c08, 0x8fd824dc, 0x12973df2, 0x8b22b1c3
+0x737e9cc9, 0x90a3ecca, 0x5bbd99b, 0x452a9bdc
+0x6e62085f, 0x59fd61db, 0x43fe0e46, 0x7ea380c4
+0x15d740a7, 0xde46b50, 0x415c9aa4, 0x2747c8bc
+0xcae2e06e, 0xf0e6bafd, 0x12097482, 0x84263a0f
+0x1568c1d2, 0x78ac5701, 0x93bd4a7f, 0xfaa11509
+0xb0b2c6d2, 0x98fdba07, 0xf6be5c43, 0xcf0eeb30
+0xba494dcc, 0x149a6f34, 0xdb58e73b, 0x811bece
+0x6255955b, 0xa4c436c9, 0xb9f4168, 0xce629dda
+0xe486b9a8, 0x8856f337, 0xf214efd, 0x94356904
+0x49b4d544, 0xfb024056, 0x2f30e577, 0xe9e5dc29
+0xbc729875, 0x39489804, 0xe261185c, 0x3e8f2c37
+0xe4dfc51, 0x5f379c20, 0xf09bfbfb, 0xa1cadd23
+0xf1131182, 0xac3ce104, 0x2bfbb44e, 0x500c9d5a
+0xd93256d, 0x825a1925, 0xe4de482a, 0xb9bee297
+0xc312115b, 0xe166a671, 0xe934e314, 0x87b108a3
+0x12a6da42, 0xb91cdb02, 0x59817f0, 0xc72ba3a9
+0x2de24c68, 0xde9bb9ff, 0x1300a5a0, 0x1138d929
+0xc60c781c, 0x405387d1, 0x9ea1152, 0x2ed5de44
+0x27e27aea, 0x8d1ff931, 0xb110bcda, 0xf7f18289
+0xa55e4e97, 0x7e4be525, 0xdc4d4e2c, 0xef592a62
+0x8bfdadbf, 0xfe8c10fe, 0x9c4478a6, 0xd908dbe1
+0x1944893, 0x1abb0203, 0x47c11aa1, 0xf4c62174
+0xb09f6dfa, 0x19aa67db, 0x24b35887, 0xd22abe7a
+0x8534ccf0, 0xc79e9cab, 0xd1a2cbb0, 0x45dfeb3f
+0x26ec6f92, 0x8eec4625, 0xdca1ea5b, 0x6433ef01
+0x63196390, 0x9a6daade, 0xf143c8cc, 0x30e9c0e6
+0xaf7c5fca, 0xc364bf5, 0x84b02452, 0x100ac694
+0x236cbeff, 0xbd7af3a6, 0xe74c2a46, 0x2799c3ea
+0x6df590e0, 0x65f49266, 0x3fda6883, 0xa88fe025
+0xc644618a, 0x6c510d6d, 0x8788202, 0xa468648b
+0x3dda9ade, 0x13b35ad7, 0xe276fd92, 0x29e9ee4e
+0x3bab6884, 0xe258a865, 0x89dcf600, 0x1f5c5e95
+0x7a6ae308, 0x66f53072, 0x867328f, 0xa37e726b
+0x6b96dbf2, 0x1006c4d5, 0x48e60475, 0xa997cc37
+0xe9c1f2b6, 0xa8461eed, 0xf0aa6684, 0x3d58a770
+0x9589ae75, 0x8759007d, 0x35ce5932, 0xaf7950fe
+0xe06a78cf, 0xe8a78a96, 0x98d4cc57, 0xa2688274
+0x12f19583, 0xa80fee70, 0xa2790c2f, 0xfd5d30fd
+0x38c8e801, 0xa63d253, 0x614af5ca, 0x8a27d28
+0xd56ce25c, 0xc140764d, 0xdf8a8d80, 0xf3a3db6b
+0x463586f, 0x4fa24e4c, 0xd2fb46ca, 0xfbdac1b0
+0xe1c189fc, 0x6692270c, 0xff38394f, 0xf65dca5a
+0x5905de62, 0x20a8dc1f, 0x8c90029c, 0xd5290121
+0x9ff21617, 0xbf7b962c, 0x4cc34f4e, 0x97133289
+0x7402a071, 0xd6c8a856, 0xfe9e9723, 0xd48bae91
+0x240e7cb3, 0x61e43c7b, 0x311e3522, 0x1eccc828
+0xb2d607cd, 0xeb759872, 0x43b9496a, 0xcdd6411d
+0x823b6ac7, 0x8f7c3e5f, 0xe1bb6d69, 0x3b93ad2a
+0xccf8dec3, 0x619b2499, 0x6ff21279, 0x74b1e4bf
+0x3f0c90b, 0xf3948573, 0x1147f7d0, 0x5a5631c7
+0xb545d83b, 0xf73e725f, 0xefc2aa2a, 0x936807bb
+0xa98d07e3, 0xf736f817, 0x898e41e3, 0x8a01d5b3
+0x3039a250, 0x23241119, 0xc9842441, 0xb6f24adc
+0x7a9de4dd, 0x2d2b8b5, 0xbdf16f17, 0x812b3781
+0xcbde2032, 0x53593961, 0x28cb157f, 0xb33e01a1
+0x1d9f9513, 0x87b5ace8, 0x38313f6e, 0xc987639e
+0x350a2803, 0x1f25c821, 0xd67fcec2, 0x32f30880
+0xfdf5dc4b, 0xc6f4fe0b, 0xf5254d9, 0x946085f9
+0x295933d1, 0x6a7ffb08, 0x60a678c2, 0x4654663e
+0x37a869a, 0xa6c762bf, 0x71c94947, 0xe6cec4c0
+0x96f51173, 0xb2171c02, 0x972085b, 0x1440b26c
+0xcf95918e, 0x5615125b, 0xb23a1482, 0xdfeb4989
+0x2a2790ff, 0x1c5c6b90, 0x303a9b2e, 0xdf8c2373
+0x6d227eb0, 0x9cf2f720, 0x6362079c, 0xfab89bd2
+0x8558c70a, 0x4bb30ce4, 0xdfd7e0d3, 0xb31455f1
+0x7cc86db5, 0x51b90688, 0x24278932, 0x19406b7e
+0x3dddd47a, 0xdebd53dc, 0xe75d263a, 0x9f5276f1
+0xc73f207b, 0xd899de32, 0x7043089f, 0x94600a67
+0x4f313558, 0x4cd26a1a, 0x8cc340b8, 0xc1d4ccf8
+0xc49924dd, 0xd4bdb1eb, 0xc11033e8, 0x18da7e66
+0x7f5a3822, 0x695e49b5, 0xa8ab858, 0x81337268
+0x9e0379c0, 0x6a5eac55, 0xba40fd92, 0x5194c12e
+0xa8c58e53, 0x490c84e0, 0x2cb92611, 0x7fedf3c7
+0xe1d1e240, 0x56e314c5, 0x6e660174, 0x9f58d852
+0xd5159fd6, 0x180c2cf7, 0x9dd7ad07, 0xfe1b0bfe
+0x670193a0, 0x27bb5743, 0xb602ce3f, 0xc55fdb3c
+0xbbdaf3c4, 0xe98cbe89, 0xdf4b1a75, 0xdf5d7c67
+0x263c33c9, 0x9ba47e84, 0x2a01e6e0, 0xa1c69a03
+0xbde866d0, 0x83c552a9, 0xcd6a60a0, 0x74fa3eb3
+0x9e1297db, 0x9d3e33ba, 0x5af3a29a, 0x2c2352ea
+0xe5a3658b, 0x26226e78, 0xa3cdc7e3, 0xa0a46b36
+0x491a8278, 0xf8984f60, 0x186abbaf, 0xbe4aa731
+0xb9d8fba2, 0x4f20e1d1, 0x94f5c786, 0xe2d4ecc8
+0x3e66b547, 0x39ae06dc, 0xca107048, 0xefcc18fe
+0x87029729, 0x1c9ce023, 0x894ed4e, 0xb4e02132
+0x50445060, 0xb604c7fb, 0x955626c6, 0x8d7e8e01
+0x4cc0e37, 0x40124052, 0x5cfe192d, 0xc3f11db1
+0x22c04775, 0x48d269bd, 0x19f59a14, 0x9530d109
+0x18d50e0c, 0x51be9fb3, 0x258fdaec, 0xacc460c1
+0xd1bab7c6, 0x15782d67, 0x32b35705, 0x623a8533
+0xa5855f93, 0x8044f94, 0x176e52e7, 0x1f245ea3
+0x344eafa4, 0xe3369e4e, 0xb6bd1d4b, 0xb9d2ba08
+0x740d9067, 0x6e7b71f7, 0x6a1fe8c, 0x8eeefe77
+0x6f7129fd, 0x1afb0083, 0x111825c, 0x1dfd200c
+0x10d86566, 0xda568bfd, 0x6cbac73, 0x2fd39e4d
+0x1827957c, 0xfd0bad12, 0x7fec9156, 0x4a95188f
+0x41a8b6c0, 0xe19239a7, 0xed9841a4, 0x2c6e6587
+0xb6554a13, 0x45871927, 0x78f7374d, 0x52ea62f
+0xb260586d, 0x77fe7656, 0xe5d14cd9, 0x4ef9384b
+0xa452a340, 0x65744d1a, 0x26f672c8, 0x5b13c3d8
+0x9fb60cea, 0xdb332076, 0x95e3a8df, 0x50aa036e
+0x1dcc861d, 0x8775155, 0xa019bb5c, 0x4a663e93
+0xb7e06a72, 0xa86adc5a, 0x6bb7686c, 0x59e449fb
+0xdb874079, 0x74a826e5, 0x926138db, 0x616a5acb
+0x6a968559, 0x460df3e9, 0x5313b43, 0x986254bb
+0x6810cd12, 0xfc782c71, 0x4f1210e7, 0x53e246c0
+0xc6293547, 0x7bdfbbac, 0x340ea9fc, 0x9a49a44a
+0x5f094efc, 0x7eee8b7, 0xd0337179, 0xf09a07b8
+0xe9e743ec, 0x15f9856f, 0xa259d08a, 0xf76ec74b
+0x2a50672b, 0x16f6c5a5, 0xbf5cf3dc, 0x653248f4
+0x89a785f3, 0x42ff7655, 0x3617c204, 0xff09013d
+0x934fa46c, 0x4d2619bb, 0x990a8d97, 0x9a766d59
+0x1e85ab1d, 0x9157444f, 0x77a80f9, 0xeffca7ab
+0xb61392b4, 0x5b4ebfc8, 0x3b15b5cd, 0xcfdef9eb
+0x2f62b841, 0xe44d588, 0x14bcd8c6, 0xf6a90ed
+0x690ffdb7, 0x508a2745, 0xcae88257, 0xb73d5cfa
+0xb6a18047, 0xa27dcc3e, 0x19b621b5, 0xd9efbaca
+0xed1b95de, 0x1dab245f, 0x4ac23719, 0x8acb253
+0x6b410d1b, 0x400cb005, 0x3f2a0694, 0xb1178a91
+0x7bc01b7a, 0x306ab0ee, 0xf843f0e3, 0x59f5fc20
+0xfb5af447, 0xea07971, 0xfe873a53, 0xe36b88ef
+0xa316a68c, 0xaa2b94cd, 0xf53de0c1, 0x12e0ba4a
+0x2c46accc, 0xc86f7c7e, 0xe31dbcf4, 0xc5c9a057
+0x730b36d8, 0xb7554edc, 0xe0280b8b, 0x2e6c9d9a
+0x8b33f469, 0xa9955a2c, 0xeec66fdd, 0xd59a502f
+0x5b1ef5f1, 0xc3a2c310, 0x4dd5acb, 0xe103bcc4
+0xe07acccf, 0x27c2bfdc, 0xfd1f24d7, 0x3526004c
+0x56fb320e, 0xb495758d, 0x99cf879b, 0x6b33c2f5
+0xbc0fb2a0, 0x13dc87, 0xda2b4c6d, 0x19825e10
+0x470e9746, 0xb4583950, 0x8ee0b248, 0x7f580323
+0x59ace029, 0xbaf7c504, 0x640391ad, 0xd2a80dd7
+0xdef5b110, 0x54b6dda0, 0xa58dce3d, 0x9cfefa4
+0x44af58f, 0x4bf6b52f, 0x8ae92664, 0x4837325e
+0xb7318f73, 0x1382e727, 0xb74f9886, 0x757727c
+0xd39de535, 0x79a32a56, 0x1c0e091a, 0xee4a4699
+0xe1ae1f4e, 0x3c093073, 0x37fdd0c2, 0x35d28243
+0xda157ca9, 0x45a211c, 0x5d4df84e, 0xd37c9e9c
+0x29c288e5, 0x62035e49, 0x7ad03b62, 0x59c889fc
+0xbe59ee39, 0xf1bcaf15, 0xc4f51b94, 0x1aba2d2a
+0xf4c8a988, 0x662171ee, 0x1e9f6c8c, 0xda8fec5b
+0x626aa6c5, 0x59c5b89f, 0x7b9f93c6, 0xbb64839
+0x2494c140, 0xf946b33c, 0x1d701344, 0xa504aa9f
+0x42d6bbc0, 0x73ea8773, 0xa68c62b8, 0xa9b88b48
+0x92322bd7, 0x4799ec0d, 0xf2ea3d9e, 0x822b6f1d
+0x178eac2, 0xf6cd9842, 0x9bacbc8f, 0x8a3fa6ff
+0x4c0309ca, 0x1b292811, 0x53a3400e, 0xcd26d567
+0x37e64ff2, 0x8d0ec60, 0x94d381b4, 0xb67d2354
+0x33624043, 0xc084cc8, 0xb58b0e07, 0x30c4cd98
+0x6e57de30, 0x77cf8722, 0xb8898f0e, 0x33a5d1a4
+0x1d29644d, 0x772a80d8, 0xfb4f8d3c, 0x1b25d7d4
+0x6c454e7b, 0x6da73a97, 0x2d84913b, 0x5e8d3c2d
+0x379d549b, 0x431b6d54, 0x5da65957, 0xe1013ee0
+0xa6112547, 0xf630dd09, 0xe8852611, 0x88a884a4
+0x44395424, 0x70dcc1e7, 0xbd6c335a, 0x571745e
+0x2e6bb021, 0xfa4280ad, 0x21c36608, 0x4e352b45
+0xfbc5cb04, 0x4c458fd7, 0xd207e378, 0xf6972733
+0xe2e7b00f, 0xd3236bce, 0x6851afc3, 0xf8f99853
+0xccecf753, 0x35b283d7, 0xb9c77aca, 0x68cb4d35
+0xbf18b593, 0xcaf9f85d, 0xb7649825, 0xa5419f4
+0x19888240, 0xbea3e529, 0xc3abf622, 0x463b2552
+0xc733b35f, 0xd391bbef, 0x598f5c2b, 0x3208db81
+0x9f5507a3, 0x6058bea6, 0xda4d43a, 0xaef6cdcd
+0x917cd3f0, 0xa730ce10, 0xc5b08db1, 0xa4cf4fd0
+0x381c0de9, 0xd7387136, 0x6c92de5d, 0xb9c2374a
+0x58a20a3c, 0x26ac8704, 0x6f8aa638, 0x858a866a
+0x259f93bd, 0x3005608, 0xfe37f77c, 0x5d94f3d
+0xaea06052, 0x8e555efc, 0x39577e6e, 0x5cfda5
+0x6878350b, 0xa7cf50dc, 0x8d401347, 0x1a3d6153
+0xc524c23, 0xbffea23b, 0x9b465df9, 0xaf43e161
+0xbd941f66, 0x1b90da0d, 0xbca5e901, 0x687ff020
+0x7e5ff198, 0x36a9ae4e, 0xac5d046c, 0x55740438
+0xd97c3eed, 0xba9208cf, 0xdc9880a9, 0xe3fd6dca
+0xf379fcd5, 0x6148a00f, 0xc4ca5774, 0x4a470b38
+0x96428eda, 0x505ca712, 0xf06ec81, 0x68a11cf0
+0xfd4c3994, 0x3980934f, 0x7afcd974, 0xe4e57b8
+0xa2f67820, 0x6dc0cff, 0xa6866aaf, 0x41c932d
+0xaa3bf494, 0x80168ced, 0x62b419a8, 0x77f7ce97
+0x5254e55a, 0x98e6076a, 0xfd0c655d, 0x97e45e1e
+0x842c0cf, 0x2943d3e, 0x206bcf90, 0xbd54665f
+0x7294802f, 0xeb42b50f, 0x269c75a6, 0x687d2b51
+0x4c462757, 0x311eadbf, 0x394b975c, 0x3777e61a
+0x840f7361, 0x4fea98d8, 0x2f7668b3, 0xc3a5cc95
+0x81fe983, 0x6fc81f31, 0x135c11d1, 0xd0724796
+0x9b6e17c2, 0x57039793, 0x8a4e1ed9, 0x830687ff
+0x4b8ebe4f, 0xa0afc739, 0xd718dc35, 0x5f6986b4
+0xad2740b6, 0xb5adc7cb, 0xfa800458, 0x3a7baacf
+0x6b478d4a, 0x9b32b47b, 0x9b061067, 0x51a0489d
+0xb908440b, 0x2d88d434, 0x35544809, 0xe699700b
+0x42af1d01, 0xec4b6187, 0x32403454, 0x3cf32ba3
+0xf2ef1b4a, 0xce84f810, 0x4f00d43a, 0xe00d9a16
+0x8514e5fc, 0xcdf182fe, 0x84900f1e, 0x3c267e90
+0x29f0331e, 0x4b6106a1, 0x16ec8d20, 0x33b1cbaa
+0x129fee49, 0x3dedbff7, 0xda220001, 0xe010d777
+0xb52606f3, 0xb8c28a7c, 0xf637add2, 0xbfc2f2bc
+0x867d4aba, 0x8c6cc148, 0x98941362, 0xb58ee68f
+0xd219a1b2, 0x124dbec2, 0xcfbbab6b, 0x27a99962
+0x245326a0, 0x4de80922, 0x8699d57d, 0xfd9b38ff
+0xf636a437, 0x522b9aab, 0x7a1e2bbc, 0x5e741329
+0x7a81e94, 0x98939ba9, 0xf65fc9f5, 0xd6500b9d
+0xb316c27c, 0x4a32ea28, 0x733f9246, 0x8b850f42
+0x7971010c, 0x533660ab, 0xe737220a, 0xc44c581e
+0xe1e05a41, 0xe5b8c6f8, 0xf40f9a7e, 0x20e65b4f
+0xde4d1496, 0x535c8df3, 0xd5ca2721, 0x6c79cc71
+0xd1cb61af, 0xae50911e, 0xe4fa42db, 0x67097ee7
+0x16bd1c93, 0x27d96f11, 0xdd559bbc, 0x16f0f922
+0x7252bf0e, 0xf12df1ae, 0x53d55bd8, 0x196c1220
+0xa81bf4dc, 0xe172b7de, 0xe689814f, 0xc2b99304
+0x426ff241, 0x387410ce, 0xdf7e5e41, 0xd1797ac4
+0xaabf2fd5, 0xbc646237, 0xe27780c4, 0xf4be0518
+0x167c4c13, 0xf93dba8a, 0xb1dd51dc, 0x56e09df9
+0xf61f3b4c, 0xeb050d6f, 0xc7b2de90, 0x690975c3
+0x5da30e97, 0x5d9bb92f, 0x4403dcf7, 0x79475c0d
+0x28dd0905, 0xa400a35e, 0x4fc41fe, 0x8ff7c219
+0xfa89beb6, 0x871fd0d, 0xe5e3883, 0x712b0521
+0x47c7ff08, 0x4f6c6fd5, 0xc90ec318, 0x1e9b1a98
+0x3c4121f4, 0xab8558c7, 0x2742c581, 0xd4831ae5
+0x38495d10, 0x28563d57, 0x85a1c643, 0xd816882a
+0xf8719231, 0x768e9fa4, 0x66a4981a, 0xfe3e1a0b
+0x70058d32, 0x7711c907, 0x6c930655, 0x7cd6732f
+0x52634b03, 0x8b8ac09d, 0x3ebe66f2, 0xc51a81cf
+0xcef42d08, 0xd81f8424, 0x64c8a4db, 0x4420e0d6
+0x2e96e0b0, 0x47fa95b0, 0xa771f1c3, 0x24c5ca64
+0x85852c19, 0x26b217eb, 0xeaf93527, 0x82155bec
+0xc5b16846, 0x7c0031f5, 0x80a462ad, 0x2f4247c6
+0xad7d2767, 0x7289fd71, 0x25c411ab, 0x9772bcd6
+0x342ea6e4, 0xb660eb2f, 0x24b8ebb7, 0xe08c66da
+0x94d7a8ad, 0xe9369d98, 0x3c774530, 0x545b9170
+0x825ee892, 0xed9ae855, 0x3d41d119, 0xa0e93f70
+0x95467af, 0xa49b65f6, 0x173cabe4, 0x44a63138
+0xf7ac7848, 0x3e5a7de6, 0x467fc3bd, 0x1811a98e
+0xca65a9e6, 0xd90300b9, 0xd220b46c, 0xbf792160
+0xd279daee, 0x8828d9de, 0x13944872, 0x5aed643f
+0x14d5a7c1, 0xe0c0a42d, 0x670b9779, 0x47f9160e
+0x94cf9cad, 0x9e191dfa, 0x4a675103, 0x86554946
+0xa78f70d5, 0x665d16f4, 0x7cafe103, 0x38217471
+0xd5a61fc8, 0xab64eb89, 0x2af9dd0, 0xf320c3ba
+0xa2683df4, 0x5f44d858, 0x30f5ac75, 0x2d2e7a92
+0xf903f69b, 0x98f1aca8, 0x2d90ac32, 0xa6ee6433
+0x4bc911d5, 0x83cf6b49, 0x38e2a53a, 0x6c6c4d39
+0xdb6feeca, 0x81e2f051, 0x9985252d, 0xd677174
+0x6274a84c, 0x3d663c66, 0x4934b3f6, 0xaaa0987c
+0xd04467f7, 0x80c05983, 0xe839a84f, 0x9d420a2d
+0x8d71f457, 0xc439087f, 0x150f93bd, 0xc314d1fc
+0x5e1ee4b, 0xb459388d, 0xb38eee3d, 0x5ee300e4
+0x78c8f18a, 0x434afd89, 0x7642d88c, 0x2175f96a
+0x276b71d, 0xf13c3456, 0x83f6d2b5, 0xd9d64334
+0x122e79f9, 0xdabd4282, 0xa852297d, 0x2e6946f1
+0x21aaea69, 0x3268569b, 0x5f5f293, 0x814253c9
+0xc2497cd6, 0x5610fec4, 0xb3d2211d, 0xb93f75f1
+0x230d1611, 0x9d86d4e4, 0x59b21666, 0x27c993a9
+0x2043aae8, 0x16d81349, 0xb530a3d5, 0x5f441d47
+0x7c45206a, 0x626163c9, 0xed19a876, 0x91021fe8
+0x9e6ccdeb, 0xb81dbb63, 0x16a65226, 0x8218dd71
+0xd97f6ced, 0x4e6c2ff8, 0x5aa51b82, 0x87ac4a22
+0x5066e7ac, 0x8f503030, 0x1a2fca85, 0x4a2e5ddf
+0xa1688e34, 0xb9344f9c, 0xce64a21e, 0x101e9efd
+0xec88982, 0xde0d3619, 0x4b5165d5, 0x7169cf74
+0x4702494b, 0xdc5fb1fd, 0x38b571a5, 0x8b7003a0
+0x4fa25217, 0xce642de4, 0x40e1d946, 0xc1bd596f
+0x63fc18b5, 0x793f67b4, 0x36e72a97, 0x9b1741e6
+0x1d265476, 0x2c39cc2c, 0xd5f80aa, 0x56c82285
+0xa2bc3e3f, 0x629b0857, 0x86022d4b, 0xca670225
+0x7c3e7487, 0x9b172657, 0xd954d742, 0x4d5ff9db
+0x13eaa6b, 0x888a907c, 0xc00bebe7, 0xa2b19da
+0x26b4f336, 0x8065b089, 0x4adfd02c, 0x7e07f9d
+0xb3cfea4, 0x4624325c, 0x9f148e67, 0x92ec0f33
+0x4caa1c1a, 0xf4d33256, 0x39cdf50, 0x87ea3fe7
+0x11600a0f, 0x442f2b94, 0x660ef7a9, 0x8ffec15e
+0x617bd7d3, 0xf747d975, 0x949e3c51, 0x66e55c5a
+0x4ece7ce9, 0x8c30a3c, 0x69af9b81, 0x7a235659
+0x4f77a380, 0x118ddc8a, 0xc26b0daa, 0x6e52aede
+0xff67f6ed, 0x51ec715f, 0x869f3c0a, 0x2bc57e6b
+0x5d3c4a30, 0xe3ba461a, 0xfafadb63, 0x5252b4da
+0xf6892373, 0xb1ff4489, 0x9c64dd0a, 0x5c2eb54a
+0x9de1f4fc, 0x6f611e0d, 0x8fb7354a, 0x689de951
+0x502476f9, 0xd64e591, 0x6d946258, 0x7e582105
+0xf67b2384, 0x429e52ca, 0x68125fd7, 0x12c56d60
+0x88f97efe, 0x7b1d2c69, 0xb0916b4a, 0x24af31d9
+0x11d9cb03, 0x6f1cf848, 0xb4184f81, 0xa594b2a
+0xd510fac7, 0xe2c56ea8, 0x801b302f, 0xc0b18b14
+0xc05d43cf, 0x5c1a58b, 0x8890f99f, 0x7b072ee2
+0x8a4313f6, 0x20121569, 0xc9f59d7c, 0xac103b8a
+0x46bf5047, 0xec893073, 0x1a8c3f98, 0x11167605
+0xf2561f14, 0xd408d7db, 0x336c48e1, 0x540c8e5e
+0x14deedcc, 0x2d30a4ff, 0x8921d073, 0x395229ac
+0x58619422, 0xba50b447, 0xb2251fa2, 0x4a023c82
+0x5ebfdc43, 0xd862fc65, 0x5152da20, 0xdd89b342
+0xc5c85a1, 0xb4930bef, 0xf49ae47, 0xb5566962
+0xa07de3c, 0x9f95dc9d, 0x7b502c9, 0x56086be9
+0xdd0bf4a, 0xb192397, 0x827503b0, 0xacdadb88
+0x290da7a0, 0x45f671ab, 0xe72dda14, 0xc05ec6ba
+0xd94fdac8, 0x78e9b685, 0x2da08e03, 0x512847b4
+0xc81e369b, 0xffb9e512, 0xb27b6344, 0xe938789
+0xa3fd5452, 0xefe0fcdb, 0x9f0ead14, 0x2de9bfff
+0xcc4bacbb, 0xc03a72, 0x50082d48, 0xb4f948c4
+0x5d1b2406, 0x4e6f65cc, 0x48a59577, 0x23a6739
+0x50c4ffa6, 0x44f0bca0, 0xc61353c3, 0xea15d726
+0x4e9d8ba, 0x2c1771fb, 0xb8e87dc8, 0xbf0f8196
+0xd9b7425a, 0xe31d080, 0x21ff3c11, 0x6ebebfc9
+0x3b3044c1, 0x626412bc, 0x1d61d123, 0x23c562c5
+0x52ac5ac1, 0x4eec501e, 0x9050ed70, 0xc43b6353
+0xa02793b6, 0xa9eda9dd, 0x9d17ace5, 0x5945a014
+0xb26346ab, 0xc50f314b, 0xc98ad086, 0xdd6168a7
+0x72d33ffc, 0x6c9125f6, 0xfe8c8f15, 0x9b8fba3b
+0x70182e9, 0xf090565c, 0x23b3e493, 0x8c0b6a4c
+0x30f4383d, 0x962b7d1d, 0x3e170cbc, 0x47e82854
+0x6537d2fe, 0xb881a2ce, 0x77fc73e3, 0xf80db80c
+0x9cbbeb98, 0xb4ab5c65, 0x47636557, 0xc8b84ebd
+0x51601e0b, 0xe1cafc13, 0x74908102, 0x920022d
+0x80ea7aff, 0x6695b523, 0x946ff7a4, 0xa68ce20c
+0xd76daeaf, 0xedaa5a1, 0x7784da4c, 0x20068947
+0x1db63e23, 0xddb84cdc, 0xa59acef9, 0xee53a168
+0x1de15de3, 0x6496d2c0, 0x795b6eda, 0x5e1132c9
+0x6e8584ef, 0xbbd92a23, 0xa5cd301e, 0x53b9340f
+0x20797345, 0xc51a6930, 0x8cdfa2f2, 0x87062aaf
+0x2a3824ba, 0x502bdb59, 0xf8a10c5, 0x52a1d16b
+0x748dc39d, 0x3f25488a, 0x48ecab10, 0xfd5e349a
+0x96019dfa, 0x8764bc0, 0x3e9082e2, 0x2ec4fa7f
+0x2c99c870, 0x4e4a813e, 0x3767439d, 0x22d6ce03
+0x4138dbe9, 0x282620ab, 0xa778834f, 0x167771fa
+0xf0081582, 0x4510e0cc, 0x23460005, 0xefad389d
+0x745243a9, 0xc3cddf19, 0x71d920bf, 0xf4029816
+0xda9306cc, 0x497b2f21, 0x9413c99c, 0xbf1e8774
+0xf26033e4, 0xdd61d524, 0xd44e38a9, 0xc199243
+0xcbdceac3, 0x46378a33, 0xc9c139c9, 0xce761198
+0xc0244d9, 0x1cfcf55d, 0xa7aa619f, 0xc49d5df3
+0x9d1152f3, 0x3648b24c, 0xa9801343, 0x9b286b07
+0x71833a35, 0x956e026c, 0xfea14d38, 0x1b3099d
+0x49e8cb79, 0xd8b4dc6a, 0x6b44aadf, 0x62ff40e5
+0x36a54b9f, 0xb75c3ae3, 0x7a9c381, 0x3dd9d64d
+0x894c6df2, 0x61d5040a, 0x9dc987e6, 0xa2b8036d
+0x130557b0, 0x2c257da9, 0x68fba8dd, 0x2d505760
+0x1af58e01, 0x8740ec66, 0x93cc7e1c, 0x1797e791
+0xb939084a, 0x3b54b6c0, 0x2d4c06b1, 0x6d92e642
+0xf9a68383, 0xd76cf1f0, 0x5f5f4b20, 0x3bc1af40
+0x7472ecbc, 0xfb544212, 0x30b959fc, 0x9e6d36f2
+0xb241833c, 0xec5da639, 0x2fd914ed, 0x5982d409
+0x13dead1d, 0x836d461e, 0x737d1a8b, 0xe4c79c95
+0xe709e347, 0xcb8503aa, 0x3bc94739, 0x31943141
+0x37632629, 0x8e611406, 0x38706243, 0x8a0a7e55
+0x63e8516, 0x4129a900, 0xfe46e0b2, 0xdd2de2c6
+0x7bec6c18, 0x225fdbd0, 0xf4d3fca4, 0x7391c49a
+0x2504d709, 0x1cc8d383, 0xd77afdaf, 0x5439db86
+0x4b4637ce, 0xdb725a4f, 0x7069a0e5, 0x9cf14fdf
+0xd509bb83, 0xabc57f4f, 0xde553164, 0x6e43dddc
+0xe2563f3c, 0xf3e6f5e9, 0x51a44b01, 0x8b4ef0f1
+0x43b189fc, 0xb6ecc042, 0x1e7d8bad, 0x48bffbfd
+0x7b5ac87c, 0x6d1db815, 0x21f74cf3, 0x15cb251e
+0xaa0e7b7a, 0xdb19a8a9, 0x90467c96, 0x6f73661d
+0x88ee6ea8, 0xfb0a59be, 0x3bc1b57b, 0x325f79a1
+0xe8bab8e4, 0x4e8a275f, 0x1ea5afda, 0x4162086b
diff --git a/benchtests/inet_ntop_ipv6-source.c b/benchtests/inet_ntop_ipv6-source.c
new file mode 100644
index 0000000..f255c27
--- /dev/null
+++ b/benchtests/inet_ntop_ipv6-source.c
@@ -0,0 +1,10 @@
+#include <arpa/inet.h>
+#include <stdint.h>
+
+static void
+inet_ntop_ipv6 (uint32_t addr1, uint32_t addr2, uint32_t addr3, uint32_t addr4)
+{
+ struct in6_addr saddr = { .s6_addr32 = { addr1, addr2, addr3, addr4 } };
+ char dst[INET6_ADDRSTRLEN];
+ inet_ntop (AF_INET6, &saddr, dst, sizeof dst);
+}
diff --git a/benchtests/libmvec/acospi-inputs b/benchtests/libmvec/acospi-inputs
new file mode 100644
index 0000000..540f88d
--- /dev/null
+++ b/benchtests/libmvec/acospi-inputs
@@ -0,0 +1,2709 @@
+## args: double
+## ret: double
+## includes: math.h
+0x1.e9ba80c1b0cc6p-1
+0x1.0c06540e252bdp-3
+0x1.eda8e7c0a34bfp-1
+-0x1.fe8e777376d24p-1
+0x1.cb1673c92f0c9p-1
+0x1.e9ec316d0de94p-1
+0x1.7307e45a9bfb6p-5
+0x1.c16b847c92f30p-3
+0x1.cf0d270e371f6p-1
+0x1.129af5729ef19p-1
+0x1.bce5d0689ab4ep-1
+0x1.2952217220937p-1
+0x1.1c76822aee340p-1
+0x1.e24a2187c1a7ap-1
+0x1.f952508426fa4p-1
+-0x1.e800444223cecp-1
+0x1.edbc56657e3b4p-1
+0x1.5bcc935e4afc7p-1
+-0x1.e008619377db7p-1
+0x1.e7ca21e5cb233p-1
+0x1.c426411a0bd0ep-1
+-0x1.54b193e5a6106p-1
+0x1.ef45d30d3aaeap-1
+-0x1.0a7fa1bbcb68ep-18
+0x1.7b4f05763d852p-1
+0x1.dbc0233bcbacdp-1
+-0x1.f9ecd08896017p-1
+0x1.933a30bb5aecbp-1
+0x1.d87450bf54160p-2
+0x1.e74342dc955f8p-1
+0x1.e46ab59e4b1eep-1
+0x1.fde01341b468cp-1
+-0x1.989e4472a3f0cp-1
+0x1.e098a4166e777p-1
+0x1.566335c979611p-1
+0x1.596d3268f925ap-1
+0x1.219017042f1fep-1
+0x1.ecc867fb960bfp-1
+0x1.b60655bef4f13p-3
+0x1.f4a57127c7a0cp-1
+-0x1.f62ee5fe0cadfp-1
+0x1.3cd7211d9ad3dp-1
+0x1.9df0943df0ed7p-1
+0x1.ea161524e7d47p-1
+0x1.e55a50493b1a9p-1
+0x1.ec8561690ba28p-1
+0x1.f16282757d76ap-1
+0x1.51e1f7c96d12bp-1
+-0x1.9e34b40c77bdbp-1
+0x1.1703345163fc4p-1
+0x1.4bc66758655fap-1
+0x1.b153d53781d7dp-1
+-0x1.f9ad04c73d758p-6
+0x1.ee83a64fcc712p-1
+-0x1.26b3228cfdb15p-1
+0x1.a2c1325da062fp-1
+0x1.eacf918428269p-1
+0x1.210c161c12427p-1
+0x1.8f4653c521ef3p-1
+-0x1.3d666235ebc4dp-1
+0x1.fbf321159facbp-1
+0x1.fb0ae69837b58p-1
+0x1.e7add59a28c21p-1
+-0x1.b3931490e5c15p-22
+-0x1.62bb903865b73p-7
+0x1.d8d4c3d683cd2p-1
+-0x1.f414e43e31308p-1
+0x1.e85ef4b7677afp-1
+0x1.8e5c2284c58ebp-1
+0x1.350fc6069df8ap-1
+0x1.b156a051f0bd8p-1
+-0x1.cd2350b2a476cp-3
+0x1.f2cd66a92c33ap-1
+-0x1.e9d4a5abc7463p-1
+0x1.edf3474fdf1bfp-1
+0x1.ded3e00b45be7p-1
+0x1.ecca5018f3375p-1
+-0x1.f784a20ae007ep-1
+0x1.79cd244068e29p-3
+0x1.0520d4698e9c4p-1
+0x1.df7633193349fp-1
+0x1.eeacc7895ee01p-1
+-0x1.cbddd66bebde8p-1
+0x1.eaaab5eed4d48p-1
+-0x1.b786c6d51b98dp-1
+-0x1.61c366c7c79fap-3
+0x1.f6f55566f3c9dp-1
+-0x1.8455d26a48743p-1
+-0x1.f027619f4ec1cp-1
+0x1.4de6d77cd7b97p-2
+-0x1.2d45e43d1b629p-1
+0x1.dd061720e456ap-1
+0x1.3bfb31bd7ed4ep-3
+0x1.f35563c6fc9e1p-1
+-0x1.da4995d5cee72p-1
+0x1.a96983d9102b9p-1
+0x1.e004440ae8f05p-1
+0x1.e53b304fb4d06p-3
+-0x1.f03185a1019d1p-1
+0x1.8676b01d07ce0p-1
+0x1.ea1916d533f0dp-1
+0x1.03a04519c4e1fp-1
+-0x1.e8ac5756ef915p-1
+0x1.4d6bf1a203446p-4
+0x1.d981a70cd845bp-1
+0x1.1c125719eaaf8p-3
+0x1.e85fb3990f27ap-1
+0x1.e8e035a26d083p-1
+0x1.cbfe848a09c42p-3
+-0x1.e06e527c5ae19p-14
+-0x1.bbd103472cef1p-25
+-0x1.feed81508a469p-1
+-0x1.dab671cd03097p-2
+0x1.ea30578b17269p-1
+0x1.6d0684ce3aa60p-8
+0x1.66d50185eedb5p-2
+0x1.e74243adbcc15p-1
+-0x1.f64db1b1939aap-1
+-0x1.ebd6465bc4b63p-1
+0x1.e006e50dea620p-3
+-0x1.c2fcf77c4861dp-1
+-0x1.e632b5939513cp-1
+-0x1.9ab8b4c3cb0b4p-1
+-0x1.3a3bc41b1b0fcp-2
+0x1.3372c7d8d3206p-25
+-0x1.fd74373268dbbp-1
+0x1.f4e100915be05p-1
+0x1.9bc0232dfa0efp-1
+-0x1.cc03e1478de39p-4
+0x1.e93d0775eb299p-1
+-0x1.a2bb4749faabep-3
+-0x1.f052a40d8e48bp-1
+0x1.c07334b1aac33p-26
+-0x1.13463673ea539p-3
+0x1.d66e5598d3262p-25
+0x1.0dae423f0189ep-2
+0x1.df1a0195dfca4p-1
+-0x1.598e9260d11fdp-1
+0x1.67c773c2070cep-1
+-0x1.ed1f510c9ce11p-1
+0x1.dae297d5d3bafp-2
+-0x1.39af35b44da1fp-2
+-0x1.c679d76fc2b15p-3
+0x1.88f507621e546p-2
+0x1.f702c7007d0f8p-1
+0x1.f2ef13107c805p-1
+0x1.e4bcf61e9db8ep-1
+0x1.3bbb12f88beeap-1
+-0x1.fdb1502db4889p-1
+0x1.3318578e20bc0p-1
+0x1.e9de7563a7493p-1
+0x1.6188f44707072p-1
+0x1.f8903254e120cp-1
+-0x1.f38db4b985d52p-1
+-0x1.cbccf0e19cc7fp-3
+-0x1.be12773f273cdp-10
+-0x1.2b3e149bb0426p-2
+0x1.ad69976c033a1p-1
+0x1.edd13194f87aep-1
+-0x1.18a974fd7bbebp-1
+0x1.9f1fc231a2241p-1
+0x1.10e56678c706ap-25
+-0x1.da0f94397e1efp-1
+-0x1.76c026d8ec2b4p-1
+0x1.0a089692fa9d6p-1
+-0x1.da1ff0b273cd7p-3
+-0x1.f97015d611b73p-1
+0x1.dbe9c72d38923p-1
+0x1.bad6c26512dbcp-1
+-0x1.fb6fb5159af3ep-1
+-0x1.9198b69ff20eep-3
+-0x1.fe0c97242979ap-1
+0x1.2287403404baep-1
+-0x1.f3f5449170a5dp-1
+0x1.f3a6840c57d33p-1
+-0x1.03c0045400546p-1
+0x1.f838e0db37795p-1
+-0x1.7accc66f1a867p-1
+0x1.e82562eb8444fp-1
+0x1.df27b76e86704p-1
+0x1.f4da573b55ec2p-1
+0x1.efe5a6e5fbe8bp-1
+0x1.0659847830f85p-1
+0x1.e32184673d6a3p-1
+-0x1.fea5968e2edf9p-1
+0x1.466c21bdb53d6p-1
+0x1.e7078679d9affp-1
+0x1.befbe4ecbe8cbp-1
+-0x1.e2d534c706c26p-18
+0x1.32616231a62c1p-26
+0x1.54edc38ae367fp-1
+-0x1.3007019386da4p-5
+-0x1.a336f67af7129p-1
+-0x1.8c2257c536d60p-2
+-0x1.84d896f47ecd4p-1
+0x1.977af609a6d12p-18
+0x1.e932a72cac166p-2
+0x1.2945179c842bap-1
+0x1.4a5182138dbd3p-3
+0x1.dbe2458d35539p-1
+0x1.1f1092dd29f91p-1
+0x1.dc693710eb9b2p-1
+0x1.ecb8b2274a503p-1
+0x1.412eb424708fap-1
+0x1.93ca610ea7b0cp-1
+0x1.563fa238b86bfp-3
+0x1.6cc3c369c6079p-1
+0x1.f783b429dc0f3p-1
+0x1.9b875417727f6p-1
+-0x1.a03c44361af74p-1
+0x1.f577461815545p-1
+-0x1.1b83d2880ad3bp-1
+-0x1.2850a5ece60c7p-22
+0x1.03ce907b337a2p-7
+0x1.e13907a8a623bp-1
+0x1.ea3a84b97d192p-1
+-0x1.a41072eb8d471p-1
+0x1.eb4c15b45d01ep-1
+-0x1.101d32f8c74c8p-1
+0x1.0193b3f4d9074p-3
+-0x1.537154d5f6ae7p-3
+0x1.bfaf90a91ac01p-1
+-0x1.0c10917ddebb8p-1
+-0x1.8eadf732729dcp-21
+0x1.e86b603c02c7fp-1
+-0x1.e1d732a3d845ep-1
+0x1.f11cd0a6f6f03p-13
+0x1.8d26805424934p-3
+0x1.f145109d6bdccp-1
+0x1.c543a6761e121p-1
+-0x1.c25a322cf34eap-2
+-0x1.865940819f5fcp-1
+0x1.dc04807986da6p-1
+0x1.ed429667932c9p-1
+-0x1.76fd636ed6498p-2
+-0x1.e53ac26588b25p-1
+-0x1.8f5d4684f487ap-1
+0x1.e09a34d1ff29bp-1
+-0x1.fa9d102a95505p-1
+0x1.1b05e56138440p-3
+0x1.1bc9a7f1d79eap-3
+-0x1.6811368ab0abbp-1
+0x1.ed98e0214a336p-1
+0x1.e7e686da575a0p-1
+-0x1.965f75ff798a9p-1
+0x1.80eaa23a91ec2p-1
+-0x1.d36fb043f6300p-5
+0x1.7018a38a05ffdp-2
+0x1.fae070244fb19p-1
+0x1.d0dd401b30198p-1
+0x1.42f142dadfa1dp-1
+0x1.ec68818823d1dp-1
+0x1.85f3e7bec93a0p-1
+0x1.af29d1ff6c1dap-2
+0x1.35c4a6805cca0p-1
+0x1.df0b063501081p-1
+0x1.5bcd000b70207p-2
+0x1.a24de48ee748dp-1
+-0x1.6a318265b0ce0p-1
+0x1.c534f40a7def8p-3
+-0x1.9f4e543169174p-1
+0x1.f2de70648aed5p-1
+0x1.fe8ab52a90cb0p-1
+-0x1.f680253c19250p-1
+-0x1.fc63569b7f833p-1
+-0x1.6b2935d76744bp-1
+0x1.ea5f006b8edcep-1
+-0x1.5342e394b5397p-1
+0x1.ec4706c41bd83p-16
+-0x1.b7a5b13013786p-3
+0x1.efc8b1d13cab4p-1
+0x1.f524140aa4f9fp-1
+-0x1.8d59b2246d1b5p-2
+-0x1.e10a8025fd5c2p-1
+0x1.ffe555d68b776p-1
+0x1.5ccb0133fca6ep-2
+0x1.47b60350a0542p-1
+0x1.f3d4414a57242p-1
+-0x1.4c94d139f13e8p-1
+-0x1.f598238e275f3p-1
+0x1.818fb41d76b85p-1
+-0x1.fa14d2d9c0775p-11
+0x1.f16ec2400aebap-1
+-0x1.eac587507894dp-1
+0x1.f20e64bfc7419p-1
+-0x1.85ce9765938ccp-3
+0x1.92bff695a5d90p-1
+-0x1.8d0a2047280efp-2
+-0x1.2559e3d4e777dp-22
+0x1.e8390104997a7p-1
+0x1.e99044f21a5c8p-1
+-0x1.ea12258aac145p-1
+0x1.f68a246001b3cp-1
+0x1.db5b870d933e5p-1
+0x1.a140f339c5bdep-20
+0x1.8193402b5c8ecp-1
+-0x1.04d5676a38199p-12
+0x1.a455655209ff8p-1
+-0x1.e63ba4f3d8c3ep-1
+-0x1.6a28d15928650p-1
+-0x1.64b6d0a25c33dp-9
+0x1.46915799cfaccp-1
+-0x1.fbd157a2c23b1p-3
+0x1.ffa3663aba6d5p-1
+0x1.411d129126d0dp-1
+0x1.7063d30f52d4dp-1
+0x1.8201c2f453059p-1
+-0x1.f27a071cddd3bp-15
+0x1.7aca32522bbf5p-6
+0x1.c9846775a72c1p-3
+0x1.6d082285276a9p-15
+0x1.c6a6b4f8f837ep-24
+0x1.ee27e42a2b26bp-1
+0x1.e191c47dea938p-1
+0x1.44b0e7864ee92p-2
+0x1.9c4882b7b62cap-1
+0x1.20b6f0f17af05p-3
+0x1.0301e36c00af6p-1
+0x1.dfe705d59ecb0p-1
+-0x1.dbead5cf594d7p-1
+0x1.f12b06bbb4e7bp-3
+0x1.efe8c7612f386p-1
+-0x1.eb9e2463b8a3ap-1
+-0x1.faf13348b1a37p-1
+0x1.cd50167950c5ep-1
+0x1.dba5c79d7a05ep-1
+-0x1.a334d05fa6dd2p-1
+0x1.8cb1a630bb9c2p-1
+-0x1.9681e2cf54b70p-1
+0x1.39aca667fcf3fp-1
+-0x1.e8bd029d083e4p-2
+-0x1.50e857e4f8090p-1
+0x1.dc16134a07952p-1
+0x1.2c4bb22847712p-1
+0x1.e7b0645e8a0abp-9
+-0x1.8fc066ee56befp-11
+0x1.edbf80f8c492cp-1
+0x1.e3d6a1c24d10cp-1
+-0x1.fbd4f63a7219dp-1
+0x1.f6fd10b1bdf09p-3
+-0x1.6530f1b557057p-1
+0x1.b88262a6e1331p-1
+-0x1.eb0e3015adc06p-1
+-0x1.26cfc26e19c43p-3
+0x1.59bc70a355e7fp-2
+0x1.5fee801ec378cp-1
+0x1.154984a08fb2ap-1
+-0x1.75a356a8a9292p-5
+0x1.ea9314dc90613p-1
+0x1.ea2107288cf84p-1
+-0x1.ebe7414198207p-1
+0x1.65aee12e3ceffp-1
+-0x1.51ba6636b9f2fp-15
+-0x1.c626d4507f69ap-1
+-0x1.e2e3f55bb23a1p-1
+0x1.98b000eb73a71p-1
+0x1.43af03a6b9b8dp-3
+-0x1.7f2ab3a80ac43p-1
+0x1.d9d2a5d6d0097p-1
+0x1.e3f984fc9c133p-1
+-0x1.afeb916e3177fp-21
+0x1.4e04b4277b006p-1
+0x1.efe0107fb5684p-1
+-0x1.4515b4c2b21dap-1
+0x1.11a6b0c515920p-1
+0x1.6164a6618d12ep-21
+0x1.dae745520e0c5p-1
+-0x1.dd2d72e85c929p-1
+0x1.6d9ef5d5611fbp-1
+-0x1.f0f797fed0a55p-1
+0x1.2eab0154ef308p-1
+0x1.ed1fd3af0b556p-1
+-0x1.e71b754c98246p-2
+-0x1.2590214dd2a24p-3
+0x1.fdd1961109848p-1
+0x1.7eb1071ff2770p-1
+-0x1.15bd45916de1ep-2
+-0x1.44d715ad68f89p-1
+-0x1.7641422787614p-1
+0x1.eefe328d3d881p-1
+-0x1.eca8704b551c7p-1
+0x1.2ee67226d5529p-1
+0x1.e8ac53c1395d3p-1
+-0x1.64646108e67cbp-1
+0x1.db91c36140425p-1
+0x1.4605c5134237bp-1
+0x1.f903e462cc94dp-1
+-0x1.73f4c75c9d5f2p-1
+-0x1.dac8a6d776479p-1
+-0x1.2b4492bd73b64p-15
+-0x1.373103fbf2dbbp-26
+0x1.851581e8ee5f8p-8
+0x1.ebca3047b32cfp-1
+-0x1.07c16329a6368p-1
+0x1.fccc50d54ff1fp-1
+0x1.fe9de2486d607p-1
+0x1.ef48b46c9b643p-1
+0x1.e8ef618c8024bp-1
+0x1.993fe684e622bp-1
+0x1.460b45e598a8cp-12
+-0x1.d9e786749e8b9p-3
+-0x1.559071a09ac62p-1
+0x1.ef7432ff2df38p-1
+0x1.e45a36a5fb72fp-3
+0x1.b3d5275cfb554p-1
+-0x1.98e8e522e4a82p-23
+-0x1.02aed44057b67p-2
+0x1.2197f1f7c6e26p-1
+0x1.0837b5e1cec38p-1
+-0x1.ca8a4237c9e0cp-17
+0x1.6006c4b0268aap-1
+-0x1.7208a0ee99588p-18
+0x1.b4b1e471a5f5fp-26
+0x1.8fe1f13a9702cp-1
+0x1.f02b227033d9ap-1
+0x1.d97ec10440781p-1
+0x1.f76fb1e91d5b2p-1
+0x1.deb247936f19fp-1
+0x1.8af0f66d4b0dcp-12
+-0x1.b64be0350cfd6p-1
+-0x1.f932f26d539d5p-1
+0x1.e82a219e74d13p-1
+-0x1.7e09139513a33p-26
+0x1.18f8069a74b77p-1
+0x1.dc6726bfa7475p-1
+0x1.08c813e4436a5p-2
+-0x1.d8320749306c8p-16
+0x1.9472944ec390dp-1
+-0x1.a99987154cea1p-1
+0x1.c882368b557a4p-1
+-0x1.1aa794570d691p-3
+0x1.5c77249e4aea0p-1
+0x1.eb9813be6a2b6p-1
+0x1.f431a44ef4d40p-1
+0x1.eea5d7d2221dap-1
+0x1.2c6291d7f2ad7p-2
+0x1.ac443697d70fdp-1
+0x1.e20ca7c2912a5p-1
+0x1.7ab1d7104d182p-18
+0x1.339513d5d0ee8p-1
+0x1.f589b5ee62b16p-1
+-0x1.fad8f2a47e9f4p-1
+-0x1.1dd663fac6b4fp-1
+-0x1.0f9652222f8e9p-1
+0x1.f35714209b7bdp-1
+0x1.6834569b7a1fap-1
+0x1.00dd565cc9ccfp-15
+0x1.65da25ab2220cp-1
+0x1.d84fa7357d48fp-1
+-0x1.c51a11571e3e9p-1
+0x1.f381b3df02583p-1
+0x1.fbf8c33676a44p-1
+0x1.82bc413c6aff0p-1
+0x1.0dca9008fbcebp-2
+0x1.235506540c7b9p-1
+-0x1.3e3c739c48dc4p-1
+-0x1.f73153b059fbap-1
+0x1.cc56d349d03bap-2
+-0x1.53099013f8190p-2
+0x1.e53de61c37f3ap-1
+0x1.a6a246bf1a535p-22
+0x1.91d3b66fca3a2p-1
+0x1.0f5d16ce3edabp-12
+-0x1.9a7b92e12b5f7p-1
+-0x1.76ca124cf6f47p-3
+-0x1.c41b9411e2424p-1
+-0x1.34c885f2eb328p-1
+0x1.ec1e45f6f7b9dp-1
+0x1.0a4775720ed55p-1
+-0x1.31efb599b0c90p-1
+0x1.edbe60062d7a3p-1
+0x1.2319304ed36b5p-1
+-0x1.cb6aa416f444fp-4
+0x1.504f676650b1ep-1
+0x1.3d1aa4401c058p-3
+-0x1.f60c37def0ad1p-1
+0x1.f9792648513f5p-1
+0x1.94a7e574d0288p-1
+0x1.94f7926ce6fbcp-18
+-0x1.f6fad097104e4p-1
+0x1.3088005339ad3p-1
+0x1.f03355e0191c2p-1
+0x1.dcd3d17610280p-1
+0x1.e05d2667abb1fp-1
+0x1.e82525f9fbf01p-1
+-0x1.de3ca0ef987b7p-1
+0x1.f59943ba80acep-1
+-0x1.e960c36a66790p-1
+0x1.9d26903f5cd50p-10
+-0x1.89bec5921086fp-1
+-0x1.f4e8b5ec98f6cp-20
+-0x1.711982a677be4p-3
+0x1.f46112d3fe843p-1
+0x1.083e13f8fffefp-1
+-0x1.baf382671db8ap-1
+0x1.e0d881ff65497p-1
+-0x1.45bc320aa4dfep-2
+0x1.40e3e60b110dcp-1
+-0x1.f4e3046089560p-1
+-0x1.ea56c46279081p-1
+0x1.e9e48261cb26ep-1
+0x1.4d48f2887cd66p-2
+0x1.e51d745ef2138p-1
+0x1.ae3d476739166p-1
+-0x1.3b19c402e1ab5p-1
+0x1.93db32ee991c6p-1
+0x1.159cd3c2eac06p-2
+0x1.f2196713b8de3p-3
+0x1.c3c4d2e87e40cp-5
+0x1.546b31afe7b81p-3
+0x1.1cd7423631f45p-23
+-0x1.f98921eb79da8p-1
+0x1.da4473bb667adp-1
+0x1.f6d1c21979168p-1
+-0x1.f83452138ebc1p-1
+-0x1.77e2149e4a15bp-1
+-0x1.e374023473851p-1
+0x1.6135557835b0ep-1
+0x1.116497cc82db6p-1
+-0x1.d604e43246f1ap-1
+0x1.e03ba16e3b2d0p-1
+-0x1.fbcc51c3d0adap-1
+-0x1.230833754cbadp-1
+-0x1.e859b3f551706p-1
+0x1.8ed6352b2279fp-1
+0x1.e833c05936a7ep-1
+-0x1.f45f124fb19f4p-1
+-0x1.bcc7e5fa33d67p-1
+0x1.cb5bf39c4168fp-1
+0x1.d913109c549a2p-6
+-0x1.5df3a69b09a81p-3
+0x1.e92f739ce65adp-1
+0x1.eddff4fa793e3p-1
+0x1.fd0d826c5a1d9p-1
+0x1.f01142b6404c5p-2
+0x1.ed3e7235fb716p-1
+-0x1.3f08a31b67052p-6
+0x1.6c6bd2dd525cdp-1
+0x1.e42d42ade6dd4p-2
+-0x1.7c4f407d91487p-8
+-0x1.1441528bd2bc9p-8
+0x1.e5db61dfac951p-1
+-0x1.cf52b5c3c6b19p-1
+0x1.e83f57fd71bfcp-1
+0x1.ae8f91695d74cp-1
+0x1.545021fa9de9cp-1
+-0x1.45c9266ea4970p-1
+0x1.eafea77c551aep-1
+0x1.eba4171524f40p-1
+-0x1.425187f18c762p-18
+-0x1.485fe6e78b76fp-1
+-0x1.db6f1755478ccp-1
+0x1.f8e25686998acp-1
+0x1.ccbba7e740751p-1
+0x1.7816a0d6522cep-1
+-0x1.0cad003c37274p-22
+-0x1.4249d37181745p-3
+-0x1.1aea32c571f90p-2
+0x1.eff2c75d80ec9p-1
+0x1.dedbb5aa065c5p-1
+0x1.022c15ed03102p-2
+0x1.e28cc0a25217ep-1
+-0x1.e75507711de7bp-1
+0x1.6994d6b07313bp-1
+-0x1.93938552d7672p-3
+0x1.e9f062935639ep-1
+0x1.efc9111829a30p-1
+0x1.e82d352bd52d4p-1
+0x1.8aefc30a2949bp-1
+0x1.e829e785fe6bcp-1
+0x1.906de67167cd7p-1
+0x1.3cf7801ab3ddcp-1
+-0x1.d674412d314f7p-1
+0x1.b8f3652b4e782p-8
+0x1.0797f77b05b64p-1
+0x1.fa845330ec5ebp-1
+-0x1.513a3093d637fp-1
+-0x1.a0ae922b44732p-1
+0x1.eb5b41b522564p-1
+0x1.e9e54719a6384p-1
+0x1.dc6a025cdf557p-1
+0x1.8e2720ee32c68p-1
+-0x1.08a965eef1feep-1
+-0x1.fa6306dd46e3fp-1
+0x1.155615f73dc49p-1
+-0x1.ad5ce2c9a061dp-2
+0x1.3a6b650c8bc49p-1
+0x1.1d1f86d1e1e30p-1
+0x1.cc1b051550465p-1
+-0x1.eb9871c6f4d8dp-11
+-0x1.9da0d78b9cbe4p-2
+0x1.e6cb460ebeeebp-1
+-0x1.ebcbb7d352b98p-1
+0x1.f10602c31c4ffp-1
+0x1.f83d00511f1a6p-1
+0x1.e70ef18e894dcp-1
+0x1.f42747759511dp-1
+-0x1.e210555e48210p-1
+0x1.e8be424104e58p-1
+0x1.e269c29bcef60p-1
+0x1.f85ef0fd21f0bp-1
+0x1.937141f2672e0p-1
+0x1.38ec61bd517ccp-1
+-0x1.d6e9722dc24fcp-1
+0x1.f8d1b326b2ed1p-1
+0x1.d86da58fba185p-1
+0x1.65efb1356114ap-3
+0x1.f72791c9cf436p-1
+0x1.0ae4753a5c894p-13
+0x1.f7415347bb40bp-1
+0x1.dc65a4f6e740cp-1
+0x1.d88607a3797e0p-1
+0x1.eed61776e402fp-1
+0x1.ee0df44fb77d0p-1
+-0x1.f450159e992b8p-1
+0x1.e29cb14cdbcd0p-1
+0x1.f653a3375d51dp-1
+-0x1.f57f5552ab569p-1
+0x1.6480d3d0c5efep-20
+0x1.38e266cf4e67bp-23
+0x1.d51cd22b5b6cap-1
+0x1.dc3de7d2fc8d2p-1
+-0x1.312a5566cde3fp-1
+-0x1.fab1d3aa238acp-1
+-0x1.95bac47704824p-3
+-0x1.891b43164f852p-2
+-0x1.80e9f033f4793p-2
+0x1.df255385153fbp-1
+0x1.de67748161291p-1
+-0x1.777e66869b5a2p-2
+0x1.95b610da4b767p-1
+-0x1.0eaeb02390875p-24
+0x1.ed4d9348c4329p-1
+-0x1.96df34af5a088p-21
+0x1.f2d162c70d8b5p-1
+-0x1.deb665e66d761p-1
+-0x1.0f044763f2eaap-3
+-0x1.9c3784de626cbp-3
+0x1.ad40b341217cep-1
+0x1.a3d8456656f09p-1
+-0x1.30688704ba934p-13
+-0x1.f3cf5294a6a88p-1
+0x1.e906911183a95p-1
+0x1.d875b2a4cfad9p-1
+0x1.e9ecd5820a5eap-1
+-0x1.948a52ed5c31bp-5
+0x1.f9c6e1a503f35p-1
+-0x1.ec4f82e92c41cp-1
+-0x1.2ee365574b66ap-6
+-0x1.cf7594c4759eep-19
+-0x1.a0d5f18128988p-2
+-0x1.806c918e71aeep-1
+0x1.df5d715846162p-1
+0x1.f67f859e5cfe0p-1
+0x1.ecc2b558d729fp-1
+0x1.ff9fd0805bf30p-2
+0x1.432fe2eead4f4p-1
+-0x1.8366e3d1a2b7cp-1
+0x1.e3f070eec2596p-1
+0x1.30ba2715f8514p-1
+0x1.e977633ddb6c8p-1
+0x1.ecfff5d1ed4fcp-1
+0x1.6e88143883032p-1
+-0x1.e95fa37e7e7bbp-1
+-0x1.b83c53c09f546p-1
+0x1.517d53ed1b833p-1
+0x1.db8f51d5f71aep-1
+-0x1.1678154436606p-2
+-0x1.fc21417ad3694p-1
+0x1.1c843518d2e94p-25
+0x1.e8eee13ebc573p-1
+0x1.fee6721632c37p-23
+-0x1.f6a87247c9154p-1
+0x1.fe6af4fb98692p-1
+0x1.e7c390a9bbc3dp-2
+-0x1.e0f877f179d56p-1
+0x1.d96bf428df776p-1
+0x1.fc1c23962674cp-1
+0x1.b198a6962238ep-1
+0x1.033e6517daa6fp-5
+-0x1.2d2db09cc6e86p-21
+-0x1.1ed1f46145a42p-1
+-0x1.aceee1f163bb0p-1
+0x1.e775b65834bfap-1
+0x1.b59893a929786p-1
+-0x1.0e4bb0b067b5bp-1
+-0x1.ff1285390535cp-1
+-0x1.f8d0963809a50p-1
+-0x1.e5a865ab089bcp-1
+0x1.c6d112328b280p-1
+0x1.f013574be1027p-1
+-0x1.e0a691caa2943p-1
+0x1.2506d6a72e424p-15
+0x1.0e385386801e9p-1
+-0x1.2c8ac0b1cee68p-6
+-0x1.e44cf154f7837p-3
+-0x1.9c7c24975ad82p-1
+0x1.0d8d44f6a38b9p-1
+-0x1.fb5c33ee7ffa5p-2
+0x1.4ce97693eab63p-1
+0x1.2d57b32c61adep-1
+-0x1.ddc8c1bd6b2f6p-1
+-0x1.60a8174ee182cp-2
+-0x1.fe3ab0326a9ebp-1
+0x1.c99672ad8233dp-1
+-0x1.a05f0442a1f89p-11
+0x1.f4efa58696ba2p-1
+0x1.e8f0874ac9593p-1
+0x1.697a477d1fbd3p-2
+0x1.66b7a3a5f4bbcp-2
+0x1.ec3a1130d87e6p-1
+-0x1.5faae7d3bcf38p-1
+0x1.be54761e95348p-1
+0x1.d053b71612732p-1
+0x1.f13a35b68c59ap-1
+-0x1.ffd2875be2cf2p-1
+0x1.e62df4c494b61p-1
+-0x1.3471231cca442p-6
+-0x1.a7b9e784d9434p-16
+0x1.ece3f29820bdfp-1
+0x1.ef6b47f54b2d8p-1
+-0x1.df2c8655fc70dp-1
+0x1.eda0969bec905p-1
+0x1.488f14cfb8987p-1
+0x1.feb910bbdd186p-1
+-0x1.ed55067dcc2e0p-2
+0x1.dee9b5b493f34p-1
+0x1.37f0201120141p-2
+0x1.bcf1c52c54526p-1
+0x1.e2e2e4afd49aep-1
+-0x1.a828f2fd070e9p-1
+0x1.0995c67dde325p-2
+-0x1.b9cee2442f243p-11
+0x1.b5ffd6affbe68p-1
+-0x1.898db08ff9e7ep-3
+-0x1.eea7123455743p-1
+0x1.e22364d8d2ffbp-25
+0x1.9bc512637b567p-1
+0x1.908f41ab382c6p-1
+0x1.daa6242404908p-3
+0x1.354d96ce0c1f1p-3
+0x1.e4909407d6b04p-1
+-0x1.ae60e50c81658p-1
+0x1.d83d9616cffd1p-1
+0x1.68d57679fbad0p-1
+0x1.ee2a61e036810p-1
+0x1.ff2523154e342p-1
+0x1.e80a234204ccep-1
+0x1.ee12e03c07731p-3
+-0x1.f53bb6a0244b9p-1
+0x1.a7d1d4d25fc9bp-15
+-0x1.0d5e226bae52dp-3
+-0x1.f7553430f26b9p-1
+0x1.561a2200e4797p-1
+0x1.dda171643a8f8p-3
+-0x1.e9a0822672116p-1
+0x1.9c8ad39c801dep-1
+0x1.50fe36a2e907bp-1
+-0x1.f5cb55c5f89b0p-1
+0x1.e55b90ffc4db3p-1
+-0x1.f580e64339dfbp-1
+-0x1.c786d16c31b03p-1
+0x1.ab3d818097c47p-1
+0x1.f628956df2bddp-1
+0x1.3c1983a14fe08p-1
+0x1.ea6977319eac4p-26
+-0x1.a2b2a3cf330a0p-2
+0x1.e06d66507bd76p-1
+0x1.ed4aa34d83d9dp-1
+0x1.adbf4089e4bf0p-1
+0x1.169462af69653p-1
+0x1.7cdae69e34be4p-23
+-0x1.f476a5d67b80dp-3
+0x1.e4f9a4e8edcabp-1
+0x1.fcb451b72ca3ap-1
+0x1.bbee334a41744p-2
+-0x1.e669334dbdbb2p-1
+0x1.e1ef409647a27p-3
+0x1.e2f3d0f200912p-1
+-0x1.0ee0376cb5980p-1
+-0x1.cd90d53a85604p-24
+0x1.da2ee339cc169p-1
+-0x1.91bee2eec93ebp-1
+-0x1.db27252020025p-3
+-0x1.ac0763a2833a8p-1
+0x1.ed7de7964d7b7p-1
+0x1.387816b7132c2p-15
+0x1.bde1b11fb418ep-14
+-0x1.f4b0e44a782a9p-1
+0x1.c85742cc49d4ep-1
+-0x1.2ae4206794c97p-2
+0x1.e8ede2eca6ebcp-1
+0x1.e83ec2bd612adp-1
+0x1.cec725af1011dp-1
+-0x1.f3f110dc11f36p-3
+-0x1.82c441472b814p-1
+0x1.12aee0aad581cp-1
+0x1.d843d56f7661dp-1
+-0x1.0fa9100cde2b7p-1
+0x1.fbb577823c6b2p-1
+-0x1.e7e0f30c7c41bp-1
+0x1.ead455b35dcfcp-1
+-0x1.af50723be988fp-1
+-0x1.c6df54f302009p-2
+-0x1.f69220aac2bb2p-1
+0x1.db2795c5314edp-1
+0x1.f0e804039007cp-1
+0x1.16e3c0bc73e90p-1
+0x1.56f925b7342efp-2
+0x1.2b1a40efca711p-1
+-0x1.c95572af1befbp-1
+-0x1.ea363656402fcp-1
+0x1.9fcea6314eb53p-3
+0x1.c384447b8f44dp-2
+0x1.d9cb8501968aep-1
+0x1.d213669b363a3p-1
+0x1.dbbce7d0130a1p-1
+0x1.ef1b07c170256p-1
+0x1.e5d87723e3720p-1
+-0x1.dc9450089dc1dp-1
+-0x1.a400e154e4d4ep-22
+0x1.f0b8639dae8c0p-1
+-0x1.c0d7a6d0e58c3p-22
+0x1.ebe277900a6d5p-1
+0x1.ddc883853f7b1p-1
+-0x1.f26d718326d24p-1
+0x1.b444f4ecea2d4p-1
+0x1.db5285f43880ap-1
+0x1.ec2a704fa7ba7p-1
+0x1.d9d38554f4ae7p-1
+0x1.40a287e0245c7p-1
+-0x1.bb5997a01dc09p-1
+0x1.dbfe825428361p-1
+0x1.eab9e61d0bb13p-1
+0x1.dbf8477b40f85p-1
+0x1.5977a5e9562d5p-2
+-0x1.6d6582d27a94ep-3
+0x1.ef98c62116f6bp-1
+0x1.b195e01c1649fp-1
+0x1.ed47e34ba7118p-1
+-0x1.2e1b55053587cp-1
+0x1.f46e72b797c76p-1
+0x1.e58d17977d4c7p-1
+-0x1.78044314faf55p-12
+0x1.e67de4828d079p-1
+-0x1.f72481a2b0f3ap-1
+0x1.ef6de28920541p-1
+0x1.81a907ff59256p-1
+0x1.121bf667b781ap-1
+0x1.e41ba30cd763ap-1
+0x1.1e76d67046217p-1
+-0x1.1250820739879p-1
+-0x1.d15f33646b553p-2
+0x1.e90c01d074c50p-1
+-0x1.dc98c564661f8p-2
+0x1.aab3b79abd652p-22
+-0x1.12c3e674c7017p-3
+0x1.207186d6329bap-23
+-0x1.e9de504c45574p-1
+-0x1.87494270ac164p-1
+-0x1.e88cd321ec1dap-1
+-0x1.9317565e1a195p-19
+-0x1.350c40dd7d78ep-1
+0x1.75b8a20113b5ap-3
+0x1.ae0882e067102p-3
+-0x1.313bb034e4980p-1
+0x1.944cd3352094fp-1
+0x1.e845447d64568p-1
+0x1.fe614045bdde4p-5
+0x1.c23a220bff5cfp-5
+0x1.e4e1454ecf85dp-1
+-0x1.fcf1e7da10e5ep-1
+0x1.ee9f80c3fe210p-1
+-0x1.dae080dc56bf7p-1
+0x1.f8b43563a02aep-1
+-0x1.debb0319481e9p-1
+-0x1.f1d9c2f758defp-1
+0x1.deb7334be5d7ep-1
+0x1.e24ac198b2950p-1
+-0x1.4b4613f445564p-13
+-0x1.faf37271307aep-1
+0x1.6a02646fd3199p-1
+-0x1.e520507f83ff0p-1
+0x1.974227fac5c71p-1
+0x1.fe97f4454153cp-1
+0x1.64cc47f51d1ebp-1
+0x1.e0aeb2661bc7ep-1
+0x1.865c7062df26ep-1
+0x1.2b9d94fd96933p-1
+0x1.dc43445d9d6c0p-1
+-0x1.0bcd5161b4780p-1
+0x1.e8eba118b0a26p-1
+0x1.c838228508974p-1
+-0x1.712d5001098d3p-14
+0x1.eaafe5872fba9p-1
+0x1.badc0660a7f51p-1
+0x1.e66ca4a1fdcf4p-1
+-0x1.ed40630f17ef4p-19
+-0x1.eab7a154b753bp-1
+0x1.8610d1e8e6c64p-3
+-0x1.fd61a56639941p-1
+0x1.26cb23fb114cep-3
+-0x1.bf3de5d1277c8p-3
+0x1.eda2c028553a7p-1
+0x1.e0be233591f18p-1
+0x1.fa64112d9b7bdp-1
+-0x1.f5e2246ae2dd4p-1
+-0x1.57b0e23b39e09p-1
+0x1.d97671e65ea90p-1
+-0x1.e6be223004611p-1
+0x1.d56357592f5acp-2
+0x1.6475907a120e3p-1
+-0x1.f47e6381c6551p-1
+-0x1.f2b9635cc6607p-1
+-0x1.5277123e133e3p-1
+0x1.47e5a403ff975p-15
+-0x1.3b47975249d03p-1
+-0x1.2d4395c82f1adp-2
+0x1.1450373bbdbf4p-1
+-0x1.f3f605106ccd2p-1
+0x1.e4fb505afc536p-1
+-0x1.c45f37ee28f93p-1
+-0x1.ea50f192e21edp-1
+0x1.eb0711bcb2188p-1
+0x1.b7a016b696338p-1
+0x1.623046e714274p-3
+0x1.43e5923d7c3c7p-1
+0x1.2fa122f6646a9p-1
+0x1.f4f6b5de34b5ep-23
+0x1.f469264200881p-1
+0x1.655d872a08e7bp-1
+-0x1.efbc035d5241cp-1
+0x1.eecee67cb7c37p-1
+0x1.ef23215f6de12p-1
+-0x1.9157d3c02c3b2p-1
+0x1.c15691eeda91ap-3
+0x1.f39d271893c42p-1
+-0x1.e4f743d28a786p-1
+-0x1.e3439360d1751p-2
+-0x1.e307d799961afp-1
+0x1.e25a6469a523ep-1
+0x1.f220a525222a6p-1
+-0x1.e47060fdcc071p-1
+0x1.36f464d433610p-1
+0x1.d2182142a2d5cp-1
+0x1.eeae3359ec957p-1
+0x1.9af5d2ec8ebd9p-1
+0x1.e11a171b22e03p-1
+0x1.b610305edff4ep-19
+0x1.ed7ab363b3447p-1
+-0x1.e41a54d8498d1p-1
+0x1.51de25b587b24p-1
+-0x1.c0e965c3967f1p-24
+-0x1.c773d52b04af3p-3
+0x1.d986851c611b7p-1
+0x1.c82c83eaf14c7p-3
+0x1.f7cc714398d27p-1
+0x1.cb56a41743a82p-1
+-0x1.c101b1037e3f5p-1
+0x1.70704180d156ap-1
+0x1.f2d9a4e18b93ep-1
+-0x1.70f794d622807p-3
+0x1.ea0c748947c48p-1
+-0x1.a1436628d7964p-2
+0x1.e577a48f03d8cp-1
+0x1.fb333192c3fd8p-1
+-0x1.849bb070f27dcp-3
+0x1.ef97766ebf4d8p-1
+0x1.bba5845fd0c44p-1
+0x1.cc35e07310ee9p-1
+0x1.bbf8c7bb9c20fp-1
+0x1.e52107bcb90ccp-1
+-0x1.53078258ff064p-6
+-0x1.1d3673a2a8700p-8
+0x1.eb3ae6f949eb2p-1
+-0x1.8a2f305b13ed1p-2
+-0x1.30fbb21b54296p-12
+-0x1.448976b9db4f3p-4
+-0x1.fba6c7b54d231p-1
+-0x1.1f9010499bc15p-19
+0x1.bf8d6212e3c0dp-1
+-0x1.c3658532b752dp-17
+-0x1.e40de71a02d0dp-1
+-0x1.c7ef32e8414f7p-3
+0x1.ecf661eaa759fp-1
+0x1.5030f4f39c66fp-1
+-0x1.a724314a500bcp-2
+0x1.9999d51105133p-1
+0x1.d9f6e4d727d70p-1
+0x1.ed1fc550f095ap-1
+0x1.503b14d81b366p-1
+0x1.34b7d05a78c28p-1
+-0x1.2cba67b857796p-1
+-0x1.d77251ee3df8ap-1
+0x1.59f032ff510d6p-2
+0x1.4f88d744710e7p-1
+0x1.d9e8209b73ea1p-1
+-0x1.ffb86378c6e93p-1
+0x1.ea73f543c07f7p-1
+-0x1.87a6e44eaf473p-14
+0x1.8db074f7cba71p-1
+0x1.38b80586e18e2p-5
+0x1.f8be8469e0f90p-1
+0x1.821ca4290f63bp-1
+-0x1.0dd78014ef1a2p-3
+-0x1.149aa666c3c46p-2
+0x1.eeb59431123bfp-1
+-0x1.c253e67cccb47p-23
+-0x1.1721b193cb808p-1
+-0x1.f29d328022c9bp-1
+0x1.dd6ca355705abp-1
+0x1.d7e5a3e80c978p-1
+-0x1.ff693303d6a1bp-1
+-0x1.9792d040f6098p-1
+0x1.e1bf0284f90b9p-15
+-0x1.f841c459354cfp-1
+-0x1.ea326681d6327p-1
+0x1.ec41879c45965p-1
+0x1.fa2d97e552ed9p-1
+0x1.5522431c3f1d5p-1
+0x1.f52c75ff3d843p-3
+0x1.df7ff289d597ep-1
+0x1.89e6d140f4474p-1
+-0x1.f5e8400a879eep-1
+0x1.d0ee108472a16p-1
+0x1.22c9e3d23737bp-2
+-0x1.f180d30e2ee8fp-1
+0x1.dc4355da08d39p-1
+0x1.83cc96505115ep-1
+0x1.df1a927ae2d49p-1
+0x1.f7cb87ac643cbp-24
+-0x1.b5b5e40f69460p-1
+0x1.b768756962650p-1
+0x1.385d044ddae6ep-1
+-0x1.20b4a1a53c3d5p-1
+0x1.7a97a05587a0dp-1
+0x1.f298d21034624p-17
+0x1.0f4422ec03b3ap-1
+0x1.8c67965cd0051p-1
+0x1.cee130d0b5a2bp-3
+0x1.3dc4e295f1f30p-1
+0x1.808b2220ea364p-1
+-0x1.fd05a69ce67b4p-22
+0x1.c6af341fa003ap-1
+0x1.ecd747e9c09c1p-1
+-0x1.551e1792426dap-1
+-0x1.fdc4b78598f6dp-1
+0x1.e705a3952cb55p-1
+-0x1.e302b444c2d4ap-1
+0x1.6079b20e499ddp-1
+0x1.9deca443255dap-1
+0x1.6c4eb3d0781b2p-1
+0x1.ea66d20e1b503p-1
+0x1.eaed6246abfe5p-1
+0x1.e9b823bbcfc07p-1
+-0x1.ce30a300a911ap-3
+0x1.a87ec3c5f01d2p-2
+0x1.bb25e46a7f518p-1
+0x1.edf7166512c36p-1
+-0x1.efe7a1f38e957p-14
+0x1.ea9ef4d1cf987p-1
+0x1.8eba239546037p-13
+0x1.4e7173f8c3108p-25
+0x1.e87141103b5edp-1
+0x1.fe1db59696078p-1
+0x1.f81a9367f49ecp-1
+-0x1.1c8ca3340ee9ep-2
+0x1.f4be90d6a08a2p-1
+0x1.a57e54c302ffcp-1
+0x1.3f689114ae747p-1
+0x1.ba3652b8cb6e8p-25
+0x1.d83d808a7f332p-1
+0x1.dfd2264b6c472p-1
+-0x1.e800e2c46ef54p-1
+0x1.df8f111ae2866p-1
+-0x1.6d6c5532e2cd9p-21
+-0x1.1e2c81ace6c11p-22
+0x1.e953222af7df2p-1
+0x1.e925616ce5429p-1
+-0x1.b26906bfadf37p-1
+0x1.dbe1f423f0122p-1
+0x1.8610709c83c3ep-5
+-0x1.e659010e4489dp-7
+-0x1.e69494ce3841fp-20
+0x1.d8ff513fd08dfp-1
+-0x1.fe6e319c28462p-1
+-0x1.9d64d47733225p-3
+0x1.c32282721051fp-2
+0x1.eb3df7f6d191dp-1
+0x1.8a44534c5fa47p-1
+-0x1.4f6d93821061bp-2
+-0x1.f52714fc5d094p-1
+0x1.9de7e1e0dc8cbp-1
+0x1.eeed020905613p-1
+0x1.ec28d5dadfc7dp-2
+0x1.aa36c26dcd467p-1
+-0x1.8e87e6677fbfbp-2
+0x1.ff84d1966abbdp-1
+-0x1.f63e406386a93p-1
+-0x1.f6203420a49e8p-1
+-0x1.a48a93694dd80p-1
+-0x1.61a7645eb7ec4p-1
+0x1.e090c1a2c9b9fp-1
+0x1.9b45d32c1533ap-1
+-0x1.b11a761584f00p-1
+0x1.9ad421a6de914p-1
+0x1.79dbd61da7b2fp-3
+-0x1.fc26a4aba22d2p-1
+0x1.64105318b86d4p-1
+-0x1.e9789541ac5d2p-1
+0x1.fd9ec29f78db6p-1
+-0x1.f14366570d3b6p-1
+0x1.4b13d01bf21b3p-1
+-0x1.f4eaf42e7ec78p-1
+-0x1.339060228fa99p-5
+-0x1.e744b298a1822p-1
+0x1.deb6d20e46c2dp-1
+0x1.292d24ec19bafp-3
+-0x1.1e8a967a738a4p-1
+0x1.dc10c61f240a2p-1
+0x1.de2966eee1343p-1
+0x1.e19d91e1c7907p-1
+0x1.79c3b49ea70d1p-1
+0x1.16e6f6035c12cp-2
+0x1.decaf4a1bae55p-1
+0x1.ab70f734c29e0p-1
+-0x1.efe2c7ae66583p-1
+-0x1.8bbb01f526908p-1
+-0x1.aaac637a729e4p-21
+-0x1.d8db236a8dc8dp-9
+0x1.e36122ce4d0a1p-1
+0x1.ea4005dd159f9p-1
+0x1.b6a77767d4c9dp-1
+0x1.e40c047e086a2p-1
+-0x1.5dba61bbcf1dep-1
+0x1.e5bc071b94585p-1
+-0x1.f9215050b4d45p-1
+0x1.fdafc34a31724p-1
+0x1.869e353529f40p-1
+-0x1.e2eda692286a9p-1
+0x1.31642078c9c6dp-2
+0x1.97e501e8fe7cfp-1
+0x1.eb18e737043a5p-1
+-0x1.e18a12334f770p-1
+-0x1.d507b06c3df31p-18
+-0x1.d0ec3013892e4p-3
+-0x1.26c875185533dp-15
+0x1.efbe6148f56fdp-1
+0x1.c16d712b4bb1fp-3
+0x1.8b04c70b3ddcap-1
+-0x1.ab136560e555dp-22
+0x1.f7af22a6b572dp-1
+-0x1.d85926848cf29p-1
+-0x1.ec59c307396f8p-1
+0x1.e83fc488dacd6p-1
+0x1.de8b34bf410c9p-1
+-0x1.0d4466176e9fcp-1
+0x1.29c0d4ecd2366p-2
+-0x1.7c821349cb30fp-23
+-0x1.f21cf62567c8ap-1
+0x1.9475e0bee269cp-1
+-0x1.360155ce19621p-1
+-0x1.ab61b161880c5p-3
+-0x1.687a92d61065ap-16
+0x1.a07a83ec307b4p-3
+-0x1.ced6825d25e04p-1
+-0x1.3fd4120c4bf01p-3
+-0x1.98615085cae70p-1
+-0x1.565f25ad39799p-1
+0x1.ff04d61b0df50p-1
+0x1.3b887244ca6ebp-1
+-0x1.faf3f337442b8p-1
+0x1.c2857627f9c6ap-1
+0x1.414391eae82a7p-2
+0x1.ed4c041a3ead6p-1
+-0x1.7720c11df55fep-3
+-0x1.20dd07160306ap-3
+0x1.eb79153ce9fddp-1
+-0x1.0b7c366b28640p-1
+0x1.0c37b2dba00aep-19
+0x1.df2997df1e98ap-1
+-0x1.db81e304bef8ep-2
+0x1.d061109803210p-1
+-0x1.f29f3377fe46bp-1
+-0x1.9d69119b79677p-17
+-0x1.fe18e3a9ee189p-1
+-0x1.2ba7052c8bd80p-1
+0x1.e241853578931p-1
+-0x1.fb0854c5d75f0p-1
+0x1.ee3cd20ce4f5ap-1
+0x1.ee40d08bb49e3p-1
+-0x1.cc9fa732730b4p-1
+0x1.070692620b71cp-1
+0x1.e0d2859d0d97dp-1
+-0x1.82f763fdb686ep-1
+-0x1.763cb2cf0a32dp-3
+0x1.e43b37d8f0ddfp-1
+0x1.a3880141b2dd3p-3
+0x1.3befe215a78c6p-1
+0x1.9d6604d4efeddp-2
+0x1.b5a3d7eddda00p-1
+0x1.cc7993074c20bp-1
+0x1.aac5e5dc62767p-24
+0x1.bed3226c9cf5ap-2
+-0x1.efd3965c7e5acp-1
+0x1.fe2aa46b77528p-1
+0x1.e098e320da0bap-1
+0x1.67e7248b818b3p-3
+-0x1.6ad6002662fadp-2
+0x1.decaa3bcdaa08p-1
+-0x1.d58d16202023dp-10
+0x1.ff00b5fcb622fp-1
+0x1.32ef66d1351e1p-1
+-0x1.f16585e5f84ebp-1
+0x1.1f8845720550bp-3
+-0x1.597ae70396752p-24
+0x1.29d207dd78ad9p-3
+-0x1.c50354e1919fdp-1
+-0x1.f33b17f4530b4p-1
+-0x1.01ede4cf1745cp-1
+0x1.ca3f36b0aa65cp-1
+0x1.40e9902e7c79ap-3
+-0x1.59f3c5b673712p-1
+0x1.916dc64eee2aap-1
+-0x1.ef8c343a179b1p-1
+-0x1.4a43014a489a2p-18
+0x1.ea9994a3eea40p-1
+0x1.7c24d44e7ad13p-1
+0x1.f81f66a100c06p-1
+-0x1.e7cb21c3e16e5p-1
+-0x1.660cf02b53207p-1
+0x1.9d1775b1ea06fp-2
+-0x1.fb6e3107f4ab7p-1
+0x1.ec9ed646b54a4p-1
+0x1.eb877429ca44ep-1
+0x1.57f90558e0cd2p-1
+0x1.ee6127d9b9cd3p-1
+0x1.eeace5528bcaep-1
+0x1.abfa31533bf17p-1
+0x1.af6d31714c4fap-3
+0x1.1b88e568085eep-3
+0x1.27d0012eda11fp-1
+0x1.e4c3a00a353dcp-1
+-0x1.a4d2513d6da08p-3
+0x1.eac9041cf24d0p-1
+0x1.eba880a52b2a0p-1
+0x1.fc9815cf6cf07p-1
+0x1.e9306397ac8d9p-1
+0x1.b43cd65692d19p-1
+0x1.ffed705f1a4ecp-22
+-0x1.758b46be117efp-23
+0x1.32f4b633ba0e9p-1
+0x1.ebf364bf44defp-1
+0x1.eb2c318fe1fd1p-1
+-0x1.c4f6f0a35fd4cp-1
+0x1.f94de7e900a23p-1
+0x1.e040d6464605fp-1
+-0x1.219fc52102aa7p-1
+-0x1.453271b5e1e0cp-1
+0x1.269653d6653a0p-10
+0x1.a48e700ea9b1fp-1
+-0x1.f41ec1c712c7fp-1
+0x1.c96de70665e99p-2
+0x1.ff20b67f593dcp-1
+0x1.e13e27d7f0352p-1
+0x1.e81bf743c0369p-1
+0x1.c50ba323bc984p-5
+0x1.2109349c356f8p-2
+-0x1.8bdbe0b9e2d2bp-10
+0x1.f668a1d8022d9p-1
+-0x1.3e06e4a0baeedp-1
+0x1.fb63f1e25d668p-1
+-0x1.b8e1e27336860p-1
+-0x1.f2700673bb386p-1
+-0x1.b2daa6e18bec1p-1
+0x1.8e8b67f0920cap-3
+0x1.fdeba0a282ee5p-1
+0x1.ed9061cac7a5fp-1
+0x1.e697822f3ef41p-2
+-0x1.a073961b21017p-3
+0x1.eae16553c8c57p-1
+-0x1.ef11308a723a0p-3
+0x1.4db6f0d5fc8b1p-1
+0x1.9db7a4e909c22p-1
+0x1.d963f3e2377acp-1
+-0x1.f4b2a27475355p-1
+0x1.5ceea7934431fp-1
+0x1.e006175a5233bp-1
+0x1.db398369c7f83p-1
+-0x1.6da6930d66d07p-1
+0x1.6cc7155575699p-2
+0x1.8958a513b1a3dp-16
+0x1.e4d423f8e48d5p-1
+0x1.f61e572c416f1p-1
+-0x1.dce6b232fc21ep-1
+-0x1.f76ac4a2a56ebp-1
+-0x1.effa02c2a5b57p-1
+-0x1.3277074adeefap-2
+-0x1.f820b07829307p-1
+-0x1.9ce743a0e44b1p-22
+0x1.5a60c5b18ae7ep-1
+-0x1.627064608ff5ep-1
+-0x1.f18541418b0c8p-1
+0x1.df5a362b58df6p-1
+0x1.5a1c12189882bp-1
+0x1.042eb250936bep-1
+-0x1.1cb73699e8924p-1
+0x1.bd81501f6c6dbp-1
+0x1.ea461047bbbaap-1
+-0x1.987e70cb208c9p-1
+0x1.ebb7b667c93a9p-1
+-0x1.e64087ec5398bp-1
+-0x1.da4060f493507p-10
+0x1.edf6c4bdb283ap-1
+0x1.e56aa246ff0e4p-2
+-0x1.5ee2870e9e6e3p-1
+0x1.890c70d8e4854p-15
+-0x1.9d713407fd722p-1
+0x1.d81051269ec58p-1
+-0x1.21a6c4b3b5c44p-1
+-0x1.ff1743cc5a35ap-1
+-0x1.bdd804759a629p-1
+0x1.ecabd624ed76bp-1
+0x1.f4fc4755c5257p-20
+0x1.ef9f51187fe83p-1
+-0x1.bcfe530a93051p-3
+-0x1.04437668e59f9p-22
+0x1.f9deb62170ec6p-1
+-0x1.f95ff4e30111cp-1
+0x1.b9bcd47a04014p-1
+0x1.e986346f71ee7p-1
+0x1.e870a1536e60dp-1
+-0x1.f45142b039fd9p-1
+-0x1.f9a361114e127p-1
+0x1.a39e45adb3fcbp-1
+0x1.eedee6a9faf61p-1
+-0x1.2d7dd63289e16p-3
+-0x1.ea1224bded243p-1
+-0x1.4bdd4503c4c63p-1
+0x1.6c88456adc480p-3
+0x1.e2b3a4b24383cp-1
+0x1.e5fc97f64aecbp-1
+-0x1.1b6bb0f6cd48dp-1
+-0x1.b303858a80ca8p-1
+0x1.e7ab923c42554p-1
+0x1.0a9275a4041e2p-1
+-0x1.f8c00391024e6p-1
+0x1.e35757a76e130p-1
+0x1.e79240313e889p-1
+0x1.65b7c5e770a90p-1
+-0x1.c932d35cb0882p-1
+0x1.6bdae68159ee5p-2
+-0x1.a10396bb69be7p-1
+0x1.385d508691b4ap-1
+-0x1.879d741b2c118p-23
+0x1.44ecc2c03843ap-1
+-0x1.ff8f3716b5256p-3
+-0x1.595040318030ep-3
+-0x1.bcfdf5e4c6970p-1
+0x1.0f3c92514126ep-1
+0x1.3dc123067ed3fp-1
+-0x1.ecbe16bf69bfbp-1
+0x1.9ee9220c8f948p-2
+0x1.dda1a2c40b3a6p-1
+0x1.c24c85e28024fp-1
+0x1.28b060d622339p-1
+0x1.ef1b944c9f858p-1
+-0x1.f476a1ba386d0p-1
+0x1.83edf16dfff50p-1
+0x1.e7ee358e79562p-1
+0x1.e31ec6e0b4fc4p-1
+0x1.dd98613b70372p-1
+0x1.da5505c9b5082p-1
+0x1.24f756f5e8490p-22
+0x1.2c5d704de00e2p-3
+0x1.e8faf051d09cbp-1
+-0x1.ff78b2a719f69p-1
+0x1.db133789d06a7p-1
+0x1.66c0e08344febp-1
+0x1.406506bfcfb11p-1
+-0x1.55ac10a3a8641p-3
+0x1.fce4f63c2836bp-11
+0x1.a49c5484fe1ecp-1
+0x1.ec7bc658a8951p-1
+0x1.e84b3736a7b34p-1
+0x1.ac8f6552a58dep-1
+0x1.f42ee4d7dac9dp-1
+0x1.3951052bb8e1fp-1
+0x1.bec8b0e3edbb6p-1
+0x1.33855463baf99p-1
+-0x1.177641b2f5da9p-2
+0x1.df40141a3b57dp-1
+0x1.e92b22c10a9ddp-1
+-0x1.f0bf840efa02bp-1
+0x1.19a5c7f4ac19ap-1
+-0x1.f06581e9738c7p-22
+0x1.fa84d6fc1bfb4p-1
+-0x1.ff5cc72dade88p-1
+0x1.e0942271d057fp-1
+0x1.02338781af33bp-3
+0x1.696c8704c0adep-1
+-0x1.f1687635d3527p-1
+0x1.8fd781a156526p-1
+0x1.fe1874b71dffap-1
+0x1.8651325797215p-3
+0x1.bc3c71925e5b6p-1
+-0x1.1e9543b9189ebp-4
+0x1.e4e8c2f4a4892p-1
+0x1.9cec761d69c12p-1
+0x1.b823a13640780p-1
+0x1.1340e0318b586p-1
+0x1.ecea93cc4e282p-1
+0x1.381af30c8bbacp-3
+0x1.269575fbaa2a4p-1
+-0x1.806dd0823096dp-1
+-0x1.e052374d36a4bp-1
+0x1.fea3254b1eafap-3
+0x1.2d5970ca26f6cp-1
+-0x1.f4dea4866c50bp-1
+0x1.f69344c9b9904p-1
+-0x1.a3903178cc914p-1
+0x1.ef5191f3a5593p-1
+0x1.f5f3548da6996p-1
+-0x1.f643440d6b06cp-1
+-0x1.f002c7269a37ep-1
+-0x1.fa75252a58e2dp-1
+0x1.d9f9e3d739f44p-1
+0x1.634732e2952fap-10
+0x1.f218003f765f8p-1
+0x1.606f8100c1742p-2
+-0x1.e755f3286db4ap-1
+0x1.a51346ad161ffp-1
+-0x1.fb568187a36cdp-1
+-0x1.e9fb506e00816p-1
+0x1.ef4ba09903242p-1
+0x1.decac67825caep-1
+0x1.e87f025e48684p-1
+0x1.e3f8778ca9756p-1
+0x1.def1462172dfbp-1
+0x1.311253501f3f2p-3
+0x1.b47cd28626b01p-1
+0x1.ea01327b06539p-1
+0x1.f29325d22a5b5p-1
+-0x1.63cce0ecc9f3fp-2
+-0x1.cbec261c8745fp-2
+0x1.839f62344ed35p-1
+0x1.db5e820db1f0dp-1
+0x1.eb10463897a41p-1
+-0x1.01a9b60073fd1p-2
+0x1.820c4727f0297p-1
+0x1.defe9157b25b9p-1
+0x1.95acf5bfa2f77p-3
+-0x1.f829a7cd489c0p-1
+-0x1.f78f2515a0c93p-1
+0x1.e40934a3f3e57p-1
+-0x1.fb0a94ad8c18dp-1
+-0x1.8f0b53139648dp-20
+0x1.d801c522cfcf4p-1
+0x1.d91a30bb3e15dp-1
+0x1.e41a80baf531bp-1
+0x1.e96113c21b2e6p-1
+0x1.cbb5955832906p-1
+-0x1.faaf461b00258p-1
+0x1.2c7b264df7e18p-2
+0x1.cdf68750f625fp-1
+-0x1.ab062115542b8p-2
+0x1.cd73a32168810p-2
+-0x1.f3f1411a81959p-1
+0x1.57c7a2ace0a72p-1
+0x1.efb2212f852c5p-1
+0x1.8e0f47ea636f7p-1
+0x1.ea6d312855164p-1
+0x1.31a3e53d9d779p-1
+0x1.bc55404efb12dp-19
+-0x1.b6f9a6276a135p-1
+-0x1.c3e361caeb9f1p-1
+-0x1.e0eca0ecd7cb7p-1
+0x1.f847f61015d15p-1
+0x1.ed36e1f48a48ap-1
+0x1.f41ca43bda5ffp-1
+-0x1.ad50f432557fap-1
+-0x1.114fa24a19444p-2
+0x1.36def65bab425p-1
+0x1.fe05623afcc36p-1
+-0x1.ef66a308f97d2p-1
+0x1.8d4b844dd2993p-1
+-0x1.d6cff1d46ff9bp-9
+-0x1.ee29a33d89217p-1
+-0x1.f132f2992494fp-1
+-0x1.de7153b5aad60p-3
+0x1.d915353edaa25p-1
+0x1.ea64823156f61p-1
+0x1.4d3ba3c4d2e24p-1
+0x1.ba92542786897p-1
+-0x1.fffed63ad096dp-1
+0x1.e97f8083149abp-1
+0x1.b79ba1d3be769p-1
+-0x1.eab325c5fbbe8p-1
+-0x1.c3e3470150bafp-1
+0x1.e3b610f2a9a12p-1
+0x1.091a864ba6574p-3
+-0x1.462ed634d347cp-2
+0x1.ed90006d31696p-1
+-0x1.c62a454b8d40bp-1
+0x1.371a12446cb76p-2
+0x1.eb63b3e34705ep-1
+0x1.edf750cfdec5ap-1
+-0x1.308fe73061dc7p-1
+-0x1.ee05e10877512p-1
+-0x1.d67e0577a6507p-1
+-0x1.ed2eb7554cecap-2
+0x1.dca2a028e0226p-1
+0x1.d30c963d41488p-1
+0x1.7530e7c8620bfp-1
+0x1.d417a562c0d61p-1
+0x1.e20e43f399e37p-1
+0x1.ea15f4adca008p-1
+-0x1.f3b7c47cb6dc6p-1
+-0x1.154f81f240248p-7
+-0x1.151356f0736d8p-1
+0x1.f6ee472b8805fp-1
+0x1.92518330d7f45p-1
+-0x1.dc476211ce07dp-1
+0x1.e848464011e2bp-1
+-0x1.46a8919520b17p-1
+-0x1.77fe90512eacfp-1
+-0x1.9acbd0bea7745p-2
+-0x1.443961a482f0fp-2
+0x1.dc9150d6da395p-1
+0x1.8f0b30b8722ebp-11
+-0x1.ec2db037a82dcp-1
+0x1.e3e7f06de29f4p-1
+-0x1.f321806888b14p-1
+0x1.bcc2d238d4ddbp-25
+-0x1.b5d02551d5671p-10
+0x1.5b65c47382c9ap-3
+-0x1.fcbdd2b050f64p-1
+0x1.ea5c13904e3b2p-1
+0x1.ef36a448b7555p-1
+0x1.dfdfd6c700acfp-1
+0x1.4236c13576e0ep-2
+0x1.8df8a16525f39p-3
+0x1.e0ad97d2cf238p-1
+-0x1.38f0542ca311ap-1
+0x1.d87891d37859cp-1
+0x1.e10e138b446a6p-1
+0x1.0f92764f7b2e4p-1
+0x1.aade166075ea0p-1
+-0x1.902df59995e2fp-15
+0x1.de7c758e0561ep-1
+-0x1.bbcb739c535d8p-3
+0x1.750fa027faf9ep-1
+0x1.af8d62c66fb2cp-1
+0x1.ea9ec240b76fap-1
+0x1.ef92f02323e66p-1
+0x1.410642b877d0fp-1
+0x1.ecec322ab031cp-1
+0x1.88a7042cf26e3p-1
+0x1.d91c147875780p-1
+-0x1.891bb78017f41p-3
+0x1.ecbf764fb7f74p-1
+0x1.8ae814193f661p-1
+-0x1.9ab562e85a368p-1
+0x1.eafad3737c504p-1
+0x1.f172b00025f8dp-1
+0x1.9625e4660a46ep-1
+0x1.ff2847663862cp-23
+-0x1.f876845608312p-1
+0x1.f988f6376ddcep-1
+-0x1.32096643967c8p-24
+0x1.862f469d3b6b5p-1
+0x1.e409002dbe096p-1
+0x1.ebae12a190827p-1
+-0x1.c73c104933177p-3
+-0x1.e67b111d9643ap-1
+0x1.e14005d42553cp-1
+0x1.6bcdd5585b74ep-1
+0x1.d01df07e10013p-1
+-0x1.aa01a6ca96ca1p-1
+0x1.9adaa0b3675d2p-1
+0x1.abf414448c2c7p-1
+0x1.e5c940ebf6cffp-1
+0x1.5cf30257670ddp-1
+-0x1.c572d1625cc9ap-1
+0x1.c46f07973a003p-1
+-0x1.e9edf7eef925cp-1
+0x1.e2db71253b231p-1
+-0x1.f18a81c759b6ep-1
+-0x1.0484943b8972bp-14
+0x1.e8ba541de4c3dp-1
+0x1.e86031182f48ap-1
+0x1.edf485b87d989p-1
+0x1.ed7b63e2ae6e5p-1
+0x1.441ba0eeee084p-1
+-0x1.f157124313805p-7
+-0x1.592b96408f745p-15
+-0x1.aa9f35bb8710cp-3
+0x1.dd79933eb4823p-1
+0x1.8105f3b2d415bp-1
+0x1.e959042778f64p-1
+0x1.eb1923875839bp-1
+0x1.f0f3621f3d303p-1
+-0x1.fb9d116c1740ap-15
+0x1.ee3e232a76cbdp-1
+0x1.a720e17021d30p-1
+0x1.4496d3d77e50dp-3
+0x1.29b2708c3a747p-1
+0x1.49f6619c13dd0p-2
+0x1.01593434a17a8p-2
+0x1.0c56546e3c83ep-2
+-0x1.fd7591cf4e231p-1
+0x1.f28e37cddaa63p-1
+-0x1.21c025a637570p-2
+0x1.e47fc5993f6c7p-1
+0x1.85a2015249f9ap-1
+0x1.ccac70b0bde88p-1
+-0x1.b0c634676faacp-4
+-0x1.f91d34193e0cap-1
+0x1.ea81015237620p-1
+0x1.e0f6a48d7e9c9p-1
+0x1.fae08655a51a3p-1
+0x1.4f28f1201b762p-3
+0x1.e8e030f4ea7e4p-1
+0x1.e1db95f200e1bp-1
+0x1.f425e3cced4c7p-3
+0x1.bdc8679163915p-18
+0x1.febcf6c28536ap-1
+0x1.92f204914b1bap-1
+0x1.ecd8933b172edp-1
+0x1.f0bb0482d6c17p-1
+-0x1.1011a24690b17p-1
+0x1.6597b5c278c94p-1
+0x1.c03a92b120e58p-1
+-0x1.0eed14bd5c463p-1
+0x1.e84d0157c4875p-1
+0x1.e0fa54716960fp-1
+-0x1.e70102ffd26f4p-2
+-0x1.a5029085d091bp-1
+-0x1.ff504589e4c56p-1
+0x1.cd7171df2e295p-3
+-0x1.c2e6249c7296ap-21
+0x1.96c5c059d54afp-1
+-0x1.e6f51087203f2p-9
+-0x1.515e3214390b1p-2
+-0x1.e0a141c4f0b16p-1
+0x1.eb7451be325a0p-1
+0x1.e0d083fcb5089p-1
+-0x1.fee190f2fc2b8p-2
+0x1.fe9b45e910698p-1
+0x1.a1bb4745dadf5p-1
+-0x1.f652e1fdb6a40p-1
+0x1.ddcf1291a5226p-1
+-0x1.43cbc08a959f6p-3
+0x1.dbf877fb563dcp-3
+0x1.ca0a70766ed38p-1
+-0x1.fb8063fd22722p-1
+-0x1.fa4ed780ebffap-1
+0x1.ef75b5fbc2038p-1
+0x1.d8fad2d484f9cp-1
+0x1.eb8ca278a8b79p-1
+0x1.0fde2500275a5p-2
+0x1.e71ef4f74efa5p-1
+0x1.df0c61f2a0f01p-1
+-0x1.bb5c7578b90a7p-1
+-0x1.2e84858cbd9e2p-1
+0x1.096bd4970cd0dp-22
+-0x1.f41217509723dp-1
+-0x1.32d10136b1f12p-1
+0x1.4c6af75e75c32p-1
+0x1.3fe9d75c1f312p-1
+0x1.9ef980d30524ap-1
+0x1.828b0390e301ap-3
+0x1.f62692b289857p-1
+0x1.5cb4743cbb81ep-13
+0x1.ef86868247137p-1
+-0x1.da44b5b4e6c6fp-1
+0x1.dbcd94da0d8b8p-1
+0x1.ec9c878cfb5f0p-1
+-0x1.5f64a17e9500dp-2
+0x1.5c75e768472b4p-2
+-0x1.a787c4bfd3b9dp-1
+-0x1.cca7367cafebcp-1
+-0x1.11bc51c1a6b71p-1
+-0x1.f6df90b887fc3p-1
+0x1.7a9fb439b7a47p-1
+0x1.e33c401410e8dp-1
+0x1.fb4ee1a050156p-1
+0x1.e89fb349c715bp-9
+0x1.9b1db0483a855p-20
+0x1.a913b3a187ee1p-17
+-0x1.ef7701b74636cp-1
+0x1.828184fbbeaa0p-2
+0x1.f4d8e628050abp-1
+0x1.133d81d6ae23cp-3
+0x1.f013f7c35659bp-1
+0x1.efd682aa7da6dp-1
+0x1.f1dc00f5ef3a9p-1
+0x1.96072389d627dp-1
+0x1.ea1691abf195ep-1
+-0x1.cca2538d384bap-5
+0x1.e92007ba8df2ap-1
+-0x1.e141a1fc347e7p-1
+0x1.ed08437e94ea2p-1
+0x1.4445e5b18f130p-1
+0x1.f66bb10cf125cp-1
+0x1.704f576926a3ep-1
+-0x1.1e2b763ff1c1bp-16
+0x1.a257b5f59a887p-1
+0x1.ee0771d865c59p-1
+0x1.debf16684ec06p-1
+0x1.dbdf762ec9500p-1
+0x1.e60b71ca4175bp-1
+0x1.30f9a5a27b4a8p-1
+-0x1.f34ff26c85784p-1
+-0x1.d1b2d7ceae413p-1
+0x1.fdcf071e072d3p-1
+-0x1.a3f255af4ee16p-1
+-0x1.ea5db637383c4p-20
+0x1.e23fd346a1c24p-1
+0x1.398d4660919b3p-1
+-0x1.2341b61c4a232p-6
+0x1.e7ddc42b3a4a8p-1
+-0x1.ff0942c4470a9p-1
+0x1.fa0f0780123aap-1
+-0x1.56f2e58d53fc9p-1
+0x1.37fd262f2ef5ap-1
+0x1.e9de764260ee7p-1
+0x1.3b0da25eac967p-18
+0x1.e4394344a153bp-1
+0x1.ee5d6207f7775p-1
+0x1.e1241012fada1p-1
+0x1.e2e61171c55e6p-1
+-0x1.fa0e3517f47f8p-1
+0x1.e811955ba544ap-1
+0x1.4003e18e34c12p-23
+0x1.f4f195748771bp-1
+-0x1.ef0f34f9f356fp-1
+0x1.391e008ea4619p-3
+-0x1.bb0300053577dp-2
+0x1.612ec16edaa00p-1
+-0x1.53edf5aa8e452p-1
+0x1.267ce71264f70p-1
+-0x1.b0c102e4ded61p-1
+0x1.b7b2671933257p-1
+0x1.ea53f7e49d1fep-1
+-0x1.ea6bc6967c364p-1
+0x1.95d8a522476fap-1
+0x1.f99470c182bf6p-1
+-0x1.ef0df4884c963p-3
+0x1.e6157493cd764p-1
+-0x1.12b6e5b410e7fp-1
+0x1.f67435d502e6dp-1
+-0x1.f4ec823b0125dp-1
+-0x1.f638561f1eccbp-1
+-0x1.b967b16c72982p-21
+-0x1.842b3414ac978p-1
+0x1.ef15c079cf311p-1
+0x1.1d6fb030321d5p-2
+0x1.ea147124ef4abp-1
+0x1.e342f70874ef2p-1
+0x1.e7afc67c34250p-1
+0x1.19db65ff74336p-1
+0x1.df80158c55f1bp-1
+0x1.542a0182909a7p-1
+0x1.057365e07e692p-2
+-0x1.fb0d257f569cdp-1
+-0x1.de3c10fe462f9p-1
+-0x1.ecf8e686be7cep-1
+0x1.55e863f86981dp-1
+-0x1.eb05376e22db1p-1
+-0x1.e83e578b67404p-1
+0x1.1d7bf26bcd34ep-2
+-0x1.ec5af0c2ccbc9p-1
+0x1.ddd3d27a5b4aep-1
+-0x1.eaf4048fe077cp-1
+0x1.00801354b719ap-21
+0x1.3e3a6224576bap-3
+0x1.ed89f7096981cp-1
+-0x1.daf4c6895a475p-2
+-0x1.27b5065556c47p-1
+-0x1.62e816a332a1ep-1
+0x1.c38e7517dd45fp-12
+0x1.915a220e086dfp-1
+0x1.dd5754e2b6f70p-1
+0x1.d84720817bef5p-1
+-0x1.04b965445d524p-1
+-0x1.e882f75e4f37fp-1
+0x1.d8e1258d3e967p-1
+-0x1.f4ad6308371a8p-1
+0x1.0924a114faa3bp-1
+-0x1.ee8ea3f68169fp-1
+-0x1.db6440c16c293p-1
+0x1.a260a5cf0493bp-1
+0x1.ead6a5782d24dp-1
+0x1.e049c5ecc67fcp-1
+-0x1.480570f907c0ap-25
+-0x1.e6a7c54bbfa5ap-1
+0x1.fe6ad355328e4p-1
+0x1.e2d7666a25355p-1
+0x1.eec3b242762cep-1
+0x1.c85773ca329d7p-1
+-0x1.f163118d145f0p-1
+-0x1.f79036a3f4459p-1
+-0x1.204f96baed60dp-3
+0x1.f9dc71e534411p-1
+0x1.67b372a69cd0bp-3
+0x1.eaa614d2c63c8p-1
+0x1.bb01a3a90cd08p-3
+-0x1.0bc192dba3daep-1
+0x1.a7184731a11b4p-1
+-0x1.bfb485fa7f5f4p-16
+-0x1.3688a0346cbf4p-2
+-0x1.f153e2327fc20p-1
+0x1.658b516343b5ap-1
+0x1.edd205a535cf6p-1
+0x1.e2e360aa13064p-1
+-0x1.c24710eb7be22p-3
+0x1.041a67e3e8f28p-1
+-0x1.eb8aa64a05087p-1
+0x1.e30cf7c07f903p-1
+-0x1.b9c3a3088d677p-1
+0x1.713eb1ab5e4c9p-1
+-0x1.6ad805c841fcap-1
+-0x1.f885a3f0e8ba8p-1
+0x1.f46dc196d78d6p-1
+0x1.fc84242c90e1fp-1
+-0x1.03cb72be8da0fp-1
+0x1.876157be34442p-1
+0x1.df7a00f91ede0p-1
+-0x1.7aadc22f765e8p-1
+0x1.c49f353c0eea6p-2
+-0x1.6942e78790b68p-1
+0x1.f09820d53213dp-1
+0x1.f0d7d51f16eafp-1
+0x1.dd09f317d4844p-1
+0x1.c37884de423eep-2
+-0x1.d888e3c9b6736p-2
+-0x1.0f9db3fc68bccp-5
+0x1.b6a6c3eebea0cp-1
+0x1.45f1f16329902p-1
+0x1.ea8ca34a12e96p-1
+0x1.e301b33695f69p-1
+0x1.68a5b3e8dc41fp-1
+-0x1.31ff6639336e0p-1
+0x1.5a9b126abc66ap-1
+0x1.1973b36468d97p-1
+0x1.efe1f56bd3534p-1
+0x1.e5ab36d2f2409p-1
+-0x1.45d6537260c70p-3
+-0x1.56f5410b90154p-15
+-0x1.7d8cb3c9cb5d8p-1
+0x1.c96a64375fd43p-1
+0x1.deb991e8ad26ep-1
+0x1.f2cdb2dedca59p-1
+-0x1.aca5d6e0cebc8p-1
+0x1.eb42940a8517bp-1
+0x1.ae1b403368423p-1
+0x1.ade411f3da571p-1
+0x1.3e1116e4de263p-1
+0x1.8973c30a0bb9cp-1
+-0x1.156c062335d7dp-1
+-0x1.9acbe0ee1240fp-3
+0x1.ec00c6a3e141ep-1
+0x1.dc4b32a234a23p-1
+0x1.e6c20026a69cfp-1
+-0x1.8fa041d702f22p-3
+0x1.c5f6f61e0882cp-1
+0x1.ca32d645bd50ap-1
+-0x1.eebfe7785b810p-1
+0x1.d855e4e635750p-23
+-0x1.c4f8e0df2acbdp-3
+-0x1.7f7681cf8b0a8p-2
+0x1.834e43d519f57p-20
+-0x1.e6c711f8a07a2p-1
+0x1.37e074e9bd23fp-3
+0x1.e07616c72f309p-1
+0x1.eb6786e4bb963p-1
+0x1.19099015cd289p-1
+0x1.e1a391292b6e3p-1
+0x1.e2db651834387p-13
+-0x1.fe98b265f6c23p-1
+0x1.e2bfd7dc71f91p-1
+0x1.ee47140384e38p-1
+-0x1.001567470f803p-2
+0x1.05bdf1d57b74ap-3
+-0x1.9f9bb738e7354p-2
+-0x1.e2b5a72fffc26p-1
+0x1.e33c52a03a341p-1
+0x1.c210e6a7521b4p-1
+-0x1.89280419666a0p-3
+0x1.ef4386066c43ap-1
+0x1.617cf4e80da72p-2
+0x1.ca67862290507p-1
+0x1.d2db6598cfaf0p-1
+0x1.4c52d70f696f4p-3
+0x1.fd31e495b8cd4p-1
+0x1.97d8c7b4c9114p-1
+-0x1.f0fc72689286ep-1
+0x1.93a7216be0c5dp-2
+0x1.d3115794c28e9p-1
+0x1.e285e72ab6c83p-1
+0x1.e318d24b8b39ep-1
+-0x1.eef6d32a0b85fp-1
+0x1.8d1c623935f00p-2
+0x1.69f611e882192p-3
+-0x1.815743a3562efp-1
+-0x1.eb08c0c39511ep-1
+0x1.c59db4bbac95fp-1
+0x1.7d0722deb44afp-1
+-0x1.8315d64e9546ep-1
+0x1.9dd1600231fb9p-1
+0x1.e2e2e02cfc885p-1
+-0x1.10e173bc56bedp-1
+-0x1.fef5368baa990p-1
+-0x1.ffa8a2b9fe667p-2
+0x1.dffc77beb4240p-1
+0x1.eeb121fd09f87p-1
+-0x1.e90be055f4bc5p-1
+-0x1.f41e016289c7cp-1
+0x1.af5152f1a61dap-26
+-0x1.fd48f58baaff1p-1
+-0x1.4b0f8437f1bc3p-1
+0x1.d4cc178e13728p-1
+0x1.ce7265a719e49p-1
+0x1.e9eff57262b39p-1
+-0x1.f13f718045fb6p-1
+0x1.e6bb77d8971e1p-1
+0x1.b551834380757p-1
+0x1.da0f873b6aa41p-1
+0x1.f142b0d6cd227p-1
+0x1.e9ab41fff09b7p-1
+0x1.942ed2f7475d2p-2
+-0x1.bb5fe6c2388bcp-20
+-0x1.a2e262533502fp-4
+0x1.dd9583ec5db42p-1
+0x1.90fad5e8a6031p-1
+-0x1.0373e4dddeb2ap-2
+0x1.fd2901f3c9671p-1
+-0x1.b260a79be9a1bp-6
+-0x1.984e45ef80148p-1
+0x1.5356962ebfc1cp-1
+0x1.571e352fdd0f0p-2
+0x1.f89e41aa2fad5p-1
+-0x1.e6a1f419a0176p-1
+0x1.e2d58615983eap-1
+0x1.ded7b522b64c3p-1
+0x1.db41972b5b7e1p-1
+0x1.1b0912987dcf2p-3
+0x1.e1d26340eb5b3p-1
+0x1.209d16e918bdfp-1
+0x1.9d1bd742b6cd9p-1
+0x1.d8ce209dfe849p-1
+-0x1.d12fc215483dfp-9
+-0x1.a4c0d4697fa72p-1
+0x1.617954103f059p-2
+0x1.3137f5baf9af4p-1
+-0x1.507947ccbeeb1p-1
+0x1.b292e4143ab7fp-1
+0x1.d82640b61d4f4p-1
+-0x1.5fe5b15734ccdp-16
+0x1.f2d0e2931043bp-1
+0x1.2fd917731a612p-22
+0x1.f48e103407199p-2
+0x1.7e2db343d2518p-6
+0x1.49aec36586d2dp-1
+-0x1.06ef250e87d2dp-9
+-0x1.dce7e25ee3f06p-1
+-0x1.f9667561ea716p-1
+0x1.ef305027835abp-1
+0x1.fda044b85c0c4p-1
+0x1.e184b71badf21p-1
+-0x1.8f7ec3e278b93p-3
+0x1.f09ed78d95c96p-1
+0x1.db5114278e29ap-1
+-0x1.a56dd3341013ep-3
+0x1.dc3843f1a56fep-1
+0x1.2038f78b9bcc0p-2
+-0x1.acd041b591f89p-1
+0x1.e739901525d14p-1
+0x1.e6ab002c0fd58p-1
+0x1.ea88c7564fe3cp-1
+0x1.fc9c210385ec5p-1
+0x1.300c178b2707bp-2
+0x1.64adc3a6fd19ap-1
+-0x1.fd26d46627291p-1
+-0x1.50b1823ecd041p-1
+-0x1.0460742bc8cdbp-1
+0x1.ee1d52dfb4db7p-1
+-0x1.f8df26ac867ecp-1
+-0x1.101697bd3de35p-3
+-0x1.f08df75686ba5p-1
+-0x1.ace67097f9affp-2
+0x1.e8d044bdd2df4p-1
+0x1.f567c745b44b1p-1
+-0x1.293da15462edcp-3
+-0x1.ff6a619be98e6p-1
+0x1.870715d5a6b13p-3
+-0x1.0c6132d48b23ap-1
+0x1.bfcac730c5b46p-20
+-0x1.eede64d01dd85p-1
+0x1.4a0014931f1a7p-1
+0x1.c04bc2fc8d9a7p-1
+0x1.2ab9e2f378d0ap-3
+0x1.5fd3677becabcp-2
+-0x1.28cef33a72793p-1
+-0x1.b17535ce5f5e3p-1
+0x1.126fb704975d2p-2
+0x1.f5e136218d473p-1
+0x1.922b42c5e0ed7p-19
+0x1.ace8606018cd4p-1
+0x1.2b74811bfc23dp-2
+-0x1.ef2a370ffe51ep-1
+0x1.f9f6a148adee0p-1
+0x1.f4021476db864p-1
+0x1.95f375fe34bb5p-23
+0x1.eca2876cca9d0p-1
+0x1.d7351318c57d6p-20
+-0x1.c5b4f73fa50c8p-25
+-0x1.c94d46e4a466ap-1
+0x1.901222b3eb03fp-1
+-0x1.f2f094f1075f9p-1
+-0x1.f86a7137c57dcp-1
+-0x1.8e3c37a819136p-3
+0x1.4ec1702690f49p-1
+0x1.7af330368dd58p-11
+0x1.84a1865b3e5f0p-1
+-0x1.e4e0305c7b1bbp-1
+0x1.ff49a7d7f6d62p-3
+0x1.f2bad6b8e3ad9p-1
+0x1.ff22f34c30d58p-1
+0x1.eff9a7f819fecp-1
+0x1.c32c91193429cp-13
+0x1.5d40255ad5479p-2
+-0x1.841801a2f578cp-1
+-0x1.dbd584ff2c565p-1
+0x1.a291c450afde5p-1
+0x1.eae6f79c5a22bp-1
+0x1.e6a5815c8e911p-1
+0x1.effbb6d1ea58dp-1
+-0x1.7b2d0222d18edp-1
+-0x1.629942502fa18p-2
+0x1.4d83c5fd055fap-1
+0x1.878e4270d439cp-1
+0x1.e9d9730db6039p-1
+-0x1.1e06e6cea4258p-2
+0x1.f65ff39e90426p-1
+-0x1.cdb98479835c6p-9
+0x1.d768f6851ecbcp-1
+0x1.f69e2232d6a42p-1
+0x1.ec53932232948p-1
+0x1.f67aa7a0b8826p-1
+-0x1.fabca4ba5ef23p-1
+0x1.ee69c2e52baf8p-1
+0x1.26f0054eb2e0ep-2
+0x1.0713f52f5375ep-2
+-0x1.cbe100e36ed62p-1
+-0x1.40a8260114e62p-1
+0x1.f3063795bb159p-1
+0x1.c716b64d97f72p-1
+0x1.8981a41813d96p-3
+0x1.d7c1209925c7ap-1
+-0x1.ff581104611a1p-1
+0x1.0c85d2b6d6e9dp-1
+-0x1.8e8714dc38c74p-20
+-0x1.b03cb5319aa16p-1
+0x1.d72834d33b477p-1
+-0x1.f01b11376becdp-1
+-0x1.415a16a005c76p-20
+-0x1.fe90e5f9be415p-1
+0x1.dde612d789020p-1
+0x1.d9f3738b76c1fp-1
+0x1.db5327bba31b5p-1
+0x1.adc4400d2246cp-22
+-0x1.ff88333427dbap-1
+0x1.eb26276420df2p-1
+-0x1.b6c7247c84ca1p-2
+0x1.e02a848a05a70p-1
+0x1.043b03cb8172fp-3
+-0x1.33d676f26127ep-3
+-0x1.7608255d04435p-3
+0x1.04f80268e9ce1p-1
+0x1.464bc0a199508p-1
+0x1.29ef60c6d1649p-2
+0x1.ee97e455401a2p-1
+-0x1.fd9ed1b43f715p-1
+0x1.eb715394fd91dp-1
+0x1.d7233283a8bd9p-3
+-0x1.1df410fa478c5p-1
+0x1.d594f6ab26103p-3
+0x1.a08f83fd80dc8p-1
+-0x1.de90b76d413e4p-3
+-0x1.6084126e687f0p-8
+-0x1.ff9375ff924dap-1
+0x1.eaef2277ad27bp-1
+-0x1.567a6656d28acp-1
+0x1.db239524e4064p-1
+0x1.ea15917f3ccbdp-1
+-0x1.aecd11f1ad305p-1
+-0x1.3f3391d575ab0p-1
+0x1.2065b112d45b7p-1
+0x1.eefeb58f716edp-1
+-0x1.752456499480ap-2
+0x1.f628431ac8afbp-1
+-0x1.d4f5807797fcdp-3
+0x1.52b317a0f2bb4p-2
+-0x1.36be46b7fbb08p-2
+0x1.e57282515307ap-1
+0x1.8cb3963d2de1dp-1
+0x1.f86d8777ff85dp-1
+0x1.dbec93d39559cp-1
+0x1.ef15079437d86p-1
+0x1.9912915e0e9d2p-1
+0x1.eddfa64b338bcp-1
+-0x1.05d235555bca1p-1
+-0x1.fb398088adb40p-1
+-0x1.8529e4f0cd31ap-6
+-0x1.daf8854d3e5e7p-1
+0x1.562e8760fd24dp-1
+-0x1.2bb627405320cp-3
+-0x1.dbbe424b49782p-1
+0x1.db7c6724b9b5cp-1
+-0x1.86c5e771c6e89p-1
+0x1.eb6cc05b2299fp-1
+0x1.cbdfe416b513ap-16
+0x1.e80bd7a912478p-1
+0x1.e20654791ee42p-1
+0x1.e7c99604f72c5p-13
+0x1.e384454b782e3p-1
+-0x1.2f821736b5783p-1
+0x1.ec2dc7a3f7b9ap-1
+-0x1.f58cb69431ff8p-1
+0x1.291eb281d5031p-2
+-0x1.22d8d0d689c58p-2
+0x1.edae94523b924p-1
+-0x1.dc31f75dbd8bap-1
+-0x1.f41750df779c1p-1
+0x1.1dbe97dccb13ap-24
+0x1.fb352364b9b84p-1
+-0x1.2f5617c2cdd47p-1
+0x1.69d035f7a7ee7p-8
+0x1.72e2e6f704395p-8
+0x1.f86e40ec67bd7p-1
+-0x1.d74544791ed55p-3
+0x1.ee79c2eaca96bp-1
+-0x1.97f484b97f423p-1
+0x1.ecca71ea821fbp-1
+0x1.cb2254385c652p-1
+-0x1.e83561b46f5e8p-1
+0x1.bd9f3198d30dep-25
+0x1.e9e7b30a7666fp-1
+0x1.b768a1d09af67p-3
+0x1.0345e3f133efep-2
+0x1.b45fb3fc48819p-1
+0x1.426bd7fd10932p-1
+-0x1.57e6c01243fa0p-1
+0x1.1f4821c5d7096p-1
+-0x1.de19b73619e5dp-1
+0x1.53cb05c92ecbfp-1
+0x1.90754146fad63p-1
+0x1.4973979c27e9cp-2
+0x1.ae33e7c0fbf30p-4
+0x1.e032e42a2040ep-1
+-0x1.ea40a3cab079fp-1
+-0x1.6907e6c0916a9p-1
+-0x1.1c59c6555ce1ep-3
+-0x1.12fce6ee5e120p-3
+0x1.747724780a0a7p-1
+-0x1.3c6f734ef61e6p-1
+0x1.dcd584c6d27cbp-1
+-0x1.c27d81c83efabp-1
+0x1.d990c3dac50c1p-20
+0x1.a3c463d5b6e67p-1
+-0x1.0820a1102e865p-1
+-0x1.ab2a1549ea8ebp-3
+0x1.dcde36cbc878bp-1
+-0x1.42374083a3e0fp-4
+0x1.ef0c857a36fa3p-1
+0x1.e9e3a68ecccb7p-1
+0x1.7f05d2127fea2p-1
+0x1.e87935312ca1ap-1
+-0x1.eb7110ff0f66ap-1
+-0x1.c15fb366cfcf9p-1
+0x1.f08de63d6483ep-1
+-0x1.c72931d050543p-6
+0x1.1cb62361bff83p-2
+0x1.22db1186e6583p-10
+0x1.e862d28475fb9p-1
+-0x1.727515872cde2p-25
+0x1.1a80e5cb79b32p-14
+-0x1.c48fc05bc06adp-1
+0x1.ef6a04b724d4ap-1
+-0x1.70ba1780348d9p-1
+0x1.e68fd1d34efdcp-1
+-0x1.edbeb6d147be3p-1
+-0x1.ffb8054bd5bb2p-1
+-0x1.205784cd6e44ap-1
+0x1.b9eea1cf61152p-8
+0x1.ead9f4facbad9p-1
+0x1.41f1177f3aa4dp-3
+0x1.1cb3c7898c6c5p-21
+0x1.3b9562043baf3p-2
+0x1.9a03f093bbf71p-1
+0x1.22d245b843dc6p-1
+0x1.fe6b7655a7c27p-1
+-0x1.f53d46b53474cp-1
+0x1.edc8174da0475p-1
+0x1.453ef06515377p-1
+-0x1.cf39e3a140966p-3
+0x1.b3870738c9a7fp-1
+0x1.c03ff7b9aa3ccp-1
+0x1.d88de462de411p-1
+0x1.907531b1ec30bp-1
+0x1.e807c59e08986p-1
+0x1.d01ee7e80196dp-1
+0x1.eb29729cac7d4p-1
+-0x1.9b6ff25e8b37bp-1
+0x1.06cb55e19f50bp-1
+-0x1.c969c47d61594p-2
+0x1.2f8fd229e5a28p-1
+0x1.ec5d65428be39p-1
+0x1.e3f1f13dd3842p-1
+-0x1.6fdf45f0448e4p-1
+0x1.c693d3e0c3d93p-1
+0x1.ec2b351c3d553p-1
+-0x1.023bb65902175p-2
+-0x1.e41b13bb1ae98p-1
+0x1.ed5233df8f1b0p-1
+0x1.d3745523a5b72p-3
+0x1.b11183467f9f4p-1
+0x1.f96977e343f28p-1
+0x1.647e07d72c3ccp-1
+-0x1.dd7b40d163147p-1
+0x1.a955c3158f95ap-3
+0x1.ddbbe2e244b52p-1
+-0x1.dd9476201ab1ep-1
+-0x1.c173b1455120cp-10
+-0x1.4849770c21219p-1
+-0x1.e9c224c0132f3p-1
+-0x1.9c7115f5fa7edp-23
+-0x1.ededb18a270f5p-1
+-0x1.dc41f5d54e145p-1
+0x1.f260631aa28c5p-1
+0x1.dd80538515b09p-1
+0x1.e45ea178c9b30p-1
+0x1.d98ee1fe8fa72p-1
+0x1.ec3b7502ba31bp-1
+0x1.9202f7b61b23cp-1
+-0x1.e90160c48172dp-1
+0x1.029cb182129c5p-1
+-0x1.ecf921278c665p-1
+0x1.f1df6352de955p-19
+0x1.e820a1d008c40p-1
+0x1.cf1bc071e7b1dp-13
+-0x1.a7f9c47f84b4bp-11
+-0x1.91d2b301a130ep-6
+0x1.eb7e233b26b9cp-1
+0x1.5285126c10af6p-11
+-0x1.413ff2f91c7e0p-1
+-0x1.909622a8afce0p-9
+0x1.91f83092eaa5bp-1
+0x1.e9f0072632510p-1
+-0x1.4291a2d3c6a6ep-1
+-0x1.91a7814a1afe7p-2
+-0x1.f2e5c1ddfca4dp-1
+0x1.4ed7f0ccb3beap-1
+-0x1.56758387f3eb7p-1
+0x1.0817c57f66fd7p-1
+0x1.92ba54b90cb1fp-1
+0x1.8393d0a315e11p-1
+-0x1.ebf5435363845p-1
+-0x1.182971e71f1c4p-25
+0x1.30bad35036ebep-1
+0x1.e6a7c48aae965p-1
+0x1.5c09f0643688cp-1
+0x1.bdb701415b22ap-1
+-0x1.80b045165e5bep-1
+0x1.ec2a609f9c95bp-1
+0x1.fdf1358d71fa7p-1
+0x1.f38ae51ef650dp-1
+0x1.c3b5220ba05abp-2
+0x1.64e7b7d518cdap-16
+0x1.e3172710f85acp-1
+0x1.c3d957db61cd0p-16
+-0x1.76789202c62c6p-10
+0x1.b9314508fdd23p-1
+0x1.fbc7e244da846p-1
+-0x1.feea04702b990p-1
+0x1.c77664b2ebec3p-1
+0x1.eb18f40a3c0a1p-1
+0x1.f3d57719d5a66p-1
+0x1.a1b9e5f02c25fp-1
+0x1.d9db75669d2e1p-1
+0x1.85d832f631a51p-2
+0x1.9485a38e25cb3p-1
+-0x1.1afd8636d88a6p-4
+0x1.05798672f5ea3p-2
+0x1.ffe9232e1641fp-1
+0x1.f578d77058051p-1
+0x1.32f086b72fc47p-3
+-0x1.f80cc6c503e0bp-1
+0x1.f28b64ae14d36p-1
+0x1.db3f10c932ea3p-1
+-0x1.fcdff69481c76p-1
+0x1.b0b1822e2d791p-1
+0x1.e47cf5ea94794p-1
+-0x1.edbb01a598c24p-1
+-0x1.f2d2c4f587093p-1
+0x1.d810f191b7661p-1
+0x1.f93393613674ap-1
+0x1.be82e4ac9bddbp-1
+-0x1.0579e7d148859p-8
+-0x1.c7f3c1fdcabf4p-3
+0x1.efad546ed467cp-1
+0x1.fd6a251b4821ep-1
+0x1.0315f5c097414p-3
+-0x1.7db404e004dd9p-1
+-0x1.fdabb5f507142p-1
+0x1.c64fd560d1b67p-2
+0x1.ca0d01c21706dp-1
+0x1.e45216887ff71p-1
+0x1.df2ec764ef6adp-1
+-0x1.8e65606bed199p-3
+0x1.dbc053fc0855cp-1
+0x1.6b8ba297a525cp-1
+-0x1.00882585a29eep-1
+0x1.d353f591637b8p-1
+-0x1.79f546d33544bp-3
+0x1.efa4e409fde87p-1
+0x1.ee1163afd0a03p-1
+-0x1.fad96389524bfp-1
+0x1.e85bb560bc75dp-1
+-0x1.f069332e76f6dp-1
+-0x1.6fb4348faf5c4p-3
+-0x1.ce9367ceb44dap-9
+-0x1.f0a930040729ap-1
+-0x1.505075bc12d92p-16
+0x1.947d6278f2ca8p-1
+-0x1.f086970443d28p-1
+0x1.d025216b99be2p-5
+0x1.dcfa56e705532p-1
+-0x1.f30504c59eceep-1
+0x1.dd52d7e19870ap-1
+0x1.02ddf0359bf9fp-1
+-0x1.4f4065a22973ap-23
+0x1.f40f75a7770a1p-1
+0x1.59ae8671b31e8p-26
+-0x1.536450991d17cp-2
+-0x1.ae0193af9d6a2p-3
+-0x1.27ba2598fa425p-1
+-0x1.77f897e89fff8p-5
+0x1.eff8918d7a81cp-1
+0x1.e8f05228d4ca1p-1
+-0x1.7c509777a588ep-1
+0x1.2176d0b801649p-3
+-0x1.e69f374a699d8p-1
+-0x1.bed374f104cadp-3
+0x1.f3a922a74a827p-1
+0x1.762275548f202p-1
+-0x1.f566226c407c7p-1
+0x1.4cdae1fead7dbp-1
+-0x1.eb4487592a9adp-1
+0x1.edeeb5688f291p-1
+0x1.e99891b04ddafp-1
+0x1.f86cf3b9e83a7p-1
+0x1.c3f7a686c78b0p-2
+-0x1.6150a09268c74p-1
+-0x1.dcee02e875157p-1
+0x1.eb1bf69818892p-1
+-0x1.e5a480f554f3dp-16
+0x1.84afb5f1ed3adp-1
+-0x1.df31c5eae509fp-3
+0x1.ff99528e27db8p-1
+-0x1.e1a5a6243d05dp-3
+-0x1.85fce11104791p-21
+-0x1.fb51005dfdc02p-1
+0x1.dcb463175cfcep-2
+0x1.82519454bb349p-1
+-0x1.fdcdf349a6f25p-1
+0x1.602547dc6ecefp-24
+0x1.bec560986a04ap-1
+0x1.2011857db1424p-26
+0x1.e1eec570b4a79p-1
+-0x1.e77cb3d6aba48p-1
+-0x1.8836556db32e5p-11
+-0x1.e73505baf1ce0p-1
+-0x1.e9d165420d859p-1
+-0x1.ea73d35821c98p-1
+-0x1.fc7083dcfce44p-1
+0x1.4eaa72b0ad80bp-3
+0x1.ee9b055b272f4p-1
+-0x1.fc77850c869d8p-1
+0x1.df2253bc59523p-23
+0x1.ea0197e40cc09p-1
+-0x1.e12937d9b5de6p-1
+0x1.b78007f752b47p-1
+-0x1.caf0a20a2e374p-3
+0x1.403b25eaecdebp-3
+-0x1.f09981083beb5p-1
+0x1.1dfac77800264p-1
+-0x1.f968b772c835fp-1
+0x1.4183f2511d03ep-1
+0x1.14fe334ed4841p-13
+-0x1.ef68700ccd1ddp-1
+0x1.495424a43a336p-1
+0x1.f9f556f848f73p-1
+0x1.e700764aa6a73p-1
+0x1.c65e964229e7ap-1
+-0x1.e91f7469d5670p-1
+0x1.8d72537de0726p-1
+0x1.d77df54bf42f3p-3
+-0x1.e3f4e3f7cff28p-1
+-0x1.980ec5ab0c67bp-1
+0x1.82b481c2cab01p-1
+0x1.e92fc79dc3af8p-1
+-0x1.84edb030c6673p-1
+0x1.134ed3adb9b89p-1
+-0x1.5b0384147576ap-1
+0x1.ec38f12ad09b0p-1
+-0x1.9d3d5705b61bfp-1
+0x1.e9a5111dca87fp-1
+0x1.5ec077d61d074p-1
+-0x1.8bb177f1b45d0p-1
+0x1.026085634ea4fp-1
+0x1.5dece01fa73aap-1
+-0x1.f282f0325a811p-1
+0x1.4e17a4a822867p-2
+0x1.b710142936fc4p-1
+-0x1.ea74f086de3c2p-1
+-0x1.b5bb322363d88p-1
+0x1.e01382ce9664ap-1
+0x1.ec9d46fe101abp-1
+0x1.e080f6a0dd5a1p-17
+-0x1.dc4d67b50cadcp-1
+0x1.bb0924c1b5c65p-1
+-0x1.e4d98477aac5ep-4
+0x1.ed52a73ea36ddp-1
+0x1.d20927aa97a9bp-3
+0x1.b1865059b9e39p-1
+-0x1.b0caf4d4e58fap-22
+0x1.f1a1076fec8e1p-13
+0x1.6c6f93492c70fp-3
+0x1.adf6648fd1042p-1
+0x1.eff466a400727p-1
+0x1.8e77870756612p-4
+0x1.e4c511850f25dp-1
+0x1.cced71fd52d9ap-1
+0x1.ebb466b23c3bep-2
+0x1.6669639648fa3p-1
+0x1.7302146a6f168p-8
+0x1.350056b6cb901p-2
+-0x1.eede45da2f03ap-2
+0x1.ac0623cd70a73p-1
+0x1.87b2d4dcffaf9p-1
+0x1.edaf06121f8e1p-1
+0x1.e825a4e96f86cp-1
+0x1.168a051460dc0p-1
+0x1.eaa75704957d3p-1
+-0x1.e142463188648p-1
+0x1.d81356fe7e9b0p-1
+0x1.e99b85f839547p-1
+-0x1.f1296188d7fd8p-1
+-0x1.a3b6f7aed0ad8p-1
+0x1.6b0c23fcd3f91p-3
+0x1.dab904f709a95p-1
+-0x1.841256a82781ep-1
+0x1.d26af3ab7517ep-1
+0x1.e325a078e329bp-1
+0x1.8aa5a22125090p-1
+-0x1.b0fb607111e72p-3
+0x1.e45197e7efcdbp-1
+0x1.d9c6b1b971945p-1
+-0x1.5fb6e7f514f55p-16
+0x1.fa1f54af3ad94p-1
+0x1.e8e045abf094fp-1
+-0x1.5b9f05ea1adb3p-3
+0x1.eee721d6726d1p-1
+0x1.f1df37430f58ap-1
+0x1.e58f617f2d384p-1
+0x1.eb68943e2deb4p-1
+0x1.dba9c1307a5c6p-1
+-0x1.edb676b500699p-1
+0x1.cb6e21730fca5p-8
+-0x1.a314d11caa5dfp-1
+-0x1.58d865bce598fp-22
+-0x1.9da4077805769p-1
+0x1.bca24367daca5p-3
+0x1.408035d6251e7p-2
+0x1.8e30509588bc3p-1
+0x1.dac374698d877p-1
+0x1.dc95570330076p-1
+0x1.ed72961c6499fp-1
+0x1.e267d33665809p-1
+-0x1.1fd1b6af697a5p-1
+0x1.b199976061c55p-1
+0x1.640c203fbc506p-1
+0x1.e67287d997f06p-2
+-0x1.e8092359ccf4ap-1
+0x1.479fe3a388580p-3
+-0x1.1c9d850480123p-1
+0x1.f6b3e32b9007ep-1
+0x1.ee40207bb6d7ap-1
+-0x1.3e0fd5ef49ea8p-1
+0x1.48352432fcd1ep-5
+-0x1.488b1538a5682p-2
+0x1.70fc57b129bcfp-18
+-0x1.ee0460d9eea8dp-1
+0x1.262c4237b3aa2p-4
+0x1.24f1f0887a167p-1
+0x1.bc7813a548ecbp-1
+0x1.dd3682e648173p-1
+0x1.1a8247328b1eep-3
+-0x1.461fb55f0c643p-1
+0x1.e89a03c027e50p-1
+-0x1.6445d488fb56fp-1
+-0x1.f30720b9f9272p-1
+0x1.10fef55d9e170p-1
+-0x1.7e6e516a67284p-2
+0x1.803b652c34127p-4
+0x1.23e746d6a07b5p-1
+-0x1.9b0893a2dbf31p-1
+0x1.df6b52d932cacp-1
+0x1.eba142e0d30f9p-1
+0x1.e207a62a59fcfp-1
+-0x1.f59ff5ac905bep-1
+-0x1.2252f1f145275p-1
+0x1.e99bb7a320afdp-1
+0x1.528a81b8c8b43p-25
+0x1.66e7a5c93cffdp-9
+0x1.d8a270540bc22p-1
+-0x1.8d0303f6f1f62p-3
+-0x1.032112989c73fp-1
+0x1.edd9f404d15d9p-1
+-0x1.d8e2928b59a29p-1
+0x1.e9fbd325bdd05p-1
+-0x1.f6c115f45ea83p-1
+0x1.9dbc024e5215bp-1
+0x1.ea052157d8d3dp-1
+0x1.e97b1034a0d7cp-1
+-0x1.3868c3fb4119cp-3
+-0x1.6547c3be6a0acp-3
+-0x1.f0f7210f0ebc5p-1
+0x1.dbd1b3d836677p-1
+-0x1.87ba7548c0c70p-1
+0x1.f32ba685b010ap-2
+-0x1.5707a4571ae80p-19
+-0x1.190106b7f25c8p-3
+0x1.b1b2b37a33650p-6
+0x1.b7da5623c2a54p-1
+0x1.a12f204462a9dp-1
+-0x1.8e33904e6f50ep-3
+0x1.bac7d494af41dp-1
+-0x1.5bd7769cc02b9p-6
+0x1.e2549512a7f87p-1
+0x1.a34fb7f76f669p-1
+-0x1.fc4f82b958521p-3
+0x1.f03885d69275dp-1
+0x1.93c937306bc8dp-1
+0x1.ef66f0124ea6fp-1
+0x1.8683e2fd856ebp-1
+-0x1.00e2e49d1662bp-1
+-0x1.240eb5bacc34ap-15
+0x1.f782b34dadcd6p-1
+0x1.685494fdc570dp-16
+0x1.f6f324645f159p-2
+0x1.f1fc5526b9729p-1
+0x1.941db204468a9p-1
+-0x1.fb8797543c4b1p-1
+-0x1.f19ce1482169bp-1
+-0x1.e83cf6df11013p-1
+0x1.ec0474051022dp-1
+0x1.9b0074ea40e80p-1
+-0x1.b110618fb5339p-1
+0x1.e310d4b197c1dp-1
+0x1.3e4a143f9f023p-1
+-0x1.c3dc834396667p-24
+0x1.72d485fe0970ap-2
+-0x1.4792b4bea367fp-3
+-0x1.fb6f90001c47fp-1
+-0x1.563f503456ca4p-6
+0x1.f49c77ef6eec4p-1
+-0x1.f3f604ec44843p-1
+0x1.e5b073ba13507p-1
+0x1.dfcd37b56a082p-1
+-0x1.ec7c15c1bc9b7p-1
+-0x1.f3e33346bb4dfp-1
+-0x1.70bea3753575bp-1
+0x1.0ad654e7bcdb2p-1
+0x1.d84772ae3d0c8p-1
+0x1.db9382f54f801p-1
+-0x1.3a0d506141a45p-5
+0x1.decef09b22fd6p-1
+0x1.e990941dd115ap-1
+-0x1.4ac55461df70ep-1
+0x1.caba758c29af2p-1
+0x1.e8b807c00d6bcp-1
+0x1.fadb16bea03d0p-1
+0x1.7b8f62c69b8a2p-13
+0x1.db1814c6b7c5cp-1
+0x1.d8a437361ed5ep-1
+0x1.f044936247105p-1
+-0x1.f29923dbc3facp-1
+0x1.ede3135347315p-1
+0x1.ecb6a131593d5p-1
+0x1.69be27f5085c2p-2
+0x1.d87e91b7e07b7p-1
+0x1.3e1573b76d74cp-13
+-0x1.7110638b16bc4p-1
+-0x1.2b60914429455p-2
+-0x1.45e0c3984738ap-3
+0x1.042141ca2ed6cp-18
+0x1.384f45b294648p-1
+0x1.feba34573e769p-1
+-0x1.ea047532c3043p-1
+0x1.fbe731d9f7db8p-1
+0x1.b7b916674f33fp-1
+0x1.fb43d2c826ee8p-1
+0x1.df7c8777dba5ap-1
+0x1.ed5ea12bfef39p-1
+-0x1.638ad761f476ap-1
+0x1.fc4bf5179e5d6p-1
+0x1.e3b6708ecfee8p-1
+0x1.dbce065bbf8a3p-1
+0x1.7ce703c2bf2a6p-1
+-0x1.ea19b32b1c2dfp-1
+-0x1.fa1886281c79bp-1
+0x1.40057632df635p-3
+0x1.be3342c4dacb3p-1
+0x1.e20274fe208a9p-1
+-0x1.e15a87fb65354p-1
+0x1.f9c7e2ecd680bp-13
+0x1.e3c93361c3a97p-1
+0x1.f0aa055bc4ec5p-1
+0x1.1d7f011b0caa7p-1
+0x1.27ef5716d9743p-1
+0x1.0109b001e0b16p-1
+0x1.06fcb4f915884p-1
+0x1.d912e662c11fdp-1
+0x1.f459c0e5d6307p-1
+0x1.33b182a9dd437p-7
+0x1.f050a642bbd28p-1
+0x1.67dd05510a128p-1
+0x1.f508c0df81a84p-1
+0x1.dc24f6d5d88e9p-1
+-0x1.1de410116c6abp-3
+-0x1.ce8021cd33ff0p-20
+-0x1.df8e14d8335ccp-1
+-0x1.d944534af1d02p-1
+-0x1.7a7641865ee08p-1
+0x1.0a79566e358dcp-2
+0x1.e1ddb24870183p-1
+0x1.0be5106302396p-1
+0x1.e84a706f6d265p-1
+-0x1.fb54f05a586f3p-1
+0x1.d7f7810bbad7cp-1
+-0x1.e911418959876p-1
+-0x1.eef2e7388b0b8p-1
+-0x1.096cd55dea973p-2
+0x1.e3edc46730656p-1
+0x1.1f999553c9965p-1
+0x1.53bff03662b79p-1
+0x1.cc4591ffd8c8fp-1
+0x1.32edf494b513fp-1
+0x1.f92963d71b0a5p-1
+0x1.ca73a41b238a2p-1
+0x1.a08fc5e1724bfp-1
+0x1.3e603689d203ap-1
+-0x1.995221a7cd650p-1
+0x1.dee8b256137cdp-1
+-0x1.053fb553b89f8p-1
+-0x1.496161b184764p-1
+0x1.eb38128f82439p-1
+-0x1.f613a094bcd5bp-1
+0x1.d97577265ac94p-1
+0x1.b2613742a87f2p-1
+-0x1.9ae634697f924p-2
+-0x1.fc2075806621dp-1
+0x1.e0a975f696bc8p-2
+0x1.f6f6b7b5834b8p-1
+-0x1.fe1f228d0b462p-1
+0x1.f70a91841af44p-1
+0x1.e2f9c07852f70p-1
+0x1.7273722e70f48p-2
+0x1.db9c019d4ecbbp-11
+-0x1.59ab151c1482cp-1
+-0x1.c2a3b1d7f7890p-1
+0x1.e700830d53942p-1
+0x1.6324a18a48715p-1
+-0x1.f8d06493cf734p-1
+0x1.f80b9422bce4ap-6
+-0x1.23b475322f69dp-9
+0x1.25489233b69fep-3
+0x1.a305e63ca5b92p-1
+-0x1.ff6614d7db93dp-1
+0x1.52b3468ba247fp-19
+0x1.f631f6454296ap-1
+-0x1.0ccec227b1aa8p-1
+0x1.1c0a50f58ee7ep-1
+0x1.eb1881275a5fap-1
+0x1.e5a3c6b686c17p-1
+-0x1.5abd34f01cc55p-25
+0x1.91744378d312fp-25
+0x1.e31933dfcae5ep-6
+0x1.560a94c69898dp-28
+0x1.4ede34c4c5b9cp-39
+-0x1.b5caf13967673p-28
+-0x1.d242039676722p-32
diff --git a/benchtests/libmvec/acospif-inputs b/benchtests/libmvec/acospif-inputs
new file mode 100644
index 0000000..820af94
--- /dev/null
+++ b/benchtests/libmvec/acospif-inputs
@@ -0,0 +1,2710 @@
+## args: float
+## ret: float
+## includes: math.h
+# Random inputs in [-1,1]
+## name: workload-random
+0x1.f1ee7p-1
+-0x1.cb4208p-2
+-0x1.4355b4p-1
+-0x1.08de7cp-1
+0x1.8da878p-2
+0x1.2fda9p-3
+-0x1.0a37b8p-3
+0x1.c88b84p-1
+0x1.d983dp-2
+0x1.aed83cp-1
+-0x1.9b639ap-1
+0x1.4781ep-2
+-0x1.e43f8p-6
+-0x1.3a88ap-3
+-0x1.eee378p-3
+-0x1.dedfdp-3
+-0x1.16090ap-1
+0x1.fddc9p-2
+-0x1.75d528p-1
+-0x1.31dc34p-1
+-0x1.b2f668p-2
+0x1.c5a758p-1
+-0x1.20936p-5
+0x1.f549f8p-2
+0x1.0b0998p-1
+0x1.904e3cp-1
+0x1.e8ede8p-2
+0x1.9372fcp-1
+0x1.21127p-2
+0x1.a412ap-1
+0x1.69eb5p-3
+0x1.f0e0a8p-1
+0x1.d11aep-2
+0x1.47b1ecp-1
+0x1.5714p-3
+0x1.3f329cp-1
+-0x1.ef5cep-5
+-0x1.a4f52cp-2
+0x1.8c9ff8p-1
+0x1.7da15p-1
+-0x1.ac1b5p-2
+-0x1.09a548p-1
+0x1.6e2c9p-2
+0x1.afbef8p-2
+-0x1.c7513p-1
+0x1.fa4938p-1
+0x1.fd1da8p-2
+-0x1.63276cp-1
+-0x1.94062p-5
+0x1.0dde54p-1
+0x1.8e8ccp-5
+-0x1.227decp-2
+-0x1.0afb7p-3
+0x1.8f9bfp-3
+-0x1.820e4p-4
+0x1.99cc84p-1
+-0x1.24b324p-2
+-0x1.d148cp-4
+-0x1.6b331p-4
+-0x1.7f1838p-1
+0x1.a7eed8p-2
+-0x1.1f9cap-1
+0x1.140c8p-2
+-0x1.6008e8p-3
+-0x1.f1d9ep-3
+-0x1.0bbce8p-2
+0x1.057034p-1
+-0x1.683734p-2
+-0x1.a30048p-2
+-0x1.ce0618p-3
+-0x1.8eb79p-2
+0x1.f109e8p-2
+-0x1.78ffe8p-3
+0x1.6e4784p-1
+-0x1.255b48p-2
+-0x1.b4773cp-1
+-0x1.a9d314p-2
+-0x1.b3fa8p-4
+-0x1.17f908p-1
+0x1.e085bp-1
+0x1.677fcp-3
+0x1.5f773p-3
+-0x1.c9f66p-2
+-0x1.cf66p-3
+-0x1.dfd684p-2
+0x1.e95b08p-2
+0x1.6985bp-2
+0x1.3cdf28p-2
+-0x1.8841p-3
+0x1.473aap-4
+0x1.90bd3cp-1
+-0x1.3aaa28p-1
+-0x1.0d3c6p-3
+0x1.afc904p-1
+0x1.879a2p-4
+-0x1.1289eep-1
+-0x1.335e5p-1
+-0x1.37b82cp-2
+-0x1.e5bef4p-1
+-0x1.9919ep-3
+0x1.1ab8fp-3
+-0x1.8ee2cp-2
+-0x1.355b9cp-1
+0x1.db5ef8p-2
+0x1.0f8cep-3
+0x1.b8ebdp-3
+0x1.e9878p-5
+-0x1.01d574p-1
+-0x1.76c9cp-3
+0x1.37b2acp-1
+0x1.8a6a8p-3
+-0x1.0146d8p-2
+-0x1.33114ep-1
+0x1.17e52p-3
+0x1.2b3f7p-2
+-0x1.77f646p-1
+-0x1.63d908p-2
+-0x1.3a5658p-3
+-0x1.bd65fcp-2
+-0x1.9f3874p-2
+0x1.1c042p-4
+-0x1.c6099p-2
+0x1.13eddp-3
+0x1.73181p-1
+-0x1.819b34p-2
+-0x1.c172a2p-1
+-0x1.1c37a4p-2
+0x1.caccep-1
+-0x1.6d09c8p-3
+-0x1.9a5c38p-2
+-0x1.68e67p-2
+-0x1.6e74f8p-1
+0x1.fea67p-1
+0x1.cbe908p-1
+-0x1.95487p-3
+-0x1.8a4ef8p-3
+-0x1.1b7ffp-4
+0x1.252c9p-3
+-0x1.af3b6cp-1
+-0x1.de9acp-4
+0x1.3434c8p-1
+0x1.a3cb88p-2
+0x1.cc5e14p-1
+0x1.9141ep-4
+-0x1.2733fp-1
+-0x1.a2b228p-1
+0x1.2f4b78p-2
+-0x1.095104p-1
+-0x1.5838f4p-2
+-0x1.04bf64p-1
+-0x1.7ab13p-2
+-0x1.21fedp-1
+0x1.371abp-2
+-0x1.1dfa7ep-1
+0x1.2baa78p-1
+0x1.a8e2dp-3
+-0x1.8f6fep-5
+0x1.00fe0cp-1
+0x1.b52634p-1
+0x1.f73c7p-3
+0x1.e2f354p-1
+0x1.8334dp-3
+-0x1.21d018p-2
+0x1.349a2p-4
+-0x1.7fecp-1
+0x1.94a1a8p-1
+-0x1.ba51c8p-3
+-0x1.c5ab08p-2
+-0x1.ca7c5ap-1
+0x1.6353dp-2
+-0x1.5e5708p-1
+0x1.4c8c1p-1
+-0x1.544b58p-1
+0x1.552bc8p-2
+0x1.843058p-2
+0x1.2083dcp-1
+-0x1.c625ap-2
+0x1.8cb86cp-1
+-0x1.770cf4p-2
+0x1.41387p-3
+-0x1.e4214ep-1
+0x1.91536p-3
+0x1.00b258p-2
+-0x1.051b2p-1
+0x1.e69fd8p-2
+-0x1.9b368p-5
+0x1.9f7008p-2
+-0x1.2122ecp-2
+-0x1.b13cb4p-1
+0x1.677ap-4
+0x1.928f6p-1
+-0x1.4b5b6ep-1
+0x1.53b258p-2
+-0x1.da2438p-2
+0x1.78cc68p-1
+0x1.f5a6c8p-1
+-0x1.bcbb3ap-1
+0x1.c5affp-1
+-0x1.392b4p-1
+0x1.ec4c6p-3
+0x1.7b5p-10
+-0x1.411834p-2
+0x1.668a7cp-1
+0x1.acd5e4p-1
+-0x1.f74236p-1
+0x1.7376a8p-2
+-0x1.d6a2fp-2
+0x1.19c4cp-4
+-0x1.4bc264p-2
+0x1.f3cp-4
+-0x1.242cecp-1
+0x1.74246p-2
+-0x1.c042e4p-1
+-0x1.449ef4p-1
+-0x1.d6cb26p-1
+0x1.c2c154p-1
+-0x1.c19818p-2
+-0x1.c1188p-3
+0x1.80606p-4
+-0x1.5d25p-4
+0x1.397b8cp-1
+-0x1.7a4b7cp-2
+-0x1.258fdp-3
+-0x1.070d7cp-1
+-0x1.8feb8p-4
+-0x1.7066b8p-1
+0x1.dba238p-2
+-0x1.a4b166p-1
+-0x1.8eb868p-3
+0x1.258adp-3
+-0x1.1d7078p-1
+0x1.d9e09p-2
+-0x1.0c66dp-4
+0x1.7e683p-1
+0x1.7759ap-2
+0x1.c9d96p-1
+-0x1.a9918ep-1
+0x1.83fd5p-2
+-0x1.5cd2p-9
+-0x1.eb01e2p-1
+0x1.3157e4p-1
+0x1.dd90cp-5
+-0x1.014668p-2
+0x1.3ce208p-1
+0x1.87b398p-1
+0x1.ea2e78p-1
+0x1.731d68p-1
+0x1.560cbcp-1
+-0x1.b157ep-1
+-0x1.d4b98p-6
+-0x1.d8921cp-1
+-0x1.232d6p-3
+-0x1.2c90ep-2
+-0x1.bdd41p-3
+-0x1.205b7p-1
+0x1.787b8p-2
+0x1.ed3308p-2
+-0x1.342684p-1
+-0x1.c59824p-2
+-0x1.3a3c28p-1
+-0x1.1e8524p-1
+0x1.39d9e8p-1
+0x1.b41cfp-1
+0x1.41b08p-6
+-0x1.63b134p-1
+-0x1.f95978p-2
+0x1.696a88p-2
+-0x1.05219p-3
+0x1.ac14a4p-1
+-0x1.d40de8p-2
+-0x1.bac462p-1
+0x1.ad8e88p-2
+0x1.16658p-5
+-0x1.812b6p-4
+-0x1.f9f29ep-1
+0x1.c96e54p-1
+0x1.502c78p-2
+-0x1.b35f22p-1
+-0x1.4c9cf8p-1
+0x1.1a640cp-1
+0x1.4dcep-2
+0x1.5e7f14p-1
+0x1.3aca7cp-1
+0x1.45d28p-4
+0x1.30e1f8p-1
+-0x1.162274p-1
+-0x1.5f8724p-1
+0x1.b1a29p-2
+0x1.36bd28p-2
+-0x1.8ed47cp-1
+-0x1.f6aa24p-1
+-0x1.53caa8p-2
+0x1.1f982cp-1
+-0x1.0baaep-5
+-0x1.04fep-1
+0x1.737af8p-2
+0x1.8085bp-3
+0x1.d8d41cp-1
+-0x1.f4f464p-2
+-0x1.7eae48p-1
+0x1.15dd4p-2
+0x1.d067ep-4
+-0x1.9e68ep-3
+0x1.c70f98p-1
+0x1.7be43p-1
+-0x1.c2ebap-5
+0x1.32e99p-3
+-0x1.579fecp-2
+0x1.3adc24p-1
+0x1.b593f8p-1
+-0x1.3d4b48p-1
+-0x1.07e4b6p-1
+0x1.fcdcd8p-2
+-0x1.c4bfp-3
+0x1.92ac54p-1
+-0x1.905d3p-4
+-0x1.417494p-2
+0x1.33d0ecp-1
+-0x1.10de8p-1
+0x1.ad96cp-3
+0x1.3d28ep-2
+-0x1.41cb8cp-1
+0x1.2a1174p-1
+0x1.3613fp-3
+-0x1.ce84a2p-1
+-0x1.3873a4p-1
+0x1.288704p-1
+-0x1.5d93dep-1
+0x1.2ee7ccp-1
+-0x1.a57ed2p-1
+0x1.0165ap-1
+-0x1.c32d7p-4
+-0x1.e2ea08p-3
+0x1.d3c37p-3
+-0x1.fc674p-6
+0x1.c5592p-1
+0x1.85ab2p-3
+-0x1.d150acp-2
+0x1.82b378p-1
+0x1.50135p-2
+-0x1.85412p-4
+0x1.730d9p-3
+0x1.575ffcp-1
+-0x1.c9f9e4p-1
+0x1.78754p-4
+0x1.375dfp-1
+0x1.4e18d4p-1
+0x1.73bfp-2
+-0x1.01258p-3
+-0x1.d5ce88p-1
+-0x1.a3a3c8p-2
+0x1.186dd8p-1
+-0x1.006ddp-1
+-0x1.8b6f68p-3
+0x1.8ebep-3
+-0x1.031746p-1
+-0x1.83aea8p-1
+0x1.48e894p-1
+-0x1.d88e4p-2
+-0x1.f096aep-1
+0x1.90a66cp-1
+-0x1.f1800cp-1
+0x1.1343e8p-2
+0x1.660e3p-3
+-0x1.713eb4p-1
+-0x1.3605a8p-1
+-0x1.2b0e74p-1
+-0x1.760b5p-4
+-0x1.1fc02p-2
+0x1.58e5e8p-1
+0x1.8d6dap-3
+-0x1.0ed316p-1
+-0x1.4cd43ap-1
+-0x1.b0a6fp-2
+-0x1.bfa28ap-1
+-0x1.ed2668p-3
+-0x1.f2cf22p-1
+-0x1.bd51ap-5
+0x1.08111p-2
+0x1.f1573p-1
+0x1.18d938p-2
+-0x1.7d4b6p-5
+-0x1.a7014ep-1
+-0x1.141464p-1
+-0x1.e5fe88p-2
+0x1.e55034p-1
+0x1.eb7268p-1
+-0x1.45675ep-1
+0x1.1f94dp-3
+-0x1.1b09p-1
+0x1.438cap-4
+0x1.c5a448p-2
+0x1.14e6dp-3
+0x1.5748p-8
+-0x1.80711cp-2
+-0x1.600c98p-2
+-0x1.d9243p-1
+-0x1.0c05dp-2
+0x1.ba0368p-2
+0x1.79c8ep-3
+0x1.a75d28p-2
+-0x1.3cc51p-1
+0x1.050d3p-3
+-0x1.2d238cp-1
+0x1.0ef934p-1
+-0x1.88a846p-1
+0x1.2c27b8p-1
+0x1.23c37p-3
+-0x1.e3889p-3
+0x1.da721p-2
+-0x1.c9dd7cp-1
+0x1.65064cp-1
+0x1.28440cp-1
+-0x1.12124p-2
+0x1.afc6d8p-2
+-0x1.477fap-5
+-0x1.cb73d6p-1
+0x1.7062cp-5
+-0x1.577bbap-1
+0x1.d136ep-1
+-0x1.8b2c74p-1
+0x1.7cfc1p-3
+-0x1.7dd08p-7
+-0x1.40d214p-2
+-0x1.5da328p-1
+0x1.96362p-2
+-0x1.e1cd1p-4
+-0x1.5db6d8p-1
+-0x1.7f3732p-1
+0x1.d885ecp-1
+0x1.1b8acp-2
+0x1.9d6d2p-1
+-0x1.c9aa3p-2
+-0x1.86d338p-3
+-0x1.3920bp-3
+0x1.bc15acp-1
+-0x1.131868p-1
+0x1.dac8c8p-1
+0x1.cb7cb8p-2
+0x1.a93fcp-3
+0x1.bb58ap-1
+0x1.db804p-1
+-0x1.bbac3cp-2
+-0x1.fc5b9ep-1
+0x1.7c268p-6
+0x1.246c2p-1
+0x1.4bf3a8p-1
+0x1.3b9f8p-5
+-0x1.d3ad68p-1
+-0x1.e0c77ap-1
+0x1.23dbep-3
+0x1.fcddc8p-1
+-0x1.f4b13p-2
+-0x1.8e47fp-1
+-0x1.94e6a4p-2
+0x1.424968p-1
+0x1.08413p-3
+0x1.45f36p-1
+0x1.4b2f9p-2
+-0x1.cc8592p-1
+0x1.f0022p-2
+-0x1.bc36a8p-3
+0x1.4cb01cp-1
+0x1.4d5288p-2
+0x1.c22b58p-1
+0x1.75c39p-3
+-0x1.b7237ap-1
+0x1.e74798p-1
+-0x1.f46236p-1
+-0x1.d6ccfcp-1
+0x1.11bfa8p-1
+-0x1.831eb8p-1
+-0x1.3eea46p-1
+0x1.b54f68p-1
+0x1.e48ec8p-2
+0x1.9b287p-3
+-0x1.c27c1p-2
+0x1.9134cp-2
+-0x1.43e134p-1
+0x1.590ca8p-1
+0x1.6fb48p-2
+0x1.a95674p-1
+0x1.24846cp-1
+0x1.ad8b98p-2
+-0x1.05a11p-1
+0x1.4e65a8p-2
+0x1.5111e8p-1
+0x1.16760cp-1
+-0x1.149e66p-1
+-0x1.6ae08cp-1
+-0x1.c4cb8p-1
+0x1.51c04p-3
+0x1.29166p-1
+0x1.adb424p-1
+0x1.f8fe88p-1
+0x1.c3c108p-2
+-0x1.2554ap-4
+0x1.3c158p-2
+-0x1.606348p-1
+0x1.e2d58p-5
+-0x1.02092p-2
+0x1.d1321p-2
+0x1.142d94p-1
+0x1.34fb0cp-1
+0x1.1f5adp-2
+-0x1.9a18d8p-2
+-0x1.9d377p-1
+-0x1.3d229p-1
+0x1.c42e4p-4
+-0x1.d587b6p-1
+0x1.8f1d1p-3
+-0x1.2ccfp-1
+0x1.8119cp-2
+-0x1.36a96p-3
+-0x1.ea581ap-1
+-0x1.9308ecp-1
+0x1.979e1p-1
+-0x1.2f0734p-1
+0x1.6b9cap-4
+-0x1.8b771cp-2
+0x1.4915b8p-2
+0x1.43391p-1
+-0x1.894fbp-1
+-0x1.21db2p-5
+0x1.5f5eap-3
+0x1.5d31f8p-2
+-0x1.325fecp-1
+-0x1.9124dp-1
+-0x1.a5bfap-2
+-0x1.09d4f6p-1
+0x1.fc7128p-1
+0x1.d868fcp-1
+-0x1.642a7ep-1
+0x1.037934p-1
+-0x1.b603p-3
+0x1.1fd9d8p-1
+0x1.16dc1p-3
+-0x1.867414p-1
+0x1.547fa8p-1
+0x1.ba03fp-1
+0x1.f42b4p-4
+-0x1.a26108p-3
+-0x1.26b43p-2
+0x1.6e26b8p-2
+-0x1.d3434p-6
+-0x1.a7484cp-2
+-0x1.a138c6p-1
+0x1.a4b4p-5
+0x1.0a5bbcp-1
+-0x1.0b395cp-1
+-0x1.c57fep-4
+-0x1.c78e6p-5
+0x1.bf949p-1
+-0x1.aad398p-1
+0x1.d191d4p-1
+0x1.ccca48p-2
+-0x1.9e6ccp-5
+-0x1.47017cp-1
+0x1.060be8p-1
+0x1.cf0d6p-2
+0x1.0e7228p-2
+-0x1.e37f8p-6
+0x1.f09e6p-4
+-0x1.9cbbap-4
+0x1.2499p-4
+0x1.ab5c6cp-1
+-0x1.d38bp-8
+-0x1.7222p-9
+0x1.7797cp-3
+-0x1.a74d5p-1
+-0x1.7f39ep-2
+0x1.2ff1ep-1
+-0x1.4052cp-3
+-0x1.1bf79ap-1
+-0x1.fd24d8p-3
+-0x1.5cdcfcp-2
+0x1.eb50ap-2
+-0x1.61c674p-2
+-0x1.c6f3bep-1
+-0x1.19b15p-1
+-0x1.57acdp-3
+-0x1.ebb35ep-1
+-0x1.b689bep-1
+-0x1.b33158p-2
+0x1.77e5p-5
+-0x1.d935cp-4
+0x1.90887p-1
+-0x1.4caf7p-3
+0x1.248fb4p-1
+-0x1.caacbcp-1
+-0x1.6f535cp-2
+-0x1.b3aab4p-1
+-0x1.a2c3ap-5
+-0x1.df04p-1
+0x1.2608dp-1
+0x1.6961c8p-1
+-0x1.aba4e4p-1
+0x1.5b54c8p-2
+0x1.13acc4p-1
+-0x1.40ce5cp-1
+-0x1.b3cddp-2
+-0x1.7ad388p-3
+-0x1.2a5244p-1
+-0x1.5d7fd8p-1
+-0x1.8aaddp-1
+0x1.8077dcp-1
+-0x1.cde88p-7
+-0x1.4b0ebcp-1
+-0x1.88b92p-1
+0x1.9ea448p-1
+0x1.4b448p-2
+0x1.3cad0cp-1
+0x1.91dcd8p-2
+-0x1.79e2bp-4
+0x1.068038p-2
+-0x1.db7dcp-5
+0x1.fc5808p-2
+0x1.6f5dep-4
+-0x1.660788p-3
+0x1.05e6a8p-2
+0x1.138ae8p-1
+-0x1.12cdecp-1
+0x1.bed22p-2
+0x1.ced624p-1
+-0x1.e58438p-3
+-0x1.7dep-9
+-0x1.381p-11
+-0x1.f148d8p-2
+-0x1.526e2p-2
+-0x1.80b876p-1
+0x1.16343p-2
+-0x1.b2a2d4p-1
+-0x1.bfeb84p-1
+0x1.777b8p-6
+0x1.5fecp-3
+-0x1.6af4bp-1
+-0x1.9a3d48p-3
+0x1.3e6e64p-1
+0x1.2b80dp-2
+0x1.cdcaa4p-1
+0x1.479ap-4
+-0x1.d7c1bcp-2
+0x1.1e0e3p-1
+0x1.d74a98p-1
+0x1.e83b48p-2
+0x1.30b0fp-2
+-0x1.f79ab4p-1
+0x1.15eeb8p-2
+0x1.7aa394p-1
+0x1.613678p-1
+-0x1.c09598p-1
+-0x1.93fbp-8
+0x1.f2ffb8p-2
+0x1.bf4554p-1
+-0x1.c928cp-6
+-0x1.c02974p-2
+0x1.038134p-1
+0x1.0f126p-1
+-0x1.d3c57cp-1
+0x1.ed10dp-3
+0x1.39e148p-1
+-0x1.11b248p-2
+-0x1.ad5ffp-4
+-0x1.b883d8p-3
+-0x1.3d3ab8p-1
+0x1.2e708p-3
+0x1.ed1f4p-1
+-0x1.a47f5ep-1
+-0x1.780464p-1
+-0x1.458fcp-5
+0x1.ea9174p-1
+0x1.e85158p-2
+0x1.e567ap-1
+-0x1.a7bbbp-4
+0x1.a00924p-1
+-0x1.9ea2f8p-1
+0x1.23e75cp-1
+-0x1.82332cp-1
+-0x1.bfc43p-2
+0x1.2779ep-1
+0x1.34989p-1
+-0x1.9e18f4p-1
+-0x1.79e85p-1
+0x1.80e92p-2
+-0x1.7e2018p-1
+-0x1.4f3314p-1
+0x1.41ad98p-2
+0x1.12a988p-1
+0x1.1ebcacp-1
+-0x1.2ef59cp-1
+0x1.3c69ccp-1
+-0x1.d0818p-4
+-0x1.dd8b7cp-1
+0x1.1ff97cp-1
+0x1.f10dcp-5
+0x1.5b808p-4
+-0x1.2f85ecp-1
+-0x1.a0f4p-7
+0x1.38cfep-1
+0x1.8c633p-3
+-0x1.2d02p-2
+-0x1.cf80dcp-1
+-0x1.896db4p-2
+-0x1.e32d8p-1
+0x1.90e82p-2
+-0x1.a4b0f8p-3
+-0x1.f5e0ep-5
+-0x1.7ae2bp-4
+-0x1.a9f8cep-1
+-0x1.cdb088p-2
+-0x1.95b4d4p-1
+0x1.0b0944p-1
+-0x1.cb71a4p-1
+-0x1.eeeffep-1
+0x1.87af48p-1
+-0x1.ca91bcp-2
+-0x1.70778ep-1
+0x1.ab3828p-1
+-0x1.183fcp-4
+-0x1.a3c766p-1
+-0x1.e284f4p-2
+0x1.da54b8p-2
+-0x1.2c1e14p-1
+0x1.31a1f8p-2
+-0x1.f6054p-2
+-0x1.0bbbd8p-1
+-0x1.f0003p-3
+0x1.a8cda8p-1
+-0x1.d2d56p-5
+-0x1.99cep-7
+-0x1.fd154p-6
+-0x1.d0f6e2p-1
+-0x1.863cbp-4
+0x1.7479cp-1
+0x1.7fb72p-1
+-0x1.01134p-4
+-0x1.e6e12p-1
+0x1.7b183cp-1
+0x1.0989a8p-2
+0x1.c5124p-1
+-0x1.94e13cp-1
+-0x1.b4e33p-2
+0x1.b54d2p-4
+0x1.901418p-1
+0x1.102d24p-1
+-0x1.2f68f4p-1
+0x1.7278ap-2
+-0x1.408954p-2
+0x1.4eef9p-3
+-0x1.cb1a7ep-1
+0x1.b6c928p-1
+0x1.ca137p-3
+0x1.59527p-1
+-0x1.3730b8p-3
+0x1.5f73bp-3
+0x1.fa926p-2
+0x1.59274cp-1
+0x1.07f7c8p-1
+0x1.08cf5p-2
+-0x1.6aaea8p-3
+0x1.9309p-5
+0x1.5f8888p-1
+-0x1.e63e94p-2
+-0x1.7b6cf8p-1
+0x1.ce2a2cp-1
+-0x1.5ce9bep-1
+-0x1.ad9fa4p-1
+0x1.fc44ep-3
+-0x1.9235cp-1
+-0x1.d42da4p-2
+-0x1.2b818ap-1
+-0x1.8cfee8p-2
+0x1.71ccdp-3
+-0x1.465d74p-1
+-0x1.c95e4cp-1
+0x1.6e6becp-1
+-0x1.79b85p-4
+0x1.405948p-2
+-0x1.9a2f3p-2
+-0x1.a0667cp-2
+-0x1.ab9304p-1
+0x1.95fdfcp-1
+-0x1.4ed3acp-1
+-0x1.a94f3cp-2
+0x1.11354p-2
+0x1.2dedc8p-2
+-0x1.53a2p-4
+-0x1.ad9ee2p-1
+-0x1.341a68p-1
+-0x1.f0aadap-1
+0x1.624fe8p-1
+0x1.3aaecp-5
+0x1.b81c5cp-1
+-0x1.0cfp-7
+0x1.88a91p-2
+-0x1.b58bp-4
+-0x1.55782p-1
+-0x1.9d30aap-1
+0x1.b47eecp-1
+0x1.8a04bp-1
+0x1.aca2cp-5
+0x1.c5df88p-1
+0x1.b7b72p-1
+-0x1.063aacp-1
+-0x1.3fb248p-2
+0x1.77d008p-1
+-0x1.d9a698p-3
+-0x1.e9f7e8p-1
+-0x1.fe984p-5
+-0x1.ab69d6p-1
+0x1.a6006p-2
+-0x1.2c69ecp-2
+0x1.0d27ecp-1
+0x1.7e55c8p-2
+-0x1.5cbfc8p-3
+-0x1.fa0c5p-3
+0x1.8b6e4p-2
+0x1.53dcp-9
+-0x1.5d75bp-1
+-0x1.24b78cp-2
+-0x1.9b3a7p-4
+-0x1.b92358p-1
+0x1.b6673p-1
+0x1.a06c8p-2
+-0x1.13614p-2
+-0x1.f67588p-1
+0x1.101bbp-1
+-0x1.829cap-4
+0x1.725f34p-1
+0x1.80d618p-2
+0x1.82d0d8p-2
+-0x1.6ca6c2p-1
+0x1.21df1cp-1
+0x1.e0793cp-1
+-0x1.c1d7p-5
+-0x1.f0c35p-1
+-0x1.d48e88p-3
+-0x1.c49826p-1
+0x1.3a4eep-1
+-0x1.0475f8p-1
+0x1.75411p-2
+0x1.4f91e8p-2
+-0x1.28d3cp-5
+-0x1.0d51eep-1
+-0x1.8e8cf4p-2
+-0x1.ab19dcp-1
+-0x1.63935p-1
+-0x1.4f0c6p-1
+-0x1.d6d0dp-2
+0x1.6bf648p-1
+0x1.f69b28p-1
+-0x1.11061p-1
+-0x1.fb29bp-3
+-0x1.150b98p-1
+-0x1.250f7p-1
+-0x1.81ca44p-2
+-0x1.7af0dp-4
+0x1.71442p-3
+-0x1.271c94p-1
+0x1.814a58p-1
+0x1.3e2eb8p-1
+0x1.419698p-2
+-0x1.d320e4p-2
+-0x1.a6d9cp-5
+-0x1.40486cp-1
+-0x1.2a51ap-4
+0x1.a2bedcp-1
+0x1.2f6aep-4
+-0x1.92fcp-1
+0x1.faf2p-1
+-0x1.36e3e4p-2
+0x1.8f437cp-1
+0x1.21bb18p-1
+-0x1.3fe018p-2
+-0x1.8e46ccp-1
+-0x1.686498p-3
+-0x1.89a96ap-1
+0x1.a863ep-2
+-0x1.ae10e8p-1
+-0x1.96a374p-2
+-0x1.0b521ap-1
+0x1.777a4p-5
+0x1.9977p-1
+0x1.beecp-3
+-0x1.328cd4p-2
+0x1.04454p-3
+0x1.7885p-5
+0x1.d87f7p-2
+-0x1.a5c168p-3
+0x1.6c9ccp-4
+0x1.3409p-3
+0x1.ade8fp-2
+-0x1.91eccp-6
+-0x1.977fap-5
+-0x1.6540bp-2
+-0x1.b2c84cp-1
+-0x1.e2734p-3
+-0x1.85f734p-2
+0x1.6b1798p-1
+0x1.bb5dap-3
+0x1.19258p-6
+0x1.84d0fcp-1
+0x1.757b5p-3
+0x1.5a2b8p-3
+-0x1.facea8p-2
+-0x1.0cfbep-1
+-0x1.8301dp-3
+0x1.69fc1p-3
+-0x1.e210d6p-1
+0x1.9e7d48p-1
+0x1.e534e4p-1
+-0x1.f1321ap-1
+-0x1.81875p-1
+0x1.40cdccp-1
+-0x1.a78ccp-1
+0x1.5dc34p-1
+-0x1.fa02b8p-3
+0x1.9777ap-3
+0x1.fe912cp-1
+-0x1.d00e7p-2
+0x1.a0d544p-1
+0x1.4f1dp-4
+-0x1.9b8dd6p-1
+-0x1.cfb238p-2
+0x1.184c1p-3
+0x1.b8e1dcp-1
+0x1.a74358p-1
+0x1.79035p-2
+0x1.e4ccp-2
+-0x1.820e48p-2
+-0x1.c41082p-1
+-0x1.f519c4p-1
+0x1.c052ap-4
+-0x1.b43fdp-1
+-0x1.bf5ee8p-3
+-0x1.af01cp-3
+-0x1.b74732p-1
+-0x1.8b0b6ap-1
+0x1.e44f5cp-1
+-0x1.827d78p-3
+-0x1.e9245p-1
+0x1.3fb15p-3
+-0x1.e60c48p-3
+0x1.f65ap-7
+0x1.6e1188p-2
+0x1.cfae8p-2
+-0x1.ca94p-1
+0x1.259454p-1
+-0x1.4131ep-1
+-0x1.c6668p-2
+-0x1.6d89bp-1
+-0x1.c6aea4p-1
+0x1.8828ecp-1
+0x1.31c7b8p-1
+-0x1.35cf48p-2
+-0x1.824398p-2
+-0x1.b409cp-2
+0x1.62d508p-1
+0x1.ed7788p-1
+0x1.6f72dcp-1
+0x1.745a6p-4
+0x1.55deap-4
+-0x1.ffdbb8p-3
+0x1.cf7dfcp-1
+-0x1.7606bp-3
+-0x1.3147ep-1
+0x1.ef6ac8p-2
+0x1.a5be8p-1
+0x1.03c394p-1
+-0x1.31bb4p-3
+-0x1.3c9428p-1
+-0x1.60d1d8p-2
+-0x1.76c46p-4
+-0x1.17a81p-4
+0x1.cbdb2p-3
+0x1.7f3cbp-1
+0x1.89c68p-5
+-0x1.5d947p-3
+-0x1.ee910ap-1
+0x1.dbaf88p-1
+0x1.386334p-1
+-0x1.30fd04p-1
+0x1.27e2e8p-1
+-0x1.6617b8p-3
+0x1.87f97p-3
+0x1.f186p-6
+0x1.2d209p-1
+-0x1.806fap-5
+0x1.ae718p-5
+-0x1.d7d1acp-1
+-0x1.5ed468p-1
+-0x1.b3b6bp-3
+-0x1.3b272cp-2
+-0x1.a7c64p-3
+-0x1.2f0ep-1
+-0x1.8ab898p-2
+0x1.b325ap-4
+-0x1.1a05fp-2
+0x1.f3cbd8p-2
+-0x1.ffd45p-2
+0x1.2b0478p-2
+0x1.4d772cp-1
+0x1.a78918p-2
+-0x1.90463ep-1
+-0x1.63e54cp-1
+-0x1.578102p-1
+-0x1.41252cp-1
+0x1.3d851p-3
+0x1.1c68cp-2
+-0x1.beedf8p-3
+0x1.9950ap-4
+-0x1.03d1cap-1
+0x1.cea778p-1
+-0x1.2a2e24p-2
+-0x1.87794p-1
+-0x1.5d4aecp-1
+-0x1.a6bbf4p-2
+0x1.3ce564p-1
+0x1.778f34p-1
+0x1.3c24c8p-1
+0x1.1e7a38p-2
+-0x1.062176p-1
+-0x1.97fp-4
+0x1.6af3c4p-1
+-0x1.f18bdp-3
+0x1.c7518p-1
+0x1.2a751p-1
+0x1.60b04p-5
+-0x1.d9d606p-1
+-0x1.315cep-1
+-0x1.12362p-4
+0x1.3378cp-4
+0x1.5eb0a4p-1
+-0x1.6b6274p-1
+-0x1.062a48p-3
+0x1.592488p-1
+0x1.93e99cp-1
+0x1.64e468p-1
+0x1.3286e4p-1
+-0x1.da996cp-2
+-0x1.d69728p-2
+-0x1.1e40e8p-2
+0x1.50cb0cp-1
+0x1.44111p-1
+0x1.a7e36p-3
+-0x1.06836cp-2
+0x1.9ef788p-1
+-0x1.ceeddp-3
+-0x1.2af038p-2
+0x1.cfbd28p-1
+0x1.df3ecp-4
+0x1.6ac478p-2
+-0x1.d1fcbp-1
+0x1.d16628p-1
+-0x1.d74f2cp-1
+-0x1.708f7p-3
+0x1.f377f8p-2
+-0x1.805c28p-2
+-0x1.63d976p-1
+0x1.3e815p-3
+0x1.e16a78p-1
+-0x1.70de1p-1
+-0x1.f7dc34p-1
+-0x1.ed477cp-2
+-0x1.60f208p-3
+-0x1.1bbdfp-1
+-0x1.967fcp-3
+0x1.46a91p-1
+0x1.e0999p-1
+0x1.caec74p-1
+-0x1.5e456p-1
+0x1.66a41p-1
+-0x1.8e6514p-1
+0x1.b2a08p-4
+0x1.3cb52p-1
+-0x1.b74814p-1
+0x1.64daap-1
+-0x1.13b1b2p-1
+0x1.eedaf4p-1
+0x1.1286ccp-1
+-0x1.80f85ap-1
+-0x1.58b3f8p-3
+0x1.ed788p-4
+0x1.2f96f4p-1
+-0x1.ac144p-1
+0x1.528bfcp-1
+-0x1.eef846p-1
+-0x1.2fdb44p-2
+-0x1.7c17a4p-2
+-0x1.027b28p-1
+-0x1.df9c8cp-1
+-0x1.6aa608p-1
+-0x1.01672cp-1
+-0x1.18f904p-2
+-0x1.5a0d4ep-1
+-0x1.78edbp-1
+0x1.73512p-1
+-0x1.7737p-1
+-0x1.e2e294p-1
+-0x1.d723bap-1
+0x1.8909fp-3
+-0x1.9dbbc8p-1
+-0x1.eee24p-3
+-0x1.f269dcp-2
+0x1.72c0f8p-1
+0x1.8e5168p-1
+0x1.6c4b4p-5
+0x1.2139ep-2
+-0x1.3433f4p-2
+0x1.7a893p-1
+0x1.00a0c4p-1
+-0x1.27812p-1
+-0x1.d903p-7
+0x1.1203c8p-2
+-0x1.6078d4p-1
+0x1.dfe19cp-1
+-0x1.19325p-3
+0x1.cc03p-3
+-0x1.4c733p-1
+-0x1.3e7aap-3
+-0x1.6cf6ccp-1
+-0x1.94b048p-1
+-0x1.e5352cp-2
+0x1.918d4p-1
+0x1.a5eb38p-1
+0x1.7af024p-1
+0x1.3ebd58p-2
+-0x1.f1dec8p-1
+0x1.34cd2p-2
+0x1.5e0ee4p-1
+0x1.f681cp-3
+0x1.94405p-3
+0x1.c6ec8p-6
+0x1.dffc54p-1
+-0x1.e199bp-2
+0x1.732c8p-2
+-0x1.4ab934p-2
+-0x1.8fa31p-4
+-0x1.d658bp-3
+-0x1.b4c138p-1
+-0x1.dea8f6p-1
+-0x1.4e5e4p-2
+-0x1.b673bep-1
+-0x1.c0de98p-3
+-0x1.99024p-4
+0x1.5646bp-1
+-0x1.e31358p-3
+-0x1.cf041cp-2
+0x1.96eebp-3
+0x1.8a2b7p-3
+0x1.f25cdcp-1
+0x1.cd0bb8p-2
+0x1.83775p-3
+-0x1.30db64p-1
+0x1.823c2p-2
+0x1.d9b3b8p-2
+-0x1.c64b8p-4
+-0x1.ec484p-4
+-0x1.89acf8p-3
+0x1.66e58p-1
+0x1.fbb81p-2
+-0x1.e95a38p-1
+0x1.f5ea3p-2
+0x1.a1d398p-2
+0x1.fcce3p-2
+0x1.4e9568p-1
+-0x1.7657p-4
+0x1.1dd2f8p-2
+-0x1.0fea5cp-2
+0x1.7d5b1p-2
+0x1.a36bc4p-1
+-0x1.5b0fep-3
+0x1.731bb4p-1
+0x1.9bec7p-2
+0x1.fb5fdp-2
+-0x1.dad7d2p-1
+0x1.035ccp-1
+0x1.ffc99p-3
+-0x1.6324fp-3
+-0x1.13631p-2
+0x1.be038p-5
+-0x1.bfdf8cp-1
+-0x1.d19acp-5
+-0x1.0bf11p-1
+-0x1.314338p-2
+0x1.c10f4p-4
+0x1.4eab6cp-1
+-0x1.f6eaa8p-3
+0x1.724e9p-1
+0x1.f51498p-1
+-0x1.e968ap-1
+-0x1.6f3b7cp-1
+0x1.ee1a28p-2
+-0x1.f58f96p-1
+-0x1.9c713ap-1
+-0x1.7f558p-2
+-0x1.2bf02cp-1
+0x1.7a7ce4p-1
+0x1.e97bep-3
+0x1.a14fc4p-1
+0x1.88abc8p-2
+0x1.b16258p-2
+0x1.0116p-5
+0x1.317bd4p-1
+0x1.ebde44p-1
+-0x1.1db59p-2
+0x1.bd6948p-1
+-0x1.d485ap-5
+-0x1.444718p-2
+-0x1.398438p-2
+0x1.29633p-2
+-0x1.d3eb08p-1
+-0x1.0aff34p-1
+-0x1.e0cf0cp-1
+0x1.b4583p-3
+0x1.a2e844p-1
+-0x1.54a5b2p-1
+0x1.e4be7cp-1
+-0x1.587ccap-1
+0x1.eb303cp-1
+-0x1.997524p-1
+-0x1.da25b6p-1
+-0x1.f3b52cp-2
+-0x1.d15266p-1
+-0x1.0c75cp-1
+-0x1.59466p-1
+-0x1.a28a5p-1
+-0x1.278f2cp-2
+-0x1.ba0a3ap-1
+0x1.8da798p-2
+-0x1.1437cp-3
+0x1.40e634p-1
+-0x1.9e3504p-1
+0x1.6b4e88p-2
+0x1.e6c7fcp-1
+-0x1.90e0fp-4
+-0x1.dc840ap-1
+-0x1.ab479cp-1
+-0x1.088ba8p-2
+0x1.14660cp-1
+-0x1.17687p-2
+-0x1.d38fecp-1
+0x1.f7f4c8p-1
+0x1.9dc55cp-1
+0x1.2f54p-6
+0x1.9898a8p-2
+-0x1.0404bcp-1
+0x1.6fe22p-1
+0x1.daf9p-2
+-0x1.2b2438p-2
+0x1.d1148p-3
+-0x1.adee7ep-1
+0x1.0cf308p-1
+-0x1.7c1e3p-2
+0x1.e0d25p-1
+-0x1.12291p-2
+0x1.db7474p-1
+0x1.c94cfp-1
+0x1.b647ep-2
+-0x1.f0dd38p-3
+-0x1.b0184p-3
+0x1.ef5dp-6
+0x1.d50548p-1
+-0x1.a47ddp-3
+-0x1.acb71p-4
+0x1.3f715p-3
+-0x1.20c592p-1
+-0x1.c32552p-1
+0x1.5c658p-6
+0x1.d7a64p-1
+0x1.78e608p-2
+-0x1.8f6e68p-2
+-0x1.42b21cp-2
+0x1.38e178p-1
+-0x1.a4014cp-1
+-0x1.8bbf9cp-1
+-0x1.26191p-2
+-0x1.e80606p-1
+-0x1.3ef4p-6
+0x1.1d30f4p-1
+0x1.822eb4p-1
+0x1.19297cp-1
+0x1.07cdd8p-2
+0x1.0f94dp-3
+-0x1.1bed5p-4
+0x1.08c0bp-1
+-0x1.7db3f4p-2
+-0x1.1945a4p-1
+-0x1.b987f2p-1
+0x1.098928p-2
+0x1.3e9a7p-1
+0x1.8b523p-1
+-0x1.5938p-4
+0x1.f2e7f8p-2
+-0x1.e87646p-1
+0x1.eca63p-2
+0x1.ce20cp-4
+-0x1.510bb8p-2
+-0x1.a3d114p-1
+0x1.57e0fp-3
+0x1.f7c3b4p-1
+0x1.f033ep-4
+-0x1.0bf6cp-4
+0x1.60878p-1
+-0x1.bd7d28p-1
+-0x1.1840ecp-1
+-0x1.7734bp-1
+-0x1.d566c4p-2
+-0x1.314ec2p-1
+-0x1.d99af8p-2
+0x1.a8265p-1
+-0x1.a8e05p-3
+0x1.17abep-2
+0x1.974d7p-1
+0x1.788824p-1
+0x1.c4ebbp-1
+-0x1.c8d11ep-1
+0x1.0c95cp-1
+-0x1.b9f52p-1
+0x1.69fcdp-1
+0x1.19d844p-1
+-0x1.4b9558p-1
+0x1.59866p-3
+0x1.19f4c8p-2
+0x1.2ade4p-1
+-0x1.5c34p-10
+-0x1.35cc5p-4
+0x1.642a74p-1
+-0x1.c3dbdp-1
+-0x1.659eap-4
+-0x1.9300d8p-2
+-0x1.7e81fcp-1
+0x1.39622p-2
+-0x1.49ad5p-1
+-0x1.edf388p-1
+-0x1.41e534p-1
+0x1.e5ed8p-3
+0x1.50148p-6
+0x1.2158f8p-2
+0x1.3f144cp-1
+-0x1.4bbde8p-1
+-0x1.64d93ep-1
+0x1.318e8p-2
+-0x1.175364p-1
+0x1.725d7p-3
+-0x1.19a774p-1
+-0x1.65efb8p-2
+-0x1.6abf48p-1
+-0x1.5a870ap-1
+0x1.762f8cp-1
+0x1.5800d8p-2
+-0x1.ae9a7cp-2
+0x1.98dd6p-4
+0x1.06dd9cp-1
+0x1.598f68p-1
+0x1.671e68p-1
+0x1.4c28cp-4
+0x1.29d4e4p-1
+-0x1.4e4da8p-1
+0x1.555cb8p-1
+0x1.2fe7a8p-2
+-0x1.961bcp-4
+-0x1.cc582ap-1
+0x1.3646d4p-1
+0x1.cd4f8cp-1
+-0x1.d6c592p-1
+0x1.e7388p-4
+0x1.dcd334p-1
+0x1.592448p-2
+0x1.5a2a6p-2
+0x1.ecba48p-1
+0x1.f2ee88p-1
+-0x1.70738p-4
+-0x1.e35508p-3
+-0x1.1e5142p-1
+-0x1.a2e4dp-1
+-0x1.da8b4cp-2
+-0x1.31c1f4p-2
+0x1.4e0b48p-2
+-0x1.ea576p-3
+0x1.4c7b5cp-1
+0x1.ddbbd8p-2
+-0x1.80d65p-3
+-0x1.5105f8p-1
+-0x1.d529fep-1
+-0x1.b14a98p-3
+0x1.414a38p-2
+0x1.de3e8p-4
+0x1.33926p-1
+0x1.265434p-1
+0x1.fb2d18p-1
+-0x1.9e6cf4p-2
+0x1.60b28p-4
+-0x1.d60c9p-4
+-0x1.30a784p-1
+-0x1.59802p-2
+0x1.cb508cp-1
+0x1.022c04p-1
+-0x1.abef98p-3
+0x1.ef07p-5
+-0x1.09af3p-1
+0x1.f50c8p-2
+0x1.acc6bp-3
+-0x1.be8f24p-2
+0x1.341828p-2
+0x1.8c8c34p-1
+0x1.7bd6p-3
+0x1.e0e198p-2
+0x1.6554p-9
+-0x1.afcc6p-3
+0x1.2d854p-3
+0x1.43645cp-1
+0x1.8ee65p-1
+0x1.9d04p-1
+0x1.ec5p-4
+-0x1.fd6cfap-1
+0x1.36dfc8p-2
+-0x1.ada4fp-1
+-0x1.561dd8p-2
+0x1.a30ac4p-1
+0x1.488ca8p-2
+0x1.ba015p-3
+-0x1.3e3898p-1
+-0x1.a14caep-1
+-0x1.42627cp-2
+0x1.c1b2cp-2
+0x1.58a2c8p-2
+-0x1.ba0ee8p-2
+-0x1.208d2cp-2
+0x1.7b59fcp-1
+0x1.32fde8p-2
+-0x1.303c9cp-2
+0x1.ad0ec8p-2
+0x1.c7b368p-1
+0x1.4d9318p-2
+0x1.dd3dd4p-1
+0x1.11561p-1
+0x1.269fa4p-1
+-0x1.e29a68p-1
+0x1.9c9d08p-1
+0x1.7823d8p-1
+-0x1.cece54p-1
+-0x1.92cd1cp-1
+-0x1.d3125p-4
+0x1.ae0438p-2
+-0x1.4e2888p-3
+0x1.a418p-6
+0x1.a7316p-4
+0x1.389d34p-1
+0x1.2caccp-3
+-0x1.e3c2d8p-3
+-0x1.ba6p-10
+-0x1.2e6b74p-1
+-0x1.eb644p-1
+-0x1.e8f7a4p-2
+-0x1.4b4fccp-1
+-0x1.fee058p-1
+0x1.cf2ab8p-1
+0x1.728258p-2
+0x1.99cc5p-2
+0x1.01956p-1
+0x1.5ede48p-2
+0x1.d404bcp-1
+-0x1.6a4dfp-3
+-0x1.da737ep-1
+-0x1.f06f06p-1
+0x1.a64c88p-1
+-0x1.188ep-9
+0x1.23db1cp-1
+-0x1.2404p-2
+0x1.f6ac88p-2
+0x1.46c474p-1
+-0x1.8c861p-1
+-0x1.e5c26p-4
+0x1.19d03p-1
+-0x1.dd0248p-3
+-0x1.93e2b2p-1
+-0x1.f51d4cp-2
+-0x1.d63868p-2
+-0x1.b01762p-1
+-0x1.75c08p-5
+-0x1.924868p-3
+0x1.91a5cp-2
+-0x1.15dcdp-2
+0x1.682e1p-1
+-0x1.4ba0fp-1
+0x1.72db34p-1
+-0x1.908e2p-1
+-0x1.ca9c9p-4
+0x1.16a09p-3
+0x1.a724e8p-2
+-0x1.03c7ap-3
+0x1.4bfdp-1
+-0x1.247ep-6
+-0x1.139edcp-1
+0x1.6ea5acp-1
+0x1.6dad2p-1
+-0x1.ee88d8p-3
+-0x1.e7a12p-3
+-0x1.7fa498p-2
+0x1.0c763p-3
+0x1.180928p-1
+0x1.75858p-6
+0x1.15414cp-1
+-0x1.6af32p-4
+-0x1.cc75cp-2
+-0x1.d1b472p-1
+0x1.4f6ebp-2
+-0x1.d4f4c8p-2
+0x1.78dde4p-1
+0x1.a3029p-2
+0x1.1e3d2p-2
+-0x1.43e96p-1
+0x1.13b15p-2
+0x1.e5f74p-5
+-0x1.0a9d5p-1
+0x1.c9ca1p-3
+0x1.314238p-1
+-0x1.e5d01p-3
+-0x1.21b748p-1
+0x1.06fddp-1
+-0x1.daf2cep-1
+0x1.1c816p-1
+0x1.7e722p-2
+-0x1.fac882p-1
+-0x1.b99458p-1
+-0x1.305994p-1
+-0x1.9a25d8p-2
+0x1.a427c8p-1
+-0x1.2a8ad8p-3
+0x1.b55abp-3
+-0x1.1973e8p-1
+-0x1.1a8d6p-2
+-0x1.5371ap-1
+-0x1.60ef8cp-2
+-0x1.d9ab7ep-1
+0x1.8eadap-3
+0x1.ec931p-1
+-0x1.2e1e36p-1
+0x1.f629f4p-1
+0x1.23c15p-3
+-0x1.a85a9ap-1
+-0x1.a40f18p-3
+-0x1.d5822p-1
+-0x1.e36228p-3
+0x1.de80cp-2
+-0x1.83cb08p-3
+-0x1.1dfbcp-5
+-0x1.5bdc78p-1
+-0x1.5fdd9p-3
+0x1.ac647cp-1
+-0x1.ef70dp-3
+0x1.ce0c24p-1
+0x1.3c5294p-1
+-0x1.adc03ep-1
+-0x1.3b4498p-3
+-0x1.e54afp-1
+-0x1.5a863p-2
+-0x1.8224fp-3
+-0x1.95a354p-1
+-0x1.acfcf2p-1
+-0x1.1d8cep-5
+-0x1.380388p-3
+0x1.495ef8p-2
+-0x1.8267e6p-1
+0x1.fc8758p-1
+-0x1.ed8ad4p-2
+-0x1.b39488p-1
+0x1.eef3acp-1
+0x1.84934p-3
+0x1.b18d64p-1
+-0x1.e6c78cp-1
+-0x1.a5ad86p-1
+0x1.3ea988p-2
+-0x1.d2061ep-1
+-0x1.51223cp-1
+-0x1.8250a8p-1
+-0x1.f2a388p-1
+0x1.37ae68p-1
+-0x1.f34528p-3
+0x1.cfc8p-4
+-0x1.2597b8p-1
+-0x1.793244p-1
+-0x1.a8412ep-1
+0x1.68c7d8p-1
+-0x1.6ffa4ap-1
+-0x1.ba98e2p-1
+0x1.98f5cp-4
+-0x1.a2b44p-5
+-0x1.4039dp-2
+0x1.512e08p-1
+0x1.dab134p-1
+0x1.1f903p-2
+0x1.8a3b9p-3
+-0x1.328e8cp-2
+-0x1.3fedf8p-3
+-0x1.ca042p-5
+0x1.1b3a2p-3
+-0x1.bb4f3p-2
+0x1.1b94p-4
+-0x1.52895ep-1
+0x1.db151p-1
+-0x1.05e934p-2
+0x1.756ffp-2
+0x1.7ff4e8p-1
+0x1.99fdcp-1
+-0x1.daf08p-1
+0x1.a251d8p-1
+-0x1.d2673ap-1
+-0x1.32e06p-1
+-0x1.8d017p-4
+-0x1.6ac6d8p-3
+0x1.7f20cp-2
+-0x1.2d33b4p-1
+0x1.7fc5ap-2
+0x1.133aep-4
+0x1.43d3ap-2
+-0x1.eae5f8p-2
+-0x1.9944b4p-1
+0x1.e0c6b8p-2
+0x1.411eb4p-1
+0x1.ca1ec4p-1
+-0x1.bb957p-1
+-0x1.ebe06p-5
+-0x1.8a122p-3
+0x1.9b157p-3
+-0x1.3fc47p-4
+0x1.3c56b4p-1
+-0x1.9f4712p-1
+-0x1.a1fb14p-1
+0x1.f75ba8p-2
+0x1.86648p-1
+-0x1.7a7258p-3
+0x1.a585ep-4
+0x1.5bfc38p-1
+-0x1.7019cp-4
+-0x1.c7ab3p-3
+0x1.7fde98p-1
+0x1.1c28e8p-1
+0x1.b9020cp-1
+-0x1.cebbd4p-1
+0x1.b639p-1
+0x1.873b54p-1
+0x1.f24f68p-2
+0x1.535b1p-2
+-0x1.db371cp-2
+-0x1.ddce38p-3
+-0x1.1fb42ep-1
+-0x1.75262p-3
+0x1.52879p-1
+0x1.3b465cp-1
+0x1.d732ap-4
+0x1.520504p-1
+-0x1.2dfda4p-1
+0x1.8f8aecp-1
+0x1.659c24p-1
+-0x1.b1c768p-3
+-0x1.60f6f8p-2
+0x1.552c04p-1
+-0x1.0fb1ap-5
+-0x1.4bde5p-3
+-0x1.c381p-5
+0x1.b9766p-4
+-0x1.a42eap-1
+-0x1.8698p-11
+-0x1.1c2fe4p-1
+-0x1.b40eccp-1
+0x1.8c04fcp-1
+-0x1.c3240cp-1
+0x1.ced6ap-4
+-0x1.39bda8p-1
+0x1.829c6p-4
+0x1.090b5cp-1
+0x1.ef7878p-1
+0x1.1d293cp-1
+-0x1.e80f1cp-2
+-0x1.ad968ap-1
+-0x1.0f66fp-2
+-0x1.9988p-6
+-0x1.1a3cfcp-1
+0x1.db8b94p-1
+0x1.72ad8p-4
+-0x1.f5e10cp-2
+0x1.fbee1p-3
+0x1.3f215p-1
+0x1.eb492p-2
+-0x1.1af83ap-1
+-0x1.9b74d4p-2
+-0x1.fdf118p-2
+0x1.a3badp-2
+0x1.7e866p-2
+-0x1.0431b4p-2
+0x1.91c46p-2
+0x1.7746dp-2
+-0x1.7fffecp-1
+0x1.056b9p-2
+-0x1.083d6p-1
+0x1.fb470cp-1
+-0x1.d1ec48p-1
+0x1.3f057p-1
+-0x1.f8c528p-2
+-0x1.e4ee4cp-2
+-0x1.1ca81p-1
+-0x1.4e92eap-1
+0x1.5f6e7p-3
+0x1.d79bfcp-1
+-0x1.45aa74p-2
+0x1.872ee8p-1
+0x1.4d9014p-1
+0x1.b287ecp-1
+0x1.b465b8p-2
+-0x1.2839acp-1
+-0x1.a4cfep-1
+-0x1.2c9bcp-3
+0x1.15f02p-2
+-0x1.dd72cp-5
+-0x1.ba56ep-4
+0x1.a8904p-3
+-0x1.ef92a8p-3
+0x1.2065a8p-2
+0x1.c56488p-2
+-0x1.954bcp-3
+0x1.bc48p-7
+-0x1.f61f84p-2
+-0x1.8359dp-1
+-0x1.b32234p-2
+0x1.fc2cf4p-1
+-0x1.4bc4f8p-1
+0x1.cd7f24p-1
+-0x1.db1e4p-6
+-0x1.a28098p-2
+-0x1.2bf9p-1
+-0x1.81efc8p-2
+-0x1.aba2cp-4
+0x1.8ae1c8p-2
+-0x1.d1e6ap-1
+-0x1.dd25a8p-2
+-0x1.f93c2cp-1
+0x1.dd9324p-1
+0x1.3765e4p-1
+-0x1.0dac7p-2
+-0x1.a9608p-1
+0x1.fde318p-2
+0x1.337c8p-1
+0x1.8db614p-1
+-0x1.319172p-1
+0x1.09ef18p-2
+0x1.c571ep-2
+-0x1.1292p-4
+-0x1.9a85bp-1
+0x1.59425p-2
+0x1.906908p-1
+0x1.88be34p-1
+-0x1.503f28p-1
+-0x1.c9a188p-2
+0x1.ec2a8p-1
+-0x1.b16e4ap-1
+0x1.021388p-2
+0x1.ed662p-2
+-0x1.193f92p-1
+-0x1.038c64p-2
+0x1.3925fp-1
+0x1.32212cp-1
+0x1.38824p-4
+-0x1.42e9c6p-1
+0x1.407c54p-1
+-0x1.6804c8p-3
+-0x1.bc1f7cp-1
+0x1.94ce6cp-1
+0x1.43d42p-2
+-0x1.3d1adcp-1
+0x1.e2195p-2
+-0x1.4b28fp-3
+0x1.49b4a8p-2
+0x1.6f94fp-3
+-0x1.85f7aep-1
+-0x1.b342a8p-1
+-0x1.12b19p-3
+-0x1.a63936p-1
+-0x1.bd046p-3
+0x1.cee62p-2
+-0x1.742fp-2
+-0x1.b42878p-3
+0x1.00e93cp-1
+0x1.94abd8p-1
+0x1.0e08e8p-2
+-0x1.559e28p-2
+-0x1.5ed2e8p-1
+0x1.e7864p-3
+0x1.bd05fp-2
+0x1.67a414p-1
+-0x1.9fa0fp-3
+0x1.1f152p-4
+0x1.4f7684p-1
+-0x1.1d122cp-2
+-0x1.01c70cp-2
+0x1.d73a1cp-1
+0x1.26e5bcp-1
+0x1.55708p-4
+-0x1.6e6712p-1
+-0x1.8fef8ep-1
+0x1.33cf34p-1
+-0x1.5a427p-1
+0x1.37f93cp-1
+0x1.731a9p-1
+0x1.3c529p-3
+0x1.4926ccp-1
+0x1.b3ba1p-3
+0x1.cf465p-3
+-0x1.e5693p-3
+0x1.f13ee4p-1
+-0x1.a98edcp-1
+0x1.0231e8p-2
+0x1.40effp-2
+0x1.503f08p-2
+0x1.1035e8p-2
+0x1.aca8fp-1
+0x1.9f7168p-2
+0x1.d72274p-1
+0x1.95622p-3
+-0x1.7119ap-2
+0x1.04c088p-2
+-0x1.05b6p-8
+-0x1.28ca18p-2
+-0x1.2063cp-4
+-0x1.cd5b44p-1
+-0x1.9dbf64p-1
+-0x1.244b5cp-1
+-0x1.e1494cp-2
+0x1.43862p-2
+-0x1.71c218p-1
+-0x1.ece8d4p-1
+0x1.9c90f4p-1
+-0x1.273d48p-2
+0x1.fe3378p-2
+0x1.2105p-5
+0x1.239a28p-1
+-0x1.bb7a94p-1
+-0x1.ed092ap-1
+-0x1.b7df7cp-1
+-0x1.4b533ep-1
+0x1.22d38p-6
+-0x1.19c328p-2
+-0x1.f4392p-5
+-0x1.89f67p-2
+0x1.3a2e08p-1
+-0x1.510248p-2
+0x1.a4bp-11
+0x1.de5e2p-4
+-0x1.564c6cp-1
+-0x1.1d750ap-1
+-0x1.81ebe2p-1
+0x1.cd574p-2
+-0x1.2ad842p-1
+-0x1.191cecp-1
+0x1.7d883p-2
+-0x1.26dabp-4
+-0x1.bbff78p-2
+-0x1.8ab08p-6
+-0x1.090e38p-3
+0x1.d00558p-1
+0x1.ef2fap-2
+0x1.b2fa3p-1
+0x1.f95f84p-1
+0x1.e75b1p-3
+0x1.3e7d4p-4
+0x1.5846ap-4
+0x1.3533c4p-1
+-0x1.b17f4p-5
+0x1.fa449p-3
+0x1.2e0638p-2
+-0x1.d2990ep-1
+0x1.ec7adp-1
+-0x1.e286p-3
+-0x1.65621p-1
+0x1.58ad2p-4
+0x1.70582p-1
+0x1.c7cfbp-2
+0x1.f8f84p-3
+-0x1.7203p-3
+0x1.16f7p-4
+0x1.31748p-4
+0x1.93a8e4p-1
+0x1.f3c948p-1
+0x1.4daf8p-1
+-0x1.d2312p-2
+0x1.d8a98cp-1
+0x1.06431p-2
+0x1.f5d98p-3
+0x1.6bddep-3
+-0x1.d03b7cp-1
+0x1.67d6dcp-1
+-0x1.df383cp-2
+0x1.a0835p-2
+-0x1.37e2fp-2
+-0x1.e49a96p-1
+0x1.211398p-1
+-0x1.82e2a8p-2
+-0x1.cb4e8cp-1
+-0x1.659502p-1
+0x1.c04604p-1
+0x1.a5d1b4p-1
+0x1.46d76cp-1
+-0x1.7b19ep-5
+0x1.5c1b5cp-1
+0x1.bd3e64p-1
+-0x1.43063ap-1
+0x1.275b28p-2
+0x1.0c6f8p-5
+-0x1.de2664p-1
+-0x1.608046p-1
+-0x1.e65cfep-1
+-0x1.92ee8p-7
+0x1.6b180cp-1
+-0x1.d5e6bep-1
+0x1.2b97e8p-2
+0x1.35cap-8
+0x1.188a88p-2
+-0x1.aa7374p-2
+0x1.574b48p-1
+-0x1.07cf74p-2
+-0x1.c99feap-1
+-0x1.108eacp-1
+-0x1.f27c68p-1
+0x1.1c5c4p-3
+-0x1.03ceecp-2
+0x1.11b964p-1
+-0x1.e98392p-1
+0x1.d9be9cp-1
+-0x1.61ffe8p-3
+-0x1.a3741ep-1
+0x1.33cde4p-1
+0x1.8ac7ap-4
+-0x1.fc857p-1
+-0x1.5a7818p-2
+-0x1.5d2afep-1
+-0x1.dc4ee6p-1
+0x1.c0148p-6
+0x1.83e65cp-1
+0x1.9f5d2p-2
+0x1.d39a6p-4
+0x1.5479p-3
+-0x1.48e21ep-1
+0x1.ceb4fp-3
+-0x1.ae448p-1
+0x1.8965b4p-1
+0x1.9e8a88p-2
+-0x1.ac6cb4p-2
+0x1.1b194p-5
+0x1.251d5p-1
+-0x1.eee746p-1
+-0x1.1d536p-2
+0x1.6ab71p-1
+0x1.9ff1e8p-2
+0x1.11871cp-1
+0x1.0810b8p-1
+0x1.d3f18p-6
+-0x1.68283cp-2
+-0x1.d37c2p-5
+0x1.13e798p-1
+-0x1.47886p-5
+-0x1.3337p-3
+0x1.57c8fp-3
+0x1.2caefcp-1
+0x1.da5914p-1
+0x1.cd108cp-1
+-0x1.ecc4d8p-3
+0x1.66606p-3
+0x1.bbde3cp-1
+0x1.9c318p-5
+-0x1.75e788p-2
+-0x1.64dbbp-4
+0x1.c4593p-2
+0x1.caf2ap-2
+0x1.a87e14p-1
+-0x1.1403b4p-1
+-0x1.ac0dbp-4
+0x1.db62fp-2
+-0x1.a12fc4p-1
+0x1.cdfc28p-1
+-0x1.69926p-2
+-0x1.502bbp-2
+-0x1.574218p-1
+0x1.c011ep-1
+0x1.6d1bap-1
+0x1.c7a868p-2
+0x1.43f958p-1
+-0x1.6b374p-1
+-0x1.6d7aap-1
+-0x1.33a6fcp-2
+0x1.3a0678p-1
+0x1.d59f38p-2
+0x1.b7e31cp-1
+0x1.3713p-5
+0x1.47ac8p-5
+0x1.21dadcp-1
+-0x1.6265a8p-1
+0x1.68c37cp-1
+-0x1.ce132p-1
+0x1.0946a4p-1
+0x1.ebfe2p-3
+0x1.6b7d84p-1
+0x1.b3cf58p-2
+-0x1.bd84ep-1
+-0x1.780fe4p-2
+0x1.6db1ap-3
+0x1.97156cp-1
+0x1.09b788p-1
+0x1.b1c854p-1
+0x1.912b4p-2
+-0x1.ed01p-5
+0x1.cdcbd8p-1
+-0x1.a09302p-1
+-0x1.833a6ep-1
+-0x1.f884ap-2
+0x1.7eaf8p-5
+0x1.824c6p-1
+0x1.3886ap-2
+0x1.91df1p-1
+0x1.7be39p-1
+-0x1.529458p-3
+0x1.74d7cp-5
+-0x1.77f2p-3
+0x1.f99df8p-2
+0x1.17ffp-2
+-0x1.269d8p-6
+0x1.455b2p-2
+0x1.b9d598p-1
+-0x1.dcd704p-1
+-0x1.a48b8p-6
+-0x1.6db8ccp-2
+-0x1.d6602p-4
+0x1.1bd8p-8
+-0x1.af13bp-4
+0x1.dd3e2p-4
+-0x1.f50a9ep-1
+-0x1.d07ef4p-1
+-0x1.d2eddcp-2
+-0x1.6c5b7p-2
+0x1.70845p-1
+0x1.9da48p-1
+0x1.96b66p-1
+-0x1.22f128p-2
+-0x1.5b5ac4p-2
+-0x1.ee96bp-1
+0x1.5ef40cp-1
+0x1.54efccp-1
+-0x1.624574p-1
+0x1.3d1568p-2
+0x1.a738p-9
+0x1.5d994p-2
+-0x1.597918p-2
+0x1.b4fc48p-2
+0x1.cd0ea8p-1
+0x1.30a8dp-1
+-0x1.c999d6p-1
+-0x1.7a7ef8p-1
+0x1.f607p-5
+0x1.548a68p-2
+0x1.385b4p-1
+0x1.60d74p-5
+0x1.302ae4p-1
+-0x1.356d6cp-2
+0x1.f37fecp-1
+0x1.bf6e5p-3
+0x1.b6c884p-1
+0x1.7d7f78p-1
+0x1.b22a9p-3
+0x1.e10e3cp-1
+-0x1.863b6p-3
+-0x1.38f80cp-1
+0x1.b9c254p-1
+-0x1.acb604p-1
+-0x1.15a294p-2
+-0x1.803e4cp-1
+0x1.da6c8p-2
+0x1.8b344p-1
+0x1.85c25p-2
+-0x1.d25ac4p-2
+-0x1.b09b2p-4
+0x1.3e38p-8
+-0x1.a7114p-6
+0x1.89977cp-1
+0x1.0acb3p-3
+-0x1.42c358p-1
+-0x1.ee57ep-1
+0x1.486728p-2
+-0x1.3fdce6p-1
+0x1.48efbp-2
+-0x1.64caeep-1
+0x1.d5caep-3
+-0x1.a3cb8p-1
+-0x1.2288fp-1
+0x1.3e1588p-2
+-0x1.e9e67p-2
+-0x1.21cc48p-2
+0x1.3d2984p-1
+0x1.a0cca4p-1
+-0x1.a04fdp-2
+-0x1.25f1dap-1
+0x1.1e9bap-2
+0x1.4108a4p-1
+0x1.50ee3p-3
+-0x1.3a5a3p-3
+-0x1.d7554p-2
+0x1.b69a9p-1
+0x1.e10efp-3
+-0x1.da7298p-2
+0x1.324cdp-2
+0x1.51918p-2
+0x1.405444p-1
+0x1.dad34cp-1
+-0x1.05e5f2p-1
+0x1.d920a8p-2
+0x1.fd1134p-1
+-0x1.0e61e4p-1
+0x1.54a04p-5
+-0x1.c3e258p-2
+-0x1.55ed38p-1
+0x1.1bb08p-4
+-0x1.de7178p-2
+-0x1.e66a1p-2
+-0x1.462088p-1
+-0x1.41de78p-3
+0x1.c34c98p-2
+0x1.b86004p-1
+-0x1.eb2514p-1
+-0x1.7a9f1cp-2
+-0x1.f13ec6p-1
+0x1.80a15p-3
+-0x1.ae8dacp-1
+0x1.234c3cp-1
+-0x1.25a678p-1
+-0x1.5822ep-2
+0x1.39153p-1
+0x1.c30c3p-3
+0x1.53f44p-2
+0x1.5c63cp-1
+-0x1.30f01p-3
+-0x1.f6b4fp-4
+-0x1.f13ap-7
+-0x1.324c6p-4
+-0x1.ecf1dp-4
+-0x1.38be46p-1
+-0x1.6370a2p-1
+0x1.d22428p-1
+0x1.350138p-1
+-0x1.14a154p-1
+0x1.bcd23p-1
+-0x1.df0c68p-1
+-0x1.9f00dp-4
+0x1.edac34p-1
+0x1.32efb8p-1
+0x1.84c29p-3
+-0x1.10e1e8p-3
+-0x1.486c2cp-1
+-0x1.98f516p-1
+0x1.6378bp-1
+-0x1.c4198cp-2
+0x1.29efe8p-1
+0x1.12109cp-1
+0x1.4e888p-4
+0x1.f4aa9p-1
+-0x1.d2651cp-2
+-0x1.59cecep-1
+-0x1.ce4988p-1
+-0x1.61e9p-8
+-0x1.173cd4p-2
+-0x1.e8a5e4p-1
+-0x1.5b6bb4p-1
+0x1.67ce3p-1
+-0x1.b76722p-1
+-0x1.50775ap-1
+-0x1.2d3e9p-4
+-0x1.d8be3cp-1
+0x1.dca3bcp-1
+0x1.210fd4p-1
+0x1.7e51p-7
+-0x1.beb18p-3
+-0x1.f7cc56p-1
+0x1.3ef4ap-1
+-0x1.30eb26p-1
+0x1.85c61p-2
+-0x1.13e324p-2
+-0x1.d79e6p-4
+-0x1.c6ee48p-3
+0x1.9f61p-1
+0x1.43ae58p-1
+-0x1.ae4594p-2
+0x1.36bab8p-1
+0x1.d412dp-1
+0x1.60f088p-1
+0x1.59c4e8p-2
+-0x1.6be8ep-1
+0x1.4d22ccp-1
+-0x1.f4d1aep-1
+-0x1.748f44p-1
+-0x1.be77p-1
+0x1.f2265p-1
+0x1.94b77p-2
+-0x1.353aecp-1
+-0x1.07ff28p-1
+-0x1.e85ec2p-1
+-0x1.6361ccp-1
+0x1.7258dcp-1
+0x1.01f8cp-1
+-0x1.9a8dacp-1
+-0x1.47f62p-4
+-0x1.4b78dp-1
+-0x1.f8703ap-1
+-0x1.47dc4p-5
+0x1.793728p-2
+0x1.5c8178p-1
+-0x1.1fc9p-7
+-0x1.a68b96p-1
+-0x1.1c12dcp-1
+-0x1.5bee6p-4
+-0x1.47378p-3
+-0x1.affafp-4
+-0x1.c019e2p-1
+-0x1.ffafd4p-2
+-0x1.90707p-1
+0x1.60a368p-1
+0x1.16b2p-7
+0x1.662a2p-1
+0x1.5faa28p-1
+-0x1.e379c4p-2
+0x1.bd1d94p-1
+0x1.614fcp-2
+-0x1.8268d4p-2
+0x1.d1829p-2
+0x1.d7e21p-2
+0x1.84854p-3
+0x1.3e824p-1
+-0x1.f99f9p-3
+-0x1.07f10cp-2
+-0x1.a37b8ep-1
+-0x1.850d24p-2
+-0x1.066c5p-4
+0x1.cd6198p-1
+0x1.87e788p-1
+0x1.251e3cp-1
+0x1.7a1fcp-4
+0x1.cd8928p-2
+-0x1.77a28p-2
+-0x1.2a95ap-3
+-0x1.e7133p-1
+-0x1.80359p-3
+0x1.afa88p-2
+0x1.054af8p-1
+0x1.d30d9p-2
+-0x1.202a5cp-1
+-0x1.bde58ap-1
+-0x1.99e088p-3
+0x1.bf528p-1
+-0x1.05594p-3
+-0x1.c7036p-2
+0x1.37ea4p-3
+-0x1.8b5464p-2
+0x1.9d1b4p-3
+0x1.3878p-10
+-0x1.7c5724p-2
+-0x1.d2ac62p-1
+-0x1.abfd3p-3
+0x1.a0a84p-3
+-0x1.062dap-5
+0x1.a638bcp-1
+-0x1.29a004p-2
+-0x1.44cb6p-3
+-0x1.d8816p-1
+0x1.cec9a8p-2
+0x1.881c2p-4
+0x1.e94d34p-1
+-0x1.c48c3cp-2
+0x1.1af6d4p-1
+0x1.7056f4p-1
+-0x1.d6b91p-3
+-0x1.f798b8p-1
+0x1.f18b48p-1
+0x1.e2d62cp-1
+-0x1.18e6p-1
+0x1.28ff24p-1
+-0x1.68f1f2p-1
+-0x1.173b04p-1
+0x1.b33b48p-2
+0x1.cdbc2cp-1
+0x1.ad19fp-2
+0x1.cb2d7p-3
+0x1.9e514cp-1
+0x1.5090b8p-2
+-0x1.8cea3p-4
+-0x1.c9a9cp-3
+0x1.ed2bfp-3
+-0x1.87ce8p-2
+0x1.ad9ecp-5
+0x1.720988p-2
+0x1.5f70fp-2
+-0x1.c73a7cp-1
+-0x1.0642cp-1
+0x1.f27e84p-1
+-0x1.cc7276p-1
+-0x1.33514ep-1
+-0x1.cb6b0ap-1
+0x1.2a2314p-1
+0x1.2f58ap-1
+0x1.f619fcp-1
+0x1.eb5b18p-1
+-0x1.4f2cep-2
+0x1.5b8654p-1
+0x1.acd26cp-1
+-0x1.d729fcp-2
+0x1.b3cc6cp-1
+0x1.3ff2d8p-1
+0x1.dc1c6p-4
+-0x1.c56764p-1
+0x1.4d97ap-1
+-0x1.f02efep-1
+-0x1.e1fb78p-3
+-0x1.938934p-1
+0x1.4ad958p-2
+-0x1.e72144p-2
+-0x1.b5374p-5
+-0x1.5a63cp-5
+-0x1.366ae6p-1
+-0x1.7d8cfp-1
+-0x1.942cfep-1
+-0x1.48fda8p-3
+-0x1.60fd4cp-2
+-0x1.1477e8p-2
+-0x1.37313cp-1
+-0x1.f8bfecp-2
+-0x1.9b4e24p-2
+-0x1.ca48a8p-1
+-0x1.b6ed5cp-1
+-0x1.e3f138p-2
+0x1.b45928p-2
+-0x1.70d83cp-1
+0x1.447a48p-1
+0x1.791be4p-1
+-0x1.90ef0ep-1
+0x1.502c3p-2
+0x1.ed851cp-1
+0x1.83f84p-3
+-0x1.cc0e48p-1
+0x1.a1740cp-1
+0x1.324db8p-1
+-0x1.a238bp-1
+0x1.1cc688p-1
+0x1.4652ep-3
+0x1.af77p-5
+-0x1.0946f8p-1
+-0x1.7ebb1p-4
+0x1.c4beep-3
+-0x1.cccef8p-2
+-0x1.3c1bap-5
+-0x1.b745c8p-1
+0x1.a0b358p-1
+-0x1.181e8p-7
+0x1.cdf3c8p-1
+0x1.0cb45p-3
+0x1.815e9cp-1
+-0x1.6c799cp-2
+-0x1.235818p-1
+-0x1.0c101ep-1
+0x1.0616dp-2
+-0x1.c8f78ap-1
+0x1.4e0bccp-1
+-0x1.7906dep-1
+0x1.ace7cp-2
+-0x1.6977e8p-1
+0x1.941d08p-1
+0x1.5940fp-2
+0x1.81c364p-1
+0x1.b49e3p-1
+0x1.8e90ep-4
+0x1.78a4fp-3
+0x1.4d35b8p-1
+-0x1.600bcp-6
+0x1.5b238cp-1
+-0x1.a1fa2ep-1
+-0x1.7ae23p-3
+-0x1.225d0cp-1
+-0x1.a57224p-2
+0x1.794d74p-1
+0x1.eba638p-1
+0x1.2ac464p-1
+-0x1.605d3cp-1
+0x1.a9b49p-2
+-0x1.c00264p-2
+0x1.c4d8ecp-1
+-0x1.822c78p-2
+-0x1.3d0e38p-2
+-0x1.8809d4p-2
+-0x1.64ffa4p-1
+0x1.1723a4p-1
+0x1.0293d8p-1
+-0x1.636e4p-1
+-0x1.ad425p-2
+-0x1.dcb304p-2
+0x1.2e8e2p-3
+-0x1.675d8cp-1
+0x1.016c2p-1
+0x1.48622cp-1
+-0x1.5abb7p-3
+-0x1.ecad64p-1
+-0x1.1707fp-1
+0x1.725a2p-1
+0x1.3338bp-1
+0x1.1ff88p-2
+-0x1.a4bfdp-4
+-0x1.9d731p-4
+-0x1.d8506p-2
+0x1.ed85d8p-1
+-0x1.030984p-1
+0x1.b6b92cp-1
+-0x1.b2d42p-4
+0x1.3acafp-1
+-0x1.3a4f84p-1
+0x1.55e788p-1
+0x1.d5423p-1
+0x1.3f6e6p-4
+0x1.0f7b4p-4
+-0x1.fe592ep-1
+-0x1.089d1p-2
+-0x1.b4e64cp-2
+0x1.a6b0f8p-1
+-0x1.a87e88p-3
+0x1.580c18p-1
+-0x1.1e8dp-2
+0x1.def604p-1
+-0x1.692834p-1
+0x1.793a2p-1
+-0x1.f8084cp-2
+-0x1.f08698p-2
+0x1.4880dp-1
+0x1.6fa44p-4
+0x1.1b64b8p-1
+-0x1.13eaa6p-1
+0x1.9645fp-2
+0x1.6e23ap-4
+0x1.cc71cp-2
+-0x1.d56b3ap-1
+-0x1.8c7f3p-1
+-0x1.785834p-2
+0x1.40e5ccp-1
+-0x1.18405p-4
+0x1.3f8c0cp-1
+0x1.1cac5cp-1
+-0x1.633e8p-3
+-0x1.f5f018p-2
+-0x1.aabb6p-1
+0x1.cb1354p-1
+0x1.c15868p-2
+-0x1.a05222p-1
+-0x1.00bf7p-3
+0x1.cdddcp-2
+-0x1.72874p-4
+0x1.0bd6bp-1
+-0x1.6cb288p-3
+0x1.26c078p-2
+0x1.c48fap-2
+0x1.995388p-1
+-0x1.5279a8p-1
+0x1.bdbb5cp-1
+-0x1.835b1p-3
+0x1.bb01fp-2
+0x1.f38eacp-1
+0x1.45ab9cp-1
+0x1.5b2844p-1
+0x1.2523e8p-1
+0x1.8eeccp-4
+0x1.ee4e2cp-1
+0x1.8daa08p-2
+0x1.403b8p-5
+0x1.f55804p-1
+-0x1.088ad4p-1
+0x1.608458p-2
+-0x1.2a7838p-3
+-0x1.77232cp-2
+0x1.5fb4ep-3
+0x1.014478p-2
+0x1.055338p-1
+-0x1.1d6dacp-1
+0x1.dc946p-2
+-0x1.1c713cp-2
+-0x1.a8f89p-1
+-0x1.12736p-4
+0x1.be7888p-2
+-0x1.2955d8p-2
+0x1.8f16bcp-1
+-0x1.016774p-1
+0x1.3137ap-1
+0x1.d7a64p-2
+0x1.c6dfdcp-1
+0x1.45575p-2
+0x1.7bc54p-5
+0x1.4d5288p-1
+-0x1.ec485p-2
+-0x1.1c7a4p-4
+0x1.25236p-1
+-0x1.8519f8p-3
+0x1.f2c8ccp-1
+0x1.4ac8b4p-1
+0x1.90ac7p-3
+-0x1.30141cp-1
+0x1.96aaa8p-1
+0x1.634048p-1
+0x1.9771p-4
+0x1.5d8fecp-1
+-0x1.6bb89cp-1
+0x1.e667cp-3
+0x1.8ad2p-1
+-0x1.c06a6p-3
+0x1.28c71p-3
+0x1.d0e16p-2
+-0x1.50a21cp-1
+-0x1.d56c5cp-1
+-0x1.3501ep-2
+-0x1.04be62p-1
+-0x1.018c98p-1
+0x1.0c82f8p-1
+0x1.c6b63p-3
+0x1.be05bcp-1
+-0x1.fd3ca8p-1
+-0x1.494646p-1
+0x1.e5511p-3
+0x1.7c6ep-1
+0x1.58ff6p-1
+0x1.d8d4f4p-1
+-0x1.b28f5p-1
+-0x1.34cd8cp-2
+-0x1.b99c52p-1
+0x1.55f49cp-1
+-0x1.4a21acp-1
+-0x1.424254p-1
+0x1.a9fd8p-6
+-0x1.a4e1e2p-1
+0x1.379378p-1
+-0x1.f4e304p-1
+-0x1.bdd12p-5
+0x1.056dep-4
+-0x1.5062dcp-2
+0x1.20052p-2
+-0x1.933d8p-1
+-0x1.f3e28cp-2
+0x1.1c2c24p-1
+0x1.10cdp-6
+0x1.2671cp-4
+-0x1.53fa6ep-1
+0x1.309998p-2
+0x1.d5f35cp-1
+0x1.e8a87p-3
+-0x1.578fp-7
+0x1.ceb784p-1
+0x1.8f4b58p-2
+0x1.39fe34p-1
+0x1.481258p-2
+-0x1.10e0ap-4
+0x1.2b0bdp-2
+0x1.93ff7p-3
+-0x1.8d9198p-1
+0x1.275dbp-1
+-0x1.4018fp-1
+0x1.b37ee8p-1
+-0x1.1fbe28p-3
+0x1.8e2c5p-3
+0x1.b00ff4p-1
+0x1.da87dcp-1
+-0x1.c9ad8p-6
+0x1.018e64p-1
+0x1.291f8p-6
+0x1.7930a8p-2
+0x1.bd1b1p-3
+-0x1.3dbcp-9
+0x1.7f02bp-1
+-0x1.fbd534p-1
+0x1.fac0fp-2
+-0x1.530a68p-1
+0x1.3b7668p-1
+0x1.231ad8p-1
+0x1.b6795p-3
+0x1.5100ep-3
+-0x1.601878p-1
+-0x1.6c1e7cp-2
+0x1.1980fp-1
+0x1.5c9904p-1
+0x1.0707ccp-1
+-0x1.48b0acp-1
+0x1.ffb64p-4
+-0x1.41486p-1
+-0x1.57acf8p-1
+0x1.95019p-1
+0x1.24d72cp-1
+-0x1.15ebp-1
+0x1.ab62d8p-1
+-0x1.df885p-3
+0x1.e26c5p-1
+-0x1.b525acp-1
+0x1.a66254p-1
+-0x1.67f03p-1
+0x1.0a91b8p-2
+0x1.76668cp-1
+-0x1.67e6bcp-2
+0x1.ea7a4p-4
+-0x1.58d6dp-1
+0x1.2dad48p-1
+-0x1.dc7b08p-1
+0x1.055348p-2
+-0x1.7f47dp-1
+-0x1.26d5cp-2
+0x1.8aa2a8p-1
+-0x1.e994ap-3
+0x1.d7525p-1
+0x1.92ecb8p-2
+-0x1.00fe36p-1
+0x1.fb84p-6
+-0x1.677372p-1
+-0x1.4dae7ap-1
+0x1.9a85cp-4
+0x1.d8a564p-1
+-0x1.8fa81cp-1
+-0x1.e1382p-5
+-0x1.ce5c0ap-1
+-0x1.69e0cp-6
+-0x1.f46c3p-3
+0x1.cce094p-1
+0x1.89b46p-4
+-0x1.a67be4p-1
+-0x1.b797c4p-1
+0x1.53692cp-1
+0x1.b29114p-1
+-0x1.72517p-1
+0x1.86804cp-1
+-0x1.6072ep-3
+0x1.828524p-1
+-0x1.9a966p-5
+-0x1.b56088p-2
+0x1.2cadep-2
+-0x1.39646cp-1
+0x1.f4b478p-2
+0x1.3d640cp-1
+0x1.10a88p-5
+0x1.03c3dp-3
+-0x1.9c47cep-1
+0x1.1f61ap-1
+0x1.c688a4p-1
+-0x1.03ee2ep-1
+-0x1.b2aed4p-2
+-0x1.add6bp-1
+-0x1.072cccp-1
+-0x1.429af4p-2
+-0x1.88de78p-2
+0x1.c0ea8p-4
+-0x1.37751cp-2
+-0x1.c345ap-1
+-0x1.06523p-4
+0x1.a7ef94p-1
+0x1.003f98p-1
+0x1.13301p-3
+-0x1.20fbc6p-1
+0x1.7ef7cp-3
+0x1.621bp-7
+-0x1.f4c256p-1
+-0x1.658184p-2
+-0x1.1f9b7p-3
+0x1.5a9b4p-4
+-0x1.ec2db6p-1
+0x1.5d4cdp-2
+-0x1.bb124p-5
+0x1.3461ap-3
+0x1.97067p-2
+0x1.8435ep-1
+-0x1.d03844p-2
+-0x1.039a84p-1
+0x1.53eb7p-2
+-0x1.31febcp-2
+0x1.f9d0d8p-1
+-0x1.83408cp-1
+-0x1.dba29p-1
+0x1.72b5f4p-1
+0x1.841ep-2
+-0x1.6eed34p-2
+0x1.d6746p-1
+0x1.50d3ep-3
+0x1.76f96p-3
+-0x1.653378p-1
+-0x1.b6bf28p-3
+-0x1.1e6b44p-1
+-0x1.0d201p-2
+0x1.92fc2p-4
+-0x1.5d7328p-1
+-0x1.612ef4p-1
+-0x1.4e2dp-1
+-0x1.ab82cp-6
+-0x1.fea768p-3
+-0x1.bf2b98p-1
+-0x1.0a90f4p-2
+-0x1.401448p-2
+0x1.bf0b6cp-1
+-0x1.34f5f4p-1
+0x1.81b8ap-4
+0x1.5e542p-3
+-0x1.4bd5b6p-1
+-0x1.adc58p-3
+-0x1.961bf4p-2
diff --git a/benchtests/libmvec/asinpi-inputs b/benchtests/libmvec/asinpi-inputs
new file mode 100644
index 0000000..9d1a329
--- /dev/null
+++ b/benchtests/libmvec/asinpi-inputs
@@ -0,0 +1,2508 @@
+## args: double
+## ret: double
+## includes: math.h
+0x1.350fc6069df8ap-1
+-0x1.eee2112c4876bp-1
+-0x1.236b62ec50852p-1
+0x1.edc5c63489e51p-1
+-0x1.fd62800520adfp-1
+0x1.d475f0f7403afp-1
+0x1.e90832724b53cp-1
+0x1.f609c0391a573p-14
+-0x1.feea04702b990p-1
+0x1.e8d6535b0d1c2p-1
+-0x1.9c7115f5fa7edp-23
+0x1.08d826c7ee854p-1
+0x1.e8e045abf094fp-1
+-0x1.5278029b07e33p-3
+-0x1.ea9383079d41fp-1
+-0x1.f4e3046089560p-1
+-0x1.fb398088adb40p-1
+-0x1.3e3c739c48dc4p-1
+0x1.7817337fddb7bp-3
+0x1.7dd391d9fc392p-3
+0x1.41afe6440736cp-1
+0x1.bfb881b8085a3p-1
+-0x1.e6707556b55cdp-1
+0x1.db3e67625fe65p-1
+-0x1.1bbd53433ed31p-1
+0x1.6188f44707072p-1
+-0x1.75a356a8a9292p-5
+-0x1.ddb0166dd02a0p-1
+0x1.e50b5048cb701p-1
+-0x1.f8ad822c7b0e3p-1
+0x1.9800b2fed7f04p-1
+0x1.b1dc245081b6cp-1
+-0x1.f72481a2b0f3ap-1
+0x1.597d37e0d6f70p-21
+0x1.ef40e79b3e65ap-1
+-0x1.5ba123fb3ff91p-1
+0x1.45bfc165da8f7p-1
+0x1.ccac70b0bde88p-1
+-0x1.f41a414f7827cp-1
+0x1.9b875417727f6p-1
+-0x1.c62a454b8d40bp-1
+-0x1.e0a141c4f0b16p-1
+0x1.4264601195208p-2
+-0x1.46119179eb783p-1
+-0x1.dfc3024659454p-1
+-0x1.e14ee796afcc8p-1
+-0x1.e99e96ab82107p-1
+0x1.e234b67ec84f9p-1
+0x1.d53303c005425p-16
+0x1.ed5b0764a14a2p-1
+0x1.b5e0c3ea9c8e9p-1
+-0x1.db7d6214c24c6p-1
+0x1.85d832f631a51p-2
+-0x1.0be2d5dd39df0p-2
+-0x1.9ba4068536d4ep-1
+0x1.e3b6708ecfee8p-1
+0x1.f81a9367f49ecp-1
+-0x1.e4347223f7a7bp-1
+0x1.a8d8b60a820e6p-2
+-0x1.ec157180be1bdp-1
+-0x1.eb95b087e8c43p-1
+-0x1.6bdd166779c0bp-1
+0x1.8bb3345d66b47p-1
+-0x1.e02f643898ecap-1
+-0x1.ab494400a4aabp-1
+-0x1.01f7d442b79e4p-3
+0x1.ea5ab67fbbf14p-1
+0x1.f603237a71369p-3
+0x1.f4a57127c7a0cp-1
+0x1.69a0a717bd007p-2
+-0x1.64fb05d3406f4p-1
+-0x1.a6a73323151a3p-1
+-0x1.22fcf3cc1a298p-1
+-0x1.d166868f2b02fp-3
+0x1.350857bbe150fp-3
+0x1.ea03400cda450p-1
+0x1.934551bfdd4f7p-1
+0x1.a1bf13ff7e529p-1
+0x1.40e3e60b110dcp-1
+0x1.ebf2d1787c1b0p-1
+0x1.bf44e6858ccc2p-1
+0x1.efb2212f852c5p-1
+0x1.e4bcf61e9db8ep-1
+-0x1.f67e4278236dbp-1
+0x1.72e2e6f704395p-8
+0x1.eb18e737043a5p-1
+0x1.c11e3263f847dp-19
+0x1.6c8dc764c7ce3p-1
+0x1.3a30f3a82e677p-2
+0x1.5d3554f6157efp-3
+0x1.d7e135698a916p-16
+-0x1.9a0b900abb552p-1
+-0x1.db02f20dbc26bp-13
+0x1.dbf69357aebd4p-1
+0x1.1c15c1b6076dbp-1
+-0x1.98e8e522e4a82p-23
+-0x1.60da4694b88e1p-1
+-0x1.e82085e53dbf0p-1
+-0x1.0cce4159c974dp-1
+-0x1.edebc49f4f3bcp-1
+-0x1.d5d0b54aec8f3p-3
+-0x1.b6c7247c84ca1p-2
+0x1.566d76162c4a2p-1
+0x1.1f8126af6a5eep-1
+-0x1.4042c01dfeb13p-1
+0x1.3745936ce6406p-2
+0x1.e845447d64568p-1
+0x1.e9e5d6a4f999ep-1
+-0x1.881fb480c1717p-2
+-0x1.632ec650a0086p-1
+0x1.ea79105af3018p-1
+-0x1.e87f8637d44ffp-1
+0x1.2038f78b9bcc0p-2
+0x1.888731b818bb9p-1
+0x1.247cb5abaf830p-1
+0x1.71d2a5d08bb38p-3
+-0x1.30f5d4f0d5da3p-1
+0x1.e8eee13ebc573p-1
+0x1.35a443a6ef606p-22
+0x1.1f4110dbc1d7cp-1
+0x1.ab85b5da29994p-1
+-0x1.080f952236c35p-1
+-0x1.2b5b02e6cc1b2p-3
+0x1.ac830678d8c8ep-4
+0x1.0ba5029d5c201p-1
+-0x1.2b3e149bb0426p-2
+0x1.eaa744fd96fbap-1
+-0x1.ebf5435363845p-1
+-0x1.f47ea66f3af8ap-19
+0x1.e9c7d49d082bfp-1
+0x1.ea64823156f61p-1
+0x1.ea9222fcef492p-1
+-0x1.38ca90ff41214p-3
+0x1.98b000eb73a71p-1
+-0x1.3fb91174bf8cep-1
+0x1.6831750c7d576p-8
+-0x1.e6c711f8a07a2p-1
+-0x1.e10a8025fd5c2p-1
+0x1.df7c8777dba5ap-1
+-0x1.6c92c2bf14b20p-11
+0x1.c2b9937c51413p-10
+0x1.ed9a717edd7eap-1
+0x1.26cb23fb114cep-3
+0x1.a1dd30e8d133ap-1
+-0x1.596e3118407aap-1
+-0x1.815f557e4dd72p-1
+0x1.91d3b66fca3a2p-1
+0x1.aee2069bb58c2p-1
+0x1.410da160d3759p-6
+-0x1.efd3965c7e5acp-1
+0x1.ebcc105c3c99dp-1
+0x1.f9c7e2ecd680bp-13
+-0x1.0d0876f871020p-1
+-0x1.1cb73699e8924p-1
+-0x1.f33b17f4530b4p-1
+-0x1.cd90d53a85604p-24
+-0x1.e7b7065c2a56bp-1
+0x1.4325b7a1b9323p-2
+-0x1.3007019386da4p-5
+-0x1.2afe01c77967ap-13
+-0x1.dd2f071cce027p-1
+0x1.79dbd61da7b2fp-3
+0x1.90a0030825b71p-1
+-0x1.3b898257384cap-1
+-0x1.5c13731da33bap-2
+-0x1.df2c8655fc70dp-1
+0x1.1dbe97dccb13ap-24
+-0x1.fad96389524bfp-1
+0x1.ddccc6b661857p-2
+-0x1.fb6fb5159af3ep-1
+0x1.d94283b31661cp-1
+-0x1.a08b373392dc9p-1
+0x1.bb7ec42dcb619p-2
+-0x1.f450159e992b8p-1
+0x1.6959f4fae20f8p-24
+0x1.36f464d433610p-1
+-0x1.c2cc227b47f2bp-1
+-0x1.3eb9f3e9ab4fep-1
+0x1.655d872a08e7bp-1
+0x1.426bd7fd10932p-1
+-0x1.bd54d6b8bf754p-25
+-0x1.ca48c150acb42p-1
+0x1.fba5275cb7d91p-1
+-0x1.de01b625f1851p-3
+0x1.ed715043085c5p-1
+-0x1.e4bed6f91c84bp-1
+-0x1.0c6132d48b23ap-1
+-0x1.8740844edfccfp-1
+-0x1.f5ea24dfceaccp-1
+-0x1.4e1ea0cb718b9p-10
+-0x1.e2e3f55bb23a1p-1
+-0x1.ef8592238558ap-1
+0x1.ba09c237c2a98p-1
+-0x1.1c02e1ae8e614p-3
+-0x1.e3480667a3c1dp-1
+0x1.e098e320da0bap-1
+-0x1.020e63d1fb6b3p-10
+0x1.156314d8b8b9ep-1
+-0x1.a6d562a0b9b68p-1
+-0x1.a556923b876e4p-1
+-0x1.005624a6a1606p-2
+-0x1.4515b4c2b21dap-1
+-0x1.00882585a29eep-1
+-0x1.4e97477367b64p-1
+0x1.e56aa246ff0e4p-2
+0x1.f69774c91b3a3p-1
+-0x1.edbeb6d147be3p-1
+-0x1.d044d435326e6p-1
+0x1.9dd6d688e8b6ap-1
+0x1.8832042b08d37p-1
+-0x1.e755f3286db4ap-1
+-0x1.7741b1eae9cc5p-1
+-0x1.ec4f82e92c41cp-1
+0x1.c470754b52d70p-3
+-0x1.cdf6e43174ac0p-3
+0x1.b54d76dc019edp-1
+0x1.de1511c382622p-1
+-0x1.1b6bb0f6cd48dp-1
+0x1.f8f3a7b3d26dbp-10
+-0x1.e8a697e00810dp-1
+0x1.029cb182129c5p-1
+-0x1.82fb23737c09ap-1
+-0x1.ba3f8283bda3cp-1
+0x1.32ef66d1351e1p-1
+-0x1.ff0942c4470a9p-1
+0x1.e861824f0b0c5p-1
+0x1.0ad654e7bcdb2p-1
+0x1.94bf67e731b1dp-21
+-0x1.ce92262e12415p-3
+-0x1.b11a761584f00p-1
+-0x1.ee0375698a186p-1
+0x1.72968114620fbp-3
+0x1.38a8e30dd439dp-2
+0x1.ef7a104666151p-1
+0x1.1b8030b9ef132p-1
+0x1.e52ab2d0668d7p-1
+-0x1.00e2e49d1662bp-1
+0x1.7aa0818bb671bp-23
+-0x1.ecf921278c665p-1
+0x1.e53b304fb4d06p-3
+0x1.3748859f74cebp-1
+-0x1.e96cd6cb3a5dap-1
+-0x1.eadbe1b00f3bap-1
+0x1.34b8b20a231ebp-1
+-0x1.a133128a2cac6p-1
+0x1.f0ffe198f98f8p-3
+-0x1.a978c66c2b77ep-21
+0x1.e0afd4eddd684p-1
+-0x1.eb3b238d0737ap-1
+-0x1.e514d20443604p-1
+-0x1.9d64d47733225p-3
+-0x1.e589d06cb88d4p-1
+-0x1.360155ce19621p-1
+0x1.db3d40b252ac3p-1
+0x1.1fbe750678f55p-1
+0x1.033e6517daa6fp-5
+-0x1.ed55067dcc2e0p-2
+0x1.df2253bc59523p-23
+-0x1.879d741b2c118p-23
+0x1.b47fc608b2e66p-1
+0x1.d74ca166c7f3bp-1
+0x1.f5f1256f888b1p-1
+-0x1.e06af0ec49382p-14
+-0x1.e97461cc47dabp-1
+-0x1.e6fe5447590afp-1
+-0x1.e86c3331f93a8p-1
+-0x1.aacae317ef936p-1
+0x1.b41644690944cp-1
+-0x1.8209c34d990bap-1
+0x1.712d01d18f1acp-1
+0x1.ed0c5662218c3p-1
+0x1.90d8e69b9ce07p-1
+-0x1.a7b9e784d9434p-16
+0x1.f91c375372b6fp-1
+-0x1.bf83e21f654b3p-1
+-0x1.e38cc36ff8c63p-1
+-0x1.842b3414ac978p-1
+0x1.161e221d66041p-2
+-0x1.e9a1529dfa710p-1
+0x1.164f53c3dbd36p-1
+-0x1.e2a192784167ap-1
+0x1.d2f31136d5558p-1
+-0x1.0cad003c37274p-22
+-0x1.e402a7e83b556p-1
+0x1.d0ee108472a16p-1
+-0x1.0eb530c4ce24ap-13
+-0x1.ef29f4bd04e93p-1
+0x1.dc65a4f6e740cp-1
+-0x1.97d975a6ad4f1p-1
+-0x1.b427d0ab69502p-2
+-0x1.f84bc3e23afa0p-1
+-0x1.eada1177b2a78p-1
+0x1.f9f556f848f73p-1
+0x1.5da9b1ed0a67dp-2
+-0x1.b09c16fdb0e04p-1
+0x1.8099017d801c4p-1
+-0x1.86a880766a1c9p-1
+-0x1.303886d1999d3p-2
+-0x1.3b32d4601049dp-2
+0x1.9af5d2ec8ebd9p-1
+0x1.7b7961500158ap-3
+-0x1.850fc657a7c8dp-1
+-0x1.679055ba9585fp-2
+-0x1.a334d05fa6dd2p-1
+0x1.54edc38ae367fp-1
+-0x1.149aa666c3c46p-2
+0x1.db29728be3d13p-1
+0x1.ef2d366fb9622p-1
+0x1.85d2c6d29e956p-1
+0x1.6cc7155575699p-2
+-0x1.070fb3b78d7bap-13
+0x1.b996c3cc0af1dp-1
+-0x1.ecd953aeda13ap-1
+0x1.4b4da5a783ab2p-1
+-0x1.da0f94397e1efp-1
+-0x1.eebfe7785b810p-1
+0x1.bbbd81413465ap-2
+-0x1.db37b245824d8p-2
+0x1.b18707b322819p-6
+-0x1.63aaf1836f8f5p-4
+-0x1.73b5c0ef358ffp-1
+-0x1.f3f5449170a5dp-1
+0x1.679742e395bb2p-3
+0x1.0f5d16ce3edabp-12
+0x1.6868a3065fa6ap-1
+0x1.e09861e83936cp-1
+0x1.426c2703c1edbp-2
+-0x1.784ef6124eac0p-10
+0x1.f4da573b55ec2p-1
+-0x1.1250820739879p-1
+-0x1.926f219c2ebc7p-1
+-0x1.b03cb5319aa16p-1
+-0x1.432597af65dc0p-1
+0x1.f2ef13107c805p-1
+-0x1.debb0319481e9p-1
+-0x1.e6c9b767c2e47p-1
+-0x1.1cfef6b1b5391p-3
+0x1.a3495200a739dp-1
+0x1.bb7d031207cbcp-1
+-0x1.a1e1472875de1p-1
+-0x1.fef5368baa990p-1
+-0x1.ffa8a2b9fe667p-2
+-0x1.db17773676353p-1
+-0x1.7744f61c58e3dp-2
+0x1.94efe0d3de07ep-2
+0x1.d28cd2f0b7253p-1
+0x1.71ec10c132d7dp-1
+0x1.eec3c508f7debp-1
+-0x1.84c3358f28de2p-1
+-0x1.e88bb44ebcca7p-1
+0x1.c8dfe2e844f26p-1
+-0x1.5764f1562f46cp-1
+0x1.dd7fc52e06795p-1
+0x1.ead0e0dd735c1p-2
+-0x1.d9c472df196e8p-1
+0x1.47397541dfafap-1
+-0x1.efe2c7ae66583p-1
+0x1.f39bc1d029169p-1
+0x1.388e371209c65p-1
+-0x1.cf7594c4759eep-19
+0x1.93ba85eda890cp-2
+0x1.ef7e57c04e5e5p-21
+0x1.3a13625122b61p-1
+0x1.f03355e0191c2p-1
+-0x1.eaa0b7cbc4b05p-1
+0x1.dc64653df1bc8p-1
+-0x1.da0274b24d4e5p-1
+0x1.1ef635c892de4p-1
+0x1.7985928fa8ea5p-2
+0x1.e8af54cc7a4a1p-1
+-0x1.4ecfd3add4ca1p-1
+0x1.edae154f725f1p-1
+-0x1.f841c459354cfp-1
+0x1.640c203fbc506p-1
+0x1.e1334385061fbp-1
+-0x1.e4af910db6fb1p-1
+0x1.eef8e75eeff24p-1
+0x1.52b3468ba247fp-19
+-0x1.c3007317cdb73p-1
+0x1.793397c5de6cfp-1
+-0x1.56f0f40ef4f93p-5
+0x1.7137163d0b95cp-26
+0x1.d97632e6c0216p-1
+-0x1.58f200ed16778p-1
+-0x1.e333144686ce6p-1
+0x1.ecfff5d1ed4fcp-1
+-0x1.bbcb739c535d8p-3
+-0x1.b83b54ffc1ce3p-1
+-0x1.c5b4f73fa50c8p-25
+-0x1.f0dcf6647d4a6p-17
+-0x1.e2a0b2142f471p-1
+-0x1.6811368ab0abbp-1
+-0x1.dc98c564661f8p-2
+-0x1.51a64736cca11p-1
+0x1.a87ec3c5f01d2p-2
+-0x1.13c43714b5577p-4
+0x1.ecb79537e7c0bp-1
+0x1.8ad66704aa830p-1
+0x1.8b81a17344821p-3
+0x1.fbea24d5ecac7p-1
+-0x1.d5b456504afabp-1
+-0x1.68a3377a06206p-1
+-0x1.e52744bcbb1bfp-2
+0x1.968042aade389p-1
+0x1.e02467b79461bp-22
+-0x1.effa02c2a5b57p-1
+0x1.6148d164ff733p-3
+0x1.a257b5f59a887p-1
+-0x1.ecd6e096725c1p-1
+0x1.4dcd868b1c423p-1
+0x1.b518559ba2afep-1
+-0x1.fd36e5f6ae177p-17
+0x1.7ab1d7104d182p-18
+-0x1.a0b161ecebb24p-24
+0x1.eaef2277ad27bp-1
+0x1.5537a12ead14fp-1
+-0x1.a353d51793c9ep-1
+0x1.d974c464f7ce7p-1
+-0x1.e9d4a5abc7463p-1
+0x1.8dfc202611058p-8
+0x1.49c49777c6afcp-1
+0x1.f8be91c860c1ep-1
+-0x1.744184b2f352fp-3
+0x1.4f7741d4eac81p-1
+0x1.fbcca55ea9e6ap-1
+-0x1.e859d3e460e92p-1
+0x1.5d39a31f530ddp-3
+-0x1.99da728aaed87p-1
+-0x1.c773d52b04af3p-3
+-0x1.27fc667b6fe57p-2
+-0x1.ee4664ab8f311p-1
+-0x1.240eb5bacc34ap-15
+0x1.aab10790e80c0p-1
+-0x1.1c32437314611p-1
+-0x1.e3aae42688852p-1
+-0x1.2b97b6959b92ap-1
+-0x1.124df14d190d5p-22
+0x1.d29df3ade00f8p-21
+-0x1.e70102ffd26f4p-2
+0x1.c9846775a72c1p-3
+0x1.2ee67226d5529p-1
+-0x1.d84381008f610p-1
+0x1.fae6228180a55p-1
+-0x1.d1cb30475aba6p-1
+0x1.475825caac544p-3
+0x1.e2d180d75310fp-1
+0x1.8860226237168p-1
+-0x1.bdb8f33f2142bp-6
+-0x1.aecd11f1ad305p-1
+-0x1.50e857e4f8090p-1
+0x1.09a7b4c454c6ap-1
+0x1.33a1b5c1f5142p-2
+-0x1.d473c0c10260ap-1
+-0x1.e6bcc76ef1341p-8
+0x1.e9a025b19d4e7p-1
+-0x1.e61c564b19c20p-1
+0x1.b1c890371859cp-1
+-0x1.e9de02e7fa0f7p-1
+0x1.8eae41c2d6d3bp-1
+-0x1.a043635f96fd5p-1
+-0x1.18077176e1632p-24
+0x1.7063d30f52d4dp-1
+0x1.e82d46287af59p-1
+0x1.e77a63eb49c28p-1
+-0x1.2e923371f4df7p-1
+0x1.32f392b11aa13p-2
+0x1.cf48a104a230ap-1
+-0x1.ffb8054bd5bb2p-1
+0x1.d961a7444a368p-1
+-0x1.2908136966a6ep-1
+-0x1.e8e5f46caed20p-1
+-0x1.cca7367cafebcp-1
+0x1.8a7d3113e9871p-1
+-0x1.9c20d073da00dp-1
+0x1.685602f47ee38p-17
+0x1.dbe65032e6aafp-1
+0x1.e39cc443d68bep-1
+0x1.ef75b5fbc2038p-1
+0x1.6fd3f20dabcdep-3
+0x1.ef2e5742cbc3bp-1
+-0x1.a139a4f96363fp-1
+-0x1.f936e3257b29bp-1
+-0x1.e83e578b67404p-1
+0x1.809f14efba3abp-1
+0x1.ef0cc05585683p-1
+-0x1.e0ab6532e03e6p-1
+0x1.e825a4e96f86cp-1
+0x1.944c53b6fcba2p-24
+-0x1.eef7764fb6703p-1
+0x1.dbd546810ad04p-1
+-0x1.ed82202786af0p-1
+-0x1.e744b298a1822p-1
+-0x1.f66403b0db0f6p-1
+0x1.b823a13640780p-1
+-0x1.8fd743dba9526p-1
+-0x1.6ad6002662fadp-2
+0x1.af29d1ff6c1dap-2
+0x1.a40a30c84d9d2p-1
+-0x1.eef1466de9bbcp-1
+-0x1.ea451649dac69p-1
+-0x1.be12773f273cdp-10
+-0x1.2ea1f2cfba778p-22
+-0x1.ed2eb7554cecap-2
+0x1.5604a6ebad5aap-3
+-0x1.dcb4e5d23da48p-1
+-0x1.e0e2d4e18e11fp-1
+0x1.7cbf026e8d176p-1
+-0x1.e92df6fb8cb14p-1
+-0x1.e0f877f179d56p-1
+-0x1.0460742bc8cdbp-1
+0x1.f9c6e1a503f35p-1
+-0x1.de3ca0ef987b7p-1
+0x1.ee2a61e036810p-1
+0x1.eb29729cac7d4p-1
+-0x1.dc41f5d54e145p-1
+-0x1.ee27548fb036dp-1
+0x1.8676b01d07ce0p-1
+-0x1.9eb434f5e23dfp-10
+0x1.95688374a65cep-1
+0x1.d8b331ab26940p-1
+-0x1.ec5af0c2ccbc9p-1
+0x1.bca24367daca5p-3
+0x1.4c5f30d4e8c83p-1
+-0x1.990c52576b03bp-1
+0x1.279527d6f3123p-2
+0x1.e7d10654db7cfp-1
+0x1.afabd749d11aap-1
+-0x1.e54870e856fc8p-1
+-0x1.a9b6e450b1736p-3
+-0x1.e4b0c74cbee31p-1
+-0x1.77a9538ce58c8p-10
+0x1.aab3b79abd652p-22
+0x1.efdfd56aee773p-1
+0x1.1dfac77800264p-1
+-0x1.f5e7d3b5fa6b2p-1
+0x1.569077a89293cp-9
+-0x1.f086970443d28p-1
+-0x1.1e2b763ff1c1bp-16
+0x1.fa84d6fc1bfb4p-1
+0x1.fbf321159facbp-1
+-0x1.56f5410b90154p-15
+0x1.ec2962b60792cp-1
+0x1.82723136c1041p-1
+0x1.66ec3602d5c0ep-2
+0x1.6006c4b0268aap-1
+0x1.db8e205953140p-1
+-0x1.6f4ec45af7480p-1
+0x1.713b02f6a04eap-26
+-0x1.63b1454647238p-1
+-0x1.f2d2c4f587093p-1
+0x1.dbec93d39559cp-1
+0x1.f59e8219eeb3dp-2
+-0x1.973c3291c4d50p-1
+0x1.30a10510388bap-1
+0x1.f1f61783e79d0p-23
+-0x1.c101b1037e3f5p-1
+0x1.d257940a5137fp-3
+-0x1.f470523c426b8p-1
+0x1.0c37b2dba00aep-19
+-0x1.ebcbb7d352b98p-1
+-0x1.f45c0719f0ef0p-3
+-0x1.9fa667856a81ep-1
+-0x1.3706e59f06a0cp-1
+0x1.e87165a85bf00p-1
+0x1.d9f9e3d739f44p-1
+-0x1.e26fb2a17aaa7p-1
+0x1.0be6a11da1596p-1
+0x1.f8d1b326b2ed1p-1
+-0x1.ee19b06500228p-1
+-0x1.e40de71a02d0dp-1
+0x1.98bc15dbd69bcp-1
+-0x1.eb16f70b61cccp-1
+0x1.93a7216be0c5dp-2
+-0x1.8bdbe0b9e2d2bp-10
+0x1.ff0fa32b3accap-1
+0x1.e7b000c9475a2p-1
+0x1.e4c7b30bac6b0p-1
+0x1.e82ba33a4ce9dp-1
+0x1.db41972b5b7e1p-1
+0x1.e2fab75688c77p-1
+-0x1.d674412d314f7p-1
+-0x1.a05a64a3c376cp-16
+0x1.d57127f394c23p-1
+-0x1.8bb3428cca392p-1
+0x1.66540667f4775p-3
+0x1.df8192132032ep-1
+0x1.16be46faa5fd0p-1
+-0x1.8f5d4684f487ap-1
+-0x1.515e3214390b1p-2
+-0x1.e9c224c0132f3p-1
+-0x1.4792b4bea367fp-3
+0x1.f683c622269b9p-1
+-0x1.fd61a56639941p-1
+-0x1.edb8f5b456c1ep-1
+-0x1.1227a7cbdc567p-1
+-0x1.daf8854d3e5e7p-1
+0x1.aee25650abb06p-1
+-0x1.513f8376de706p-1
+-0x1.a96f12a5be2cdp-1
+0x1.ec7da7eb5220ep-1
+0x1.a010e6eeba432p-1
+-0x1.e73721ebf9720p-1
+0x1.d827e42f715f6p-1
+0x1.53cad6d41476cp-2
+-0x1.5921d3708a0c3p-1
+-0x1.c05b22303587cp-1
+-0x1.97f484b97f423p-1
+-0x1.2b4492bd73b64p-15
+-0x1.eb0e768cad7c1p-1
+-0x1.fe0c97242979ap-1
+-0x1.ec354776dd3bbp-1
+0x1.cf0d270e371f6p-1
+0x1.66e7a5c93cffdp-9
+0x1.fd0d826c5a1d9p-1
+0x1.afbca363725d1p-1
+-0x1.d77251ee3df8ap-1
+0x1.1692a2cdd5549p-3
+0x1.6e88143883032p-1
+-0x1.f41ec1c712c7fp-1
+-0x1.a6386135c889ap-1
+0x1.de45269a5dce2p-1
+0x1.c6a6b4f8f837ep-24
+0x1.33d06466c6b9bp-1
+-0x1.860fd51abe700p-1
+0x1.fbd696b6938a5p-3
+-0x1.e83e45de922aep-1
+0x1.ec4e74a3a5175p-1
+-0x1.7a9f95d8c3a13p-1
+0x1.3cd2b0e0024b4p-2
+0x1.c5b6f70209b78p-5
+0x1.e5b073ba13507p-1
+0x1.c5914768121eap-1
+0x1.9e87f2c6f8986p-1
+-0x1.835ef3aca7e57p-1
+-0x1.dc7de37754abap-1
+-0x1.8635367864672p-1
+0x1.d6fcd19613123p-1
+0x1.713322dda040ap-26
+0x1.b301916b3e546p-1
+-0x1.5907373541318p-1
+0x1.b67804eb47f52p-1
+-0x1.01d6c56bc4577p-1
+-0x1.268026d7131f6p-1
+-0x1.8a2f305b13ed1p-2
+-0x1.b110618fb5339p-1
+0x1.1e2ec7a7b3ffbp-1
+-0x1.eeac0378d3c2dp-1
+-0x1.a8d514f3e4860p-18
+-0x1.3c73f2a282f70p-1
+0x1.4b69664a697c8p-1
+-0x1.5ac3218682dafp-9
+0x1.d9d2a5d6d0097p-1
+0x1.ea88c7564fe3cp-1
+-0x1.01b182a357b89p-1
+0x1.ef3d33758c65cp-1
+0x1.755957a759d6bp-1
+0x1.dc5b74cf50867p-1
+-0x1.173f6772617c0p-21
+0x1.edbf80f8c492cp-1
+0x1.d53f03f943012p-1
+0x1.8a3cb07f33bafp-3
+0x1.03af809e77795p-2
+-0x1.eaeaa63245741p-1
+-0x1.f97c70509940cp-2
+0x1.da0741692c059p-1
+0x1.ade411f3da571p-1
+-0x1.b2a12164a95c7p-3
+-0x1.8fa041d702f22p-3
+-0x1.97f1b066c701bp-3
+0x1.b707763754484p-3
+0x1.e499e4e2ad8e9p-1
+0x1.311253501f3f2p-3
+0x1.259d37e26150cp-1
+-0x1.dfb6e365f91ecp-1
+-0x1.aa22065b8f2c3p-1
+-0x1.da1ff0b273cd7p-3
+0x1.be2cb0d8c5b44p-1
+-0x1.3439a53555121p-2
+-0x1.e210555e48210p-1
+-0x1.d85926848cf29p-1
+-0x1.e9a0822672116p-1
+-0x1.aa5ad517117bep-2
+-0x1.8f0b53139648dp-20
+-0x1.f86a7137c57dcp-1
+0x1.bb51b4278652ep-3
+0x1.0e4d9562788afp-1
+0x1.7ce703c2bf2a6p-1
+-0x1.059cc53835908p-10
+0x1.89b894e0e9e37p-1
+0x1.9d6604d4efeddp-2
+0x1.aa6bf1e6b5ff3p-1
+0x1.d053b71612732p-1
+0x1.c58290a57b35bp-2
+-0x1.e79c23c2f87cbp-1
+-0x1.ef28737769e8cp-1
+0x1.e1bf0284f90b9p-15
+0x1.b8c1328d43f30p-1
+0x1.ff61460c87dbbp-1
+-0x1.ea06f3c18052fp-1
+-0x1.929a25bc4e316p-1
+-0x1.462ed634d347cp-2
+-0x1.f89887250e6fcp-1
+-0x1.bc99a3c89c1e3p-22
+0x1.5c75e768472b4p-2
+0x1.8f6fa012e2770p-1
+0x1.f7af22a6b572dp-1
+-0x1.3f54f252e3acdp-2
+-0x1.ed3fa609dbee7p-1
+0x1.dfbca7880638fp-1
+0x1.3e1116e4de263p-1
+0x1.dc6a025cdf557p-1
+-0x1.8bfbe75d98041p-1
+0x1.e9e2b495fa2c1p-1
+-0x1.2642422821515p-1
+0x1.edfca7dddb0f9p-1
+-0x1.ee8ea3f68169fp-1
+0x1.ad17b2686c65fp-1
+-0x1.c4f6f0a35fd4cp-1
+-0x1.ef6f43ea3e075p-1
+0x1.4f28f1201b762p-3
+-0x1.ef68700ccd1ddp-1
+-0x1.d63ec71b1db72p-1
+0x1.eece451c9800bp-1
+-0x1.e374023473851p-1
+-0x1.dae080dc56bf7p-1
+-0x1.f41933cd4db1ep-1
+0x1.8df8a16525f39p-3
+0x1.f5c64629537c0p-3
+-0x1.74e212eb04e5ap-1
+-0x1.c78c50a1f0152p-1
+0x1.ec1a10580c98bp-1
+0x1.aadfa2e96b6e0p-3
+0x1.9c1383ae4954fp-1
+0x1.dfb2223aa208cp-1
+-0x1.cfffa4412b604p-3
+0x1.cee130d0b5a2bp-3
+-0x1.e307d799961afp-1
+0x1.fe1874b71dffap-1
+-0x1.f0dd20e110586p-1
+-0x1.e6f124bc80f9bp-3
+0x1.a84f50096564fp-1
+-0x1.eb54d7123b641p-1
+0x1.dde4d0a43d6ccp-1
+0x1.460c714b7fc02p-1
+-0x1.eb14401a251dfp-1
+-0x1.6d6c5532e2cd9p-21
+-0x1.b0c634676faacp-4
+-0x1.ab062115542b8p-2
+-0x1.12c3e674c7017p-3
+0x1.f2f2a467a4711p-1
+-0x1.b410a265bf2edp-1
+-0x1.e142463188648p-1
+-0x1.1e06e6cea4258p-2
+0x1.60e380d477367p-2
+0x1.ecabd7e786fccp-1
+-0x1.ea047532c3043p-1
+-0x1.e64087ec5398bp-1
+-0x1.8192b282dc78ap-3
+0x1.bc3be459c0118p-2
+0x1.e848464011e2bp-1
+-0x1.1635a3dbd5aaep-3
+-0x1.f027619f4ec1cp-1
+-0x1.cc5b228bab092p-2
+-0x1.54c7045181291p-1
+-0x1.d878651499cdcp-1
+-0x1.2c92931e89713p-1
+0x1.eea2d2cca4e34p-1
+0x1.5cb4743cbb81ep-13
+0x1.4e17a4a822867p-2
+-0x1.dbb357be5deebp-1
+0x1.e59516797b352p-1
+0x1.db51b6a627095p-1
+-0x1.60c746f7d0703p-1
+-0x1.ea37c48f25f9dp-1
+-0x1.7ac0566338086p-2
+-0x1.baf382671db8ap-1
+-0x1.27b5065556c47p-1
+0x1.dc8714f787413p-1
+-0x1.51c9858d1404ap-1
+-0x1.72de44d96ac46p-26
+0x1.f425e3cced4c7p-3
+-0x1.687a92d61065ap-16
+0x1.f524140aa4f9fp-1
+-0x1.e23a916eb0f6cp-13
+-0x1.d99af531c1d7dp-1
+0x1.33fc239565e36p-15
+-0x1.77fe57818f84dp-8
+0x1.e2f6076e57cc4p-1
+-0x1.e97d25cf4a4c9p-1
+-0x1.ced6825d25e04p-1
+-0x1.e6a1f419a0176p-1
+0x1.a8ad7301a9c3bp-20
+-0x1.c6256777394b3p-1
+-0x1.15deb4ca612fep-2
+-0x1.1fd1b6af697a5p-1
+-0x1.e9ad92c7a5f42p-1
+-0x1.ee43843342288p-1
+-0x1.3c312578414bdp-3
+0x1.ec27f19113a4dp-1
+-0x1.9ccbd7e827a55p-3
+0x1.efe3727b0e23ap-1
+-0x1.acfd7757af602p-1
+-0x1.841256a82781ep-1
+-0x1.dea3e5358e22ep-1
+0x1.7a5d14b31d63cp-1
+0x1.b45264dd5b6ccp-1
+0x1.a955c3158f95ap-3
+0x1.5a2a14a8001cap-1
+0x1.d80407959de45p-1
+-0x1.e63ba4f3d8c3ep-1
+0x1.83edf16dfff50p-1
+0x1.b747536ef6e0ap-2
+-0x1.db91b03d5de78p-1
+-0x1.04e9366e2d6bdp-1
+0x1.868a14adc5d9ap-2
+0x1.e004440ae8f05p-1
+0x1.b892e7a52e191p-1
+-0x1.a31672a711e3bp-3
+0x1.f1a246788caa4p-1
+0x1.2712839082804p-1
+-0x1.e15a87fb65354p-1
+0x1.c8b2f2a807b30p-1
+-0x1.4604a175e993ap-24
+0x1.ebfed39cc2c8bp-1
+0x1.46b9055c4ca9fp-1
+0x1.306ca7dee4864p-2
+-0x1.54b193e5a6106p-1
+0x1.d915353edaa25p-1
+-0x1.559071a09ac62p-1
+-0x1.dfd05503dd9c9p-1
+0x1.6372147e80a9bp-2
+0x1.1d6c4659b2302p-15
+-0x1.51678029a9639p-1
+-0x1.93c504552cc8ap-1
+0x1.500db1270ff22p-1
+-0x1.a84a143781395p-2
+-0x1.e0eef33df7060p-1
+0x1.a5b9342b2a503p-1
+-0x1.7e31e007182c1p-23
+-0x1.cbe100e36ed62p-1
+-0x1.e91f7469d5670p-1
+0x1.eb0711bcb2188p-1
+-0x1.d9e340faf4907p-1
+-0x1.d3eaf468140d5p-1
+-0x1.f046a692dfbe5p-1
+0x1.eef541125402cp-1
+0x1.164721f247577p-1
+-0x1.948565494d763p-2
+-0x1.88826288be33dp-13
+0x1.e66022a174720p-1
+-0x1.74bb306267089p-1
+0x1.0e806680dde9bp-19
+-0x1.36bf209f8d75ap-1
+-0x1.fdb1502db4889p-1
+-0x1.dc58a3a509822p-3
+-0x1.ff1285390535cp-1
+0x1.e697822f3ef41p-2
+0x1.f0b895823caf7p-1
+0x1.ee8a003f19352p-1
+0x1.86cef6dc903e7p-1
+-0x1.b06d1232385aep-1
+0x1.f7415347bb40bp-1
+-0x1.1849f3c6d3a7fp-24
+0x1.d8bb0536d10cbp-1
+-0x1.7134b61c665cap-26
+-0x1.63c4664215f4dp-1
+-0x1.4af2b05df7423p-3
+-0x1.ec83e4b62417bp-1
+-0x1.ea94d7a68205ap-1
+-0x1.758b46be117efp-23
+-0x1.e67b111d9643ap-1
+0x1.c7fba1185bbb7p-1
+0x1.3ee093dfa7bc7p-9
+0x1.761e6712c456dp-1
+-0x1.4147f16c16ab0p-1
+0x1.a19ce52b4f906p-1
+-0x1.480570f907c0ap-25
+0x1.9b1db0483a855p-20
+0x1.e1ef409647a27p-3
+0x1.4c8792308f4c7p-3
+0x1.11dc218d362eap-3
+-0x1.ee64f1975f7e6p-1
+-0x1.2693204eaf09bp-1
+0x1.834e43d519f57p-20
+-0x1.f321806888b14p-1
+-0x1.912d845baba7cp-1
+0x1.f0d7d51f16eafp-1
+-0x1.98615085cae70p-1
+-0x1.3254856940809p-1
+0x1.f5e36613814c9p-1
+0x1.f43be6f8db5a1p-2
+-0x1.d999f12e66f25p-1
+0x1.795a0759e9a8dp-1
+-0x1.731ba13d1957bp-26
+0x1.df2806ba55640p-1
+0x1.93b6b433d212dp-8
+-0x1.de2d26a9b9821p-1
+-0x1.c253e67cccb47p-23
+0x1.d896e2d45c8e1p-1
+-0x1.e9d165420d859p-1
+-0x1.7ed393dd2a80ep-3
+-0x1.72e6237bb4f8dp-1
+-0x1.77dcd46971c3fp-1
+-0x1.0f7294284d3d2p-1
+-0x1.ee0460d9eea8dp-1
+0x1.f593219765d24p-1
+0x1.ef4575e02694ep-1
+-0x1.88ed60dd3430cp-1
+0x1.e83fc488dacd6p-1
+-0x1.f6b1f794f743fp-1
+-0x1.f6fad097104e4p-1
+0x1.f578d77058051p-1
+-0x1.ead825875d99ap-1
+0x1.e47714a63f73ap-1
+-0x1.faf0f514a94b4p-1
+0x1.67c2f0fa8047bp-1
+0x1.eafad3737c504p-1
+0x1.dd79933eb4823p-1
+-0x1.d8e09754f9b03p-1
+-0x1.622a31c8a4a1dp-1
+-0x1.c3658532b752dp-17
+0x1.4653f0b895ddep-1
+0x1.4b7f774a00827p-1
+0x1.5671004a1fee4p-1
+0x1.ed1eb4107075cp-1
+-0x1.e91e34b9e7e08p-1
+-0x1.40a8260114e62p-1
+0x1.fcd51406408b5p-1
+-0x1.b41136108fbfcp-3
+-0x1.ea510117fd3ecp-1
+0x1.9875d57574880p-1
+0x1.8e6821b32b65bp-1
+0x1.7b7895c4df3f3p-3
+-0x1.0f9652222f8e9p-1
+-0x1.e20bc23074b3bp-1
+0x1.71c19505b627cp-1
+-0x1.50acd256c1190p-9
+-0x1.f88e41f893405p-1
+0x1.04c507eebef8dp-2
+-0x1.088452ad3c759p-1
+0x1.087d627cadb98p-10
+0x1.9dd3f239428bep-1
+-0x1.ac5f04341a72fp-1
+-0x1.df87628ca53cfp-1
+0x1.d963f3e2377acp-1
+-0x1.bc583247a7cb5p-3
+-0x1.19bbe7224c70bp-1
+0x1.e51196492219ap-1
+0x1.f8be8469e0f90p-1
+-0x1.9d7b07a7045cfp-1
+0x1.7f288239bc808p-6
+-0x1.f06ed4e303e99p-1
+-0x1.edb676b500699p-1
+-0x1.11c8041a56a40p-1
+-0x1.8fa0020067b9ap-1
+-0x1.e38a3096c29f9p-1
+0x1.8bd9a2320c1eap-3
+0x1.ec3a1130d87e6p-1
+-0x1.f041e6d4d3221p-1
+-0x1.ec3ed491bab06p-1
+-0x1.e82ed1f92fb3dp-1
+0x1.d97577265ac94p-1
+0x1.e0dc4301d27ffp-1
+-0x1.3c6f734ef61e6p-1
+0x1.d481020b94331p-1
+-0x1.084e305313b99p-17
+-0x1.e379862ec0fddp-1
+0x1.c59db4bbac95fp-1
+-0x1.d65bd11324f1bp-1
+-0x1.c59a52083041ep-3
+-0x1.f7db5704a4985p-1
+-0x1.e962d3ae18889p-2
+-0x1.53c9205e774e8p-1
+-0x1.e911418959876p-1
+-0x1.eede64d01dd85p-1
+-0x1.567a6656d28acp-1
+-0x1.e6aa85d031c63p-1
+-0x1.eb05376e22db1p-1
+-0x1.7f6913662676cp-1
+-0x1.495606dbbbe93p-7
+-0x1.ec3000dc4aabap-1
+0x1.ec4706c41bd83p-16
+-0x1.e6a7c54bbfa5ap-1
+-0x1.7a7641865ee08p-1
+0x1.b53be3ce487cbp-1
+0x1.40e9902e7c79ap-3
+-0x1.eb3282a56efc8p-1
+-0x1.dc476211ce07dp-1
+0x1.fbb577823c6b2p-1
+0x1.db89870b0b16dp-1
+-0x1.efa8f6daf9d6ep-1
+0x1.decb623f19c20p-1
+0x1.34c3170fae6e6p-1
+-0x1.eb66f41c573b3p-1
+-0x1.42fa605e3ab02p-18
+0x1.62f563b214a71p-1
+-0x1.ebfe83dfbd7bfp-1
+-0x1.d8320749306c8p-16
+0x1.096bd4970cd0dp-22
+-0x1.34db46c5d25f9p-1
+-0x1.e584302e3a118p-1
+0x1.279d83bbed431p-3
+0x1.e267d33665809p-1
+0x1.e7dfa379e70a6p-7
+-0x1.db6095b37c495p-1
+0x1.e8fc0548a8effp-1
+0x1.df80158c55f1bp-1
+0x1.085252cff6318p-2
+0x1.e8b2a51a22aedp-1
+-0x1.6c2551b909220p-1
+-0x1.6b160460a6dafp-1
+-0x1.ab45345443095p-1
+-0x1.6deca2af052c9p-3
+0x1.837e7496593b3p-1
+-0x1.bf1280b399b44p-3
+-0x1.846896e4714edp-1
+0x1.a87ef4867a7b7p-20
+-0x1.ebcf01f1f9c05p-1
+0x1.ee9f7221b6d23p-1
+0x1.f218003f765f8p-1
+-0x1.dee46627c2030p-1
+0x1.eff7e643f253bp-1
+-0x1.3e07f3ef0c1aep-3
+-0x1.7c2b31f076e73p-11
+-0x1.806c918e71aeep-1
+0x1.0db187d31341cp-2
+0x1.8a44534c5fa47p-1
+-0x1.dbd3606da38ebp-1
+0x1.4c41a22828d0ap-1
+-0x1.9eb9358ded573p-3
+0x1.e080f6a0dd5a1p-17
+-0x1.edc7b0c6d7c61p-1
+0x1.1672e0cfb0ae6p-1
+0x1.bcc2d238d4ddbp-25
+0x1.ef15079437d86p-1
+-0x1.e8c624ef9c950p-1
+0x1.8543e62f380d5p-3
+0x1.fef15658b7b3dp-17
+0x1.fdaef64e92ad5p-1
+-0x1.ed9495fb211ccp-1
+0x1.66b7a3a5f4bbcp-2
+-0x1.e4b4d29f62b3ep-1
+-0x1.af4687b7a9dd1p-1
+-0x1.1b8575ec2f1bcp-3
+0x1.719ad2699f7f4p-1
+-0x1.2ae4206794c97p-2
+-0x1.f697d28a52766p-1
+-0x1.4de5a4d1044b1p-1
+-0x1.e859b3f551706p-1
+-0x1.995221a7cd650p-1
+0x1.5b44a5441ff42p-1
+0x1.b40b1223b8731p-1
+0x1.f41ca43bda5ffp-1
+-0x1.d64953db536f6p-1
+0x1.f237a08dabbebp-8
+0x1.2ab9e2f378d0ap-3
+0x1.748f13fdb7757p-1
+-0x1.85fce11104791p-21
+0x1.e8fb12ed42b85p-1
+-0x1.b9be13f0400a5p-3
+0x1.5cf593bcc75fap-1
+0x1.e62c06763ca98p-1
+-0x1.ef83347913d46p-1
+0x1.8cd87241429ddp-1
+0x1.ed52a73ea36ddp-1
+0x1.eb1fb7b4361a5p-1
+0x1.659040150dccep-1
+-0x1.e84f02088580bp-1
+-0x1.31efb599b0c90p-1
+-0x1.3d71f7cc5cbb8p-14
+-0x1.a7947303093c0p-2
+0x1.d9d164d5dd4b4p-1
+-0x1.a6a84397e3686p-1
+-0x1.dbfc05a512685p-1
+-0x1.5b0384147576ap-1
+0x1.24925361ccdf7p-1
+-0x1.ff78b2a719f69p-1
+0x1.ed23979169478p-1
+-0x1.aca5d6e0cebc8p-1
+-0x1.ef3d97ca40548p-1
+0x1.b18ed204df0bep-1
+-0x1.8bb177f1b45d0p-1
+0x1.eea5d7d2221dap-1
+0x1.7f86226cc352bp-7
+-0x1.e8690599a1b6bp-1
+0x1.c62b97c2b228ap-3
+-0x1.a1283741d2ae6p-2
+-0x1.36bf72bd2813ep-1
+0x1.02ff0102590a7p-1
+0x1.81aef093e519fp-1
+-0x1.e5788391286c7p-1
+-0x1.373103fbf2dbbp-26
+0x1.34e2d1a2d3f9bp-6
+-0x1.f8d06493cf734p-1
+-0x1.c24710eb7be22p-3
+0x1.d2db6598cfaf0p-1
+-0x1.da7e74a47298fp-1
+-0x1.9af47030895e7p-12
+-0x1.891952e265231p-1
+-0x1.092645a64f8d3p-20
+0x1.4f75862316ad1p-25
+-0x1.fe90e5f9be415p-1
+0x1.fb4ee1a050156p-1
+-0x1.ec39744c1f0c8p-1
+0x1.ba15c60d9db6fp-1
+-0x1.87a6e44eaf473p-14
+-0x1.346b35da45de2p-1
+0x1.8db9c701a763cp-25
+-0x1.db34b430e32a8p-2
+-0x1.629942502fa18p-2
+-0x1.e413c088c0673p-1
+-0x1.1f6e31af5699fp-1
+-0x1.ed7495c0fc882p-1
+0x1.abee977c43f44p-1
+-0x1.66cc97e31eaf9p-1
+-0x1.e215564a14206p-1
+-0x1.2c8ac0b1cee68p-6
+0x1.d44c706157084p-1
+0x1.60e11610c7ee0p-1
+-0x1.30bba0afa8fb3p-1
+0x1.bee52516c6958p-2
+0x1.704ea3b5ecd74p-1
+0x1.9e8346c8dd9e3p-1
+-0x1.8d20a7a73971bp-1
+-0x1.fee190f2fc2b8p-2
+0x1.2412133b85638p-1
+0x1.e12c42ed2cf35p-1
+0x1.ab2c11f181602p-1
+-0x1.3792d18b82986p-2
+0x1.8201c2f453059p-1
+-0x1.a787c4bfd3b9dp-1
+-0x1.21cfc16c9dd00p-15
+-0x1.fe18e3a9ee189p-1
+-0x1.e0a0474a78619p-2
+-0x1.f2b9635cc6607p-1
+-0x1.ead0a07de749ep-1
+-0x1.51be7174fb83ep-1
+0x1.ce044606c1030p-1
+-0x1.7ea081641e5c0p-1
+-0x1.a3b065b4875e9p-1
+-0x1.dfdae0cbe44cdp-1
+-0x1.ed7ef264fedb8p-1
+-0x1.ef5091c5626a8p-1
+-0x1.dc56039dc4ef6p-1
+-0x1.495862db7188cp-18
+0x1.f702c7007d0f8p-1
+0x1.af0a752686e3dp-3
+0x1.e30a96a56e0a2p-1
+-0x1.9e27251b3702fp-13
+0x1.d09934bc80099p-1
+0x1.0e94e36bb88f6p-2
+0x1.e6ddf06e94dd2p-1
+-0x1.07c16329a6368p-1
+-0x1.ba2ae6c81ef86p-19
+-0x1.0c0a94e27bcffp-1
+0x1.dd58042e78413p-1
+-0x1.e659010e4489dp-7
+0x1.0214d6e90f72ap-1
+-0x1.cf4586cf33876p-2
+-0x1.b70207125cf48p-1
+-0x1.df4870eb61dfap-2
+-0x1.f57f5552ab569p-1
+0x1.dfcf57952b0f5p-1
+-0x1.e8c51781e0f5ap-1
+-0x1.e482f48b7b06fp-1
+0x1.ebaf12ac1ca9ep-1
+0x1.e737501a3ae33p-2
+0x1.ecd747e9c09c1p-1
+0x1.e862d221950bfp-1
+-0x1.11bc51c1a6b71p-1
+-0x1.8b32c03c1f3fep-1
+-0x1.45d6537260c70p-3
+-0x1.eab7a154b753bp-1
+0x1.dc3de7d2fc8d2p-1
+0x1.ebba47c789bf9p-1
+0x1.e9ecf3956d1f2p-1
+-0x1.b9b423bd8562fp-16
+0x1.ea80b59543ec4p-1
+-0x1.4c94d139f13e8p-1
+-0x1.6e83b5a2a8fe5p-19
+0x1.e543336eb0ac0p-1
+0x1.e1ebe4a9d8a89p-1
+0x1.ed72033a5db2ap-1
+-0x1.e266b288cfc87p-1
+0x1.027c5616cc343p-1
+-0x1.e35a95def4819p-1
+-0x1.413b8018c5b35p-1
+0x1.25c3a3e3119f1p-1
+0x1.29429685f155dp-1
+-0x1.daec27668718ap-1
+0x1.066c27f6a6cfep-1
+-0x1.ece86688b8215p-1
+0x1.e7fb31fd3c964p-1
+-0x1.7208a0ee99588p-18
+0x1.e55e406d573cap-1
+0x1.e8af41ef26febp-1
+0x1.371c35f823ee3p-1
+0x1.d17522ea5e064p-1
+-0x1.7accc66f1a867p-1
+0x1.1b88e568085eep-3
+0x1.efa964a3049c3p-1
+0x1.0ae4753a5c894p-13
+-0x1.e5dc4522b9124p-1
+-0x1.eea0521dad0ebp-4
+0x1.852e91bce0883p-1
+-0x1.dd70c04d30a3ap-1
+-0x1.10e344fda4288p-3
+0x1.f8ed93cccdd32p-1
+-0x1.9b2a127bc4877p-1
+-0x1.3ae99644caf6fp-2
+0x1.2011857db1424p-26
+-0x1.e901933e634b8p-1
+0x1.c426411a0bd0ep-1
+0x1.a5edb0220c08ep-1
+-0x1.effdf2686cde6p-1
+0x1.c32c91193429cp-13
+-0x1.51f3b17d298a4p-1
+-0x1.7f189788a9871p-1
+-0x1.6df8f3b40a7d7p-20
+-0x1.cc9fa732730b4p-1
+-0x1.e800e2c46ef54p-1
+-0x1.0036b44e98fb9p-1
+0x1.545021fa9de9cp-1
+-0x1.dbd584ff2c565p-1
+0x1.f4ea010d09590p-1
+0x1.0838d097bf35fp-2
+-0x1.a1da024b0b5d7p-8
+0x1.e8d72663b3bb6p-1
+0x1.bd21611d957b4p-1
+-0x1.e632b5939513cp-1
+0x1.ef5182ea9b9f9p-1
+0x1.1f999553c9965p-1
+-0x1.b47b81b50fe30p-2
+-0x1.ec1d2221cef9fp-1
+-0x1.ff88333427dbap-1
+-0x1.f9b0f160d4715p-1
+0x1.000f60ec89995p-2
+0x1.03ce907b337a2p-7
+-0x1.a63a42293fa26p-3
+0x1.292904fec9be4p-1
+0x1.820c4727f0297p-1
+-0x1.ee77e35aa0adep-1
+-0x1.ecc08254e2ca3p-2
+0x1.f5e2939c7c8abp-1
+0x1.fe103302da0f0p-1
+-0x1.ee18039175978p-1
+-0x1.d7c305801dc47p-6
+-0x1.f7bb55bddabc2p-1
+-0x1.f3f604ec44843p-1
+-0x1.6fbae21dcab06p-1
+-0x1.f613a094bcd5bp-1
+-0x1.9b44300f94ca8p-1
+0x1.ebb413b8af6a7p-1
+0x1.8ff5319a0c60fp-1
+0x1.21f49780f87b2p-1
+0x1.edc3445e3d359p-2
+0x1.be0ce0e44a018p-3
+-0x1.ee9ef2f6c17b3p-2
+-0x1.c27d81c83efabp-1
+0x1.ac8f6552a58dep-1
+0x1.711ce469b9c2cp-8
+0x1.fa3c9399c63afp-1
+-0x1.432c76363edb9p-2
+0x1.ea3e827115c9dp-1
+-0x1.ea73d35821c98p-1
+0x1.bf34426cf512cp-1
+-0x1.1445f5830a831p-21
+-0x1.ee29a33d89217p-1
+0x1.8ccbb1dcc318bp-1
+0x1.25b4539e355fdp-1
+0x1.d9f2a66cb195ap-1
+0x1.1d3cb7d6c6a5ap-1
+0x1.b1b470d44d8e1p-1
+0x1.a8b3a413894e6p-10
+0x1.e85bb560bc75dp-1
+0x1.5f70e6661a987p-3
+-0x1.e607b65d13651p-1
+-0x1.7133562954a55p-26
+0x1.e8d044bdd2df4p-1
+-0x1.6d61c0b3f3e7ap-1
+0x1.b036d56c1ea88p-1
+0x1.db9765d455c4cp-1
+-0x1.d67e0577a6507p-1
+0x1.1149b4f4323d5p-1
+-0x1.61dc625616ea4p-1
+0x1.e7e686da575a0p-1
+0x1.1f8845720550bp-3
+0x1.181681ffa6887p-1
+-0x1.f9a361114e127p-1
+-0x1.2daf678a502f3p-1
+0x1.e9d467bd4f063p-1
+0x1.6bdae68159ee5p-2
+0x1.31f72092e0a01p-3
+-0x1.0257216dc5462p-1
+0x1.a3eba171994e9p-1
+-0x1.76ca124cf6f47p-3
+0x1.edaef15ec1849p-23
+-0x1.55ac10a3a8641p-3
+-0x1.c41062b424a37p-1
+-0x1.d92890d75b595p-1
+0x1.dcfb53f8d12a7p-1
+-0x1.e282c640ea6f9p-1
+0x1.d213669b363a3p-1
+-0x1.e38275a589425p-1
+-0x1.8ae0d1a8a37fbp-1
+0x1.2e4ef4f93f824p-1
+-0x1.e41b13bb1ae98p-1
+0x1.086eb6e0f5f9bp-1
+-0x1.e5a480f554f3dp-16
+0x1.247007cd3459dp-9
+0x1.126fb704975d2p-2
+0x1.ead2c179b0748p-1
+0x1.e2a9b69b414cfp-1
+0x1.dd5754e2b6f70p-1
+-0x1.aa3c46accda7bp-1
+-0x1.eac543bc70794p-1
+-0x1.3e5ed5df8f9b3p-3
+0x1.c87902a9dc843p-2
+-0x1.7488404424d8fp-1
+0x1.0a0993e0464fep-1
+0x1.ec89e597c1fb8p-1
+0x1.ff68c644002e1p-1
+-0x1.57e6c01243fa0p-1
+0x1.e6e2b58850fbcp-1
+-0x1.ee92e612cb066p-1
+0x1.e3f070eec2596p-1
+0x1.a3a1677955b56p-1
+-0x1.bcc7e5fa33d67p-1
+0x1.594fe3ac79583p-1
+0x1.50ec000b8e4acp-3
+-0x1.f9295717cfd6fp-1
+0x1.ef55f3c40b195p-1
+-0x1.fb0bc0bcae0e5p-1
+0x1.ef1e83db4a781p-1
+-0x1.e24192e4c76d5p-1
+-0x1.b008d5aeca3d0p-1
+0x1.e8f7b7904e38ap-1
+-0x1.ee3126a0a120bp-1
+-0x1.261cb76f274a4p-1
+-0x1.e693d2d796ecap-3
+-0x1.ddbba60a316aap-1
+-0x1.f79761f4b586fp-10
+-0x1.ea326681d6327p-1
+-0x1.30688704ba934p-13
+-0x1.e7cb21c3e16e5p-1
+0x1.587605ae10952p-1
+-0x1.e19505b39f2c0p-1
+-0x1.e18a12334f770p-1
+-0x1.0837757b9d39dp-2
+0x1.d5a6b0de0792ap-3
+0x1.f99470c182bf6p-1
+0x1.ed070744db724p-1
+-0x1.73b2737edc5c7p-26
+0x1.b936968f91883p-3
+-0x1.ea40a3cab079fp-1
+0x1.38e266cf4e67bp-23
+0x1.eef1a663ee7c0p-1
+-0x1.b714f5eded91ep-1
+0x1.dbc6676e6b672p-1
+0x1.eb6416d4263a2p-1
+-0x1.cd5f86a8d0aa0p-1
+0x1.6f9df5f49001bp-2
+-0x1.6c0f802e7de00p-1
+-0x1.171c4382a49b5p-1
+-0x1.6b40229004e64p-1
+-0x1.9b6996025da1cp-1
+-0x1.efbc035d5241cp-1
+-0x1.8d6cd1d2f1d24p-2
+0x1.387816b7132c2p-15
+-0x1.222651699e523p-1
+0x1.3b2d21d75094ap-2
+0x1.e81bf743c0369p-1
+0x1.ee2044b7efb74p-1
+-0x1.ff5cc72dade88p-1
+-0x1.c932d35cb0882p-1
+-0x1.e12937d9b5de6p-1
+-0x1.bb5fe6c2388bcp-20
+0x1.e2f9c07852f70p-1
+0x1.389e508c2d4a1p-3
+0x1.4e0e70421f589p-3
+0x1.cc1262f95c14cp-1
+0x1.fc9c210385ec5p-1
+0x1.9984459a46260p-1
+0x1.e4e8c2f4a4892p-1
+0x1.e37f56ad5d374p-1
+-0x1.d604e43246f1ap-1
+0x1.dd2cb52e3f946p-1
+-0x1.ad5ce2c9a061dp-2
+-0x1.e304f24cdfffbp-1
+0x1.06c562663d3d5p-1
+-0x1.80d703d704546p-1
+0x1.24f756f5e8490p-22
+0x1.ef88e7a892892p-1
+-0x1.8acf064a612ebp-11
+0x1.f85ef0fd21f0bp-1
+-0x1.f2d7b573896eep-1
+-0x1.c41b9411e2424p-1
+-0x1.0eed14bd5c463p-1
+-0x1.ecf8e686be7cep-1
+-0x1.965f75ff798a9p-1
+0x1.6411e12b18fc4p-1
+-0x1.11af90316a631p-9
+-0x1.da5f66b16e89ep-1
+0x1.085d72e4cc8a6p-1
+-0x1.dd2c9123047c4p-1
+0x1.ead1c7993f167p-2
+0x1.d9b8b3488e2c9p-1
+0x1.e3ba8654faf94p-1
+0x1.b12e97910d2fbp-3
+0x1.8ca403a109b30p-3
+-0x1.e5f2937058787p-1
+0x1.1a16c20b59c20p-8
+-0x1.11098610b5ed6p-16
+0x1.892e670d4f005p-1
+-0x1.2648b2df313ccp-1
+-0x1.dfc21746825a5p-1
+-0x1.4f866516769a4p-1
+-0x1.e913c2d94e14ep-12
+0x1.50e5c3abd6b3ep-1
+0x1.ddb931972f706p-1
+0x1.66d50185eedb5p-2
+0x1.178457d5f3122p-1
+0x1.0a089692fa9d6p-1
+0x1.53e8b3a99a9ffp-21
+0x1.faccb45f4e2f8p-3
+0x1.0fba936e6a028p-2
+-0x1.b6f9a6276a135p-1
+0x1.67cbb33515663p-6
+0x1.3ac2c7ff47442p-1
+0x1.fd2901f3c9671p-1
+0x1.a95ba191e3d37p-20
+0x1.ecfdc74673b2ep-1
+0x1.e33344b0b2b7dp-1
+0x1.d6b6c30ea8c56p-2
+-0x1.3e18951be4c2ap-10
+0x1.06544747d23b7p-1
+-0x1.6530f1b557057p-1
+-0x1.e141a1fc347e7p-1
+-0x1.c209253da05dfp-1
+-0x1.5abd34f01cc55p-25
+0x1.da55f059b4805p-1
+0x1.b15ad1f0f8186p-1
+-0x1.e2f6324aebb6cp-1
+0x1.e6cf20c6b3bd3p-1
+-0x1.d9f586a99ac1dp-1
+-0x1.ea5db6c802980p-1
+-0x1.eef205ef8bf9cp-1
+-0x1.e77cb3d6aba48p-1
+-0x1.efb0238767d34p-1
+0x1.eac576f6fcc93p-1
+-0x1.9d69119b79677p-17
+0x1.95acf5bfa2f77p-3
+-0x1.551e1792426dap-1
+-0x1.dbe0e257f280cp-1
+-0x1.f69220aac2bb2p-1
+0x1.57b2160efdbf5p-2
+0x1.e58de281a1a07p-1
+0x1.084020b03e4d2p-6
+0x1.d87e91b7e07b7p-1
+-0x1.99cda400ce3b7p-2
+-0x1.e362932c8c92fp-1
+-0x1.da4995d5cee72p-1
+0x1.87b2d4dcffaf9p-1
+0x1.3ea5128eaaf2dp-1
+-0x1.5faae7d3bcf38p-1
+0x1.3aec5799bb1d9p-19
+-0x1.ec3797b899976p-1
+0x1.8aefc30a2949bp-1
+0x1.bd62a0a521e27p-2
+-0x1.ab7df36836c3fp-1
+0x1.91ab544ac879fp-2
+0x1.f80f9015de12ep-1
+0x1.aa572325d6916p-1
+0x1.efb673b18111ap-1
+-0x1.dbb4625b1b6d4p-1
+0x1.ddbbe2e244b52p-1
+-0x1.f79ea4af0ff39p-1
+-0x1.c16b5501eff50p-1
+0x1.ea4315c9c663fp-1
+0x1.ade22053744afp-1
+-0x1.e4b1a6febdb21p-1
+0x1.ec9464048b26cp-1
+0x1.e3c1e7f51cf59p-3
+-0x1.dc8fa6420fb87p-1
+-0x1.f052a40d8e48bp-1
+0x1.cb7bf6c1858f8p-17
+0x1.e4fbf10139e0ap-1
+-0x1.df2192fe7f98dp-1
+-0x1.062da16c62ccep-1
+0x1.0dca9008fbcebp-2
+-0x1.0fd4c304627a5p-11
+-0x1.f7ad343c1ffafp-1
+-0x1.3de2247c0ac76p-1
+0x1.a8f991857abcfp-3
+0x1.b42d56efb9226p-1
+0x1.410fc200873e5p-1
+0x1.b2a8837671aa6p-1
+0x1.adf61664fadc1p-1
+-0x1.858b722a5427bp-1
+-0x1.e20ac139c6d90p-1
+0x1.ec4a72202abfbp-1
+-0x1.bf067665f434dp-3
+0x1.b78865ebf7179p-1
+-0x1.0634566d8abcep-1
+-0x1.e6a6172392825p-3
+-0x1.e6fc2655bf4fep-1
+-0x1.e543e6d75248fp-1
+-0x1.e88fc53e3e4b0p-1
+-0x1.eb40e4f889a53p-1
+0x1.e79ef6eba9adbp-3
+-0x1.96df34af5a088p-21
+0x1.65efb1356114ap-3
+-0x1.8d4e57db12a07p-3
+-0x1.5d616093177aap-1
+0x1.df0754bc48a37p-1
+0x1.d025216b99be2p-5
+0x1.e739901525d14p-1
+0x1.e8d122ec89b8ap-1
+0x1.e8c93262e04f1p-1
+0x1.ffd00163380e1p-1
+0x1.95d3428efb513p-1
+0x1.ea9674065a5c0p-1
+0x1.44b2453851f94p-1
+0x1.f42ee4d7dac9dp-1
+-0x1.e976c2fccc26ap-1
+-0x1.27ba2598fa425p-1
+-0x1.817945ade05b6p-1
+-0x1.6d6582d27a94ep-3
+0x1.ea59d39e18322p-1
+0x1.2c7d24a2d4e9dp-2
+0x1.f44e04251a793p-1
+-0x1.3778036172b36p-2
+0x1.eed61776e402fp-1
+-0x1.799ba18a53c8bp-1
+-0x1.6fb4348faf5c4p-3
+0x1.ddc2869dc18a5p-1
+-0x1.e343665d40ccap-1
+-0x1.3f73605325ab0p-3
+-0x1.3ba0f05c1755fp-1
+0x1.ed92048ac9d47p-1
+-0x1.e1a5a6243d05dp-3
+0x1.e4fd73980b5e1p-1
+0x1.33b9002a95e7ep-2
+0x1.ecba4619d36bcp-1
+0x1.6a7a22a449e86p-1
+-0x1.a2bb4749faabep-3
+0x1.8248f68a7e1ffp-1
+-0x1.e21ad7da85c70p-1
+-0x1.dd8e86ce2c248p-1
+0x1.5d40255ad5479p-2
+0x1.a5fa20bad74b8p-1
+-0x1.f99406b4197a3p-1
+0x1.d2f1b785de5d5p-1
+-0x1.e2d534c706c26p-18
+0x1.aeb5736c743fbp-2
+0x1.dfc7324805273p-1
+-0x1.2d2db09cc6e86p-21
+0x1.edae94523b924p-1
+-0x1.dc31f75dbd8bap-1
+-0x1.dce536216941cp-1
+0x1.a96985facec4bp-1
+-0x1.e5ce57ae15fa4p-1
+-0x1.dbd6a23f8b933p-1
+0x1.8d6b062af3681p-2
+-0x1.2590214dd2a24p-3
+0x1.d0f7e414c0f7bp-1
+0x1.eec205a0f3bfcp-1
+-0x1.5cf1a0c8c1ccdp-2
+0x1.ca9b05da55e1dp-3
+0x1.e7078679d9affp-1
+-0x1.dee200a7c99b0p-1
+-0x1.aea74698a65c1p-3
+-0x1.eef2e7388b0b8p-1
+0x1.9475e0bee269cp-1
+0x1.e8ede2eca6ebcp-1
+-0x1.3a3f5430a9d73p-1
+-0x1.da99616adbb35p-1
+0x1.40a287e0245c7p-1
+-0x1.db6f1755478ccp-1
+0x1.4b37359e5a442p-1
+-0x1.fabca4ba5ef23p-1
+0x1.bdb701415b22ap-1
+0x1.ece78508bb8c1p-1
+0x1.4a0d37fdc5a79p-16
+0x1.d81ca025d90bcp-1
+0x1.eacf140a099a8p-1
+0x1.ec31331b47ad9p-1
+0x1.ffd881703db66p-1
+-0x1.2f5617c2cdd47p-1
+-0x1.de2e87858ebd7p-1
+-0x1.3fc366eb32e48p-1
+0x1.da5505c9b5082p-1
+-0x1.c13e200d12a13p-1
+-0x1.eb29615918644p-1
+-0x1.530e61ff0420fp-21
+-0x1.e904b6785c98cp-1
+0x1.dd8612e5b6eb4p-1
+-0x1.339060228fa99p-5
+-0x1.3b19c402e1ab5p-1
+-0x1.3af4f28b24131p-1
+0x1.fdcf071e072d3p-1
+0x1.a02143cfecad9p-1
+-0x1.a33832573766ep-8
+0x1.f013574be1027p-1
+0x1.6bbb23e29bd56p-2
+0x1.c2e0b4f123c1dp-19
+0x1.0bd860a759addp-1
+-0x1.ea778377c1e47p-1
+-0x1.e415749cde067p-1
+-0x1.f0a930040729ap-1
+0x1.f0e804039007cp-1
+-0x1.dc12b607e76dap-1
+-0x1.3a0d506141a45p-5
+-0x1.bc3fa1c91bbc5p-2
+-0x1.61f91720d48f9p-2
+-0x1.b682b0abe4889p-2
+0x1.e2ecf4b017e0dp-1
+0x1.161d419e7dff1p-3
+-0x1.daf7532488e10p-1
+-0x1.c80936da67635p-1
+-0x1.f79a56103c6bcp-1
+-0x1.ea6bc6967c364p-1
+0x1.eb55c5889afdap-1
+0x1.31373491f9fd9p-1
+0x1.80eaa23a91ec2p-1
+-0x1.fd9ed1b43f715p-1
+-0x1.02c3e70019c89p-1
+0x1.daa6242404908p-3
+0x1.e8a1b27cb8dd3p-1
+0x1.caa1a29c0a137p-3
+0x1.e925463516258p-1
+0x1.dfb4b65646ab3p-1
+-0x1.4c1900363e38bp-3
+-0x1.ea072277e9de6p-1
+0x1.eb1bf69818892p-1
+-0x1.c7891601871cfp-1
+-0x1.e9c811e32475fp-1
+0x1.09ffc56919a5dp-8
+-0x1.1afd8636d88a6p-4
+-0x1.d5faa18bb319cp-24
+-0x1.5a73f23f4d005p-3
+-0x1.f12a419b4a7e1p-1
+-0x1.f3f813fc62e9ap-1
+0x1.882457f6307dfp-3
+0x1.cc79d0b17437bp-3
+0x1.f849007c8fc5bp-1
+-0x1.582d615ec34e3p-1
+0x1.406506bfcfb11p-1
+0x1.b6a6c3eebea0cp-1
+-0x1.e88b2722a8806p-1
+0x1.31b3642d568c4p-2
+-0x1.b5ca91453fe3fp-1
+0x1.3137f5baf9af4p-1
+-0x1.ebd6465bc4b63p-1
+-0x1.a49977d4938ccp-1
+0x1.e71ef4f74efa5p-1
+-0x1.7992140ccce3ep-3
+0x1.e2d9f4354faf7p-1
+-0x1.a282a4f738fe1p-2
+-0x1.864a6783972d3p-1
+0x1.ba4587f6ddfafp-1
+-0x1.b9dc1365a48d6p-1
+0x1.9b24d0442a8bdp-1
+0x1.de51365f22198p-10
+0x1.4b5e2197433cdp-2
+0x1.be54761e95348p-1
+-0x1.fb51005dfdc02p-1
+-0x1.fa7fb41bdf4ecp-1
+-0x1.da30d147aa840p-1
+0x1.a0b8a727a25c6p-1
+0x1.f298d21034624p-17
+0x1.e9cfa7a7fd217p-1
+-0x1.f4e8b5ec98f6cp-20
+0x1.7302146a6f168p-8
+0x1.5799928b1b254p-1
+0x1.d704c60ab009dp-1
+-0x1.9681e2cf54b70p-1
+-0x1.e48e4276acf60p-1
+-0x1.edd8a455629a7p-1
+-0x1.f37d96501f78bp-3
+-0x1.b7a5b13013786p-3
+-0x1.e960c36a66790p-1
+0x1.b63de6d713d58p-1
+0x1.e47cf5ea94794p-1
+0x1.ff99528e27db8p-1
+0x1.6c20d6e995703p-20
+0x1.dd82403aa55b3p-1
+-0x1.bdf2b69afaaa0p-19
+0x1.debfb38f72c41p-1
+-0x1.caf0a20a2e374p-3
+-0x1.c786d16c31b03p-1
+-0x1.be5512ecf8b31p-2
+0x1.eb74f08f7bea6p-1
+0x1.41f8565f967afp-1
+-0x1.df40e5c3806e3p-1
+0x1.915a220e086dfp-1
+-0x1.eab325c5fbbe8p-1
+-0x1.811ee0ee26a13p-5
+-0x1.deea07f1077cdp-1
+-0x1.a4b6326d457f6p-21
+0x1.29b2708c3a747p-1
+0x1.c0d8d07a22f7fp-3
+-0x1.56bf84f095b88p-2
+0x1.d8e426b246e44p-1
+-0x1.621014d0872dcp-1
+0x1.7307e45a9bfb6p-5
+0x1.dde4a27afa00ap-7
+0x1.dbce065bbf8a3p-1
+0x1.e1207083bb09fp-1
+0x1.1daa53018212fp-1
+-0x1.496161b184764p-1
+0x1.be4077f0a12bep-23
+-0x1.ba4832d143c1ap-1
+0x1.eae16553c8c57p-1
+-0x1.dcd236d0485fbp-1
+-0x1.e2b5a72fffc26p-1
+0x1.eb42940a8517bp-1
+-0x1.e06e527c5ae19p-14
+0x1.ae15b592e3128p-1
+-0x1.ca92520c405e5p-2
+0x1.7db9b3fa53090p-1
+0x1.64105318b86d4p-1
+-0x1.ed5ce02997ae3p-1
+-0x1.30fbb21b54296p-12
+0x1.bc360678ba681p-7
+0x1.e5d335374c24cp-1
+-0x1.e0749468e2cc8p-1
+-0x1.ee3570ed32c54p-2
+-0x1.3a8df06a429efp-2
+-0x1.ce3772c129db8p-13
+0x1.15ba83dfe3904p-3
+0x1.08f5e344993d5p-1
+-0x1.ed8e061bb76b0p-3
+0x1.f8ffe57a8dde1p-1
+0x1.e66a85eaf4ee0p-1
+-0x1.fea40127cc2f2p-1
+0x1.f2aab1284b4b0p-1
+-0x1.cc03e1478de39p-4
+-0x1.e912d49635d92p-1
+-0x1.f1687635d3527p-1
+-0x1.627064608ff5ep-1
+-0x1.eb5a8287935edp-1
+-0x1.1857a62740addp-1
+0x1.5b65c47382c9ap-3
+0x1.ecb1a4e85bbefp-1
+-0x1.a7fea62a8476fp-3
+0x1.ccdc351ffc956p-19
+0x1.f8d674c4fbe5fp-3
+-0x1.fa49b4283ce9ap-1
+-0x1.ed8ea55dfb46cp-1
+0x1.c552618b4fd1ap-1
+-0x1.b9fbf215a6137p-3
+0x1.edea1355a361cp-1
+0x1.ba92542786897p-1
+-0x1.a7307747e4eedp-1
+-0x1.41cb43cc57a37p-1
+0x1.ffe9232e1641fp-1
+0x1.556ed63589177p-12
+-0x1.cd6f16bc335c9p-1
+-0x1.f2b6338523771p-2
+0x1.db2795c5314edp-1
+-0x1.de2267c10bed6p-1
+0x1.ea9e158ead810p-1
+0x1.bec560986a04ap-1
+0x1.ef3db6de27565p-1
+-0x1.3393b6059cb76p-23
+0x1.b980f402882acp-3
+-0x1.e259b369989a0p-14
+-0x1.ff6ac3ef8dac8p-1
+0x1.7e5081826dfc6p-1
+-0x1.0c6c55fecc746p-1
+0x1.ef97766ebf4d8p-1
+-0x1.ddae26391e016p-1
+0x1.fc6cf6ab5b808p-1
+0x1.dc2b369f4fb97p-1
+0x1.3e0cd4bcc78f9p-2
+-0x1.0e4bb0b067b5bp-1
+0x1.b79ba1d3be769p-1
+-0x1.ea50436bfcdb0p-1
+-0x1.fa0d71fd79cc3p-1
+0x1.3dc4e295f1f30p-1
+-0x1.703d419656c71p-1
+-0x1.fa7f5390f9fbcp-1
+-0x1.e70a30da2cfa1p-1
+-0x1.fdabb5f507142p-1
+0x1.f64dc541cc1fap-1
+0x1.eb319784bca19p-1
+-0x1.f3bc56a59b92fp-1
+-0x1.b8a0d2c98b8e0p-1
+0x1.425107976f0d2p-20
+0x1.4ad290cb36082p-3
+-0x1.b5bb322363d88p-1
+-0x1.e7ce322063c1ep-1
+-0x1.c48fc05bc06adp-1
+-0x1.e74004feba25dp-1
+0x1.19099015cd289p-1
+0x1.9df0943df0ed7p-1
+-0x1.a337f087e6047p-1
+-0x1.7d8cb3c9cb5d8p-1
+0x1.11a6b0c515920p-1
+0x1.c693d3e0c3d93p-1
+0x1.f141608e6aec1p-1
+0x1.a9bde0091b760p-1
+0x1.c93a76be71d45p-1
+0x1.d7597098112a3p-1
+0x1.edf6c4bdb283ap-1
+-0x1.205784cd6e44ap-1
+-0x1.a0d5f18128988p-2
+-0x1.e40666614e59fp-25
+0x1.121bf667b781ap-1
+-0x1.668da74298814p-7
+-0x1.616fc1a66c4d6p-1
+-0x1.ee112212f8aa0p-1
+-0x1.ed6ef73d531a4p-1
+-0x1.c15fb366cfcf9p-1
+-0x1.efffe322b6ac1p-1
+0x1.96c5c059d54afp-1
+0x1.e4e1454ecf85dp-1
+0x1.db2913c8fc219p-1
+-0x1.7f66a643bfb7ep-1
+-0x1.27f944d4ad8d6p-1
+-0x1.6426726aee6cfp-1
+0x1.d9c0506986f5ap-1
+-0x1.eeaad7939baecp-1
+0x1.bd5a077c9fc90p-1
+-0x1.38a69239f073cp-1
+-0x1.f932f26d539d5p-1
+-0x1.b260a79be9a1bp-6
+0x1.ef9f51187fe83p-1
+-0x1.dce6b232fc21ep-1
+0x1.ee14f4ba14235p-1
+0x1.eb85a30d4a2e5p-1
+0x1.b11031019577cp-2
+0x1.b58be17f9d847p-2
+-0x1.d9cbe370eb0ecp-1
+-0x1.d517b3ce2b655p-1
+-0x1.ec41e5fb51583p-1
+0x1.8df301a855975p-25
+-0x1.e889435c34b7dp-19
+-0x1.134640672cf7ap-2
+0x1.49ae67009c731p-3
+0x1.e80a234204ccep-1
+-0x1.eb9c151577abap-1
+0x1.f0b6320c75315p-1
+0x1.b8ccb51a3d918p-1
+-0x1.98e3649200763p-1
+-0x1.dbe723ecfc7f0p-1
+-0x1.db9dd79228607p-1
+-0x1.dcb17195a4c60p-1
+0x1.dce077ee88b26p-1
+0x1.c85742cc49d4ep-1
+-0x1.815743a3562efp-1
+-0x1.dc9450089dc1dp-1
+0x1.5e56a1bca2c1ep-1
+-0x1.5e48b383d64fbp-1
+-0x1.de4c64b5bc273p-1
+-0x1.f2700673bb386p-1
+-0x1.c1301186b73c3p-18
+-0x1.b17535ce5f5e3p-1
+0x1.400e032ed6125p-3
+-0x1.128c733eb080ap-1
+-0x1.9cf7f3c30c74fp-1
+0x1.dc24f6d5d88e9p-1
+0x1.f78a43cc77de0p-1
+0x1.543a72675a6aap-1
+-0x1.45dd4628eecd9p-24
+0x1.fffd225b95d9fp-1
+-0x1.363de4b85c86dp-3
+-0x1.db6440c16c293p-1
+-0x1.e09c81e7a33a5p-1
+-0x1.af90f6124102cp-1
+0x1.b4106515dc5c5p-2
+-0x1.daa2769ff6e50p-2
+0x1.002e426741e10p-2
+-0x1.ee228647b7dbap-1
+-0x1.22ec95cf2a12dp-1
+-0x1.e93e916c943dbp-1
+-0x1.14b932254ccd8p-9
+-0x1.909622a8afce0p-9
+-0x1.b5b5e40f69460p-1
+-0x1.0b42e197effbap-1
+0x1.3bdc443663478p-1
+0x1.fb7b75d00f267p-1
+-0x1.f06581e9738c7p-22
+0x1.bcb3805a8b0acp-1
+-0x1.9b6ff25e8b37bp-1
+0x1.f9cb94e42bc3dp-1
+0x1.ecd805ed64887p-1
+-0x1.a65c4560a2138p-2
+-0x1.56dff1b743c85p-1
+0x1.e5298138fd89cp-1
+-0x1.156c062335d7dp-1
+0x1.df59064910717p-1
+0x1.af0516501c6d6p-1
+0x1.d2dbb56e8dd5fp-3
+0x1.d0b523fc1ceb1p-1
+0x1.bcf543a18c01fp-1
+-0x1.709413363b142p-26
+-0x1.f8c00391024e6p-1
+0x1.5aa701b2476b0p-1
+0x1.44865784caf4ap-8
+0x1.e998073d61296p-1
+0x1.8eb830a476bb7p-1
+0x1.ff036620f55bbp-1
+-0x1.f64585ccfeb6dp-1
+0x1.ae9611b635f6ep-1
+-0x1.24d9e5b7dfc26p-12
+0x1.9a25d27526795p-1
+-0x1.ec0cf6bf16995p-1
+-0x1.5f64a17e9500dp-2
+-0x1.ef0f34f9f356fp-1
+0x1.974b13f3e4673p-5
+0x1.09de90f53b65ep-1
+-0x1.e1b0771809c44p-1
+-0x1.0b7c366b28640p-1
+-0x1.4e93f479a0cc6p-1
+0x1.cd2b95c2df3d4p-1
+0x1.dd556108d9ee4p-1
+0x1.d9c6a408e180ap-1
+-0x1.852ba5ea09204p-2
+-0x1.6a318265b0ce0p-1
+0x1.8187a65639248p-3
+0x1.bed3226c9cf5ap-2
+-0x1.bf96c5540152cp-1
+-0x1.1c9d850480123p-1
+0x1.d8a65092223e5p-1
+0x1.52c841c5f3d66p-1
+0x1.0498d6413da66p-1
+0x1.dac374698d877p-1
+-0x1.fc1bd618e87e8p-2
+0x1.ebe4c1cec3060p-1
+0x1.983b20ca0cd67p-1
+0x1.ec96e031167b4p-1
+0x1.ea4ee28054fa3p-1
+0x1.edae74719dd10p-1
+-0x1.6162424ab4689p-1
+0x1.d9e3a0d3c4a69p-1
+0x1.f8cc86f846007p-19
+-0x1.f48764fc3cc92p-1
+0x1.ec5d65428be39p-1
+0x1.ebbdc16a6c83cp-1
+0x1.f4021476db864p-1
+-0x1.e537b490c8ebbp-1
+0x1.1a8247328b1eep-3
+0x1.ded3e00b45be7p-1
+-0x1.12fce6ee5e120p-3
+0x1.e8faf051d09cbp-1
+0x1.67c444811ab4dp-3
+-0x1.20b4a1a53c3d5p-1
+0x1.71a901abd5ee1p-3
+0x1.32e467615008ep-22
+-0x1.ea1224bded243p-1
+0x1.de9582df5c7f5p-1
+-0x1.b8e1e27336860p-1
+0x1.ec8561690ba28p-1
+-0x1.daee03fa90d5cp-1
+-0x1.3a3bc41b1b0fcp-2
+0x1.e38b32f89a15fp-1
+0x1.2a7a67c6a7f5fp-1
+0x1.ad2e378f343e2p-14
+-0x1.755da68905d10p-1
+0x1.79c3b49ea70d1p-1
+-0x1.8a29b0ff7fef3p-3
+0x1.e6e791aad1f3ap-1
+0x1.67b372a69cd0bp-3
+0x1.f3d57719d5a66p-1
+0x1.c96a64375fd43p-1
+-0x1.eb6f12c7214f3p-1
+0x1.7c2a71b780eadp-1
+-0x1.ebcbf2f5b7eb8p-1
+0x1.9c2ac06be1e36p-1
+0x1.47b60350a0542p-1
+-0x1.e81352ef49d80p-1
+0x1.e2fde24e7441dp-1
+-0x1.cfc297f098209p-1
+-0x1.9f3a958bc4d8dp-9
+-0x1.ebed30f465969p-1
+0x1.851581e8ee5f8p-8
+0x1.b29d24839a5c2p-1
+-0x1.d996e18e1756fp-1
+-0x1.e945641fd4421p-1
+-0x1.7567a1368f83dp-20
+0x1.eda764a20b53bp-1
+-0x1.d90ed36b67dd1p-1
+-0x1.1721b193cb808p-1
+-0x1.1aa794570d691p-3
+-0x1.486275b31eff1p-1
+-0x1.7932031d98446p-3
+0x1.082044740fb11p-1
+-0x1.bc5005352d983p-1
+-0x1.9e34b40c77bdbp-1
+0x1.f8960738dba77p-3
+0x1.0d8d44f6a38b9p-1
+-0x1.ef2a370ffe51ep-1
+-0x1.885af3b2b9117p-1
+0x1.ab5dd30d3b0d9p-1
+0x1.658572e828c0dp-3
+0x1.00801354b719ap-21
+0x1.ead7729f447e2p-1
+0x1.73fe964bcb9b8p-26
+-0x1.eb9e2463b8a3ap-1
+0x1.dcc7f49496bbbp-1
+0x1.e322464ccedbcp-1
+-0x1.f3f1411a81959p-1
+-0x1.b806d3a207c7fp-2
+-0x1.9e3cf02520c9bp-1
+-0x1.a3903178cc914p-1
+-0x1.9157d3c02c3b2p-1
+-0x1.a828f2fd070e9p-1
+-0x1.dfe122ce59486p-1
+-0x1.e0c5f12e4aee9p-1
+-0x1.096d23efa8b4cp-1
+-0x1.eeb2b02957428p-1
+0x1.9bd135009e628p-1
+0x1.dcfa56e705532p-1
+-0x1.dcc733e36743ap-1
+-0x1.f13ac5b2f066dp-1
+-0x1.ee5a97d9a8b48p-1
+-0x1.2421b26321192p-3
+0x1.4bdfb654355fap-1
+0x1.e9ab41fff09b7p-1
+0x1.6c39f77452a13p-2
+0x1.f2d9a4e18b93ep-1
+0x1.f588f66b070a4p-1
+0x1.c0b604407eb47p-1
+0x1.907b33485084dp-1
+0x1.e58d17977d4c7p-1
+-0x1.e9c1b44e07fecp-1
+0x1.5978b562d5348p-2
+0x1.f69e2232d6a42p-1
+-0x1.ea1b37e291f39p-1
+0x1.a9c704aff0411p-1
+0x1.0f4422ec03b3ap-1
+0x1.0c01d7eb6c807p-1
+-0x1.e24961f09bb8fp-1
+-0x1.6ad805c841fcap-1
+-0x1.f30f95a858a13p-1
+-0x1.7509a50c46facp-13
+0x1.0a4725eca19ecp-1
+0x1.f041143af7d9cp-2
+0x1.c39ee2c592617p-3
+-0x1.b389464f1c401p-1
+-0x1.eeb6a2abaa396p-1
+-0x1.26b3228cfdb15p-1
+-0x1.f7553430f26b9p-1
+-0x1.fbb1f12faf4e4p-1
+0x1.97b404be9b207p-3
+-0x1.6b2935d76744bp-1
+0x1.ee2bd4e26496ap-1
+0x1.69d035f7a7ee7p-8
+-0x1.5adfd2a30ceadp-1
+0x1.81131610d528cp-2
+0x1.81f87126313b8p-1
+-0x1.7cb4d0d3ae749p-1
+0x1.00a5000f3784dp-1
+-0x1.ec020225e8d1ap-1
+-0x1.dcfbc732dc4ccp-1
+-0x1.f54ad24e2bdd7p-2
+0x1.eb4c931e3f233p-1
+0x1.ef6013aa5bd6dp-1
+-0x1.ec4fc7eb42446p-1
+-0x1.963eb08b090e2p-1
+0x1.eb5787014c22cp-1
+-0x1.c474572d53337p-1
+-0x1.7e09139513a33p-26
+-0x1.f9340275d9995p-1
+-0x1.edcf16351be04p-1
+-0x1.7d78a4e9dc91bp-1
+-0x1.1e30752523e09p-2
+0x1.dc4b32a234a23p-1
+-0x1.edbb01a598c24p-1
+0x1.6367c4f49a449p-1
+0x1.eb1db52a22a45p-1
+0x1.e8eba118b0a26p-1
+-0x1.ce8021cd33ff0p-20
+0x1.f988f6376ddcep-1
+0x1.eabac25c2fc1ep-2
+-0x1.e132c034f9071p-1
+0x1.bda2b45f18ea7p-2
+-0x1.eeab70c49e827p-1
+0x1.d85d41c05db82p-1
+0x1.e4003425db812p-16
+-0x1.753ca74c55212p-3
+0x1.98ee323f505cep-1
+0x1.e95be276dd667p-1
+0x1.2287403404baep-1
+0x1.0ed8c38a3bdcep-2
+0x1.c82792be9bbadp-1
+-0x1.38a9d3998d79ap-1
+0x1.e805f6d3a6c5dp-1
+-0x1.32ebc7c55a58ep-1
+-0x1.048b622297845p-13
+-0x1.efb5c6983ac39p-1
+-0x1.415a16a005c76p-20
+-0x1.eb8aa64a05087p-1
+0x1.a18684e94695ap-14
+0x1.de2666acb5762p-1
+0x1.0a79566e358dcp-2
+-0x1.f282f0325a811p-1
+-0x1.3f08a31b67052p-6
+0x1.3a747651ea759p-1
+0x1.8c22845eca245p-2
+0x1.c1aed42df3035p-3
+-0x1.a01057abedfe5p-1
+-0x1.eb57d2b4d4247p-1
+0x1.27a880bdbfcbfp-1
+0x1.d51cd22b5b6cap-1
+0x1.c96de70665e99p-2
+-0x1.afeb916e3177fp-21
+0x1.8e00d6126d657p-2
+0x1.799d63f173a45p-1
+-0x1.cd29463be0ee8p-1
+-0x1.4f47a58e04b54p-1
+0x1.ea2f35262d1a7p-1
+-0x1.279997c5505d9p-1
+0x1.fbe731d9f7db8p-1
+-0x1.60d116a6cc97fp-1
+0x1.e9d9730db6039p-1
+-0x1.78fc83b456074p-2
+-0x1.03c0045400546p-1
+-0x1.f29f3377fe46bp-1
+-0x1.33d676f26127ep-3
+-0x1.efdd474021500p-1
+-0x1.bab9f2ecd85b4p-6
+0x1.c628a3529714fp-3
+0x1.e36ae1b514d1bp-1
+-0x1.db1e13827a88ap-1
+0x1.dbf1b775cf9d2p-1
+0x1.57a975b3f7f83p-2
+0x1.1deb94df7dd48p-2
+-0x1.8f4e44c99669ap-1
+0x1.4ed720c5a163ap-1
+-0x1.db81e304bef8ep-2
+0x1.de5485ca4d9dfp-1
+0x1.db26f3b39fe6bp-1
+0x1.6c88456adc480p-3
+0x1.c5a8961391ccfp-1
+-0x1.b78ea5581fef3p-24
+-0x1.6547c3be6a0acp-3
+0x1.e19d1283e35b5p-1
+0x1.e80e54a58d337p-1
+-0x1.449b6754bba00p-11
+0x1.e41026d50deabp-1
+-0x1.1844f685c97cap-1
+0x1.efa0e345c59b0p-1
+0x1.3121f641ffbd3p-10
+0x1.edb070c60119ap-1
+0x1.a52c94e4dfaa9p-23
+0x1.e5fc97f64aecbp-1
+-0x1.f652e1fdb6a40p-1
+-0x1.fc21417ad3694p-1
+0x1.750fa027faf9ep-1
+-0x1.9260f684b0d63p-3
+0x1.e896c4a4401bcp-1
+-0x1.7e6e516a67284p-2
+0x1.8c32f1a45f352p-3
+0x1.366796f5b5a00p-1
+-0x1.763cb2cf0a32dp-3
+-0x1.ad50f432557fap-1
+0x1.f220a525222a6p-1
+-0x1.e2d4f63884af4p-3
+0x1.7796f74179cbap-1
+-0x1.cd55d3c51d8fep-1
+-0x1.e221669031d28p-1
+-0x1.eeffa2c5a9c49p-1
+0x1.ecf741dda7320p-1
+0x1.a2a1569ae5d32p-1
+-0x1.e680d5195362ep-1
+-0x1.f83452138ebc1p-1
+0x1.30e2369a99e1bp-3
+-0x1.1a18425ff66a7p-1
+0x1.eb7451be325a0p-1
+-0x1.cd4ba71c2a541p-1
+-0x1.dc4f109832464p-1
+-0x1.eb97e24e4691ap-21
+0x1.718a40fa573d8p-3
+0x1.df0c61f2a0f01p-1
+-0x1.ab0051b1239f5p-1
+0x1.070692620b71cp-1
+-0x1.b3cea41f5ebbfp-22
+0x1.fa09813a0f08cp-1
+-0x1.0e9b76f265fe9p-3
+-0x1.dceb234e0d00cp-1
+-0x1.8836556db32e5p-11
+0x1.47d5509f852b6p-2
+0x1.bb4174dfebc1ep-1
+0x1.83be00af14ad6p-10
+-0x1.9a44d54a49874p-1
+-0x1.903962db8447ep-1
+-0x1.ac0763a2833a8p-1
+-0x1.c09d42b039fa3p-1
+0x1.e2fec0234b979p-1
+-0x1.e3f2b40c3e54cp-2
+0x1.dd6694410bcf0p-1
+-0x1.032c51b1d2105p-1
+-0x1.d80bd4a4cf64ap-1
+0x1.f89e41aa2fad5p-1
+-0x1.daf4c6895a475p-2
+-0x1.0579e7d148859p-8
+0x1.e318d24b8b39ep-1
+-0x1.91d2b301a130ep-6
+-0x1.d8d40797b1ffap-1
+-0x1.3ee1c1db473d2p-2
+-0x1.45ebc3d70bdd6p-24
+-0x1.6a73670891036p-1
+-0x1.dd2d72e85c929p-1
+-0x1.c572d1625cc9ap-1
+-0x1.9007645684de8p-1
+-0x1.982b1646a3406p-2
+-0x1.e8dee29e55a00p-1
+-0x1.867e95cfae0a8p-1
+-0x1.57b0e23b39e09p-1
+0x1.04807172fbb6fp-1
+-0x1.70bea3753575bp-1
+-0x1.cc28a3c0fb5ffp-3
+-0x1.0663157daee85p-3
+0x1.d83d9616cffd1p-1
+0x1.d56357592f5acp-2
+0x1.e006175a5233bp-1
+0x1.ded7b522b64c3p-1
+0x1.f11a872f5d26ep-1
+-0x1.e3a22384a6de8p-1
+-0x1.e8316413e3ebdp-1
+-0x1.0da5059829177p-2
+0x1.f67aa7a0b8826p-1
+0x1.eb8604ab96d0bp-1
+-0x1.c1ccb6174f89dp-1
+-0x1.834806f8654c9p-1
+-0x1.ef7701b74636cp-1
+-0x1.e6fc661a4e39bp-1
+0x1.dd3682e648173p-1
+-0x1.7e27e712723ddp-1
+0x1.e12486db8dca7p-6
+-0x1.a7f9c47f84b4bp-11
+0x1.e5dd42f5422e1p-1
+-0x1.7f1a6320cfa79p-1
+0x1.eb14a509edab1p-1
+-0x1.b39b65fdaaaf4p-2
+0x1.edf1a44e79d77p-1
+-0x1.16c4316ff435cp-12
+-0x1.eb0e3015adc06p-1
+0x1.cf1bc071e7b1dp-13
+-0x1.dacfb650325cfp-1
+-0x1.3868c3fb4119cp-3
+-0x1.c2a3b1d7f7890p-1
+-0x1.e64092b0d86f7p-1
+-0x1.53ca0177e6f37p-1
+-0x1.4ea952cfb8453p-25
+-0x1.e84792001e697p-1
+0x1.ef23215f6de12p-1
+-0x1.2152c36f9028dp-1
+0x1.9a5905b3dd7bep-1
+0x1.db5e820db1f0dp-1
+0x1.2dd320b0909e6p-3
+-0x1.027577673d37dp-1
+0x1.e4909407d6b04p-1
+0x1.527324f607a26p-17
+-0x1.ed9414384d45ep-1
+-0x1.7c4f407d91487p-8
+-0x1.eb3f971bcf807p-1
+0x1.d0dc12f7b7649p-18
+0x1.4dcbd35bad403p-1
+0x1.15ad81b482de6p-1
+0x1.e8f0874ac9593p-1
+-0x1.cec574569cb1bp-1
+0x1.ebb2d275b5529p-1
+-0x1.035e76eeac96dp-21
+0x1.eb1e73025e051p-1
+0x1.82b481c2cab01p-1
+0x1.f4d8e628050abp-1
+-0x1.4bc9841532205p-1
+-0x1.a03cd248fa8dbp-3
+-0x1.34a3238e9e3b0p-14
+-0x1.442444137aebep-1
+-0x1.17d6571c1eb38p-9
+-0x1.ed8e345382564p-1
+-0x1.8f2122c52c06bp-1
+-0x1.2e84858cbd9e2p-1
+0x1.ed5ea12bfef39p-1
+0x1.e255d16fe29c9p-1
+-0x1.e7c0a4791e7d1p-1
+0x1.ea9ef4d1cf987p-1
+0x1.bf8761b110b5bp-1
+-0x1.d8ffa13349771p-1
+-0x1.0dd222acc160ap-1
+0x1.828184fbbeaa0p-2
+-0x1.ff5bd6a9242abp-1
+0x1.d91a30bb3e15dp-1
+0x1.c38e7517dd45fp-12
+-0x1.0caa231ede96dp-3
+0x1.bf75f1da5b9f4p-3
+0x1.07c4f43f44017p-1
+0x1.d97165152ffeep-1
+0x1.f565d33b8ac0fp-1
+-0x1.9e2736ae6b655p-13
+-0x1.12528787f6e56p-1
+0x1.1b0912987dcf2p-3
+-0x1.59f3c5b673712p-1
+-0x1.bde56690f6eccp-1
+0x1.d28502cfb2092p-5
+0x1.ddc5738e8f925p-1
+-0x1.7b2d0222d18edp-1
+0x1.495424a43a336p-1
+-0x1.bbee92a22bc1dp-1
+-0x1.e8092359ccf4ap-1
+0x1.d986b716394bap-1
+-0x1.348db24936e14p-1
+-0x1.2c3e37771fce2p-1
+0x1.813c34a44eb1ap-14
+-0x1.dfcb1799d0b1ep-1
+-0x1.148f93639ab8ap-1
+0x1.e9d8e507b6b7dp-1
+0x1.adc4400d2246cp-22
+-0x1.f9941587a0f90p-1
+-0x1.0763c2612613cp-8
+-0x1.ec59c307396f8p-1
+0x1.f8e25686998acp-1
+-0x1.d1b2d7ceae413p-1
+-0x1.15af64d6bc1c9p-17
+-0x1.4f4065a22973ap-23
+-0x1.eb6ea004c88a2p-1
+-0x1.b2daa6e18bec1p-1
+-0x1.f95c5323bece4p-2
+0x1.e1d682232cc70p-1
+0x1.ecec70e666347p-1
+-0x1.d0e1b0d47cce6p-1
+-0x1.ef7c05da00ccbp-1
+0x1.8f83f2b021978p-1
+-0x1.18204301e710fp-3
+0x1.eac881dd6e573p-1
+0x1.46f83671cca25p-1
+0x1.e30cf7c07f903p-1
+-0x1.eba9678c3f1c2p-1
+0x1.e64eb73adb2c1p-1
+0x1.bd81501f6c6dbp-1
+0x1.6c6bd2dd525cdp-1
+0x1.205b7320c006cp-4
+0x1.ff04d61b0df50p-1
+-0x1.eeff51ab9dd14p-1
+-0x1.948a52ed5c31bp-5
+-0x1.e1c5c6487033bp-1
+-0x1.e217c080561c1p-1
+-0x1.3248c214e0d26p-3
+0x1.ed0872a63647dp-1
+0x1.e851875a532ddp-1
+0x1.e7ab52befacc0p-1
+-0x1.259fe08399b90p-3
+-0x1.ededb18a270f5p-1
+0x1.70704180d156ap-1
+0x1.9f8db14d87da8p-1
+0x1.e86395d65171ap-1
+-0x1.b845d7262e0bap-3
+0x1.4183f2511d03ep-1
+0x1.61a7f6c5ef7d1p-22
+-0x1.0bf534b51583ap-2
+-0x1.ebfb153952f46p-1
+-0x1.f432a5c40b5aep-1
+0x1.de1315467998fp-1
+0x1.043b03cb8172fp-3
+0x1.ef435338a09fbp-1
+-0x1.e3682482abf80p-2
+0x1.8cb1a630bb9c2p-1
+0x1.2118379e034c2p-19
+0x1.f7d1a7b4d3511p-2
+-0x1.befed649c5772p-1
+-0x1.ea5613210aa70p-1
+-0x1.5b9f05ea1adb3p-3
+0x1.da3dc7fb7e865p-1
+-0x1.56f2e58d53fc9p-1
+-0x1.a4c0d4697fa72p-1
+-0x1.4fe86735879b5p-25
+-0x1.dbe9a120dc24dp-1
+0x1.7e1f516ae8558p-1
+-0x1.0ccec227b1aa8p-1
+0x1.5a21f14dfa7b0p-1
+-0x1.98c8e5b444e4dp-1
+-0x1.a390457106bfbp-1
+0x1.7834478f6c2ccp-1
+-0x1.d355d23d9f129p-1
+-0x1.dfbdc0246898dp-1
+0x1.0de5e5de3ee03p-23
+-0x1.48701720e6bd6p-3
+0x1.da1b02240fa23p-1
+-0x1.ff76554d1cd62p-1
+0x1.5cf30257670ddp-1
+0x1.f37672c4384dap-1
+-0x1.20811778def78p-14
+-0x1.ea363656402fcp-1
+0x1.ef8c5245acfe3p-1
+-0x1.d9bcb4e8d3e79p-1
+-0x1.1372f51c095bep-1
+-0x1.e6d7e64d3a2a2p-1
+0x1.8d887665a4aa4p-12
+-0x1.543b1625c6f47p-3
+0x1.e2cfd418793d3p-1
+0x1.e2365579a754ep-1
+-0x1.806dd0823096dp-1
+0x1.057365e07e692p-2
+0x1.e13e27d7f0352p-1
+-0x1.e170f02eef343p-1
+-0x1.8a8b96c57e126p-1
+0x1.300c178b2707bp-2
+0x1.84277430fd97ep-2
+0x1.ebace7e63c155p-1
+0x1.7e2db343d2518p-6
+-0x1.f53d46b53474cp-1
+0x1.c0e313323e560p-14
+-0x1.445786093a311p-1
+-0x1.a073961b21017p-3
+0x1.eb2c92dd8595ap-1
+-0x1.dfd9b023c2058p-1
+-0x1.9cc0608e5c256p-3
+-0x1.1e8a967a738a4p-1
+0x1.df31c544e9d67p-1
+0x1.d2fad1936930ep-1
+0x1.d8d4c3d683cd2p-1
+0x1.e8712202731adp-1
+-0x1.ea4834441eb39p-1
+0x1.eda472e60d745p-1
+0x1.e25ac2048fb9ap-1
+0x1.4a70d01fd57a4p-1
+-0x1.1c3704a91d838p-1
+-0x1.df8e14d8335ccp-1
+-0x1.e95d04451bcd5p-1
+-0x1.ea74f086de3c2p-1
+0x1.dda9e26e84162p-1
+0x1.74f4f4a9a7630p-1
+-0x1.bb4fb52218d17p-1
+0x1.4f6f80226f31ap-1
+-0x1.684814485308cp-3
+0x1.7fc4e1d16dcf5p-1
+-0x1.fe6bd006411a7p-1
+-0x1.e0f5e654664e4p-1
+0x1.4dd366975a5b3p-2
+0x1.d94e10f7f2ec8p-1
+0x1.d8c8d21926f4cp-1
+0x1.571e352fdd0f0p-2
+0x1.ea0f558903c1ap-1
+0x1.f6c9d5f09ac9ep-2
+0x1.a3c463d5b6e67p-1
+0x1.48352432fcd1ep-5
+0x1.bda1811e8c6b1p-14
+-0x1.ee04d3c3f2263p-1
+0x1.e58f617f2d384p-1
+0x1.8e41e2bcbf28ep-3
+0x1.191df1d6a15d8p-1
+0x1.b0c6938c36b0ap-1
+-0x1.d944534af1d02p-1
+0x1.31642078c9c6dp-2
+-0x1.841801a2f578cp-1
+0x1.ebbb1323e8b84p-1
+0x1.e12481b18bc72p-1
+0x1.fa64112d9b7bdp-1
+0x1.682c32ff96a0fp-1
+0x1.31dd87a025af2p-1
+0x1.df5f54d95cc0dp-1
+0x1.4b9ce3268e639p-2
+0x1.c206d0139362fp-1
+0x1.e3a8a24e59ea9p-13
+0x1.dfd890e7db3d1p-9
+-0x1.bb5997a01dc09p-1
+-0x1.9da2876b31f04p-1
+-0x1.205fe30c96672p-1
+0x1.fa4b1032a01ecp-1
+0x1.e2db71253b231p-1
+-0x1.5cd7b6880daedp-3
+-0x1.dd712109d9432p-1
+-0x1.f4c2f4098a73bp-3
+-0x1.df4df687c5149p-1
+0x1.a7184731a11b4p-1
+-0x1.b717a69cb0326p-1
+0x1.eedaa2dbb184cp-1
+-0x1.fb6f90001c47fp-1
+-0x1.4141539f32f56p-1
+-0x1.9da4077805769p-1
+-0x1.ab8c92a8ec751p-1
+-0x1.fb9d60929751ep-1
+-0x1.e1f9e6fd5632ap-1
+-0x1.ef20c3a53e72fp-1
+0x1.3a55c400f2026p-1
+0x1.bc55404efb12dp-19
+0x1.82c2a5d140048p-2
+0x1.f613e22df463bp-1
+0x1.2c6291d7f2ad7p-2
+0x1.2319304ed36b5p-1
+0x1.ef526669efbebp-1
+-0x1.b3dec74769b6fp-1
+-0x1.7fa021510350ep-1
+-0x1.c22a90b77021ap-24
+-0x1.e89606e911505p-1
+-0x1.ee05e10877512p-1
+-0x1.a748b03895981p-1
+0x1.db4745b9604cdp-1
+0x1.0eab126351bb9p-3
+0x1.2b74811bfc23dp-2
+-0x1.425187f18c762p-18
+0x1.afbbc6e1f9f84p-1
+-0x1.e8ac5756ef915p-1
+-0x1.0f9400d75348bp-16
+0x1.916dc64eee2aap-1
+0x1.c88b2415431cbp-23
+0x1.84a360ccf288dp-20
+0x1.7eff5496b7ed2p-21
+0x1.4360a7a7b5c14p-23
+0x1.71374498ed714p-26
diff --git a/benchtests/libmvec/asinpif-inputs b/benchtests/libmvec/asinpif-inputs
new file mode 100644
index 0000000..1d972db
--- /dev/null
+++ b/benchtests/libmvec/asinpif-inputs
@@ -0,0 +1,2710 @@
+## args: float
+## ret: float
+## includes: math.h
+# Random inputs in [-1,1]
+## name: workload-random
+-0x1.37689p-4
+0x1.27d46cp-1
+-0x1.90dfap-1
+-0x1.185774p-2
+-0x1.e9f48p-1
+0x1.da064p-4
+-0x1.fb2ddep-1
+-0x1.a958c8p-1
+0x1.c36d6p-2
+-0x1.a78216p-1
+-0x1.6504ep-5
+-0x1.ceed3p-3
+-0x1.b94f22p-1
+-0x1.63a9ecp-2
+0x1.3f076cp-1
+0x1.d50e2p-1
+-0x1.ae7bcp-5
+-0x1.8773dcp-1
+0x1.867f78p-2
+0x1.ecbbc8p-2
+-0x1.531578p-2
+-0x1.024a9cp-1
+0x1.049198p-1
+-0x1.f980dp-3
+0x1.921d7p-1
+-0x1.9605c4p-1
+0x1.20af3cp-1
+0x1.8f5078p-1
+0x1.82ecb8p-1
+-0x1.3430b8p-3
+0x1.33df3p-3
+0x1.ee15b8p-2
+0x1.ee848p-6
+0x1.996e18p-2
+-0x1.7de504p-2
+-0x1.c9c4c2p-1
+0x1.b3f06p-1
+0x1.ba198p-3
+-0x1.c8b838p-3
+-0x1.3544fcp-1
+0x1.8753dp-1
+0x1.f09e38p-2
+0x1.07c1dp-1
+-0x1.e22ac6p-1
+0x1.933c8cp-1
+0x1.44c56p-4
+-0x1.4ceac2p-1
+0x1.5bb08p-3
+-0x1.6d7bbp-3
+-0x1.6fad88p-1
+0x1.39163cp-1
+-0x1.666058p-3
+-0x1.317d1cp-1
+0x1.da3068p-2
+-0x1.b33778p-2
+0x1.c6244p-3
+0x1.a2424p-5
+0x1.fba728p-1
+0x1.f9776p-3
+0x1.c0a3f8p-2
+-0x1.023c58p-1
+-0x1.f929eap-1
+0x1.efacacp-1
+0x1.497edcp-1
+-0x1.95f4dp-1
+-0x1.4ebb14p-1
+0x1.b2306p-3
+-0x1.c94a84p-2
+-0x1.bb63c4p-2
+0x1.7b755cp-1
+0x1.745f7p-3
+-0x1.22d376p-1
+-0x1.6c4cccp-1
+0x1.3a16cp-2
+0x1.29153cp-1
+-0x1.d0544cp-2
+-0x1.a8b6p-7
+-0x1.76b97cp-2
+0x1.2ef4cp-2
+0x1.0acfb8p-2
+-0x1.64088cp-1
+0x1.fde8c8p-2
+-0x1.ddd064p-1
+0x1.5e0ec8p-2
+0x1.8bb33p-3
+-0x1.4ade52p-1
+-0x1.5d77b8p-3
+0x1.774cap-3
+0x1.8aa4p-2
+0x1.c813p-4
+0x1.2a9528p-1
+0x1.b29bp-4
+0x1.5cbe24p-1
+-0x1.cfd996p-1
+-0x1.21a5d8p-2
+0x1.14de28p-2
+-0x1.1f4d34p-1
+-0x1.8b8b34p-2
+-0x1.8ed214p-1
+0x1.e5db54p-1
+0x1.508498p-2
+0x1.f6981p-3
+0x1.047194p-1
+0x1.e4aep-1
+0x1.5fe5bcp-1
+-0x1.502bcp-2
+0x1.f99c88p-1
+0x1.a4abfp-2
+-0x1.8d0598p-2
+-0x1.e5353ap-1
+-0x1.6dd92p-5
+0x1.8d275p-3
+0x1.68c848p-2
+-0x1.8f65ccp-2
+-0x1.b1b604p-1
+-0x1.f0302cp-2
+-0x1.dacf26p-1
+-0x1.04c764p-1
+-0x1.bbc298p-1
+0x1.efde0cp-1
+-0x1.40cd24p-2
+0x1.77d53p-2
+0x1.92ea9p-3
+-0x1.a3f6b8p-3
+-0x1.df50dcp-1
+0x1.cb3b44p-1
+0x1.3c8cf8p-1
+0x1.1b695cp-1
+-0x1.4629a4p-1
+0x1.d628b8p-1
+0x1.89086cp-1
+0x1.abed4p-3
+-0x1.468e6p-1
+0x1.8c689p-3
+0x1.b7645p-1
+0x1.b12c2p-1
+0x1.9fc2ep-3
+-0x1.efa2dp-4
+-0x1.e5c47ep-1
+0x1.a0d6ap-1
+-0x1.7e7368p-2
+0x1.53008p-2
+0x1.90081cp-1
+-0x1.bbd902p-1
+-0x1.b20f1p-2
+0x1.038ad8p-2
+0x1.6e0dbp-1
+0x1.71d08p-4
+-0x1.25492p-4
+0x1.f7534p-4
+0x1.8286b8p-1
+-0x1.14c6bp-3
+-0x1.63c66p-2
+-0x1.032d04p-2
+-0x1.44034p-2
+0x1.cf7eb4p-1
+-0x1.96d3ep-5
+-0x1.5ce8c8p-3
+-0x1.2d0604p-1
+-0x1.acbf1p-2
+0x1.cbff78p-1
+-0x1.eaf19ep-1
+-0x1.c6739cp-2
+-0x1.938466p-1
+-0x1.b6facp-1
+-0x1.4adb8cp-1
+-0x1.38a9b8p-1
+-0x1.36a054p-2
+-0x1.cf16dcp-2
+-0x1.1a3dc4p-1
+0x1.2184ap-1
+0x1.322d2p-1
+-0x1.2a38p-7
+-0x1.f9148p-6
+0x1.8a5cep-4
+-0x1.74a2b4p-1
+0x1.b6c034p-1
+0x1.f91008p-1
+0x1.4b95ap-1
+-0x1.fe95ap-1
+-0x1.a36132p-1
+-0x1.f73ddp-1
+-0x1.4f616p-5
+-0x1.0896a4p-1
+-0x1.1bb7cp-5
+0x1.99d67p-1
+0x1.bc7facp-1
+-0x1.a7299cp-1
+-0x1.9a5de4p-2
+-0x1.f8f434p-1
+0x1.748758p-1
+-0x1.ce7572p-1
+0x1.83890cp-1
+-0x1.6e8p-8
+0x1.0c5868p-2
+0x1.c0456cp-1
+-0x1.b5d36p-4
+-0x1.35b43cp-1
+0x1.db1bdp-3
+0x1.aae6cp-3
+0x1.b1affp-3
+0x1.e23d04p-1
+0x1.34019p-2
+-0x1.f3ef94p-1
+-0x1.76e33cp-1
+-0x1.c0cf8p-2
+0x1.228688p-1
+-0x1.b6f28ap-1
+0x1.c60cp-4
+0x1.12e9bp-1
+0x1.45f2ap-2
+0x1.06da58p-1
+0x1.4ecacp-2
+-0x1.a60358p-3
+-0x1.bd1244p-2
+-0x1.c66724p-2
+0x1.910eacp-1
+-0x1.64c0f8p-1
+-0x1.1d40cp-5
+-0x1.bad40ep-1
+0x1.55f428p-2
+0x1.51d768p-2
+-0x1.b37a62p-1
+0x1.662f2p-2
+0x1.4922bcp-1
+0x1.fd7eacp-1
+-0x1.1fdf4cp-2
+-0x1.2d9e8p-6
+0x1.4a577cp-1
+0x1.22c6ep-4
+0x1.0822p-6
+0x1.dc2edp-2
+-0x1.6a7b9ap-1
+0x1.e86528p-1
+-0x1.77934ap-1
+-0x1.55d92p-5
+-0x1.d2b238p-2
+-0x1.966f34p-2
+0x1.14f048p-2
+0x1.a6a76cp-1
+-0x1.32cf4p-3
+0x1.2830ccp-1
+0x1.602b8p-5
+-0x1.d358cep-1
+0x1.b6f1a8p-2
+-0x1.b359dp-1
+0x1.2f33f4p-1
+-0x1.2cf91p-4
+0x1.82408p-2
+0x1.8eb61cp-1
+-0x1.19224cp-1
+-0x1.a2c94cp-2
+-0x1.afb02p-4
+-0x1.70c83cp-1
+0x1.151ab4p-1
+-0x1.1f297cp-1
+0x1.cb1d8cp-1
+0x1.a31fd8p-2
+0x1.40dd4p-4
+-0x1.35224cp-1
+0x1.5c7038p-2
+-0x1.1e2218p-3
+0x1.d3debcp-1
+0x1.4a6fe4p-1
+0x1.1edd54p-1
+-0x1.068b08p-3
+0x1.d833ap-3
+0x1.7b7514p-1
+0x1.c3adp-6
+0x1.a094bp-1
+0x1.2a1ap-2
+0x1.a44768p-2
+-0x1.828514p-2
+-0x1.f42664p-2
+0x1.5d142p-3
+-0x1.537a84p-1
+0x1.6babb8p-1
+0x1.a0013p-2
+-0x1.485364p-2
+0x1.fc67f8p-2
+0x1.311f4p-4
+-0x1.a20f2p-5
+-0x1.03d2c8p-1
+-0x1.0312f4p-2
+-0x1.5aadacp-1
+-0x1.6ab13p-1
+0x1.202268p-1
+-0x1.b41f58p-1
+0x1.4aa5f8p-2
+-0x1.9d6548p-1
+0x1.c4fd7p-1
+0x1.94d4dp-3
+-0x1.e5c32p-1
+-0x1.fab1ep-4
+0x1.60a6cp-5
+-0x1.714f98p-2
+-0x1.2af858p-2
+0x1.906c6p-1
+0x1.3f7a8p-1
+0x1.3d0b1p-3
+-0x1.910aacp-1
+-0x1.1cddcp-6
+-0x1.9b1a42p-1
+0x1.3e08fcp-1
+-0x1.e90a98p-1
+0x1.b68948p-2
+0x1.db56cp-1
+0x1.f652ep-1
+-0x1.b0e802p-1
+0x1.ee689p-1
+-0x1.863054p-2
+-0x1.c1c65cp-2
+0x1.796968p-1
+-0x1.78f604p-1
+0x1.d0e34p-2
+-0x1.af74bp-4
+0x1.5373bp-1
+-0x1.bcb36p-3
+-0x1.59e264p-2
+0x1.f3602p-3
+0x1.fc5384p-1
+-0x1.988d2p-2
+0x1.54d6c4p-1
+-0x1.cc9be4p-1
+0x1.5b15ep-4
+0x1.2fa1b4p-1
+0x1.e0dff8p-2
+-0x1.2dffc8p-3
+-0x1.9a02fep-1
+-0x1.0d5d8p-6
+-0x1.620428p-1
+0x1.e854ap-1
+0x1.56f0e8p-2
+0x1.49577p-3
+-0x1.9b2fdcp-2
+-0x1.6efc94p-2
+0x1.542518p-2
+0x1.fb1c8p-3
+-0x1.8ccf4p-5
+0x1.79114p-2
+-0x1.cd65c6p-1
+0x1.1debcp-5
+0x1.56d078p-1
+-0x1.cebe5cp-2
+0x1.3fca8p-1
+-0x1.bcb9c8p-2
+0x1.08df08p-1
+0x1.4272c4p-1
+-0x1.4b5038p-2
+0x1.ceccc8p-2
+-0x1.352478p-3
+-0x1.c515ep-1
+-0x1.7f6f34p-1
+0x1.c0d258p-2
+0x1.d807p-3
+0x1.c76a6p-2
+-0x1.6fc70cp-1
+0x1.bc7ep-2
+-0x1.50e3e4p-1
+0x1.644a7p-2
+-0x1.ca7db4p-1
+0x1.60ea5p-3
+-0x1.13aa8cp-2
+-0x1.2b23p-3
+-0x1.c8ac98p-1
+-0x1.c52ad8p-1
+-0x1.27eep-8
+-0x1.e1347ap-1
+-0x1.976e86p-1
+0x1.bdf25p-3
+-0x1.86408ap-1
+0x1.ae7cp-9
+-0x1.fa1c2p-2
+0x1.300ccp-1
+0x1.1acc08p-1
+-0x1.cd1fbp-3
+0x1.4d76f8p-1
+-0x1.da18ap-1
+0x1.b7f5fp-1
+0x1.e73828p-2
+-0x1.71e318p-2
+0x1.98cd78p-2
+-0x1.a5562p-4
+0x1.101ep-8
+-0x1.d5feaep-1
+-0x1.400b7p-4
+0x1.a40768p-1
+-0x1.c70018p-2
+-0x1.b1b094p-2
+0x1.c7ee8p-3
+0x1.c9b948p-1
+0x1.4a8d28p-2
+0x1.1df308p-1
+-0x1.45eb1p-3
+0x1.d68fbcp-1
+0x1.75b38p-1
+0x1.3bb7fcp-1
+0x1.d3518p-2
+0x1.dbed68p-2
+0x1.1b18c4p-1
+-0x1.9a6fc2p-1
+0x1.0b8e78p-1
+0x1.5f9d6p-1
+0x1.f624bp-2
+-0x1.485068p-1
+0x1.a6ea5p-3
+0x1.da0cfcp-1
+0x1.4769c8p-2
+-0x1.fbbb64p-1
+0x1.1284ap-4
+-0x1.c856bp-3
+-0x1.b42e98p-2
+0x1.c1adp-1
+0x1.5ccd7p-3
+0x1.4aa7p-2
+0x1.a0813p-1
+0x1.37aep-2
+0x1.349f4p-5
+-0x1.a7b4a6p-1
+0x1.48fbbcp-1
+0x1.9edfa8p-2
+-0x1.4c297cp-2
+0x1.957dfp-1
+-0x1.22354p-5
+-0x1.463cep-3
+-0x1.a6e74ep-1
+-0x1.481b8p-2
+0x1.700a74p-1
+-0x1.1224c4p-2
+0x1.70676p-2
+-0x1.0860d8p-1
+-0x1.73a32p-3
+0x1.3550d8p-1
+0x1.eb288p-1
+-0x1.47a144p-2
+0x1.55b63p-3
+-0x1.af1e4cp-2
+-0x1.8bc018p-2
+0x1.62d828p-2
+-0x1.1940fp-1
+0x1.231d7p-3
+0x1.9aa72cp-1
+-0x1.b7ebd8p-1
+-0x1.ecb338p-2
+0x1.623cp-8
+0x1.610cep-3
+0x1.174dap-1
+-0x1.5d4124p-2
+-0x1.303358p-3
+0x1.03b974p-1
+-0x1.85dc48p-3
+0x1.d754b4p-1
+-0x1.7b402cp-2
+-0x1.f40f86p-1
+0x1.f0065cp-1
+0x1.e0cccp-2
+0x1.4e4a0cp-1
+0x1.5ef76p-1
+-0x1.9f85dp-2
+0x1.58bc3cp-1
+0x1.ff0304p-1
+-0x1.bf9884p-1
+-0x1.f240d8p-1
+-0x1.2db01p-2
+0x1.da51cp-2
+-0x1.314deep-1
+-0x1.62a7bp-4
+0x1.99fdfp-2
+0x1.e0cefp-1
+-0x1.051bfp-4
+0x1.645908p-1
+-0x1.faecd8p-1
+-0x1.8f9794p-1
+-0x1.389558p-1
+0x1.3518d8p-2
+-0x1.cc007p-2
+0x1.752c6p-3
+-0x1.c19054p-2
+0x1.1e2818p-2
+-0x1.d1c66p-4
+0x1.5fa3ep-2
+-0x1.336cc4p-1
+0x1.a8c36p-4
+0x1.4b6b8p-2
+-0x1.f52718p-3
+-0x1.dc9354p-1
+0x1.77238p-2
+-0x1.b779acp-1
+-0x1.5dbd08p-3
+0x1.ec60dp-2
+0x1.73945p-2
+-0x1.0586f4p-1
+0x1.88ee74p-1
+0x1.787e3p-3
+-0x1.3e35d4p-1
+0x1.42dadcp-1
+-0x1.62259p-4
+-0x1.e949eap-1
+0x1.22535p-2
+0x1.012688p-1
+0x1.f51bcp-2
+0x1.8628p-3
+0x1.24eccp-4
+0x1.3c45acp-1
+0x1.ded8fp-2
+-0x1.4c06e4p-2
+0x1.35e6ep-1
+-0x1.d180e4p-2
+-0x1.8cc026p-1
+-0x1.269aa4p-2
+0x1.22475p-2
+-0x1.82eaa4p-2
+-0x1.7244cp-1
+-0x1.52e518p-2
+0x1.0b17a4p-1
+-0x1.505676p-1
+-0x1.c358f2p-1
+-0x1.20a528p-1
+0x1.4bd94p-3
+0x1.95be5cp-1
+0x1.ef4ca8p-1
+-0x1.3073ep-5
+-0x1.6108bp-1
+-0x1.57f004p-1
+0x1.3711dp-1
+-0x1.0502b4p-2
+0x1.a2af5p-1
+0x1.1e195p-2
+0x1.58f938p-1
+-0x1.f6fddcp-2
+-0x1.a4b574p-1
+-0x1.4cc0ap-3
+0x1.b69aap-3
+0x1.78f198p-2
+0x1.01e83p-2
+-0x1.41f7b8p-1
+0x1.d6faep-4
+-0x1.5530dp-4
+-0x1.eb38c6p-1
+-0x1.8b5af4p-2
+0x1.bccb08p-2
+0x1.14b4b4p-1
+-0x1.62612p-1
+-0x1.603bbcp-1
+-0x1.445308p-3
+-0x1.be4bbep-1
+0x1.bf2a98p-2
+-0x1.0a7428p-2
+-0x1.a82ccp-5
+-0x1.e9b1d2p-1
+0x1.25a1ap-1
+-0x1.620334p-1
+-0x1.b97ef8p-2
+-0x1.6bd228p-1
+-0x1.4e0172p-1
+0x1.bacb3cp-1
+0x1.a03bfp-3
+0x1.c22c7p-3
+-0x1.61178p-1
+0x1.93dcp-8
+0x1.cd7d34p-1
+-0x1.889da8p-3
+-0x1.3f16f8p-3
+-0x1.0ffa1p-4
+0x1.267p-5
+0x1.baf1ep-1
+0x1.10af4p-5
+0x1.b6a964p-1
+-0x1.0b3c9p-1
+0x1.d6fb4p-5
+-0x1.d14f14p-2
+-0x1.c5d44p-5
+0x1.dacb7cp-1
+-0x1.336c6p-4
+0x1.c07a68p-2
+0x1.15b108p-1
+0x1.c066d8p-1
+-0x1.237104p-2
+-0x1.c830ep-3
+-0x1.191a2p-3
+-0x1.a76de2p-1
+-0x1.437c4p-3
+-0x1.d2ddf6p-1
+-0x1.b3f36ep-1
+-0x1.336398p-1
+0x1.b2fb8p-2
+0x1.5988c4p-1
+-0x1.f504cep-1
+-0x1.17e10ap-1
+0x1.eab4f8p-1
+0x1.c5c38p-4
+-0x1.42e274p-1
+0x1.5e535p-3
+-0x1.96961cp-2
+0x1.ca97ecp-1
+0x1.3fc544p-1
+0x1.00294p-4
+0x1.ec4bdcp-1
+0x1.059a4p-3
+-0x1.19731p-1
+0x1.3e53ep-3
+0x1.811e44p-1
+0x1.729dbp-3
+-0x1.d898fcp-1
+-0x1.d04fe2p-1
+-0x1.572facp-2
+0x1.6dad1cp-1
+-0x1.e4acecp-2
+-0x1.09ffc8p-1
+0x1.92ac6p-2
+-0x1.6c9858p-3
+0x1.180234p-1
+-0x1.ba1c8ep-1
+-0x1.be4aap-1
+-0x1.745c0ap-1
+0x1.774facp-1
+-0x1.8f259p-3
+-0x1.0c729p-3
+-0x1.089d78p-2
+-0x1.3c8c2p-1
+0x1.152c4p-3
+-0x1.585ddcp-2
+-0x1.7d5294p-2
+0x1.49f5ccp-1
+0x1.67daep-1
+0x1.f52p-9
+-0x1.73f4b8p-3
+-0x1.a1a508p-3
+-0x1.9082dp-3
+0x1.ede6cp-4
+0x1.ce41ep-4
+-0x1.5ec074p-2
+0x1.c012cp-4
+0x1.3780f8p-2
+0x1.48706p-3
+-0x1.8c48p-6
+0x1.753aap-1
+-0x1.252d1p-3
+0x1.6d55cp-4
+-0x1.3ef29ap-1
+-0x1.34597p-1
+-0x1.f08e88p-3
+0x1.73f448p-1
+0x1.bc18f8p-1
+0x1.3ea924p-1
+0x1.7cc66p-2
+-0x1.2a0998p-1
+0x1.21b55cp-1
+-0x1.4b46cp-6
+0x1.856768p-2
+-0x1.d46baap-1
+-0x1.5792fp-2
+0x1.67a0bp-3
+-0x1.9d2c54p-2
+0x1.1e715p-2
+-0x1.9f488cp-2
+0x1.aec088p-1
+-0x1.f8ecap-3
+-0x1.5b76p-7
+-0x1.acfb6p-5
+-0x1.a8d3acp-1
+-0x1.a4e2e8p-3
+0x1.bf0ddcp-1
+-0x1.0e7454p-1
+-0x1.574e1cp-1
+-0x1.1a78f4p-1
+-0x1.cb6364p-1
+-0x1.389e04p-1
+-0x1.b443p-1
+0x1.762ae8p-2
+0x1.4ba698p-1
+-0x1.3ef336p-1
+-0x1.9f951p-1
+0x1.b9feap-3
+-0x1.fc913p-2
+0x1.69ffp-7
+0x1.47f8ep-4
+0x1.7e923p-3
+-0x1.964ea4p-1
+-0x1.d29d48p-2
+0x1.ed2d1p-1
+-0x1.1b50ap-2
+-0x1.a86e4p-1
+0x1.02b1e4p-1
+0x1.2a129p-1
+0x1.24e9dp-3
+0x1.6f879p-2
+0x1.712d2p-4
+-0x1.058628p-3
+0x1.0c8ca8p-2
+-0x1.87d2fcp-1
+0x1.b20ea4p-1
+0x1.8092p-4
+-0x1.44954cp-2
+-0x1.0256ep-5
+0x1.a7397p-1
+-0x1.92c16cp-1
+-0x1.d2e19ap-1
+-0x1.a893d4p-1
+-0x1.30b7p-3
+0x1.c7fp-1
+-0x1.d01fccp-1
+-0x1.16c40cp-1
+0x1.8cebcp-3
+0x1.e7f2fp-1
+0x1.79f2a8p-1
+-0x1.36082cp-2
+0x1.0596bcp-1
+0x1.70f0bp-3
+-0x1.98e10ap-1
+0x1.d2bfp-3
+-0x1.fa70d2p-1
+0x1.633fap-3
+-0x1.50ebcp-6
+0x1.6b8948p-2
+-0x1.4c6748p-1
+0x1.7bc288p-2
+-0x1.42ce8p-6
+0x1.eb4c74p-1
+0x1.6f014p-3
+-0x1.59556cp-2
+-0x1.32719cp-1
+-0x1.e00102p-1
+-0x1.866498p-3
+-0x1.e45088p-1
+-0x1.c81c7cp-2
+-0x1.ab5e74p-1
+0x1.ad51bp-2
+0x1.2203ep-1
+0x1.497458p-1
+0x1.4e2594p-1
+0x1.2d1eap-1
+0x1.06bd2p-1
+0x1.10b64p-1
+-0x1.2dc09cp-2
+-0x1.df841p-2
+0x1.4d166p-3
+-0x1.db55e8p-1
+0x1.c00bfp-2
+0x1.cee648p-2
+-0x1.57d26p-5
+0x1.28063p-3
+-0x1.2da1bp-4
+0x1.b42334p-1
+0x1.cf5b6p-2
+-0x1.cab212p-1
+-0x1.91e42p-3
+0x1.29a69cp-1
+-0x1.faec6ap-1
+-0x1.820444p-2
+0x1.6554cp-2
+0x1.3bb2f8p-2
+0x1.ec814p-2
+0x1.d67038p-1
+-0x1.4b8388p-2
+0x1.e7226cp-1
+0x1.8044p-8
+-0x1.441454p-2
+0x1.4bc5p-1
+-0x1.960eb8p-2
+-0x1.eefc8p-1
+-0x1.11a7bcp-2
+-0x1.72177cp-1
+0x1.ca3ecp-5
+0x1.2d8e1p-2
+-0x1.e9aa38p-2
+-0x1.b16c2p-1
+-0x1.8ac698p-3
+0x1.b28fa8p-2
+0x1.2923ap-4
+0x1.be74p-8
+0x1.c9e2bp-3
+0x1.6f97ccp-1
+0x1.c159ap-1
+-0x1.048b8p-1
+0x1.d7b83p-2
+0x1.cb66ap-1
+-0x1.7baa9p-4
+-0x1.9df8p-11
+0x1.fb8318p-2
+-0x1.786afp-4
+-0x1.4a4d58p-3
+-0x1.82b0d4p-2
+0x1.c7c358p-2
+0x1.c11134p-1
+-0x1.c8063cp-1
+-0x1.e122fcp-2
+0x1.0d52ep-3
+0x1.5aaf2p-3
+-0x1.525834p-1
+-0x1.647dc4p-1
+-0x1.d4ea4p-4
+0x1.8a8058p-2
+0x1.2eeb4cp-1
+0x1.de5414p-1
+-0x1.3870a8p-1
+-0x1.1634ep-3
+-0x1.132dp-6
+-0x1.8d9034p-1
+0x1.c01e44p-1
+0x1.45168cp-1
+-0x1.af79cp-4
+0x1.534778p-2
+0x1.f98dd4p-1
+-0x1.9e1f2cp-2
+0x1.ad6cf4p-1
+0x1.ffdffp-2
+0x1.68d7c8p-1
+0x1.4957cp-5
+-0x1.e8899cp-1
+-0x1.3651b4p-1
+0x1.bd3788p-2
+0x1.1537ep-3
+0x1.3c80fcp-1
+-0x1.412e88p-1
+-0x1.8f432p-1
+0x1.eab8f8p-2
+0x1.1d1e8p-1
+0x1.cd554p-3
+-0x1.68003p-2
+-0x1.d5e236p-1
+0x1.3b17e4p-1
+-0x1.eac918p-2
+-0x1.4fc978p-3
+-0x1.20d5cp-5
+-0x1.8cac6p-5
+-0x1.0317a8p-1
+-0x1.7658ap-1
+-0x1.4ba67cp-2
+0x1.d27d8p-4
+0x1.01782p-2
+0x1.63cce4p-1
+-0x1.3fc128p-1
+-0x1.ad2272p-1
+-0x1.067448p-2
+-0x1.62ee5p-3
+0x1.3a871p-1
+-0x1.1a78e8p-1
+-0x1.a09808p-2
+-0x1.fb448ep-1
+-0x1.65e28p-4
+0x1.ae434p-4
+0x1.aa658p-5
+0x1.2c988p-1
+-0x1.4858e4p-2
+0x1.1319f8p-1
+-0x1.f37434p-1
+-0x1.4c38a4p-2
+0x1.9efd9p-3
+-0x1.be40e4p-2
+0x1.cb20a4p-1
+0x1.89e764p-1
+-0x1.1c4db8p-3
+-0x1.72b304p-1
+0x1.1bc24p-1
+-0x1.093ep-8
+-0x1.3a502p-5
+0x1.4d709p-1
+-0x1.551bdp-1
+0x1.ac332cp-1
+-0x1.31275cp-2
+-0x1.bff6a4p-2
+-0x1.016a4cp-1
+-0x1.74b36cp-1
+-0x1.ffeep-1
+0x1.79994p-2
+0x1.d742a8p-1
+0x1.0b4c88p-2
+-0x1.2d9288p-1
+0x1.d095a4p-1
+-0x1.9ebf0cp-1
+-0x1.c4ee6p-1
+-0x1.a62b9p-1
+0x1.7f6394p-1
+0x1.26076p-1
+0x1.af749p-1
+0x1.ab7e9p-1
+-0x1.3f217p-4
+0x1.3b691p-2
+-0x1.22a1p-2
+-0x1.7fab48p-3
+0x1.150e18p-2
+0x1.9c7dp-7
+-0x1.f78c3p-4
+-0x1.0361ap-1
+-0x1.4e8ca8p-2
+0x1.93483p-2
+0x1.f3b268p-1
+0x1.ad2284p-1
+0x1.11d8ep-1
+0x1.0dc8p-8
+0x1.40a25cp-1
+0x1.f6f678p-1
+0x1.77ca08p-2
+-0x1.36f55p-1
+0x1.c36a24p-1
+-0x1.db461ep-1
+0x1.2090cp-1
+-0x1.c3da64p-1
+0x1.7642f4p-1
+0x1.b9acap-1
+0x1.d3505p-2
+0x1.c1034p-3
+-0x1.91bd44p-1
+0x1.58492p-3
+-0x1.6345b4p-2
+-0x1.2775bap-1
+-0x1.0be7fp-3
+-0x1.b4c94p-6
+-0x1.f26dbcp-2
+0x1.54dap-7
+0x1.5256p-1
+-0x1.a940fcp-1
+0x1.8eb8e8p-2
+0x1.1bcc1p-2
+-0x1.b39628p-1
+-0x1.c5aadp-3
+-0x1.a4918p-1
+0x1.d24ap-2
+0x1.a14f68p-2
+-0x1.0d8402p-1
+0x1.3fff0cp-1
+0x1.cfc274p-1
+-0x1.fccfc4p-1
+0x1.aad0fp-1
+-0x1.81f37ep-1
+-0x1.7cdffcp-2
+-0x1.feb0b8p-2
+-0x1.435688p-1
+-0x1.02fb48p-2
+-0x1.345618p-1
+-0x1.619328p-3
+-0x1.f1ee8cp-1
+0x1.49470cp-1
+-0x1.9e0c4cp-2
+-0x1.f2341ap-1
+0x1.8005f8p-1
+-0x1.7618cp-5
+-0x1.bc139p-1
+-0x1.43f56cp-2
+0x1.f1e9c8p-2
+-0x1.bbb0bp-2
+0x1.845ed4p-1
+-0x1.5f23bp-2
+0x1.f5c628p-1
+0x1.126468p-2
+-0x1.fa471p-1
+-0x1.2f886p-1
+0x1.4da88cp-1
+-0x1.7a538p-7
+0x1.a361p-1
+-0x1.35a95p-4
+-0x1.f4e77p-4
+0x1.fd5eep-2
+0x1.2c0a8p-3
+-0x1.e33012p-1
+-0x1.f07f2ap-1
+-0x1.f34118p-3
+-0x1.c611fcp-2
+0x1.28a6d8p-2
+0x1.520188p-1
+0x1.d2ee84p-1
+0x1.4bd7ep-1
+0x1.10e208p-2
+0x1.b9f254p-1
+0x1.5428cp-4
+0x1.77044p-2
+0x1.c989p-2
+0x1.6deap-2
+0x1.6b28cp-3
+-0x1.7b6428p-1
+-0x1.8d7848p-3
+0x1.5efb6p-3
+-0x1.97518cp-2
+-0x1.e4b51cp-2
+-0x1.99ac8p-2
+-0x1.a47c5p-1
+0x1.3ce8p-3
+0x1.ff8d88p-1
+-0x1.51789p-2
+-0x1.81329p-2
+-0x1.1de058p-3
+-0x1.67a528p-1
+-0x1.8470bp-1
+-0x1.f8272cp-1
+0x1.338d9cp-1
+-0x1.48ab68p-2
+0x1.a75758p-1
+0x1.24e9p-5
+0x1.3b132p-3
+0x1.745b5p-2
+0x1.151b8p-6
+0x1.1f031p-3
+-0x1.1497dp-2
+0x1.3238ap-3
+-0x1.cae8ccp-1
+-0x1.511e2p-5
+0x1.71abfp-1
+0x1.a9f2f8p-1
+0x1.da1a8p-5
+-0x1.0d996p-1
+-0x1.45a2acp-2
+-0x1.df640ep-1
+0x1.cfb72p-3
+0x1.8493dcp-1
+0x1.65442p-4
+-0x1.a5cda8p-1
+-0x1.6e4d84p-1
+0x1.4c076p-3
+0x1.437b6p-1
+-0x1.acc99p-3
+-0x1.e51eacp-2
+-0x1.7852ap-2
+-0x1.742b6p-1
+-0x1.a47ap-7
+0x1.acfap-6
+0x1.3a81a4p-1
+-0x1.155f7ep-1
+-0x1.dfeab8p-1
+-0x1.0ea984p-1
+-0x1.235c88p-2
+0x1.dff144p-1
+0x1.48cc5p-2
+-0x1.c7bd4p-4
+-0x1.91e628p-3
+0x1.6df56p-4
+-0x1.ab574p-4
+-0x1.77d33ap-1
+-0x1.607808p-1
+0x1.f21cap-2
+-0x1.c9719p-3
+-0x1.a98988p-1
+0x1.e1f0fcp-1
+-0x1.666668p-1
+-0x1.dac1cep-1
+-0x1.47563p-1
+-0x1.fc1a5cp-1
+-0x1.6e7788p-2
+0x1.56343p-2
+-0x1.c27798p-2
+-0x1.09065ep-1
+-0x1.7df49cp-2
+-0x1.50865p-1
+-0x1.c5c928p-3
+0x1.3b6e78p-1
+0x1.aa26p-4
+-0x1.0d579p-4
+0x1.51fbdp-2
+0x1.1a6578p-2
+-0x1.dcfc6ep-1
+0x1.47a6cp-5
+0x1.ba6f7p-1
+0x1.0f595cp-1
+-0x1.c3931p-4
+0x1.5d6e2p-2
+0x1.cc64ccp-1
+0x1.d167e4p-1
+0x1.497bacp-1
+0x1.9d2b8p-3
+-0x1.70d2bp-1
+0x1.fbd498p-2
+0x1.83964p-3
+-0x1.6d48fp-1
+-0x1.79d7fp-2
+0x1.e38fep-1
+0x1.75df14p-1
+-0x1.58114p-5
+-0x1.36081cp-1
+0x1.c155p-3
+-0x1.ebdaap-4
+0x1.b69f18p-2
+-0x1.b4f438p-1
+-0x1.e8ddf8p-1
+-0x1.b0171cp-2
+0x1.9e3b38p-2
+0x1.888e2p-3
+-0x1.75dbc8p-1
+0x1.d1e0f4p-1
+-0x1.695e5p-3
+-0x1.f3920ap-1
+-0x1.892c9ap-1
+-0x1.b9fc72p-1
+0x1.c6ce8cp-1
+-0x1.fd9c2p-3
+-0x1.b680fp-1
+-0x1.cc1d4ap-1
+-0x1.266f24p-2
+0x1.3dfe1p-1
+-0x1.e9de98p-1
+-0x1.23e6e8p-1
+0x1.595b2p-2
+0x1.1f609cp-1
+0x1.ecdfb8p-1
+0x1.820b48p-2
+0x1.3d1b1p-3
+0x1.ed1fap-2
+-0x1.270b64p-1
+0x1.9e1378p-1
+0x1.48944p-2
+0x1.74e594p-1
+0x1.21917p-2
+-0x1.b1e114p-2
+-0x1.04476p-1
+0x1.7f30ap-2
+-0x1.3af33ap-1
+0x1.cfbe64p-1
+0x1.3e78ap-4
+0x1.2a77p-4
+0x1.1c0f1p-2
+0x1.64884p-2
+-0x1.5837bp-4
+-0x1.1266dp-2
+0x1.852af8p-1
+0x1.e30bcp-5
+0x1.418358p-1
+-0x1.77207cp-2
+-0x1.1ed94p-1
+0x1.d8d21p-3
+0x1.59a96p-3
+-0x1.be71ccp-2
+-0x1.b0b504p-2
+-0x1.d0a868p-2
+-0x1.d9c2c8p-1
+0x1.93b1ap-2
+0x1.15a298p-1
+0x1.9cbe9p-1
+-0x1.c46b4p-4
+-0x1.05df4p-4
+0x1.0e0a7p-3
+-0x1.12ca38p-1
+0x1.075b5p-3
+0x1.0b03f8p-1
+0x1.70f904p-1
+0x1.da1f78p-2
+-0x1.57a82p-2
+0x1.a69ap-4
+-0x1.2d7cdcp-1
+-0x1.a0d402p-1
+0x1.e4e2ap-1
+0x1.e0e28p-4
+0x1.d7436p-4
+-0x1.80d32cp-2
+-0x1.de0bdp-4
+-0x1.4233c4p-1
+0x1.21e18cp-1
+-0x1.eb22b6p-1
+0x1.0bf4p-6
+-0x1.fe9c6cp-1
+-0x1.5559ccp-2
+-0x1.59fdcp-1
+-0x1.69526cp-2
+0x1.5b2e58p-1
+-0x1.52f7c4p-1
+0x1.40ddc8p-2
+0x1.254978p-1
+-0x1.4a3768p-1
+-0x1.14674p-2
+-0x1.a54398p-3
+0x1.ea93c8p-2
+0x1.212e48p-1
+0x1.03f6p-2
+-0x1.0cf85cp-1
+0x1.3fd9fcp-1
+0x1.953fcp-2
+-0x1.97fdf4p-1
+-0x1.8d60c8p-1
+0x1.f6e8cp-2
+-0x1.ac24cep-1
+0x1.122dbcp-1
+0x1.9b4c38p-1
+0x1.cb0a6p-1
+-0x1.544eb8p-2
+0x1.88f9c4p-1
+-0x1.bfe418p-1
+-0x1.506486p-1
+0x1.d7429p-1
+-0x1.69675cp-1
+-0x1.bbc93p-4
+0x1.c7deecp-1
+-0x1.fe917cp-2
+0x1.6e057p-1
+0x1.a73e1p-2
+-0x1.c9f578p-1
+-0x1.fedadcp-1
+0x1.e9e0f8p-1
+-0x1.e5482p-1
+0x1.c199c8p-2
+0x1.36e8p-5
+0x1.85227p-3
+0x1.dc4bccp-1
+-0x1.ffbbp-1
+-0x1.c22722p-1
+0x1.6aca6p-2
+-0x1.346b8p-5
+0x1.5751cp-5
+0x1.3a8088p-2
+0x1.31b14p-3
+0x1.05e28p-5
+-0x1.ccf6ap-3
+-0x1.892f2cp-1
+0x1.024d98p-1
+-0x1.22bca4p-2
+-0x1.c9058ap-1
+-0x1.8e2bdp-3
+0x1.058f98p-2
+-0x1.7b236cp-1
+0x1.6f512cp-1
+0x1.fe1208p-2
+-0x1.2b104p-1
+-0x1.a124fp-4
+0x1.51facp-1
+0x1.8a842p-2
+-0x1.188808p-3
+-0x1.54e264p-2
+-0x1.1fe234p-2
+-0x1.336b14p-2
+0x1.e668e8p-1
+-0x1.cf8f14p-2
+-0x1.ec1cep-2
+-0x1.05b0e2p-1
+-0x1.156c8p-1
+0x1.af8ce8p-2
+0x1.46ff68p-1
+-0x1.b5cd28p-2
+0x1.64111p-2
+-0x1.7ba108p-3
+0x1.4213p-2
+-0x1.862ddp-3
+-0x1.192708p-1
+0x1.39cb7p-3
+-0x1.1cf28ep-1
+0x1.f4e0ap-3
+0x1.319c8p-3
+0x1.92d6ep-3
+-0x1.5a946p-3
+0x1.df27dp-2
+-0x1.69fb34p-1
+0x1.828284p-1
+0x1.82ab8p-3
+-0x1.dd6178p-1
+-0x1.c566fp-3
+-0x1.c7d3a8p-2
+-0x1.a857c8p-1
+-0x1.cdaab8p-2
+-0x1.782656p-1
+0x1.7c505p-2
+0x1.06632p-3
+0x1.53ec2p-2
+0x1.015854p-1
+0x1.7f813p-2
+-0x1.61c3c8p-1
+0x1.1d0564p-1
+0x1.363ffp-2
+0x1.dbd328p-2
+-0x1.1ad728p-1
+-0x1.62b0a8p-2
+-0x1.694f52p-1
+-0x1.ef9b2cp-2
+-0x1.05708p-7
+0x1.582974p-1
+-0x1.42e5a8p-3
+0x1.afb09p-2
+0x1.771a8p-1
+-0x1.4ffa5p-3
+-0x1.137778p-1
+0x1.2e148p-1
+-0x1.409fap-4
+0x1.3a75fp-2
+0x1.6fd4dcp-1
+-0x1.bd719p-2
+0x1.1eecb8p-2
+0x1.a387p-3
+-0x1.41bde8p-1
+-0x1.1b0268p-2
+0x1.f5a05p-3
+0x1.d5c43p-3
+-0x1.76c36p-4
+-0x1.b2fd84p-1
+-0x1.023064p-1
+-0x1.813518p-1
+0x1.a3f7p-3
+-0x1.848534p-1
+0x1.21b68p-2
+-0x1.bd79f8p-3
+-0x1.ce506cp-1
+0x1.37a138p-1
+0x1.15fdd8p-1
+-0x1.1a0db6p-1
+0x1.5fd6cp-2
+-0x1.85b7bp-1
+-0x1.78c25cp-2
+0x1.1168d8p-1
+-0x1.5abd5p-3
+-0x1.980682p-1
+0x1.f64d2p-1
+-0x1.847796p-1
+-0x1.cea71cp-2
+-0x1.5eacbcp-1
+0x1.0d90a4p-1
+-0x1.84fc9ep-1
+0x1.20e23cp-1
+0x1.b8d6f8p-2
+-0x1.935568p-1
+0x1.bc1ap-6
+0x1.70c7e8p-1
+0x1.e894a8p-2
+-0x1.189308p-2
+-0x1.a8a0d4p-1
+0x1.a249p-6
+-0x1.832f3p-2
+0x1.aa1138p-2
+0x1.9a016p-2
+-0x1.d485ep-2
+0x1.b805a4p-1
+0x1.76624p-4
+0x1.42503cp-1
+-0x1.21099cp-1
+-0x1.4387p-5
+0x1.0dd73p-1
+-0x1.0d9468p-2
+0x1.219fcp-4
+0x1.2a12ap-4
+0x1.faffb8p-1
+-0x1.79bebcp-2
+0x1.d361f4p-1
+-0x1.d2a782p-1
+0x1.fbbe4p-2
+-0x1.2a118ap-1
+-0x1.ec10eep-1
+0x1.4bf98p-1
+0x1.2ef5b4p-1
+-0x1.bd2a44p-1
+-0x1.0b8e44p-2
+-0x1.ea995ep-1
+0x1.37ff88p-1
+-0x1.327a6p-5
+-0x1.454bfp-3
+0x1.ccfe5p-2
+0x1.cfcf8p-1
+0x1.10765p-3
+0x1.061d3p-1
+-0x1.d50fep-1
+-0x1.a3678p-6
+0x1.d37a8p-2
+-0x1.a656eep-1
+0x1.d06518p-2
+0x1.f9b294p-1
+0x1.610ecp-5
+0x1.3272p-1
+0x1.74342p-3
+0x1.88807p-2
+-0x1.dc7ac4p-2
+0x1.f06114p-1
+0x1.20208p-1
+0x1.b406cp-3
+0x1.ad069cp-1
+-0x1.7980cp-4
+0x1.c68154p-1
+-0x1.98752p-1
+0x1.1751bcp-1
+0x1.e3b568p-2
+0x1.9b663cp-1
+0x1.ba714p-4
+0x1.959194p-1
+-0x1.fa0e48p-1
+-0x1.1c1468p-2
+0x1.625884p-1
+-0x1.a75f98p-1
+-0x1.ec6378p-3
+-0x1.45e5ccp-2
+-0x1.870058p-1
+0x1.f799dp-3
+-0x1.33182ep-1
+0x1.a75f18p-2
+0x1.ee1498p-1
+0x1.594964p-1
+0x1.0a340cp-1
+-0x1.b4c51p-1
+0x1.547a94p-1
+0x1.ef7e8p-5
+0x1.6f10fp-1
+0x1.f82b28p-1
+-0x1.2ba6a2p-1
+0x1.103508p-1
+-0x1.c1feb8p-3
+0x1.07be68p-1
+0x1.1a98cp-4
+-0x1.f3d45cp-2
+0x1.351e64p-1
+-0x1.f5a5c8p-1
+-0x1.68eeacp-1
+0x1.4da5bp-2
+-0x1.835ed4p-1
+-0x1.82bc0ep-1
+0x1.68bb7p-1
+-0x1.5c793cp-2
+-0x1.1456cp-2
+0x1.1a2904p-1
+0x1.8c5648p-2
+0x1.cb707p-3
+0x1.e28f8p-4
+-0x1.0915fap-1
+0x1.cc6a54p-1
+-0x1.109b6ep-1
+0x1.afbe3p-2
+-0x1.f74c3cp-2
+0x1.72682p-4
+0x1.fb6ff8p-2
+-0x1.dd1d0cp-1
+0x1.27d3e8p-2
+-0x1.60633cp-1
+-0x1.f77e4cp-2
+-0x1.9531fp-3
+0x1.4b56f4p-1
+0x1.263a7p-3
+0x1.cfad5cp-1
+-0x1.240ed8p-1
+0x1.4f0e3p-2
+0x1.088dep-2
+0x1.9d319p-1
+-0x1.9bbbf4p-2
+-0x1.40c8d4p-1
+0x1.ed6dap-2
+0x1.159844p-1
+-0x1.a37d58p-3
+0x1.1c06e4p-1
+-0x1.059b7p-1
+-0x1.c49762p-1
+0x1.12d7p-1
+0x1.95922cp-1
+-0x1.dd2214p-2
+0x1.35d16p-4
+-0x1.4104p-5
+-0x1.73eaf8p-3
+0x1.7490ep-2
+-0x1.b4973p-2
+0x1.cf7cdcp-1
+-0x1.a2e048p-3
+-0x1.42a54cp-1
+-0x1.a5d36ep-1
+0x1.77a2bcp-1
+0x1.eb22bp-2
+0x1.aa779cp-1
+-0x1.8ff5cp-3
+-0x1.51015p-4
+0x1.3ff8p-9
+-0x1.3bac4p-2
+0x1.0a7f48p-2
+0x1.13b02p-3
+-0x1.044fdp-4
+-0x1.c603dcp-2
+0x1.b00bb4p-1
+-0x1.e9a404p-2
+-0x1.fc61dep-1
+-0x1.e6f57ep-1
+0x1.252adp-2
+-0x1.c7b724p-1
+0x1.499f28p-1
+0x1.4adba8p-1
+0x1.af2ddp-3
+0x1.c31f4cp-1
+0x1.f59d08p-2
+0x1.417d6cp-1
+-0x1.3365d8p-1
+-0x1.9ca0c4p-1
+-0x1.a7b2fp-1
+0x1.0ebbb8p-1
+0x1.8d2eep-3
+-0x1.1f27fp-1
+0x1.9f3018p-2
+-0x1.81c71cp-1
+0x1.3afbfp-1
+0x1.e492e8p-1
+-0x1.ec245p-2
+-0x1.bcf088p-1
+0x1.10901p-2
+-0x1.78d90ap-1
+-0x1.5c574p-1
+-0x1.57f4dap-1
+-0x1.6dd8dp-1
+-0x1.97f094p-1
+0x1.02f5c8p-1
+0x1.38dfd4p-1
+-0x1.72a626p-1
+-0x1.f29678p-1
+0x1.71d16cp-1
+0x1.5131dp-2
+-0x1.24c138p-3
+0x1.6b0f6p-1
+-0x1.bb95d2p-1
+0x1.f2e818p-2
+0x1.596554p-1
+0x1.59612p-2
+-0x1.9b55d4p-2
+-0x1.895242p-1
+0x1.99b68p-4
+-0x1.ee3638p-1
+0x1.abd6c4p-1
+0x1.955d68p-1
+-0x1.7960e8p-2
+-0x1.ef0a74p-2
+-0x1.9d455ep-1
+-0x1.5fc8p-9
+-0x1.f2748p-6
+-0x1.76a394p-1
+0x1.84fe98p-2
+0x1.3865cp-5
+-0x1.65cfep-5
+-0x1.eadd88p-2
+0x1.edb53cp-1
+-0x1.0da7bcp-2
+-0x1.b246a4p-1
+-0x1.7256fp-1
+0x1.02171p-2
+-0x1.fdf62cp-1
+-0x1.2e15p-6
+0x1.67624p-3
+-0x1.fc1a06p-1
+0x1.2c348p-4
+0x1.92687p-2
+-0x1.9b4694p-2
+0x1.1a9474p-1
+-0x1.d9b5d8p-1
+-0x1.5f6428p-2
+0x1.ca4714p-1
+-0x1.39abep-3
+0x1.75ca54p-1
+0x1.4f7dfp-3
+0x1.17d3cp-1
+0x1.da1898p-2
+-0x1.f69f1ap-1
+-0x1.03a1cp-4
+-0x1.dad91p-1
+-0x1.4e709p-2
+0x1.1ce218p-1
+0x1.7676ap-3
+0x1.32f23p-3
+-0x1.244ecp-2
+0x1.bbfdp-7
+-0x1.dab9e8p-3
+-0x1.f6da18p-1
+0x1.cc9d04p-1
+0x1.b1f834p-1
+0x1.fe033p-3
+0x1.31e2cp-4
+0x1.40e978p-1
+-0x1.ad74a4p-1
+-0x1.88c2cp-3
+0x1.1aca98p-1
+0x1.a2d1c8p-2
+-0x1.39943cp-1
+-0x1.e52b5p-1
+0x1.ec537p-2
+0x1.2f0e38p-1
+-0x1.38ac54p-2
+0x1.40d5c8p-2
+0x1.05e1bp-1
+-0x1.fd2654p-2
+0x1.20d634p-1
+0x1.d0c03p-1
+-0x1.c0d772p-1
+0x1.6d05c8p-1
+0x1.c62f6cp-1
+0x1.3f4bdp-3
+0x1.12f418p-1
+0x1.216648p-2
+0x1.3684bp-2
+-0x1.fac0e8p-1
+0x1.a30dep-2
+-0x1.45cf78p-1
+-0x1.555194p-2
+0x1.556fp-2
+0x1.981928p-2
+-0x1.0d551p-4
+0x1.f35be8p-2
+-0x1.36966p-2
+-0x1.796e28p-1
+-0x1.edbfa4p-2
+-0x1.1726bp-3
+-0x1.d80ba8p-1
+0x1.6d9c2p-1
+-0x1.127fdep-1
+0x1.259e28p-2
+-0x1.82d4fp-1
+-0x1.eff22p-4
+0x1.7c5b58p-2
+0x1.e7c968p-2
+0x1.ff204cp-1
+-0x1.961478p-1
+-0x1.fdcc18p-1
+-0x1.21444p-1
+-0x1.3bdbf4p-1
+0x1.bc5324p-1
+0x1.b63cacp-1
+0x1.552bbcp-1
+0x1.74f91cp-1
+0x1.7a0fe8p-1
+-0x1.cab152p-1
+-0x1.014758p-3
+-0x1.1a018cp-1
+0x1.32e398p-2
+-0x1.eea26p-4
+0x1.8fa0a4p-1
+-0x1.eeaad4p-2
+-0x1.eda198p-3
+-0x1.08f14ep-1
+-0x1.cce112p-1
+-0x1.bce72cp-1
+0x1.d11f1p-3
+-0x1.fcf3p-3
+-0x1.23306p-5
+0x1.d087cp-1
+0x1.8f77a4p-1
+-0x1.c2eefcp-1
+-0x1.f79a66p-1
+0x1.d863p-2
+-0x1.0e7c8p-3
+-0x1.e15444p-1
+0x1.628eap-1
+-0x1.bebe4p-5
+-0x1.872a56p-1
+0x1.52cfp-3
+0x1.7a4b28p-1
+-0x1.8640ep-1
+-0x1.23b09p-2
+-0x1.07851cp-1
+-0x1.de410ep-1
+-0x1.b8ddecp-2
+0x1.c3aa98p-1
+0x1.cf7d9p-1
+-0x1.cb8d74p-1
+0x1.0393bp-3
+0x1.6bf55p-1
+-0x1.ad7938p-1
+0x1.3b23bcp-1
+-0x1.eeebe8p-2
+0x1.b822dp-2
+-0x1.13fd36p-1
+-0x1.4ca92cp-1
+0x1.9594a8p-2
+-0x1.e12acp-2
+-0x1.e8a5ep-1
+0x1.24dd54p-1
+-0x1.038bc8p-1
+-0x1.0bb9bp-4
+-0x1.ce1576p-1
+0x1.12036cp-1
+0x1.5c6acp-2
+0x1.b9fcfp-2
+0x1.e3f1c4p-1
+0x1.f7efb8p-2
+-0x1.e92ff4p-2
+-0x1.e9adc8p-2
+-0x1.f4282ep-1
+-0x1.4775a6p-1
+0x1.6defp-6
+-0x1.87c448p-2
+0x1.c3f6f8p-1
+-0x1.990778p-2
+-0x1.59371cp-2
+0x1.e52e8p-4
+-0x1.44498p-6
+0x1.d090a4p-1
+0x1.a3d5fp-2
+-0x1.3f6428p-3
+-0x1.4b2db8p-2
+0x1.d4dfap-4
+0x1.4108dcp-1
+0x1.cab2e8p-2
+0x1.4dd598p-1
+-0x1.8876cp-6
+0x1.bf656p-2
+0x1.b66a2p-3
+0x1.a558ap-3
+-0x1.21b664p-1
+0x1.366f9p-1
+-0x1.3e53dp-2
+-0x1.f9656p-3
+0x1.3ad5ap-2
+-0x1.c0e8fp-2
+0x1.2f438p-3
+0x1.5ef524p-1
+-0x1.4baa5p-1
+-0x1.5aef8p-1
+0x1.19d8cp-5
+0x1.d63d84p-1
+0x1.7a84f8p-1
+0x1.a2c1ep-4
+0x1.215c3p-2
+-0x1.7b589cp-2
+-0x1.44b46ep-1
+-0x1.5e0906p-1
+-0x1.1254d4p-1
+-0x1.3cb0d8p-1
+0x1.a58228p-2
+0x1.0c36a4p-1
+0x1.8ff5d8p-1
+-0x1.dd768cp-2
+0x1.602be8p-2
+-0x1.c1c054p-1
+0x1.0fc6c8p-2
+0x1.e0023p-3
+0x1.cac8d8p-1
+0x1.f1f728p-1
+-0x1.8b93cp-1
+0x1.a003p-6
+0x1.8e547p-1
+-0x1.ffe102p-1
+0x1.d8478p-4
+0x1.7cfbd8p-2
+-0x1.b0171ep-1
+-0x1.e23c3p-2
+-0x1.b73e7ep-1
+-0x1.e22cf2p-1
+0x1.d235ap-2
+0x1.441b48p-1
+-0x1.60529cp-2
+-0x1.425618p-1
+0x1.e48f68p-1
+-0x1.6cb838p-2
+0x1.3e257p-2
+-0x1.de354ep-1
+0x1.049528p-1
+0x1.412ap-6
+0x1.c62818p-1
+-0x1.1548a8p-3
+0x1.590948p-2
+-0x1.f19192p-1
+-0x1.37e44ap-1
+-0x1.dc08ap-3
+0x1.02c7ap-2
+-0x1.04bcecp-1
+0x1.3c9a6cp-1
+0x1.a9788cp-1
+0x1.a989ap-2
+-0x1.a1ba3cp-1
+-0x1.4caeap-1
+0x1.bdc698p-2
+-0x1.2355e4p-2
+-0x1.70bfbcp-1
+0x1.191eap-2
+-0x1.68567cp-1
+0x1.f22fp-2
+0x1.23f73cp-1
+-0x1.29947cp-2
+-0x1.4d5058p-1
+0x1.57f52cp-1
+-0x1.585bp-3
+-0x1.f6e36ap-1
+0x1.805ff4p-1
+-0x1.f2379p-1
+0x1.fbd6acp-1
+0x1.adc85p-3
+-0x1.70002cp-2
+-0x1.a17c88p-1
+-0x1.fd0f8p-1
+-0x1.c12b7p-3
+0x1.12b238p-2
+0x1.de58dp-2
+-0x1.f4f60ap-1
+-0x1.10de02p-1
+-0x1.e2e7cap-1
+-0x1.56f158p-2
+-0x1.a3b6f4p-2
+0x1.03ba6cp-1
+-0x1.98e498p-2
+-0x1.279cb4p-1
+-0x1.1209p-5
+0x1.a41afp-3
+-0x1.53b32p-2
+-0x1.c0febap-1
+-0x1.b193a8p-3
+-0x1.c9d73cp-2
+0x1.e688f8p-2
+0x1.c41a9p-3
+-0x1.e1e2dp-2
+-0x1.0e1a44p-1
+0x1.a332fp-1
+-0x1.22ee84p-2
+-0x1.6b2fp-3
+0x1.4900ap-3
+-0x1.23c9f8p-1
+-0x1.4d433ep-1
+-0x1.08366p-2
+0x1.499c28p-2
+-0x1.b96d7p-4
+-0x1.61da6cp-2
+-0x1.98ccd4p-2
+0x1.8c6d5p-1
+0x1.077494p-1
+-0x1.1e251p-3
+-0x1.f1102p-5
+-0x1.a6209cp-2
+-0x1.848ebep-1
+-0x1.e11f0cp-1
+0x1.4bd26p-2
+-0x1.c5f66cp-2
+-0x1.26d3bp-4
+0x1.042a5p-3
+0x1.a3176p-3
+0x1.725e44p-1
+0x1.25325cp-1
+-0x1.ab43c8p-3
+-0x1.f8fd48p-2
+-0x1.35e96cp-1
+0x1.2e82e8p-1
+-0x1.478198p-3
+-0x1.6b539ep-1
+-0x1.2008f8p-3
+-0x1.51f3ap-2
+-0x1.289758p-2
+-0x1.f89576p-1
+0x1.d8d3cp-3
+0x1.51ad9cp-1
+0x1.2119ap-4
+0x1.014fcp-3
+0x1.2e760cp-1
+0x1.da02f8p-2
+-0x1.a976e6p-1
+0x1.8cb78p-2
+0x1.d922p-7
+-0x1.cd85b4p-2
+-0x1.68d4d8p-2
+-0x1.2e465cp-2
+0x1.a418b4p-1
+-0x1.4cf41ap-1
+-0x1.f087fp-1
+-0x1.ef1bp-5
+-0x1.2d83ap-5
+-0x1.19d0cp-4
+0x1.024c48p-1
+-0x1.cc403ap-1
+0x1.8af8f8p-1
+-0x1.23d8fp-3
+0x1.41154p-1
+-0x1.fffa1p-2
+0x1.beb7d8p-2
+-0x1.5b1d68p-3
+0x1.cf523p-3
+0x1.ad6808p-1
+0x1.5c5ebp-1
+0x1.6708p-7
+0x1.4c7c8p-2
+0x1.d8156cp-1
+-0x1.fccd3p-1
+0x1.1f239p-3
+0x1.b4d728p-2
+-0x1.21ce08p-3
+-0x1.97e6dap-1
+-0x1.3b9554p-1
+-0x1.11a664p-1
+-0x1.93401p-2
+-0x1.891274p-2
+0x1.17983cp-1
+0x1.8c162p-3
+0x1.a983p-6
+-0x1.616e7cp-1
+-0x1.2c608ap-1
+-0x1.138dcp-2
+-0x1.c0ee56p-1
+0x1.fbbbe8p-1
+-0x1.f9b33ap-1
+0x1.cbf48cp-1
+0x1.04343cp-1
+0x1.d2b4ap-2
+0x1.9190b8p-1
+-0x1.084d24p-2
+0x1.f91dd4p-1
+-0x1.6ee92p-3
+0x1.a06a1p-1
+0x1.663a08p-2
+-0x1.d0c0bp-3
+0x1.173608p-1
+0x1.4f7098p-2
+-0x1.266d2p-3
+-0x1.6bb4a8p-1
+-0x1.c83218p-3
+-0x1.cd05f4p-1
+-0x1.f3e54p-4
+-0x1.fa0e86p-1
+0x1.088d28p-1
+0x1.88ec3p-3
+-0x1.620878p-1
+0x1.333364p-1
+0x1.a782ecp-1
+-0x1.3e52b8p-2
+0x1.361f9cp-1
+0x1.da06b4p-1
+0x1.5abb2p-4
+0x1.61ffap-2
+-0x1.3e57cp-6
+-0x1.6aaf2p-2
+-0x1.bda578p-2
+0x1.1a1278p-1
+-0x1.e1e338p-3
+0x1.35617p-2
+-0x1.cd1098p-1
+0x1.20c7cp-1
+-0x1.91fc04p-2
+0x1.ba4ba4p-1
+0x1.f7d4ep-2
+-0x1.ac0438p-2
+-0x1.885a04p-2
+-0x1.d13bfp-3
+-0x1.1d16c8p-2
+-0x1.dae3bcp-2
+0x1.6b467cp-1
+-0x1.29ac48p-2
+-0x1.7232c8p-2
+0x1.7449p-2
+-0x1.7d8a78p-1
+0x1.2bbea8p-1
+0x1.85c7p-4
+0x1.c83e9p-2
+0x1.190cf8p-2
+0x1.d429cp-5
+0x1.2cad08p-2
+0x1.b2089cp-1
+0x1.686d8p-3
+0x1.df08p-2
+0x1.8f547p-2
+-0x1.376f68p-1
+-0x1.4e55fp-3
+-0x1.1866ap-2
+-0x1.63d58p-3
+0x1.31e1f8p-1
+0x1.101b9cp-1
+0x1.fc9798p-1
+0x1.cde598p-2
+0x1.38014cp-1
+0x1.c11c4p-5
+-0x1.19564p-3
+-0x1.898c06p-1
+-0x1.5ab6c8p-3
+0x1.60aaap-2
+0x1.e4ec2p-1
+0x1.03013p-2
+0x1.15b0a4p-1
+0x1.ee6b3p-2
+0x1.0ef9bp-3
+0x1.a7f44p-3
+0x1.3ea91p-1
+-0x1.89c1c8p-1
+0x1.0678p-5
+0x1.61730cp-1
+0x1.2c826p-3
+-0x1.a1eba6p-1
+-0x1.b4498ap-1
+0x1.2e54f8p-1
+-0x1.9a90fp-3
+0x1.5e6bp-3
+0x1.a538ap-3
+0x1.b03c84p-1
+0x1.5bf6a4p-1
+-0x1.c2e93ap-1
+-0x1.47f3d8p-1
+0x1.f4328p-5
+-0x1.812138p-3
+0x1.0b0c3p-3
+0x1.b9e48p-1
+-0x1.92dd6cp-1
+-0x1.a9e69p-3
+0x1.ae1a8cp-1
+0x1.4ad098p-2
+0x1.9db1b8p-1
+0x1.43ab68p-2
+-0x1.314dbcp-2
+0x1.3fa84p-3
+0x1.2fcdc4p-1
+-0x1.449ap-7
+0x1.f68c0cp-1
+-0x1.20a47p-2
+-0x1.5f58b6p-1
+-0x1.e32e64p-1
+-0x1.1da8aap-1
+0x1.498118p-1
+-0x1.cab484p-1
+-0x1.4760ap-1
+-0x1.a9ac42p-1
+0x1.8fcf74p-1
+0x1.6823bp-3
+0x1.d9c15p-1
+0x1.77752p-2
+0x1.6e05b8p-2
+-0x1.b5cb68p-1
+-0x1.2c6dap-5
+-0x1.dde7a4p-2
+-0x1.01d00ap-1
+0x1.f54e5p-3
+0x1.6d3444p-1
+0x1.e73318p-2
+0x1.16b27cp-1
+-0x1.72aae8p-2
+-0x1.717fap-3
+-0x1.3edff8p-1
+-0x1.38e548p-3
+0x1.bcbdap-4
+0x1.7ed36p-2
+-0x1.822c0ep-1
+0x1.1014dp-3
+-0x1.ce8f4ep-1
+-0x1.f0be7p-2
+-0x1.e0b7c8p-3
+-0x1.7215fp-1
+0x1.98a468p-2
+0x1.7960cp-4
+0x1.cc7b74p-1
+-0x1.0a7324p-1
+0x1.f694f8p-2
+0x1.58901p-3
+-0x1.f9dcep-2
+-0x1.741dbp-1
+0x1.327b38p-2
+0x1.2ce29cp-1
+-0x1.bad3d8p-1
+-0x1.34ab0cp-2
+0x1.9b7068p-2
+0x1.e51cc8p-1
+-0x1.77bdc6p-1
+-0x1.b31138p-1
+0x1.c19178p-1
+-0x1.08f594p-2
+0x1.6d06a8p-2
+-0x1.ab41c8p-1
+0x1.d61cf4p-1
+0x1.67dcecp-1
+0x1.b3c0e8p-2
+-0x1.42dfb8p-3
+0x1.634438p-2
+0x1.f44d58p-1
+-0x1.da36a4p-2
+-0x1.c3521p-3
+-0x1.609608p-1
+-0x1.bd1bacp-2
+-0x1.d167ecp-1
+0x1.2eb13p-3
+-0x1.a57fe6p-1
+-0x1.fed82cp-2
+-0x1.f73012p-1
+0x1.155618p-1
+-0x1.372b6p-5
+-0x1.7664bcp-1
+0x1.7cbcep-1
+-0x1.c52f8p-2
+0x1.c434dp-1
+0x1.a13f78p-1
+-0x1.d7a2c6p-1
+-0x1.e32c5p-4
+-0x1.ed0c0ep-1
+-0x1.d57c1cp-2
+-0x1.28c728p-2
+-0x1.92f416p-1
+-0x1.29f668p-1
+0x1.db43p-4
+-0x1.8cfbccp-1
+0x1.f57b2p-3
+0x1.a68004p-1
+0x1.1ec758p-2
+0x1.0e438p-4
+-0x1.cc3ebcp-2
+-0x1.4dea9p-2
+-0x1.038ap-6
+0x1.652ad8p-1
+0x1.26a82p-1
+-0x1.4798a4p-2
+-0x1.06067cp-1
+-0x1.03afc8p-3
+0x1.10ba6p-2
+-0x1.a50dfp-4
+-0x1.025e9p-2
+0x1.228598p-1
+-0x1.2051ep-4
+0x1.b17b84p-1
+0x1.aa4p-9
+-0x1.c7b66cp-1
+0x1.b3b1p-4
+-0x1.54c60ap-1
+0x1.6c99dcp-1
+-0x1.940aep-1
+-0x1.7e609p-3
+-0x1.8bd6e4p-2
+0x1.e044cp-1
+0x1.e44a58p-1
+0x1.ccd22p-2
+0x1.ac351p-2
+-0x1.ee814p-3
+-0x1.de5b64p-2
+-0x1.4fa336p-1
+-0x1.55fa1ap-1
+-0x1.6ddfcp-1
+0x1.d7d988p-2
+-0x1.d8fd2p-3
+-0x1.933ab8p-1
+0x1.c86d9p-2
+0x1.0ae8b8p-1
+0x1.bb2d5cp-1
+-0x1.41c928p-3
+0x1.0d986p-2
+-0x1.85f7p-1
+0x1.434b3p-1
+-0x1.1921e4p-2
+0x1.ce9f74p-1
+-0x1.e4dc9p-1
+-0x1.b02d4p-2
+0x1.d07eap-1
+-0x1.bd675ep-1
+-0x1.3945acp-1
+-0x1.825258p-1
+0x1.32e9cp-5
+0x1.5eb8ap-3
+0x1.b8963p-3
+0x1.030948p-2
+0x1.2a355cp-1
+0x1.065dcp-3
+0x1.0f00f8p-1
+-0x1.f5a252p-1
+0x1.de3acp-1
+-0x1.2d18d4p-1
+-0x1.61195cp-1
+0x1.10c4d8p-2
+0x1.16ea08p-2
+0x1.d6714p-2
+0x1.c0de9p-3
+0x1.c4d898p-2
+-0x1.7658p-6
+-0x1.8676acp-2
+0x1.57ab9cp-1
+0x1.3ca59cp-1
+-0x1.604a1cp-2
+0x1.5d6b3cp-1
+-0x1.2aeef4p-2
+0x1.320058p-2
+-0x1.d71ea4p-1
+0x1.8e76dcp-1
+0x1.76a098p-2
+-0x1.7f0a2ap-1
+0x1.3356ep-1
+-0x1.15dfap-2
+-0x1.3eb40cp-1
+0x1.a82bcp-1
+0x1.16ba8p-1
+0x1.3324f4p-1
+0x1.395adp-2
+-0x1.964b1ep-1
+-0x1.79e066p-1
+-0x1.32533cp-2
+-0x1.304bp-1
+0x1.801e8cp-1
+-0x1.80f704p-1
+-0x1.880e7cp-1
+0x1.57610cp-1
+-0x1.6bad4p-1
+0x1.2fd14p-1
+-0x1.fbb72p-3
+-0x1.bfa34p-4
+0x1.11fb8p-2
+0x1.9bbc6p-2
+-0x1.3e44fp-3
+-0x1.cf5c9p-3
+-0x1.84e68p-1
+-0x1.c5fb7p-2
+0x1.44bb64p-1
+0x1.9119e8p-1
+-0x1.132526p-1
+0x1.77d92p-1
+0x1.96b2bp-1
+0x1.76ba4p-3
+0x1.58c32cp-1
+-0x1.b53614p-2
+0x1.b7658p-6
+-0x1.dda84ep-1
+0x1.eab224p-1
+-0x1.fab9d8p-3
+-0x1.d1ad5cp-2
+-0x1.5644c2p-1
+0x1.60ba8p-3
+-0x1.f61e5p-2
+0x1.00fbb8p-1
+0x1.765f64p-1
+-0x1.1350b4p-1
+-0x1.0df1fcp-1
+0x1.b8f3cp-4
+0x1.dee75cp-1
+-0x1.78b92cp-2
+0x1.ec2fdp-3
+0x1.8b8484p-1
+-0x1.344a7ep-1
+-0x1.152464p-2
+-0x1.4ec26p-2
+0x1.ce8b5p-3
+0x1.8c775p-1
+-0x1.e18d04p-2
+-0x1.8f873p-4
+-0x1.17aa8p-4
+0x1.1ead44p-1
+-0x1.17c5dcp-2
+0x1.ee54d4p-1
+-0x1.ca55d4p-2
+0x1.2ef8b4p-1
+-0x1.131bdcp-2
+0x1.cfc3dcp-1
+-0x1.d1e83p-3
+-0x1.57fbbp-4
+-0x1.8e2b6p-1
+-0x1.51e058p-1
+-0x1.2686bp-2
+-0x1.59155ep-1
+-0x1.0aa78p-3
+0x1.2f1a18p-2
+0x1.5933cp-1
+0x1.bb1164p-1
+-0x1.ce74a4p-2
+-0x1.8d5ecp-3
+-0x1.c75e1p-1
+0x1.2bde7cp-1
+0x1.041cbp-2
+0x1.583cp-2
+0x1.7fc018p-1
+-0x1.e0c092p-1
+0x1.5d3fcp-2
+0x1.764p-2
+0x1.1e29e8p-1
+0x1.97e6e8p-2
+-0x1.1b03ep-1
+0x1.5e4a4p-3
+0x1.22c2ap-4
+0x1.77d514p-1
+-0x1.8b53f4p-1
+-0x1.87166cp-1
+0x1.52eb28p-2
+0x1.08ddcp-3
+-0x1.91efccp-1
+-0x1.5e4bfcp-2
+-0x1.6b408p-7
+-0x1.d10dacp-2
+0x1.3efe4p-4
+-0x1.bb115p-4
+0x1.f9cc78p-1
+-0x1.fb5066p-1
+0x1.0abd28p-2
+-0x1.be8d9p-4
+0x1.218ce4p-1
+0x1.2d679cp-1
+-0x1.ee009p-2
+-0x1.13509cp-1
+0x1.cea8ep-4
+-0x1.4d1738p-3
+-0x1.9311d8p-3
+-0x1.9f63e8p-1
+-0x1.0a2f08p-1
+-0x1.7b19cep-1
+-0x1.51a574p-1
+-0x1.31716cp-1
+-0x1.c5134p-4
+-0x1.cd8854p-1
+0x1.090afp-3
+-0x1.8dfaa4p-1
+-0x1.f8c798p-2
+0x1.0757ap-4
+-0x1.4eff2cp-2
+-0x1.b6ff3p-4
+0x1.8960ep-2
+-0x1.f87054p-1
+-0x1.d8246p-4
+-0x1.fb91c8p-1
+-0x1.42befp-1
+-0x1.7bb8ccp-1
+-0x1.8470acp-1
+-0x1.3fefbcp-1
+0x1.76d38p-3
+-0x1.7884cp-1
+-0x1.9c03bp-3
+0x1.a8decp-4
+-0x1.997ffp-2
+-0x1.7304p-5
+0x1.44c608p-1
+0x1.baa5b4p-1
+0x1.5b3b9cp-1
+-0x1.923fd8p-2
+-0x1.6c5d6p-3
+-0x1.576698p-2
+0x1.aa40d4p-1
+0x1.87fcdp-2
+0x1.e6381cp-1
+0x1.5ee7bp-3
+-0x1.3f98p-8
+0x1.99d77p-3
+0x1.ca5218p-2
+0x1.586f14p-1
+-0x1.7654cp-2
+0x1.3f4dap-3
+-0x1.4b5538p-1
+-0x1.a9e4p-8
+0x1.56dc38p-1
+0x1.604f64p-1
+-0x1.1bb2fp-1
+-0x1.9e5f58p-3
+-0x1.5853fcp-1
+0x1.402c5p-1
+0x1.1490bp-1
+-0x1.58b208p-2
+0x1.22fefp-1
+-0x1.7cc82ap-1
+0x1.7ba0f4p-1
+0x1.5756ap-4
+0x1.09584p-4
+0x1.54e8bp-1
+-0x1.06802p-1
+-0x1.85136cp-1
+0x1.5ede5cp-1
+-0x1.c057c4p-1
+0x1.0ca44p-1
+-0x1.3c629p-2
+0x1.5b5b4p-5
+0x1.9baf6p-2
+-0x1.0ab28p-5
+-0x1.eba66cp-2
+0x1.605fp-5
+-0x1.f991ep-2
+0x1.fab3a8p-2
+0x1.4b73ep-2
+-0x1.3980cp-6
+-0x1.18a028p-2
+0x1.89686cp-1
+0x1.37dd5cp-1
+-0x1.19c166p-1
+-0x1.eb54e4p-1
+-0x1.a4182p-5
+0x1.54e9cp-5
+0x1.98ad84p-1
+0x1.4a3628p-2
+-0x1.4a8778p-1
+-0x1.a1184p-6
+-0x1.7f0c08p-2
+0x1.f6ca2p-2
+0x1.4cb91p-3
+-0x1.8f2808p-1
+0x1.272e24p-1
+-0x1.4e037p-1
+-0x1.228948p-1
+-0x1.ff9804p-1
+-0x1.487c4cp-1
+-0x1.ba802cp-1
+-0x1.23986p-1
+-0x1.f1de58p-1
+0x1.93abd4p-1
+-0x1.a8ecb8p-1
+0x1.2d19a8p-2
+-0x1.6d33acp-2
+-0x1.383b84p-1
+0x1.3e12a8p-1
+-0x1.20dc94p-2
+-0x1.d6f298p-1
+0x1.97306p-4
+0x1.f8b2p-7
+0x1.847154p-1
+-0x1.302416p-1
+-0x1.4593f8p-2
+0x1.27c5c8p-2
+0x1.e0b9b8p-2
+-0x1.7e28p-4
+-0x1.5c118p-6
+-0x1.87ade2p-1
+-0x1.2bcd64p-2
+0x1.18b62p-4
+0x1.af8634p-1
+-0x1.91cdf8p-1
+-0x1.8ed0fp-1
+0x1.045dbp-3
+0x1.d78afp-1
+-0x1.db341cp-2
+-0x1.148014p-1
+-0x1.0abb04p-2
+-0x1.d588cp-6
+-0x1.79895cp-2
+-0x1.f660dp-2
+0x1.ebc2b8p-1
+0x1.c6a7dcp-1
+-0x1.601358p-1
+0x1.e41f38p-1
+-0x1.d89c44p-1
+0x1.92f74cp-1
+-0x1.dcdf2p-1
+0x1.a0c1ep-2
+0x1.8bb4a8p-2
+0x1.641d28p-2
+-0x1.ff7124p-1
+0x1.f3f19p-3
+-0x1.08ee9p-1
+-0x1.c0f04ap-1
+0x1.0f8c4p-4
+0x1.d9dbp-2
+0x1.00f028p-2
+-0x1.e041e8p-1
+0x1.b7e6c8p-1
+0x1.f4b948p-2
+-0x1.389918p-1
+-0x1.6f9ceap-1
+-0x1.7eb15cp-1
+0x1.ecb708p-1
+-0x1.de0088p-1
+0x1.7b99ap-1
+0x1.f8f5dp-2
+-0x1.d9cbcp-3
+-0x1.42f896p-1
+0x1.40f97p-2
+-0x1.d5c4c8p-2
+0x1.9e4afp-2
+0x1.39b05p-1
+0x1.9d6adp-2
+0x1.82b728p-2
+0x1.6c12fp-3
+-0x1.7006p-6
+-0x1.8daa48p-3
+0x1.aced2p-3
+-0x1.d24314p-2
+-0x1.7eb6b4p-2
+-0x1.b41ebp-2
+0x1.a79ap-5
+0x1.ec7c44p-1
+-0x1.ed956ep-1
+-0x1.daa7e6p-1
+-0x1.153ee8p-3
+0x1.009568p-2
+-0x1.755da2p-1
+-0x1.25c7f8p-2
+0x1.becfep-3
+-0x1.b2f498p-1
+0x1.08582p-3
+0x1.565dp-3
+0x1.3f28fp-1
+0x1.ad984p-4
+-0x1.4fe2ap-4
+0x1.82f1dp-1
+0x1.2a622p-3
+-0x1.ae2b3cp-2
+0x1.cbe1a4p-1
+-0x1.35b6dp-3
+-0x1.c8b878p-3
+0x1.c3a2ecp-1
+0x1.522f2p-3
+-0x1.be1e9p-2
+-0x1.6ef754p-2
+-0x1.f8a6a4p-1
+-0x1.d1ec74p-2
+-0x1.47941p-1
+0x1.aa6a6cp-1
+0x1.d605a8p-2
+-0x1.2c586p-1
+-0x1.06ee58p-1
+-0x1.1c0dep-3
+0x1.c7d3a4p-1
+-0x1.520b4p-1
+0x1.c8d75cp-1
+-0x1.ed989ep-1
+0x1.e8bfd8p-1
+-0x1.2ecc6p-2
+0x1.af1258p-2
+-0x1.892668p-2
+-0x1.bb9cep-1
+-0x1.52e0c2p-1
+0x1.5079dp-1
+-0x1.26826cp-1
+-0x1.007e0cp-2
+0x1.57b028p-2
+0x1.9ca544p-1
+-0x1.937f6cp-1
+0x1.45c26p-1
+0x1.f7d6dp-2
+-0x1.5923f4p-2
+-0x1.f02d3p-1
+0x1.9d0124p-1
+-0x1.0d20acp-1
+-0x1.529488p-2
+0x1.26387cp-1
+-0x1.7a2c3p-1
+-0x1.93d13p-4
+-0x1.0e1d5p-2
+0x1.605dfp-3
+0x1.6375ap-1
+-0x1.fae518p-2
+-0x1.2c96a4p-2
+0x1.bb4e18p-2
+0x1.6767fp-3
+-0x1.5060c4p-1
+-0x1.65493cp-1
+-0x1.9ea28p-1
+0x1.201e68p-2
+-0x1.7cd58p-6
+0x1.ab17c8p-2
+0x1.69055p-2
+-0x1.228c9p-2
+0x1.5e3a7p-2
+0x1.19a94p-5
+-0x1.63478p-3
+-0x1.a6ae8cp-1
+0x1.f965c4p-1
+0x1.cc78f8p-1
+-0x1.30a704p-1
+-0x1.8704bcp-2
+-0x1.a6adccp-2
+0x1.fdf238p-2
+0x1.bd596cp-1
+-0x1.3231c4p-1
+0x1.75562cp-1
+0x1.12848p-2
+0x1.e46e6p-4
+-0x1.5c7298p-2
+0x1.46576p-1
+-0x1.055be8p-1
+-0x1.71e8bcp-2
+0x1.31536p-3
+0x1.5b723cp-1
+-0x1.c401eep-1
+0x1.0b3cp-9
+-0x1.4c32ep-3
+0x1.436a8p-6
+-0x1.06df4p-1
+0x1.13dde4p-1
+0x1.276284p-1
+-0x1.1dcad8p-3
+0x1.3db86p-1
+-0x1.c2339p-4
+0x1.7866acp-1
+-0x1.3f4416p-1
+0x1.4b66d4p-1
+-0x1.c3e98p-2
+-0x1.002538p-2
+0x1.2f9f88p-2
+-0x1.6199dp-3
+0x1.ac2ecp-4
+-0x1.1e62dap-1
+0x1.b4f4fp-1
+-0x1.6380aap-1
+-0x1.6a4cdap-1
+0x1.c72fa4p-1
+-0x1.7e664p-3
+-0x1.4c9f4cp-1
+-0x1.e89ef4p-1
+-0x1.7c94cp-5
+0x1.f54384p-1
+0x1.8f3a18p-1
+0x1.a92a24p-1
+-0x1.db274p-6
+-0x1.d7e108p-2
+-0x1.ee7dccp-2
+0x1.72a5ep-3
+0x1.2cf82cp-1
+0x1.d06068p-2
+-0x1.616cbp-2
+0x1.e4b4d4p-1
+-0x1.505bcp-6
+-0x1.75b48cp-1
+-0x1.e4052cp-2
+0x1.5bbf04p-1
+-0x1.bc3c18p-2
+0x1.fa338p-2
+0x1.fe17dcp-1
+-0x1.671ce6p-1
+-0x1.e4e5ap-5
+-0x1.7cbb24p-2
+-0x1.8beec4p-2
+0x1.8d5868p-1
+0x1.609cep-4
+0x1.e328cp-2
+-0x1.bb84p-4
+0x1.0b46ep-1
+-0x1.1aff8p-5
+-0x1.6ba264p-1
+-0x1.2caf6ep-1
+-0x1.5075fap-1
+0x1.99cf1p-2
+0x1.57276p-4
+0x1.df1b2p-3
+-0x1.3efb9cp-2
+0x1.790bcp-1
+-0x1.8cf882p-1
+-0x1.93b616p-1
+0x1.339bp-5
+-0x1.9e0bf8p-2
+-0x1.eef702p-1
+-0x1.020798p-1
+0x1.cfd09p-2
+-0x1.8d0648p-3
+0x1.e36dcp-1
+-0x1.61d8dcp-2
+-0x1.428f92p-1
+0x1.ee7ep-5
+0x1.34e7p-5
+0x1.816418p-2
+-0x1.7778eap-1
+-0x1.972008p-1
+0x1.ffc7p-2
+0x1.e40fp-3
+0x1.68d888p-1
+-0x1.711cbp-1
+-0x1.db781cp-1
+-0x1.f7a38ep-1
+-0x1.44514p-5
+0x1.5ba11p-2
+-0x1.d482b6p-1
+-0x1.53858p-7
+0x1.a4fbp-7
+0x1.86ac1p-3
+-0x1.13cfcp-1
+-0x1.4e462p-1
+0x1.e911ep-2
+0x1.8a6864p-1
+0x1.2865e8p-1
+-0x1.739d78p-2
+0x1.d34ed8p-2
+0x1.44eeep-2
+0x1.b86528p-1
+0x1.649408p-1
+0x1.107274p-1
+-0x1.c72142p-1
+-0x1.541c6p-1
+-0x1.af2dd4p-2
+-0x1.943bd8p-3
+-0x1.dc38d8p-3
+-0x1.25c3a8p-3
+0x1.3885p-7
+-0x1.900cbp-2
+0x1.f99958p-2
+0x1.b8ccbp-1
+0x1.7431bcp-1
+0x1.896e6p-1
+-0x1.b23706p-1
+0x1.b5e0a4p-1
+0x1.4b3d9cp-1
+-0x1.0366c8p-2
+0x1.0a4724p-1
+0x1.64d5f8p-2
+-0x1.5dd0fap-1
+-0x1.a1821cp-1
+0x1.16f29p-1
+-0x1.155e14p-2
+-0x1.82d19p-3
+-0x1.e0b63p-4
+0x1.cedaep-2
+0x1.1d07ap-1
+0x1.814378p-2
+0x1.9db228p-1
+-0x1.597134p-2
+-0x1.e0324p-6
+-0x1.b774ap-4
+0x1.ad5fb4p-1
+0x1.b19dcp-2
+0x1.6875cp-2
+-0x1.fea164p-2
+-0x1.31225p-1
+-0x1.6020bap-1
+0x1.0b65d8p-2
+0x1.dd1298p-2
+0x1.6e154cp-1
+0x1.dd33ap-4
+0x1.b18648p-1
+-0x1.c2115cp-1
+0x1.82a0dp-1
+0x1.8d79ccp-1
+-0x1.51f75p-2
+0x1.c1e6fp-1
+-0x1.03e85p-3
+-0x1.5d6d68p-3
+0x1.8c739p-2
+0x1.93e8p-4
+0x1.e3d72p-1
+0x1.930b1p-3
+0x1.c551d8p-1
+-0x1.af488p-3
+0x1.a3d59p-3
+-0x1.ac33f8p-2
+-0x1.1dc9b8p-1
+0x1.6e2288p-1
+-0x1.2c901ep-1
+-0x1.8c6148p-1
+0x1.3f8bf8p-2
+-0x1.ce187cp-1
+-0x1.406308p-1
+-0x1.e2190ap-1
+0x1.92f278p-1
+0x1.b2be2p-3
+0x1.fcb4p-8
+0x1.6611p-1
+-0x1.b50992p-1
+-0x1.c2e2p-9
+0x1.ba9e38p-2
+-0x1.09e97p-3
+-0x1.85a26ap-1
+0x1.1f6f68p-1
+0x1.e9f48p-4
+0x1.ffc0a8p-1
+-0x1.eec03cp-1
+-0x1.71d31cp-1
+-0x1.971548p-2
+-0x1.0bd1dp-4
+-0x1.e17606p-1
+0x1.9b2fap-2
+0x1.3925f4p-1
+-0x1.3433c8p-2
+0x1.b8271p-1
+0x1.6a02c8p-2
+-0x1.6b738p-2
+-0x1.715fd2p-1
+0x1.2cda78p-2
diff --git a/benchtests/libmvec/atan2pi-inputs b/benchtests/libmvec/atan2pi-inputs
new file mode 100644
index 0000000..41f9ebd
--- /dev/null
+++ b/benchtests/libmvec/atan2pi-inputs
@@ -0,0 +1,1005 @@
+## args: double:double
+## ret: double
+## includes: math.h
+# Random inputs y*2^f, x*2^e where x,y are random in [1/2,1]
+# and e,f are random in [-1073,1024]
+0xf.e64ade01a4bcp-112, 0x1.51e7f10afb4d8p+292
+0x1.eb1594e8f1c6ap+348, 0x3.f3ad0d8215544p+112
+0x1.088f870ee691ap+280, 0x2.cfaffd3a44354p+900
+0x1.958092dd184ap-196, 0x1.2d547e5e0d0a9p+412
+0xe.dee18e7a8b8ep-848, 0x1.765fff587d5f3p-1024
+0x7.5224020da9c5p+768, 0x2.1e01c025eaf62p+212
+0x7.5da25daeca808p+400, 0x1.248a2a8873f16p+276
+0x9.b96d1dba2d8dp+628, 0x3.4262411da747cp+876
+0x3.8dcdb12e8f006p-520, 0x7.ca40e5d987398p+44
+0x1.9ee50c39f32d1p-48, 0x5.1e4326c496ad4p-204
+0x1.be04f86130756p+180, 0x2.d457c98518efp+308
+0x7.2e751bf2b8fccp+876, 0x1.12169563f86d4p+968
+0x3.26da26f2e0f7ap+596, 0x1.b5fa5c347616ap-28
+0x3.5c8cf5fa36fd8p-320, 0x1.909d3b62e5cfap-596
+0x3.8da67c7c8e46p-396, 0x1.e3c256ec4e494p-132
+0xa.8bbfd4f4ed25p-100, 0x1.7c770ae7b8856p+88
+0xf.d001af3a9085p-108, 0x2.f58c9c0b64848p+776
+0x1.9628542428016p-920, 0x1.25c4f0f55ca49p+124
+0x2.af8a460766408p-996, 0x5.f43a3724bae98p+824
+0x2.8b2e9d0564734p+952, 0x5.595a4250d1c2cp+140
+0x6.953df8526b648p+448, 0x6.cd4712d97a2c4p-772
+0x3.144607cac8e44p-396, 0x1.f7968b8c31942p+376
+0xd.d17dd2506e198p-128, 0x4.5029c933ee4cp-1040
+0x6.dc60eb08e7758p+260, 0x5.f8accf3e52e2cp+812
+0x4.849555e2ca9e8p+776, 0xd.98371e7122e5p+688
+0x2.2bee8b9b42bacp+112, 0xc.597cc8159771p-192
+0x6.26c71bdfbf598p+828, 0x3.c8e253c4556b8p+756
+0xc.43564b360047p+296, 0x1.036f7af72ab25p+372
+0x5.fab523d53372p-952, 0x7.196ba059143b8p-44
+0x4.dc658c0eaa674p-416, 0x1.02b8af8ce8482p+1016
+0x2.43bfd5633b1bcp-208, 0x3.660ae6406fb5ep+476
+0x8.65f073c6979f8p-176, 0x1.3a08958c564cdp+348
+0x1.c998958142e68p+880, 0x1.7ec64b4f45cccp+716
+0xa.f5949874c1dp+56, 0x1.a363b4e2f472ap-52
+0x3.b03271a1c01e4p-304, 0x3.0fa7e7ef6ceccp-116
+0x2.a5a5d6695d63cp+152, 0x1.b66a73c2ea728p+64
+0x5.1d4bb47746748p-504, 0xe.ec21bf413a2fp-812
+0x5.c648ea0d96674p-100, 0x1.6ddfb8431aa8cp-680
+0x7.4bc1dd3401be8p+876, 0x1.38acc8fe3787ap+12
+0x3.585e233258274p+52, 0x2.a2aeee2fc0ebp+96
+0x5.db94503dfb874p-720, 0x2.abf5b9fa1bf3cp+368
+0x5.0f3b462ee21p-788, 0x1.69ecfd91fb9d2p-456
+0x1.75710a89f8007p-164, 0x5.9c18df3380e08p-580
+0x1.f5dbb94358d72p-868, 0x1.e053f1c2f68c6p+364
+0xd.012531065743p-584, 0x6.a70dd5b92b9a8p+968
+0xd.4fe53c5e934bp-868, 0x4.7dd5de2eb4ep-640
+0x6.5cc6284cac46cp+832, 0x9.164da0139c63p+200
+0x1.51fd1c202e5fp-952, 0x1.29cf107bc7d2ap-976
+0x3.f18c72435d034p+812, 0xe.b02c11048e05p+332
+0x3.577fc1909cf74p+324, 0x2.054b57128cc2ap+984
+0x3.720e627078e0cp+280, 0x5.40dfc61849aep-1056
+0xe.b263e62d00a9p-756, 0x7.a57cbabc1ea7cp+244
+0x3.24274890bcbeep-224, 0x1.6c35ac17f3958p-856
+0xf.412008621829p-700, 0x3.874d8524e05dap+340
+0x2.fcc56e0b04048p+824, 0x6.84f3042f4438p+824
+0x5.c66cdf1e9d3cp-304, 0x8.d61ca0f7a30ap-1072
+0x7.1af1640f99754p+544, 0x4.ed53dab8f77ep+184
+0x4.6b431d7fd9c8p+408, 0xb.06f5f247f22ep-136
+0x1.e0aef53445013p-708, 0x9.8403722b764ep+944
+0x6.c2e473092a8f4p-468, 0x3.9f2f924a40fa8p-936
+0x1.7a000b5ff424cp+964, 0x7.c19e0cb3b0fa8p-188
+0x3.a29126cdc15acp-656, 0x1.7c80fc7dead3ep-912
+0x2.407aba3dff534p+236, 0x1.95f8a02c6a09p-252
+0x3.d8337d0c49ae4p+592, 0x1.c7c69edd549dp-200
+0x1.5334a822bc6ecp-628, 0x9.c4c4cdd162cb8p-352
+0x2.be0f104d85c38p-784, 0xe.f22b29fade1dp-700
+0x2.4ae91c1683368p+152, 0x6.a3ff0e0190f1p+148
+0xf.b137e644b7efp+340, 0x6.1fe4fb548eb18p+288
+0x5.d09faad0d26a8p-604, 0x5.2bfd22bf079e8p-16
+0x1.2da12571a266cp-920, 0x1.238d5bb74cd41p+36
+0x6.7901c11c2a958p+532, 0x4.6ed8643b29818p+140
+0x6.3f3764382c69p-1008, 0x6.7d1a0c7cff718p-196
+0x2.432012c11cb9cp-956, 0x3.62e1b870dfe68p+828
+0x1.5a75dd3d46b3ap-52, 0xb.20bc6cca08dd8p-52
+0x1.039c817b1e754p+900, 0x4.8af2e9bb880f4p-36
+0x3.374cfdd0d958cp+48, 0x8.cffad14f7d49p+808
+0x8.45a78fae8395p+8, 0x3.ff2a6d61de1a8p+776
+0x2.0dfcbf647488cp-48, 0x3.a4f0a7f53eb4ap-448
+0x6.5f603cd9c086p-484, 0x8.974457ae13b5p+124
+0x1.c44c73ea4d6d4p+764, 0x1.f365d6441732ap-164
+0x1.21b7c518c8cdep+548, 0x1.c527626b4003p-448
+0xd.3f70caa95124p-792, 0x2.5e617f4ee6c9cp+756
+0x3.38a11f34a53fp+984, 0x7.ac733cfc91c8p+120
+0x2.99b3647427724p-864, 0x1.7eef87419ab23p+976
+0x2.f8ba052e65924p+696, 0x7.483c41c523fp-188
+0x3.b1fca129f69cep+1000, 0x2.1e5e1cfe0324cp-720
+0x7.35c7cd0cdc05p+768, 0x1.6ca14e5eb8bccp+792
+0x2.bef21fb88019cp+280, 0x1.165bc4808772p+88
+0x4.3d52323287198p-92, 0x3.3b8e4099d5c78p-88
+0x3.af22fa9209678p-180, 0x6.62eeca19fc4fp-436
+0xd.a4eef5515ca4p-468, 0x4.c987328716c48p+468
+0x4.c9d2db543e798p-920, 0x1.25bdec8404d2ep+796
+0x1.8cc4d2e56579bp+192, 0x1.34066c6510e9p-8
+0x7.35d2d66efc668p+4, 0x2.53a9a66eff12ep-1040
+0x2.6fe1dea6f4018p+932, 0x8.b010ae35b2028p+624
+0x2.be12b601aeec8p+348, 0x1.d0fb6f0c984d1p+432
+0x7.1794afc2cbc2cp-408, 0x8.e88a0fa60941p-648
+0x2.639a4bdf9e574p-592, 0x6.39b1fdc44737p+800
+0xc.d4e937c6c08ep-648, 0xa.6eb04d5850468p-952
+0x1.a200f30f09d36p+896, 0x1.af0bb6b837ccfp-648
+0x4.678eb15984c48p+260, 0xb.59619a546942p-460
+0xe.33e689cd0b64p+568, 0x1.5adf9a4ec17a6p-4
+0x1.609d1d930e30ap-712, 0x6.637609c9a499p+428
+0x2.bf7627d27029p+388, 0xe.a57e83b2fdd5p-108
+0x6.8fdecbbe2ecfp-32, 0x5.0b980a7d45cd8p+740
+0x1.9dd0e698d2f82p-1036, 0x1.b4f7bf3e0cfbdp-232
+0x3.d8db3fe25738p+872, 0xc.16538658b3828p-456
+0x1.79fe74de9bae2p-328, 0x2.31290e2e4fdf4p-228
+0x1.2d49573a18bfep-620, 0x6.e737ee350c30cp-868
+0xb.8b16ca316ca2p-688, 0x1.fd7b162f797c2p+956
+0x4.95db373e83578p-4, 0x2.3df574c0b2bf4p+480
+0x6.1e877a5c4a614p-52, 0xe.06ff7b7b9278p+236
+0x3.63120428fc99p-476, 0x4.f533a0d338248p-524
+0x5.2ef37c2a778dp+304, 0x5.4e0c2932acc8p+852
+0x3.ae29fff71a16p-808, 0x7.989da49d834ecp+420
+0x1.ed5bc3bb667abp-344, 0xc.4c773260b9388p-184
+0xe.2682c59cd715p+824, 0x6.b53ad7e54e0f8p-580
+0x1.6140c28ad9384p-960, 0x1.e606defb78483p-436
+0xd.5f7e9a8665dp-816, 0x1.4cf53d17f6036p-956
+0x7.36ddffad116dp+260, 0x1.d760f2e156bcfp-852
+0xa.dae175b9dcd78p-784, 0x3.90571ff2f954ep-212
+0xf.c3f98a4f749p-860, 0x3.2c8f867af2dap-864
+0x5.5ff55c4d6381p+144, 0x4.5e7adaf849388p-712
+0xc.b85fe56ea69bp-1044, 0x1.360ca2a17c7e2p-284
+0x7.cd8138381e5ep-412, 0xc.c0096f131357p+484
+0x1.00724b00a26fp-916, 0x5.61fc1314cf7a8p+904
+0x7.3d5d197d0ad5p-524, 0x2.f117316899242p+784
+0xa.e54baa694256p+12, 0x9.0166c5bb0997p+596
+0x8.c8f199c549bap+428, 0xe.e6f4971a1ffe8p-116
+0xe.1911c56cd424p-268, 0xb.636d0fa48fb1p+48
+0x1.3ee4f286b9eabp+448, 0xc.9bb2d4c3107dp+848
+0x1.b9d7a664f0c9bp+524, 0x1.6fd48d906368p+708
+0x1.700a831dc5ccap+180, 0x3.570f9aaec7ddcp+320
+0xb.0e5628310cf8p+644, 0x1.ded813d67a59p+88
+0x1.9b66c7d4f997fp-324, 0xd.ac6bae2d9808p-252
+0x1.e5e0b226372bep-924, 0xc.fdc2de9d45e8p-404
+0xf.ec2648722fcdp-168, 0x3.f3512227dc024p-868
+0x4.4a1604ed62e2cp-1024, 0x1.e64565681e8ecp-400
+0x2.918b7f1b43478p-856, 0x9.cf5a57ee25b9p-964
+0x1.928f8281663b5p+732, 0x3.8c37b9f2b9c44p-68
+0x1.47d022447d0d9p-212, 0x7.3003d07b98becp+336
+0x1.7478127c022bep+108, 0xe.db203d98e5b4p+956
+0x3.e215aa8a7081cp-792, 0x6.b88e76c4439p-472
+0xf.a75abb96d5378p-1060, 0x4.3f8f0317952ecp-472
+0x1.54aa777eb8cacp-172, 0x2.f7c43f0883afap-804
+0xc.278a41202728p-372, 0x3.bb6e98051a084p-788
+0x3.81aca23dac714p+780, 0x1.a901ac7572b76p-844
+0x3.7e57612ade912p+616, 0x1.96dca3bd63e4p+476
+0x7.0104a5d4969e4p-780, 0x6.55a4b56d20f34p-1052
+0x1.978a2a42b7a1p+816, 0x2.da4f604068c8p-868
+0x7.3c8bf43147cbcp-476, 0x4.2fa5efe2658dp+788
+0x5.a2a48df0c9a9cp-964, 0xc.be9c4e4835ap-220
+0x1.e760064ea6764p+208, 0x4.5470c47ab193cp+648
+0x5.bade57403303p-560, 0x7.586deffa315d8p+612
+0x1.b092c08816f3ap+76, 0xc.eeadbebbb8aep+880
+0xd.c474e046fc9bp-776, 0x7.e9aab9320d518p-784
+0xc.d6345ea415ebp-632, 0x3.9b43f679ce1fcp-744
+0x4.e2270e454804p+668, 0x1.732bb96673a3p+552
+0x3.a2b01ec82b18cp-940, 0x9.7946d49a7efep-792
+0x8.588c53fb075p-380, 0xd.f2a013fb82768p+932
+0x7.843c28b11b0dcp+608, 0x2.c1415855cc2b4p-740
+0x5.f576ab5c5d068p-132, 0x9.3d4ad13e5adf8p-892
+0x3.5a259e389097p-768, 0x1.ce12bfcb61592p+552
+0xc.08cce6344882p-396, 0x2.b0aa1def16b84p-284
+0xf.849eed4bd969p-104, 0xc.f1ff6a1e30f3p+656
+0x3.60cf6872405dp+216, 0xe.916cb1a07e21p+488
+0x8.afa0246884d7p-4, 0x2.aa9026cb11502p-1068
+0x5.8459722493b6cp+364, 0x1.9a4a1881cff3p+828
+0x8.d1fea3e3ec8ep-1064, 0x2.a6ea369fc5a04p+896
+0x5.98b34bed20424p-224, 0xc.b4bef5e2dd3ap-660
+0x6.82e6415d201b8p+488, 0x5.0845350b3ef2cp+312
+0x4.02185391eac34p-780, 0x2.3f260ffa0a38p+12
+0xa.3a2ab72455728p-732, 0x1.ac457643819eap-868
+0x1.1e452f0447ccap-1052, 0x1.82814a5d9d79p-152
+0xb.c06d651760dcp+716, 0x6.c352ff76dacap-232
+0xe.b168b1855a5dp+196, 0x1.33ae7942d28b4p+176
+0x5.d5d69f9a0b7dp-212, 0x3.3495e0864b17cp+736
+0xc.3f0567b829c1p+376, 0x8.c590999b3ceep-296
+0x1.f6fc01e1050e2p+712, 0xc.0c2125131f4cp-476
+0x1.897bce0913784p-400, 0x1.c5ef4d3868c5ap-16
+0x1.59dab541131eap-536, 0x7.819776061a66cp-876
+0x3.f25dc36b6237ep+420, 0x2.1185326bc2f7cp+648
+0x3.e661c67fc9d14p+632, 0x1.cd220c0d8c697p-544
+0x2.9b2ea8ec0335ep+204, 0x3.96cef7c99ed6cp+736
+0x3.a5b56029ca106p+720, 0x5.0ddbd8c34bb38p+732
+0x1.bd0b04b0d5ffp+768, 0x2.acb086485c0acp+228
+0x1.253ebc6eca2f1p-328, 0x5.28a35c4d7273p+216
+0x1.c7ea9d9e6d606p+216, 0xf.9c8b53d0cabp+268
+0x2.7da9dc9e7f3f4p+380, 0x2.2c94bd9739264p+100
+0x1.42fbbef780b89p-208, 0x1.162f54ac2c616p-1052
+0x1.8c75f21ff63d4p+196, 0xa.8efb1f73da5ap-772
+0x5.3c267ea019b2p-1068, 0x3.48cfb105670fp-824
+0x2.b4145495175c8p+128, 0x5.48614324aad44p-340
+0x6.233f74ee5efc8p+624, 0x1.914e55cce282bp-636
+0x1.4acb38cb1a918p+324, 0x1.f9e9ede35d216p-680
+0x1.cfe994bda3f56p-952, 0x2.6b1c92872537cp+872
+0x2.66d4aba59fa24p-800, 0x1.8019acfcda12bp-436
+0x2.5199427fa20a4p-32, 0x1.fd96bbfc3f9fcp-468
+0x4.e655d3343f5e8p+56, 0x1.3f492e7cd0dfap-80
+0x5.d9a335474947p+548, 0x9.ac1d614150b18p-988
+0x5.b2451c618e62p-68, 0x2.9c3deca394cdcp+696
+0x3.7dac74e990246p-768, 0x1.5dfc6042b1b8cp+572
+0x1.ccb45ef84dc6p-76, 0x1.273b361c6d5b3p-220
+0x1.5e2613f706d82p+260, 0x3.9064078ea96d8p+16
+0x1.46ea9a76a8cbep+252, 0x2.84ac448cf3e7cp+1008
+0x6.a67693dbd8f78p-956, 0x8.0025c257d52p-924
+0x1.e0fe63888157p+884, 0x9.2ae8309feaeap+1016
+0x2.5b9c6a88ca5ecp-156, 0x3.3ae1d36734fbp-28
+0x9.8facae4bc3f1p+32, 0x1.9e88ee1f6597ap+240
+0xb.c53a4f6348bc8p+124, 0x7.8af8454f9f79p-996
+0x2.3c91ecfbfe8p-140, 0x1.7f7978441c1dep+676
+0xc.4c86fd4536f28p+1000, 0x1.0855cb68a6e14p+828
+0x1.b0de303b74bep+416, 0x1.569a02a128dbap-628
+0x5.8e3754c745bb4p+196, 0x1.1719ac573d318p-120
+0x4.4472680edad9p-212, 0xe.e7a8b9fd1a6cp+816
+0x3.b9c681dcb8abp-532, 0x1.88f9d054fec01p-56
+0x1.d88ba612f7fb7p+92, 0x9.719683b165228p-488
+0x3.417187152d65cp-532, 0xb.34c6a168dcb88p-1004
+0x3.db242662b06a4p+728, 0x4.4e01364fed234p-412
+0x4.0932a06158358p-1032, 0x2.21a57514c6456p-1004
+0xc.32b403b648068p+424, 0x5.0ff2decbda358p-492
+0x1.345d42d59c984p+24, 0xa.9ec32e5a2b72p-1044
+0x3.0fcc7d196782p-668, 0x5.af2fea109a398p+520
+0x3.d943088a6f7c8p-840, 0x6.6c37491c8481p+404
+0xa.ac6a25358517p-528, 0x5.67f0bfadc5ddp+204
+0x3.9dbe4836ecc2p+488, 0xd.3a40509ac8bp+660
+0x2.f8cfb00bedb04p+368, 0x3.d87d01a84c9a8p-92
+0xe.53c7e8e5b73fp-20, 0xd.b82fa0586e4fp+404
+0x2.bdcb25535d68p-724, 0x8.89c60faceb9ep+932
+0x1.97f5a2418f81fp+972, 0x2.fe67c6004c6e6p-188
+0x3.d04a4c119b1cep-932, 0x3.0aff7ccf9f8ecp+284
+0x1.182cce72bb41cp+452, 0x1.ad0bc9c68c36bp-552
+0x1.684fd90dbb208p+36, 0x4.6e1de256dd1a8p-356
+0x7.7f05b8fd7d7p-832, 0x5.fbb1fd05105p+536
+0x1.5ec928b34cafcp-72, 0x1.e5fc7acfa9e74p-648
+0x1.07d7a7615c51ep+508, 0xe.92a9c751387d8p+268
+0x1.d762e9fa5d72ap-580, 0x2.a2931f295bddcp-1072
+0x7.2512f9d7d7d34p-60, 0x2.c791974941d6ep-952
+0x1.9bd1cfc2ec966p+600, 0x6.ffe56421c30a8p-80
+0x6.9210e729dcad8p+56, 0x2.243058779b208p+260
+0xf.10f6a16c1ccdp+568, 0xb.a25e09b995c7p+196
+0x1.510e5ff05af4bp-1072, 0x1.8c4c538c69d11p-808
+0x2.faddd1e3b2768p+496, 0x6.e96782e3bacfp+840
+0xa.a4362636c1f5p-1048, 0x6.413a2dca2e034p-488
+0x2.6c8d95ffa492cp+324, 0x7.bae5c23b589p-336
+0x1.64dc38f761fap+628, 0x6.0dc8eabe0938cp+564
+0x1.7ee4b301a8002p-476, 0x3.24921ef5419f4p-572
+0x1.7bc129dd6efc2p+144, 0x1.09371dceb369ep-336
+0xc.11c0516c1738p+916, 0xc.4ffde18fb84cp-680
+0x2.66e67bbbe01ecp+660, 0x2.4937b1de7b71ap+500
+0xf.82ba09a38e418p+796, 0x2.7a7450f4bc2bcp-756
+0x4.9740dd4aa7848p-128, 0x5.f8700b2b49f4p-492
+0x1.91984fb0fea5bp-436, 0x2.68668e5643bdp+696
+0x3.c33d070cfa60cp-120, 0x1.e1f8cae8de11dp+380
+0x5.7b902827b714p-420, 0x1.7d4bb2081bb24p-560
+0x8.b72267532875p-44, 0x8.4176a0baf9p+36
+0x1.d10fabe9c9deap-776, 0x4.679a35f3387d8p-224
+0xb.ebe17a1f957a8p-988, 0x5.07b71fe55d2cp-684
+0x5.6d7aba592b68cp+280, 0xb.d72d43e798aep+392
+0x1.4659a9e7c2018p-884, 0x1.6c53ab0decda2p-924
+0x4.a6139c1c9b18cp+436, 0xc.b7e077f90cbcp+240
+0x7.549c041e9f128p-48, 0x4.989b096e8217cp-488
+0x5.e3f4f1436ce78p+928, 0x4.7e719087b4294p+720
+0x8.4c109bca8df3p-676, 0x1.db485c4c6df52p+768
+0x2.e7203c3fc44f6p+1016, 0x4.96e71e2d28afp+680
+0xf.0cfb8eaa550cp-400, 0xc.42c8d7095b438p+248
+0x4.0add4991fa678p-348, 0x1.1bf7717f8a70ap-448
+0x6.9984051334efp+656, 0x1.ccf93bfed74fcp-272
+0x6.1c4e547ea7448p-416, 0x2.f1e0e622f805p+832
+0x1.d28130e0e2ba8p+532, 0x1.f1af55b769352p+400
+0x3.4d366e6b1d0d2p-284, 0x1.93f305f8e1748p-220
+0xf.9dc83412b42ap+252, 0x1.b9cc96d24f8f6p+728
+0x7.9f25b233a349p-1060, 0x6.fe6bfac66d608p+84
+0xb.869e5dc1048dp+688, 0x4.6dbaaaaac1a38p+400
+0x9.80e6fea95636p+912, 0xd.0b2c58fe84fbp+1012
+0x3.fc4641cfd33b4p-308, 0x1.a2c939e0dc69dp+1020
+0x5.6eee6a72a9208p+704, 0x2.8fe8497484468p+648
+0x3.b56ecc4313cfcp+964, 0x2.f743973497184p-328
+0x1.72e3bafd6432ap-128, 0x7.862e2927e375p-76
+0x2.7fdbab81135c4p+804, 0x3.0380bf5de3d3p-1064
+0x2.a919cbb7d4406p-780, 0x1.57278c5a02164p-200
+0x1.a2841d9dd6c36p+864, 0x2.40b450568e868p+192
+0x1.d1ff447462ed9p+704, 0x1.287734cabaf5p+908
+0xe.50a499854669p-36, 0xe.16113a974e5d8p+500
+0x5.e36a6731dae5p-356, 0x1.ac7b7ff80a72p-720
+0x1.400eb401a5744p-932, 0x1.a3a765a5ecb0dp+944
+0x3.fecead10bd7aap-404, 0x4.bb7a8c66e5a38p+488
+0x2.5eb0d73b5472cp+320, 0x1.c0bd9a0b2aef3p+632
+0x1.4a68d446d932cp-568, 0xa.9bb59ae1f67dp-324
+0x2.41b130bf5ea2ep+924, 0x1.14ddbc8ab57c6p+976
+0x3.1f2dd0f293098p+468, 0x7.7d22a52340f18p+720
+0x8.089a6dc1d9bd8p+84, 0x2.93a3adfc03a9cp-360
+0x5.f42077a81305cp+388, 0x3.4d26ff0b0d788p+640
+0x7.760d4e3473d98p-592, 0x2.ca922fc58e644p-1016
+0x1.144c4c97f8116p-764, 0x1.cc2dc6d47a63ep-596
+0xc.9cf16b7d5bb7p+104, 0x7.15ba644ebbba4p+656
+0x3.b259f33fbfa2p-56, 0x2.3a88166b38d1cp-732
+0x1.3874fa207e618p-1044, 0x1.01bd7d6e5157p-180
+0x4.e0e18d640826p-296, 0x3.a5d4b0c2a543p+184
+0x5.d64aa5979956p+456, 0x1.de3346e7e12d6p+280
+0x4.b11b826129748p-700, 0x4.7ca8e4d541abcp-700
+0xe.747e5c8c48e5p+496, 0x3.2e3870826209p-288
+0x1.da1fc4468e206p-420, 0x1.c0b794a423c0dp+64
+0x2.93a228def5274p+384, 0x8.9e2392564d23p+1004
+0x6.885977457021p+820, 0x2.e6d472908a1e8p-608
+0x2.294a0ae86cb1ep-612, 0x7.60d840b08c648p-472
+0x7.8795ad25fe428p-840, 0x1.e5019f5f617bap-992
+0x5.ee48452d87168p-616, 0x1.1512d1303c50cp+12
+0x6.f32041a900488p+392, 0x9.318469fbbc71p-464
+0x7.991cce573e9f4p+28, 0x9.e13667e145898p+596
+0x1.12844254e372ep+12, 0x1.77c6b97f585ddp+808
+0x2.445306fdcd81cp-808, 0xc.21a9f51bd368p-1024
+0xe.d39ec7af267fp-908, 0x1.dd4d21c9f6491p+328
+0x4.57a2c47b1d4ep-632, 0xb.38d83d9bf6028p+876
+0xe.ce00e28a67fe8p-336, 0x7.22aff1e8df1fp+112
+0x4.36eb1220b4f8p+256, 0x7.3f1c13461e438p+88
+0x3.a42e006f19c4p-580, 0x3.69cacaee59b2p-240
+0x7.ead41e3b9bb9cp-936, 0xd.62561acca511p+348
+0x3.7724321a8dd28p+436, 0x5.527b6ad943138p-112
+0x1.f32d87bc72e63p-756, 0x5.1e33d73ea14acp-700
+0x4.0f12d1a0bfa7cp+968, 0x5.878d52bcdaea8p-284
+0x2.efb04b65dee26p+124, 0xf.f04d459858228p-516
+0x5.4f336dc2d3d1p+112, 0x6.6eca0075b9d8p-336
+0x8.4c397d597576p-916, 0x1.b0f1b2c7c6e78p+528
+0x1.6267710f2a244p+4, 0xd.a7204563b052p-496
+0x5.20be4b42e90dcp-1016, 0x1.bb5d82daa9e21p+452
+0x1.f86acaa184a54p+972, 0x1.9b0b586486cf5p+148
+0x1.5f76f7af414f2p+96, 0x1.7ce2a37a333e9p+548
+0x1.c45f46e92334fp+996, 0xa.e30448fba792p+496
+0x6.22e02f952fb5p+784, 0x4.e34c2787e1e1p+848
+0x2.ca8c84a7183dp-716, 0x8.d001caa07f12p-1056
+0x2.0bcdc44ce882cp+132, 0x7.71b224797dba8p-724
+0x1.69d92e9ae3d02p+344, 0xd.55018c3fc39ep+516
+0x1.af281bf6b32b2p+572, 0xb.7e341156e617p+392
+0xa.933b3d4ed762p-280, 0x2.988c7e6ffa784p+512
+0x4.aabc2b7dc1a4p+880, 0xd.10eeccabbe478p-1064
+0x3.55362662b0822p+636, 0x2.eb5407d01a76ep+640
+0x6.7d93f3110ae74p+228, 0x7.d3a224fd8534p-448
+0x4.888a0a062c6acp+668, 0x6.6f56b65b96dfp-256
+0x9.14e63ae74bf4p+324, 0x6.52d9e926f0b78p+536
+0x5.9dfe5df6b8738p+452, 0x2.941ea7ce1a19ap+960
+0xc.fba00009464b8p+776, 0xc.e320e178f47ap-772
+0x7.235873c5fa28cp-52, 0x7.249c3250f91e8p-204
+0xc.1125b4bed8418p-612, 0x1.7ef2ac2f367dfp+100
+0x1.6b2d8d0162df3p+376, 0x2.e8331afa1f6a4p+784
+0x8.e2054988b942p+724, 0xc.276a8b4db454p-824
+0x1.303924f2d614fp+532, 0x1.cdfd68ddf63bbp+8
+0x6.476ac01a34128p-748, 0x2.d1631b04acc38p+856
+0x6.254ae3c698bf8p-904, 0x3.0f4bccaa717a8p-1056
+0x2.783acb329a718p-1064, 0x1.5fde8317e355cp+596
+0xd.3150da1a78e58p+684, 0x1.8f9627f5854f7p-1000
+0x3.94e8a189ed3ecp+232, 0x1.aa98b429bde2p-644
+0x9.8ab6c4711f46p-92, 0xa.83186f99d8dep+356
+0xd.cba22764d7fdp-692, 0x1.260d8c3941abp-764
+0x7.aab8d18d67c18p-628, 0xc.65fe0867c7ee8p+476
+0x3.67f98823b7cb4p-136, 0x3.60b1123ced952p-952
+0x2.29dae0ac6a94cp-908, 0x7.960e82b2a64d8p-600
+0x1.0dfcd104cf31ap+348, 0x3.d17aee3c390eep+480
+0xf.b050d1454144p+1004, 0x3.012f752f58464p-388
+0x5.70fd809e7e73p+584, 0x3.c6c6bf6ec8604p-204
+0x3.01ad750c96b96p+556, 0xc.c60d6d811caap-496
+0xd.de9ab38c5303p+116, 0x1.507dbd680ea73p-252
+0x3.70dd7ba8b1db6p+68, 0x3.437a923cfaedp-104
+0x4.9ec194802a7c8p+420, 0x2.f68328d13e53cp-728
+0x1.9ea423b87e115p+236, 0xc.378aed07569b8p-748
+0x4.0916ff61f6bd8p+392, 0x9.f75ed97e674ep+704
+0x3.fc2a6456727eap+344, 0x3.cbd6afeffe662p+532
+0xc.4d46ebe45b678p+236, 0xc.4b5701a3a1d7p-784
+0xd.57862d1054cfp+608, 0x1.fc5ead28d616cp+580
+0x1.f9249b1ec9fdep+776, 0xd.907f7b3836848p+400
+0x2.f812202a7d214p+964, 0x1.f8c1ac3bf6e66p+656
+0xe.98ef5b3b29fcp+4, 0x3.7ef8ba287056p-312
+0x7.b564a267ffeap+360, 0x5.5528d072e5984p-236
+0x2.4fbc555a46464p-464, 0xd.441b7ec86c96p-700
+0x3.ed0da23eda51cp+236, 0x1.4b7765597a086p+224
+0xf.e98f56a7364fp-212, 0xb.ee672898f7988p-352
+0xb.a2b6b5979cd7p-280, 0x4.974214fa5fb38p-8
+0x1.ae3abd8edad9ap+732, 0x5.9e56016418eb4p+752
+0x3.2afcb9f631d2cp+484, 0x2.122e2f2bed14p-212
+0x4.042e590ea31p-820, 0x5.bf8ad4f229ad8p-852
+0x2.423d9cdf3e338p-228, 0x3.df9a729e942a4p-736
+0xa.d143ce93c6318p+68, 0x1.9e4cc7a88abep+60
+0x3.8c3df5da8dea8p-500, 0x3.047662add01ap-352
+0x5.2f936b883b7f8p+668, 0x3.5ff3f0ca10bbp+364
+0x3.8e839fdd3a63cp+932, 0x2.e5c226a64fcc8p-120
+0x3.38d5c9df34f8ap+424, 0x4.d5af3efd87498p-776
+0x1.fc3378f8fe934p+320, 0x1.459bf6c2d0e86p+736
+0xd.ea4164021784p-568, 0x9.e9554e257e748p-832
+0x1.70f62b1865e8ep-240, 0x3.6aebd9ebd4104p-144
+0x7.880178e774ccp-420, 0x3.cfd6ea5c450cp-500
+0x1.b34494c9d378cp+552, 0xe.fba1acb258b7p-268
+0x7.4a572dea73128p+76, 0xe.b9651f2ca523p-820
+0xa.bde669d6f036p-768, 0x2.dc32c0b3cc2bp+940
+0x1.a58028c6a4a84p+56, 0x2.9cfc58ae238ap+124
+0x1.49e0adaa1c834p+896, 0x1.d52120ff4bd76p+528
+0xb.4a847f5caaf3p+260, 0xa.151ca10323758p-772
+0x2.38904d3899358p+240, 0xc.4c604e47ba87p+108
+0x6.9cf8703cfdeb8p+616, 0xe.04e292f79c66p-968
+0x7.cf9245ec208a4p+376, 0x1.8e178b17c3b44p-208
+0xf.6f8e9ae21d84p-572, 0x1.848657e4f328cp+516
+0x9.f1ecb8a17a57p+952, 0x2.ddcbcf33186d8p+788
+0x3.cfb9b3eeace9p-936, 0x1.27f0fafea1e0ap-772
+0xc.9386c9bb19b4p+632, 0x1.e980fc563b614p+944
+0x3.ffdf267ced49p-904, 0x3.c12fc6be69898p-260
+0x1.893fa843411ffp-964, 0x1.e0b4945036246p-1028
+0xa.94814f8b7e4cp+780, 0x3.37952be2825e6p-184
+0xa.2b9407aca2488p+624, 0xe.1003b47dedba8p-324
+0x1.1c48ed95a8618p+440, 0x9.64e7fcdf1374p-508
+0x6.9fec47ac9329p+492, 0x3.86e2498d9976cp+660
+0xe.ca39aabbbd2ep-292, 0x3.0316c296b1fcp-704
+0x6.c9bdc0cb8f118p-880, 0x2.9acbc4f9144a2p-968
+0x7.886bdcea2735cp+996, 0x2.a43b625914c34p+876
+0x6.36425676ba89p-716, 0xd.de514256bce4p-976
+0x1.c7320eb01e55ap+620, 0x3.09e6ea4a626cp+620
+0xa.f2fbd8a35787p+1016, 0x3.1efb7da0aa278p-848
+0x2.a9f0acfb2716ep+324, 0x8.cc5a12dec07fp+196
+0x5.4f2d0a6a9699p+296, 0x2.d0fdd188fdc24p+32
+0x1.41a482c422228p-356, 0x9.b97e0b87f628p+832
+0x1.79e4ff7ab4b02p+464, 0x1.2ba38059848ccp+108
+0xd.f501aac49b378p-744, 0x3.eda919909732p-56
+0xc.a481a97d8e3ep-244, 0x1.202393135134p-892
+0x6.b4565c2ea5d6p-268, 0x2.613b4f04adb24p+1004
+0xf.94ad384c6f33p+592, 0x1.5022e1b9d1d78p-772
+0x6.ad138a3c67894p+148, 0x5.92aa0b9762cfcp-328
+0x9.13cad8e27c35p-704, 0x8.ea03cc66ff328p+112
+0x6.aa54a5e58f374p+724, 0x1.2ad5539936655p+120
+0x4.94f4f78604194p+580, 0x2.8037db175604p-1040
+0x2.ae3880da2f2d4p+916, 0x3.210a5e686ee6ap-724
+0x6.f37f70d2cdf98p-528, 0x6.580f72d4c275cp+132
+0x1.4cf3f765c94p+1008, 0x1.ccfd8431f7d6dp-404
+0x5.07f34c977ba54p-152, 0x1.580c4908303cbp+260
+0x1.b1cd829f03558p-416, 0x1.3aee6629428ap+852
+0x6.37dbc75598c44p-860, 0x2.24f1736691a84p-376
+0x3.e75f0c85f23p+76, 0x1.ba253190713bcp+508
+0x1.bb646e909df64p+916, 0x6.518e98c5b3bcp+292
+0x1.ddd0cc6dc8184p+756, 0x7.feccb6b1a4c9p+360
+0xb.bf7a30070093p-516, 0x1.fd70bf9d7d57cp-904
+0x2.19f76df72475p-824, 0x7.1b71f331fa254p+760
+0x1.e6c2ed52ef49dp-784, 0x2.ca1b9bb27c912p-640
+0x1.bc79578223e9ep-360, 0x2.5eae3b220b0a6p-84
+0x6.a2c20a9ecf0b8p+524, 0x1.8777fa657f76p+980
+0x1.677c61fc6c51ap+512, 0x2.f6c788c97a764p-124
+0x1.ed0dce824273p+716, 0xc.c39063372cd78p+356
+0x1.0d2c9d82cae2ap-20, 0x2.c186aa73491a4p-292
+0x3.66731605a0d94p+28, 0x3.00f53ecacd0d8p-548
+0x7.92f162d7a2168p+228, 0xe.dcbd47619d71p+252
+0x1.7f6ad058ad128p-384, 0x8.685fff6a08d2p-372
+0x1.7b5e066be63p-216, 0xb.1c77bc44e6ddp-520
+0x1.beddcfb66e505p+4, 0x9.a3e4ef20bd99p+432
+0x1.cff84615837e6p+164, 0x3.d86e03768e99ep+484
+0x2.a300f0a220876p-168, 0x3.d18a46be621bp+332
+0x4.cea8cf37d3e14p-540, 0x2.2958caddb5a26p-960
+0x1.a1af93dfda061p+492, 0x2.504ec42a8c632p-124
+0xd.6410044e62628p-364, 0x1.221b63030b9aep+520
+0x1.6dd360537b632p+380, 0x1.41c25d53ce21ep+960
+0xd.b4eca36b85fdp+776, 0x1.206ac295f3ffdp-916
+0x6.5fff39bd8a5f4p+832, 0xa.99cb17b0efa5p+252
+0x3.cae4280ab193p+804, 0x2.2f49deb7628e2p+848
+0x1.64f73bafb181cp-1020, 0x1.2674451e1c4fap+48
+0x3.e7233e3fa31d6p+360, 0x1.7959d82b209c2p-328
+0x5.219a3b891f3f8p-60, 0x1.20618bc5365cdp-232
+0x5.354bea852f2dp+388, 0x1.414d60faa5f58p-604
+0x9.af26751352878p-648, 0x3.38ee7be445584p+636
+0x1.5504b938b4402p+224, 0xe.a17ad9d3b6a7p-20
+0x3.9d5c2c20ce666p+816, 0x1.f267437fd89fap-180
+0x2.95936ff763526p+416, 0x5.9015efbe9ce9p+136
+0x2.299bd7e0833e6p-472, 0x7.b9843f2b061e4p+620
+0x4.7f041d77b4324p+152, 0x9.671fd6c19e8bp-4
+0x6.0382bb7a5d2p+940, 0x7.6db9fe2f80738p+272
+0x1.ea02acee90874p-500, 0x1.014d46d4e97b1p-1044
+0x2.b86a38667367cp-948, 0x3.94935f2201274p-524
+0xa.d2f1c7e3559d8p-28, 0x1.7896787392224p-228
+0x3.d3835d73a43p+496, 0x5.975ff8e13f074p+380
+0x1.cf7599398d70bp-1036, 0x1.628c9ddb3d55p+644
+0x6.fb89afca7031p-876, 0xd.94d6918988ccp-812
+0x1.6bfb5be076218p-1064, 0x8.e9d6f9b726e48p-132
+0x5.a0a08b1099dbp+160, 0x4.57a27e437a0a8p-564
+0x5.6931b7f5110ep-212, 0x7.a224d6b54d5f8p-192
+0x1.72754feea8bep-64, 0xe.bfffea109b02p+128
+0x6.61d2b160bd818p-56, 0xb.0da6fe74da36p+960
+0x5.32074a9c86e78p+476, 0x3.f9844e949b95ap-108
+0x1.4906ec04b2fc6p-808, 0x7.ce269d2636184p+872
+0xe.f4140c66ffbcp-820, 0x1.22c64a837f3edp+248
+0x7.a7f929eb50448p-228, 0x1.c99a67873cce7p-16
+0x7.297762f36b398p+872, 0x1.f6ed9c583f814p-336
+0x9.52ab590c2c38p+248, 0xb.ee3f87f6b6178p+108
+0x7.c536741353d38p-864, 0xc.44c6d0b9bbb9p-164
+0x1.07716b6aa5c96p+564, 0x1.8c8cf22b47d4ap-484
+0x1.f152d451e56dep-36, 0x3.3c0845963a8b2p-496
+0x1.cb8a3898f379ap+916, 0x5.908c0b441371p+852
+0xa.18274a2c72ff8p+32, 0x2.b5c87f54c803p+984
+0x6.8948c4377366p-292, 0x2.69c062ad7a6f6p-120
+0x5.cebc236669a0cp+168, 0x6.5caaba79aa828p+1008
+0x2.3f9ef1486826cp+312, 0x3.35a00a65a1494p+692
+0x9.a97366835e01p+156, 0x7.82617650e4a3p-452
+0x1.5eca88945266ep-804, 0x7.8b215f972bdap+180
+0x3.a99391d3573b8p+504, 0xd.ef87187325a08p-212
+0xe.324861dd76478p-416, 0x1.e1b471f00c424p-288
+0x3.365a94911637cp+992, 0x2.cb6409abe9e6ep-664
+0x7.a9c0be22c416p-668, 0xe.59a8d3e160c6p-188
+0x5.3f5c088685bb8p-532, 0x4.70cee0b0f284cp+1012
+0x5.d16c1882a332cp+640, 0xf.1460cc6d0e3ap-460
+0x1.6e3bf9968f9afp-484, 0x6.6267c4b5801fcp-520
+0xf.d5ef05945adp+892, 0x1.037407a24f012p-1072
+0x2.16a6da54723d4p+356, 0x1.b3d97ec4c0454p-992
+0xd.5321f2e34663p+80, 0x6.8447d17938f4p-720
+0x3.a71a1b142eecp-744, 0x1.e6accbf8896f2p+348
+0x1.657613a154639p+332, 0x2.7416e5dd59d24p-396
+0x3.07dcc0499153p+84, 0x4.721c4dd1045b8p-1032
+0x6.52aebfa673dc8p+668, 0x5.678f4cf978a5p+144
+0x4.c83fb95464168p+932, 0x6.f7c34fb6e219p+740
+0x2.65b1bc1226f0cp+228, 0x8.0c2a0eed9e3fp+344
+0x1.6bea77f703bb1p+800, 0xd.d0f47f24b366p-664
+0x1.5b83c5c8a9434p+248, 0x2.61c8f5c29c8d4p-884
+0xa.dd232b25f4c9p+540, 0x9.5cc98c5aad2p+144
+0xa.32fadfe3a77fp+272, 0x7.03b19901e1668p+948
+0x6.8bfce4b207c2p+356, 0x2.a4bba3dfbd808p-216
+0xf.860d537e09adp+76, 0x1.752be6cab8a8ap-192
+0x7.ed8f7155cb3p-176, 0xc.c5fdd82f7495p-132
+0x1.69ebaf0e3aa56p+528, 0xe.5c469c44375b8p-1024
+0x7.d889515eaed44p-488, 0xd.0e0708fdb1ce8p-688
+0xf.6666c05a3bf4p-696, 0x8.a0529f56d498p+408
+0x5.ddb5d0449117p-1016, 0xf.1ae6cd163636p+80
+0xb.49702498a767p-536, 0x5.f3bdd318bd2b8p+876
+0x7.af243c77859c8p+596, 0x3.9986e4dfb3a54p+60
+0x1.b10eb26c92e2ep+420, 0x2.75002fa180ce4p-372
+0xb.bac2a08b337dp-580, 0x1.6456fe2bd6bc8p+436
+0x6.cdbde83d7d9dp+440, 0x3.227fba2b18984p+716
+0x4.7d1795207ba3p-876, 0xd.fb3ae6a6d974p+716
+0x7.2db71fd9639d8p+208, 0xb.9541a1776cf7p+772
+0x4.9b7ffb1b837ap+240, 0xe.d915034122038p+972
+0x1.f6c429f506438p-312, 0x1.05262713a7116p+456
+0x2.01a33f8183e68p-756, 0x7.9c7104b3433e8p+680
+0x1.3f56db3ef28b9p+548, 0x1.0c9d8cab221aap-324
+0x1.2ca76c29edb24p+160, 0x2.6523f66254954p+248
+0x3.c8a04b8a5a3b2p-208, 0xf.6de4e8795cedp-360
+0x2.be8ccb6413c48p+116, 0x5.a311cf7df50b8p-516
+0x6.af871d1a5ec1p+580, 0x4.e66c9fac1b9ep+668
+0x1.688223cc38b04p-440, 0x7.d6185a14b5a3p+32
+0x5.ababb43ed82e8p+1000, 0x2.bca071f5399c6p-672
+0x9.bf3e2ba5c166p+716, 0x1.1595532b99bbp+560
+0x4.684440250497p+224, 0x3.0085801faa94p+460
+0xf.e01ebf790931p-156, 0x2.61e85d2ef07fp-444
+0x2.96a474a22352cp+124, 0x3.8822c884b3586p+424
+0x1.5c75dbb9d0c9cp-1020, 0x1.41d8cf85de5cep+668
+0x3.e7e636789098cp+316, 0xd.f82f221b2dcfp+924
+0x2.24284c8f0cap+732, 0x9.092020d6c372p-560
+0x1.1d8b68d0870ccp-232, 0x8.e6d5b5b35c75p+936
+0x5.83c80ce403f98p+268, 0x4.c256b72643b4cp-208
+0x1.dc2c0deeee228p+180, 0x4.1fd87b7019dbp+1008
+0x1.7e7b9cdb73b54p-440, 0x1.2ea7fd3295f6ap-180
+0x5.4939d3da9eb44p-852, 0x3.bf36f68aca44p-860
+0x1.5cd6c3b6c3c81p+724, 0xd.3f70654e05b6p-212
+0xf.640e657bb4ed8p-88, 0xe.fe6fd523da25p-968
+0x9.fe7f04343e3bp+596, 0x3.4ca1571aa4b1cp-960
+0x6.e5c1c64a37fb4p-172, 0x1.5b710e90ebc62p+800
+0x2.c31c4509a7eeap+0, 0xf.43cb971b74028p-544
+0x3.03f9ab6030348p-272, 0x5.4c8c501a8331cp-216
+0x7.df2904a3ec328p+712, 0xb.735b2667398p+636
+0x5.144222c5616f8p-912, 0x6.cb959ebd3c68p-944
+0x3.c7839b2f0054ap+600, 0x4.000ee27f5792cp-12
+0x3.f51c0dad41bb4p-892, 0x6.4ff0f934ceb4cp-824
+0x3.fe4a9902cd784p-584, 0x7.f40dc8118ef1p+996
+0xa.836f6e2a9a39p+816, 0x3.e5cbbbc53d77cp+776
+0x9.a93ed53b00c1p+104, 0x4.6ec0afe19454cp-776
+0x3.180d9f767c9dcp+200, 0x3.30f81ee2c291ep-240
+0x3.b79566ad9463ap+444, 0x1.5475796bf429fp-56
+0xd.e5f7d4616e478p+832, 0x6.ea9244c42df1p+548
+0x1.7659d9cee550ep-696, 0x2.7bf53efef7e7p+964
+0x1.94b7d4e1e8f62p-212, 0x1.74f0444fda8ap-72
+0x1.4b77939717efep-100, 0x9.415c2dd8715ap-1040
+0xa.4341bc4d97558p+96, 0x4.64d4c082e9a4p-944
+0x3.52e125440f092p+708, 0x2.c43ee9b98527ap-444
+0x1.faa9ebc9d31c4p+756, 0xb.a53f64af3ec1p+708
+0x3.f1104ca32099cp-268, 0x7.ee941912f49fp+748
+0x1.fe0d6aefbf58fp-692, 0x5.351d218023d58p+848
+0x3.a5542fd6eab44p+136, 0xf.9fa057b2ba2f8p+408
+0xa.9181c0a510d5p+96, 0x1.d3eb00331e936p-24
+0x5.97c04d9e72328p-296, 0x4.b772ed78637d8p-436
+0xf.d3bd42603fa2p+588, 0x1.d384ad40c576p+828
+0x3.0c52b06ecf4bcp+192, 0x1.1cc4f4298b7p-868
+0xd.cbbea37d3ac2p+780, 0xd.990e5904855ep-1048
+0x1.eca70f2cb91d8p+248, 0xc.cbc5b2df2e6cp-160
+0x1.94fc6a4aed928p-264, 0x1.994652e707ep+720
+0x3.b68010ed3408cp+760, 0x1.8da03e183f65ep-728
+0x3.bc37d84c3ce24p-372, 0xa.0b9f475b05dc8p+784
+0x1.7ec437ba9fc63p+932, 0x2.e351ef189dc14p+856
+0x1.ccd0595497833p-336, 0x1.d9c63920843dp-284
+0x1.6c3599371ac32p+524, 0x8.c84511bf8e02p-372
+0x7.9f1b14531d498p+732, 0xa.ffb48ee6129ep-452
+0xc.528ab41df54ep-740, 0xf.983fb8fb485p-404
+0x6.308fa477c79d4p-700, 0xc.6a4cd22016b5p-896
+0xd.c9244530c055p+656, 0x1.e1ef46278f7c9p+676
+0x7.6f46b2e70815p+208, 0x9.3cada4d9444p+428
+0x9.52be2d5b16728p+604, 0x1.fe615286f1764p-644
+0x5.f2a2ee89f52f8p+808, 0x5.63aa773924214p+580
+0x1.01f790a802abbp-88, 0x3.6e65b723d474ap+532
+0x3.81faffb4bf5dcp-916, 0x5.f5f30ccbac144p-440
+0x6.1552e7a1f9bd4p-372, 0x1.7f7e9039d34a9p-220
+0x3.36e9cfaf20f6p-852, 0x4.444b32f2b839cp+452
+0x5.e12b6dc6a3378p+756, 0xf.5439cdede5adp+372
+0x3.112067b2155c6p+624, 0x6.33f17958def1p-520
+0x5.13e66ecaea5b8p-1020, 0xe.5b7667b06dbep-588
+0x8.3347b7d74841p-168, 0x2.723a196678accp+576
+0x1.0989ed37394dp+564, 0x1.eac7dc66e46fap+40
+0x2.c730713795d12p-124, 0x2.8efbe124d2e54p-692
+0x5.f64aa96d4180cp-772, 0x5.41752ba4c094p-684
+0x2.6905451103c82p-1072, 0x1.720d8938f0226p-216
+0x7.cd74eadbb199p+768, 0x6.86c4137370e58p+448
+0x3.ccd6d3384920ep-108, 0xc.d8fae26144498p-924
+0x1.f75decd862f0cp+416, 0x1.8bae854bf219dp+308
+0x4.88ba1dd2475f8p-580, 0x1.b2f267e23e798p+100
+0xd.0c653ec89f4ep+1004, 0x2.e89d06f3eb0c8p-160
+0x1.3efb38649d778p+740, 0x1.8fc9023dc08e8p+616
+0x4.bc94c03529388p+524, 0x1.f76542b7dfa9p-800
+0x1.9bc5271e94085p-664, 0x1.8a4c393336fb8p-1064
+0x1.9a5df8c24c75p-156, 0x3.38a5d2c7ca67cp-564
+0xf.5c16f86d88be8p-812, 0x1.b05fbd39bc8aap+20
+0x5.8627177a5b9dp-768, 0x7.42ecefaa88aep-628
+0xa.b666d95986bbp-88, 0x9.53e1c469cbbb8p-496
+0x3.cd7abb848d17ep+400, 0x1.10a3e50795c1ap+660
+0x4.824cb83202b48p+460, 0xd.07f24664e626p+324
+0x1.a9ab9e4c4360cp+156, 0xf.0169c0b6b75a8p-880
+0xd.b02ada7748dep+468, 0xd.d7457266c583p+768
+0xd.acb8e4229b7ep+212, 0x7.0b44fc819f2p+76
+0x5.df4a3ceb0307p-512, 0x8.58e292164d0ep+112
+0x9.cf19ca151418p-576, 0x1.2e740c7b67c48p-556
+0x5.260400e987c98p-356, 0x3.d764164fb32e4p+92
+0xc.d55edaf18a38p-104, 0x4.d3df059f55084p+300
+0xf.ae3fb2b7f53b8p+100, 0x3.4c868512d7034p-816
+0x4.8f7529c420718p+192, 0x5.5319b0f6148d8p+432
+0xb.989c29b92462p+968, 0x5.78b29e81efc7cp+616
+0x1.d1088907e019ap+680, 0xe.84f1171c8a178p-612
+0xb.d296a54d97348p+772, 0x2.6259c354ffa2ep-540
+0x5.f7a2926a978d4p-396, 0x2.37045d86626fcp-68
+0x7.5ccbc7a4eb72p+792, 0xa.0e2a45d2ccdp+172
+0x2.e9eadc9d6b0c4p-4, 0x6.460f52dc88758p+328
+0x4.3faeb17b8fdep-1056, 0x4.e1b06d9d9a468p+640
+0x7.7bc68f7b04c8p-768, 0x5.f4ae1a1fe99bcp-900
+0x4.b11f24875b9d8p+720, 0x2.6b66facd94fd6p-924
+0x2.f796d55e9afb4p-72, 0x1.bcfe2cac6f076p+900
+0x3.97e814f0f4f68p-916, 0x2.c340bb0962148p-488
+0x1.97eb91a734dcbp+20, 0x2.dbefc93c2b0fcp+460
+0x1.4d7a256a40808p+876, 0x2.0755e04213408p+588
+0x1.daa618b8f4f6p-216, 0x1.e8d8b31bd7bf4p+56
+0x2.db5760ff1209p-928, 0xe.dc529defdb78p-424
+0x1.f6f2e93bd6fb5p-512, 0x5.45616d14c463cp+964
+0x1.1a68b30d51387p+220, 0xd.7d87133a14aep-1060
+0x1.41413b2db4581p+448, 0xf.b9e6ba7c2b098p-124
+0x1.4d016275e9f0cp-596, 0x5.19467c7975acp+888
+0x1.7fcf15c526cacp+636, 0x4.5cc00c1cbba5cp-788
+0xc.a2e589bdc3b9p+760, 0x6.4b5074238f16cp-316
+0xa.4d977da5afa3p+332, 0x1.2891b953d4d7fp+716
+0x9.5cc2575ad12p-516, 0xe.f973852160eep-164
+0x2.5d8ae9f980606p-336, 0x1.c9b4b216586c2p-376
+0xe.7fe8dc6bf949p+28, 0x6.34aefc7bb043p-688
+0x2.3e9fdb8e9d31cp+36, 0x1.d83499f79f15ep-924
+0x3.bfd55fc517aecp-556, 0x7.2d9ddf391ee7p-652
+0x5.fc9e04cfe70bp-544, 0x3.22aac28eb53ep-460
+0x3.874973bb01c7cp+484, 0x6.7f8d5067e1598p-484
+0xa.ea1d735c271ap-852, 0x3.84e430321ecdap+692
+0x2.311a1c57ec548p+800, 0x3.2a65843bc660ap-1044
+0x1.44ad8a1f6526fp+196, 0x1.a6df006ad0b7p+40
+0x2.cd3a0bd5431d4p+776, 0x8.5b843f1f772cp-1032
+0xc.a78f2c0e30afp+792, 0x1.8ee3fcbd2e0e8p-144
+0x3.55ad5fa25f9ccp+104, 0x3.9c5c6cb83586cp+280
+0x1.0fa3dbededd35p+24, 0x3.f326bfb61edbcp+864
+0x1.4741becf13d3ep-376, 0xd.2486b2d6b4c9p+632
+0x5.0cd299fceb49p+32, 0xc.ebbff073e9d78p-1016
+0x7.5723b0b887ffp-928, 0x9.bbc8a29c1022p-528
+0x3.24d46eee8b6fp+412, 0x7.b5c08e063167p+576
+0x8.693c3f943ef1p-696, 0x7.55a3a3ce02034p+772
+0x7.73e8cfb6f9dbp+596, 0x1.7cb9a17ae108cp+252
+0x7.4d34acc975e18p-352, 0x2.1d63d81e0e872p-800
+0x6.e8d8c6cf19a14p-388, 0x1.021545b0baf25p+932
+0x3.cf8ae9177c41ep-448, 0x4.e2468019e3938p-616
+0xa.1a5738fae288p+716, 0x1.fb74263564eb2p-496
+0x4.ce5c5c93471p+28, 0x1.98931db9f9cbcp-664
+0x4.0ec2b4b0fcd3p+376, 0x2.88d19d770da88p-204
+0x1.e7d233a2fbf6ap-1032, 0x2.67de107d59288p+16
+0x1.5821977b2f114p-448, 0x1.6d68f808ea7a6p-872
+0x1.c68471bd08d24p-236, 0x4.2dc56844cffc8p+928
+0x6.809da516c5d4p-936, 0x1.972fca6b83988p-748
+0x4.f33d1765fd3e8p+672, 0x3.760b53476cc5cp-388
+0x1.4cf2b0bcedccp+624, 0x7.3693d35a1be64p+704
+0xd.d7dc2e4854f9p+872, 0x3.427f3e2c69b0ep-840
+0x8.ebfd8b5e6f4ep-544, 0x1.29599d85085fp+40
+0x1.d0f604ef0f1fap-344, 0xb.3da822900994p-1064
+0x1.c98342264077p-912, 0x1.7d714c0eac215p+964
+0x2.e5776a55df064p-228, 0x2.e050be518f0c6p+760
+0xc.41358da1bfbcp-960, 0x6.72f24ce3850dp-796
+0x1.6fc7cf1179f07p-760, 0x1.82d3b0a900dcp+932
+0x2.c735540514bcp+116, 0x2.6ab56030b2f04p+160
+0xf.1407191bd79d8p-328, 0x1.e013fc0c9ccbep-820
+0x6.ff3859a993a58p+232, 0x1.df977166d1958p-760
+0xd.67cbbfa32a7fp-500, 0xb.782de178f70cp+840
+0x7.12520ed2540c4p-548, 0x5.22089db66a41p+688
+0x7.ce31d43a28cp-264, 0x2.761ef0c90bc92p-968
+0x4.bb0e33acac428p-704, 0x4.426646233ea54p+472
+0x1.e71a7b9483262p-764, 0x2.5d4fcf74d0f2ep-208
+0x9.0a6547cd6aa2p-1012, 0x3.e360d680a159ep+44
+0x3.d88eac7397f44p+840, 0x1.373179e0ec7d4p+60
+0x5.2142a3c93df8p-252, 0x1.039e03b094544p+796
+0x1.1e4ab59556d8cp-360, 0xf.40a55512548p+620
+0x7.e9d464c17e26p-740, 0x2.b99b3f7e4c0aep+364
+0xa.ab6676b77ca58p+812, 0x5.754d469551e4p+456
+0xd.9e0e5fbf24f4p-732, 0x1.f340fd8ac5e33p+768
+0x4.3264152160d94p-120, 0x1.37f61eefc612ap+932
+0x9.419975e41042p-824, 0x1.5bf1d2c95a902p-1048
+0x7.6d1983abd113p+848, 0x7.8135c2c4c0c1p-232
+0xa.c1005d5f4048p-572, 0x2.1fe8b343e4ebcp-204
+0x1.54008aa19a8f7p+120, 0x1.a9e6190cfe6e6p-1072
+0x5.66e2e4073fcc8p+228, 0x2.145a7c2f0ef3ep+812
+0x1.db36596ba5ffap+388, 0x3.11cd9eea3e36cp-496
+0x1.04168c45ecc05p+828, 0x4.6e3f71059997cp+832
+0xc.2384de1acf8dp+348, 0x8.01901ee64d2cp+788
+0x7.1c662fa02dd98p+608, 0x3.c1b6fb8a9184cp-692
+0x1.11287146a09b8p+644, 0x4.64bfc1e0e0c9p+396
+0x1.57f03c8810d69p+712, 0xc.a5984068f7b8p+48
+0x4.2dbe0ddf26ccp-340, 0x3.81a50b1409c54p+936
+0x4.d9c2d41a2dc4cp-1056, 0xd.1b5afa68a5e4p-532
+0x5.d0ab0b1cf5e8p+148, 0x9.a949b81507e8p+20
+0x1.79ae6b1efe6dcp+232, 0x6.41a9f79985fdp-96
+0x5.05eec59eb754p-624, 0x3.4cc2f9aa0af64p-464
+0x1.f02d73297d6c6p-232, 0x6.38ccafed3759cp+420
+0x7.76422f66dca28p+400, 0x3.0f188be2d4cbcp+68
+0xf.0090a7a284728p-924, 0x4.b7eb047c002b8p+328
+0x1.0b82fa80a9958p+564, 0xf.c73ba6cadab28p+520
+0x1.14a9b777040ecp-316, 0x6.5427c18eecc78p+4
+0x8.06c88342835fp+652, 0x1.a9ecb1bc7ec68p+348
+0x5.2f6c56d6d7bf8p-868, 0x7.18b3507eac248p+120
+0xe.1a4db1cdc2c38p-56, 0xa.3133554848dcp+828
+0x1.a1a22b18422acp+1004, 0x1.ce9da6a1e10dep+28
+0x5.36c7b2a139168p+188, 0x2.17bfa02d08afcp+724
+0xc.12d14dc2762cp+880, 0x1.310d308201d6dp+592
+0x2.bf79a9dd664f2p+524, 0x1.86f734d98e336p-656
+0x1.3c9f682a4ba58p+88, 0x1.8f85eb09cfc9cp-828
+0x4.a399c75def23p-960, 0x2.b4d0dce1da9bcp+664
+0x2.92d2da0fa44dcp+460, 0x2.afe026630c358p+292
+0x1.329a26a06bfc6p-836, 0x1.3dbb1169888b1p-704
+0x5.58d13cbf02864p+336, 0x4.edc53cfc2c038p-1040
+0x5.2c5976335c2b4p+304, 0x5.1924523b61d04p-76
+0x6.a0cee90336cb8p+492, 0x3.3914e22cc9d98p-264
+0x5.b4a291a0804d8p+924, 0x9.36e41234299bp-640
+0x3.20de4ac4786e8p+1004, 0x2.ccde30990bba4p-868
+0x1.ab7cec250013ap-428, 0x1.b9a9b5919516dp-344
+0x1.875f445637d72p-108, 0x4.63b5957f961a8p-728
+0xb.5d0330145432p-780, 0x5.408ed43c8e5cp+664
+0x5.2438018ea3a58p-472, 0x9.4a84f86da354p+652
+0x7.72f18ec491888p-492, 0x1.3331f25383814p+156
+0x7.7dcef653e4874p-928, 0x1.f4151e4719c26p-92
+0x1.212156368d704p-540, 0x1.5f542034797e9p+840
+0x1.3f8ca43e5b666p-244, 0x8.668b7b8012e3p+876
+0x1.d9e9a8524d717p+428, 0x9.0bc4e638d9c1p-36
+0x9.c07f91c0985bp-648, 0x3.291e01b81f474p+860
+0x2.af8605cee03d8p+88, 0x1.eaeb5c03368dcp+968
+0x8.01283a1c6c51p+620, 0x9.e3322da8f1b6p-832
+0x2.40528c7551aa2p-792, 0x1.f8c2e2f89a138p+552
+0x6.1bb4ad46dac9cp-516, 0x3.2a19917dba274p-504
+0xd.0098d3af3d23p+976, 0x1.906c30ecb5d84p+220
+0x2.36d68cdfbb2ep-176, 0xf.4f3019984a7ep+464
+0x1.fc5c7ecf4bd47p-712, 0x1.9618668d15dfdp-460
+0xa.f06d70b95351p+64, 0xe.8649783f745p-356
+0x7.59874cb1d6a98p-292, 0xe.a5ca6a1006f4p+996
+0x3.4cf49b29fe33cp+848, 0x2.d40be94e2c0d4p-276
+0x8.7665c42d24abp+196, 0x2.4dca94d4649a8p+684
+0x3.36c7ef01bb74cp-272, 0x1.137bdf47da448p+592
+0x1.fb114d861e46p+84, 0x1.eff2dedbe3a0ep+280
+0x8.ecd3b57973p-172, 0x8.0c87b303c7c48p-948
+0x2.1b3a6347dfc52p-932, 0x2.950ad07097a9cp-592
+0x1.a2c2c251b8791p-88, 0x9.9048e2ee0c48p+44
+0x5.0195e1227288p+996, 0x1.53430625a99dep-72
+0x1.bb256f33a2928p-1056, 0x1.111181fd387d6p+44
+0x3.4a8bd1614f92p+876, 0x1.711da46412e06p-952
+0x1.bfce6df0b8c3ap-200, 0x1.9ae0427ca101ap+672
+0x7.e108b54ac316cp-996, 0x7.762d2664d9308p+680
+0x1.af5ba8dc2a986p-632, 0x1.f755a142bd03cp-536
+0xe.5e1718c8f278p-996, 0x8.ed350005edc3p+444
+0x2.bf96653a1ae4p-540, 0x1.1b760ff00cf35p-728
+0xb.d99fbe5bc9a2p-904, 0xb.bc792cccc763p+388
+0x3.8791717b4b732p-552, 0x3.60bb7d8a9507cp+252
+0x4.e1181e8a3e6fp-896, 0xf.3149c8905db8p-24
+0x5.3a685435314c4p-776, 0x3.cba1e6f66d7f4p-440
+0xf.fc3f3b0f3613p+1000, 0x5.81d6d241045ep-588
+0xb.5ecb27592451p+624, 0x8.12f22be7539bp-804
+0x3.c9bada3c5d85cp-876, 0x1.4fb8562419378p-552
+0x4.8ffde17365bfp+948, 0x1.4c946f1f25d4p-100
+0x4.764e1ddcf9738p-120, 0x4.05cf0f0ae5794p-316
+0xd.abbf56bce609p+996, 0xd.cddbb5ebc80dp+412
+0x1.037c3be04f858p-900, 0x4.db9c734a6703p+228
+0xd.85003f403e2ep-652, 0x1.4b2c61e9f3b74p-1036
+0x6.f1103d861794p-272, 0xb.3c0aa3106ef7p+848
+0x1.a2ae87100cf83p+552, 0x6.a1a5eb07b0f88p-180
+0x2.f2683a37d210ap-284, 0x7.0dfe2b55d662p+844
+0x3.d60307bdf6928p-892, 0x2.fdf9526c9c592p-432
+0xb.0258f83ea6f08p-744, 0x1.dc0fc9c12c11ep-868
+0xb.3c5d152152eep-88, 0x1.1d742b6849eafp-764
+0x7.1fe2d9f87546cp-884, 0x3.e31aee915002ep-608
+0x7.fd90ef744b3fp-984, 0x1.a254b20cc44ecp-620
+0x8.b7cc4830f22a8p-916, 0xf.f2d3141573eap+368
+0x6.02a3c5d1a255cp-1060, 0x8.d2e0d38b1504p-804
+0xd.eab105cefe1bp-440, 0x1.565224b3708f3p+524
+0x6.547f9d75ee9cp-1056, 0x3.76aee96ac78fcp+908
+0x2.ee60ac28f8074p+636, 0x2.94491dcea838cp-192
+0x3.3adfc727517c8p+488, 0x8.34e253705e4ap-1064
+0x1.cdba2cd5f54bap+300, 0x2.822fc10c598c4p-688
+0x4.fb4a4547d10d8p+336, 0xc.ea8a3e77261ap+184
+0x1.635bebc53307cp-532, 0x1.aeae6ade0cd9ep+616
+0x3.a4690af97e544p-1032, 0x2.769a69438c574p-184
+0x8.ab9bb10f6ea9p+528, 0x1.25d8fded0dc8p+924
+0x4.370d3e4b080b4p+436, 0xd.8cb2725e33ab8p+708
+0x1.4895e320f2ba6p-796, 0x9.fc41d5c8264p+908
+0x1.93519b573032ep-688, 0x7.10d1859ace57p+872
+0x2.4a7f9c4b0c49p-316, 0x1.a8d4608ae427ap-256
+0xb.3648e80a18edp+864, 0x3.0a5476e2540b8p+40
+0x1.4a7ddc8bc4a5ap-512, 0x1.78ac8ee74060ap-836
+0x6.da4cf3bb04f6p-12, 0x3.56b3ec00c8be4p+128
+0x5.15fac5363c22p-324, 0x2.7c5282d1fc73ap-852
+0xb.fb4b0ff4207dp-436, 0x5.b4a041f55e6ecp-356
+0x4.160de27a7f308p+808, 0x7.c6916a8d28f7p+912
+0x5.4b808a97688ap+972, 0x3.794b29b89aeacp+156
+0x2.7b1f447480b1cp+244, 0xf.32799349a89ep-1000
+0x8.9313007aac898p+208, 0x7.06de7da0ddb48p-200
+0x1.1184c8ad9a126p-628, 0x5.d2675abc93d3p+564
+0x5.fbf4481d851bcp+920, 0xa.d98a5055796cp+448
+0xb.1b13e17851f7p+920, 0x1.5f601cadbee55p+216
+0x1.36c695c4cebdbp-672, 0x3.e3179a9c0c8b8p+440
+0x4.24f5c2e84255p-132, 0x1.992dce8c1e0dep-608
+0x7.05211b2d7ba24p+816, 0x5.2dbcb400c2388p+732
+0xc.ebb82790e2248p-944, 0x6.a6cac5abe71a8p-912
+0x7.635a189c3559p+1000, 0x3.1c79ce8a6193cp-596
+0x1.bc16a5a664943p-212, 0x3.20fd587384e74p+268
+0x1.d8f5f5909a6c1p+64, 0x1.95b5cd4f321fdp-1048
+0xa.b514a9fc49ddp+904, 0xe.ac263d7232738p-732
+0x3.361c4740c546ep-592, 0x2.af93343887774p-288
+0x3.a1d706acac868p+548, 0xe.ef9cd2dfde13p-1036
+0x1.a3b3fd7de4ff7p+836, 0x2.9bd52c1afcb82p-328
+0xd.0e90419468fe8p-296, 0x2.debd029d76ba4p+712
+0x1.e7213b32b5402p+172, 0xc.75424ccca583p+736
+0xe.7be0fb216e87p-460, 0x1.41db2e8111782p+428
+0x3.1aabdc370a068p-740, 0x1.3d8d947358a84p+892
+0x1.d635a72fb8fa4p-328, 0x2.ee43757ccee5ap-76
+0x1.97b79a8db9647p+128, 0xe.d6e29c7d3d4fp-264
+0x1.7d2e32005ea32p+792, 0x1.f6c07f3405953p-964
+0xb.c1090d1777fcp+116, 0x4.0cbc9f20f5868p+720
+0x2.f16763f5629b4p+252, 0x2.a80e582ad9988p-864
+0xc.decdbb8bab228p-256, 0xb.722a51742a158p+444
+0x1.4a3ad54b20ec7p+448, 0x2.38b64c86b64fcp+344
+0x3.4673778d461ap+444, 0x2.a91e0f1d2906cp-852
+0xd.b85beacdf9fb8p-1076, 0x1.e95f7bc0cbe98p+496
+0x3.868f7c7983b64p+248, 0x2.484503e75957cp-788
+0x3.1996b58c96adp+32, 0x7.2b7913eb78608p+304
+0x8.d92b03868e09p-332, 0x2.0cc4e23c8a95cp-740
+0x5.16192b7bc5c7p-152, 0x4.3b6301a285b44p+88
+0xf.01312df862fbp-156, 0x1.d8d9015062fbp-484
+0x6.bbf185b1a72fcp-176, 0x1.1448c90b9b50ap+212
+0x2.fb1b827ddbefp-1004, 0x6.2b91442df1d88p-252
+0x3.eea265be0ed6cp-420, 0x1.6979a53a58ed4p+132
+0x2.76f29ff09ef3cp-324, 0x2.9bb80577b9a16p-496
+0x1.8315bf29b818ep-60, 0x1.962a17b47f4f8p+984
+0x2.b5951a0514674p-1040, 0x4.54fbcbcf940bp-148
+0x7.373eb0cadbd1p+408, 0xb.9637578014a48p+560
+0x3.2855b79dece44p+700, 0x3.dd621596b99f8p+248
+0x4.6715c08b31328p-408, 0xe.79ffaa58e533p-100
+0x3.51b70220ed1c8p+968, 0x1.e64c4e91741bep-1016
+0xf.562b84bebcbe8p-8, 0x3.6bcda9a68b198p-656
+0x3.e0365420f27dp-216, 0x5.0a67f41cfb218p+392
+0x5.6fab6994774fp-288, 0x1.008fdd33f16e4p-824
+0x1.dada3414222bfp-252, 0x1.118f230a197bep+596
+0xf.235346f7623ep+132, 0x1.4731a69ab5b1cp-968
+0x3.b6aa8e01e416p-828, 0xb.41acde26ef6b8p-320
+0x1.2002025daf3ecp-1060, 0x2.e6a265193f8acp+528
+0xf.0e1568e6b60bp+124, 0x1.770d6c170e6fcp+920
+0x3.9cfe68e8dbd38p+400, 0x1.f0ea46487d9eap-76
+0x7.356ed29fbc3b8p-92, 0x7.66273cf04d1cp+16
+0x1.83b4513ed8c6p-692, 0x1.6e5c994cbd1fcp-4
+0x1.c093172db7058p-832, 0x9.0020ecd425p-724
+0xc.4b9d43cdab5p+144, 0x1.9573c014b1d7p-600
+0xa.6c962c159cadp+700, 0x2.516f8ea4dc66cp+832
+0xe.e9ef5bc90ef8p-472, 0xa.ceb95c116a96p-956
+0x4.7a82cfa181bf4p+376, 0xd.3ba2895aaf3f8p+912
+0x1.3e6919507aad8p-748, 0x7.ac24d06cae4fp-604
+0x1.a5685b67d975bp-760, 0x8.bec479de0814p-676
+0x4.c17fa429c727p+304, 0x7.a076dc1c58ea8p-436
+0xd.3a60dbe676ap-436, 0xb.d7fd3ecfd0bp+700
+0x1.6db05819a731ap-316, 0x5.cbaa3f9d708c8p-708
+0x7.a4e9fc600f39p+784, 0x2.78bd5a2fdeedp-256
+0x1.a51f975bebd49p+648, 0x4.6f1b9792ef23p-1016
+0xb.426a826bbb2ep-956, 0x2.2988e40c021bap+336
+0x7.0ad681674d404p+996, 0x3.5110f12201184p+704
+0x3.508cc1e3fe9cep+428, 0xb.e4f3b8257906p+916
+0x2.3d25bae6cc2b6p-712, 0x3.4476b6d116f18p+8
+0x7.668519e5f4c9p+488, 0x1.23b90f6c8af84p+716
+0xc.ba04649c24f5p-428, 0xf.6aedd6061b5p+300
+0x1.7acb043cd5646p+608, 0x3.0529459ad31ecp-520
+0x1.ab2a61b2e713cp-160, 0xd.d492f30ffbf7p-1072
+0x4.55c81a7d97b6p+776, 0x5.902573c115b78p-972
+0x3.3a1a658e23dbep+940, 0x2.920d0560c389p+476
+0x1.859b54f3394cp+192, 0x5.6cc1bb97f343p-908
+0xe.35e05bc94c85p+436, 0x1.67c0b3f3c1b8fp-676
+0xc.4689b97a58bcp+76, 0x1.11d2bf21c7811p-120
+0x4.a90ad7df9b808p-668, 0x1.145d33272f345p+480
+0x1.561915b868afcp-140, 0x6.7fcdf4d0b775p+312
+0x1.4d2e2df9ac4dap-652, 0x5.0a41f0e20f4bcp-148
+0x1.b5f7cddb382b6p-188, 0xd.963007bf1aebp+396
+0xc.327b046ba01ep+672, 0x1.664e6e62b266ap+548
+0x7.d1e0f4d973504p+552, 0x1.0960ca9ead237p+932
+0x2.b833874ecc5bcp+784, 0x7.7728c825e3ea8p-744
+0xc.ed74b52461008p+528, 0x2.ba337c4d266c8p-460
+0x1.8b1c17b4f0aa6p-800, 0x5.7181457aefe58p-1032
+0xf.b093234a9ae9p+444, 0x6.d51e72d5c9cd8p+96
+0xb.41312f6979af8p-640, 0x3.d4a1e6e4572a8p-1044
+0xf.d1d26136ff42p+608, 0x5.4e28377ed1438p+960
+0x1.baed27235cbf9p+396, 0x5.7f36a96247738p+716
+0x3.1908f44f9e5acp+36, 0xb.e287b22deb6c8p-200
+0x6.c85649ece8328p-888, 0x5.10954872d83f4p+344
+0xb.7289d369ebe9p+480, 0xb.364fe986b507p-1072
+0x1.b60b18e72b616p-356, 0x6.96322cdcb805cp+188
+0x1.18044a2c3524ap-732, 0x7.1cfeb6c32d9e4p+196
+0x1.dd49ee2511f12p-548, 0x6.388cb280c1acp+540
+0xf.4637e82f032dp-188, 0x1.ea525d4f26b2ep-652
+0xc.8ec2fcbc89b7p+428, 0x6.afb3dfab45148p-312
+0x5.96c4b2f3e046p+868, 0x1.4fa64194d6737p-484
+0x3.cc2935c1d7a98p+132, 0xc.b9132c3b7e03p-364
+0x4.708b4d5c3e08p+400, 0x1.7dead4481cddcp+620
+0xf.4ead78490959p-428, 0x5.881eeff3cd02p-888
+0x3.8f93c36ea7528p+588, 0x6.e489f741b446p-656
+0x1.29623281e850ap+840, 0x3.f4d2e10f895fp-960
+0x7.f6dd2ff29fbb8p-688, 0xd.fb27c57cb34p-764
+0x3.28b3c0e41db9cp+444, 0x3.15892f3a16c1p-844
+0xc.c480dfe091668p-276, 0x4.d2571cfec4c58p+100
+0x2.4811362cc7124p-240, 0x2.dff54b843ae46p-756
+0x3.0da93c4715cd4p-92, 0x7.9c15ce00c77e8p-656
+0x7.f0dcddebdcd28p-868, 0xc.599ea43e2bbfp+220
+0x1.95a25ee7268b4p-912, 0xd.5ff365717f9b8p+276
+0x1.d560268d06079p+420, 0x2.4a263345196a8p-444
+0x1.079c47420a4dbp+560, 0x1.889f112d42453p+528
+0x7.cdf64073ea828p-76, 0x1.a0731fb5ffbc7p+32
+0x1.cfbe77eaa2a21p+940, 0x1.b6b012b005f6p+348
+0x5.def2a0248482p+816, 0x8.4f2da16827fdp-964
+0x1.90d5cc6c42498p-836, 0x3.7a22e7d59ea44p+816
+0x7.7570d2255b48cp+880, 0x6.ac05601176dbp-52
+0x8.95762dfa20adp-668, 0x3.aadf1a1ec4d18p+620
+0x2.fe1bc76a8c23ap+804, 0x2.88575bc0e4228p+64
+0x6.a0747031aa078p+872, 0x3.c1d01466fbf04p-952
+0x5.d87619363c04p-552, 0x4.70bfee674c9f4p-56
+0x1.b7ad68c381dd6p+928, 0x6.6e6a652b37158p+676
+0x1.f359ac732fc26p+288, 0x1.3c34074a8b2f8p-576
+0x2.7eec8890eb218p+144, 0x3.0a6e6d2517c8cp+280
+0x1.7c560c66a0a33p+276, 0x5.e14a1a2c23d14p-928
+0x2.29faf3f3ce9fcp-424, 0xa.953da4f876c3p+644
+0x1.e0823670155ecp-976, 0x5.e7be0f4d7e528p+176
+0x4.180d0f133e86p-956, 0xd.a2e35bc12ca8p-1040
+0x5.684c626aac24cp-204, 0x7.c5a5208f02d88p-732
+0x6.2fe3b9265349p+420, 0x3.5173ac781fe2ep-456
+0x2.aaba7a32c624cp-1060, 0xf.0a4837afa4dep-1076
+0x1.3c709863adb35p-364, 0x3.afd3e4f32ce52p-488
+0x5.7d5d9b5bddbb8p-1024, 0x3.a8a95f0b8b908p+280
+0x2.ba9daa70bd824p+708, 0x1.b74b9a90b6648p-656
+0x3.7a020765d7c44p-948, 0x2.d653a91e7547cp-760
+0x3.cce03bc79c0bcp+568, 0x3.874dd663697c8p-796
+0x2.93a71bf03bb68p+508, 0x9.3d2d628dc54e8p-88
+0x7.3e572337c45d4p+756, 0x3.3562fedc22274p-836
+0x1.ad49a2d117ba2p-888, 0x4.d076d3f4d9f34p+908
+0x1.a502a91351ff4p+348, 0x1.ee7be9cf93b3fp-124
+0x3.140093828b04cp-456, 0x9.d96849890b3ap+152
+0x2.2b809e1cdae6cp+976, 0x1.96430f46ddf6fp-896
+0x6.0b6b1e6f695b4p+880, 0x3.2710f27541992p+520
+0x6.3e9355fdb6dp-1020, 0xb.6795e26664be8p-844
+0x3.bd080a5791b2p+164, 0x1.d50ef4fe9ebb5p-468
+0xd.603b36a4c0f1p+652, 0x4.5bd4964d0f5c8p+940
+0x3.efce09ef1b4cp+1004, 0x5.58274e481b0cp+776
+0x9.bdb3926c2739p+592, 0xd.693f7ebb888ep+60
+0x1.45fda30c0c696p+964, 0x7.7ef981c0fac2p-312
+0x5.3903dc26ea74cp-936, 0x1.6ce6a22a9cc4p-884
+0x6.efe370ccbcc4p+772, 0x3.2a68e91d4d908p-840
+0x2.e8b91189c5a9cp-352, 0xa.affd373c131cp+72
+0x1.92e29687b8ba7p+852, 0xa.70b2724980788p+232
+0xa.c7e8553edfadp+916, 0xa.5da5437b9d42p-272
+0x9.807fc42aac07p-600, 0x8.866c80721372p-724
+0x3.98e91636f5084p-436, 0x3.f5f1a1922718ap-220
+0x2.7442ad2df0302p-832, 0x5.1bc80305b26acp-248
+0x1.8e66eb2b69bbcp+44, 0x2.c1fdc734c50e8p-940
+0x5.0de13a7bcaac8p+808, 0x5.493bbe67104ccp-344
+0x9.cc1fcf2dde7f8p+840, 0x2.aa6a8273978cp-208
+0x1.c2895ee333becp+460, 0x1.ceaf6635b0b8p+668
+0x3.fb6fb365e2ce8p+868, 0x1.a03d232d45996p+344
+0xf.0ae3f7ac9bedp-172, 0x9.98a156749b26p+384
+0x3.204fdf620703p+412, 0x1.629b90983dc36p-1012
+0x2.e30666494ac98p-216, 0xa.89da8ae9e5528p+212
+0x7.a17a32efd3c34p+660, 0x8.0cc4f4756028p-428
+0x1.31ee8aa18dae4p+728, 0xa.99a88028a213p+484
+0x1.a45b87b0bb4cbp-844, 0x3.fa28793e4185ap-260
+0x1.7b04390e5b62p+684, 0x1.66153c838d268p-752
+0x9.f73b5d2f6777p-1064, 0x7.dedccbf89985cp-356
+0x2.926816c87d8c4p+836, 0xc.bba0f8c0d84bp+168
+0x4.1334094679d34p-212, 0x5.19ad2f924736cp+280
+0x6.aebd3868bdfd8p+464, 0x3.ea24e1cd3f29p+264
+0x1.1f0fb4a6d9b96p-544, 0x7.1f1404514303p-24
+0x4.6ee2397edec14p+48, 0x1.97401a620ba56p+732
diff --git a/benchtests/libmvec/atan2pif-inputs b/benchtests/libmvec/atan2pif-inputs
new file mode 100644
index 0000000..0e66925
--- /dev/null
+++ b/benchtests/libmvec/atan2pif-inputs
@@ -0,0 +1,2005 @@
+## args: float:float
+## ret: float
+## includes: math.h
+# Random x,y inputs in the range [-10,10]
+## name: workload-random
+0x1.663bap+2, 0x1.b2403p+2
+0x1.44dcb4p+2, -0x1.9a01p+2
+0x1.644ffp+1, 0x1.eb4138p+2
+-0x1.6cca2p+2, 0x1.04627p+2
+-0x1.056a12p+3, -0x1.422b14p+1
+-0x1.9fa38p+1, -0x1.7e70ap-1
+0x1.0eeff8p+1, 0x1.19eaa4p+2
+0x1.1b50d8p+2, 0x1.d7a53p+0
+0x1.3df8c8p+3, 0x1.d0f7p-3
+0x1.efb8ap+2, -0x1.fe22ap+0
+-0x1.6bf4ep+1, 0x1.5e59ecp+2
+-0x1.6bf516p+2, 0x1.8f21c8p+2
+0x1.3a79a8p+3, 0x1.0ebf88p+1
+0x1.5d706p+1, -0x1.f1416ep+2
+-0x1.240508p+3, 0x1.88fc9p+2
+-0x1.8b2f52p+2, -0x1.0bce4p+3
+-0x1.b758a8p+2, 0x1.716664p+2
+0x1.c5c13p+0, -0x1.df3d02p+2
+-0x1.3168eep+2, -0x1.79f4fp+2
+0x1.7cc8c8p+1, 0x1.b8a148p+2
+-0x1.c5d8d8p+1, 0x1.5608fp+1
+0x1.2db0fp+3, 0x1.9c7b6p+2
+-0x1.a5ddacp+2, 0x1.26027p+2
+-0x1.9a6358p+2, -0x1.795c62p+2
+-0x1.744b04p+2, 0x1.c5dcp-1
+0x1.07c128p+2, -0x1.6baa9cp+2
+-0x1.dde3acp+1, 0x1.63eeep+2
+-0x1.7a502ep+2, 0x1.ebdap-3
+-0x1.3ca07p+1, -0x1.0514e8p+3
+0x1.080a3p+1, 0x1.000ecp+3
+-0x1.09a176p+3, 0x1.34c01p+1
+-0x1.72241cp+2, -0x1.7e1864p+1
+-0x1.15b43p+3, -0x1.d3b3acp+2
+-0x1.f35868p+2, 0x1.59dep-3
+0x1.174868p+2, 0x1.36e57p+3
+0x1.17526p+3, 0x1.2b1a7cp+3
+0x1.1d38dp+2, -0x1.1565bep+3
+-0x1.89da8p+2, 0x1.e13a2p+2
+0x1.fa4f8p+2, 0x1.b827cp-2
+0x1.082068p+3, 0x1.e2fep-2
+-0x1.07c538p+1, -0x1.fa21ep+1
+-0x1.44f4p-6, 0x1.904fap+2
+0x1.7f5fep+1, 0x1.67d9p-1
+-0x1.e7d36p+0, -0x1.0d28a2p+3
+0x1.742af8p+2, 0x1.be47p-2
+0x1.00e3b8p+2, 0x1.ac6cbp+2
+-0x1.66f8ep+1, -0x1.8827p-1
+-0x1.643a46p+2, -0x1.ee998p-2
+0x1.06d934p+3, -0x1.cd62a6p+2
+0x1.2a1008p+3, -0x1.f5864p-1
+-0x1.bc4edp+0, -0x1.22275p+3
+-0x1.c3696p+0, 0x1.7d86fp+2
+-0x1.a92be4p+2, 0x1.3657dcp+3
+-0x1.b30c44p+2, -0x1.0f629p+1
+-0x1.a3ef34p+2, -0x1.bea9ep+1
+0x1.384094p+3, -0x1.de57p-3
+-0x1.f351ecp+2, 0x1.4a03bp+1
+-0x1.becfbcp+1, -0x1.e112acp+1
+0x1.ecf5ap+0, 0x1.e45b3p+1
+0x1.1dd84p+2, 0x1.ad1898p+2
+-0x1.4fbbep+0, 0x1.3b2498p+3
+-0x1.ffac1cp+1, -0x1.21a712p+3
+0x1.4f5b8p-1, 0x1.5d045cp+2
+0x1.0842bp+2, -0x1.28c0aep+3
+-0x1.e00ac4p+1, 0x1.d411cp-1
+0x1.3ebc78p+3, -0x1.2a0cd2p+2
+0x1.ab2568p+2, 0x1.f74d8p-3
+0x1.08c83p+2, -0x1.245f9cp+3
+0x1.6401p-3, 0x1.13db2p+2
+0x1.18f038p+2, -0x1.9d585p+0
+0x1.e19238p+1, -0x1.8ba8e4p+1
+0x1.ed6008p+2, -0x1.2bac06p+2
+0x1.ae7ap+2, 0x1.4d506p+1
+0x1.063bbp+1, 0x1.12cc28p+2
+-0x1.3dc286p+3, -0x1.09de68p+1
+-0x1.3ed7fcp+2, 0x1.165028p+2
+0x1.dc83bp+1, -0x1.4e50ap-1
+0x1.0dedbp+3, 0x1.2ea93cp+2
+-0x1.69a5ep+1, 0x1.0c71dcp+3
+-0x1.fb68fp+0, -0x1.8a3c28p+2
+0x1.56a0ep+0, 0x1.ee9b8p+1
+-0x1.b50ef2p+2, -0x1.1125f4p+3
+-0x1.371cacp+1, -0x1.bd9dp-3
+-0x1.70f5p+0, -0x1.3f0b4ep+2
+0x1.55379p+0, 0x1.2fa3cp+2
+0x1.260ec4p+3, 0x1.ebaddp+1
+0x1.f7156p+1, 0x1.7fee8p-2
+-0x1.ddf896p+2, 0x1.75e70cp+2
+-0x1.003338p+3, -0x1.689fa4p+2
+0x1.1aa084p+3, 0x1.b9e198p+2
+0x1.e24c3p+1, -0x1.b8348p+0
+-0x1.e129fep+2, -0x1.a4e96p+0
+-0x1.22e506p+3, 0x1.e1b9d8p+2
+-0x1.539f6ep+2, 0x1.bfac4p+0
+0x1.4c868p-2, 0x1.af384p-2
+0x1.ad3fcp-2, 0x1.667acp+2
+-0x1.70da5p+0, -0x1.9bc5ap-1
+0x1.63cae8p+2, 0x1.abfa2p+1
+-0x1.15b62ap+3, -0x1.3d7fcp+0
+0x1.fcdf2p+1, 0x1.9e87bp+2
+0x1.1bb788p+1, 0x1.0430cp-2
+0x1.3cd15p+3, 0x1.e2463p+1
+-0x1.7dbe6cp+2, -0x1.ff0f3cp+1
+-0x1.72b5dcp+2, -0x1.a4bap-4
+-0x1.988e8p+1, 0x1.3d6c3cp+3
+0x1.14bacp+0, 0x1.002348p+3
+0x1.4b2fc4p+2, 0x1.e76bbp+2
+-0x1.6fe52p-1, -0x1.d5132p+0
+-0x1.13f81ep+2, -0x1.783fep+1
+-0x1.026fccp+3, 0x1.ba2bcp-1
+0x1.efd28p+2, 0x1.49d6p+2
+-0x1.53d8ccp+1, -0x1.eef474p+2
+-0x1.ab803p+2, -0x1.24be54p+2
+0x1.c168bp+1, -0x1.e2df78p+2
+-0x1.397828p+2, -0x1.10d254p+2
+-0x1.93cc06p+2, 0x1.76f5ep-1
+0x1.392648p+3, -0x1.224658p+1
+0x1.fb49p-2, -0x1.a43da4p+2
+0x1.2a054p+3, 0x1.9f41e8p+2
+0x1.0fc3cp+0, -0x1.39874p-2
+0x1.8f746p+2, 0x1.e24abp+2
+0x1.e5a4ap+2, -0x1.30f58p-2
+0x1.950ee8p+2, 0x1.323858p+1
+-0x1.149dc4p+2, 0x1.066578p+2
+-0x1.1870c2p+3, -0x1.1eb95p+3
+0x1.c2689p+2, -0x1.188aa2p+3
+-0x1.b31c6p+1, 0x1.2ddbf8p+3
+0x1.7c1438p+2, 0x1.910c9p+1
+0x1.01041p+2, -0x1.00e5d8p+3
+-0x1.19b8fp+0, 0x1.045a88p+3
+0x1.79145p+1, -0x1.1a608p+2
+0x1.3c53p-3, 0x1.4a2p-5
+0x1.22faap+0, 0x1.e241dp+1
+0x1.8e0fep+1, 0x1.f32c6p+2
+0x1.152f5p+2, -0x1.ccb98p-3
+0x1.e0c08p+0, -0x1.dd9734p+2
+0x1.40c374p+2, 0x1.a549dp+2
+-0x1.2d4ef4p+2, -0x1.8c738p-1
+-0x1.7719cp+0, -0x1.23787p+3
+0x1.68f668p+1, -0x1.30111p+2
+-0x1.f8463p+2, 0x1.1ba5d8p+3
+0x1.0e81p+0, -0x1.eae38p+1
+0x1.d8c198p+2, 0x1.1fdd98p+2
+0x1.798f78p+1, 0x1.906fbp+1
+-0x1.9c1948p+2, -0x1.86edap+2
+-0x1.e74d6p+0, -0x1.c0e968p+2
+-0x1.38417p+3, 0x1.8907p+0
+-0x1.17a02p+1, 0x1.4afe8p-1
+0x1.17f30cp+3, -0x1.c8b6ep-1
+-0x1.b9f6p+1, -0x1.a684cp-1
+-0x1.df3a4p-1, 0x1.c02868p+2
+-0x1.36e366p+3, -0x1.e77p-7
+-0x1.7fb43p+1, 0x1.f5b8a8p+2
+0x1.226528p+2, 0x1.1960ap-1
+-0x1.1b0eb8p+1, -0x1.df3308p+2
+-0x1.21d266p+3, 0x1.17f88p+3
+-0x1.04958ap+2, -0x1.030244p+2
+-0x1.e775p-3, 0x1.f8a84p+2
+-0x1.349f74p+3, 0x1.e2b68p-3
+0x1.c81898p+2, -0x1.99d2bcp+2
+-0x1.2f6adcp+2, -0x1.ec4cep+0
+0x1.6165cp+0, -0x1.ef1c6p-1
+-0x1.1d0b48p+2, 0x1.1af914p+3
+0x1.0ede84p+3, 0x1.0848d8p+3
+0x1.19c98p-3, -0x1.d216bp+1
+-0x1.e59944p+2, -0x1.1ccff8p+1
+0x1.bb35cp-1, 0x1.7d38f8p+2
+0x1.280398p+2, 0x1.2dcfc4p+3
+-0x1.16ca54p+1, -0x1.aef6cep+2
+0x1.2cc32p+3, 0x1.16e55cp+2
+-0x1.bf9c6p-1, -0x1.fb96a8p+1
+0x1.2499f8p+1, 0x1.2b0e4p+3
+0x1.d97d8p+0, -0x1.1c03aep+3
+-0x1.05404ap+3, 0x1.396e48p+2
+0x1.28787p+1, -0x1.1c07dp+3
+-0x1.0d161ep+3, 0x1.15f548p+3
+0x1.661a6p+1, 0x1.2c8a34p+2
+0x1.83f23p+2, -0x1.96eb2ap+2
+-0x1.3fb248p+3, -0x1.8d8dp+0
+-0x1.fb0138p+2, 0x1.b341ep+2
+0x1.40abdp+0, 0x1.5f03dcp+2
+0x1.314ca8p+3, -0x1.ff6d7cp+2
+-0x1.cb7cp-4, -0x1.aef654p+1
+0x1.eb4a8p-3, 0x1.2a7178p+3
+0x1.727938p+2, 0x1.a49738p+2
+-0x1.1613bcp+1, -0x1.765bp-3
+0x1.162c84p+3, 0x1.c176a8p+2
+0x1.12f68p+0, 0x1.2d9128p+3
+0x1.a340ap+0, 0x1.f7702p+2
+0x1.15dc3p+0, -0x1.073bb8p+2
+-0x1.094ec2p+2, -0x1.929518p+2
+-0x1.b9cc38p+1, -0x1.931e38p+2
+0x1.2dec64p+3, 0x1.cea3ep+0
+0x1.21a2p+3, -0x1.8c14d4p+2
+0x1.451824p+2, 0x1.2745b4p+2
+0x1.37ffp+3, -0x1.6fdb8p+2
+-0x1.76b106p+2, -0x1.19e596p+3
+-0x1.51acep+2, -0x1.1c8438p+3
+0x1.319244p+2, 0x1.23fb5p+3
+-0x1.0236cp-1, -0x1.695b4p+0
+-0x1.6eb3cp-2, -0x1.04148p-2
+-0x1.17f98p+1, -0x1.13e16cp+3
+-0x1.10801p+3, -0x1.1165cep+3
+0x1.4e4bcp-1, 0x1.31fd58p+2
+-0x1.00f35ep+2, 0x1.9e096p+2
+-0x1.013f0ap+2, -0x1.c0a618p+1
+0x1.f92dfp+2, -0x1.8bc27cp+2
+0x1.803d48p+2, -0x1.0b50fap+2
+-0x1.5e4c14p+1, -0x1.fa918p-2
+-0x1.ad2424p+1, -0x1.bb2f14p+1
+0x1.3110cp+3, -0x1.7a540ap+2
+-0x1.9c67ap-1, 0x1.282448p+3
+0x1.3203f8p+3, -0x1.8642b8p+2
+-0x1.cf372cp+2, -0x1.230c3p+2
+0x1.cc1638p+1, -0x1.7bb8e8p+2
+-0x1.aca2a2p+2, 0x1.334a7p+3
+0x1.e3a7cp+2, -0x1.06e64p+0
+0x1.a7286p+0, 0x1.6018p-5
+-0x1.20cd46p+2, 0x1.0b7248p+3
+0x1.6362e4p+2, 0x1.faa22p+0
+-0x1.160ceap+3, 0x1.678584p+2
+-0x1.195ab4p+3, -0x1.a4eae8p+2
+-0x1.f84f88p+2, -0x1.327dp-3
+0x1.0e216cp+2, 0x1.55bd5p+2
+0x1.2ae28cp+2, -0x1.3e1fb8p+3
+-0x1.93a9p+2, -0x1.f5807p+0
+-0x1.3bd2f2p+3, 0x1.6c9ae4p+2
+0x1.0f0118p+2, -0x1.082764p+3
+-0x1.9916f4p+2, 0x1.6c994p-2
+0x1.2e0bep+1, 0x1.43d57p+2
+-0x1.3c6f46p+3, 0x1.e2d318p+1
+-0x1.71cffap+2, 0x1.3e3d48p+2
+-0x1.994ff4p+2, 0x1.2d205p+1
+-0x1.310f82p+2, -0x1.27469p+3
+0x1.1543e8p+3, 0x1.a8c14p-2
+0x1.07506cp+3, 0x1.464a2cp+2
+0x1.6d0fcp+0, 0x1.2c2418p+2
+0x1.cceecp+0, 0x1.281fbcp+3
+-0x1.facc7cp+2, 0x1.4cf508p+2
+-0x1.34b8a6p+3, -0x1.05fecap+3
+0x1.d9cb4p+0, 0x1.2c9658p+3
+0x1.e6f358p+2, 0x1.32e538p+3
+0x1.22f94p+0, 0x1.136fp-2
+-0x1.be6914p+2, -0x1.67cbf8p+1
+0x1.fa52b8p+2, -0x1.f32a6p+2
+0x1.7c9f18p+2, 0x1.66f838p+2
+0x1.40ab98p+2, -0x1.ff4188p+2
+0x1.2e2bbp+1, 0x1.6bae88p+1
+-0x1.e31c3p+0, -0x1.f2e084p+1
+0x1.164a54p+2, -0x1.0723fcp+3
+-0x1.1032c8p+1, -0x1.088caap+3
+-0x1.1b1a2p+0, 0x1.f1bc1p+0
+0x1.758acp+1, 0x1.290b08p+2
+-0x1.186cd6p+2, 0x1.df59e8p+2
+-0x1.7e9c1p+0, -0x1.3ec708p+1
+0x1.942708p+2, -0x1.3963cp+3
+0x1.aa4da8p+2, 0x1.35497p+1
+0x1.346c9p+0, -0x1.8d386cp+2
+0x1.19a7cp+2, 0x1.bb7bep+2
+-0x1.f3c818p+1, 0x1.fb7fb8p+1
+-0x1.09be5p+2, 0x1.6a68ap+1
+0x1.35b29cp+3, 0x1.e5eaa8p+1
+0x1.adb1ap+1, -0x1.0fb59ep+3
+-0x1.b53cecp+2, -0x1.2c85dcp+3
+-0x1.00606ep+2, 0x1.9a4e5p+2
+0x1.8054bp+0, 0x1.253c78p+3
+-0x1.2ce55ap+3, -0x1.332ce2p+3
+0x1.ba50ap+2, -0x1.e825a8p+1
+-0x1.4ebd9ap+2, -0x1.fb52p+0
+-0x1.fe5d28p+1, 0x1.1ce35p+3
+-0x1.0e4398p+2, 0x1.358328p+1
+0x1.ac8p+2, -0x1.212098p+2
+0x1.324b9p+3, 0x1.268618p+3
+0x1.5eaf08p+1, -0x1.2b62d4p+3
+-0x1.85c298p+2, 0x1.34fdap+2
+-0x1.02cf98p+3, 0x1.f71218p+1
+-0x1.2f48a8p+3, 0x1.1d4bf8p+3
+0x1.c8988p+2, 0x1.7b645p+0
+0x1.78ef8p-2, -0x1.c83034p+2
+-0x1.1d324p+2, -0x1.9ce916p+2
+0x1.1ab7dcp+3, -0x1.4c9d7p+0
+0x1.bed97p+2, 0x1.7c3b8p+1
+-0x1.ce4178p+1, 0x1.caf708p+1
+0x1.ceb6p+0, -0x1.92aa6p+2
+0x1.2670a8p+3, -0x1.27578p-2
+0x1.081f04p+2, -0x1.7432ecp+2
+0x1.a10bb8p+1, -0x1.113bb8p+1
+-0x1.731588p+2, 0x1.1e0768p+1
+0x1.f1469p+2, -0x1.0e16dep+3
+0x1.c13e8p+0, -0x1.769c0ep+2
+-0x1.118db6p+3, 0x1.ead2p-4
+-0x1.578b84p+1, 0x1.817d18p+2
+0x1.1140ccp+3, -0x1.67ff3cp+2
+-0x1.549558p+2, 0x1.2709cp+2
+-0x1.aa0bep+2, -0x1.6758c2p+2
+0x1.a737ap+0, 0x1.6fe85cp+2
+0x1.2daccp+0, 0x1.0bf11p+3
+-0x1.10e868p+2, 0x1.696318p+2
+0x1.e14aa8p+1, 0x1.88e44p+0
+0x1.0805d8p+2, -0x1.29eba2p+3
+-0x1.13df8p-3, 0x1.611e7p+1
+0x1.078bap+3, -0x1.2ceee8p+2
+-0x1.5d1dc8p+1, 0x1.810e6p+2
+0x1.2fd76p+1, -0x1.2b1918p+1
+0x1.034p-3, -0x1.2e6072p+3
+-0x1.3cb6a4p+3, 0x1.61948p+0
+0x1.299c9p+3, -0x1.166bb2p+3
+0x1.9207ap+0, -0x1.71059cp+2
+0x1.393c5p+3, 0x1.13cfccp+3
+0x1.2e499p+3, 0x1.3a3a28p+3
+-0x1.2d5ebep+2, 0x1.e8f4cp+0
+-0x1.6bd268p+2, 0x1.dfae1p+2
+0x1.19ca64p+3, 0x1.321a3p+3
+-0x1.28f50ap+3, -0x1.2456dp+2
+0x1.d67a8p+1, -0x1.790b6cp+1
+-0x1.d928p+2, 0x1.3ba19cp+3
+0x1.6a637p+2, 0x1.eb4f6p+0
+0x1.a10bcp+0, -0x1.4f622p+0
+0x1.847f28p+2, -0x1.15dea4p+3
+-0x1.2d4ff4p+3, -0x1.141222p+2
+-0x1.a641f8p+2, -0x1.fc017p+1
+-0x1.c0919cp+2, 0x1.9e34ep-1
+-0x1.5addep+2, -0x1.d219e8p+1
+-0x1.28b5bp+0, -0x1.29bcap+1
+0x1.1b4b18p+3, -0x1.231c62p+2
+0x1.0c1f14p+3, -0x1.5f3de4p+1
+-0x1.20c1b2p+3, -0x1.7f3b48p+2
+-0x1.b060a8p+1, -0x1.dc4938p+2
+-0x1.151d6cp+2, -0x1.318bdp+2
+-0x1.d85fb8p+2, 0x1.854d1p+2
+-0x1.47bb0ep+2, -0x1.0bba08p+2
+0x1.ccc308p+2, 0x1.2ff24p+3
+-0x1.a6f9c8p+1, -0x1.29f1e6p+2
+0x1.300438p+3, -0x1.5a7f48p+1
+-0x1.6251aap+2, -0x1.281a88p+1
+0x1.ce22e8p+1, 0x1.2a82ap+3
+-0x1.d5c3acp+1, 0x1.1e74ep+3
+0x1.6f9504p+2, -0x1.67babp+1
+0x1.7991fcp+2, 0x1.1ead28p+3
+0x1.7bbfa8p+1, 0x1.d9c6cp+1
+-0x1.4a7854p+1, -0x1.59e158p+2
+-0x1.bf61dcp+2, -0x1.97af6p+1
+-0x1.912c3ep+2, 0x1.29fa78p+3
+-0x1.967f4cp+2, 0x1.cd0408p+2
+-0x1.c7754p-2, 0x1.1b1a3p+2
+0x1.60eba8p+1, -0x1.76ad26p+2
+-0x1.171a5p+2, -0x1.4b0fd8p+2
+-0x1.0c1376p+3, 0x1.2af06p+3
+0x1.00e188p+3, 0x1.b11a3p+2
+-0x1.0bdb9p+0, -0x1.221544p+2
+0x1.54882p+0, -0x1.0c2d4p+1
+0x1.07e8f8p+3, -0x1.132554p+3
+0x1.3b56fp+2, 0x1.0c2e68p+3
+-0x1.04dfe4p+2, 0x1.2fd0ep+1
+-0x1.e83262p+2, 0x1.5ee93p+0
+0x1.4c59d8p+1, 0x1.28e068p+2
+0x1.f8f708p+2, 0x1.189dap+2
+-0x1.30d8c8p+2, 0x1.941p-8
+-0x1.877288p+1, -0x1.0e0d1p+3
+-0x1.1c17c4p+3, -0x1.be9a8cp+1
+-0x1.abba5ap+2, 0x1.2b2478p+1
+-0x1.ed3274p+2, 0x1.c8b968p+2
+-0x1.571482p+2, -0x1.15c312p+2
+0x1.1e0fdcp+2, -0x1.3ebf28p+1
+-0x1.a3842p+0, -0x1.1ca994p+2
+-0x1.41667cp+2, 0x1.2d9f28p+3
+0x1.6ed8e8p+2, 0x1.939b5p+2
+-0x1.338ca8p+3, -0x1.2200fp+0
+-0x1.fdc134p+2, -0x1.dae4ep+0
+0x1.cd2fdp+2, 0x1.1e4514p+2
+-0x1.1b40cp+3, -0x1.39f518p+2
+0x1.01bcc8p+1, -0x1.1284e8p+1
+-0x1.141d32p+3, -0x1.59058cp+1
+-0x1.5b185p+1, 0x1.2062bp+3
+-0x1.3dbc32p+2, -0x1.8183e8p+2
+0x1.3e0a1p+0, 0x1.9434cp-1
+0x1.d8928p+2, -0x1.dd2dep+2
+0x1.2e1c8cp+3, -0x1.e074dcp+2
+0x1.e35098p+1, 0x1.9a7308p+2
+0x1.ba43f8p+2, -0x1.1b98c6p+3
+-0x1.050ad2p+3, 0x1.4bde8p+1
+-0x1.0c301ap+3, 0x1.6ba98p+2
+0x1.c1ff4p-1, -0x1.ab17c6p+2
+-0x1.14e03ap+2, 0x1.145ap+3
+0x1.2dae4p+3, 0x1.fd1908p+2
+-0x1.8a734cp+2, -0x1.3085ccp+3
+-0x1.623458p+2, -0x1.1ed68p+0
+-0x1.1e9c48p+1, 0x1.a75478p+1
+0x1.b7e67p+2, -0x1.4978e6p+2
+-0x1.bf1b5p+0, -0x1.6879cp-1
+-0x1.e2a058p+2, 0x1.2b962cp+3
+0x1.ccb91p+2, -0x1.370bb8p+1
+0x1.f9997p+0, -0x1.dd1ab8p+2
+-0x1.58743p+1, -0x1.343526p+3
+0x1.ed418p+1, -0x1.9f7204p+2
+0x1.186ebp+0, -0x1.8cbp+0
+0x1.478bbcp+2, 0x1.f25afp+1
+0x1.62ca2p+2, -0x1.cde16p-1
+0x1.10bd94p+3, -0x1.a85da4p+1
+-0x1.0c2724p+3, -0x1.5dbb1ap+2
+0x1.85df6p+1, -0x1.1d014p+3
+-0x1.6ba7bap+2, 0x1.97ce9p+1
+0x1.d518bp+2, -0x1.3ad118p+3
+-0x1.307472p+3, 0x1.a39b18p+1
+0x1.058c8p-1, -0x1.bcf16ep+2
+0x1.f539f8p+2, 0x1.1568d4p+3
+0x1.35483p+3, -0x1.0d592ep+3
+-0x1.d25f9p+1, -0x1.103dcap+2
+-0x1.10a514p+2, -0x1.22748cp+1
+0x1.87517p+0, -0x1.26da8ep+3
+0x1.33e9b4p+3, 0x1.21875cp+2
+0x1.477bb8p+2, -0x1.b3bafep+2
+0x1.fafe6p+2, -0x1.2da99cp+3
+-0x1.0b92dp+3, 0x1.9e044p+1
+-0x1.311dc6p+2, -0x1.d3334ep+2
+-0x1.0d65bep+2, 0x1.3fdp+0
+-0x1.016d02p+3, 0x1.20988cp+3
+-0x1.2c415p+3, 0x1.3bcf84p+3
+-0x1.ec01e4p+1, 0x1.ad6f48p+1
+0x1.e55bep-1, 0x1.c5e34p+1
+-0x1.f09fp+0, 0x1.97c6f8p+1
+-0x1.d09cap+0, 0x1.0be7ap+2
+0x1.41dc18p+1, 0x1.fbe48p+1
+0x1.088a6p+1, -0x1.2ea978p+1
+-0x1.8fcd4p+1, 0x1.126cf4p+2
+0x1.ff66b8p+2, 0x1.edc53p+1
+0x1.879408p+1, 0x1.0d01c4p+2
+0x1.663848p+2, 0x1.59239p+2
+-0x1.a66018p+1, 0x1.6b37ep+1
+-0x1.15c734p+3, 0x1.55113p+1
+-0x1.76c2bp+2, 0x1.104dfp+0
+0x1.08774p+2, -0x1.e168ecp+1
+0x1.3cd1p-3, 0x1.d0c7e8p+1
+-0x1.eb0c9ep+2, 0x1.4e0668p+2
+-0x1.ed731p+1, 0x1.ad085p+1
+0x1.bd0f4p+2, -0x1.7c9ef8p+2
+0x1.023ccp-2, -0x1.34a0b4p+2
+0x1.6fddecp+2, 0x1.036bb8p+2
+-0x1.8db1acp+2, 0x1.6f1988p+2
+0x1.246ac8p+3, 0x1.a7c688p+2
+0x1.4cda14p+2, -0x1.a45796p+2
+-0x1.34cfd6p+3, -0x1.10b318p+3
+-0x1.a16be4p+2, -0x1.ffab98p+1
+0x1.c2128p+2, 0x1.2403p+0
+0x1.2b1b5p+2, -0x1.a89f6ap+2
+0x1.004318p+1, 0x1.d4ce18p+1
+0x1.7a4198p+2, 0x1.6fc5d8p+2
+-0x1.20657ap+3, -0x1.62d8p-6
+0x1.d5a0fp+2, -0x1.33d74p-2
+0x1.8dfp-3, 0x1.9f502p-1
+-0x1.cee7p-2, 0x1.494354p+2
+0x1.027a2p-1, -0x1.8af9ap+1
+-0x1.642e24p+2, 0x1.3d82b8p+3
+-0x1.3c82dp+2, 0x1.9bbcp-2
+-0x1.c355d4p+2, -0x1.86c96p-1
+0x1.507cp+0, -0x1.1b67aep+3
+-0x1.ceafacp+2, 0x1.2a712p+1
+0x1.853c8p+2, -0x1.b6b698p+1
+-0x1.f581fcp+2, -0x1.7375bp+1
+-0x1.72dc58p+1, 0x1.72758p+1
+-0x1.39fd7ep+2, -0x1.91c2cp-2
+0x1.398bcp-1, -0x1.c8b454p+2
+-0x1.0aadb4p+1, -0x1.ebb5acp+1
+-0x1.63468p-2, -0x1.883d7p+2
+-0x1.3a543cp+3, -0x1.19e48p-2
+-0x1.b39374p+2, -0x1.b19b14p+2
+-0x1.01b34ap+3, -0x1.98bfecp+1
+-0x1.28894cp+2, 0x1.1d14p-6
+0x1.7066ep+2, 0x1.cee84p+0
+0x1.004258p+1, -0x1.f617b4p+2
+-0x1.2e02ep+1, -0x1.d0402ap+2
+0x1.a45328p+2, 0x1.ac4f9p+2
+-0x1.9ad28p-1, 0x1.2db214p+3
+-0x1.0c6944p+3, 0x1.9f8cbp+0
+-0x1.6110a2p+2, 0x1.3415fp+3
+0x1.74045p+2, -0x1.0054a2p+2
+-0x1.6bfcep+1, -0x1.a4df1ap+2
+-0x1.40e7p-1, 0x1.d34818p+1
+-0x1.19c9c2p+3, -0x1.3b1bc2p+3
+0x1.7784p-1, -0x1.a4055ap+2
+0x1.60776cp+2, -0x1.d5fc26p+2
+-0x1.2c0246p+2, -0x1.ce3678p+1
+0x1.08b488p+3, 0x1.4ce9b4p+2
+0x1.85101p+2, -0x1.8973dp+0
+0x1.f227p-1, -0x1.f09d8p-1
+-0x1.2130e8p+3, -0x1.a92b6p+0
+0x1.cf79p+0, -0x1.dea628p+1
+0x1.7329p-3, -0x1.bba32p-1
+-0x1.112fcp-2, -0x1.c9a5cp+0
+-0x1.c4bf78p+1, 0x1.e5a5cp-1
+-0x1.4c7cp+1, 0x1.eff06p+2
+-0x1.520b9p+0, -0x1.c5eeb4p+1
+-0x1.3e9ceep+2, -0x1.f937c4p+1
+0x1.3331bcp+3, 0x1.0b8cp-3
+-0x1.b7ce3cp+1, -0x1.f58d16p+2
+0x1.9638p-7, 0x1.77deap-1
+0x1.2cbbbcp+2, 0x1.0db5ccp+3
+0x1.100ap-5, -0x1.300e24p+3
+-0x1.ce3374p+2, 0x1.b4bcap+1
+0x1.af6618p+1, -0x1.eb3bf8p+2
+0x1.25e398p+3, 0x1.f3865p+2
+0x1.39698p+3, -0x1.c308acp+1
+-0x1.10159p+3, -0x1.fc2068p+2
+-0x1.3d71dcp+3, 0x1.48f33p+2
+-0x1.9d9a4p-1, 0x1.27a81p+1
+-0x1.8733cep+2, 0x1.a0b07p+0
+-0x1.4393ep+0, -0x1.f5f4ap-1
+0x1.407df8p+1, -0x1.89f1p+0
+0x1.2f56cp+0, -0x1.90986p+0
+0x1.2e086cp+3, 0x1.47698p-3
+-0x1.a92b04p+2, 0x1.acf108p+2
+-0x1.0892cap+3, 0x1.7f816cp+2
+-0x1.94a8fp+0, -0x1.8bf78p-2
+0x1.c8e468p+2, -0x1.a30394p+1
+-0x1.d699d4p+2, -0x1.09f54p-1
+0x1.84063p+2, 0x1.daf88p-3
+0x1.f1bb8p-3, 0x1.fd151p+2
+-0x1.377e14p+3, 0x1.c3bcb8p+1
+-0x1.9783b6p+2, 0x1.bd92d8p+2
+-0x1.240e36p+3, 0x1.e7bddp+1
+-0x1.e73ddcp+2, -0x1.55dcb8p+1
+0x1.00c4c8p+3, 0x1.44a418p+2
+0x1.46dc58p+2, -0x1.53c05ap+2
+-0x1.4aefcp-1, 0x1.413a88p+1
+0x1.1c2a98p+3, -0x1.8675e8p+1
+0x1.1f843p+2, -0x1.c2f928p+2
+-0x1.cea5ep-1, -0x1.045ac8p+1
+-0x1.9d3c74p+2, -0x1.c24084p+2
+0x1.8ae54p+0, -0x1.28e7c8p+1
+-0x1.0f6e7ap+3, -0x1.6dec9ap+2
+0x1.c7981p+1, 0x1.57612p+1
+-0x1.dbd5p-4, -0x1.ad3d14p+1
+0x1.cf80cp-1, 0x1.70012p+2
+-0x1.a1ff44p+2, 0x1.4f7bcp+2
+-0x1.d83b84p+2, -0x1.0d9c4cp+3
+0x1.a60168p+2, 0x1.16102p+0
+-0x1.3ff1a8p+2, -0x1.d0494cp+2
+-0x1.5e142ap+2, 0x1.3bf90cp+3
+0x1.290c14p+3, 0x1.60259cp+2
+-0x1.ba5a8p-2, 0x1.b39p-8
+-0x1.3b2ap-5, 0x1.96dfp-3
+-0x1.00b232p+3, 0x1.d94308p+2
+-0x1.14603cp+3, 0x1.51963p+1
+0x1.262c78p+2, -0x1.161fb2p+2
+0x1.6dddp-4, 0x1.6236p-1
+-0x1.064d24p+2, 0x1.1a27dp+3
+-0x1.32624p+0, -0x1.8858ep+2
+-0x1.a4b914p+1, -0x1.2a436ep+3
+-0x1.9fde5cp+1, -0x1.190d04p+3
+0x1.a5c28p+0, -0x1.6fa6b8p+1
+-0x1.d46484p+1, -0x1.905c8ep+2
+0x1.e862ep+0, -0x1.2b2512p+3
+0x1.2e1a68p+2, 0x1.ea2b4p+2
+0x1.a4aa78p+2, 0x1.52c4cp+1
+-0x1.8785ep+1, -0x1.7047ap+0
+0x1.a25e4p+2, 0x1.b99c78p+2
+-0x1.e3119p+0, -0x1.02d6p-5
+0x1.0a9794p+2, -0x1.2015p-3
+0x1.9f4578p+2, -0x1.c9bc6cp+2
+-0x1.320772p+3, 0x1.c42d4p-1
+0x1.350004p+3, 0x1.07849p+1
+-0x1.541fap+1, -0x1.a420ap-1
+-0x1.1decap+2, 0x1.05c624p+3
+0x1.a644p-3, 0x1.9a46p-5
+-0x1.3a266ep+3, -0x1.a1776p+0
+0x1.7a7888p+2, -0x1.85a7cap+2
+0x1.00c1bcp+3, 0x1.0f78e8p+3
+0x1.0ff698p+3, -0x1.9fb0dp+2
+-0x1.14d742p+3, 0x1.8c5888p+1
+-0x1.174614p+3, 0x1.091fp-1
+-0x1.6e1d9p+1, -0x1.63a46ep+2
+-0x1.781118p+1, 0x1.dca828p+2
+-0x1.f6d5fp+2, -0x1.619158p+2
+0x1.cd2a2p-1, -0x1.bc5dacp+1
+-0x1.9b784p+2, -0x1.0e18p-3
+0x1.6d894p-1, 0x1.9f18bp+2
+0x1.55111p+0, 0x1.e95e88p+2
+0x1.0135e8p+2, -0x1.1f6914p+3
+0x1.9f6b88p+2, 0x1.526d7p+2
+0x1.762658p+2, -0x1.a986c8p+2
+0x1.79eacp+0, 0x1.50bep-4
+0x1.0cdab8p+2, 0x1.874d4p-1
+-0x1.6edd4p-2, 0x1.6a725p+0
+0x1.141fep+3, 0x1.8aaacp-1
+-0x1.bc98d4p+2, 0x1.22bc4cp+2
+0x1.1e1abcp+2, 0x1.c45988p+1
+0x1.e08ecp+2, -0x1.78801ap+2
+-0x1.755b8ep+2, 0x1.ba1cep+2
+-0x1.6e834ap+2, -0x1.7046fcp+2
+0x1.477b9p+1, 0x1.0e102p-1
+-0x1.90fd04p+2, 0x1.23005p+0
+0x1.72b814p+2, 0x1.938e2p+0
+-0x1.dd907cp+1, -0x1.2a09ep-1
+0x1.851bd8p+2, -0x1.65a5ccp+2
+0x1.52a3dp+1, -0x1.c9685p+0
+0x1.857d4p+1, -0x1.3469ep+2
+-0x1.a525ep+1, -0x1.e246p-3
+-0x1.11aaf4p+2, 0x1.d33898p+2
+-0x1.34186ap+2, -0x1.2348ecp+3
+0x1.31b83p+2, 0x1.c1368p-2
+-0x1.fb1278p+1, 0x1.d82318p+2
+0x1.2e29bcp+3, -0x1.02006cp+3
+-0x1.02fccp+1, 0x1.3ae86p+0
+-0x1.adcd3cp+2, 0x1.d830ap+0
+-0x1.7e0dcp+0, -0x1.685b5ep+2
+-0x1.0e7002p+3, 0x1.df931p+2
+0x1.0e7ffp+1, 0x1.c2d34p+2
+-0x1.d021b8p+2, -0x1.1e3ec4p+3
+-0x1.381edp+1, -0x1.186c04p+3
+0x1.46f57p+1, -0x1.2ad21p+0
+-0x1.7209d8p+1, 0x1.d3248p-1
+0x1.06f5dp+1, 0x1.3ef4ap+0
+0x1.4c6ddp+1, 0x1.893d6p+2
+-0x1.33524ap+2, 0x1.d9efp+0
+-0x1.cf42p-1, -0x1.725d22p+2
+0x1.96472p+0, -0x1.c299fap+2
+-0x1.165308p+3, 0x1.f9415p+1
+0x1.734914p+2, 0x1.2b5668p+3
+-0x1.2c5efp+3, -0x1.52d34p+0
+0x1.2116b8p+2, 0x1.f1de6p+0
+0x1.6b262p+0, 0x1.90eb58p+2
+0x1.22beccp+2, -0x1.2b425p+1
+-0x1.b9b8b8p+1, 0x1.ecd2p+1
+-0x1.ebd868p+1, -0x1.9cdf3cp+1
+-0x1.0835f8p+2, 0x1.28df5p+0
+0x1.0c8ee4p+3, -0x1.c2782p+2
+-0x1.7bfbaap+2, -0x1.239794p+3
+0x1.67324p+0, -0x1.346bc2p+3
+0x1.ea7d08p+1, 0x1.c5e12p-1
+-0x1.848e04p+2, -0x1.e6bbe4p+1
+0x1.433338p+2, -0x1.0babbp+2
+0x1.c87b7p+2, -0x1.3f4582p+3
+0x1.e7648p+0, -0x1.b858ap-1
+0x1.0a18c4p+3, 0x1.b3b8ep+0
+0x1.23ee7p+1, -0x1.4765fp+1
+-0x1.3eda1ep+3, -0x1.002d14p+3
+0x1.129668p+2, -0x1.131decp+1
+-0x1.3bc38p+0, 0x1.906618p+2
+-0x1.c16a48p+1, -0x1.6ab208p+1
+0x1.1de8acp+3, -0x1.a1f1cp-2
+0x1.172078p+3, -0x1.47bfa8p+2
+0x1.3cadfp+3, 0x1.773c5p+2
+0x1.6ea4p-5, 0x1.cf0d6p-1
+-0x1.1440c4p+1, -0x1.067cacp+3
+-0x1.61f3ep+0, -0x1.202c98p+3
+0x1.3053ep+0, -0x1.347b2p+0
+0x1.a3ab3p+1, -0x1.1b4904p+1
+-0x1.0e348p+0, -0x1.cc720cp+1
+-0x1.41636cp+2, -0x1.2e3b38p+2
+-0x1.6ec702p+2, 0x1.15189cp+3
+-0x1.394724p+3, -0x1.5d1dd8p+2
+0x1.5bcffp+1, 0x1.0c2c84p+2
+-0x1.116c34p+3, -0x1.4ce99ep+2
+-0x1.52e718p+1, -0x1.b02568p+2
+0x1.3a8e2cp+2, -0x1.8a2d3ap+2
+0x1.148638p+3, -0x1.44c48p-1
+-0x1.dd4e82p+2, 0x1.3a9b4cp+2
+0x1.ed1a8p-3, -0x1.57731p+2
+0x1.219184p+3, -0x1.768a9cp+2
+-0x1.1cee46p+2, 0x1.c090d8p+1
+-0x1.a6a314p+2, 0x1.e5958p+2
+-0x1.26472cp+2, -0x1.42daecp+2
+-0x1.355722p+2, -0x1.295222p+3
+-0x1.82bfd4p+1, 0x1.40c938p+2
+-0x1.347a9p+0, 0x1.eea858p+2
+0x1.ca74ep+2, 0x1.ab9f2p+1
+0x1.25b5f8p+2, -0x1.f9c6fcp+2
+-0x1.3ef844p+1, 0x1.859b08p+2
+0x1.6125dp+2, -0x1.396ecp-2
+0x1.d25d4p+0, -0x1.a965p+1
+0x1.6462b8p+2, -0x1.04c7dep+3
+-0x1.3fb6c2p+3, -0x1.46adeap+2
+0x1.9dafdp+0, 0x1.074fp+2
+-0x1.1e6bap-1, -0x1.1c57a6p+3
+0x1.1790ap+3, -0x1.fbcce4p+1
+0x1.92166p+1, -0x1.c6b3f6p+2
+0x1.2ffde8p+3, 0x1.ecbe1p+2
+0x1.e5b6cp-2, -0x1.b487bp+0
+0x1.aaeaep+2, 0x1.8020fp+1
+-0x1.87e188p+2, 0x1.88b7ap+0
+0x1.56427p+0, 0x1.1a4bd8p+3
+0x1.7a4e9p+1, -0x1.6e2f54p+2
+-0x1.3e67acp+3, 0x1.cd9fp-4
+0x1.eb8a1p+0, -0x1.174beep+2
+0x1.087db8p+2, -0x1.158622p+2
+0x1.82019p+0, 0x1.1061fp+0
+0x1.eca3e8p+1, -0x1.8c064p+0
+-0x1.3b738ep+3, -0x1.02c8f8p+3
+-0x1.86b4bp+0, 0x1.27a77p+1
+-0x1.6cd9bp+0, 0x1.e78abp+1
+0x1.0ad58cp+3, 0x1.2e74ecp+3
+-0x1.152518p+3, 0x1.ccf9cp-1
+0x1.04252p+2, 0x1.327904p+3
+-0x1.4fe01ap+2, 0x1.28b01cp+2
+0x1.bd825p+2, 0x1.51794p+2
+-0x1.27d7f4p+3, 0x1.e2f2p+2
+-0x1.3f0986p+2, 0x1.32abbp+3
+-0x1.5e9064p+1, 0x1.324548p+1
+0x1.10e65p+1, 0x1.2f2bbcp+3
+-0x1.9ea2fp+1, 0x1.c7304p+0
+-0x1.0de8cp-1, -0x1.dcd64p+0
+-0x1.e5ede4p+1, 0x1.f5376p+2
+0x1.f7ca5p+1, -0x1.94c54p+2
+0x1.4f2914p+2, 0x1.680c2p+2
+0x1.45e87cp+2, 0x1.1f00b8p+3
+0x1.01c1fp+2, 0x1.85d998p+2
+-0x1.af331p+0, -0x1.c27dd4p+2
+-0x1.2b8d5ep+3, 0x1.1734f8p+2
+0x1.0f27dcp+3, -0x1.528f28p+1
+0x1.3ae57p+0, 0x1.ec1988p+1
+-0x1.0029ecp+3, -0x1.1c1348p+3
+0x1.05366p+3, 0x1.e0e8ap+2
+0x1.b07068p+2, 0x1.1fee6p+3
+-0x1.6930ap-1, -0x1.0dca3cp+2
+0x1.fb5a88p+1, 0x1.5b185p+0
+0x1.cf15bp+2, 0x1.4eb9a8p+2
+0x1.00692p-1, -0x1.4603ecp+2
+-0x1.fcac1p+0, -0x1.f2cf8p-2
+0x1.a051d8p+2, 0x1.e7253p+1
+-0x1.6aae7ep+2, -0x1.1b140ap+3
+-0x1.f66dp-1, -0x1.5647d6p+2
+0x1.5c706p+0, -0x1.1237dp+3
+0x1.68df2p-1, 0x1.50dc38p+2
+-0x1.77a2dep+2, 0x1.306f74p+3
+0x1.9785a8p+1, 0x1.154924p+3
+0x1.f3c9ap+1, -0x1.fb6558p+1
+0x1.24572cp+3, -0x1.2324p+1
+0x1.4b218p-2, 0x1.f52bc8p+2
+-0x1.37de4p-2, -0x1.69553p+0
+0x1.2a952p+3, -0x1.58644cp+1
+0x1.0d4d68p+2, 0x1.668308p+2
+-0x1.cb35a8p+2, -0x1.3d7f0cp+3
+0x1.3012f8p+2, -0x1.50b16ep+2
+0x1.12d0acp+3, 0x1.e0d5fp+1
+-0x1.57c93p+1, -0x1.dde054p+1
+-0x1.98e2p-4, -0x1.590ea8p+1
+0x1.71ce2p+0, 0x1.f890bp+2
+-0x1.355584p+3, -0x1.ad8518p+2
+0x1.42410cp+2, 0x1.380b58p+3
+-0x1.2b2bbp+3, -0x1.010924p+2
+0x1.a1f538p+1, 0x1.d9bfap+2
+-0x1.8d69f4p+1, -0x1.62adap-1
+-0x1.47b40cp+1, 0x1.18a82p+1
+-0x1.1696d2p+2, -0x1.ec86p-2
+-0x1.bd29ccp+1, 0x1.431d1p+1
+0x1.37cfe8p+3, -0x1.12e524p+3
+-0x1.320c8ep+3, 0x1.7e86bcp+2
+-0x1.95814cp+1, -0x1.09f938p+1
+0x1.342358p+2, 0x1.0f3d38p+3
+-0x1.0d29cp+1, 0x1.2bba48p+1
+0x1.e8a2ep+2, -0x1.bab6p-1
+-0x1.4c25fcp+1, 0x1.a697ap+0
+0x1.95482p+2, 0x1.91cfep-1
+0x1.84506p+2, -0x1.a2e414p+1
+0x1.73b7ep+2, -0x1.49f43ep+2
+0x1.e960a8p+1, -0x1.f288ep+2
+-0x1.74488p-1, -0x1.21b6dp+1
+0x1.08a3c4p+3, -0x1.fe4822p+2
+0x1.e10e58p+1, 0x1.17a8d4p+2
+-0x1.e65fcp+1, -0x1.9a1dap+0
+-0x1.a3a0cp+0, -0x1.a9d8eep+2
+-0x1.2e8274p+3, 0x1.ca164p+2
+0x1.fc0cap+0, -0x1.29a8a8p+1
+-0x1.816c8p+0, 0x1.03c58cp+2
+0x1.43488p-1, 0x1.b2b54p+2
+0x1.8d17dp+2, 0x1.14e508p+3
+0x1.279c3cp+3, -0x1.1901ap+1
+0x1.6093ep-1, 0x1.117914p+3
+0x1.c67a98p+2, -0x1.46fb78p+2
+0x1.2a3b1p+2, 0x1.23dc2p+0
+-0x1.ae7684p+1, -0x1.a3d76cp+2
+-0x1.5276c4p+2, 0x1.390898p+1
+-0x1.08fc2ap+2, 0x1.b2e728p+1
+-0x1.c133ep+0, 0x1.8df978p+2
+0x1.330d4p+3, 0x1.7b8b9p+2
+0x1.086748p+2, 0x1.4f5ca4p+2
+0x1.392818p+1, -0x1.21b4bp+1
+-0x1.d1b79p+2, -0x1.28a2b2p+3
+-0x1.87878p+2, -0x1.0d6d82p+3
+-0x1.eb3dep+0, 0x1.2e634cp+3
+0x1.d261p+2, 0x1.b4de28p+2
+0x1.1a4f08p+3, 0x1.298d9p+3
+0x1.0b11a8p+1, -0x1.0550bep+3
+0x1.35016p+2, 0x1.55c688p+2
+-0x1.6d0a16p+2, -0x1.f003dep+2
+-0x1.cdf968p+1, -0x1.47bea6p+2
+-0x1.3801fp+0, 0x1.eb5478p+2
+-0x1.c015p+0, -0x1.131d5cp+2
+0x1.88d83p+0, -0x1.e2dc7p+1
+0x1.0e93cp+0, -0x1.c3fc8p-2
+-0x1.187158p+1, -0x1.3b224p+1
+0x1.04ed8cp+3, -0x1.cfa8f4p+2
+0x1.19dcd8p+1, -0x1.1a549p+0
+-0x1.6f16p-4, -0x1.8c7e4p+1
+-0x1.188aaep+3, -0x1.8ada7p+0
+-0x1.3cd97ep+3, -0x1.8b1e9cp+1
+0x1.c6233p+2, -0x1.8a625p+2
+-0x1.d57036p+2, -0x1.1ed98p+0
+0x1.607bcp-1, 0x1.f355ep+2
+0x1.2dc024p+2, 0x1.dfac2p+1
+-0x1.798b98p+2, 0x1.63bd5p+0
+0x1.60e4f8p+1, -0x1.29909ep+3
+0x1.43ae34p+2, -0x1.07c38p+2
+0x1.08fbcp+3, 0x1.283b8p+0
+-0x1.0363dep+2, -0x1.216848p+2
+-0x1.5fbb68p+1, 0x1.e1ec1p+2
+0x1.120238p+2, -0x1.6e7498p+1
+-0x1.f5cc68p+1, 0x1.66512p+0
+-0x1.2fcf9cp+2, 0x1.cca1p+1
+-0x1.0d69ep+1, 0x1.86af8p-1
+-0x1.e903fp+2, 0x1.655848p+1
+-0x1.9e014p+1, -0x1.148fcp+0
+0x1.453928p+1, 0x1.62b88p-1
+0x1.aa96ep+0, 0x1.cd344p+2
+-0x1.bc9134p+2, -0x1.226cp+3
+0x1.6a4adcp+2, 0x1.f8b708p+1
+0x1.557c1p+1, -0x1.b5ba4p+1
+-0x1.78931p+0, 0x1.280f24p+3
+-0x1.ffffaap+2, 0x1.64bfap-1
+0x1.4c8afp+1, -0x1.8d19dcp+2
+-0x1.62bbd4p+2, -0x1.5ee492p+2
+0x1.0cd3ep+0, 0x1.d3ebp-1
+-0x1.1b7438p+3, -0x1.aa46f8p+2
+-0x1.a967dp+2, -0x1.fe71f4p+2
+-0x1.35501p+0, 0x1.5699c8p+1
+0x1.a7b08p-1, -0x1.954a5ep+2
+-0x1.76705p+0, 0x1.73ac28p+1
+-0x1.dc6a84p+1, 0x1.ec59c8p+2
+0x1.176a3p+1, -0x1.473eeap+2
+0x1.085bap+0, -0x1.81d0bcp+1
+-0x1.63f79ep+2, -0x1.488cc4p+2
+0x1.e468bp+1, -0x1.098904p+1
+0x1.ff0b28p+1, 0x1.954f08p+1
+0x1.80da8p+2, -0x1.40ef4p-2
+-0x1.938a38p+2, -0x1.1059a6p+3
+-0x1.09f60cp+3, 0x1.98eadp+1
+0x1.34f15cp+3, -0x1.4dde4p-2
+-0x1.2d4094p+3, 0x1.a932a8p+2
+-0x1.a94bp-3, -0x1.090c96p+3
+0x1.422c38p+2, -0x1.332cep+1
+-0x1.52e23cp+2, 0x1.88cbd8p+2
+0x1.9f49d8p+2, 0x1.23d498p+1
+0x1.2aec18p+1, -0x1.d0172p+2
+-0x1.2d722ep+3, 0x1.e27a7p+0
+-0x1.54e664p+1, 0x1.436808p+2
+0x1.f34d2p+2, 0x1.6b4a4p-2
+0x1.a9396p-1, -0x1.6de332p+2
+-0x1.d66d18p+1, 0x1.c59608p+2
+0x1.0075dp+2, -0x1.8a2088p+1
+-0x1.2fcc32p+2, -0x1.67040cp+2
+-0x1.1ed8dep+3, -0x1.01139ap+3
+-0x1.aff7d4p+1, 0x1.21ca7p+3
+-0x1.374dep+3, 0x1.1bd1p+0
+-0x1.0fc6bp+0, 0x1.e0fccp+2
+-0x1.5bd628p+1, 0x1.2e50e4p+3
+-0x1.0504a8p+3, 0x1.1bc4fp+3
+-0x1.479758p+2, 0x1.35a774p+3
+-0x1.0ab51ep+2, -0x1.4468aep+2
+-0x1.34106p+2, 0x1.7e5db4p+2
+0x1.20acp-3, -0x1.777684p+2
+0x1.2f5ap+3, 0x1.516de4p+2
+0x1.2c932cp+3, -0x1.ddc538p+1
+-0x1.52236p+1, -0x1.8ac774p+1
+-0x1.866308p+2, 0x1.35da38p+2
+0x1.2942c8p+1, 0x1.010234p+3
+-0x1.13ccp-1, -0x1.f1dd88p+1
+-0x1.02d4f8p+2, -0x1.02b2dp+3
+-0x1.d73498p+2, -0x1.3c2c0ap+3
+-0x1.b699dp+2, -0x1.c5257ep+2
+-0x1.b6109ap+2, 0x1.012f9p+2
+0x1.a1ded8p+2, 0x1.d4d84p+1
+-0x1.3a5c6cp+3, -0x1.f3ccp-5
+-0x1.5a0d66p+2, -0x1.b2e7p-3
+-0x1.1e476ep+2, 0x1.6851p-2
+-0x1.ed34dcp+2, 0x1.d1db88p+2
+-0x1.b952cp+1, 0x1.a99b3p+2
+-0x1.7507bp+0, 0x1.19edd8p+3
+-0x1.3aaeccp+3, 0x1.666da8p+2
+-0x1.4ae71p+0, -0x1.eca528p+1
+0x1.5966ep+1, 0x1.0cc61cp+3
+-0x1.87dbecp+1, 0x1.383bdcp+3
+-0x1.26244p+0, -0x1.1d124p+3
+-0x1.c75758p+2, -0x1.42f3d2p+2
+0x1.25f18p+0, 0x1.1b384cp+3
+0x1.112e18p+1, -0x1.091904p+2
+-0x1.005954p+2, -0x1.33db34p+3
+-0x1.d3a564p+2, 0x1.3026b8p+2
+0x1.08556p+3, 0x1.ebd028p+2
+0x1.507998p+2, -0x1.b12958p+1
+0x1.6080fp+2, -0x1.e366bp+2
+0x1.04dd7p+1, 0x1.ea4478p+2
+0x1.28c344p+2, -0x1.52688p+1
+0x1.50bbb8p+1, -0x1.150c14p+3
+-0x1.7c611p+1, 0x1.1d60d8p+3
+-0x1.0d2b32p+2, -0x1.3a6a5ap+3
+0x1.24274p+3, 0x1.6c6fdp+2
+0x1.11d5ccp+2, 0x1.81e5dp+1
+0x1.755428p+1, 0x1.db9218p+2
+-0x1.0e729ap+3, -0x1.d991e8p+2
+-0x1.2dd756p+3, -0x1.36d034p+2
+-0x1.b92df4p+1, 0x1.7d4aa8p+2
+0x1.ba6bfp+1, -0x1.c36cd8p+2
+0x1.722bp-2, -0x1.020ca8p+2
+0x1.d6af6p+2, 0x1.1c3e4p+1
+-0x1.7166f8p+2, -0x1.c1598p+2
+0x1.92967p+2, 0x1.e4b17p+2
+0x1.a3c4a8p+2, -0x1.4441f6p+2
+-0x1.4f2318p+2, -0x1.3d4d8ep+3
+-0x1.9a0efap+2, -0x1.090974p+1
+-0x1.7df3ccp+2, -0x1.1bdbbp+3
+0x1.159fp-2, 0x1.38023cp+3
+-0x1.a7dfcp+0, -0x1.8ff9e4p+2
+-0x1.b14f5p+2, -0x1.0ec65ep+3
+0x1.2985a4p+3, 0x1.0400ep+2
+0x1.2f7c78p+3, 0x1.2dc7fp+0
+-0x1.696488p+2, 0x1.d00588p+2
+-0x1.2539eap+3, -0x1.a090f8p+2
+-0x1.8d4c88p+1, 0x1.7a3498p+1
+0x1.c960a8p+2, -0x1.c3e1ap+0
+0x1.a1e81p+0, -0x1.010e6cp+3
+-0x1.35e4ecp+2, 0x1.49fd6p-1
+0x1.2ed838p+3, 0x1.78cedp+0
+0x1.676cf8p+2, 0x1.427718p+2
+-0x1.373bb8p+1, 0x1.5ce29cp+2
+0x1.040f58p+3, 0x1.edb058p+2
+0x1.77d71p+1, -0x1.92f0b8p+1
+-0x1.1cbc76p+2, -0x1.a8e1acp+2
+0x1.6956bcp+2, 0x1.25cb88p+1
+0x1.ade4p-2, 0x1.a28fe8p+2
+0x1.3740ep+1, -0x1.ba13a4p+2
+-0x1.a18bd2p+2, 0x1.367f48p+3
+0x1.05ebd4p+3, -0x1.e19644p+2
+0x1.44deep+1, 0x1.193a58p+3
+0x1.12322p+0, -0x1.061794p+2
+0x1.1cda8p+1, -0x1.7c1d56p+2
+0x1.f90e4p-1, 0x1.9832fp+1
+0x1.764998p+2, -0x1.17b9a8p+3
+0x1.15bc64p+3, -0x1.e8644cp+2
+0x1.23c1d4p+3, -0x1.17b93p+3
+-0x1.c34ccp+0, -0x1.50d8f8p+1
+-0x1.45f1c8p+2, -0x1.0437cp+2
+0x1.5533d8p+1, -0x1.ac895cp+2
+0x1.106f54p+3, -0x1.073218p+3
+0x1.d539p+1, 0x1.fab8cp+2
+-0x1.669dep+0, 0x1.09af4p+0
+-0x1.07c49p+3, 0x1.23d3b4p+3
+-0x1.6b13eep+2, 0x1.818e3p+0
+-0x1.61d1f2p+2, 0x1.8590fp+2
+-0x1.0a4afcp+3, -0x1.1f78dap+3
+0x1.88ae5p+2, -0x1.0371fcp+2
+-0x1.119ffap+2, 0x1.2d0fep+2
+-0x1.83525p+0, 0x1.28f2p-5
+0x1.168c3p+1, -0x1.f8bd18p+1
+0x1.df93fp+2, 0x1.32178cp+2
+-0x1.0a869p+2, -0x1.20569p+1
+-0x1.212bbcp+3, -0x1.78868p+0
+-0x1.135142p+2, 0x1.38046p+3
+0x1.6cee6p+2, -0x1.d74ep-2
+0x1.e9df2p+1, 0x1.bf094p-1
+0x1.37b6f8p+2, -0x1.2c6b2p+2
+-0x1.9d19fcp+2, -0x1.0967c2p+3
+-0x1.d9844p+0, 0x1.3b7c6cp+3
+0x1.30b43p+3, -0x1.1bf26p+2
+0x1.ef6538p+2, 0x1.52283p+1
+0x1.c5f488p+1, -0x1.9e6c2cp+1
+-0x1.b87e98p+2, 0x1.0df64p-2
+-0x1.361a5ep+3, 0x1.de627p+1
+0x1.1a066cp+3, -0x1.d2888p+1
+0x1.d68fbp+2, 0x1.30b528p+3
+-0x1.5f8e18p+1, 0x1.028p-6
+0x1.2c53dcp+3, 0x1.03abb8p+3
+-0x1.701db8p+1, -0x1.4e7f4p+2
+-0x1.d9d6dcp+2, -0x1.803a2cp+2
+0x1.6a1158p+2, -0x1.42cc6p+1
+0x1.2322c4p+2, -0x1.8e10c4p+2
+-0x1.b0564p-2, 0x1.8817dp+1
+0x1.224fp+3, -0x1.42052ap+2
+0x1.202c38p+2, 0x1.2448ep+2
+-0x1.013bbp+3, 0x1.08d4bp+3
+0x1.1fa938p+3, -0x1.cf387p+0
+-0x1.2d09e4p+3, 0x1.d382ep+1
+-0x1.fd08acp+2, 0x1.87854p+2
+0x1.45f9bp+1, 0x1.34ca08p+3
+0x1.dbabcp+0, -0x1.0d5f14p+3
+0x1.383b98p+2, -0x1.c7e81cp+1
+-0x1.e7afecp+2, -0x1.f7d87cp+2
+-0x1.8c95cp-1, -0x1.2d9afap+3
+0x1.c4e758p+2, -0x1.a7145p+0
+0x1.71f6dcp+2, -0x1.c5c2f8p+1
+0x1.588a38p+1, 0x1.39c4dp+3
+0x1.fbd02p-1, -0x1.4f2bep+0
+-0x1.93b9p-3, 0x1.3814a8p+3
+-0x1.5510eep+2, -0x1.da076p-1
+0x1.1b109p+3, -0x1.4b828p-2
+-0x1.6d6ff2p+2, -0x1.305c1p+2
+-0x1.21fbp-2, 0x1.9b6b28p+2
+0x1.f332fp+2, -0x1.1acac4p+2
+-0x1.f1dab4p+2, 0x1.56aa8p-1
+0x1.d9d158p+2, -0x1.859eeap+2
+-0x1.8cf916p+2, 0x1.63f56p+1
+0x1.9dfc68p+2, -0x1.997db2p+2
+0x1.dee2p+0, -0x1.0cd50ep+3
+-0x1.7d0f3p+0, 0x1.05922cp+2
+0x1.1db56cp+3, -0x1.4c1fb8p+1
+0x1.85ca18p+1, 0x1.f0e1d8p+2
+-0x1.7a99dcp+1, 0x1.8ca808p+2
+0x1.7cbaep+2, -0x1.2b078p+2
+-0x1.54ec8ap+2, -0x1.9b8256p+2
+-0x1.39e9f6p+2, -0x1.384694p+2
+-0x1.171514p+3, -0x1.eedbbp+0
+0x1.1a2d4p+1, 0x1.33c35p+3
+0x1.d1306p+2, -0x1.f0835ap+2
+-0x1.a0bd96p+2, -0x1.e7b5cp-2
+0x1.01abecp+2, 0x1.32edbp+2
+-0x1.6cd54p+2, -0x1.3f1408p+3
+-0x1.2a2d36p+3, 0x1.b39d6p+2
+0x1.29c538p+2, -0x1.057e6ap+3
+0x1.bae7c8p+2, 0x1.622108p+1
+0x1.a7d3dp+2, 0x1.743cdp+0
+0x1.103ec8p+3, -0x1.2e96e2p+3
+0x1.b20fcp+2, 0x1.5e97bcp+2
+-0x1.160722p+3, 0x1.916b48p+1
+0x1.2a33d4p+3, 0x1.395e6cp+2
+-0x1.93fe58p+1, -0x1.6f5e78p+1
+0x1.89001p+1, -0x1.793a08p+1
+0x1.1b0ac4p+3, -0x1.6f2cbp+0
+0x1.56a06p-1, 0x1.4ec2ep+1
+0x1.2709cp+0, -0x1.e74bep+1
+0x1.1a767cp+3, -0x1.2b500cp+3
+-0x1.133b28p+3, 0x1.a4d24p+0
+0x1.49996cp+2, 0x1.69474p+0
+-0x1.94a28p-1, 0x1.fa78d8p+1
+-0x1.2d05fp+1, 0x1.b0038p+2
+0x1.6149bp+1, -0x1.fb24d8p+1
+-0x1.ea38bp+2, -0x1.aa3b78p+2
+0x1.112578p+2, 0x1.543d9p+1
+0x1.346794p+3, 0x1.0d3d08p+3
+0x1.688cf8p+1, 0x1.4e9ap-5
+0x1.299628p+1, 0x1.32ce04p+3
+0x1.41fe8cp+2, -0x1.145acep+3
+0x1.de6578p+2, 0x1.08da38p+2
+-0x1.7bdcfp+1, -0x1.187b5cp+3
+0x1.028924p+3, 0x1.725f2cp+2
+0x1.33351p+3, -0x1.867fd2p+2
+-0x1.1b2b3p+1, 0x1.f3cc78p+1
+0x1.3e42ep+3, -0x1.abf4p-3
+-0x1.74ebb6p+2, 0x1.ada96p+2
+-0x1.0235p-2, -0x1.0b4e16p+3
+-0x1.8f7336p+2, 0x1.2aa38p+3
+0x1.1f9c2p+0, 0x1.b4b04p-2
+0x1.13f944p+3, -0x1.ac9584p+2
+-0x1.2bef64p+2, -0x1.f097dcp+2
+-0x1.079d96p+3, -0x1.bbed58p+1
+-0x1.30fb34p+3, -0x1.0e4682p+2
+-0x1.3ab484p+2, 0x1.1a2e08p+3
+0x1.2b2df8p+3, -0x1.bcf498p+2
+0x1.8ae4ap+2, 0x1.7242cp+2
+0x1.b9fc38p+2, 0x1.5d4e6p-1
+-0x1.4886e6p+2, -0x1.528c5p+0
+-0x1.70a74p-2, 0x1.41a3ep+0
+-0x1.174a36p+3, 0x1.28852p+1
+-0x1.c6376cp+2, 0x1.02d418p+3
+-0x1.2168f8p+3, -0x1.718f84p+2
+-0x1.95a748p+2, 0x1.007868p+1
+0x1.80a55p+2, 0x1.5b9f3p+0
+0x1.9c21p-1, -0x1.5536b8p+1
+0x1.6bb138p+2, -0x1.479aa2p+2
+-0x1.eeea44p+1, 0x1.555758p+2
+0x1.9976ap+2, -0x1.334ac8p+2
+-0x1.7bde1cp+1, -0x1.7b4p+2
+-0x1.967c8p+2, 0x1.eb102p+1
+-0x1.fa1c34p+1, 0x1.58205p+2
+-0x1.3e8b82p+3, -0x1.d8949p+0
+-0x1.27c0b6p+3, -0x1.36fe38p+3
+-0x1.140dap+0, 0x1.c08c88p+2
+-0x1.af74bp+0, -0x1.e06c36p+2
+0x1.d63738p+2, -0x1.8a3e0ap+2
+0x1.c6d398p+1, -0x1.2bf618p+2
+-0x1.2f1422p+3, 0x1.37ae9cp+2
+-0x1.2cd4ccp+3, 0x1.ac54fp+2
+-0x1.762e5cp+2, -0x1.f3fd58p+2
+0x1.387ecp+2, -0x1.8f61d6p+2
+0x1.6d09cp+2, -0x1.3cfd08p+3
+0x1.3db5c8p+3, -0x1.1f91bcp+1
+-0x1.520db6p+2, -0x1.69047p+1
+0x1.95563p+2, -0x1.9d2734p+1
+-0x1.97353p+0, 0x1.0e57fp+3
+0x1.058b4p+0, -0x1.b915a4p+1
+0x1.c7a9a8p+2, -0x1.2184acp+3
+0x1.2f43e8p+3, -0x1.1301fp+0
+-0x1.2b10eap+3, -0x1.2faa02p+3
+0x1.22665p+3, -0x1.52f1dp+2
+0x1.d1c878p+1, 0x1.63ed18p+2
+0x1.875adp+2, 0x1.bbbfe8p+2
+-0x1.c2c618p+1, -0x1.4ca5cp+0
+-0x1.22f318p+3, -0x1.f384ap-1
+-0x1.34ff48p+1, 0x1.0bbf68p+2
+0x1.1c18b8p+2, -0x1.2e19p+0
+-0x1.3867dp+1, 0x1.30dd2cp+3
+0x1.d434p-2, 0x1.907a6p+0
+0x1.bb1c18p+2, 0x1.6a8a14p+2
+0x1.32cee8p+2, -0x1.756df2p+2
+0x1.9054cp+1, -0x1.0246bcp+3
+0x1.1b6478p+1, 0x1.0b795p+2
+0x1.3902cp+2, -0x1.092efcp+3
+0x1.ffdbb8p+2, -0x1.47cae4p+2
+-0x1.2a7dd2p+3, 0x1.a8abep+1
+-0x1.9eabf4p+1, -0x1.119ab8p+3
+0x1.8a5038p+1, 0x1.09fb14p+3
+-0x1.9042f2p+2, 0x1.1c0eecp+3
+0x1.20d4ep+0, -0x1.aa9f88p+2
+-0x1.1d4dbcp+1, 0x1.1bdd38p+2
+0x1.f5929p+0, 0x1.3a829p+2
+0x1.198188p+3, -0x1.e884f8p+1
+-0x1.f29f66p+2, -0x1.218e8p+3
+0x1.d07908p+1, 0x1.f12e7p+2
+0x1.f45fp-1, -0x1.3279dcp+3
+0x1.d0ddap+1, -0x1.3ea4ccp+1
+-0x1.39507ep+3, 0x1.be888p-1
+-0x1.ab70cp+2, -0x1.045366p+2
+-0x1.a3834ap+2, -0x1.327f6ap+3
+0x1.8995p+2, -0x1.bb38ap+1
+0x1.812fcp+0, -0x1.329508p+1
+0x1.9b9558p+1, -0x1.a24d3p+1
+0x1.eb7978p+2, -0x1.22518p-1
+0x1.8565e8p+2, 0x1.4e50d8p+1
+0x1.5d848p-1, 0x1.3d3cd4p+3
+0x1.67c728p+1, 0x1.2e4f68p+3
+0x1.842eap+1, -0x1.83588p-1
+-0x1.5a57ap-1, 0x1.9b2d98p+1
+0x1.9a1538p+2, -0x1.0277eap+3
+-0x1.d24a14p+1, 0x1.1674c4p+2
+-0x1.c24ba2p+2, 0x1.39491p+2
+-0x1.050d8p-3, -0x1.413ecp+2
+0x1.6c0f5p+1, 0x1.b45928p+1
+-0x1.e0b858p+1, 0x1.d215b8p+2
+0x1.0b33d4p+3, 0x1.405368p+1
+-0x1.ac3162p+2, 0x1.179fd8p+3
+-0x1.1188cap+3, 0x1.1e8fap+0
+-0x1.a1847p+0, 0x1.09eebp+1
+-0x1.2f7e3cp+2, 0x1.3c6f68p+2
+0x1.e6848p+2, 0x1.c6414p+2
+0x1.c910cp+0, -0x1.2a29b6p+3
+0x1.2f6ebp+1, 0x1.49e5ep+0
+-0x1.414f62p+2, -0x1.570e1p+2
+-0x1.1e49e6p+3, -0x1.e7a4b4p+1
+0x1.8069ep+1, -0x1.9d412p+2
+0x1.9636cp+2, 0x1.38cd34p+3
+-0x1.95c142p+2, 0x1.36e9bcp+3
+0x1.3db75p+1, 0x1.3abc88p+2
+0x1.1d8c1p+1, 0x1.d349p+0
+-0x1.3c534p+2, 0x1.0d643p+2
+-0x1.1d34a4p+3, -0x1.1e67eep+3
+0x1.084388p+1, -0x1.20879p+1
+0x1.d5f2bp+2, -0x1.4ba5f6p+2
+0x1.5ac04p+0, 0x1.9c0d9p+0
+0x1.18ec4p-1, 0x1.2a4b98p+3
+0x1.7e08p-1, -0x1.8d9p-6
+-0x1.14ddd2p+2, -0x1.e88bbp+2
+0x1.f831fp+2, -0x1.9bfa8cp+2
+-0x1.189ecp+3, 0x1.92f9bp+1
+0x1.d24fep+1, -0x1.eef5a4p+2
+0x1.af6448p+2, -0x1.94e74cp+1
+-0x1.b6128p-3, 0x1.e6c56p+2
+-0x1.4fbfe8p+2, 0x1.a0308p+0
+0x1.a710ap+2, 0x1.57fbap+1
+-0x1.3d6daep+2, -0x1.920d98p+2
+0x1.081e18p+1, -0x1.c63acp-1
+-0x1.d68d1cp+1, 0x1.14bf48p+3
+-0x1.02be64p+3, -0x1.14d28ap+3
+0x1.d2569p+1, -0x1.2653a8p+1
+0x1.1adb2p+3, -0x1.b2ca8ep+2
+0x1.808b78p+2, 0x1.c48598p+2
+-0x1.3916dap+3, 0x1.8319b8p+2
+0x1.e1d108p+1, 0x1.9e67dp+0
+-0x1.91fe98p+1, 0x1.9d8748p+1
+-0x1.5dce5p+0, -0x1.30bdeep+3
+0x1.5375dp+0, -0x1.e1a3cp-1
+0x1.4267dp+2, -0x1.9057fp+2
+0x1.3136b8p+2, 0x1.c26cdp+2
+-0x1.d864b8p+2, 0x1.00821cp+3
+0x1.7e63fp+2, -0x1.4789p-2
+0x1.8fc9f8p+2, -0x1.3f159p+3
+0x1.63a9ap+0, -0x1.4c56a8p+1
+-0x1.195ap-4, 0x1.08e1d4p+2
+-0x1.29216cp+2, -0x1.9780e6p+2
+-0x1.1eb2d4p+3, -0x1.b1695cp+2
+0x1.0866f8p+3, 0x1.1dfdd8p+2
+-0x1.37822ap+3, 0x1.b427ep+2
+-0x1.165008p+2, 0x1.8b2fep+0
+0x1.bc7b3p+1, 0x1.499668p+2
+-0x1.0ddeb8p+2, 0x1.fcb27p+1
+-0x1.226434p+3, 0x1.cf5b5p+2
+0x1.3a9c7p+2, -0x1.aaa0c8p+1
+0x1.7282p-4, -0x1.a4841p+2
+-0x1.81876p+0, 0x1.03a29p+0
+0x1.d1f8f8p+2, -0x1.44329cp+2
+-0x1.2e31f2p+2, 0x1.3c822p+3
+0x1.1b2b1p+1, 0x1.ccfdbp+0
+0x1.894f3p+1, -0x1.08d31cp+3
+0x1.391be8p+3, -0x1.1f77e4p+1
+-0x1.1b3072p+3, -0x1.09466ep+3
+0x1.bb904p-2, 0x1.07eefp+3
+0x1.8bp-2, 0x1.0d96e4p+3
+-0x1.41d778p+1, 0x1.166bdp+2
+-0x1.0a11bep+2, -0x1.80648p+2
+0x1.8fb89p+2, -0x1.32dc9p+3
+0x1.e5072p+2, 0x1.0909d4p+2
+-0x1.444d02p+2, 0x1.35eeacp+2
+0x1.772148p+1, -0x1.089c58p+2
+-0x1.800a18p+2, 0x1.b6a41p+1
+0x1.53dcbp+1, 0x1.15964p+3
+-0x1.76bccp+0, 0x1.0df0dp+3
+-0x1.129586p+3, -0x1.813aep+2
+-0x1.cd9812p+2, -0x1.2ff38p+0
+-0x1.3dc8dap+3, 0x1.63666p+1
+0x1.41026p+2, 0x1.ad652p-1
+-0x1.13cf8p-2, 0x1.e41ee8p+2
+-0x1.fb0bbp+1, -0x1.82c254p+2
+0x1.314e44p+2, 0x1.77c6d8p+2
+-0x1.c86898p+2, 0x1.f764ap+2
+0x1.29d35p+3, -0x1.9892ep+0
+0x1.0d70bp+2, 0x1.2ebe3cp+3
+0x1.611764p+2, -0x1.a841b8p+2
+-0x1.9b6c7p+2, -0x1.450ffap+2
+-0x1.08a71p+1, 0x1.7e384p-1
+-0x1.cb45e8p+2, -0x1.76a89p+2
+0x1.219cp-1, -0x1.2f774p+0
+-0x1.54923ap+2, 0x1.0e6efcp+3
+-0x1.efadb4p+2, 0x1.e76e7p+1
+-0x1.d26454p+2, 0x1.011d5p+3
+-0x1.23481p+3, 0x1.51d2p+1
+0x1.0574ep+0, -0x1.5efd78p+1
+-0x1.aa9b4p-1, 0x1.b4d478p+2
+0x1.685728p+2, -0x1.2c3e6ep+3
+-0x1.9c9c8p+2, -0x1.02e04ep+2
+-0x1.1f1d7ap+2, 0x1.c1b4p+1
+-0x1.0217bap+3, 0x1.33acf8p+2
+0x1.14b2fcp+3, -0x1.f9d94p-2
+-0x1.215d4ap+3, 0x1.1b754p-2
+-0x1.37ca98p+3, 0x1.02cee4p+3
+0x1.031268p+3, -0x1.32025p+1
+0x1.e1238p+2, -0x1.5901cp-2
+-0x1.6b27d8p+2, 0x1.f6395p+0
+-0x1.13fdc2p+3, 0x1.0040f8p+1
+-0x1.354546p+3, 0x1.ee6ap+2
+-0x1.0aa784p+1, -0x1.e31fd4p+2
+0x1.b22c8p-1, -0x1.27974p+1
+0x1.d005p+2, 0x1.593198p+2
+0x1.17c88p-1, 0x1.391bcp+0
+-0x1.e8ac9p+0, 0x1.20ebc4p+2
+-0x1.6a5fep+0, -0x1.7a223cp+2
+0x1.1ea514p+2, 0x1.fcb54p+0
+0x1.d051a8p+2, 0x1.1a065p+2
+-0x1.c82e4p-2, -0x1.eb9d68p+2
+0x1.f8f46p+1, -0x1.8f14c4p+2
+-0x1.32673cp+3, 0x1.4951a8p+1
+0x1.04ec9cp+3, -0x1.ad5424p+2
+0x1.1e4b68p+3, 0x1.976f48p+1
+0x1.3419p-1, -0x1.22398ap+3
+-0x1.d144ap+0, -0x1.01423p+2
+0x1.5d716cp+2, -0x1.bd45cep+2
+-0x1.b1842p+2, -0x1.50d554p+2
+0x1.c3fbfp+2, 0x1.3c591cp+3
+0x1.19348cp+3, 0x1.48dabcp+2
+0x1.2cfdc4p+3, 0x1.5d808p+2
+-0x1.dca6p-5, 0x1.683478p+2
+-0x1.0a3718p+3, -0x1.218d4cp+3
+0x1.74617p+0, 0x1.1e0f9p+2
+-0x1.9705ep-1, 0x1.5a9828p+2
+0x1.ef42d8p+2, -0x1.d4dc6p-1
+-0x1.7e155p+2, 0x1.a0481p+0
+-0x1.d231p+0, -0x1.330128p+3
+-0x1.143244p+3, -0x1.84adccp+1
+-0x1.ffa558p+1, 0x1.8ece1p+1
+0x1.4b03d8p+2, -0x1.8d731cp+2
+-0x1.adf3cp+0, 0x1.eca2ap+2
+-0x1.00e9ep+3, 0x1.9dd82p+2
+0x1.2af7dcp+2, -0x1.b4fe16p+2
+0x1.c3813p+2, 0x1.a3a5bp+1
+-0x1.b1e42p-1, -0x1.9f1bccp+1
+-0x1.be8c4p+1, 0x1.8374p-3
+-0x1.fac804p+1, -0x1.8d4ccp+0
+0x1.069a3cp+3, -0x1.2c7f78p+2
+0x1.640e4cp+2, -0x1.5b7adp+0
+0x1.ec208p+1, -0x1.0ec4a4p+1
+-0x1.f71ce8p+2, -0x1.2c588ap+3
+-0x1.f14f4p+1, 0x1.180918p+3
+0x1.47aap+0, -0x1.bc11p+1
+-0x1.9ff244p+2, -0x1.2b011p+1
+0x1.c12bap+0, 0x1.2a59p+0
+-0x1.b5713p+0, 0x1.0346p-1
+0x1.31cc68p+2, 0x1.b4535p+1
+0x1.470a5cp+2, 0x1.b0a448p+2
+0x1.7404a4p+2, -0x1.017ea6p+3
+0x1.29779p+2, -0x1.17d28cp+3
+-0x1.63aeccp+2, -0x1.1477ap+0
+-0x1.5821f4p+2, -0x1.d362cp-2
+0x1.baf568p+2, -0x1.0f70fp+3
+0x1.d7e9ep+1, 0x1.3c57ccp+3
+-0x1.fb8e1ep+2, -0x1.1600a2p+3
+0x1.01e62p+1, 0x1.231dep+3
+-0x1.01e24ap+3, 0x1.b2b2a8p+2
+-0x1.10503ap+3, 0x1.fdf6a8p+2
+0x1.272a2p+1, 0x1.6442p+0
+0x1.b1522p+2, 0x1.0cdf8p+0
+0x1.1fdac4p+2, 0x1.ffac3p+1
+-0x1.58a778p+1, -0x1.d3236p+0
+0x1.2bb5ap+1, 0x1.64db9cp+2
+0x1.71c2d8p+2, -0x1.2b2f3p+3
+-0x1.11c322p+2, -0x1.844e6ap+2
+0x1.3e640cp+3, -0x1.b750ecp+2
+-0x1.cb26eep+2, -0x1.bb34f8p+2
+-0x1.707e4p+0, 0x1.6a3e14p+2
+-0x1.3640aap+3, -0x1.41017p+0
+0x1.6e94a8p+2, 0x1.2904ap+2
+0x1.f75e4p-2, 0x1.c57a9p+2
+-0x1.3d6a3ap+3, -0x1.1c1192p+2
+0x1.2ded6p+1, 0x1.842318p+2
+-0x1.c5377p+1, 0x1.29cfb4p+3
+0x1.54d16p-1, -0x1.b69f3p+0
+0x1.35746p+1, 0x1.15c968p+1
+-0x1.3db01ap+3, -0x1.290686p+3
+0x1.2570f4p+3, -0x1.81ccfcp+1
+-0x1.eea0cap+2, 0x1.dd097p+2
+0x1.0e0b8p+3, -0x1.e19844p+2
+0x1.fca4ap+1, -0x1.fa597cp+1
+-0x1.5cc86ep+2, 0x1.4a35e4p+2
+-0x1.a1304p-1, -0x1.7e13bap+2
+-0x1.22161ap+3, 0x1.5dcfp+0
+0x1.2baabp+1, -0x1.9a36p+0
+-0x1.cd7becp+2, 0x1.5ab2p-3
+-0x1.5d7f08p+1, 0x1.86168p-1
+0x1.20ad18p+2, 0x1.d0aeep+1
+-0x1.6ea99p+0, 0x1.e991dp+1
+0x1.9788c8p+2, -0x1.b8f708p+2
+0x1.0c3cb8p+3, -0x1.04b712p+3
+-0x1.05a732p+3, -0x1.cc4e7cp+2
+-0x1.2cf7f2p+3, 0x1.fcbfdp+1
+0x1.3f8d6p+3, 0x1.6615cp-1
+-0x1.fa801p+2, -0x1.29425cp+2
+-0x1.366764p+3, -0x1.150ad2p+3
+0x1.19f108p+2, -0x1.e5a3fp+2
+-0x1.05c6a8p+3, 0x1.d2be88p+1
+-0x1.761cf4p+2, 0x1.43cdc8p+2
+0x1.21773p+3, -0x1.534ad6p+2
+-0x1.28fd5p+1, 0x1.0e4e18p+3
+0x1.d14bep+2, 0x1.2a50d8p+3
+0x1.a1a8cp+1, 0x1.7e69fcp+2
+0x1.38919cp+3, -0x1.06b3p+3
+0x1.b4ca9p+2, -0x1.dedc48p+2
+0x1.b062e8p+2, -0x1.20a7f2p+3
+0x1.e6892p+1, -0x1.21b5ecp+1
+-0x1.c5e534p+1, -0x1.1c99bp+3
+0x1.391b24p+3, -0x1.c226d8p+2
+-0x1.fbcbcp+1, 0x1.f0505p+2
+-0x1.0a6d9ep+2, 0x1.b5ceep+1
+0x1.0c5e38p+2, -0x1.e09d28p+1
+-0x1.2433b8p+3, -0x1.c3599ap+2
+-0x1.503a8p-1, 0x1.2eb0ep+3
+0x1.e1e9c8p+2, 0x1.4e9338p+2
+-0x1.09487ep+3, -0x1.9b14ap+0
+0x1.cb2e4p+1, 0x1.54c34p-2
+0x1.3828ep+3, -0x1.8195a2p+2
+0x1.8f3ee8p+2, 0x1.cdfbfp+2
+0x1.0741d4p+3, -0x1.8ae286p+2
+0x1.850f68p+1, 0x1.f283p-2
+-0x1.45c2ep+2, 0x1.5f35p-2
+-0x1.fd9a6cp+1, 0x1.1382f8p+3
+0x1.3b382p+1, 0x1.8ff5dp+2
+0x1.3b9b28p+3, 0x1.c9a3p+0
+0x1.c9694p-1, -0x1.498aa8p+2
+0x1.9038ap+1, -0x1.219bap+0
+-0x1.983a4p-1, -0x1.960174p+2
+0x1.eec79p+2, 0x1.c0b5a8p+1
+0x1.a11f58p+2, -0x1.533a8p-1
+-0x1.22a994p+2, 0x1.a9cdap+1
+0x1.187c2p+1, 0x1.327518p+3
+-0x1.3c91c8p+2, 0x1.1cc6p+0
+-0x1.8ae398p+2, -0x1.e9cfe6p+2
+0x1.9c8bfp+2, 0x1.2ed39cp+2
+-0x1.250f08p+1, 0x1.a69e5p+2
+-0x1.962f18p+2, -0x1.ed5abep+2
+-0x1.d58e7p+2, -0x1.0b188cp+3
+0x1.ddd45p+1, 0x1.a60c1p+2
+-0x1.6143c4p+1, -0x1.25ca5cp+3
+-0x1.302b1ap+2, 0x1.15e8p-1
+0x1.366c4p+1, -0x1.ff309cp+1
+-0x1.968p-2, -0x1.09d454p+2
+0x1.31ebap+0, 0x1.318cap+0
+0x1.26eabp+3, -0x1.e65918p+1
+0x1.c1c06p-1, -0x1.10ac8p-1
+-0x1.23d1fap+2, 0x1.fe002p+2
+0x1.650464p+2, 0x1.8ef76p+0
+-0x1.f6c77p+2, 0x1.f3688p+2
+-0x1.d92b24p+2, 0x1.ae644p+2
+0x1.42ef4p-1, 0x1.3d602p+1
+0x1.ef288p+2, 0x1.05ff3cp+3
+0x1.52b4p-3, 0x1.172e84p+3
+0x1.45e1cp+1, -0x1.7280fp+1
+0x1.e8715p+2, -0x1.9f7696p+2
+0x1.e9c55p+1, 0x1.e6d64p+2
+-0x1.c934cp-1, -0x1.8a5eep+0
+0x1.e0e2ep-1, -0x1.8e3dep+2
+-0x1.ab23a8p+2, -0x1.986eacp+2
+0x1.0b9cap+1, -0x1.273bp-3
+-0x1.ad0ffcp+2, 0x1.0dc0fp+1
+-0x1.2cac24p+2, -0x1.71cp-5
+-0x1.fafbcp+0, 0x1.613594p+2
+-0x1.628494p+1, 0x1.c3b91p+2
+0x1.5a1338p+2, 0x1.d12d8p+2
+-0x1.a62db8p+2, 0x1.11bc7cp+2
+0x1.7fed4cp+2, -0x1.db05a4p+1
+0x1.914528p+1, 0x1.c9b4e8p+2
+-0x1.e52d3cp+1, 0x1.81d8fp+1
+-0x1.9f1ad8p+2, -0x1.714d2ap+2
+-0x1.374b7cp+2, -0x1.e854f6p+2
+0x1.9131p+0, -0x1.421fap+1
+0x1.70f45cp+2, -0x1.3355cp+3
+0x1.72615cp+2, -0x1.3717fp+1
+-0x1.1f81c4p+3, 0x1.90d7bp+2
+-0x1.b958p-2, 0x1.5970fp+1
+-0x1.f3ab8p-3, 0x1.ac528p-2
+-0x1.fac2e4p+2, -0x1.0a035p+3
+0x1.d24fbp+2, -0x1.8ade3cp+2
+-0x1.51dd6p-1, 0x1.35d8cp+2
+-0x1.a5e5a8p+2, 0x1.33223cp+2
+-0x1.e52ep-3, -0x1.1c631p+0
+-0x1.93cd58p+2, -0x1.29p-3
+-0x1.637f4p-1, 0x1.a9e96p+0
+0x1.d3b45p+2, -0x1.c5b1a8p+2
+0x1.317acp+3, -0x1.2387ccp+1
+-0x1.739218p+2, 0x1.c20c7p+2
+-0x1.25dc7ap+3, -0x1.be92cp-2
+-0x1.4c17cep+2, -0x1.957076p+2
+0x1.36f8ecp+2, 0x1.599dbp+1
+0x1.d99e8p-2, 0x1.08af48p+3
+0x1.02e95p+0, 0x1.36214p-1
+0x1.b1a2cp+2, 0x1.10858cp+2
+-0x1.127d7p+0, -0x1.1ed2fp+2
+-0x1.a0db4cp+1, 0x1.0b69ccp+3
+-0x1.78947cp+2, -0x1.26dfe6p+2
+-0x1.8a8be8p+1, -0x1.743978p+1
+0x1.fc2c8p+2, -0x1.0710f4p+2
+-0x1.792bcep+2, 0x1.31034cp+3
+0x1.070ep-1, 0x1.e748b8p+2
+0x1.1a5748p+3, 0x1.69dbcp+0
+-0x1.6012ecp+2, 0x1.53bb18p+1
+0x1.17a5f4p+3, 0x1.2f8cbp+3
+-0x1.74bff2p+2, -0x1.61844ep+2
+-0x1.ed9cdcp+1, -0x1.63d814p+2
+-0x1.b6f434p+2, 0x1.3a64fcp+3
+-0x1.67a45ep+2, -0x1.dd8264p+2
+0x1.63c88p-1, 0x1.6d7588p+1
+0x1.07344p+2, -0x1.276e5cp+2
+0x1.37698p-2, -0x1.0f3274p+3
+0x1.541fe8p+1, -0x1.00f294p+3
+0x1.92bce8p+2, -0x1.834f6p-1
+0x1.b7d06p-1, -0x1.84d144p+2
+-0x1.477124p+1, -0x1.d4813cp+2
+0x1.279afcp+3, -0x1.5a66ep-1
+-0x1.7fddp-4, -0x1.3d54fp+0
+0x1.0e3438p+3, -0x1.ba1cfp+2
+-0x1.12f13ap+3, -0x1.3de9ccp+2
+-0x1.285848p+2, 0x1.24bep-1
+-0x1.0e7a64p+2, 0x1.1d6c18p+2
+0x1.fe8a08p+2, 0x1.695a9p+1
+-0x1.4fc5p+0, -0x1.e8eaep+0
+0x1.cddf8p+1, 0x1.127afp+1
+0x1.6ddfep+2, -0x1.d527bap+2
+0x1.0a5ec4p+3, 0x1.9462cp+2
+0x1.ff85dp+2, -0x1.1b5a6cp+3
+-0x1.23012cp+2, -0x1.c34ea8p+1
+-0x1.878aa4p+2, -0x1.456dfcp+2
+-0x1.df257ep+2, 0x1.400b68p+2
+-0x1.f64f1cp+1, 0x1.935568p+1
+0x1.1132p-5, 0x1.29e9c8p+2
+0x1.b42d2p-1, 0x1.ec2dep+2
+-0x1.836c5p+1, -0x1.b18f04p+1
+0x1.8135cp+2, 0x1.8b7aap+2
+0x1.10584p+0, -0x1.aca6dp+0
+-0x1.281e64p+3, 0x1.22d968p+3
+0x1.4a54dp+2, 0x1.03cef8p+2
+-0x1.f7b54p-1, 0x1.2a7284p+2
+-0x1.dd2018p+2, -0x1.5edff8p+1
+-0x1.c0d9cp-1, 0x1.fec04p+2
+0x1.086524p+2, -0x1.6eb80ep+2
+-0x1.2752cap+3, 0x1.63bbf4p+2
+0x1.62892p+0, -0x1.62e37p+0
+0x1.adea58p+2, 0x1.896c88p+2
+-0x1.bc97p-1, 0x1.37f17p+2
+-0x1.c0f3cp-1, 0x1.d3bac8p+1
+-0x1.133f02p+2, 0x1.f1d42p+2
+-0x1.4633c8p+1, -0x1.af2bdp+1
+0x1.ab528p+1, -0x1.188a02p+2
+-0x1.f9c15cp+2, -0x1.c1609ep+2
+-0x1.a6082p-1, 0x1.41d6p+0
+-0x1.6a4024p+2, 0x1.3e858p+2
+0x1.faf64p+1, 0x1.2cee88p+2
+-0x1.a97ae4p+2, 0x1.dc2e28p+1
+0x1.2dfc5p+1, -0x1.7ffddp+0
+-0x1.549bf2p+2, -0x1.07ea38p+3
+-0x1.cd0848p+1, 0x1.0bf194p+2
+0x1.72a49p+2, -0x1.451bcp-2
+0x1.bd241p+1, 0x1.4e41p-4
+0x1.0e3ee4p+2, -0x1.f01178p+2
+0x1.1cf7e4p+3, -0x1.76014p+2
+-0x1.2c9416p+3, 0x1.a552e8p+1
+0x1.37ffccp+3, -0x1.0df312p+3
+0x1.e7cacp-2, 0x1.133e98p+3
+0x1.0258dcp+2, -0x1.29ee2p+1
+0x1.bf248p+0, 0x1.6457dp+0
+0x1.09be88p+3, -0x1.70b94p-1
+-0x1.4526p-2, -0x1.39e01p+0
+0x1.68fb9p+0, -0x1.04cb16p+2
+-0x1.848978p+1, -0x1.2a0908p+3
+-0x1.6b4f2p+2, -0x1.75927p+2
+-0x1.7dfcep+2, 0x1.05b76p+2
+0x1.7078a8p+2, 0x1.a3b818p+2
+0x1.0116b4p+2, 0x1.78cecp+2
+-0x1.be766ap+2, -0x1.8c8934p+1
+-0x1.a0a35ap+2, 0x1.38fd9cp+3
+-0x1.3aba16p+2, 0x1.2cp+2
+0x1.7306e8p+2, -0x1.612196p+2
+0x1.0d4fp+0, -0x1.06bc72p+3
+0x1.c595f8p+1, -0x1.ae84p-5
+0x1.66796p-1, 0x1.0f99ep+3
+-0x1.161a64p+2, 0x1.168ccp+2
+0x1.ddc29p+1, 0x1.aec0e8p+2
+-0x1.cbd0f8p+2, 0x1.4ac94p-2
+-0x1.45e82p+0, 0x1.41165cp+2
+0x1.b08af8p+2, -0x1.a5ecfp+2
+0x1.22c35p+2, 0x1.518888p+2
+-0x1.497d4p-1, 0x1.55d85p+2
+-0x1.daff48p+1, -0x1.16fep+3
+-0x1.3a1dcp+3, -0x1.18813cp+1
+0x1.0cdbccp+3, 0x1.3b1d3p+3
+0x1.a9fbp-4, 0x1.4d32e8p+1
+-0x1.2c0e86p+3, -0x1.c195f4p+2
+0x1.075b24p+3, 0x1.89b51p+2
+-0x1.66a6ap+0, 0x1.114dp-3
+-0x1.9ea71ap+2, 0x1.220eb8p+1
+0x1.4ccf1p+1, 0x1.d1a67p+2
+0x1.bbd3p-4, -0x1.05f0f4p+1
+0x1.05a87p+3, -0x1.0fef6p+2
+0x1.4cc458p+2, 0x1.6e79d4p+2
+0x1.a5956p+1, 0x1.3ccce8p+1
+-0x1.3de3eap+2, 0x1.2785a8p+3
+0x1.d1e338p+2, -0x1.02a6b8p+3
+-0x1.1936ap-1, -0x1.51488p-3
+0x1.c44428p+2, -0x1.0e9348p+2
+0x1.23a68cp+3, -0x1.51678cp+1
+0x1.e046ap-1, 0x1.8354d8p+2
+-0x1.26184p+2, -0x1.3389ep+3
+0x1.f4ff98p+2, -0x1.c2ec78p+1
+0x1.1afe3p+2, 0x1.7758dp+1
+-0x1.9d514p-1, -0x1.333b0cp+3
+0x1.be256p+2, -0x1.5aacp-1
+-0x1.6c0bf2p+2, -0x1.01561cp+2
+-0x1.6d8p-5, 0x1.16bb7p+2
+-0x1.007658p+1, 0x1.09a338p+2
+-0x1.764f58p+2, -0x1.ea5ec4p+2
+0x1.1c9238p+3, 0x1.bc884p+1
+0x1.f8e7ap+0, -0x1.4e7b88p+1
+0x1.fd5a1p+1, -0x1.3dececp+2
+-0x1.1a4eb6p+2, 0x1.d1ba98p+2
+0x1.d38p+0, -0x1.42de8cp+2
+0x1.62365p+2, -0x1.2e50d8p+1
+0x1.88603p+1, -0x1.78178p-3
+0x1.f4b53p+2, 0x1.381d4p-2
+-0x1.b49cp+0, 0x1.3b1188p+1
+-0x1.a43f66p+2, -0x1.63b65ap+2
+0x1.21bb98p+2, -0x1.91d61p+0
+0x1.bfbp+0, 0x1.906b7p+2
+0x1.0cbf34p+3, -0x1.0bb68p-2
+-0x1.53a03p+0, 0x1.6af48p-2
+0x1.d14748p+2, 0x1.9b965p+2
+0x1.382a18p+2, -0x1.04dffap+3
+0x1.b73ap-3, -0x1.066bacp+1
+-0x1.446836p+2, -0x1.7e7ep-1
+0x1.e62a68p+2, -0x1.32c592p+3
+-0x1.37e224p+2, -0x1.7e2f14p+2
+0x1.cb2d5p+0, -0x1.cf7724p+2
+-0x1.55f6fcp+1, -0x1.b6cdecp+1
+0x1.cca698p+2, 0x1.2ce68p+0
+-0x1.55cc04p+2, 0x1.9175p+0
+0x1.835d7p+2, -0x1.ee1638p+2
+0x1.717d1p+1, 0x1.46286p+0
+0x1.756238p+1, -0x1.c0686cp+1
+-0x1.352864p+3, -0x1.d9d004p+1
+0x1.3126ap+3, 0x1.fc6b7p+2
+0x1.e52ad8p+1, -0x1.e79cfap+2
+-0x1.31eec8p+2, 0x1.f9925p+1
+0x1.65bfcp-2, 0x1.9ccdp-1
+-0x1.35d7a4p+2, -0x1.a49ed4p+1
+-0x1.c50d8p+0, -0x1.7fca7p+2
+-0x1.a67e9cp+2, 0x1.b92cep+2
+-0x1.08be86p+3, 0x1.6aa6acp+2
+-0x1.e7a848p+1, 0x1.d2c6ep+1
+0x1.30aaa8p+3, 0x1.5d8efp+0
+-0x1.a476e4p+1, 0x1.ae33ep+0
+0x1.20691cp+3, -0x1.5ff6b8p+1
+-0x1.9b0d7p+2, -0x1.200598p+3
+0x1.32631cp+3, 0x1.e11c58p+2
+0x1.d8231p+2, -0x1.690c2p+2
+-0x1.ba9fa4p+1, -0x1.fda978p+1
+-0x1.d912fp+2, 0x1.99189p+2
+-0x1.9bc6p+1, 0x1.4f803p+1
+-0x1.dbe15ap+2, -0x1.82459cp+1
+-0x1.ac275ap+2, -0x1.e70afcp+2
+-0x1.06499p+3, -0x1.42075p+0
+-0x1.4afe84p+1, 0x1.7a1eap+0
+0x1.63535p+1, -0x1.75ca9cp+2
+-0x1.0580dp+3, 0x1.0d9d98p+1
+0x1.ad859p+1, -0x1.e46be8p+2
+0x1.32c38cp+3, 0x1.320b64p+3
+-0x1.850844p+1, -0x1.1a4892p+3
+0x1.ca2abp+0, -0x1.695f9p+1
+-0x1.d50fecp+1, 0x1.8b1bp+2
+0x1.cffdbp+2, 0x1.397f88p+2
+-0x1.a5344p+0, -0x1.2e941p+2
+-0x1.a7a7bp+0, -0x1.044bp+0
+-0x1.6f6ac4p+2, 0x1.1600b8p+3
+-0x1.fda4p-5, 0x1.d9ed8p+2
+-0x1.ffb7cp-2, -0x1.5aedacp+1
+-0x1.3e957cp+1, -0x1.bcf848p+1
+-0x1.586d96p+2, 0x1.90afbp+1
+-0x1.16a37p+1, 0x1.e15628p+1
+0x1.e4c2f8p+2, 0x1.6e52ap+2
+0x1.9c35p-1, 0x1.c1dd5p+0
+-0x1.1655ccp+3, -0x1.143acp-1
+0x1.39a0a8p+3, -0x1.8f24e4p+2
+-0x1.54582ap+2, 0x1.07ea34p+3
+-0x1.1c648ep+3, -0x1.e41bc4p+2
+0x1.35c56p+3, -0x1.5ac23ep+2
+0x1.a02ep-2, -0x1.2c375cp+2
+0x1.af43p+2, 0x1.f4bccp+1
+-0x1.7bd5p-1, -0x1.eeca54p+2
+-0x1.0a3338p+1, -0x1.599142p+2
+-0x1.855974p+2, 0x1.9106p-1
+0x1.8e26ap+1, 0x1.d158b8p+2
+0x1.145b2cp+2, 0x1.16b2ep+0
+0x1.d2c9cp+0, -0x1.3fe22p+1
+0x1.96a66p+2, 0x1.6d62bp+1
+0x1.58447p+1, 0x1.24f3c4p+3
+-0x1.b5111cp+2, -0x1.47b0dp+2
+0x1.34023p+3, -0x1.13dbbap+2
+-0x1.42f5c4p+2, -0x1.deb538p+2
+0x1.c2e2ep+2, -0x1.724ed8p+2
+-0x1.a63b4p+2, 0x1.38ddd8p+2
+0x1.c00638p+1, -0x1.7c263p+2
+0x1.3c016p-1, -0x1.9f7bdp+0
+-0x1.c6b3ap-1, 0x1.22c2a8p+3
+-0x1.25a176p+2, -0x1.5adc2ep+2
+0x1.3c92dp+1, 0x1.ce1ea8p+2
+-0x1.790674p+1, -0x1.a1f924p+2
+-0x1.d4594p-1, -0x1.feab26p+2
+-0x1.1b2174p+2, 0x1.db513p+1
+-0x1.2df61ap+3, -0x1.c2738p-2
+-0x1.273874p+2, 0x1.4c034p-2
+0x1.00781cp+3, -0x1.23cc6cp+3
+-0x1.d19316p+2, -0x1.62936cp+2
+0x1.bcbcc8p+2, -0x1.349bep+2
+0x1.36827cp+3, 0x1.1196a4p+3
+0x1.829e98p+2, 0x1.c1c8ap+1
+0x1.c06eep+1, -0x1.789d3p+1
+0x1.12ebp-1, -0x1.91a92p-1
+-0x1.0b24d8p+1, -0x1.182124p+2
+0x1.4daef8p+2, 0x1.34dbdp+1
+-0x1.2406fp+1, 0x1.8b33bp+2
+0x1.9704ep-1, 0x1.37ff6cp+3
+-0x1.4997b4p+2, 0x1.9ff9ap+1
+0x1.cffcfp+0, -0x1.7da74p+0
+0x1.f453ep+2, -0x1.73cdcp+2
+-0x1.a1e16p-1, -0x1.f484bcp+2
+-0x1.90d21ep+2, 0x1.58e81cp+2
+-0x1.55514p-1, 0x1.3e48a4p+2
+-0x1.05a7b4p+2, 0x1.70c1e8p+2
+-0x1.9de05p+0, -0x1.51cfap-1
+-0x1.ec641p+0, 0x1.2530e4p+2
+0x1.9c49f8p+2, 0x1.6091ep+0
+-0x1.d9654ap+2, -0x1.07ffdp+1
+-0x1.16d554p+3, -0x1.38bdbap+3
+0x1.7b325p+2, 0x1.221f74p+3
+0x1.0b731cp+2, -0x1.1d5a5ap+2
+0x1.2e5e8cp+2, 0x1.ea8118p+1
+-0x1.21c0d6p+3, -0x1.839498p+1
+0x1.2a50d8p+3, 0x1.cc02bp+2
+0x1.6f967cp+2, -0x1.dd48c4p+1
+-0x1.3921dp+1, -0x1.98b26p+0
+0x1.3d46ep+1, -0x1.9ed24p-1
+0x1.292848p+3, -0x1.61d71p+0
+0x1.cc578p-1, -0x1.25f36p+2
+0x1.1f93f8p+3, -0x1.17c4c4p+2
+-0x1.218bp+0, -0x1.9934p-1
+0x1.28f94p-2, -0x1.882274p+2
+-0x1.a0d574p+2, 0x1.36d758p+3
+-0x1.212e74p+3, 0x1.7f0bb8p+2
+-0x1.3ec9bp+1, -0x1.3ea8ap+0
+-0x1.3f3f78p+3, 0x1.59733p+1
+-0x1.23f7acp+1, 0x1.bf8688p+2
+0x1.5231p-1, -0x1.a795c6p+2
+-0x1.0f617ep+3, 0x1.005638p+3
+-0x1.ed8ec6p+2, 0x1.d0d118p+2
+0x1.deb1e8p+2, -0x1.26095ep+2
+0x1.103bdcp+3, -0x1.4a1834p+2
+-0x1.e6815p+2, -0x1.83656p+1
+0x1.38abcp+0, -0x1.9fe9fcp+2
+0x1.1e29a4p+3, 0x1.2620ep-1
+0x1.7dcad8p+2, -0x1.3233dep+3
+-0x1.bb8fp-4, -0x1.960eecp+1
+-0x1.2bae58p+2, 0x1.23ebe4p+2
+-0x1.9e5f48p+1, -0x1.07c3ap-1
+0x1.43ce8p+1, -0x1.95531p+0
+-0x1.1136d8p+3, -0x1.94e72cp+2
+-0x1.1486e2p+3, 0x1.279b4cp+3
+-0x1.c99744p+2, -0x1.aad54p-1
+-0x1.79aaep+1, 0x1.61d8dcp+2
+-0x1.6856f8p+2, -0x1.9d5d64p+1
+0x1.3da6fp+1, 0x1.265434p+2
+-0x1.76ab8p-2, 0x1.f993dp+0
+0x1.6658ep+1, -0x1.8a84cp+2
+0x1.2682d8p+3, 0x1.959c68p+2
+-0x1.0697f8p+3, 0x1.aadc08p+2
+0x1.18eed4p+2, -0x1.64b474p+2
+0x1.446e9cp+2, 0x1.0a094p+0
+-0x1.df0f3p+0, -0x1.7f3a44p+2
+0x1.35595p+1, 0x1.09005p+0
+-0x1.275232p+2, 0x1.6decf8p+2
+-0x1.947ea4p+2, -0x1.ac7cc8p+1
+0x1.2db388p+3, -0x1.963d24p+2
+-0x1.6b9fa4p+2, 0x1.96806p+0
+0x1.264e4cp+3, 0x1.a291cp-1
+0x1.6b5d64p+2, -0x1.313508p+3
+0x1.320138p+3, -0x1.e8144p+1
+0x1.b5cfcp+1, 0x1.9e3b7p+2
+-0x1.2125a6p+3, 0x1.1ba63p+1
+-0x1.fe22fcp+1, -0x1.944dbp+0
+0x1.45e75p+0, -0x1.e288dap+2
+0x1.db3e2p+1, -0x1.a878f8p+1
+0x1.982058p+1, 0x1.1e64dp+1
+0x1.e711ep+2, 0x1.fab4ap+1
+-0x1.2d284ap+3, 0x1.42686p+0
+-0x1.73becep+2, -0x1.2ef6cp+2
+0x1.b7396p+0, 0x1.3bc38p+0
+0x1.404cp+2, -0x1.6d6082p+2
+-0x1.5126b8p+1, 0x1.066e98p+3
+-0x1.eeb9ap+0, 0x1.123178p+3
+0x1.0f572p+3, -0x1.c85b5cp+2
+-0x1.5e3b3p+1, -0x1.af7894p+2
+0x1.e05bcp+2, -0x1.b5f7d4p+2
+-0x1.a63fbcp+2, -0x1.1717f4p+1
+-0x1.b40a4ap+2, 0x1.dfe98p-2
+-0x1.933b34p+1, -0x1.0d1292p+2
+-0x1.c689b6p+2, -0x1.342f14p+1
+-0x1.c063b8p+1, -0x1.135becp+3
+-0x1.6e1398p+1, 0x1.7c68ep-1
+-0x1.b73416p+2, 0x1.3409ap+3
+0x1.6c9d8p-2, -0x1.24f546p+3
+0x1.1c1dcp+2, -0x1.b8e5a4p+2
+-0x1.5fef6p+0, 0x1.11a19p+3
+-0x1.b6f324p+2, 0x1.2efb88p+2
+0x1.8474p-1, -0x1.162eap+3
+0x1.1b1be4p+3, 0x1.a9bfp+2
+0x1.22c7cp-1, 0x1.8bc18p-1
+-0x1.ea7ddp+0, 0x1.af72cp+0
+-0x1.4e104p-1, 0x1.a76d8p+0
+-0x1.af0928p+2, -0x1.1585b2p+2
+0x1.32d3ap+0, 0x1.9696e8p+2
+0x1.ded2c8p+2, 0x1.11e6d4p+2
+-0x1.0b5308p+1, 0x1.0eb304p+3
+-0x1.5e2ap+0, 0x1.0208bp+2
+-0x1.0e1f66p+2, 0x1.11199cp+3
+0x1.16deb4p+3, -0x1.dda0a8p+1
+0x1.38784cp+3, -0x1.2abc84p+2
+-0x1.567c7cp+2, -0x1.0fc80ep+2
+0x1.1596b8p+2, -0x1.98c6ap+2
+0x1.e1078p-2, 0x1.138fdp+3
+-0x1.c30fa2p+2, 0x1.b74ae8p+2
+0x1.009228p+1, 0x1.d574ap+2
+-0x1.7076p-4, -0x1.174004p+3
+0x1.86354p-1, -0x1.11745p+1
+0x1.6f0d58p+1, 0x1.1e75f4p+3
+-0x1.90d7f8p+2, 0x1.6e1a44p+2
+0x1.8b17ep+2, -0x1.08d3f8p+3
+0x1.7e29ap+2, 0x1.503cbp+2
+-0x1.1203e2p+3, 0x1.07993cp+3
+-0x1.436c58p+2, 0x1.21d26p+1
+-0x1.42b73p+1, 0x1.37c354p+3
+0x1.069b28p+1, 0x1.45de7p+1
+-0x1.9b1d78p+1, 0x1.747f78p+2
+-0x1.cf9848p+1, -0x1.82a82p+0
+0x1.ffa79p+1, 0x1.22d2a4p+3
+-0x1.27768p+3, 0x1.d0c88p-3
+-0x1.f8008p-3, -0x1.b81d8p+1
+-0x1.2f274ap+3, 0x1.001e1cp+2
+-0x1.c7c3cp+0, 0x1.12a9ep+0
+0x1.1f695p+2, 0x1.253a88p+2
+0x1.f73d2p+2, -0x1.378c24p+2
+0x1.27342p+3, -0x1.2a36bp+2
+-0x1.028522p+3, 0x1.4529bp+2
+0x1.a64b3p+1, -0x1.19b22cp+3
+0x1.d715ap+2, -0x1.38fee8p+3
+0x1.d4a21p+0, 0x1.20478p+3
+-0x1.49bf14p+1, 0x1.25109p+1
+-0x1.a51e8cp+2, 0x1.fddb8p-1
+-0x1.0b68c4p+3, -0x1.e92dc2p+2
+0x1.416f94p+2, -0x1.dd96ap+2
+0x1.d5249p+1, 0x1.3a19e8p+2
+0x1.e0f3ap+2, 0x1.f99ba8p+2
+0x1.12b18p+1, 0x1.cbc3p-4
+-0x1.610bd4p+2, -0x1.e33ebp+0
+-0x1.7ad7e8p+2, -0x1.346edp+0
+0x1.8c52ep+0, 0x1.307c18p+2
+-0x1.75ed3ap+2, 0x1.136c04p+3
+0x1.020448p+2, 0x1.68f94cp+2
+-0x1.af65d4p+2, 0x1.d6bap-4
+0x1.39cb1p+3, 0x1.a8e55p+2
+-0x1.62688p-3, 0x1.8de58p+0
+0x1.3755d8p+1, 0x1.de60cp+2
+-0x1.2e0042p+3, 0x1.306074p+3
+0x1.9d6a88p+1, -0x1.6eaecp-1
+-0x1.ba1e7cp+2, -0x1.9a86d4p+2
+-0x1.29945cp+3, 0x1.7022c8p+1
+0x1.63c0dp+1, -0x1.24b36cp+3
+0x1.1ce278p+2, -0x1.6153b4p+2
+-0x1.030c1p+0, 0x1.8a1bb8p+1
+0x1.2ec78p+2, 0x1.f754fp+1
+0x1.993da8p+2, 0x1.efeap+2
+-0x1.7ac2p-5, -0x1.d271ecp+1
+-0x1.b77bc8p+1, -0x1.49943p+2
+-0x1.78a854p+2, 0x1.c3ad6p+0
+-0x1.c3ce06p+2, -0x1.7ab84p-2
+-0x1.eefa74p+1, 0x1.3d09bp+3
+0x1.cf1aap+2, -0x1.24aae4p+3
+-0x1.9369a8p+1, 0x1.3bb8b4p+2
+-0x1.116614p+1, -0x1.b9686cp+2
+-0x1.f09e5cp+1, 0x1.18f188p+1
+0x1.1d2d2cp+3, -0x1.b9dfecp+1
+0x1.0e96f8p+3, -0x1.fa324cp+2
+-0x1.2107b8p+3, 0x1.5672b4p+2
+-0x1.450b48p+1, 0x1.03ec64p+2
+-0x1.51236p+1, 0x1.63bbp-2
+0x1.473cfp+2, 0x1.7fd628p+2
+-0x1.41be66p+2, -0x1.b455b4p+1
+0x1.147298p+3, -0x1.b6dcc2p+2
+0x1.adfc9p+0, 0x1.e5c588p+1
+-0x1.906cep+1, -0x1.bc50b8p+2
+0x1.80a06p+0, 0x1.197f18p+3
+-0x1.e9bfb4p+1, -0x1.3626p+3
+0x1.08548p-2, 0x1.a7912p+0
+-0x1.85c73p+1, -0x1.de0ac6p+2
+0x1.24e8bp+2, -0x1.78cfdp+0
+0x1.34c46p+3, -0x1.2056ep+2
+-0x1.abd73p+0, -0x1.aa7148p+1
+-0x1.a14eb4p+2, 0x1.a70adp+2
+-0x1.47a7b8p+2, -0x1.045bbap+3
+0x1.d3df2p+2, 0x1.a2632p+0
+-0x1.0bc4fcp+1, 0x1.5e783p+1
+-0x1.d300f8p+2, -0x1.1ba47p+3
+-0x1.341388p+3, -0x1.3d4364p+2
+-0x1.8b121p+0, -0x1.380d02p+3
+0x1.2c1198p+3, 0x1.942d2p+2
+-0x1.601068p+2, -0x1.cfae4ep+2
+0x1.3bcbfcp+2, 0x1.247b74p+2
+-0x1.f2954p-2, 0x1.57dep-1
+0x1.9f8968p+2, -0x1.529dc8p+1
+0x1.069acp+1, -0x1.2fa396p+3
+-0x1.06123ap+3, -0x1.80ef64p+2
+-0x1.e36b24p+2, 0x1.e53618p+2
+-0x1.84ce2ep+2, 0x1.fdc83p+1
+0x1.98702p+1, -0x1.0d365p+0
+-0x1.a4486ep+2, 0x1.0bc68p-3
+-0x1.4dc97p+0, -0x1.63668ap+2
+-0x1.7d2522p+2, 0x1.273094p+2
+0x1.2583b4p+3, 0x1.44152p+2
+0x1.e87558p+1, -0x1.8b41cp-1
+-0x1.17c3d4p+1, 0x1.20f1e8p+3
+-0x1.3cde5p+1, -0x1.efbc5p+0
+0x1.b2ae48p+1, -0x1.28fc22p+2
+-0x1.bea74p-1, 0x1.ece36p-1
+0x1.af706p+2, -0x1.26192cp+2
+0x1.cf1a68p+1, -0x1.a8c564p+2
+-0x1.21aeecp+3, 0x1.5572ep+2
+0x1.70964p+1, 0x1.8b6228p+1
+-0x1.01a1a8p+2, 0x1.8f78ep+1
+0x1.f9274p-1, 0x1.882a38p+1
+-0x1.3a036cp+3, 0x1.874778p+2
+0x1.8d22bp+2, -0x1.e1603p+0
+0x1.0204ap-1, 0x1.7534fp+0
+0x1.b09938p+2, 0x1.01e1fcp+2
+-0x1.2f2a4p-2, 0x1.44d4b8p+1
+0x1.a926fp+1, -0x1.2f9964p+1
+0x1.0f312p-1, 0x1.01dd1p+3
+0x1.077ecp+0, 0x1.f13d5p+2
+-0x1.0f37p-2, 0x1.b6d81p+0
+0x1.6e022p+2, 0x1.aa3aep+2
+0x1.ae5ce8p+2, 0x1.be37p+0
+-0x1.234c9ep+3, 0x1.501968p+2
+0x1.4eca6p-1, -0x1.74d09p+0
+-0x1.07a2ep+0, 0x1.114d68p+3
+-0x1.85271p+0, 0x1.0b7984p+3
+0x1.ba69bp+2, -0x1.52577p+2
+0x1.9999p+1, 0x1.72ad3p+2
+0x1.2f91ap+3, 0x1.6a2b2cp+2
+0x1.7b921p+1, 0x1.1e32p+0
+0x1.cadf88p+2, -0x1.0e020ep+3
+0x1.02be7p+0, -0x1.37e06ep+3
+-0x1.464deap+2, 0x1.b00c6p+1
+-0x1.a3725p+0, 0x1.f47dap+1
+0x1.ce564p+2, 0x1.29284p+3
+-0x1.f6707cp+2, 0x1.21fa08p+1
+0x1.99e0ap+2, -0x1.50c1eap+2
+-0x1.4f3bb2p+2, 0x1.d168fp+0
+-0x1.60fecp-1, 0x1.6f0a6p+0
+0x1.28ae6p+2, 0x1.2159c8p+3
+0x1.0b2c1p+3, 0x1.27c644p+3
+0x1.b6a36p+0, -0x1.2efcc4p+2
+-0x1.6296cp+2, -0x1.5885ap+0
+0x1.2b40bp+2, 0x1.24a7acp+3
+-0x1.0be3p-1, -0x1.2d8a22p+3
+0x1.edc9ep+2, 0x1.052928p+1
+0x1.883228p+2, -0x1.e954fp+0
+0x1.8b198p-3, 0x1.921p+1
+-0x1.e797dp+1, 0x1.29b094p+2
+-0x1.395e2p-1, -0x1.6ec0ep-1
+0x1.f21008p+1, -0x1.f321bp+2
+0x1.43c18p+2, 0x1.31ad3cp+3
+0x1.dff0d8p+2, -0x1.f62328p+1
+-0x1.5b8eaep+2, -0x1.6c9628p+2
+0x1.c63d58p+1, 0x1.3f1f9p+3
+-0x1.bf7688p+2, -0x1.6aa628p+2
+0x1.39236cp+3, 0x1.d1634p+0
+0x1.179ff8p+2, 0x1.27f77cp+2
+-0x1.336e7p+3, 0x1.16f5p-3
+0x1.80d0fp+2, -0x1.6ec856p+2
+-0x1.2d134p+0, -0x1.3e920ep+2
+0x1.b3483p+0, 0x1.decf98p+2
+-0x1.144bfap+3, -0x1.0131aap+3
+0x1.4ff1b8p+2, -0x1.c7d892p+2
+-0x1.396dd8p+1, -0x1.35284ap+2
+-0x1.e8ba1p+1, -0x1.8e51ecp+1
+0x1.988178p+1, 0x1.a107c8p+2
+-0x1.140014p+2, -0x1.acc7e4p+2
+-0x1.eea8ap+2, -0x1.d5dccep+2
+-0x1.3709ap+1, -0x1.1244bap+3
+0x1.1ce98p+1, -0x1.86725cp+2
+-0x1.867f1p+1, 0x1.fa32p-4
+-0x1.c480cp+0, 0x1.c133p+0
+0x1.f1e4e8p+2, -0x1.f95a28p+2
+-0x1.1da168p+3, 0x1.1931e4p+3
+-0x1.973234p+1, 0x1.4d6c1cp+2
+0x1.009dbcp+3, -0x1.390448p+1
+0x1.35189p+3, -0x1.d35836p+2
+-0x1.8e85c2p+2, -0x1.11bad6p+2
+0x1.f05048p+2, -0x1.9f368p-3
+-0x1.149778p+3, 0x1.971edp+0
+0x1.69d72p+1, -0x1.30a1a4p+1
+-0x1.fc4516p+2, -0x1.1276eep+2
+0x1.481748p+1, -0x1.449a7p+2
+0x1.ac594p-2, 0x1.ea85ap+2
+-0x1.5c7574p+2, 0x1.a02058p+2
+0x1.e5b4a8p+2, 0x1.00a24p+1
+-0x1.811dap+0, 0x1.a9a78p+0
+-0x1.bf7b42p+2, 0x1.2781fp+0
+0x1.6c9c2p+0, -0x1.dc9cb8p+2
+0x1.f639dp+1, -0x1.07da6p+3
+0x1.61a0d4p+2, -0x1.2861b8p+1
+0x1.0be778p+2, -0x1.bb66f8p+2
+0x1.76e9p-3, -0x1.982baep+2
+0x1.9f1a6p+2, 0x1.03c5e4p+2
+-0x1.8caa5cp+2, -0x1.3b09fep+3
+-0x1.003d38p+3, 0x1.786e68p+1
+0x1.0d714p-1, 0x1.76abp+1
+-0x1.3afb7ap+3, 0x1.2a1e6p+3
+0x1.1a5764p+3, 0x1.a86c1p+1
+-0x1.4fa8dp+0, -0x1.9c2cbcp+1
+0x1.ff72c8p+1, 0x1.38d6fp+2
+-0x1.3d18p-4, -0x1.48145cp+1
+0x1.1a77c8p+3, -0x1.beaad8p+2
+-0x1.cff7cap+2, 0x1.192fdcp+3
+-0x1.db406p+1, -0x1.0c79e2p+3
+-0x1.1b0a38p+3, 0x1.e68a98p+2
+0x1.a12d6p+2, -0x1.77ef0ep+2
+0x1.76094p+0, 0x1.06df8cp+2
+0x1.bac3fp+2, 0x1.8174ap+1
+-0x1.c55e6p+2, -0x1.4952p-1
+0x1.20b76cp+3, -0x1.203a06p+3
+0x1.274b2p+0, -0x1.06e694p+2
+0x1.7a457p+1, 0x1.3dec28p+3
+-0x1.c0b4ep+2, -0x1.04da42p+3
+0x1.f45e6p+1, 0x1.b64b8p-1
+-0x1.0a53b8p+3, 0x1.16766p-1
+0x1.123818p+2, -0x1.304cccp+3
+-0x1.2ed6p+0, 0x1.531fecp+2
+0x1.e76a18p+1, 0x1.a9d158p+1
+0x1.1e4b8p+3, -0x1.c260ccp+1
+0x1.f5a278p+2, 0x1.92b2a8p+2
+0x1.6bd6p-3, 0x1.2bbf5cp+3
+-0x1.1e3edcp+2, -0x1.41af8p+0
diff --git a/benchtests/libmvec/atanpi-inputs b/benchtests/libmvec/atanpi-inputs
new file mode 100644
index 0000000..9fba46e
--- /dev/null
+++ b/benchtests/libmvec/atanpi-inputs
@@ -0,0 +1,806 @@
+## args: double
+## ret: double
+## includes: math.h
+0x1.642175414a222p-3
+0x1.32f96343ff094p47
+0x1.63961340f55e3p-4
+-0x1.404c80c42d2d7p3
+0x1.ff0297a7f4cf9p-4
+-0x1.3514d0a630343p2
+-0x1.9cd792d24de9cp-13
+0x1.48de0536fa639p-26
+0x1.df679233e616cp3
+-0x1.3672036e3b5dbp46
+-0x1.a6af31fe26a67p1
+-0x1.601447d82000cp-23
+0x1.6978a3d8cdd0cp34
+-0x1.bcf7074f6ad00p-20
+0x1.4560113d34322p1
+-0x1.88e3f71039a4bp-4
+0x1.016652052d70ep6
+0x1.4eeee5387c40fp-11
+0x1.1a93e2edc9a70p-1
+0x1.2a86a6b000b1bp19
+0x1.b550a52791570p19
+0x1.4f55e0fd66533p6
+0x1.179893d68a175p0
+0x1.c587a48440d49p18
+0x1.c4d736b34755ep41
+-0x1.0b00d1e309baap15
+0x1.d3ddd7a4105b8p-17
+0x1.907795ee90c71p1
+0x1.1c0ee51bf3fbbp-26
+0x1.6e21857f657b5p-3
+0x1.522870681be34p0
+-0x1.47fc357b48019p2
+-0x1.fc80d2478d003p44
+0x1.6b6af109c6d11p-2
+-0x1.557b744e3f2b2p-2
+-0x1.c0bd72f9dcc6fp-3
+-0x1.5dad543b37a02p2
+-0x1.d95b35b36eadep38
+0x1.645042fa42207p-2
+-0x1.139444200b144p1
+-0x1.28a691f56455fp-24
+0x1.d97ff36594800p-2
+-0x1.c46e817205691p-1
+0x1.189121c162006p-21
+0x1.b22526da1b4b3p-25
+0x1.89097738a1f84p23
+-0x1.3de8b3a71241ep-4
+0x1.d539d73aa3a6bp4
+0x1.9f3aa3d8be109p-8
+-0x1.28df31604ae5fp-2
+-0x1.a5ba03c7f21c6p39
+-0x1.0aa65539c9639p44
+-0x1.596756edc8d29p-1
+0x1.bf89523d6d9a8p18
+0x1.245712c9030a1p-9
+-0x1.e70de078fe520p-3
+0x1.0a6a653edc9c8p-1
+0x1.cc69116b071cdp-2
+0x1.2f24c0cf8fcb2p-16
+0x1.ed2ac30efc4e7p41
+-0x1.db4970624d850p-4
+-0x1.bb1260bff835cp-4
+0x1.d685f1157cf4ap-4
+-0x1.27241256d29b8p1
+0x1.ec5380eff6d2ap-3
+-0x1.fd7d8132290bep-1
+0x1.228426a24d54dp-17
+0x1.2ea847880a2cdp39
+-0x1.89a5c5d485ab4p3
+-0x1.fbd930c90d22cp3
+-0x1.86674787bedeap3
+0x1.ab27809f97987p1
+0x1.c17c653258848p2
+0x1.a3f615b4aa2afp-4
+-0x1.e8bff4a769203p46
+0x1.2fbb90ef75a25p-4
+0x1.d9d246c3e5da7p10
+0x1.1adf65737ce63p2
+-0x1.4bbf56383d2c4p-20
+0x1.1bc9009943672p2
+-0x1.84cd8442450bcp24
+-0x1.05cbc2307bc60p0
+0x1.b18fc1de83969p-2
+-0x1.a63bf1a32c82cp-26
+0x1.08e7e57369c93p4
+0x1.97e8f20d0a9f8p33
+0x1.1358340c23f9dp-13
+-0x1.f3a987156a953p-15
+0x1.cc4fe36fcebc5p-3
+0x1.d858d5bee5222p-2
+0x1.8911076ba1dfep-5
+0x1.5ab4754566467p1
+0x1.854547561eabbp1
+-0x1.830ce306fc8c4p-13
+0x1.b181a4ed4c25ep-19
+0x1.f77112499c880p30
+-0x1.5124040e757ddp43
+0x1.751c061e72f3dp-1
+0x1.b88d87c4c86b2p-8
+0x1.52c5b76c6ef89p-10
+0x1.e89130ee99ce5p-4
+0x1.2a2ed7a0b1956p-1
+-0x1.47b533d254eb8p3
+0x1.b4d0b69a8f4a8p-24
+0x1.8316a4af1bf68p-18
+-0x1.9e1ef1ccdd020p15
+-0x1.88bde5f29b2d9p3
+-0x1.365034bff4761p0
+0x1.7e40940c2d5adp-17
+-0x1.2c37625bfd76dp-18
+0x1.707642d37610fp0
+-0x1.afd1d0135cf31p3
+-0x1.4b0d1755bbf42p-11
+0x1.c4ed75b07c727p0
+-0x1.5e2db71616c7ap1
+0x1.050223b1cd624p3
+-0x1.3b3db4aa80820p-10
+0x1.5ccb8047d5d1ap12
+0x1.175282b52f29cp0
+0x1.aabc424c47eafp9
+-0x1.1a90445a04e18p0
+0x1.3da941dc72acdp2
+0x1.501726cf3e259p-12
+-0x1.1b3006e74e325p4
+-0x1.ad42977bf9a2bp-1
+0x1.73d0e25d9335ap-3
+0x1.0a514560b1915p-4
+0x1.9b955619c595bp-3
+0x1.c1bde2d25803bp-2
+-0x1.c9c450db85015p-24
+-0x1.b93f27a390fc9p-3
+0x1.394074cfa62d3p1
+0x1.815072f52a2e6p0
+0x1.1e52d6ee6069fp-1
+0x1.1f90737198ea5p-19
+0x1.13341218923f7p-23
+0x1.348b0774c87ffp2
+0x1.d2580731da42cp2
+0x1.87b5a06e57762p-5
+0x1.b40fd58aea62ap0
+0x1.9cd365175d628p28
+-0x1.4094703aac68bp-24
+0x1.56af03795574fp21
+-0x1.e189800006571p-26
+-0x1.9dfb51f7b789cp47
+0x1.9bc2e73963ca7p11
+0x1.b5a1c0632322cp0
+0x1.205e5539779c2p51
+-0x1.6c47a5b0217f6p2
+0x1.791cd37782384p-2
+0x1.231d31372c140p1
+0x1.91e2d31efbcaap-3
+0x1.34fa969626571p30
+-0x1.6bc04360963b5p-11
+0x1.8add0065da1d5p-4
+-0x1.d346e1877a7fdp-2
+-0x1.725697ff5c03dp1
+0x1.a8e2a686fd172p-1
+-0x1.8bd725c48f410p3
+-0x1.3b0537b22c0bbp-1
+-0x1.2c0db2781aad0p28
+0x1.4c6a110727b7fp-16
+0x1.b8d171996cbe1p0
+0x1.e6c6d70c497a0p19
+-0x1.15a9f10771286p2
+-0x1.c30f24893d7a3p-3
+-0x1.d73aa26a08a23p38
+-0x1.58b7549a93d13p-4
+0x1.169012651035fp1
+0x1.197ee4c04ae17p25
+0x1.3fba00276eae3p1
+0x1.941d03c4bf6a6p-4
+0x1.7f21c64e2abb7p-2
+0x1.7581d56332d79p0
+0x1.971980a7e2435p27
+-0x1.e44690996dde4p-8
+-0x1.3133113da7775p-20
+0x1.31d201884c815p30
+0x1.1f46672b184b2p-20
+-0x1.bbbc31b0259d6p7
+-0x1.ff6f625bf7eadp-1
+-0x1.3dd6a5e841573p-1
+-0x1.294b2242985c5p-5
+0x1.80c6d17d3b82ep41
+0x1.66a703915eafdp-4
+0x1.c16431985801dp28
+-0x1.66cc363cc169cp-13
+-0x1.445ac6d7de615p29
+-0x1.78d803eac6a4fp-17
+0x1.7d17f2f5981bdp-4
+-0x1.be3452bcdc974p28
+0x1.83dff4dfc4757p42
+0x1.451781735f844p14
+-0x1.4dab41db1c970p3
+0x1.3373037f37040p2
+0x1.20f7623057a1cp-4
+0x1.b74c37f7006cfp36
+0x1.6d17f13894ea6p-8
+-0x1.9084f58ffff58p1
+-0x1.c57ef7f9833e1p-3
+-0x1.943ce31bfd282p-26
+-0x1.75a42576fe1cdp1
+0x1.ff0257a993250p2
+-0x1.63ef308e427d4p0
+0x1.de26003f5ba7ep16
+0x1.15333549fa76fp29
+0x1.66bfb50c269e7p0
+0x1.a49604cc4d7f9p-4
+-0x1.15003315471d9p-4
+-0x1.38bed20a51ff5p-9
+0x1.7d97f5b7805ddp-19
+-0x1.7a3244a0e1b3ep-2
+0x1.ed0681d4ee226p50
+-0x1.15a691a22afc6p-4
+-0x1.d2c15149a171cp48
+-0x1.d395408686509p1
+0x1.d121d5a063487p-27
+-0x1.159dc08e6bae4p-18
+0x1.835914ed4ac69p46
+-0x1.f45bc1593e631p-2
+-0x1.abaf42742e1aep0
+0x1.f67cc57a82279p22
+-0x1.3cdc56ba8ad80p0
+-0x1.5a8f042e5c06dp-4
+0x1.306774727b9c8p-5
+-0x1.0f21118d78a86p1
+-0x1.abbcc62ae1185p-17
+-0x1.ff75940794858p3
+-0x1.6048b6174f2dap-3
+-0x1.84f4968e9a1a0p3
+-0x1.ecc9025c45c61p-9
+0x1.d9cd03dc0d910p-18
+0x1.cd846319c00c5p-3
+0x1.6366066bd94a6p3
+-0x1.8ebc74865b7b3p1
+-0x1.b87c63e47576cp-3
+0x1.c45cb0d4685f5p-3
+-0x1.e702b4a6029fcp35
+0x1.fc6300b9b675ap3
+-0x1.3f43a795e244ep0
+-0x1.f1cd009ef1604p3
+-0x1.d2fbd2cc79418p11
+0x1.907fd4f15d9d3p-10
+0x1.a371220d3cd1ep43
+0x1.df8544d34e26dp26
+0x1.acb3279e8da17p-18
+0x1.b1ea21e59afd9p-4
+-0x1.e0dff1828b454p-4
+0x1.ef38b267b4663p39
+-0x1.baba241cd2232p-13
+0x1.4fe7c7cd05a69p46
+-0x1.988073a34d2c8p29
+0x1.7599e0ac9a522p-8
+0x1.251b26c85badap52
+-0x1.a27c560a7da35p0
+-0x1.f091c7c2304a2p17
+-0x1.d0e1114b97abfp-13
+0x1.33ee35cf8c72ap1
+-0x1.e714e1fed73c4p-2
+0x1.1292e4e843885p-3
+-0x1.03fcc540c9867p22
+0x1.a53c8268c5213p-2
+-0x1.f16e3196353c0p-20
+0x1.e88a97bf39b0cp14
+0x1.4f00111aae17fp13
+-0x1.388bf2c171982p-1
+0x1.0f70b2319de14p-3
+0x1.e95a75a9609e3p-1
+-0x1.1047552b4d153p2
+0x1.091e73082965cp0
+0x1.2560a7de1090ep-26
+0x1.b7fde3097d182p-20
+0x1.c7f115eabfdedp-4
+-0x1.e99523e282a43p40
+-0x1.960706b024814p-3
+0x1.6ca4d098808a9p41
+-0x1.782a50dd85179p50
+-0x1.26e3c42a5f2d2p1
+0x1.ca282036f2b8cp-10
+0x1.87d031409e3e4p-17
+0x1.a80f97461a0f4p-3
+0x1.66ed5379b1601p45
+-0x1.081bb51f6296ep21
+-0x1.a51801c3b0ab4p-3
+-0x1.f9af91b1e0eacp-4
+0x1.f59650108c48fp1
+0x1.085c309bbe310p0
+-0x1.b9fea5e346036p1
+-0x1.453542b905ad4p24
+-0x1.e66c14b55c117p1
+-0x1.90a6830407ac7p40
+0x1.9bc93234caf93p26
+0x1.4b94104f5f41ap-3
+-0x1.c7b564e75a382p50
+-0x1.c2b250afb59e8p13
+-0x1.bfb283faeefbfp2
+-0x1.173235dbdbca5p-10
+-0x1.ac62c7b5e878bp-4
+-0x1.c2a9461c28ecdp-17
+0x1.1e1bf4bfee9b2p1
+-0x1.c6a1a78876ab6p0
+-0x1.e6fb5111565c8p3
+-0x1.8932b58866bcfp-19
+0x1.6407a070f3a3fp12
+0x1.87a1b1adaed03p-4
+0x1.e5ebf4ac465b1p-4
+-0x1.f8d5e0b5c2957p20
+0x1.42836589a8c0dp31
+-0x1.d1ad755010ed1p-4
+0x1.3d1f16896735ep-1
+0x1.fdaba0fd40c7cp31
+0x1.3311135efe06dp-3
+0x1.b5dc02c3070d2p-2
+-0x1.04d741eec5058p-23
+0x1.a80bc579c9a9bp3
+0x1.4766230792559p1
+-0x1.a5cbe4d7cc609p-3
+-0x1.ba1d23d80c32fp-11
+-0x1.daaf8434d9034p-13
+-0x1.c65d358dac3fep-11
+-0x1.3f4da10042b42p2
+0x1.262fa4579b063p-7
+0x1.914e60ffdbed8p-4
+-0x1.efac261144868p-9
+0x1.ce397251fa408p-4
+0x1.be05d28ca250ap-11
+-0x1.7479b7fa984ddp-3
+-0x1.ac20c42062d2fp2
+0x1.9a487118946dap-4
+0x1.2a124744f9fa4p47
+0x1.b1981261f9020p-1
+0x1.fbf7179ce5846p-2
+0x1.22fbd75358604p-23
+0x1.b1b2a4bcce5acp34
+0x1.84e62689c678dp-19
+-0x1.0b3bf5d136f5fp-25
+0x1.f93ce18d93227p-15
+0x1.bbd3b6a42bc58p-22
+-0x1.47b315f8194ebp27
+-0x1.827896462fb0cp-18
+0x1.2947c23116c19p-2
+0x1.3466e4652adedp1
+-0x1.23c2a01c6daddp-11
+-0x1.5831b4a29e94ep-2
+0x1.4a7fb41fb32ccp-24
+0x1.77544628d33f4p2
+0x1.40a5220c05f84p43
+-0x1.859503fac777cp-1
+0x1.629111fdc02f9p49
+0x1.f72960081155dp-24
+0x1.100cb00f41850p0
+-0x1.1280f391f830bp8
+-0x1.2e93552200855p1
+-0x1.4621063cd9ecdp-12
+0x1.1c4111533addep-25
+-0x1.569560309d6bbp-22
+-0x1.7a8124168d622p3
+0x1.17fba47954943p-4
+0x1.0672546df1e40p-4
+0x1.3157a7fbb3b2ap2
+0x1.a82f370a40ce4p2
+-0x1.a8fac6ce90f3cp1
+0x1.0f28d09b57a07p0
+0x1.da30a55a75636p2
+-0x1.4a8a0783b2ccdp-3
+-0x1.79e674173ab88p-1
+0x1.c89b61641fceep31
+-0x1.0f8107e6388fbp3
+-0x1.f720f120f5f1fp-22
+0x1.144b44598ac02p-4
+-0x1.ceb152c076922p-3
+-0x1.4b12e43d683a4p0
+0x1.c0ae8156c4455p-3
+0x1.85c10724ee68cp-3
+0x1.3c4635592b9ffp-3
+-0x1.d59892bee5390p-4
+-0x1.cd1280ceab8c4p-3
+0x1.b622b71aa922bp8
+-0x1.2795c18e21649p-15
+-0x1.639d32c619c4bp-19
+-0x1.e8f917ef054dfp-8
+0x1.c9eca4e44a7b1p1
+0x1.be86276e10fa9p3
+0x1.750cd40dd63b8p-24
+-0x1.033ab125bb64ep-18
+-0x1.9679b2912fcecp-4
+0x1.f7b3a1afd048dp-23
+-0x1.9f2863bcb1fd6p1
+0x1.c7fed1051dcb2p4
+0x1.c23ec470a9239p-7
+-0x1.1e5006f62ba49p1
+-0x1.0d9f216fea290p3
+0x1.bd8340ad169bap46
+0x1.dac8831aa29d9p3
+0x1.7c191598763c2p1
+-0x1.121aa313ac95bp33
+-0x1.b0996534e93cep-2
+-0x1.6c8353699c9c6p-1
+-0x1.5df8208f06792p3
+-0x1.4657113ffa73fp28
+0x1.48a901159abe7p0
+0x1.70e4b3448f927p50
+-0x1.e120d621edccap-4
+-0x1.4f2900d44caa5p1
+-0x1.848165627b209p-5
+-0x1.4cd082b565a11p-16
+-0x1.d9d2d7967af18p-1
+-0x1.222be1230bd8dp0
+-0x1.361e6586e20d9p16
+-0x1.3ddd364c29946p-19
+0x1.3ee601f53dafap-18
+0x1.e37ab68eb3013p45
+-0x1.0b8a978bd97b9p2
+-0x1.9589707e8a6ddp-20
+0x1.b7ca368b81375p-4
+0x1.2a7b114a80983p0
+-0x1.8c0fd1048891ep-4
+0x1.c32454b620d43p-26
+0x1.853192a0e3bbbp-14
+0x1.172b96d182f82p-2
+0x1.4156741896c30p-3
+-0x1.dd08573a1dc08p-3
+-0x1.f112f2dfd0c38p23
+0x1.f07ef18d186acp-9
+0x1.b0b643dc8187bp-2
+0x1.edf9044a400ccp-26
+-0x1.420ee09a253bbp-16
+-0x1.ce5f43fa6c0e8p0
+-0x1.b49ed6fe33c01p-2
+0x1.bc1e67b736d93p27
+0x1.18f252a5a70f2p-1
+0x1.3bd3528a6b5c3p-25
+0x1.042f039297e45p0
+0x1.890e26c77777ap2
+0x1.ec331761880b9p39
+-0x1.12aec65364402p2
+-0x1.b09600801c6c9p7
+0x1.4c14331304537p36
+-0x1.366b32ae15936p-9
+-0x1.d04011bd2f923p-27
+-0x1.bb73e632734cap51
+-0x1.22df928d0db2bp14
+-0x1.84d2c65e8a597p-4
+-0x1.248ce4d82f9e1p-3
+-0x1.a89a16ab8fc98p41
+-0x1.22061604a7bbep-1
+-0x1.9b7790ad6cfcap37
+0x1.e146126a58363p-20
+0x1.8bf9d0bee4587p-6
+-0x1.74eec1eb48a38p18
+-0x1.1eca65e42c0e2p-24
+-0x1.5f6e27219b443p5
+-0x1.95f64657f34b0p1
+-0x1.ad0923f0c8747p-14
+-0x1.71b7472c93381p2
+-0x1.e88ec0fa2b8e2p40
+0x1.0efad07b1325cp-2
+-0x1.d614b725644c2p-11
+-0x1.87f104d664989p-4
+0x1.db8bf75a3dabcp25
+0x1.18a07441e9358p-3
+0x1.c52552071ba9dp2
+0x1.4eee532e1cf42p-2
+-0x1.acd7a7d0cb2d2p49
+-0x1.efdbb63ba4cd9p3
+-0x1.c0dbd4011e3dbp14
+0x1.a8b9053cd4ae7p-26
+0x1.950f208f9f314p-3
+0x1.62bc1534e8779p1
+0x1.ec8712224e21dp5
+-0x1.dcf2f55094df3p-4
+-0x1.13a10025de14cp1
+-0x1.275ce549521b9p-1
+-0x1.2d3995ba1b17bp-5
+-0x1.a76630717c0c6p3
+-0x1.b2ec655611d3ep38
+-0x1.9bd4a62004f97p-20
+-0x1.49dcb6df53770p1
+-0x1.2b34c0811030cp-3
+0x1.99ee70ec910aap-21
+0x1.35b201aa1e70bp-3
+-0x1.92a3000ee8dd4p-2
+-0x1.d69d60b48249fp3
+0x1.eee73555cf4d5p-3
+-0x1.07de748dacd3ap12
+-0x1.a8ea7383f8f09p8
+-0x1.eca3120c1f7cep1
+-0x1.8b4b26d9f4eabp51
+0x1.167433f50737ep-23
+0x1.585657c46c25ap-20
+0x1.0e0447b473e54p2
+0x1.b28d209b03f59p-4
+0x1.9a8d34b2b2855p-25
+0x1.948ac6afc0f37p3
+-0x1.563cf374c073fp-4
+0x1.fa49e687bce32p42
+0x1.c42c2624133c2p48
+-0x1.001e573a69113p2
+-0x1.4dfb17453411bp-3
+-0x1.d9b9b553ab45fp23
+0x1.55496452db316p3
+-0x1.8420d7f1ac33ep3
+-0x1.ac7cd42b0f63ep2
+0x1.ce2970c35394cp2
+-0x1.de2ce25feb1e3p-16
+0x1.4fe2152fd9407p-2
+0x1.4d4233d0400d2p1
+0x1.f4c640fdd48b2p-10
+0x1.1512c1316465ap37
+0x1.b584b29dc1d4bp22
+-0x1.695e973f8db94p-1
+0x1.7373d677b7679p24
+0x1.f899a57b746b9p-22
+-0x1.f5ad761b38217p0
+0x1.daf950a02a029p1
+0x1.a9c47461369bcp-7
+0x1.a66902e961fe5p-2
+-0x1.f6bc5292eadcep2
+-0x1.0377673b5656cp20
+-0x1.269297562701dp-4
+0x1.13d1e1e922a15p3
+-0x1.ddf1d5cfbfb4dp-20
+0x1.6c21328fa2eacp0
+0x1.953fe3186fbacp0
+-0x1.2ed5d49aee19cp-15
+-0x1.d3e9f10d61fa8p-4
+0x1.5315517278bffp-4
+-0x1.aeeb36df95b57p26
+0x1.9f55b3bd1d398p2
+0x1.894151536709bp3
+-0x1.93a3d5c645e3fp22
+-0x1.37803538f3548p43
+-0x1.d5dde10bc588fp-23
+0x1.f145117569f10p4
+-0x1.ca23009d83541p0
+-0x1.fc4063d4a4afep23
+-0x1.ec88c7edb5ae2p-6
+-0x1.2d5973fcaa823p-21
+0x1.437a141589287p2
+-0x1.9104e694ef44ap-2
+-0x1.b70572032d576p-7
+0x1.d10452e3eae69p2
+0x1.2874b443d01bcp0
+0x1.fa66d12189a72p20
+-0x1.303e443c556d3p46
+0x1.4b5d557e8fe56p44
+0x1.602bb4e791b87p-20
+-0x1.158f81cbcb150p-3
+-0x1.36a3939175212p3
+-0x1.826092fe525c4p-19
+-0x1.a72da4879bcb1p-26
+0x1.839626b74c51ap-1
+-0x1.bd2da6527d628p5
+0x1.3257e0dc99c46p-23
+-0x1.b3ebe0c2317c6p3
+0x1.1164968b6d3d2p-4
+0x1.bd5404092a649p30
+-0x1.dd0e00246fdf1p-3
+-0x1.4167e56920aa2p6
+-0x1.b035570fa59c8p-1
+0x1.7853f4cf90bbcp15
+0x1.bc20a74a4c2dbp-18
+0x1.0e3ee3d24bf54p3
+-0x1.95aab56378e9cp45
+-0x1.4930a7aa51e8dp1
+0x1.ea77407c9a5f1p-1
+0x1.4fac93644de62p-3
+0x1.a2ed87cc0f417p43
+0x1.14d2d0a33df56p2
+-0x1.3473f6f77b6c5p11
+0x1.b647101dc4177p3
+-0x1.4e0b92acc66bfp23
+0x1.2a3797d36ee30p-4
+0x1.ce10973c013ebp-14
+0x1.b6cef57406772p2
+-0x1.326762c9ea656p-22
+0x1.56473079b28aap24
+-0x1.46f3d42d9a8dap-11
+-0x1.6d4e52e373151p-7
+0x1.622a0570fc4abp11
+-0x1.7e0bb32e21466p-6
+0x1.55a1a3d809d3ep1
+-0x1.d7492480e11f5p32
+0x1.835730d6b3ef6p-18
+0x1.2d9cf79f070e8p-9
+-0x1.6cee95c1d9445p26
+0x1.45c58441f2822p-3
+0x1.2f01d75200b30p21
+-0x1.014c5172af434p0
+0x1.9d96552d416d8p3
+0x1.f878a3fc8f55fp-3
+0x1.1206f1aa29231p1
+0x1.998bc480cbf5dp-3
+0x1.2160c0ab74e78p41
+0x1.66cce4923857ap-6
+-0x1.47bf27bfba3adp-3
+-0x1.88b9442658583p-13
+0x1.baf0076743831p2
+-0x1.d7a664adbb965p-22
+0x1.8bfbf37ef0c90p22
+-0x1.a2b137086be2cp9
+0x1.b8fa2667197acp29
+0x1.2e9ee649d720ap-2
+0x1.fd42f19ae5dfdp-15
+0x1.b4c7c70a22018p38
+0x1.6fee027ca714ap-18
+0x1.b986a428fdeebp-9
+-0x1.f63c6744cafc4p-7
+-0x1.860b9508a01c2p-4
+0x1.c9dbe26d13605p-7
+-0x1.e5af65a0da055p-4
+0x1.2f48357a95e60p-3
+0x1.afac3209945f4p-11
+0x1.e24230fc8430fp-1
+0x1.555f1605043d9p40
+-0x1.42c7b6d8c6b89p-4
+0x1.f5e416fab1768p24
+0x1.4379506da570ep10
+-0x1.c38b2527d3a6ap0
+-0x1.ecf007e1a6728p-3
+0x1.636eb2220b2c2p-18
+0x1.7609e702937b8p2
+0x1.2db5d31780fa5p3
+-0x1.221c240b15183p-3
+0x1.084b249033af8p-19
+-0x1.69c8f54230d4cp2
+-0x1.5458a621ac511p0
+0x1.c8b53281fbad0p-15
+0x1.0c8ac2d6bf8cep-22
+-0x1.28b804bea1e7fp3
+0x1.919d64a75bf39p-9
+0x1.4c0b078f754a4p-1
+-0x1.dd7405983ab97p-20
+0x1.ba2103a39b033p19
+-0x1.b21fc106586d2p0
+0x1.eacb558bbd5dap1
+-0x1.058304cdc51f1p-2
+-0x1.e530d67d5c413p15
+0x1.9efc141496268p-21
+0x1.9e43436405397p-2
+0x1.d6c5d5f5dcc9fp-22
+0x1.2f0540658e814p1
+0x1.89ea31cb96062p1
+0x1.c9d690079576dp-7
+0x1.9b1ef5b23f047p-2
+-0x1.c1e61429c45fbp43
+0x1.248b34f22e7e1p-26
+0x1.0dc2918fd3196p-15
+0x1.a17a2260c8d58p18
+-0x1.a088140ade389p19
+0x1.8b92c2168e33fp40
+0x1.69ab67a22bbbcp0
+-0x1.343232b010a37p-17
+-0x1.0c4932248f574p0
+-0x1.2bdc378a38991p-2
+0x1.2d563370110dap-12
+0x1.a27134171f37dp-4
+0x1.fa63324eb71a3p26
+0x1.6f50c55b7950ep-21
+-0x1.0486e73eca0d8p45
+-0x1.fa20f7947f447p-3
+0x1.0439c6fe1a62ep2
+0x1.4e5d366349911p2
+0x1.985933b0a27d6p-2
+0x1.bf592781e0417p-4
+0x1.bd39f070daca3p-4
+0x1.0130b7296f20dp0
+-0x1.299cc68ec2149p2
+-0x1.6d9fc7a6e0946p0
+0x1.b42110fb94ad0p31
+0x1.b59970f83df8ep1
+0x1.c4083529ddeb8p38
+0x1.ac3bb44cafe59p1
+0x1.6d66733b81b71p-11
+0x1.20beb78f7ceeep-16
+0x1.d285f704a02d5p-4
+0x1.bf37a3dc305b1p37
+-0x1.8852a20307706p1
+0x1.8129a11b33c67p31
+0x1.1b31565ac4d26p38
+0x1.efe3d79df1a25p0
+-0x1.df4fc61097087p34
+-0x1.801e6310f70c4p1
+0x1.de7fc178da718p1
+0x1.82cd96b74c33bp-3
+0x1.14ce177c73acbp2
+-0x1.b8bfa6f20bf6cp-4
+0x1.04ff06087395bp-9
+-0x1.8327b171d58abp-4
+-0x1.8cabe7b5327bap-3
+-0x1.82c492035cf5bp24
+-0x1.d85a267d87555p-24
+-0x1.efdc44b7fb121p24
+0x1.ea99c6cf2fd74p-17
+0x1.3fb6671f607b1p1
+0x1.97dce09249de2p-3
+-0x1.9dc4f0331f52cp43
+0x1.ea7d727d27334p41
+-0x1.ec9d516a85c75p-25
+-0x1.bb2176abaedd1p-3
+-0x1.71eeb273dd3adp-15
+-0x1.7be385146ccdep25
+0x1.c1f987ad8af62p-6
+0x1.2159279f1c89ap2
+-0x1.4805b43babc89p-17
+-0x1.c16834d0d845ap-20
+0x1.c52f537caeb0ep10
+0x1.14d5e5a6c66f8p52
+0x1.2f929423ad32fp0
+0x1.e9ce62b513428p-4
+-0x1.8a14f3724eb37p32
+0x1.64013151734fdp3
+-0x1.9090f39f49889p23
+0x1.be6b47a137a52p-12
+0x1.59a42749fd7c3p1
+0x1.8603f544b0976p-15
+-0x1.4d2ba3dfaeb93p-2
+-0x1.7d770619d5bc3p12
+0x1.edfb87aaee9b1p1
+-0x1.f23d94e870be7p-4
+-0x1.21500514f25d3p41
+0x1.cb8712f937eedp-15
+0x1.fb47c7a69d8a4p-24
+0x1.f1c904cd2e471p-12
+-0x1.31e6e3b7073f8p0
+-0x1.facd32a72c5a8p2
+-0x1.9823a41a9780ap-3
+0x1.3db1f5e2a9a51p51
+0x1.6344057f1cca6p-1
+-0x1.8be6128041ebfp-13
+0x1.6f07c272d7fe9p38
+-0x1.fd48060bf89bfp-5
+-0x1.82eb1727ca16ep-2
+0x1.26e0a24f2ec11p-18
+-0x1.74a1c0cb9d677p-14
+-0x1.bb0c36f1bb121p0
+-0x1.56a4873461187p1
+-0x1.d01e65e325d8dp2
+-0x1.5250308bc28a5p36
+-0x1.83c6f31f2de0fp-24
+-0x1.41ae76e29ab40p1
+-0x1.d738a56bac094p1
+0x1.1a5247926ba82p-14
+0x1.d703938b24ac4p-22
+-0x1.cc5566621df4fp-4
+-0x1.4144e3f175873p-4
+0x1.a41e208bd59c2p-4
+-0x1.8588a53e4e022p8
+0x1.cf4331e97df52p-27
+-0x1.d70843f5b2a7bp-8
+-0x1.b1a912cdf744ep-3
+0x1.ad44072bba2efp-15
+-0x1.735cf794885b0p25
+-0x1.94d98257a7443p-4
+-0x1.61dac14e8c1f2p1
+0x1.f71585bdc20e7p-20
+-0x1.3338f2e1ebed7p-2
+-0x1.044ab29dd3fd8p-1
+0x1.b230868e79405p-25
+0x1.c3539439a1ce3p15
+-0x1.2998d58d65498p-4
+0x1.7273d75dd90f5p0
+-0x1.6214d3e6a209fp32
+-0x1.3b2aa66ea6fd8p-3
+-0x1.6cc910ca7817ap-4
+-0x1.1194f4be56f5bp28
+-0x1.6dc3114d423c9p2
+-0x1.b447e098a3c6fp18
+-0x1.705865523468cp15
+-0x1.8e6752f060479p38
+-0x1.ebe665ab9b23ap3
+0x1.df6ee1073afd0p32
+-0x1.35ce11e0f4a42p5
+0x1.7c26f0a48edd9p-3
+0x1.af1996c678e0dp28
+0x1.c4ea4704b4de2p2
+0x1.697b37d6b070dp19
+0x1.49fa574ba1eccp52
+-0x1.695ee7cc1ce8ep48
+-0x1.169c757dd823dp-23
+0x1.207273ac379a1p-4
+0x1.7c2dc5c85d916p23
+0x1.fe02e67c4ccbfp-24
+0x1.accc401e13286p49
+-0x1.af3426c709c78p-18
+-0x1.ab2ca07faba33p-4
+0x1.aeaaf4f90a9c1p-4
+-0x1.84f781f4efe2cp-9
+-0x1.d885871aa2240p-9
+-0x1.a618720ac58c4p-22
+-0x1.9b995257a7ee5p-6
+-0x1.f68b46a30839ep-18
+0x1.e1443653f9257p3
+0x1.ce1a94d5c772cp-22
+0x1.b24255d0a3ce2p38
+0x1.2eaa6690d786ep2
+0x1.b5bb45a608da6p0
+-0x1.ead7509b0d69ep26
+0x1.86fa30e0b406ep3
+-0x1.acd451c3cb8b6p49
+0x1.000000c5cba87p0
+0x1.000001883003bp0
+0x1.00000dfb2b675p0
diff --git a/benchtests/libmvec/atanpif-inputs b/benchtests/libmvec/atanpif-inputs
new file mode 100644
index 0000000..2cb1a5f
--- /dev/null
+++ b/benchtests/libmvec/atanpif-inputs
@@ -0,0 +1,2005 @@
+## args: float
+## ret: float
+## includes: math.h
+# Random inputs in the range [-10,10]
+## name: workload-core-math1
+0x1.82c748p+2
+-0x1.0b2fa6p+3
+0x1.1aeap+3
+-0x1.072d74p+3
+-0x1.71f584p+2
+0x1.525788p+2
+-0x1.079028p+3
+-0x1.09235cp+3
+0x1.1eb3ccp+2
+-0x1.28878ep+3
+-0x1.6d5164p+1
+-0x1.fd523cp+2
+0x1.de65e8p+2
+-0x1.05ed4p+3
+-0x1.1b2054p+3
+-0x1.9e5a5p+1
+-0x1.9d6d8ep+2
+0x1.3e55p+3
+-0x1.8286ccp+2
+-0x1.600e2ep+2
+0x1.bd6a48p+2
+-0x1.39d934p+3
+0x1.d033cp-1
+-0x1.0118ep+1
+0x1.eef87p+0
+-0x1.020b56p+2
+-0x1.368226p+2
+-0x1.347528p+1
+-0x1.eeb58p+0
+0x1.3516dp+0
+-0x1.e51e0cp+2
+0x1.d017p+1
+-0x1.6ac17cp+1
+0x1.0ec1c8p+3
+0x1.a9b8d8p+2
+-0x1.648acp+0
+-0x1.f406ep+2
+0x1.084bacp+3
+-0x1.c0a6fap+2
+-0x1.26ffp-2
+-0x1.cb291p+0
+-0x1.3cc0ep+2
+-0x1.359f78p+1
+0x1.4372d8p+2
+0x1.4cbd2p-1
+0x1.4552fp+1
+-0x1.b98a8p+1
+0x1.cc5e88p+1
+0x1.14d414p+3
+-0x1.21600ap+2
+0x1.d7e22p+2
+0x1.f82c4p-1
+-0x1.3dfc0ep+3
+0x1.110c0cp+3
+0x1.2e3d24p+3
+0x1.7c672p+0
+-0x1.6a90a8p+2
+0x1.c103bp+2
+-0x1.274c14p+2
+-0x1.f377d4p+2
+-0x1.405114p+2
+0x1.d36fep+0
+0x1.0aca8p+3
+0x1.d519p+1
+-0x1.52ac1ep+2
+0x1.7838dp+0
+-0x1.211e8p-3
+0x1.d5c22p+2
+0x1.7665dp+1
+0x1.7f51p-3
+0x1.6ca05p+2
+-0x1.6ec632p+2
+0x1.a7ff4p+0
+-0x1.cab87cp+1
+0x1.f56038p+2
+0x1.8123bp+2
+0x1.3847ep+0
+0x1.f7ea3p+0
+0x1.9716fp+1
+-0x1.cf3c8p+2
+0x1.39acf4p+3
+0x1.095e44p+3
+-0x1.cffdb8p+1
+-0x1.0d5f6p+2
+0x1.ea41p-3
+0x1.a5cc98p+1
+0x1.0d212cp+2
+-0x1.03cf04p+2
+-0x1.0609fcp+3
+-0x1.f384eep+2
+0x1.8f09ap+0
+-0x1.1fd75p+1
+0x1.47af54p+2
+-0x1.b86d24p+2
+-0x1.5befp-4
+-0x1.ea558ap+2
+-0x1.95a682p+2
+-0x1.e6c7d4p+2
+0x1.b6bf9p+2
+-0x1.27364p-1
+0x1.2a94bp+3
+0x1.eec5p-3
+0x1.666f8p-2
+0x1.82298p+1
+0x1.398878p+2
+-0x1.a3163p+1
+-0x1.015e1ap+3
+0x1.6e3aa8p+2
+-0x1.33c3dcp+2
+-0x1.fdcfp+0
+0x1.3c3488p+3
+-0x1.8cc7p+1
+0x1.464d1p+0
+0x1.355d28p+1
+0x1.d7f08p-1
+-0x1.00f634p+3
+-0x1.1e8abp+0
+0x1.f76cdp+2
+0x1.076358p+2
+0x1.05d6c8p+3
+0x1.60e3fp+1
+-0x1.ebf0fp+1
+0x1.7483fp+2
+0x1.82a318p+2
+-0x1.5db8bep+2
+-0x1.7277p-3
+-0x1.da648p-3
+0x1.b7cb2p+2
+-0x1.8831d8p+2
+0x1.7f95b8p+2
+-0x1.c1cd3p+2
+-0x1.0b7e18p+1
+-0x1.83548cp+1
+0x1.b82ap+0
+-0x1.1857e8p+1
+0x1.3343e8p+3
+0x1.79256p+0
+0x1.0c48ap-1
+0x1.ae184p+2
+0x1.ba11d8p+2
+-0x1.0b4dc8p+3
+0x1.c06298p+2
+-0x1.3bf0a8p+3
+0x1.2d3e9p+1
+-0x1.4c763ap+2
+-0x1.e5dedcp+2
+0x1.759a44p+2
+-0x1.0e4bbp+3
+-0x1.169f24p+2
+-0x1.14f64ap+3
+-0x1.6b0182p+2
+-0x1.17f7b4p+3
+-0x1.0e3f8cp+2
+-0x1.36ca32p+3
+0x1.d6e458p+2
+0x1.4aebcp-1
+0x1.706e28p+1
+-0x1.ae5b3p+1
+-0x1.f2b63ep+2
+-0x1.9acddp+2
+-0x1.efdd4p-1
+0x1.55d2ap+1
+0x1.783948p+1
+-0x1.0a41p-4
+0x1.deff28p+2
+0x1.204ffcp+3
+0x1.c5a9e8p+2
+-0x1.d46238p+1
+-0x1.ee202p-1
+-0x1.08bbcp-2
+-0x1.46096p+2
+-0x1.155p-2
+0x1.0ea26cp+3
+0x1.256ce8p+1
+0x1.0424cp+3
+-0x1.eed1f4p+2
+-0x1.1a26ecp+2
+0x1.0eff3cp+2
+0x1.970858p+2
+-0x1.2dce9p+3
+0x1.571654p+2
+-0x1.08c85cp+1
+-0x1.ccd436p+2
+0x1.feed6p+0
+0x1.c793fp+1
+-0x1.fbf8cp-2
+0x1.4e451p+1
+-0x1.1a7ebap+3
+0x1.0a118p+3
+0x1.06bb14p+2
+-0x1.1bc264p+2
+0x1.10edap+1
+-0x1.a14c1p+1
+0x1.bbb468p+2
+0x1.07155p+0
+-0x1.fe0bf8p+2
+-0x1.8824ep+1
+0x1.34f7bp+3
+-0x1.1cf394p+2
+0x1.2256dp+3
+-0x1.0e4ep+3
+-0x1.23013p+3
+-0x1.17e55p+0
+0x1.0bccep+2
+0x1.b76e5p+2
+-0x1.569cbp+0
+0x1.ad5aa8p+2
+-0x1.e43f24p+2
+-0x1.ed9c7ep+2
+-0x1.bd1908p+2
+-0x1.b659c8p+2
+0x1.3ff46p+2
+0x1.8ad508p+1
+0x1.a922dp+1
+0x1.2bec28p+1
+0x1.3a163p+0
+0x1.0e48p-1
+-0x1.eca5bp+2
+0x1.8df9d8p+2
+-0x1.f15accp+2
+0x1.3feb6cp+3
+0x1.f1ee8p+2
+0x1.8274dp+0
+-0x1.07e69cp+3
+-0x1.69f67cp+2
+0x1.4afde4p+2
+0x1.88243p+0
+0x1.3fb09cp+2
+-0x1.9c9c2p+2
+0x1.31fac4p+2
+-0x1.ba2894p+2
+0x1.421a5p+2
+0x1.cdd14p+2
+-0x1.35716cp+1
+0x1.159d28p+3
+0x1.0010d4p+3
+-0x1.2f32dcp+3
+-0x1.67c47cp+2
+0x1.ac2f1p+0
+-0x1.177438p+3
+0x1.6281c8p+2
+-0x1.91b624p+1
+-0x1.a69abp+2
+0x1.4ac6p-3
+-0x1.5fced4p+2
+-0x1.01f294p+3
+0x1.17f52p+0
+-0x1.eff7p-4
+0x1.3b0e34p+2
+-0x1.bec88p+1
+-0x1.2eec36p+2
+0x1.35243cp+3
+0x1.bc5aa8p+2
+-0x1.0d7cfp+3
+-0x1.5627p-3
+-0x1.f90b34p+2
+-0x1.2742dep+3
+0x1.a4c38p+1
+0x1.07f708p+3
+-0x1.46ea4p-1
+0x1.13dabcp+3
+0x1.f463dp+1
+0x1.c3959p+1
+-0x1.39101ap+2
+0x1.afcc08p+2
+-0x1.82ba54p+2
+0x1.a4ae1p+0
+-0x1.62878p+0
+0x1.13ff8cp+2
+-0x1.1cfc8p-2
+0x1.3e6768p+1
+0x1.fb968p+2
+-0x1.55c9e4p+1
+0x1.8d11ep+0
+0x1.11c74p+3
+-0x1.9f272ep+2
+-0x1.8aa228p+1
+0x1.64a568p+1
+0x1.29b0ap+3
+-0x1.ea0912p+2
+-0x1.f9863p+2
+0x1.274f28p+2
+-0x1.20ddc4p+3
+0x1.03268p+1
+0x1.ea0b1p+2
+0x1.3db3cp+3
+0x1.912f68p+1
+-0x1.41a63p+1
+0x1.7d1818p+2
+-0x1.1cbd4p+0
+0x1.8c15a8p+2
+-0x1.1dc70ep+2
+-0x1.f76d1p+2
+-0x1.196146p+2
+0x1.bebb48p+2
+-0x1.066884p+2
+0x1.242d7cp+3
+-0x1.68ecap+1
+0x1.1e3bf8p+3
+-0x1.1834a8p+2
+-0x1.28f17ep+2
+-0x1.863p-4
+-0x1.0a646p+0
+-0x1.2887d6p+3
+-0x1.b6fd1p+1
+-0x1.3f40ep+0
+0x1.09ce4p-2
+0x1.579028p+1
+-0x1.119c5ap+3
+-0x1.5fb97p+2
+-0x1.87bcap+2
+0x1.8f247p+2
+-0x1.7f461p+0
+-0x1.6880ep+1
+0x1.0de098p+2
+-0x1.ec045cp+2
+-0x1.091df6p+3
+-0x1.1c42dap+2
+-0x1.345342p+3
+0x1.d0daep+0
+-0x1.2d6ap+0
+-0x1.111a2p+3
+0x1.ae3bp+0
+0x1.684558p+2
+-0x1.2ff3e2p+3
+-0x1.a3ba9p+0
+0x1.e96d8p+1
+0x1.0a534cp+2
+-0x1.d84a4p-2
+0x1.087a8p+3
+0x1.22d934p+3
+-0x1.e1ebap-1
+0x1.96a2cp-2
+-0x1.760a9cp+2
+-0x1.b265e4p+2
+0x1.80e1cp+1
+-0x1.9b259p+1
+-0x1.5f220cp+2
+0x1.2604dp+3
+0x1.0c9528p+2
+-0x1.ec2608p+2
+-0x1.6a4dep+1
+0x1.f0bd58p+2
+0x1.0f2018p+3
+0x1.1178p-3
+0x1.0f2584p+2
+0x1.677eb4p+2
+0x1.afa7c8p+2
+-0x1.9d9238p+1
+-0x1.eabcbp+1
+0x1.f578ep+1
+0x1.69d4dp+2
+0x1.2e1b8p-2
+-0x1.7fbbep+0
+0x1.be058p+2
+0x1.2dd258p+3
+0x1.33e318p+1
+0x1.c102bp+2
+-0x1.68da74p+2
+-0x1.bc25b8p+1
+0x1.5ed7fp+0
+-0x1.9369ecp+2
+-0x1.e916p-3
+0x1.92565p+2
+-0x1.3edd34p+1
+-0x1.0b065cp+3
+-0x1.9d1ae8p+2
+-0x1.510a34p+2
+-0x1.3a761ep+3
+-0x1.07118p+0
+0x1.1e7d38p+3
+0x1.2f151cp+3
+0x1.263c88p+2
+0x1.28287cp+3
+0x1.f35df8p+2
+-0x1.8553ap+0
+-0x1.c3a2p-3
+-0x1.95fe08p+2
+0x1.4edacp+1
+0x1.fcc1f8p+2
+0x1.2284ap+2
+-0x1.cf1542p+2
+-0x1.3e526ap+3
+-0x1.14b726p+3
+0x1.efeefp+1
+-0x1.9e54bp+0
+-0x1.ca69bp+0
+0x1.076428p+2
+0x1.20abecp+3
+-0x1.1233fap+2
+-0x1.09401p+3
+0x1.661fcp+2
+0x1.ae45f8p+2
+-0x1.8b56ep+2
+0x1.6f3p-3
+-0x1.aa9da6p+2
+0x1.ac139p+2
+-0x1.90ca38p+1
+-0x1.66028ap+2
+0x1.9ef86p+1
+0x1.e264b8p+2
+0x1.07a7cp+0
+0x1.332ac4p+3
+0x1.3c6ed8p+3
+-0x1.b9fa48p+1
+0x1.9071p+2
+-0x1.4af18p-2
+0x1.065264p+3
+-0x1.d29b14p+1
+-0x1.e19708p+2
+0x1.3ed544p+3
+-0x1.741b4p+1
+0x1.59268p-1
+0x1.3e8b6p+3
+0x1.61b4ecp+2
+0x1.adc538p+2
+0x1.b96f3p+0
+0x1.34f29p+0
+0x1.8f3208p+1
+-0x1.e31244p+1
+-0x1.3120bcp+3
+0x1.20184p+0
+-0x1.798a52p+2
+-0x1.68261ap+2
+0x1.8ae0ep+0
+0x1.2ca934p+2
+-0x1.ceef1cp+1
+-0x1.5a0f6ep+2
+0x1.53cffp+0
+0x1.2f0388p+3
+0x1.102fcp+3
+-0x1.421fbp+1
+0x1.d14adp+1
+-0x1.3ccfb8p+2
+0x1.2d3e3p+1
+-0x1.58f1a6p+2
+-0x1.60dbacp+2
+-0x1.ec6d64p+1
+0x1.fdf1fp+0
+-0x1.d3774p-1
+-0x1.478d1ep+2
+0x1.f9e8p+0
+-0x1.83b1dep+2
+0x1.ed8p+2
+-0x1.212bccp+1
+-0x1.30736p+3
+-0x1.9ad63p+1
+-0x1.31cbc8p+2
+-0x1.398bb8p+2
+-0x1.cd5cp-5
+-0x1.a30c5cp+2
+-0x1.80b676p+2
+-0x1.2562cap+3
+0x1.07145p+3
+-0x1.71820cp+2
+0x1.ddee7p+1
+-0x1.57704cp+2
+0x1.394c3cp+3
+0x1.3ba03p+3
+-0x1.dc6a82p+2
+0x1.15a488p+3
+0x1.91ff3p+1
+0x1.0464b8p+2
+0x1.c0dbdp+0
+0x1.13edcp+3
+0x1.779a18p+1
+-0x1.b4eb3p+0
+-0x1.2f2ebcp+2
+0x1.6b2c7p+0
+0x1.99835p+1
+-0x1.20e87ep+3
+0x1.f3ep-8
+0x1.05d39p+3
+-0x1.ed119cp+1
+-0x1.1f37p+1
+0x1.d6694p+2
+-0x1.698c7ap+2
+-0x1.857c34p+2
+-0x1.3a49dp+1
+-0x1.e1cec8p+2
+-0x1.ce87bcp+2
+-0x1.3156acp+2
+-0x1.313dbcp+2
+0x1.9d7p-1
+-0x1.0e0f18p+3
+-0x1.6ba8p-6
+0x1.bd1da8p+2
+-0x1.0ce162p+3
+-0x1.05f21p+0
+0x1.55096p+1
+-0x1.25358p-2
+0x1.e28bf8p+2
+0x1.4fbadp+0
+0x1.70d5ep+0
+-0x1.4508dp+2
+0x1.749d2p+1
+0x1.7cdf6p+2
+0x1.6d048p-1
+0x1.10fep+1
+0x1.4a9df8p+2
+0x1.92bbd8p+1
+0x1.a8c7ep-1
+0x1.f7c02p+1
+0x1.332b4cp+2
+0x1.5fa498p+2
+0x1.2e3adcp+2
+0x1.0cf24p+3
+-0x1.166fbcp+2
+-0x1.cf2p-6
+0x1.3a73e8p+2
+-0x1.c2d91p+0
+0x1.8dd8p-1
+-0x1.40328p-2
+0x1.24bf6p+2
+-0x1.be844p+0
+0x1.48c808p+2
+0x1.110bcp+0
+0x1.86f4b8p+2
+0x1.160cbp+3
+-0x1.9530d4p+1
+-0x1.b8742p+1
+0x1.98169p+2
+0x1.f103cp+2
+0x1.737bcp-1
+-0x1.68c60ep+2
+-0x1.453d7p+1
+-0x1.626e36p+2
+0x1.9ccec8p+1
+0x1.cc8a6p+1
+-0x1.1c17ap+3
+0x1.2d02cp+3
+-0x1.c1beap+1
+0x1.9aa7d8p+2
+0x1.015448p+1
+0x1.10e2d8p+3
+0x1.38d3d8p+2
+-0x1.11f952p+3
+0x1.e171d8p+1
+-0x1.0309b4p+2
+-0x1.71dc94p+2
+-0x1.241bbp+3
+-0x1.5e26p-1
+0x1.7d82e4p+2
+0x1.0e7ee8p+3
+0x1.2e869cp+3
+-0x1.f0760cp+2
+0x1.29f92p+2
+-0x1.2e9aeap+3
+0x1.86fcdp+2
+-0x1.7f6a64p+1
+-0x1.11006cp+2
+0x1.cdaebp+2
+0x1.121e3p+1
+-0x1.c2d75cp+2
+0x1.371b0cp+2
+-0x1.76f8p-1
+-0x1.18efbcp+3
+0x1.b92a98p+2
+-0x1.64ac1p+2
+-0x1.5c75ep+2
+-0x1.1f7124p+3
+-0x1.3d38bp+3
+0x1.2b526p+3
+0x1.2ceb58p+3
+0x1.0ee7dcp+3
+0x1.2fe3bp+2
+0x1.0d7d68p+2
+-0x1.2dd928p+3
+0x1.d1bf48p+1
+-0x1.4cc656p+2
+-0x1.38b5e6p+3
+-0x1.72022p+0
+0x1.02efbcp+3
+-0x1.b7bc8p+0
+-0x1.3710f8p+3
+0x1.133f18p+1
+0x1.23e6ap+0
+0x1.fc7a6p+1
+0x1.63364p+2
+0x1.fdd7fp+0
+-0x1.e5025ap+2
+-0x1.fd6eb6p+2
+-0x1.bd8abp+0
+0x1.249af8p+3
+0x1.d2247p+0
+0x1.ab71a8p+1
+0x1.5a2c74p+2
+0x1.0e2bfp+3
+-0x1.89cb6p-1
+-0x1.b07388p+2
+-0x1.70ff76p+2
+-0x1.27432cp+1
+-0x1.2ad4fcp+3
+0x1.f5ba1p+2
+-0x1.d87bcp+0
+0x1.6a46cp-2
+0x1.84a1fp+2
+-0x1.7314ap+0
+-0x1.283974p+1
+0x1.15c4ecp+2
+0x1.333edcp+2
+0x1.6411acp+2
+0x1.c4a378p+2
+0x1.c8774p+2
+-0x1.f44e4cp+2
+-0x1.401678p+2
+0x1.f46f6p+0
+-0x1.501ceep+2
+-0x1.9b7cdcp+2
+-0x1.1412cp-1
+-0x1.3764ap+1
+-0x1.d77b44p+2
+0x1.229108p+2
+0x1.603b58p+2
+-0x1.41afp-1
+0x1.706d8p-2
+0x1.c292e8p+2
+0x1.3b2bcp+2
+0x1.b5753p+2
+0x1.09c5ap-1
+0x1.119d3cp+2
+-0x1.96940cp+2
+0x1.173638p+3
+0x1.d11b78p+2
+0x1.874b4p+0
+0x1.2b5ea4p+3
+-0x1.5a771cp+2
+-0x1.4189f4p+2
+0x1.c346p-1
+-0x1.9bb1e8p+2
+0x1.434f5cp+2
+0x1.0eeeap+2
+0x1.2a466cp+3
+-0x1.666ecp-2
+-0x1.7e3c34p+1
+-0x1.28aa98p+3
+0x1.4fce7cp+2
+0x1.7ce158p+2
+0x1.5cd4bp+1
+0x1.907ddp+1
+0x1.9a016p+2
+-0x1.176a44p+3
+0x1.7c456p+2
+0x1.5c5b68p+1
+0x1.d28dcp-1
+-0x1.33d024p+2
+0x1.5a826cp+2
+-0x1.add3b4p+1
+0x1.b41ecp+0
+-0x1.ec341ep+2
+0x1.5c8f18p+1
+0x1.dae03p+2
+0x1.b54ap+2
+-0x1.e6451p+1
+-0x1.2fe0cp+3
+-0x1.317b08p+1
+0x1.1f04cp+3
+0x1.e2bb9p+2
+-0x1.3cb8d2p+3
+-0x1.09f4fp+3
+-0x1.5f6edcp+2
+-0x1.33812ep+3
+-0x1.cc55c8p+2
+-0x1.09d1bcp+3
+0x1.af3fb8p+2
+-0x1.3fcac4p+3
+-0x1.92966p-1
+0x1.259c58p+2
+0x1.3ab01p+2
+-0x1.5896p-5
+-0x1.bdb4bp+2
+-0x1.a1212cp+2
+-0x1.11da04p+1
+0x1.00177p+1
+0x1.827e5p+2
+-0x1.9aa51p+1
+0x1.ae974p-2
+0x1.d44f28p+2
+0x1.33249p+1
+0x1.290728p+3
+0x1.2a7138p+2
+-0x1.91ab7p+2
+-0x1.1d2d4p+1
+-0x1.42dbbcp+2
+-0x1.6835e2p+2
+0x1.567408p+2
+-0x1.1241f4p+3
+-0x1.4f964cp+2
+-0x1.0a3642p+3
+0x1.004e8p-1
+-0x1.9bb70ap+2
+-0x1.c04p-3
+0x1.6cde5p+0
+-0x1.61bbbcp+2
+0x1.93873p+2
+-0x1.38257ap+3
+-0x1.494c08p+2
+0x1.c2a42p+1
+-0x1.16848p+3
+-0x1.52ba24p+1
+0x1.c5c278p+1
+0x1.88d7ap-1
+-0x1.1f92aep+2
+0x1.47314p-1
+0x1.eaee8p-2
+-0x1.2568f8p+1
+-0x1.86e5d8p+2
+0x1.a4acp+2
+-0x1.e7f88cp+2
+-0x1.6edd3p+2
+-0x1.ed577p+0
+-0x1.21023cp+3
+0x1.cd16ep+2
+0x1.99beep+2
+0x1.862528p+1
+0x1.f7e06p+2
+0x1.59464p+1
+-0x1.eef01p+1
+-0x1.e92b66p+2
+-0x1.0245cp-1
+0x1.e519fp+0
+0x1.018f9p+3
+-0x1.1078acp+2
+0x1.9da54p+2
+0x1.cc39fp+2
+-0x1.f7fe8p-3
+0x1.f9812p+1
+-0x1.39d254p+2
+0x1.e0a3f8p+2
+0x1.66714p-1
+0x1.92254p+2
+0x1.cacc7p+2
+0x1.345398p+2
+0x1.2e1668p+3
+0x1.060adp+1
+0x1.d7adb8p+2
+0x1.cd7e28p+2
+-0x1.ea7ff4p+2
+-0x1.3b3e24p+3
+0x1.132f64p+3
+-0x1.e75a7ap+2
+-0x1.ca3f3p+1
+-0x1.3e96d8p+3
+-0x1.215ca8p+3
+0x1.b15bap+0
+-0x1.212686p+3
+-0x1.d0869cp+2
+-0x1.1ac86ep+3
+-0x1.725338p+1
+-0x1.5b13f8p+2
+-0x1.7c2b54p+2
+0x1.fe859p+1
+-0x1.877eb4p+2
+0x1.387d1cp+3
+0x1.3b751p+2
+0x1.05465p+1
+0x1.a58c5p+2
+0x1.3fb79p+1
+0x1.708b4p-2
+0x1.1e132p+3
+-0x1.07270cp+3
+0x1.d6fb3p+2
+0x1.05101p+2
+-0x1.3aff38p+1
+-0x1.287d4p-1
+0x1.d9416p+2
+0x1.4fb69p+0
+0x1.6891p-2
+-0x1.fc289p+0
+-0x1.ca0dbp+0
+0x1.edf028p+2
+-0x1.cd6d58p+2
+0x1.3a3c5cp+2
+0x1.4280bp+0
+-0x1.bbe378p+2
+-0x1.299ce4p+3
+0x1.04eb5p+3
+-0x1.5b9bcp-2
+-0x1.54aaf4p+2
+-0x1.4755acp+1
+-0x1.26e9cp-1
+-0x1.ba5ecp-1
+-0x1.533dbp+0
+0x1.011684p+3
+0x1.daf48p+2
+0x1.ea3dcp+2
+0x1.ee9c1p+0
+-0x1.ee6436p+2
+0x1.057cf8p+3
+-0x1.83894p+0
+-0x1.532da8p+1
+0x1.12d47p+2
+-0x1.c6a688p+2
+0x1.21294p+2
+-0x1.c8cb24p+1
+0x1.bb4f4p-1
+-0x1.f6221ep+2
+-0x1.39b9d8p+2
+-0x1.d89a26p+2
+-0x1.38134ep+3
+-0x1.f6847p+2
+-0x1.70f726p+2
+0x1.8de54p+2
+-0x1.1ce2bcp+3
+-0x1.d2b04cp+2
+0x1.97d04p+1
+0x1.f3ac6p+2
+-0x1.193e1p+0
+-0x1.0de554p+2
+0x1.69c05p+1
+-0x1.6eee8p-2
+-0x1.3c7998p+1
+0x1.56286p+2
+-0x1.8ac6aap+2
+0x1.038568p+3
+0x1.5705f8p+2
+0x1.22746p+0
+0x1.20f0c4p+3
+-0x1.846d1cp+1
+-0x1.1728b4p+1
+0x1.47516cp+2
+-0x1.9b862cp+1
+0x1.3d496p+2
+0x1.37e228p+1
+-0x1.0829dcp+3
+-0x1.d10b14p+1
+-0x1.2d9f1p+1
+-0x1.1287ccp+2
+0x1.6e7cccp+2
+0x1.871a88p+1
+-0x1.90ba76p+2
+0x1.3e6da8p+2
+0x1.22933p+1
+-0x1.89525p+2
+-0x1.3db424p+3
+-0x1.f5cdbp+1
+-0x1.248fd4p+3
+0x1.0bfdfp+0
+-0x1.6d3f46p+2
+0x1.55bdbp+1
+-0x1.f2e7d8p+2
+0x1.5a363p+1
+-0x1.8d1b8p-1
+0x1.1f48c8p+2
+0x1.c5d838p+1
+-0x1.0288eep+3
+-0x1.d71588p+2
+0x1.1caa84p+3
+-0x1.016d18p+3
+-0x1.430028p+2
+-0x1.7eff0cp+1
+-0x1.26836cp+3
+-0x1.f83914p+1
+-0x1.b5a7c4p+2
+0x1.e7374p+2
+0x1.dcbeep+2
+-0x1.11521p+1
+-0x1.087002p+3
+-0x1.e2eefep+2
+-0x1.70d818p+1
+0x1.212ef4p+3
+0x1.22c948p+2
+0x1.9911e8p+1
+-0x1.cc4d94p+2
+0x1.abdep-4
+-0x1.15b734p+2
+0x1.28a7b8p+3
+0x1.1b6848p+3
+-0x1.24d9e2p+3
+0x1.239cf4p+3
+0x1.60a6p-1
+-0x1.f2fdp+1
+0x1.00cc4p-1
+0x1.368338p+3
+0x1.c180a8p+2
+0x1.cb9b4p+1
+0x1.0f9d08p+3
+-0x1.c653d4p+1
+0x1.2b32dcp+2
+-0x1.e756ap+2
+0x1.7c138p-2
+-0x1.c9c6fp+0
+0x1.7710dcp+2
+-0x1.0ce6e6p+2
+0x1.ea6f8p+1
+-0x1.c2fefcp+1
+0x1.0dd22p+1
+0x1.17edecp+3
+0x1.0a4348p+2
+0x1.8ec228p+1
+-0x1.2717ep+0
+0x1.9badf8p+2
+-0x1.223e2cp+3
+-0x1.fd92ap-1
+-0x1.d45594p+2
+-0x1.1f2894p+3
+-0x1.062fap+0
+0x1.b76fcp+2
+0x1.527a8p-3
+-0x1.203094p+1
+-0x1.57fd4p-1
+0x1.04d248p+3
+0x1.092f18p+3
+-0x1.a4338p-2
+0x1.9b00bp+1
+0x1.a4bcfp+2
+0x1.37e65p+3
+-0x1.1d4ac2p+2
+-0x1.6a778p-2
+-0x1.265bcap+3
+-0x1.515218p+1
+0x1.06cacp+3
+0x1.a39abp+1
+-0x1.00166cp+2
+0x1.1ffec8p+3
+0x1.f0c5cp-2
+-0x1.9ba728p+2
+-0x1.f6664cp+1
+-0x1.db0fd6p+2
+0x1.138a0cp+2
+-0x1.9fdb6p-1
+0x1.206514p+3
+-0x1.345aa6p+3
+0x1.a97938p+2
+-0x1.ab077ap+2
+-0x1.df814p+0
+-0x1.3dffp-1
+0x1.69959p+0
+-0x1.28f54p+0
+0x1.00cb98p+2
+-0x1.937c1cp+1
+0x1.1c248p-1
+0x1.d4661p+2
+0x1.79843cp+2
+-0x1.3bc14p-1
+-0x1.415202p+2
+-0x1.bc694p+0
+0x1.af2868p+1
+-0x1.bccf6cp+2
+0x1.14f24p+3
+-0x1.4d6cf8p+1
+-0x1.6abe4p-2
+0x1.90848p+2
+-0x1.490cp-2
+-0x1.5ac5p-1
+-0x1.8fcc58p+1
+0x1.27821p+2
+0x1.98999p+1
+-0x1.1d4444p+3
+-0x1.d99d32p+2
+0x1.20bb04p+2
+0x1.acefbp+1
+0x1.596cep+0
+-0x1.021308p+1
+-0x1.97bfc8p+2
+0x1.40f74p+0
+-0x1.f53112p+2
+0x1.2ec6a8p+1
+-0x1.05cb22p+2
+-0x1.2d61bep+3
+0x1.1411dp+3
+-0x1.8a1874p+1
+-0x1.a620b6p+2
+0x1.5272acp+2
+-0x1.8b7bp-2
+0x1.1ddf9p+3
+0x1.813348p+2
+-0x1.62d418p+1
+0x1.2b8774p+3
+-0x1.b18f8p+0
+-0x1.1086dcp+2
+-0x1.02e336p+3
+0x1.da65f8p+2
+0x1.6edep+0
+0x1.6bb538p+2
+-0x1.b9187cp+2
+0x1.094228p+2
+-0x1.4a86p-1
+-0x1.39fc94p+3
+0x1.0a9128p+3
+0x1.7f5a44p+2
+-0x1.006ap+3
+0x1.a1b548p+2
+-0x1.7b80bcp+2
+-0x1.02f74p+0
+-0x1.b68p+0
+-0x1.11902ep+3
+-0x1.0d612p-1
+-0x1.599c6p+1
+-0x1.46eb8p-2
+-0x1.714c16p+2
+-0x1.d2b0ap-1
+0x1.73fbp-2
+0x1.559b1p+2
+0x1.1b9898p+3
+0x1.3f787cp+3
+-0x1.010818p+3
+0x1.178b9p+1
+0x1.65eed8p+2
+-0x1.ba50b8p+1
+0x1.ecc62p+0
+-0x1.076b5ep+3
+0x1.cbec6p+2
+0x1.9c678p-3
+0x1.1b311p+2
+0x1.1948bcp+3
+-0x1.140768p+2
+-0x1.f217b4p+2
+-0x1.e3a7fp+1
+-0x1.93408cp+2
+0x1.1a8a48p+1
+-0x1.26766p+0
+0x1.f725f8p+2
+-0x1.10dd88p+3
+0x1.8020a8p+2
+-0x1.1fe57ap+2
+-0x1.12ac66p+2
+0x1.05fc28p+3
+-0x1.26f4ep-1
+-0x1.26942p+1
+0x1.c7578p-2
+-0x1.9c205ep+2
+-0x1.0862c4p+3
+-0x1.7bb44p-2
+0x1.f8d378p+2
+-0x1.fc19e4p+2
+0x1.f82abp+2
+-0x1.177a3p+0
+-0x1.0b1b7p+3
+-0x1.365092p+3
+-0x1.8eb208p+1
+0x1.2d869p+3
+0x1.bab8p+2
+0x1.0d0c98p+1
+0x1.daaa9p+2
+-0x1.0654c6p+3
+-0x1.3bb8cp+0
+-0x1.f7bac4p+2
+-0x1.063822p+2
+-0x1.3d393p+0
+-0x1.9d6418p+2
+-0x1.695fcp-2
+0x1.17b948p+3
+-0x1.e99bdcp+1
+-0x1.fba42ep+2
+0x1.14255cp+3
+-0x1.7ca374p+1
+0x1.8986cp-2
+-0x1.05dd4p+0
+0x1.001f38p+3
+0x1.bc62p-5
+-0x1.09204cp+3
+-0x1.271f26p+3
+-0x1.b8372cp+1
+-0x1.2e835p+1
+-0x1.5eb78p+0
+-0x1.589a8p+2
+0x1.f248a8p+1
+0x1.c0e6bp+2
+0x1.67e32p+2
+0x1.38b488p+3
+-0x1.5f63ep+0
+-0x1.32cef4p+3
+-0x1.88daep+0
+0x1.04f03p+3
+0x1.35b348p+3
+0x1.a918cp-2
+-0x1.6db224p+1
+0x1.35bde8p+1
+-0x1.2e9324p+3
+0x1.06ee98p+1
+0x1.0ceb4cp+2
+0x1.5ce9cp-1
+-0x1.a1b12cp+2
+-0x1.3b5c0ap+3
+0x1.d0e9fp+2
+-0x1.2856a2p+3
+-0x1.3ebb78p+1
+0x1.1eb9f8p+3
+-0x1.78754cp+2
+-0x1.7350ap+0
+0x1.274468p+1
+0x1.3e95p+3
+0x1.4ec064p+2
+0x1.1c34p+3
+0x1.1975b4p+3
+0x1.fcecep+2
+0x1.12456p+3
+-0x1.efd3f4p+2
+-0x1.2231bep+3
+0x1.20e2f8p+2
+0x1.145d4cp+2
+-0x1.06503ap+2
+-0x1.7d425ep+2
+-0x1.20b518p+1
+-0x1.148b34p+3
+-0x1.7e1928p+2
+-0x1.4ba57cp+1
+-0x1.aeb99p+2
+0x1.e7902p+2
+-0x1.68b5cp+0
+-0x1.7449cp+0
+-0x1.989dcp+0
+-0x1.a6e1bp+2
+0x1.d4e2dp+2
+-0x1.88d206p+2
+0x1.ae46ep+0
+0x1.15b92cp+3
+0x1.61064p+2
+0x1.e1f02p+2
+0x1.6f1e9p+0
+0x1.1f1cbp+1
+-0x1.a63cp-1
+-0x1.51cfp-2
+-0x1.1f10fap+2
+-0x1.9370bp+2
+-0x1.cad1e8p+2
+0x1.32675cp+3
+0x1.1fdfdp+3
+-0x1.84a6fp+1
+0x1.050218p+3
+0x1.97f3ep+2
+-0x1.f569b6p+2
+0x1.10ffa4p+2
+-0x1.007776p+3
+-0x1.16891p+0
+-0x1.9f7fcp+2
+0x1.83adbp+2
+0x1.ff45bp+2
+0x1.38054p+2
+-0x1.fe51p-2
+0x1.08a6a8p+2
+-0x1.4ef38p-3
+-0x1.196cf6p+3
+0x1.3f6114p+3
+0x1.fb43b8p+1
+0x1.8e363p+2
+-0x1.7895f2p+2
+0x1.43a9a8p+2
+-0x1.91394cp+1
+-0x1.493e8cp+1
+0x1.15da9cp+3
+-0x1.78f226p+2
+-0x1.30d136p+3
+0x1.11f2b4p+2
+0x1.5305cp+0
+-0x1.2faa0cp+1
+0x1.dd5b08p+2
+-0x1.f2546p+0
+0x1.c0ed4p+1
+0x1.8b836p+2
+0x1.5d8abp+2
+-0x1.c2ede2p+2
+0x1.c1b38p+0
+0x1.f75c6p+1
+-0x1.973bc8p+2
+-0x1.aac804p+1
+0x1.9c2ecp+0
+0x1.863a2p-1
+0x1.3547d8p+3
+-0x1.5a38p-6
+0x1.364908p+2
+0x1.e7e7ep+1
+0x1.1404f8p+2
+0x1.526dfcp+2
+-0x1.4d3bfcp+2
+0x1.318bc4p+3
+-0x1.85fd6p+0
+-0x1.ddff54p+1
+-0x1.a55ddcp+1
+-0x1.da8c74p+2
+-0x1.d699ep-1
+-0x1.00c424p+3
+0x1.95923p+0
+0x1.ac3538p+2
+-0x1.12c606p+3
+0x1.e4d258p+1
+-0x1.4d1e4p-1
+0x1.408e58p+2
+0x1.07471p+0
+0x1.32c2cp+2
+-0x1.c301ap+0
+-0x1.3447b8p+3
+0x1.5f68a8p+2
+0x1.a19948p+1
+-0x1.d4a7p+2
+0x1.e02b9p+2
+-0x1.693f88p+1
+0x1.9ad5e8p+2
+0x1.287df4p+3
+0x1.95b16p+1
+0x1.2bff54p+3
+0x1.0f8afcp+2
+0x1.370558p+3
+-0x1.7fd15ap+2
+0x1.766728p+2
+0x1.b90f9p+0
+-0x1.aa21cp+1
+0x1.b90c4p+2
+0x1.a889fp+1
+0x1.fa42f8p+1
+-0x1.5e5ff2p+2
+0x1.0963cp+3
+0x1.e79ea8p+2
+-0x1.9ff76cp+2
+0x1.a5971p+1
+-0x1.9dd84p+1
+0x1.eb19p-3
+-0x1.38d282p+3
+-0x1.09358p-3
+0x1.c7398p+1
+-0x1.b86108p+2
+-0x1.ea2d5ap+2
+-0x1.476006p+2
+0x1.076a98p+3
+-0x1.1953e6p+3
+0x1.65f5dp+0
+0x1.d8db4p-1
+0x1.08ae2p+1
+-0x1.8fd614p+2
+-0x1.7e2acp-1
+-0x1.449f4cp+2
+-0x1.1b48ap+3
+-0x1.799c96p+2
+-0x1.1736b6p+2
+-0x1.08d17cp+2
+-0x1.e2abd4p+1
+0x1.80b4d8p+1
+-0x1.8f748cp+2
+-0x1.611p-1
+-0x1.364b3cp+3
+0x1.f5983p+2
+0x1.b3a2cp+1
+0x1.015f6p+0
+-0x1.73a3ecp+1
+0x1.e3818p+0
+0x1.a4cccp+1
+-0x1.bfd4b4p+2
+-0x1.2580d6p+2
+0x1.a586p+1
+0x1.fff698p+2
+0x1.9645bp+2
+-0x1.229e5ep+3
+0x1.a58f5p+0
+-0x1.ce8a54p+1
+0x1.91ee9p+2
+-0x1.1d6fb4p+3
+0x1.bcb728p+1
+-0x1.b187ccp+2
+-0x1.2528e2p+3
+0x1.c1fbdp+2
+0x1.3da93p+3
+0x1.72cfep+0
+0x1.2c40e8p+2
+0x1.2c877cp+3
+0x1.caa62p+1
+0x1.61747p+1
+-0x1.36ebf6p+3
+-0x1.e94cp+0
+-0x1.be3368p+1
+-0x1.0848ep+3
+-0x1.d07f66p+2
+-0x1.6f95fp+0
+0x1.c86ba8p+2
+0x1.393cp-2
+0x1.24c3ap+0
+0x1.4ef0ep-1
+-0x1.4b11dcp+2
+-0x1.02f04cp+1
+0x1.18efp-3
+0x1.5ebe14p+2
+0x1.08a94cp+3
+0x1.44a204p+2
+-0x1.0b5162p+3
+-0x1.7bdd8p-2
+0x1.4f43fcp+2
+0x1.f1c6cp+1
+0x1.74ab8p-2
+-0x1.aacc8cp+1
+-0x1.6cb3ap-1
+0x1.07a524p+3
+-0x1.1510b4p+3
+0x1.1c1ap-3
+-0x1.100efp+3
+0x1.3b9c28p+3
+0x1.12c6ep+2
+-0x1.0732ep+0
+0x1.82cfcp-2
+0x1.18e868p+3
+-0x1.ee0c1p+0
+0x1.29b084p+2
+-0x1.f9700cp+1
+-0x1.95f214p+2
+-0x1.47fb8p+2
+0x1.17b3b4p+3
+0x1.2dd37p+2
+0x1.2a5d48p+1
+-0x1.ac667cp+1
+0x1.20b518p+3
+-0x1.5c135cp+2
+-0x1.fb4336p+2
+0x1.032e8p+3
+0x1.c4551p+2
+0x1.ab35e8p+2
+0x1.30aa44p+3
+-0x1.0af058p+2
+-0x1.4cfeep-1
+0x1.20e6a8p+3
+-0x1.e5acd8p+1
+0x1.12626p+3
+-0x1.074382p+3
+0x1.1ed96p+3
+-0x1.73485p+0
+0x1.1bef6p+2
+0x1.0130bp+2
+0x1.19fe4p-1
+-0x1.9f5418p+1
+0x1.5aa408p+2
+-0x1.1bf9ecp+3
+-0x1.34bcfap+3
+0x1.3ad824p+2
+0x1.11c33p+0
+-0x1.b6bd4ep+2
+0x1.73a69p+1
+-0x1.07ecep-1
+-0x1.d5668cp+1
+0x1.6075dp+2
+-0x1.52dfep-1
+-0x1.fa1208p+1
+-0x1.2d757ep+3
+0x1.03361cp+3
+0x1.57afdp+1
+0x1.ecd778p+2
+0x1.351048p+2
+0x1.7f464p+1
+0x1.6ddb9cp+2
+-0x1.25b918p+1
+-0x1.cd075ap+2
+0x1.31457p+3
+-0x1.7571d2p+2
+0x1.3e3578p+3
+0x1.28cefcp+3
+0x1.2d6554p+3
+-0x1.40a6bp+0
+0x1.10303p+3
+-0x1.9f0a9p+0
+-0x1.0e2462p+3
+-0x1.d9c4d4p+1
+-0x1.02494cp+3
+0x1.9752bp+1
+0x1.b570ep+1
+-0x1.f168p+0
+0x1.0765b4p+2
+-0x1.2cef24p+3
+0x1.dfe95p+1
+-0x1.58b67ep+2
+-0x1.34c8fap+2
+-0x1.3b4f98p+3
+-0x1.cd6bccp+2
+0x1.9fce48p+2
+-0x1.607b98p+2
+-0x1.52772ep+2
+-0x1.0e817p+2
+0x1.58d93p+1
+0x1.a27e8p-3
+-0x1.6766f2p+2
+-0x1.2f5ca8p+1
+0x1.c98c1p+2
+-0x1.eb562p+1
+0x1.4e78a8p+2
+-0x1.2db36p+2
+-0x1.2da152p+3
+-0x1.ceb26p+0
+0x1.70f34p+1
+0x1.385774p+2
+0x1.ebfb58p+1
+-0x1.e707p-2
+0x1.980d98p+2
+-0x1.6fd6p+0
+-0x1.298954p+3
+0x1.093d7cp+3
+0x1.23ad94p+3
+-0x1.4e3152p+2
+-0x1.0fd7dcp+1
+0x1.6dcb94p+2
+0x1.41926p+0
+-0x1.0215f8p+3
+0x1.0fed9p+3
+0x1.a9e56p+0
+0x1.133b6p+0
+0x1.33b4b8p+3
+-0x1.c4bbaep+2
+0x1.0148cp+3
+-0x1.3041eep+3
+-0x1.c3216p+0
+0x1.1da78p+1
+0x1.efa648p+2
+0x1.19f25p+1
+0x1.ce6ecp-1
+-0x1.bcadp-4
+-0x1.27c3fcp+2
+0x1.25f49p+3
+-0x1.249cp+3
+-0x1.f6e3acp+1
+0x1.08ba4p+3
+-0x1.2bea8p-3
+-0x1.44f73p+0
+0x1.4f732cp+2
+-0x1.ed73d2p+2
+-0x1.4ece42p+2
+-0x1.8edc8p+1
+0x1.e94058p+2
+0x1.f9d65p+0
+0x1.2caccp+3
+0x1.4c48p-5
+0x1.b8a6cp+0
+0x1.39835cp+3
+0x1.7a8e6p+1
+0x1.8d6d18p+2
+0x1.f4bf6p+2
+0x1.01c74p+0
+0x1.e0c97p+1
+0x1.328b04p+3
+0x1.128cbp+1
+0x1.3472ep+3
+0x1.89c08p+1
+0x1.7c7cap+0
+-0x1.494ep-3
+-0x1.3a9788p+1
+-0x1.d904dp+2
+0x1.aaccap-1
+-0x1.39d1fp+3
+-0x1.0b69cp+2
+-0x1.4bc9dep+2
+0x1.270bdcp+3
+0x1.ef6b88p+1
+-0x1.20888ap+3
+-0x1.90a638p+1
+-0x1.c8090ap+2
+0x1.b4afcp-1
+-0x1.4fd70cp+2
+0x1.50f93cp+2
+-0x1.e56e94p+2
+0x1.049fap+0
+-0x1.2e616cp+3
+0x1.03ea48p+2
+-0x1.eb1414p+1
+-0x1.c9e3ep-1
+0x1.26f1d4p+3
+-0x1.317e8p+3
+0x1.17f524p+3
+-0x1.0606fp+0
+-0x1.5956f4p+1
+-0x1.2de798p+2
+-0x1.805a8p+1
+-0x1.da6dbp+2
+-0x1.2b8204p+3
+-0x1.c9e7b6p+2
+0x1.3a4c3p+3
+-0x1.3fe3bcp+2
+-0x1.80ccc4p+2
+0x1.fcaedp+2
+0x1.387a88p+2
+-0x1.66aap-3
+-0x1.b185bp+1
+-0x1.beeff8p+1
+-0x1.3e5bbcp+2
+-0x1.f1edp+1
+0x1.531p-7
+-0x1.856b98p+2
+-0x1.5abde8p+2
+0x1.2c113p+1
+0x1.c8d6p-3
+0x1.218348p+3
+-0x1.3ad39p+1
+0x1.d18e7p+0
+0x1.3784c8p+2
+0x1.ef02cp+2
+-0x1.61bffcp+2
+0x1.f34bfp+0
+-0x1.5d18p-7
+0x1.e1f9cp-1
+0x1.6a0aep+0
+0x1.1e6718p+3
+0x1.0553c4p+2
+0x1.beb278p+2
+0x1.b723p+2
+0x1.66899p+0
+-0x1.2e9eep+0
+-0x1.efc72cp+2
+0x1.0333p+2
+0x1.04f058p+3
+0x1.3eb23cp+3
+0x1.5028bp+2
+-0x1.838a1p+0
+-0x1.6f0714p+1
+0x1.e2cc1p+2
+0x1.c45c38p+2
+-0x1.7d275p+2
+0x1.602268p+2
+-0x1.8cc548p+2
+0x1.1415e8p+2
+0x1.5456e8p+1
+0x1.059dc4p+3
+0x1.723facp+2
+-0x1.26b4f2p+3
+-0x1.62931ap+2
+0x1.585a0cp+2
+0x1.3fc3ccp+3
+0x1.9e5ec8p+2
+-0x1.3d5ac8p+1
+0x1.3b5838p+3
+0x1.391394p+2
+-0x1.960b18p+1
+0x1.272aa8p+2
+-0x1.9dfa9cp+2
+0x1.4fc0acp+2
+-0x1.068ae8p+3
+0x1.ec9cdp+2
+0x1.2ae92p+2
+-0x1.a150ccp+1
+0x1.20ae18p+2
+-0x1.3d5e4ep+3
+-0x1.f444dp+2
+0x1.2e1d68p+2
+-0x1.ce03bp+0
+0x1.eb7c58p+2
+0x1.1875ccp+3
+0x1.76286p+1
+0x1.156458p+3
+-0x1.116daap+3
+-0x1.36ace2p+3
+0x1.dfeed8p+2
+-0x1.473a94p+2
+0x1.a8fd28p+2
+0x1.83afb8p+2
+-0x1.3d853cp+3
+-0x1.ec18fcp+2
+-0x1.2e02f8p+3
+-0x1.1282d4p+1
+-0x1.259fe8p+2
+-0x1.12ce9ap+3
+0x1.8c1328p+2
+-0x1.c2d1ecp+2
+-0x1.3226b4p+3
+0x1.d32bdp+1
+0x1.c2ff9p+0
+0x1.230b68p+3
+0x1.0a1168p+1
+-0x1.015434p+2
+0x1.82a37p+1
+0x1.dd302p+2
+-0x1.7cbbap+2
+-0x1.01e822p+2
+-0x1.1786aep+3
+0x1.e9b85p+2
+0x1.43d6c8p+2
+0x1.92742p+1
+0x1.02ef9p+2
+-0x1.09b83p+0
+-0x1.469284p+2
+-0x1.e7bd8p-1
+0x1.2b9448p+3
+0x1.26e9bp+2
+0x1.b93928p+2
+0x1.2c26ep+3
+0x1.591398p+2
+0x1.4989p-2
+0x1.15da24p+3
+-0x1.b7e09ep+2
+0x1.0445c8p+2
+-0x1.3f1c9cp+3
+-0x1.bd37ep+1
+0x1.80fbp-1
+-0x1.496818p+1
+0x1.d78a58p+2
+-0x1.21c902p+3
+-0x1.3db6ep-1
+-0x1.2b52c8p+3
+0x1.381a58p+3
+0x1.244ee8p+1
+0x1.7248ap+0
+0x1.3fe78p+3
+-0x1.04278p-2
+-0x1.3d82aep+3
+-0x1.39256p+1
+0x1.3b81f8p+1
+0x1.e8bc88p+2
+0x1.b286fp+2
+-0x1.2408bep+3
+-0x1.cf8f2p+0
+0x1.90cdbp+2
+-0x1.4fdef6p+2
+-0x1.6e0e5p+1
+-0x1.36b888p+2
+0x1.cbf93p+0
+-0x1.ab9c1p+0
+0x1.9b435p+2
+0x1.7e9c4p+0
+-0x1.7757p-1
+-0x1.f4738p-1
+-0x1.f9d0e8p+2
+0x1.fe326p+2
+0x1.3ad718p+1
+0x1.3c8p-10
+0x1.3232p-2
+0x1.675bb8p+2
+-0x1.249b8p+3
+-0x1.74c76p+1
+-0x1.e65b9cp+2
+-0x1.1047f8p+1
+0x1.06b62cp+3
+0x1.0cd9ep+0
+-0x1.29507ap+3
+0x1.3b193cp+2
+0x1.f5553p+2
+-0x1.55a606p+2
+-0x1.c5a1p-4
+-0x1.5aa58p+0
+0x1.d6c67p+0
+0x1.e0075p+2
+0x1.78dp-6
+0x1.a37f1p+2
+0x1.d5dfd8p+1
+-0x1.a59bbcp+1
+0x1.b1dacp-1
+0x1.c7e6fp+0
+-0x1.1e6c5p+3
+0x1.4e4a38p+2
+0x1.eb733p+2
+-0x1.465e4p-1
+0x1.a50168p+2
+-0x1.4b4p-8
+-0x1.3cadfp+2
+-0x1.7ed608p+1
+-0x1.057d9ep+3
+0x1.8448p-3
+0x1.9d306p+2
+0x1.d241d8p+2
+0x1.c0343p+1
+-0x1.1782c6p+3
+-0x1.14d714p+2
+-0x1.a13aep-1
+0x1.f7c64p+1
+0x1.fcce7p+2
+-0x1.53a8a8p+1
+0x1.336aap+0
+0x1.4d03d8p+1
+0x1.9b6cfp+2
+0x1.0ba24cp+2
+0x1.98d5ep+1
+0x1.02786p+1
+-0x1.a96d8p+0
+0x1.351a9cp+3
+0x1.cae96p+2
+-0x1.5f5368p+2
+-0x1.73fbcp+0
+-0x1.95a86p+0
+0x1.e7f7a8p+2
+0x1.3320dp+2
+-0x1.513f76p+2
+-0x1.1d6394p+2
+-0x1.746eacp+2
+-0x1.0e45c8p+2
+0x1.f0913p+1
+0x1.96041p+0
+-0x1.06a134p+2
+-0x1.20b9ap+3
+-0x1.ea6e78p+1
+0x1.02fcc4p+2
+-0x1.df7416p+2
+-0x1.1f3afep+3
+0x1.2ffdap+0
+-0x1.261e88p+1
+0x1.871ecp-1
+-0x1.078a5p+0
+-0x1.0478fp+1
+-0x1.3f3e7p+0
+0x1.c4fd8p-1
+0x1.3d85f8p+3
+0x1.267d58p+3
+-0x1.10bdbp+3
+-0x1.15911cp+3
+-0x1.a6dc5p+1
+-0x1.c95f44p+1
+0x1.396aecp+2
+0x1.9a7a9p+2
+-0x1.1ad4cep+2
+0x1.771b54p+2
+0x1.a27238p+2
+0x1.f81b98p+2
+0x1.b7cfdp+1
+0x1.2ad0f8p+3
+0x1.f5606p+1
+-0x1.ba05f2p+2
+0x1.1ee5cp-1
+-0x1.20cfb4p+1
+-0x1.240c88p+1
+-0x1.d963ap+2
+0x1.c8658p+1
+0x1.bf8d8p+2
+-0x1.0ef89ap+3
+0x1.cceacp-1
+-0x1.3bdb1ep+3
+0x1.a35d78p+2
+0x1.267954p+3
+0x1.9ede38p+1
+-0x1.78dbfcp+2
+-0x1.b22f6ap+2
+-0x1.1b672p+0
+-0x1.844618p+2
+-0x1.15a278p+2
+-0x1.2f0112p+3
+-0x1.bd81ap+1
+0x1.7716p+1
+-0x1.2ea598p+3
+0x1.0ccafp+2
+0x1.df56f8p+2
+-0x1.d55bp-1
+-0x1.c8dd86p+2
+0x1.70de78p+1
+-0x1.714428p+2
+0x1.ce2d2p+2
+-0x1.065678p+3
+-0x1.2e50f8p+2
+0x1.1d01dp+3
+-0x1.1eae3cp+3
+0x1.3f334cp+3
+-0x1.3fbcap+3
+0x1.07556cp+3
+0x1.f223bp+2
+-0x1.f4abf4p+1
+-0x1.16004p-1
+-0x1.6d52acp+2
+0x1.6286fp+1
+-0x1.1dbcecp+3
+0x1.435484p+2
+0x1.31163p+3
+-0x1.62042p+1
+-0x1.fd1bf4p+1
+-0x1.0d987ap+3
+0x1.a97p+1
+0x1.ecb8cp+0
+0x1.0a868cp+3
+0x1.0e1fa4p+2
+-0x1.802e64p+1
+-0x1.3280a8p+2
+0x1.31c52cp+3
+-0x1.de6ff8p+1
+-0x1.119fep+0
+-0x1.05be58p+2
+0x1.d7e2a8p+1
+0x1.85b5cp-1
+-0x1.d3673ap+2
+-0x1.1e019ep+2
+-0x1.fc1448p+2
+-0x1.9770cp+2
+0x1.290d3p+1
+0x1.10565p+2
+-0x1.b2c45p+0
+-0x1.bbc7d4p+1
+0x1.30cd18p+3
+0x1.d2ad18p+2
+-0x1.9e7848p+2
+-0x1.d4d5dp+1
+-0x1.1124cp-2
+-0x1.900bp+1
+-0x1.e11dd4p+2
+-0x1.6d152ep+2
+0x1.76d41cp+2
+-0x1.9fbcbp+2
+0x1.c5cc1p+1
+0x1.6c2f04p+2
+-0x1.f68cp+0
+0x1.a71958p+2
+0x1.3844e8p+3
+0x1.338b5p+3
+0x1.fea48p+2
+-0x1.ed2d8p-2
+0x1.5bf70cp+2
+-0x1.1f01ep+0
+-0x1.5a9aecp+1
+0x1.23b08cp+3
+0x1.c2278p-1
+-0x1.940518p+1
+-0x1.36c55p+3
+-0x1.4f5cd8p+1
+0x1.53a71p+2
+-0x1.03b896p+2
+-0x1.4b472ep+2
+0x1.a364b8p+1
+0x1.0ac0a4p+3
+0x1.b68bf8p+1
+0x1.9ff378p+1
+-0x1.d5adccp+1
+0x1.1ed678p+3
+-0x1.db37ep+2
+0x1.9d1ee8p+1
+0x1.2c4038p+2
+0x1.1635bp+3
+0x1.defcp-1
+0x1.9b86dp+1
+-0x1.276d88p+2
+-0x1.10526p+1
+0x1.6f891p+1
+-0x1.c00c2p-1
+-0x1.eb9b2p+2
+-0x1.5387p-2
+0x1.d33e68p+2
+0x1.4ce548p+1
+-0x1.27ca7ep+3
+0x1.417138p+2
+-0x1.8f533cp+2
+-0x1.a18724p+2
+-0x1.af9e9ep+2
+-0x1.d69394p+2
+0x1.1aa9e8p+1
+-0x1.3b8bc6p+2
+-0x1.555e7cp+2
+-0x1.ae24f4p+2
+0x1.bda4p-5
+-0x1.6d6902p+2
+-0x1.178p-3
+0x1.916e3p+2
+-0x1.35be2p-1
+-0x1.eb0498p+2
+-0x1.7aa32ap+2
+0x1.91aaap+2
+0x1.64746p+0
+0x1.0902d8p+1
+-0x1.65e058p+1
+0x1.252798p+3
+-0x1.351c64p+3
+0x1.252568p+3
+0x1.757f5p+2
+0x1.f37c3p+1
+0x1.2febacp+2
+-0x1.e60f8cp+2
+-0x1.06da14p+2
+-0x1.d758dap+2
+-0x1.52e58p-3
+-0x1.29f84p+0
+-0x1.359e4p+1
+0x1.6bf35p+2
+-0x1.9a2f5cp+1
+0x1.936dap-1
+0x1.80043p+1
+0x1.93e5d8p+1
+-0x1.93cba8p+2
+-0x1.f9acp-2
+0x1.7f29cp-2
+0x1.1c8bfcp+3
+0x1.2a93d8p+3
+-0x1.7d425p+0
+0x1.2e7d68p+3
+-0x1.a9fe9cp+2
+0x1.3abeb4p+3
+0x1.3d8eap+3
+0x1.bc643p+2
+0x1.55c3p+0
+-0x1.43ca5p+1
+0x1.343044p+2
+-0x1.b32a4p+2
+0x1.94aap+0
+0x1.c995c8p+2
+0x1.87bdc8p+2
+-0x1.42f51p+2
+0x1.0ca1b4p+3
+-0x1.33a664p+3
+-0x1.c410f8p+1
+0x1.95a6dp+0
+-0x1.00bb34p+3
+-0x1.281ep-4
+0x1.3d59bp+2
+-0x1.aa3fp-1
+0x1.fde138p+2
+-0x1.9961ep-1
+0x1.8cb2ep+0
+0x1.0ccb58p+2
+0x1.faa87p+2
+-0x1.b620acp+2
+0x1.c9b24p+1
+-0x1.2b85a4p+1
+-0x1.14a108p+3
+0x1.282d44p+3
+-0x1.313d7p+1
+0x1.1dadcp-1
+-0x1.223f44p+1
+0x1.262308p+3
+0x1.8b699p+2
+-0x1.05d91p+0
+0x1.22887p+3
+-0x1.a9d59cp+2
+-0x1.03a54p+3
+0x1.29c744p+3
+-0x1.3883fp+0
+0x1.507d2p+1
+0x1.47b748p+1
+-0x1.2bea24p+3
+-0x1.8fde8p-1
+-0x1.8ba632p+2
+-0x1.30fap+0
+-0x1.358f78p+1
+-0x1.aefaep+2
+0x1.3d8dep-1
+0x1.06052cp+2
+0x1.1ebf94p+3
+0x1.669fep+2
+-0x1.daa51p+0
+-0x1.8bedp+0
+0x1.a2c55p+2
+-0x1.b87c0cp+2
+0x1.27fd48p+2
+0x1.32f67cp+3
+0x1.53f2cp+1
+-0x1.990c2p+1
+-0x1.3ae906p+3
+0x1.9ec128p+1
+-0x1.971eap-1
+-0x1.0b6bf6p+2
+-0x1.dcef8cp+2
+-0x1.f33404p+2
+0x1.23da6p+2
+0x1.ac8ea8p+1
+-0x1.0d71b4p+3
+0x1.70d2dp+1
+0x1.0872d4p+3
+-0x1.aa91e2p+2
+-0x1.3f4d3p+0
+-0x1.723594p+1
+0x1.392748p+3
+-0x1.7b3e82p+2
+0x1.bb1558p+2
+-0x1.124544p+1
+0x1.bf8eap+2
+-0x1.d38534p+2
+0x1.323ap+2
+-0x1.040f98p+1
+-0x1.cd7e1p+2
+0x1.f08a6p+2
+-0x1.e6c6b4p+1
+0x1.000aa8p+2
+-0x1.1083dp+0
+0x1.18180cp+3
+-0x1.2cae7cp+3
+-0x1.ccb818p+1
+0x1.5a9a8p+2
+0x1.59c16p+0
+-0x1.61cp-2
+-0x1.8830dp+2
+0x1.c37ec8p+2
+0x1.b75ee8p+2
+0x1.709d3p+1
+0x1.848a6p-1
+-0x1.6cb538p+2
+0x1.12f69p+2
+0x1.fa4f9p+2
+0x1.f3982p+0
+-0x1.e0918p-2
+-0x1.e77beap+2
+0x1.0f3b9p+1
+-0x1.786ad4p+2
+0x1.29346p+3
+-0x1.4b0e9p+1
+-0x1.2a2d74p+3
+-0x1.0e28fep+3
+0x1.b5df8p+2
+0x1.31d814p+3
+-0x1.3cfad8p+2
+-0x1.e205cp+0
+-0x1.7a0684p+2
+0x1.be3b6p+2
+0x1.2d1274p+2
+0x1.16de74p+2
+-0x1.99ee4p+2
+0x1.0b9034p+3
+0x1.27e108p+3
+0x1.3615ep+0
+-0x1.15ad78p+1
+-0x1.7c7fp-2
+-0x1.47b824p+2
+-0x1.144204p+1
+0x1.83082p+2
+-0x1.d26d9p+0
+-0x1.0aa2cp+1
+0x1.2f61e8p+3
+0x1.12ca4p+1
+0x1.38e0dp+0
+0x1.3082p+0
+-0x1.0b23bcp+3
+-0x1.ae7da6p+2
+0x1.2259f8p+3
+-0x1.f942cp+0
+0x1.0e2038p+3
+-0x1.346e94p+2
+0x1.70d4ep+1
+0x1.29b664p+3
+0x1.0bc478p+2
+-0x1.bf95bp+0
+-0x1.3ed4cap+2
diff --git a/benchtests/log2l-inputs b/benchtests/log2l-inputs
new file mode 100644
index 0000000..48ce8e3
--- /dev/null
+++ b/benchtests/log2l-inputs
@@ -0,0 +1,1004 @@
+## args: long double
+## ret: long double
+## includes: math.h
+# Random inputs in [-exp(1),exp(1)]
+0x1.500529da897abp+1l
+0x1.e6b52729fae48p-1l
+0x1.0b01d54464c17p+1l
+-0x1.0fac96ab7114ap+0l
+0x1.2bda70ab74375p+1l
+-0x1.b54ed84c976adp+0l
+-0x1.d2fc114f6341ep-1l
+-0x1.9ef90df4bb054p+0l
+-0x1.0fe4cca59e3fp-2l
+0x1.4e794361d0141p+1l
+-0x1.48587c85bee62p+1l
+-0x1.0b92f2f0b7717p+0l
+0x1.7be80e3460156p+0l
+0x1.4309689be9a4bp+1l
+0x1.4b5492ff716a2p+0l
+0x1.1bcf12941217p-3l
+-0x1.08df7dc996448p+1l
+-0x1.250eeaf9c2b1fp+1l
+0x1.1794ac66704cdp+1l
+-0x1.460bff5e728d8p-1l
+0x1.2a6998ad63b7dp+1l
+-0x1.2bbb829960c7dp+1l
+0x1.82e3556af13cap+0l
+0x1.1604a960941cp-2l
+-0x1.53603d6bb31f8p-2l
+0x1.5bbc11ae7c37ep+0l
+-0x1.933c0f19d1fdp+0l
+0x1.e7bf1bc2d92bep+0l
+0x1.03f04d937cd2bp+1l
+-0x1.7fa1d81be7144p-1l
+0x1.0046ad9bed0e1p+1l
+-0x1.c9eb2026b2063p+0l
+0x1.d69992c2b7324p-1l
+-0x1.fb4962c1924fp+0l
+0x1.4d1c4eb2f95f7p+1l
+-0x1.7a4aa1bbb868p-1l
+0x1.5883cb80d63c8p-2l
+0x1.885ff16334a1ep+0l
+0x1.181f67d2b44p-1l
+0x1.50b9b751736e9p+1l
+-0x1.39da81c5a8fbp-2l
+0x1.cb5b85e5935a2p+0l
+0x1.00b2c89563c8cp+0l
+-0x1.435a7db319fc9p+1l
+0x1.7e0ec32c48762p+0l
+0x1.d550bd125b94ep+0l
+0x1.0c5d0d5bb54d5p+1l
+-0x1.546d7fed7be52p+1l
+-0x1.3d9639a486d5bp+1l
+-0x1.f525ffa8abafp-2l
+-0x1.d7ac3bca337fp+0l
+-0x1.56618c8c47d31p+1l
+-0x1.75f7b57594dap-3l
+0x1.9b4d3bd25623cp-1l
+0x1.3cac55b28aad8p-1l
+-0x1.0fc99384dc0abp+1l
+-0x1.f61935e5c5cc7p+0l
+-0x1.eb5273f79efaep-1l
+0x1.3d1538181e7d1p+1l
+-0x1.e4edf407a133p-1l
+0x1.94d226577fb68p-2l
+0x1.51f467b1d301dp+1l
+0x1.882920e4c9f66p+0l
+0x1.a0e7958ca18dp-2l
+-0x1.d572408305bf8p-1l
+-0x1.c43cbd998771cp+0l
+-0x1.c5f9b6506e7a2p+0l
+0x1.03636903e71ap-4l
+-0x1.a5e1de6fe42p-2l
+-0x1.1cf8e277d51a9p+1l
+-0x1.6255e670ef1cbp+0l
+-0x1.4158a669aabep-4l
+-0x1.911765d5aa3cp-5l
+-0x1.10fb73bbf39edp+0l
+-0x1.54553772ac3fdp+1l
+0x1.df2fcab96644ep+0l
+0x1.89abb8a7d284p-3l
+-0x1.1219e2f46c6b9p+0l
+-0x1.567b7bd4b08ecp+1l
+-0x1.01ee6f54ec228p-1l
+0x1.344cba1775a47p+1l
+0x1.7fb8c65afdc2p-1l
+-0x1.c7394973c9081p+0l
+-0x1.19e59cb48d755p+0l
+0x1.64a25357bf46ap+0l
+-0x1.44604f3a8d42cp-1l
+-0x1.2b77b1ab1bbep-4l
+0x1.0889d1b49e43fp+1l
+-0x1.3b626633fe218p+0l
+0x1.234a3924d2065p+1l
+0x1.caeef3263d7dp-2l
+-0x1.48a21c8aa5149p+1l
+-0x1.5e034010fa97bp+0l
+0x1.31006ffa37009p+1l
+-0x1.351893020ee58p+1l
+0x1.9392dc25703ep-2l
+0x1.43f42c18f5ff3p+1l
+-0x1.87dbc7455f6b7p+0l
+-0x1.791f6a695e0e2p-1l
+0x1.bb335783a7c02p+0l
+0x1.a5720a4b275d4p-1l
+0x1.83dd0c096f67ap+0l
+-0x1.6ec876202dcep+0l
+-0x1.1438d7f41a8ap-4l
+0x1.c6185d6f1705ep+0l
+0x1.753133481597ep+0l
+-0x1.bdc6e0d2dce17p+0l
+-0x1.682b191947c9p-1l
+-0x1.01f233c955d4cp-1l
+-0x1.0ff2ab2ea1038p-2l
+0x1.c5e4107cfb92ap+0l
+0x1.2260e6cefd587p+1l
+-0x1.416b939f3a4d6p+0l
+-0x1.3eb2697c9adecp+1l
+-0x1.0bf902862927p-3l
+-0x1.86539d4aabbe9p+0l
+0x1.3b563072d68f8p+0l
+-0x1.2cc0c0dc16f77p+1l
+0x1.fd31fcf803dcp-1l
+0x1.48189258a052fp+1l
+-0x1.8a88232b2823ap-1l
+0x1.e1e5f9b71237ap+0l
+0x1.73a024893c3fap+0l
+-0x1.6f22f96da86ep-2l
+0x1.3afbcb2e215dfp+1l
+0x1.f7d55dc49c5f4p-1l
+0x1.30767e3a9b48cp-1l
+-0x1.b83fff45a9f8p-3l
+-0x1.559a808d7c553p+1l
+-0x1.2322336696b87p+0l
+-0x1.b24049fd5c4f2p+0l
+0x1.dcfb7b479942p-2l
+-0x1.5b420d5fb3e16p+1l
+0x1.0dcfe3dc609ap-4l
+0x1.10e94fc3076a8p-1l
+-0x1.4703198f7945ap+1l
+-0x1.4df1ebcaf4293p+1l
+-0x1.5b114ab6f1c15p+0l
+-0x1.134541ae2c68p-1l
+-0x1.66a17d5806a9p+0l
+-0x1.1f47ce7720127p+1l
+-0x1.b58b7ffb233a2p+0l
+-0x1.ed425d6aef464p+0l
+0x1.4e7aedaf02814p-1l
+0x1.10afc0039a441p+1l
+0x1.e9721426f8e16p+0l
+-0x1.1f94593947bp-3l
+-0x1.3f59a97fe97cap+1l
+0x1.2cdbb0d9e5d63p+1l
+0x1.df8199a085e26p+0l
+0x1.6eb2d2fc06328p-1l
+0x1.35d92f02ba646p+0l
+0x1.486c5d7b70d2fp+1l
+0x1.bb3dad8c1a3p-2l
+-0x1.0043b12147f8p-1l
+0x1.1374b7c7d3866p+0l
+0x1.f61f6df44bdep-2l
+0x1.b722a2a17952ap+0l
+-0x1.2957eb68148f6p+1l
+0x1.42e67b0756556p+0l
+-0x1.005d5470e2ee9p+0l
+0x1.ae89b29dba2p-3l
+0x1.b8efb511dee2p-2l
+0x1.720943efd35f4p-1l
+0x1.81e7a7b2b1ef6p+0l
+0x1.546cd5f1c22dbp+1l
+0x1.53de98c35f80ep+0l
+-0x1.a7c105655314p-2l
+-0x1.e988e62365788p-1l
+0x1.b07eed49b8078p-1l
+-0x1.3a39ba6c52a54p+0l
+0x1.3722442ac3573p+1l
+-0x1.e8f437ce0874ep-1l
+-0x1.55a0e463a9795p+0l
+-0x1.0c4096a91e0bcp-1l
+0x1.f3ba6cd1c127ap+0l
+-0x1.24910f0655d9cp+1l
+0x1.be32af3e5a152p+0l
+-0x1.ec9a89373437dp+0l
+0x1.ba51c02c4cae6p+0l
+0x1.303052586ebd3p+1l
+-0x1.6858c96e9f06p-2l
+-0x1.3d92ff779165dp+0l
+0x1.7f0c6c1701062p+0l
+-0x1.4a8911ac56164p+1l
+-0x1.fd6cb324f8866p+0l
+0x1.0f341917c9eddp+1l
+-0x1.2dfbdbf47a5a7p+1l
+-0x1.cced13ffc97ep-4l
+0x1.37430bd835a53p+1l
+0x1.2cc78b1495fd2p+0l
+0x1.d44f82d3e369ap+0l
+-0x1.49ce4d0c180e8p-2l
+0x1.d256863c4703cp-1l
+-0x1.d5df801ca72dp-1l
+-0x1.292cb876414e1p+1l
+-0x1.85f321e83a08ap+0l
+0x1.343e8ccc41cbap+0l
+0x1.2d3a564271f4bp+1l
+-0x1.a7ae10dd13922p-1l
+0x1.44a35c2ac73p-4l
+-0x1.14f73c4031748p-2l
+0x1.7b0b106c2f65p-3l
+0x1.54bc5e8981527p+1l
+-0x1.67fc3cfbc6f88p-1l
+-0x1.b25d5ac24e1adp+0l
+0x1.211b2e658481p-2l
+0x1.5272b3a10d987p+1l
+-0x1.f9c3b641659ap-3l
+0x1.5a27a815ec5cap+0l
+-0x1.4e92118ebe748p-1l
+-0x1.0fdd6db571854p+0l
+0x1.2ff2fe2d0fa4bp+1l
+-0x1.6cebb2ea8a7dp-3l
+0x1.059322ba9739p+0l
+0x1.2c671dc283f7p-1l
+0x1.43ba869684acbp+1l
+0x1.10273d980e9dep+0l
+0x1.5e31d058df452p+0l
+0x1.54c0d705b100dp+1l
+0x1.5ed3438749642p+0l
+-0x1.2f43bfc78cffp+1l
+0x1.c56cb88f1f08p-6l
+0x1.871302926ae2p-4l
+0x1.a8adf8ce32f68p-1l
+-0x1.f94329b501ef8p-1l
+-0x1.6b02da409eddcp-1l
+-0x1.4c92949e94d71p+1l
+0x1.58f887287e5e7p+1l
+-0x1.2ad27c8e85947p+0l
+-0x1.1b90f768c817dp+1l
+0x1.486404b49c173p+1l
+-0x1.313b1ec65ed3p-2l
+0x1.e4106d361c158p-1l
+-0x1.3e70672a7c07p-3l
+-0x1.7a28e3bd3c3d6p+0l
+-0x1.da562f1209ep-2l
+0x1.25df501d68278p-2l
+-0x1.06f3d4198f6a7p+1l
+-0x1.47d012e6427c9p+0l
+0x1.09c5a227c75ap+0l
+0x1.0b3447e6e299dp+1l
+-0x1.3cc84d9d61a5bp+1l
+0x1.c12dac4c94e34p-1l
+0x1.38c9ea69d3f9ap+0l
+-0x1.9a4e05a9781p-2l
+-0x1.c069d87e7d5cep-1l
+0x1.20fee49e82079p+1l
+0x1.1387f7b090db7p+1l
+0x1.b4dcf76f0184p-2l
+-0x1.53c1eacecafddp+0l
+0x1.6b0127b729c12p+0l
+-0x1.30b2b0b3c346dp+1l
+0x1.61513edcff9acp-1l
+0x1.fe103764a152ep+0l
+-0x1.51483ff0572d8p-2l
+0x1.af92ed1eb4bdp-2l
+-0x1.fa606ba498dap-4l
+0x1.07d1c161915d4p+0l
+0x1.3f00894a3f99bp+1l
+-0x1.01cee14645d02p+1l
+0x1.04f508cd659bp-2l
+0x1.42f2a2a7ffef7p+1l
+-0x1.89f2c0965691fp+0l
+0x1.0dc82c251d338p+0l
+-0x1.415e7742671a8p-1l
+-0x1.491a5da66ca16p+1l
+0x1.83b818547086p-2l
+0x1.a1ee8c47521f6p+0l
+0x1.e6a953f1e0fp-7l
+-0x1.5eb2b3347c61p-2l
+-0x1.825c20f143a3dp+0l
+0x1.552f94327f27cp-1l
+0x1.1ecd17398820dp+1l
+-0x1.e33da24194d72p+0l
+0x1.2ad719dfa0c0dp+1l
+-0x1.33efdd9d89e9cp-1l
+0x1.20a5b4ec23a5cp-1l
+-0x1.910cc05a8c87ep+0l
+0x1.6ada78553822p-1l
+-0x1.44044788c7c54p+1l
+0x1.afc893025eb42p+0l
+-0x1.dc9e6b6504104p+0l
+0x1.5e35b37b866bap+0l
+-0x1.a737fb8ae762cp-1l
+0x1.759ce17fc3958p-2l
+-0x1.4ef2dee6560b8p-1l
+0x1.2359ab9ee0d87p+1l
+-0x1.a817685f0eac5p+0l
+0x1.4ee3d0c5bc057p+1l
+0x1.2839a79f4bee1p+1l
+-0x1.2075d33217092p+1l
+-0x1.2bede2515d96p+1l
+-0x1.15777003fb4a8p-1l
+0x1.0946416b6eda6p+0l
+-0x1.454877ca2f73dp+1l
+0x1.170bd4a264ca7p+1l
+0x1.253cf4235f7b7p+1l
+-0x1.48b0e92c9036ep+1l
+-0x1.40265191be638p-1l
+0x1.87fa8320882p-3l
+-0x1.4d885ae2f969dp+1l
+-0x1.1e7f4fb2a254fp+1l
+0x1.00f8ca46e0761p+1l
+0x1.1b8e1aca874p-9l
+-0x1.5570975649344p-1l
+-0x1.f3015b79aa708p-1l
+-0x1.e1c80276caddp-3l
+-0x1.377439bf6a42cp+1l
+-0x1.4a1ab83b1c733p+1l
+0x1.bcf9374c027b8p-1l
+-0x1.e033ac41d4cep-1l
+0x1.351778844c76p+0l
+0x1.94d3e4ba2d0f8p-2l
+0x1.ecdab5ac1e8p-10l
+0x1.0b616eb6a0a81p+1l
+0x1.5b99d1633ebe7p+1l
+-0x1.78d562782529fp+0l
+-0x1.ef21c847ae25p+0l
+0x1.3724bc3e8d1acp-1l
+-0x1.48550f5fa238ap+0l
+0x1.43a2fa478488fp+1l
+-0x1.2292b7ce59c21p+1l
+0x1.cebf1e62bf0cap+0l
+0x1.c8df239643e42p+0l
+0x1.518f0282db592p+0l
+0x1.0b5a1d8f801f4p-1l
+-0x1.1812b0e7e21fcp-1l
+0x1.1de0afaa31173p+1l
+-0x1.290a6d97cf45p-1l
+0x1.ef45b5669ae3p-3l
+-0x1.9d3c4b94f1e2dp+0l
+-0x1.3bd1aac8a37ffp+0l
+0x1.23d3ea8e0a5bfp+1l
+-0x1.0567142c41d1p-2l
+0x1.25560479a9fc7p+1l
+-0x1.0e8c9d78e77e1p+1l
+0x1.2ff758dc2c4bap+0l
+-0x1.16ae0e5c450d8p+1l
+0x1.6b72a1f8ae468p-1l
+-0x1.daf809877981p-2l
+0x1.59f567dd781cdp+1l
+0x1.5a430cb69279ep+0l
+0x1.b1f96f841fc6p-1l
+-0x1.d39ad26c0efe2p+0l
+-0x1.9af6590201a4p-4l
+-0x1.4246889861b29p+1l
+0x1.3e6d79eca12fdp+1l
+-0x1.18bec164f029p+1l
+-0x1.eecfbc0b447bp+0l
+-0x1.c0ae6a16e775ep+0l
+0x1.1957ab78108eep+0l
+-0x1.244c27bad5823p+1l
+0x1.cac2718b783bp-1l
+-0x1.986ce013d1e78p-1l
+0x1.d79e58b6e5884p-1l
+0x1.e6a36fa8ec7p-1l
+-0x1.fbfe0ba8fd35ep+0l
+-0x1.d549476bfd15p-1l
+-0x1.131b1d0fb5f7p-1l
+-0x1.b94ed76ddcddcp+0l
+0x1.c9bdc79094a02p+0l
+0x1.f52bc4aaff00ep+0l
+-0x1.1c59b98116285p+1l
+0x1.d925d548a8acap+0l
+0x1.0699f3e588dep-4l
+0x1.5842ae8c75d4ep+0l
+0x1.5aa7e6b480006p+0l
+0x1.18b76974101f1p+1l
+-0x1.9ac1a50c2dba8p-2l
+-0x1.0b6b13f72967cp+1l
+-0x1.3afc90b6c32dfp+1l
+0x1.4cd0606e0ed96p+0l
+0x1.07535283edc08p-1l
+0x1.01f1fb3cdffe9p+1l
+-0x1.efee39f19c48p-6l
+-0x1.a07739a471504p-1l
+-0x1.493b5f64e4a91p+1l
+0x1.5a1603f746b3cp-1l
+0x1.1a33b36fbc7e5p+1l
+0x1.7245d2c5730f6p+0l
+0x1.ebc78b1ca8732p+0l
+0x1.2f8e29bfd5a2p-2l
+0x1.486c87218af91p+1l
+-0x1.d5c6fc98b6ca2p+0l
+-0x1.d0866b647d5p+0l
+-0x1.59b6d4b32bf28p-1l
+0x1.d3801889d8fb6p+0l
+-0x1.e96d82a50b9fp+0l
+0x1.f95f8f842faf2p+0l
+-0x1.85e36e2adef72p-1l
+-0x1.01a142c6c798p-5l
+0x1.87a36923c13acp-1l
+0x1.b20fcf9af20b2p+0l
+0x1.6dea46cdbd98ep+0l
+0x1.a3de436b06ab6p+0l
+-0x1.03c8cabbcb684p+1l
+0x1.283af538745abp+1l
+0x1.62e13ed1d7ddep+0l
+0x1.0a812a1087269p+1l
+-0x1.e6f3b0cf7faccp-1l
+0x1.9b174c7d620e8p-1l
+-0x1.01699bfd7d0aap+1l
+-0x1.0f98fb02ecfbdp+1l
+0x1.22ac3bf83e7a1p+1l
+-0x1.23f07c2022733p+1l
+0x1.1ced725e6444p-2l
+-0x1.dee7aa9758e04p+0l
+-0x1.41a2f418df6ddp+1l
+-0x1.3c78774987df4p-1l
+-0x1.14c12241f4263p+1l
+-0x1.428c8d0628d84p+0l
+-0x1.5127ece4d0a28p+1l
+-0x1.01725427caa5fp+0l
+-0x1.562a98c38c2bep+0l
+-0x1.29f1277bc007ap+0l
+-0x1.5b6b5fc49581bp+1l
+0x1.2030378d0380fp+1l
+-0x1.db7b20b808018p-1l
+0x1.d61ca155053dep+0l
+0x1.3574a0c93eabep+0l
+0x1.82528c22ad868p-2l
+0x1.22d52a43781bp-1l
+-0x1.8f533672b1a9p+0l
+-0x1.d0e64db48d986p+0l
+-0x1.2f435a2f0c5bcp-1l
+0x1.20f2a5e524bf6p+0l
+-0x1.a7e6d200ee6d3p+0l
+-0x1.6a9cb8e3ea61cp+0l
+-0x1.b27a329733e36p-1l
+0x1.6cf7119a961d2p+0l
+-0x1.bdc4894f593cp-3l
+0x1.4891114276b51p+1l
+0x1.62cb3ef4a7bd8p-1l
+0x1.bb13077ca5584p-1l
+0x1.d92a13c77e98p-3l
+0x1.66f5b5704a15p-3l
+0x1.35da4a20c8f62p+0l
+0x1.87f177e1aacbap+0l
+0x1.f3e78a689acb6p+0l
+0x1.7f38e37846dbep+0l
+0x1.37ab65c3f0aafp+1l
+-0x1.570bf188a850cp-1l
+-0x1.263708edc72c8p-1l
+0x1.2c5756f166321p+1l
+-0x1.e0699eaf50458p-2l
+-0x1.6bba3b9ea5865p+0l
+0x1.2f77523815638p-1l
+0x1.d83bfd42ca198p-1l
+0x1.da502179a6548p-2l
+-0x1.83ad904496b8p-4l
+0x1.4087569a74539p+1l
+-0x1.ec3264392fc62p-1l
+-0x1.462d17444369bp+0l
+-0x1.ff1639156574cp+0l
+0x1.9616907bec27ap+0l
+0x1.1d2963e83f84p-1l
+-0x1.ded0a0754810fp+0l
+-0x1.9c85851e4e28p-6l
+0x1.edd9bd4548bep-4l
+0x1.f5b799e6c26e4p-1l
+0x1.bb28401c0e55p-2l
+0x1.3bd1474a9f65dp+1l
+0x1.218bca52cc28p-5l
+-0x1.3e2faf0c1e8cbp+0l
+0x1.f6617f6235ep-2l
+-0x1.38e643e3c3a57p+1l
+0x1.2542acf31135bp+1l
+-0x1.8d3ea5a6c70d3p+0l
+0x1.7b080310c0e9ep+0l
+-0x1.f35f1980a38eap+0l
+0x1.10c689a1af7a8p+0l
+-0x1.20b831aa4bb1ep+1l
+-0x1.90c2423ae653dp+0l
+0x1.4708a0c993f8ap+0l
+-0x1.fa0498edb198p-3l
+-0x1.75ee87187746ep-1l
+0x1.87182901e6d42p+0l
+-0x1.b969f5898bbbp-3l
+0x1.196a3ce8c7e25p+1l
+-0x1.4f8f5c8d48d78p-1l
+0x1.3d7f0f41cde7ep+0l
+-0x1.933bd8bba3ef2p+0l
+-0x1.f67816e4b301p-3l
+-0x1.aa92b4cb46ee2p-1l
+-0x1.684ead13b255p-1l
+0x1.871ff329050fp-3l
+0x1.e1c48531796fap+0l
+0x1.ff86fb87c256p-2l
+-0x1.1d99db40cc876p+1l
+-0x1.57029a6675bep-3l
+0x1.4e3c31c18d837p+1l
+0x1.44b0893492affp+1l
+-0x1.1b9ea821426ffp+1l
+-0x1.0e37a7e72d7cap+1l
+-0x1.282efd74248ep-1l
+-0x1.4935d3f77cb5p-3l
+0x1.956639546cf68p-1l
+0x1.9bd34a596b4cp-2l
+-0x1.c8b962c965642p+0l
+0x1.9558e24bc3f3ap+0l
+0x1.613938a7478e6p+0l
+0x1.2f9826c92eccfp+1l
+-0x1.52d78d7b870d9p+1l
+0x1.16c2802fea25p-2l
+-0x1.6cd39d8407442p+0l
+-0x1.2cf3149469476p+1l
+0x1.06f7a6d441b75p+1l
+0x1.cc1f572ef06a8p-2l
+0x1.3aa08b0610461p+1l
+0x1.2540915b3c89fp+1l
+-0x1.5ecca1dfa4b41p+0l
+0x1.31da813b320efp+1l
+0x1.4a3fbc16f1f4dp+1l
+0x1.ed5188e628788p-1l
+0x1.1ba27ded8d8bp-2l
+-0x1.ea451c0716e9cp+0l
+-0x1.727a6a86812c2p+0l
+-0x1.5aeb77bd311f8p-2l
+-0x1.514cedf0c27ap-1l
+-0x1.38a691d8b02eep+1l
+0x1.a1080d2372f28p-2l
+0x1.059a992dc829bp+1l
+0x1.3d0cf49990f5p-3l
+-0x1.06af88e720676p+1l
+-0x1.fc2b405d138e6p-1l
+0x1.4c65f8764d1fp-1l
+-0x1.747482bb4cdf2p-1l
+-0x1.c0208d9afdb2dp+0l
+0x1.a99730dff1cd6p+0l
+0x1.4a3fb3adeddfdp+1l
+-0x1.2ddcf02ced81p-1l
+0x1.82e1d9aa26a9ep+0l
+-0x1.1103cbd115215p+1l
+-0x1.f8d4b40ec968cp-1l
+-0x1.282954556a597p+0l
+0x1.167d2911894c4p+0l
+-0x1.d451a2465021p-2l
+-0x1.13251bd5e4ef3p+0l
+-0x1.646c831106c44p+0l
+0x1.18e05e7ca086p-1l
+0x1.2805868feb9f3p+1l
+-0x1.74a81c121246p-4l
+0x1.ca48d79d1fffap+0l
+-0x1.8c8042105d4cap-1l
+-0x1.10c25754d71a7p+0l
+-0x1.e1e2c0c3d420cp-1l
+-0x1.37e7bf335088p-6l
+0x1.e49b88e61c9ep-4l
+0x1.50525c8401faap+0l
+-0x1.808c937ce411p-2l
+0x1.2eb87be4025cep+0l
+0x1.07e873fb14p-2l
+-0x1.3957eedbaf8b8p+0l
+-0x1.05f3295aa0945p+0l
+0x1.66a8e5c24252p-4l
+-0x1.be0786b5362bcp-1l
+-0x1.86ada5031cb8p-3l
+0x1.a8ab63232453ap+0l
+-0x1.4539b7894d2cp-2l
+-0x1.0bf9180426aa2p+0l
+0x1.0904f52579b38p-1l
+-0x1.586c517ea2e5p-1l
+-0x1.c50eb80da5e0ep+0l
+-0x1.3d0c4b76afcccp+1l
+-0x1.2e9052957ee25p+0l
+-0x1.69ff9c9aea3fp+0l
+-0x1.c012f37ecb256p+0l
+-0x1.cd2ba39562068p+0l
+0x1.3115d4117efcfp+1l
+0x1.486bb6173b263p+1l
+-0x1.2115d71cea9ep+1l
+-0x1.081c93badff2ep+1l
+0x1.d0584b3cc1cap-2l
+-0x1.3a014264ac712p+1l
+-0x1.94bac00df1e1p-3l
+-0x1.99d5ba209a8b8p-1l
+0x1.01fc0d0423c0bp+1l
+-0x1.c6bec408ff0f8p+0l
+-0x1.28812ace8cfabp+1l
+0x1.3e945e46ac9b3p+1l
+0x1.63285671655bep+0l
+-0x1.6e831cd1fcd8p-4l
+0x1.a1328a3248a6ep+0l
+-0x1.3fc2478fc5fp+1l
+-0x1.421112d7ccc55p+0l
+-0x1.ceba5bc652a5p-1l
+0x1.d212340344bep-1l
+0x1.39b2290808c82p+0l
+0x1.815da0c543276p+0l
+-0x1.1e19c3d86ba7ep+1l
+0x1.d968abcea1f3p-1l
+-0x1.8415e0e78e758p-2l
+0x1.1ee3815b2bf79p+1l
+0x1.1e1efb3ac4e28p-1l
+-0x1.3bc438c75304dp+1l
+0x1.a758aeb673cfp-1l
+0x1.2b2e54a7e77dcp-1l
+-0x1.da4323414132cp+0l
+0x1.a34ca70f3c6a6p+0l
+-0x1.2d7b930a5f32p-4l
+0x1.c6cbae4cfe156p+0l
+-0x1.06876b2fe1db9p+0l
+-0x1.f1d20cf20b89p+0l
+0x1.68928fc9f5e4ep+0l
+-0x1.1755b5422b9fap+1l
+-0x1.b7fddeca251p-2l
+-0x1.84d9b54a1e95cp-1l
+0x1.d71f5414adaa2p+0l
+0x1.70f9340e0bda6p+0l
+-0x1.df52b2720e9d6p+0l
+-0x1.8ddd8fb3ef948p-2l
+0x1.512af39cbce23p+1l
+0x1.115a7de06c4e7p+1l
+0x1.80415b29bc3ep-4l
+-0x1.b1f86b728ce79p+0l
+0x1.4bd04337bdddep+0l
+0x1.b9a194676c364p-1l
+0x1.24a6ce45f360dp+1l
+-0x1.632c1da7e59ecp-1l
+-0x1.d915e57524b7p-2l
+0x1.468350f33f568p-1l
+-0x1.5bab5488010a7p+0l
+-0x1.d79c385e29d18p+0l
+0x1.e14e6329a36e2p+0l
+0x1.1577e38214f63p+1l
+0x1.215f3a3a589p-7l
+0x1.cc1813375701ap+0l
+-0x1.2092aac1f27ep-1l
+0x1.5ae20a0130cf3p+1l
+-0x1.5806e89c0221p+0l
+-0x1.d0f68562978b1p+0l
+0x1.ecca46114a2b8p-1l
+0x1.4c9f8890f78e5p+1l
+-0x1.499066710a1d3p+1l
+0x1.ded1495cd34p-3l
+-0x1.0e6c49fabca85p+1l
+0x1.2ba66baca8024p-1l
+-0x1.3ccc77bebc263p+1l
+0x1.141677913528bp+1l
+-0x1.1c98074edb178p+1l
+0x1.d3ab9b6c87cfp-1l
+-0x1.0455efddcecddp+1l
+-0x1.fa4509ec4dc6ep+0l
+-0x1.48b08392fe7cfp+1l
+-0x1.b71dc915a29f8p+0l
+-0x1.7c70502a5f5e5p+0l
+0x1.42490216aa4d7p+1l
+0x1.40e8355fca11cp+0l
+-0x1.ecca88054e94p-5l
+0x1.517b94f5b014p-3l
+0x1.25d8c1f8b92f5p+1l
+0x1.0cfa7f1fb067dp+1l
+-0x1.16b7dc8e6ab1fp+1l
+0x1.42fbb3ed208c5p+1l
+-0x1.51a965c60f1f5p+1l
+0x1.2df575383d082p+0l
+-0x1.6657c50c09128p-1l
+-0x1.294c65b5ec5e3p+0l
+-0x1.139420c73f96p-4l
+0x1.fc1f4a70ae2dp-1l
+-0x1.fcc277d4d26dp-3l
+-0x1.4da7dda04d047p+1l
+0x1.00c3c84a6dc77p+1l
+-0x1.1fac2fc3029ep-1l
+-0x1.52dd946119b0ap+1l
+-0x1.1afb938a3d54fp+0l
+0x1.dcd639b2c7e42p+0l
+-0x1.1cac2828794adp+1l
+0x1.8cabc4df01e46p+0l
+-0x1.38c934ae3fadcp+1l
+0x1.4b77f57e61448p-1l
+0x1.768589560462ap+0l
+0x1.e658e6158a19p-2l
+0x1.aff0d3ddfc34p-5l
+0x1.576765116db0dp+1l
+-0x1.2f52859b74c8cp-1l
+-0x1.e6e345ec1b55ap+0l
+0x1.84c48052c19bep+0l
+-0x1.5b2f3a7659535p+1l
+0x1.10b1ae61faba4p-1l
+-0x1.6fd9346d869abp+0l
+0x1.3183b600e4e2ep+0l
+-0x1.e18a61a5ea4dp-2l
+-0x1.4e94cbf830ep-3l
+0x1.951f4f02029bp-1l
+0x1.a1a183be7e6b8p-1l
+-0x1.41c599e6b0f33p+0l
+0x1.bdbf1fc6d56eap+0l
+-0x1.0b971e5f2c881p+0l
+0x1.1cde12f71e402p+0l
+-0x1.52f5564cae63cp+0l
+-0x1.a99e99de49dfcp+0l
+-0x1.7079dcb6bcf9p+0l
+0x1.1e0e33a1c0f39p+1l
+0x1.740b2f9c55898p-2l
+0x1.24cef58faa88p+0l
+-0x1.17c9c92ec7724p+1l
+0x1.2dac8288efc81p+1l
+-0x1.5849b513dd4a7p+0l
+-0x1.4604e4bd0786bp+1l
+0x1.c38978cdc434p-5l
+-0x1.3dc6c0d57daf8p-2l
+0x1.b8fd6580c3002p+0l
+0x1.cf1e4eb1c707ep+0l
+0x1.f4196fb3e9d12p+0l
+0x1.56644b68fddefp+1l
+-0x1.90a90f64f532ep+0l
+-0x1.45e7e611664a8p-2l
+0x1.6dbcf8f29419cp-1l
+-0x1.b1b619d7e112p-3l
+-0x1.2a4a7426c89bp-3l
+0x1.fb215284cd166p+0l
+-0x1.c35cb3d1f19p-7l
+-0x1.53ac2fb6e262p-2l
+0x1.3955d9cc4b4a8p+0l
+-0x1.42bc42d7009fap+1l
+-0x1.037b389b9207bp+1l
+0x1.46d154146aa3ep+0l
+0x1.225092f427cdcp-1l
+-0x1.37d07b4e0a262p+1l
+-0x1.ed4948348e1ap+0l
+-0x1.c56d8221c82b2p+0l
+-0x1.5202e5b5fbe1ep+1l
+0x1.fe099c5ed8386p+0l
+0x1.7f8345ac7fa1p-3l
+0x1.405d7c5b77c9p-3l
+0x1.320fcf529e13p-1l
+0x1.dda1fede42f8ep+0l
+0x1.fcbd802f39278p-2l
+0x1.adccfaaa3561ap+0l
+-0x1.a6bc24a2f8463p+0l
+-0x1.31dd375899a1p-3l
+-0x1.750eb0231b7cp-1l
+-0x1.ef92f06398d8p-6l
+0x1.e5136bad8a1eap+0l
+-0x1.cff68073f7aep-3l
+-0x1.7f592ac8e9bbfp+0l
+-0x1.e717a9a64e4b6p-1l
+0x1.ad1e0cb7fa6bap+0l
+-0x1.b17c82fd78cdfp+0l
+0x1.5404568d54338p-1l
+0x1.b1b060cd41a6p-1l
+0x1.10deb6bf5627p+0l
+0x1.45b66ea96afa8p-1l
+-0x1.d7b233f3b8ccp+0l
+-0x1.317a2eb38c111p+0l
+-0x1.541369f96aa34p-1l
+-0x1.e39499ed0acp-2l
+-0x1.c2526fdbb92fap+0l
+-0x1.6c043e4ebf129p+0l
+0x1.f2a694662e904p-1l
+0x1.c643422aa7b26p+0l
+0x1.4d7efcfaa8f9cp-1l
+0x1.e47a6ac1b5e12p+0l
+0x1.4175feaf718fp-3l
+0x1.026bada891cd8p+0l
+0x1.06c9a44a6aa75p+1l
+-0x1.0db6a1698853ap+1l
+-0x1.5bde1f3bd8c3p-2l
+-0x1.d674be4fccaa8p-2l
+-0x1.bd83da521950cp-1l
+-0x1.492dd9a70b91ep+1l
+-0x1.3668302ec526p-1l
+-0x1.405d34ea23c93p+1l
+0x1.06572e09b7f46p+0l
+-0x1.af3e7cf145052p+0l
+-0x1.33d8441fdc412p+1l
+-0x1.0c41ef2a5cffp-1l
+-0x1.f9b04e3de435cp+0l
+0x1.b421794694acp-4l
+0x1.07ae4e6fc22ebp+1l
+0x1.d8712468c1afap+0l
+0x1.40ef26fba1494p+0l
+-0x1.9e4de9d9b0f22p-1l
+0x1.56aea8eb764a5p+1l
+-0x1.2d0d25aaab94p-1l
+0x1.e83100585d552p+0l
+0x1.4f54d548923eap+0l
+0x1.2002da370d06ap+0l
+-0x1.7428639d5854ap-1l
+-0x1.2ea20d8753733p+0l
+-0x1.52b98983bccb8p+1l
+0x1.b6c611d946652p+0l
+0x1.a82693bcfc72p-1l
+0x1.4e327f8ca9747p+1l
+-0x1.e29a0764cac36p+0l
+-0x1.308bed76d0e8ap+1l
+-0x1.17b725f5d4481p+0l
+-0x1.1d629c46b2f7dp+1l
+0x1.e27d597cb3b56p+0l
+-0x1.3df682d7982fp-1l
+-0x1.38d2f9a5883f5p+1l
+-0x1.0efb3713e406p-3l
+0x1.6967c5a1f713ap+0l
+0x1.9a83405ab758p-4l
+-0x1.5cb59bdc46d6cp-1l
+0x1.30904227877dap+0l
+-0x1.58257c9457be1p+1l
+0x1.5db387b47d6d4p-1l
+-0x1.24af5f88054f1p+1l
+-0x1.cb20e7cbd015bp+0l
+0x1.448c43f927a7p-3l
+-0x1.5ff72304a0648p-2l
+0x1.42ab831f085p+0l
+-0x1.7b529c921bc22p-1l
+0x1.492a8e223561bp+1l
+-0x1.3a237fa403e01p+1l
+-0x1.086e8141f6b92p+0l
+0x1.373d1eb2a136p-1l
+0x1.735c85f00cb26p+0l
+0x1.2341c54045a11p+1l
+0x1.1ef09fdefc13p-1l
+-0x1.85f4047993e78p-2l
+-0x1.9e0d44af645fp-2l
+0x1.05ec87f200e0dp+1l
+-0x1.f599eaaeb9cc8p-2l
+-0x1.4a875cc613cc7p+0l
+-0x1.81ccd3086cd8ep-1l
+0x1.d5b15f1ddab9ep+0l
+-0x1.36fd037c2b4c4p+1l
+-0x1.aff397b51adcap-1l
+-0x1.e3d0552988b34p-1l
+0x1.ec6ef343bbfbep+0l
+0x1.bbaf20d14a78p-5l
+0x1.dc1974f948fdap+0l
+0x1.7b7adbefab864p-1l
+-0x1.4cfe2b792628bp+1l
+-0x1.12cafa727ea8ap+1l
+-0x1.5b3a25f4ea308p-2l
+-0x1.4aa910adfe77p+1l
+0x1.f7b14ef59b1dp-2l
+0x1.35c3e82b4255fp+1l
+0x1.15021a1cc0993p+1l
+-0x1.92049fd0d88afp+0l
+0x1.05459692b8d5p-1l
+0x1.6c82e30187cfp-1l
+-0x1.4292873d24e9dp+1l
+0x1.4b2c332546388p-2l
+0x1.d7db702906632p+0l
+-0x1.1c333d51d4fa2p+1l
+0x1.959cff5649f7p-2l
+-0x1.b93c45cc5eaap-4l
+0x1.0af5ac2e1ee2ap+0l
+0x1.e369488d3c94p-3l
+-0x1.032ad01ed299p-1l
+0x1.0465a3014511p-2l
+0x1.7acf550e8d91cp-1l
+-0x1.299bf8898ac02p+0l
+-0x1.010e09faa3aecp+1l
+-0x1.42f85dac104c9p+1l
+-0x1.1fa51b61a83a6p+1l
+0x1.3134efd37fa82p+0l
+0x1.47cefd5289e65p+1l
+0x1.021ca5ddacaccp-1l
+0x1.47504f141f11p-3l
+-0x1.464c4c85b76e2p+1l
+0x1.936400f1f64e6p+0l
+0x1.30c5a8cf423a1p+1l
+-0x1.007cd4b835f29p+0l
+0x1.2c97379231001p+1l
+0x1.4aecef72b2173p+1l
+-0x1.c312ab91c7984p+0l
+0x1.92f5d87cb07e6p+0l
+-0x1.857ff15d364f1p+0l
+0x1.3e82ca691b06dp+1l
+0x1.223c835d5211cp+0l
+0x1.198f1e77f8c68p-1l
+-0x1.553bd9b563p-11l
+-0x1.8f964cfe518bp-1l
+-0x1.89c37df3f033ep-1l
+0x1.50e610d3c8117p+1l
+0x1.5eb8433dd1e92p+0l
+-0x1.02a57d0d94d6ep+1l
+-0x1.2bc842a1248e8p-1l
+-0x1.06f92093540cp+1l
+-0x1.33a63c7f6addep+0l
+0x1.bc4de223f7e6p-3l
+0x1.fb77bb59e2c8p-3l
+-0x1.a00c04696bcd5p+0l
+0x1.3da779fc82c2bp+1l
+-0x1.3d3bd0f1e64c3p+0l
+0x1.0289f77ef6476p+0l
+-0x1.10b7e841dff18p+1l
+-0x1.28ccb014e4f57p+1l
+-0x1.988d214d014a5p+0l
+-0x1.274f7974d787fp+1l
+0x1.2142c9a548a66p+0l
+0x1.062ee62c918b8p-2l
+0x1.12085ff077eb4p-1l
+0x1.911f85ee69d7p-3l
+0x1.068d93d1f0e18p+0l
+-0x1.c270ddd8c19f8p-2l
+0x1.81f629f3524f6p+0l
+0x1.e5ec6533a8a78p-1l
+-0x1.d0673fe1d2384p+0l
+0x1.48923d78ec0eap+0l
+0x1.fefcc5dbc36p-3l
+-0x1.2c09aa40f0cd8p-2l
+-0x1.3c89a6c5ee0dep+1l
+-0x1.4a80ccd7988ap+0l
+-0x1.02dd0c289e04ap+1l
+0x1.bb9fe51cc5ep-4l
+0x1.b4d37b7ccc31p-1l
+0x1.cc6a6a0364a46p+0l
+-0x1.a8e21757b751ap+0l
+0x1.25e6c1ca4f72ap+0l
+0x1.196d8dc61d4edp+1l
+0x1.1818e591f5916p+0l
+-0x1.484842ba73681p+0l
+-0x1.e6c5aaacc6b16p+0l
+0x1.82d03ddfb0738p-2l
+-0x1.368ed439f232p+1l
+-0x1.4dd267bd91ccp-4l
+0x1.00e30e783c51fp+1l
+0x1.279785827b206p+0l
+-0x1.3327b95371504p-1l
+0x1.9cbcd8c60081p-2l
+0x1.90b0def609a78p-2l
+0x1.24e4d650d6341p+1l
+0x1.849ae0e02e6a2p+0l
+0x1.b93bf61476088p-1l
+-0x1.2d48a5abca121p+1l
+-0x1.5a97ef3c35687p+1l
+0x1.122e529d6e47p+0l
+0x1.4728e7ac5c14bp+1l
+-0x1.ff7119b64ce6p-4l
+-0x1.fefee3e6b45c8p-1l
+-0x1.3c7ec02136c98p-1l
+-0x1.16c381a4706ecp+1l
+0x1.fbd00480e839p-1l
+-0x1.09678d60d1935p+1l
+0x1.c08f217acd346p+0l
+-0x1.cb19201d35b66p+0l
+0x1.466e887d53637p+1l
+0x1.03bbdce969225p+1l
+-0x1.d04fbb6f9cd2ep-1l
+0x1.3b8cc6d33824p-4l
+0x1.2fcce79a670ccp-1l
+-0x1.87a8dd6eee3b6p-1l
+-0x1.13eb74d7008p-8l
+0x1.328205f24c158p+0l
+0x1.46cc8a1a28f84p-1l
+-0x1.8a24a7cfc8454p-1l
+-0x1.81d893d168abdp+0l
+-0x1.fc382cad04115p+0l
+0x1.09cc8b70ae254p+0l
+0x1.de42a45ddd882p+0l
+-0x1.100d16b9377f8p+1l
+-0x1.ff5c70983b04p-4l
+-0x1.0aa7eae611f3p-2l
+0x1.3e13f67ab1878p-1l
+0x1.6d2e6dd3b223p-1l
+0x1.3f2efa438c878p-2l
+0x1.d363c0f6b2c0cp-1l
+-0x1.26a2902848776p+1l
+0x1.7fb30a081f4cp-5l
+0x1.7b4163838f572p+0l
+0x1.4303c872923a8p-2l
+-0x1.175d82908a356p+1l
+-0x1.6ee810c63c61cp-1l
+0x1.1c6170e4709d5p+1l
+0x1.18f699b66dfdbp+1l
+-0x1.52bd8456ad665p+1l
+-0x1.18d626a36b368p-2l
+-0x1.3f3e94bb030ap-4l
+-0x1.74ccaa748dcfp-2l
+-0x1.3420a906be098p+1l
+0x1.8f4242eb5443ep+0l
+-0x1.42244e2f0f07dp+1l
+-0x1.354ec09d5b09cp-1l
+0x1.1e572614c5151p+1l
+-0x1.9a670dfebbd6ep-1l
+-0x1.e8a2be34d57p+0l
+-0x1.2ad78eb5b4c08p-1l
+0x1.00a02d479c86fp+1l
+0x1.ea1f8f3a93c7p-1l
+0x1.6597b6e7faa68p-2l
+0x1.c477616eca132p+0l
+-0x1.5481d04a7500ep+1l
+-0x1.c55b44e439636p-1l
+-0x1.b1891361d4c0ep+0l
+0x1.fcacc05e93b4p-4l
+-0x1.46ded79c8b682p+1l
+-0x1.161747e5e83cp+1l
+-0x1.7a3830372a017p+0l
+-0x1.4c5030c36ea98p-1l
+-0x1.0fec59836b1bcp+0l
+0x1.d11838ddb9ff8p-2l
+0x1.2836eda8d39c4p+0l
+-0x1.91258bbddd52p-3l
+-0x1.6f13df3b1df65p+0l
+0x1.bdd776de3aa4cp-1l
+0x1.57f232aaf1cc8p-2l
+0x1.cd2a9d2e77632p+0l
+0x1.c36e7274e145ap+0l
+0x1.7aac3b337294cp-1l
+0x1.11a07b0ef0af8p-2l
+0x1.439b7e56bf83ep+0l
+0x1.b6d82107ddf8p-2l
diff --git a/benchtests/modf-inputs b/benchtests/modf-inputs
index 4fcc99b..15cf352 100644
--- a/benchtests/modf-inputs
+++ b/benchtests/modf-inputs
@@ -1,4 +1,4011 @@
-## includes: math.h
## args: double:<double *>
-42.0
--42.0
+## ret: double
+## includes: math.h
+# Random inputs in the range [0.00e+00,1.00e+00]
+## name: workload-0_1
+-0x1.6e630a17ca32fp-1
+-0x1.ce6d439263cbep-3
+0x1.7a51a97c7ab91p-4
+-0x1.950321ffedc6dp-1
+0x1.ea1a012e7eef9p-1
+-0x1.f6d6dcd2e6a53p-1
+0x1.c6f883919e709p-2
+-0x1.43ca2b1c0af4fp-1
+-0x1.cca37bb5e06fbp-3
+-0x1.2adcb44aaecc8p-1
+0x1.15c1ce852da07p-2
+-0x1.a953701ac081cp-1
+-0x1.0eb8b1953e5d3p-2
+-0x1.ac54d0eb8786cp-1
+0x1.a0c61394d20d9p-1
+0x1.19ebd011beb3ap-1
+0x1.e0ca7b94029dep-1
+0x1.a7d34362b594fp-1
+0x1.1529f99e9bcefp-2
+0x1.f48cefde20e9ap-3
+-0x1.a65aa2ecb9f98p-1
+0x1.bace0da387b5dp-2
+0x1.7425bb4ecf39ep-1
+0x1.b16d2ac67cbaap-1
+0x1.386939056a404p-2
+0x1.a14ba9b35e386p-2
+0x1.b68ee6ece64fap-1
+0x1.4a2713e4fd051p-1
+0x1.da4d8e24e0f92p-2
+-0x1.7c0beeb8fa512p-1
+-0x1.1012e895971b8p-5
+0x1.1726ebec2f5b9p-7
+0x1.bccdfc659161cp-4
+-0x1.5026bff36000dp-1
+-0x1.30d3cb4c97af5p-1
+-0x1.533c09356b322p-1
+-0x1.df22e770357c3p-2
+-0x1.e1f1a5a20314dp-3
+-0x1.9a66ba26c2fbdp-1
+-0x1.cf0a17b009c07p-2
+0x1.650c209b63deap-1
+0x1.b154c73f9ceedp-1
+0x1.a92bb81b0143ap-1
+0x1.1d6201469bcf9p-3
+0x1.c4a535f5cb88ap-2
+0x1.28ba7702c834p-1
+0x1.f489ff0d3ddf7p-1
+0x1.453a71172704cp-2
+-0x1.666264f50fc66p-7
+0x1.05df83f9c0b7bp-2
+-0x1.750ba50f1d5fbp-1
+-0x1.23cf1b45fc788p-2
+0x1.d2479e7739ec6p-1
+-0x1.a840f91324ec2p-2
+-0x1.d4583b6754c31p-1
+-0x1.6f99a43213c5dp-1
+0x1.0494b636a8a06p-2
+-0x1.8af31fc189d4fp-3
+0x1.8e63c794bc25ep-2
+0x1.aec3fd01a22eep-6
+0x1.5013b70b24b01p-2
+0x1.cc54ea43a7b44p-1
+0x1.a1f654be01ad9p-1
+0x1.7b5336c848fe5p-1
+0x1.2df27bd1931eap-3
+-0x1.46fb2e45e66fap-1
+-0x1.d13c42f46b7dbp-1
+0x1.17eb272da8b57p-2
+0x1.a175d680bc219p-1
+0x1.a1d4ebb877c26p-4
+-0x1.1d3ff44ede10ep-3
+0x1.ab95dc7d48478p-2
+-0x1.50401efa8d3e9p-1
+-0x1.df250294c719p-2
+-0x1.2a406850a3ba7p-3
+-0x1.ccfa07f928dadp-4
+-0x1.1c5499aa98f46p-2
+-0x1.ea7d1d4e5b9fbp-2
+0x1.e4917bedc1964p-1
+-0x1.c1f4567d3afcdp-2
+0x1.d0aec0d70db5p-3
+0x1.7eb29c743a71ap-5
+-0x1.55a4451c1e504p-1
+-0x1.adc8e2cb9c6e7p-3
+-0x1.52981b6ffdd4dp-1
+-0x1.bf61015ae4092p-1
+-0x1.bf0410a49bc4fp-3
+0x1.682128a5314c9p-1
+0x1.5a2b74f47e41dp-1
+-0x1.60d9811f1cb35p-1
+-0x1.89b35b3983bffp-1
+-0x1.2dd13bc4684ecp-3
+-0x1.9741f8bce93cep-2
+-0x1.7f342ab0d1864p-1
+-0x1.04ef826cdcb09p-1
+-0x1.f2bd94a3f99aap-2
+-0x1.e06f4d7c31a9p-1
+-0x1.b2a29dcdaed9cp-1
+0x1.ae72901b353c6p-1
+0x1.57196ebac3f02p-4
+0x1.4c80b456630cdp-1
+0x1.1aaea9b3b3151p-2
+0x1.4f73745779a58p-1
+-0x1.4f522a0cc10e1p-4
+0x1.88bfa64e2bb66p-2
+-0x1.a1a4a2d80b7ecp-1
+-0x1.380eb5bf6600ep-1
+0x1.62e5f5113bbc6p-2
+-0x1.c5a149ce3ec08p-2
+0x1.757cdce523439p-2
+-0x1.7b3763b41825ep-1
+-0x1.65eafe57ca80ep-2
+-0x1.732c3ad935768p-2
+-0x1.7063d0b56d53cp-5
+-0x1.93aa0072fc1cp-1
+0x1.5b227e136164cp-2
+0x1.dfd57e3e149a6p-4
+-0x1.536603e6dcabbp-2
+-0x1.c74b8ad5ad51ep-1
+-0x1.95ac347750a5ap-1
+-0x1.9eaa616831fe6p-2
+0x1.6f9ff858a230ep-2
+-0x1.e77d356b747c8p-1
+0x1.5bc58d04e5d16p-7
+0x1.a5eb4ee1ff9f9p-2
+-0x1.588fb2edbd73ep-2
+0x1.9f89dbef4fad9p-1
+-0x1.3ec7dc08ff552p-4
+0x1.6c69db4961ec3p-1
+0x1.11e46eb946c05p-2
+0x1.40b231bc8992ap-1
+-0x1.48bf18f7fa19dp-8
+0x1.e9f46d6910b27p-4
+-0x1.a563269a8d9adp-2
+-0x1.01110022eb8e8p-2
+-0x1.781a20478d0d9p-3
+0x1.ab732c860842p-4
+-0x1.8601e76ac4e91p-2
+0x1.32c3de667cb2bp-1
+-0x1.0f4c3f2a7b663p-1
+-0x1.40778dcc5bb9ep-1
+0x1.0c5592f2389e6p-2
+0x1.20e366591a4b1p-1
+0x1.71d33ecc69239p-1
+-0x1.1db2ebc5b89cap-1
+-0x1.aa7eb5361c00ep-2
+0x1.4ac6f3dafed7dp-1
+0x1.7ceede92a008fp-1
+0x1.c5f212984c14ap-6
+0x1.ac3a9197ced66p-1
+0x1.c906b6a6ea093p-1
+-0x1.f9052709edc8ap-1
+0x1.0a724085b998p-1
+-0x1.c36a23a57033cp-2
+-0x1.cea70413f393bp-2
+0x1.d8c5c8e093d4p-2
+0x1.e00c9e14fa822p-4
+-0x1.13ddd594fddc9p-4
+0x1.f717eee64af85p-1
+-0x1.491d2ab76896ep-1
+-0x1.c7f313a79ab03p-1
+-0x1.682adc7f3e97cp-1
+-0x1.b2aa052eaaee7p-2
+-0x1.cdf6ae5de8a86p-1
+-0x1.a657198bc3901p-1
+0x1.67b0cd456e1c1p-1
+0x1.ddc200acde65ep-1
+-0x1.a0054ead8366ep-1
+-0x1.d4647835fe0c2p-3
+-0x1.aeb4be7e5f4ddp-1
+-0x1.56ab9369208fbp-1
+0x1.648b50042fdf2p-1
+-0x1.8c806fada6ce1p-1
+-0x1.ca39fb11b42b2p-1
+0x1.785dbdbb9713dp-3
+-0x1.5b9c3e6f277d3p-4
+0x1.fcd3f61612aa1p-1
+0x1.d6d78688af942p-2
+0x1.382ac0ee390a5p-2
+0x1.618e5efc02c5ep-2
+0x1.35081dce7dad9p-1
+-0x1.b63bca821380fp-8
+0x1.f49b1a69bad8fp-3
+0x1.4151d10ebf41cp-2
+0x1.4c7c3ca58fe39p-1
+-0x1.decc902848531p-3
+-0x1.9790ee7f01504p-1
+-0x1.bd7587b8d9f33p-2
+-0x1.fd9bec8cc6b7dp-3
+0x1.11e723a684645p-2
+0x1.9b2c5a032c61cp-1
+-0x1.af3ee7ec20752p-6
+-0x1.a27698d497949p-2
+-0x1.544a74a6505dbp-1
+-0x1.b6a3858f9effap-3
+0x1.7a0d7a218313bp-6
+0x1.e6f5acf851739p-3
+0x1.1260610c68cb2p-2
+0x1.34a5011474174p-2
+0x1.1f50828991755p-1
+-0x1.dd53d5d0e181bp-2
+0x1.51d06a20e47dep-1
+0x1.4009e5312e569p-1
+-0x1.1e3564a65cd75p-3
+-0x1.6bf311d85cb11p-1
+0x1.a9ffc24cfe639p-2
+0x1.6a4f84877fdc4p-3
+-0x1.4a7965c1067e4p-1
+-0x1.d9a8d19bbb4dbp-2
+0x1.dc36bff9551c1p-1
+-0x1.c61f9c2eb48c8p-1
+0x1.806f5183ce851p-2
+0x1.c0e53096a41d9p-1
+-0x1.f2e85f95ecac6p-1
+-0x1.60d304fc0596p-1
+-0x1.1f2957276a67ap-1
+0x1.6fa0db47d2271p-4
+0x1.016a317358fa8p-1
+-0x1.7d8def1dd6b59p-4
+-0x1.c8806e42df38dp-2
+0x1.f7a86eb6cbf51p-2
+-0x1.4c1485c1a7d45p-1
+0x1.5733cb5ea476fp-1
+-0x1.3751983f35a92p-3
+-0x1.9a2639eeab5b9p-2
+-0x1.fa3ba4b78d33fp-1
+0x1.c832546d2e7d9p-1
+0x1.b3228ef502091p-4
+-0x1.81e2e34d0a4bcp-2
+-0x1.469f7675b820cp-1
+0x1.a7c0dfeaa35cdp-2
+0x1.8efd2a56f506ep-1
+0x1.13289981dcd2cp-1
+0x1.1551206870fdcp-2
+-0x1.0fcf3615b46e1p-4
+0x1.4830475c41164p-2
+0x1.38f1305780663p-1
+-0x1.39b72a08627dap-2
+-0x1.a3bf59f409971p-1
+0x1.cb1fbcec83b3p-2
+-0x1.dba69fc11f5b6p-6
+0x1.1237b1d408c96p-1
+0x1.47e99551d8a34p-8
+-0x1.dc787283dbeafp-1
+-0x1.c8032a0ac52c3p-1
+0x1.62d570b38d375p-6
+0x1.84f4fff2be06fp-1
+-0x1.94bc5bfc7e17p-1
+0x1.055939b675809p-3
+0x1.5db37dd8b7f2ap-2
+-0x1.fdcf3d1f03939p-2
+0x1.e4dfaa1461145p-1
+-0x1.7bb93d6413f34p-7
+0x1.219dec08773a3p-4
+0x1.efa94c38288b4p-1
+0x1.cad49c0d90af6p-2
+0x1.43983b4cbc262p-2
+0x1.9409d10684842p-1
+-0x1.aa1306e414d54p-2
+-0x1.033f436c2e568p-1
+-0x1.3d8cf3ed7b71dp-2
+0x1.3b94c6bb48ec8p-1
+0x1.d77e515ca6d2p-3
+0x1.b0396aa7facd3p-1
+-0x1.874eae90d2251p-1
+0x1.257819cf096dp-3
+0x1.1e1236fc0e601p-1
+0x1.8b925abb9d85p-3
+-0x1.2ee2553af948bp-2
+0x1.7544cb37c6abap-1
+-0x1.61f31b27dd211p-3
+0x1.d8b094c02cbbdp-1
+0x1.bcf4fc940a36dp-1
+0x1.716994e168435p-1
+-0x1.8fee7a614bc5p-2
+0x1.a693454f8c23ep-4
+0x1.56667b44b6ca4p-1
+0x1.7973841921b9cp-2
+0x1.5279c198819ccp-2
+-0x1.525bd54aa4817p-1
+0x1.9801f3d5ed8cp-2
+0x1.a4cadfe0897cap-5
+-0x1.9d9118d8b8ec6p-1
+-0x1.c8b894eb8db7dp-2
+0x1.567287055313ap-1
+-0x1.d81db473ff9d5p-3
+0x1.56974c7cb92a6p-1
+0x1.7a123ea70901cp-1
+0x1.6c996664724a8p-1
+-0x1.6f617df96743p-4
+0x1.42d7a5fae74dcp-7
+-0x1.bfee780d9f151p-1
+-0x1.ae88ab0c9d95bp-2
+-0x1.64e7e56067859p-1
+0x1.0b5a4f239586fp-5
+-0x1.77e2f69ce7b19p-1
+0x1.e66bca8e704dp-5
+0x1.d23b3d496293fp-2
+0x1.e99adbc1ea718p-1
+0x1.f53f92c01d9ffp-2
+-0x1.5fc3e31fb96f7p-3
+0x1.d1174338f44f8p-1
+0x1.4a96a23e4adafp-1
+0x1.dd370ee17b5f4p-1
+0x1.32ac205268757p-1
+0x1.c2ddc90150b6ep-3
+-0x1.0416fc67b3124p-1
+-0x1.f4236f39aa298p-1
+0x1.dce56dc7b6bffp-1
+0x1.230d8a1a7a584p-5
+-0x1.4103976afe52ep-1
+0x1.273ab1e591887p-1
+0x1.fe577dafa66cap-9
+-0x1.6b03b75b761e9p-1
+0x1.a877fb88f476ap-1
+0x1.f40ec17d20bdep-1
+0x1.f3e64eec028e8p-1
+0x1.d77288d1278adp-2
+-0x1.6304cbbd963a7p-1
+-0x1.71c7c48922188p-3
+-0x1.71de204a8a44p-3
+-0x1.adb29f384e8f1p-3
+0x1.1cd2d1199c0c4p-1
+-0x1.b269bf6f64aafp-1
+0x1.6f9d3c35e3847p-3
+0x1.8c5ca7abb7abep-6
+-0x1.a75909ef34d94p-1
+0x1.a827c69e06831p-4
+0x1.dd40f19f2436ap-5
+0x1.2d81821d0621cp-5
+-0x1.262b47fd3b9f4p-2
+0x1.73071be27b6cdp-1
+-0x1.cbe9be87387f6p-3
+-0x1.59edb1a7b5e7p-1
+-0x1.8b3922539e2b1p-1
+-0x1.9ef3d6f66ec09p-2
+-0x1.28fc5855f33abp-2
+0x1.85aa85484be51p-5
+0x1.ee0fbf7dafedep-2
+-0x1.e9449fc4d1a53p-1
+-0x1.b5a55d684f9b6p-3
+0x1.073772c8b01c5p-2
+0x1.f0759e0af2f1fp-4
+0x1.120a7046728d2p-3
+0x1.83bce9c97bdbcp-1
+0x1.ff90e74033339p-1
+-0x1.dd5593c5e0f64p-1
+0x1.7d2d46a95a4edp-2
+-0x1.0b10881f3b96dp-2
+0x1.3159b898634b7p-1
+0x1.2fb72646e1b8dp-9
+-0x1.196e2aea1f5edp-1
+-0x1.acd3f03dcd54bp-4
+0x1.d7b97cf046b91p-1
+-0x1.68ed3abea053p-4
+0x1.1d44682ca6ed8p-2
+0x1.14cc5515eb3c3p-2
+-0x1.015337c2d348fp-1
+-0x1.89e6007d25b58p-1
+0x1.114c076ebfe3ap-3
+-0x1.a67b534095497p-1
+-0x1.a2687c50ec786p-1
+0x1.831f81ef1a80bp-5
+0x1.a1c7bdae567dcp-1
+0x1.b02d3bd6899bap-2
+0x1.958b68514a21fp-2
+0x1.0fda34bd4083ep-1
+-0x1.fb81756ae503p-1
+-0x1.0c22adf4959e2p-2
+-0x1.723bcb3a70b45p-2
+0x1.008d3575eb6b3p-1
+0x1.a35a3436bed4ep-2
+0x1.85f533ffd4ab3p-1
+-0x1.b77c702c40fbdp-1
+0x1.2957d83c3ab2dp-1
+-0x1.0614a3c5f6afep-2
+-0x1.ec0f0dba1dfb8p-3
+-0x1.1c062e964e525p-2
+-0x1.aa02e5f42783fp-1
+-0x1.a8986ab529aafp-2
+0x1.0df222b73941bp-1
+0x1.006e491c09199p-1
+0x1.6edb8d9728733p-1
+-0x1.606b145e356afp-2
+-0x1.ef96dff4ef36cp-2
+0x1.c5124297140cfp-1
+0x1.5f2b897ff8018p-1
+-0x1.3e41fea33fd1dp-3
+-0x1.ea7f4a079b0e4p-3
+0x1.ea13730aee4cdp-1
+0x1.0e509276eaf3dp-5
+-0x1.bb27568efe795p-4
+-0x1.aae4f579c4971p-4
+0x1.c372566d85f9dp-2
+0x1.4692ac8723819p-1
+0x1.087c6b5ed41f6p-1
+0x1.0b3f39d0e784dp-3
+0x1.8fa035c15dab9p-1
+-0x1.ad0676077afbp-2
+-0x1.536c2c67f186ep-1
+-0x1.c633734b6a25cp-3
+-0x1.bf1ec23cd7006p-2
+-0x1.4975c83245bb9p-1
+0x1.f6ae73d5a414ep-1
+-0x1.a0aceac09602bp-2
+0x1.2d6936390476ap-1
+-0x1.5633b92893036p-2
+0x1.6ca899da1342ep-1
+-0x1.d907ac2b7335dp-2
+0x1.c2398a2095915p-1
+0x1.afeb5e0edc2e1p-1
+0x1.d313382d97ba8p-2
+-0x1.de3eb3f3792f4p-1
+-0x1.4209616b6a18fp-4
+0x1.84fa8ef5cde52p-1
+0x1.8ddf3597af826p-2
+0x1.f6ad9af023424p-1
+0x1.fbd125354a289p-1
+0x1.43aacaf35e49cp-2
+0x1.320fbb50e250ep-1
+-0x1.074c7acb46341p-1
+0x1.15a3cfd13111ep-1
+0x1.b08e0d61476a3p-1
+0x1.48dec4a5d4e3ep-1
+0x1.a858dcba36f66p-1
+0x1.154b8bed13055p-2
+-0x1.f83b9931a10e7p-1
+0x1.47eb5d0bad469p-1
+-0x1.b3b1018ab2177p-3
+0x1.09ec4cd9bce19p-3
+-0x1.32f975c6f2c0cp-1
+0x1.2da6dbee622cfp-2
+0x1.6548950892f71p-1
+0x1.46e91085f61f1p-2
+-0x1.d49e79be97dep-3
+-0x1.30f85a352314fp-3
+0x1.be199005352e6p-1
+-0x1.0162069952317p-2
+0x1.eb73e5f778633p-3
+-0x1.12b084cd864d5p-3
+0x1.710061e986d99p-4
+0x1.28f4e6f890e28p-3
+0x1.0a9c62145dc71p-2
+0x1.8bf11afa7b87cp-1
+0x1.42e6127d1529p-1
+-0x1.030069b6c4034p-1
+-0x1.689c207da449ap-5
+0x1.4e438ec0d6fa3p-1
+-0x1.9e3005333293p-1
+-0x1.c6eecdb72372p-1
+-0x1.ee8d8ba468528p-2
+-0x1.b8a653c3a4fbdp-1
+0x1.518333f285641p-1
+0x1.476e65d17be7cp-1
+-0x1.2cdc6c24ed18bp-5
+-0x1.6b9f2fa05025p-3
+-0x1.fb76e3fd89781p-1
+0x1.f61cd47ffa496p-2
+-0x1.f850e4ccf2f96p-5
+0x1.90df38e476ed9p-2
+-0x1.c2ecd3d09fc68p-3
+-0x1.c36a561e90d24p-1
+-0x1.794faa9ebafaep-7
+-0x1.1008c2948fa73p-2
+0x1.4353d7be44a22p-1
+0x1.839bbad3f1ccp-1
+-0x1.48392084ca45ep-2
+0x1.b85556d38be78p-2
+0x1.ba099ab1e169fp-2
+-0x1.91df152f7fe16p-1
+0x1.18fc246857656p-1
+0x1.81d1fd20a3a03p-5
+-0x1.5f1feb775e188p-1
+0x1.d2a22093bf791p-2
+0x1.8a3e891ce9e45p-1
+-0x1.93a19555298ebp-1
+0x1.481ffd15af3b5p-1
+-0x1.730a71201d439p-2
+0x1.c4d14f288d9f2p-2
+0x1.6bd023e9a773p-1
+-0x1.0471e83c804d7p-1
+-0x1.37c98dac89709p-2
+0x1.3c1a16c1841f9p-1
+-0x1.b53d5d0ff08fbp-3
+0x1.62dd4e521c325p-1
+-0x1.c3103d54d772ap-1
+0x1.e4fdc7c4d2b4p-2
+-0x1.4e59dde294266p-3
+0x1.8b411a25251bcp-1
+0x1.d95a2960bc104p-4
+0x1.aa89013f7bb35p-1
+0x1.1645360db0b2dp-1
+0x1.ab2a822ac48dbp-1
+-0x1.bf3ec1d981d93p-4
+-0x1.e59d7c856e974p-1
+0x1.56f04b786e014p-1
+-0x1.d5cba7c7b514ep-1
+0x1.7394b90ec5fa3p-1
+-0x1.91b6d9eb5cbf7p-1
+0x1.7ee72d7389eabp-2
+0x1.046b0fb95aeabp-2
+-0x1.388c0fc439a02p-1
+-0x1.5953475f7d1ap-4
+-0x1.c9ca63d33185dp-2
+0x1.9778df9b55075p-2
+0x1.b026966de1248p-2
+0x1.0d4b7bda178f3p-3
+-0x1.a292e97f06284p-1
+0x1.1b3a92371beafp-2
+-0x1.c29785805483dp-2
+0x1.f287dbec9115fp-3
+0x1.9fd48eda0d0bdp-1
+0x1.f58244cf7f6ap-1
+-0x1.e446ec90bc1f9p-1
+-0x1.5f43a29e86843p-1
+-0x1.10d01d951f9d7p-2
+-0x1.9a5a876344939p-1
+0x1.877f3b1d84a48p-1
+0x1.865d5f8dc7d49p-3
+-0x1.1c6c9ffe2c724p-1
+-0x1.012ca742174dfp-1
+0x1.a24f1e16e28e5p-3
+-0x1.fafd6c8757364p-1
+0x1.21eea8b727b58p-2
+0x1.41f91748a57d8p-5
+-0x1.60da637fa6f92p-1
+0x1.15f515f28f0a5p-1
+-0x1.9dec42f12af71p-2
+-0x1.5431fcc045319p-1
+0x1.ad3dadc7f51c5p-1
+-0x1.4f436f5158686p-3
+-0x1.c0e0c813057ffp-3
+-0x1.9fcc87f9540d9p-2
+0x1.afbf0a8a1b0fep-2
+0x1.4a47ab69418eap-3
+-0x1.a23a549a556c3p-2
+-0x1.a01aeb6126e4dp-1
+0x1.df36a2db133bp-2
+-0x1.fed245e887555p-1
+-0x1.e2be0f0a991e7p-2
+0x1.8891d17147c1cp-4
+-0x1.0ad6e0a1c6ffbp-1
+-0x1.dbdb3c9565526p-1
+-0x1.34717d13cc8b1p-2
+0x1.af27de4c87d82p-2
+-0x1.1c652f8d06cd2p-1
+0x1.ef0b1c97618acp-1
+0x1.5774f6861640ap-1
+0x1.5802eff773eb4p-1
+0x1.cbbc23a994a8ap-1
+-0x1.c450de8f0f7a9p-7
+-0x1.315d272e7ee26p-3
+-0x1.3c5c7ba257066p-1
+-0x1.afc609c1a9c29p-2
+-0x1.d3606a329e899p-3
+0x1.749ef145de8cep-1
+-0x1.42f1e80bd05fbp-1
+0x1.ed228d197cf11p-4
+0x1.e0514c3e2064ap-6
+0x1.24a84a2ce0e07p-1
+0x1.8167c2bdd432bp-5
+0x1.42e810db59713p-1
+-0x1.73a5d76fc5908p-1
+-0x1.81ed073b0027dp-3
+-0x1.3838c0e170db7p-2
+0x1.b8e9d1bd2e29bp-1
+-0x1.c518c80bddaa1p-2
+-0x1.51e49eb7269acp-1
+0x1.68354a2226f19p-1
+0x1.7d69a3cfe5cbap-2
+0x1.b4d914f06744fp-3
+0x1.01e5f3b2574b2p-2
+-0x1.5917f74341d13p-4
+0x1.b4fbbce861564p-2
+-0x1.53bd2f4e506b3p-4
+-0x1.13918be6cf1cep-2
+0x1.823290e69939p-2
+0x1.f2396b6a9481p-3
+-0x1.3e4d819938e88p-1
+-0x1.b9cb19011c54fp-1
+0x1.69c59a9f9b0dep-1
+-0x1.3ad3ec2c839dep-2
+-0x1.c66feef5cda84p-1
+-0x1.f45bae6f536bap-1
+0x1.6f6aaa1a873abp-2
+0x1.0e0507ad0f0fep-7
+-0x1.42134b489658p-1
+-0x1.17370d3ce5c1dp-2
+0x1.86d283388a16bp-1
+0x1.3295879a7d0e2p-4
+-0x1.6b613b6eb852cp-1
+-0x1.958db68ac005bp-1
+-0x1.3164699a33f32p-2
+0x1.cdae8289e49d2p-1
+-0x1.96ecc6bd5747ep-3
+0x1.bdd6ad5e86427p-7
+-0x1.2b825d8fafbb2p-1
+0x1.43a3a8b95230ap-2
+0x1.02a4509b04328p-1
+0x1.bfc127ce23386p-1
+-0x1.7c243692a3feep-2
+-0x1.8a87e2d3af1fap-1
+-0x1.2809e8b423419p-3
+0x1.047a2d959097ap-1
+-0x1.105d10119b7a6p-2
+0x1.0b8f221b14e32p-1
+0x1.c48648704cf9bp-1
+-0x1.5222cd785e5f3p-2
+0x1.3242755407279p-1
+0x1.78c6835fa78dbp-2
+-0x1.49cb4fc667964p-3
+-0x1.0763652c87c1ap-2
+0x1.7c5c46a502f61p-1
+0x1.1ef8eecf381c3p-1
+0x1.edd3032b5d1a4p-1
+0x1.11855d10f418bp-2
+0x1.4fca68b47ddb9p-1
+-0x1.dccc83fb0704fp-1
+-0x1.4d426bdefad79p-5
+-0x1.e7b57b3fbe762p-2
+0x1.b8d3b7b70536ep-1
+-0x1.a2b46c424a8f6p-1
+0x1.d7d875f1363b4p-1
+-0x1.608c38e3446e7p-3
+0x1.8d568a035eb23p-2
+-0x1.ece254780a7f3p-4
+0x1.8eefdb0f8493bp-2
+0x1.49660e8e34b84p-5
+-0x1.8f3f8d0742328p-3
+0x1.6c186c587677fp-1
+0x1.99573b195c17fp-6
+0x1.0738bc09f2cadp-1
+-0x1.7146c6fb2e991p-2
+-0x1.f26caa82ecf79p-2
+-0x1.dd1edcf72fb5cp-1
+-0x1.3e5d1cd6423ap-1
+0x1.8714831872984p-10
+0x1.d6de062593036p-3
+-0x1.12dcf55c95c8cp-1
+-0x1.006afda493629p-1
+-0x1.920f3286ef85ep-1
+0x1.64d23e422fee3p-1
+-0x1.50fab66c95a73p-1
+-0x1.0c93ed9b91573p-2
+0x1.be64e0281445dp-2
+-0x1.ff145b843ed4cp-1
+-0x1.4a217119c2054p-1
+-0x1.ae55c47b0db28p-1
+0x1.9e7709ed6feb3p-2
+-0x1.3b3dbd0bef746p-1
+0x1.092422a12e91bp-5
+0x1.e12125e88bfb9p-1
+0x1.b2faf622f0d58p-1
+-0x1.e97cc1f76f59p-3
+-0x1.99f8338edb81fp-1
+0x1.91a005bd02fe9p-1
+-0x1.f0131ef21d48bp-1
+-0x1.25b3e3167bb89p-1
+-0x1.e4c80f6515b1p-2
+-0x1.edda17d2dd1b7p-3
+0x1.3135e8bbac5bbp-1
+0x1.4c07cde52ab9p-1
+0x1.d9480642ce652p-2
+0x1.d6bbbb62dd87dp-2
+0x1.dc3c87217035cp-1
+0x1.3e31c17eb591ap-3
+-0x1.6a78f82ff109fp-1
+0x1.587467c41ed0ap-1
+-0x1.bce658387237dp-3
+0x1.46dce967fa2cbp-3
+0x1.4a1fd4913e4d5p-1
+-0x1.64da3e62dedf1p-3
+0x1.094083dc46016p-1
+-0x1.37ecd79765c1fp-2
+0x1.497b639155f82p-3
+-0x1.be6eba4379d8p-1
+0x1.9719f66f42645p-3
+-0x1.0d053fce2861dp-1
+-0x1.5a579f6a77999p-2
+0x1.a51615053bc0ep-1
+-0x1.468d9ff5cbe5ap-2
+-0x1.6c22f6afbde52p-1
+0x1.ae3c7c4fc8f9ap-1
+0x1.5fc4cfbc6ac0fp-2
+0x1.414ce68baeda3p-2
+0x1.5ce923e623fa3p-2
+0x1.7cd8c7871e8fep-1
+-0x1.a0a18a1db8032p-5
+-0x1.365172fe07433p-1
+0x1.ae69f8438521cp-2
+-0x1.07b886fc2e35cp-1
+0x1.77bdabbd79aa1p-4
+0x1.119ba94203681p-1
+-0x1.d3fc68e6dc168p-2
+-0x1.4a046f073235ep-1
+-0x1.c500564819e35p-1
+-0x1.8b57d1f384909p-1
+0x1.7d6bf6adbb526p-2
+0x1.5ef14d0d18b82p-3
+-0x1.576116ecdadc4p-3
+-0x1.cb0aaafcd459dp-3
+0x1.ffbe058a014bap-1
+-0x1.bf38b6a57e3a7p-3
+-0x1.a1d0bb889af59p-2
+-0x1.fc95c9673f5b2p-3
+-0x1.280f4d228997fp-1
+0x1.753ad554ffcbbp-2
+0x1.7b70e42fa41a2p-2
+-0x1.ad6467ce4386fp-1
+0x1.1f58a21c270fcp-2
+0x1.9b7775bb1a935p-1
+-0x1.70b9c3b61940bp-3
+0x1.a14a99e9f146dp-3
+0x1.4a70940a508d9p-1
+-0x1.2e476ff73653p-1
+0x1.4ffe3611166e2p-1
+0x1.90962488a0699p-2
+-0x1.adb2a75672236p-1
+0x1.8b32868e31a58p-1
+0x1.d0201b8189666p-1
+0x1.b690b2a53f2d4p-1
+0x1.743c05832cc6dp-2
+0x1.2b3ee8ec82194p-1
+-0x1.ac8181f0e4c33p-2
+-0x1.1ae90f4377e15p-1
+-0x1.0e38e6d239e6ap-1
+-0x1.ae60325b31cd2p-2
+0x1.eb0065693b84fp-1
+-0x1.96f96ad818118p-1
+0x1.1f6ab898224a1p-2
+0x1.19c7bf3987c83p-1
+-0x1.b92183e7c2135p-7
+0x1.82a733ffaaa11p-2
+-0x1.5c488632925fap-3
+0x1.7c888169448eep-2
+-0x1.952dfeb5df323p-2
+-0x1.63df95fbfa80dp-1
+0x1.8df59f107debcp-1
+0x1.85f6b58fb515p-1
+-0x1.4f6bde1b62662p-4
+0x1.54b23ae8225c4p-4
+0x1.9473afd79c001p-2
+0x1.e8a478133609bp-4
+0x1.5116c044f59c4p-1
+-0x1.4e3be3c1e7313p-3
+0x1.55ebcfa288105p-2
+-0x1.ed118630d9f04p-1
+-0x1.2818cbd91d92bp-4
+-0x1.0d4585805be71p-1
+-0x1.036ad7ac50048p-2
+0x1.27660a1941cbep-1
+-0x1.4a77b55657f6dp-1
+-0x1.a44a13e9b164cp-1
+0x1.6da6d0d68cf7dp-1
+-0x1.93845e4ae4272p-6
+0x1.8aa5e68ec1ce9p-1
+0x1.66808d70cd286p-2
+-0x1.bf6ace089028bp-1
+0x1.e63b95b61261fp-1
+0x1.c4038218c03f2p-1
+0x1.3000a4afa8577p-2
+-0x1.3fabb7af69395p-2
+-0x1.5f6d1fa0c783p-2
+0x1.2f00d33d5a6bdp-4
+-0x1.c1dc4feb76da8p-1
+0x1.a703415f6fff2p-3
+0x1.94171a68695e6p-1
+-0x1.a1283d9006993p-2
+0x1.f1a4fa50945c1p-2
+-0x1.1600d9c43ef78p-3
+0x1.28388544feb3ep-2
+-0x1.56f8d00c5719fp-1
+0x1.fa13fc4a61229p-2
+-0x1.e9d3b6ea3cebep-2
+0x1.d51e4d5df679dp-1
+-0x1.d32b50e738a88p-1
+0x1.d18bd658c5364p-1
+0x1.8ad9071016ebfp-4
+-0x1.46f3c1f2cc2b5p-10
+0x1.8094da7c4362cp-1
+-0x1.039bf9de5b7p-2
+-0x1.c0afdf0336a89p-2
+0x1.ce90e47f32031p-2
+-0x1.702c679c1f0cdp-1
+-0x1.19befa09261b6p-1
+-0x1.792fcef338916p-1
+-0x1.36f3fd5a023cap-1
+0x1.9f1ef8a6b63b9p-4
+0x1.3e8f137a5d7a3p-1
+-0x1.056909f30a436p-6
+0x1.e2e53b7679f1cp-1
+0x1.2d1dd97f8f74cp-3
+-0x1.86ee330986ef4p-4
+-0x1.4900a73009ca8p-1
+0x1.ff2693df6237bp-3
+0x1.00e74ce3c150fp-2
+0x1.a7329f0d90c93p-2
+0x1.3dc5f6a7bde97p-2
+0x1.8ef03e5ed0196p-3
+0x1.b9ce030400a75p-1
+0x1.8f21cf0f28bcbp-1
+0x1.86d2215a2c9dap-4
+-0x1.0d1d61b1ae925p-1
+0x1.6695fbce4a72dp-1
+0x1.670b841841e69p-1
+0x1.e1cf744192477p-2
+0x1.834fd2b540964p-1
+0x1.c6f2c05feffe1p-1
+-0x1.ef30f2b375e37p-1
+-0x1.d0d99fb323395p-6
+0x1.7ef85ba49bdf5p-1
+0x1.27ca7658b7b62p-1
+-0x1.26cedd2cb5f7ep-1
+-0x1.35807523415fap-3
+0x1.d30e60159bee5p-1
+-0x1.58284f2becbf5p-3
+-0x1.c7b758fb02868p-2
+-0x1.0c1d196123cf6p-1
+-0x1.7f4de30ebdc8cp-1
+0x1.32720adca6fdap-3
+0x1.a87e5e615e9b4p-4
+0x1.2650c5f11b83cp-2
+0x1.92b639c7d231dp-1
+-0x1.e01f271b8a67bp-1
+-0x1.2a5211c162641p-1
+-0x1.4f637073cdcafp-2
+0x1.e092db79f1bacp-3
+0x1.650dcfaa95c0ep-1
+0x1.b5125651785e8p-3
+0x1.f53510490946bp-1
+0x1.6cc59f9bc9c01p-1
+-0x1.527b958faf8fcp-2
+0x1.574ff8bc15514p-3
+0x1.12c720baa6cedp-1
+-0x1.ec4b086cd3187p-3
+0x1.c274807c87754p-2
+-0x1.d7a9462ccadb1p-1
+0x1.5ef9f12132209p-1
+-0x1.081f57ec00e2bp-1
+0x1.48ec81eabd3d2p-4
+-0x1.4448cab08b2dfp-1
+-0x1.c3e5a75211969p-1
+0x1.7608d3cf6bbc8p-3
+0x1.4fa409e6be9e8p-1
+0x1.eb1441218fc91p-2
+0x1.af625e1960b79p-1
+-0x1.8ed7087aa41c3p-1
+-0x1.9131f526b11c7p-1
+-0x1.01a001ba18f54p-1
+-0x1.d58e75746178p-1
+0x1.cdf6493752c7ep-2
+0x1.45e4315672db5p-6
+-0x1.a50efd14a94ffp-1
+0x1.6ac2cb6487a28p-2
+-0x1.014b422daebcdp-1
+-0x1.53a7b37c38525p-3
+-0x1.5e00dc0040bd9p-2
+-0x1.bea16bbb84db1p-5
+0x1.15bfd66d9bb3dp-1
+-0x1.e89a07962680fp-1
+0x1.fd3fe6cd1e751p-1
+0x1.d08d776ad4aa2p-2
+-0x1.4fd1a1ec02989p-2
+-0x1.c565e80ef1c3bp-1
+0x1.e63099c8e2a34p-2
+0x1.6f76107350b81p-1
+-0x1.d1ba6fd21b4c8p-2
+-0x1.c982adb67b456p-2
+0x1.7725d95375068p-4
+0x1.f34daa1f87414p-3
+-0x1.3f5a9a00a68d9p-1
+0x1.ac1c2a8b2e65ap-1
+-0x1.54cade7180093p-1
+0x1.1143564578de6p-1
+-0x1.a31ad6cc22a8ep-1
+0x1.bbb692cb28925p-1
+-0x1.16589c035e0a1p-3
+0x1.e87a5a7f82e6ap-1
+0x1.f028bb33b0fdep-1
+0x1.e8ba05374f2bbp-3
+-0x1.2f391d822c8c6p-2
+-0x1.7036e40fa7d6fp-2
+-0x1.903c8aa462474p-1
+-0x1.0d0882fe9e839p-1
+-0x1.452adbc3e3e8p-3
+-0x1.5b7a2afa1f88dp-3
+-0x1.dd6a7c86f9982p-1
+0x1.8a156fad177bp-1
+-0x1.4fb0826f26172p-1
+0x1.875d459a6b997p-1
+-0x1.c3474e377564bp-1
+0x1.450b481435436p-1
+0x1.b93d66ea1559dp-1
+-0x1.7fc2938d38b99p-1
+0x1.e41159e3a61b6p-2
+-0x1.2867f3416d45ep-7
+0x1.a0bdd4c8622cdp-2
+0x1.ca0f84930057bp-1
+0x1.7defbc8110255p-1
+-0x1.f43bc7b2550ddp-1
+0x1.4d3e33d8501f8p-3
+0x1.6cacc29241f3bp-1
+-0x1.337c51d597cd6p-1
+-0x1.1f27750c1ec0fp-1
+0x1.267c3d869a7c5p-1
+-0x1.36bfee3748389p-3
+0x1.71507667b35d2p-2
+-0x1.31871a582b47fp-1
+0x1.649e3fb6571bdp-1
+-0x1.570bc8c01c94cp-1
+-0x1.71b547f14bb2bp-3
+-0x1.148f96f6e157p-2
+0x1.74703d2db2242p-1
+-0x1.30b7731543e45p-3
+0x1.6a17514a7eb0ep-3
+-0x1.ea28d52039008p-2
+-0x1.ec19565b7c751p-1
+0x1.b908e37de9af3p-1
+0x1.881ffc9e8a8acp-1
+0x1.98bdb0619eec8p-7
+-0x1.eddc7830eb2d2p-1
+0x1.2265f2a819f52p-1
+0x1.9be0cd0cd2662p-2
+0x1.2e300625482b6p-1
+0x1.7a4fdac30b45ap-6
+-0x1.112a8fea995d1p-1
+0x1.6c06f4e56a4ddp-1
+0x1.130c91df37221p-5
+0x1.2dda08a0fa5b2p-2
+-0x1.72bef1859ae1cp-1
+0x1.a1391a7586e35p-1
+-0x1.97acd895432fep-2
+0x1.1b1745f42a4e9p-1
+-0x1.fd7d763b285f1p-4
+-0x1.966f313b317f2p-4
+-0x1.b31eaa6c6c981p-6
+-0x1.4477289885e41p-1
+0x1.488c8ba8767dfp-3
+-0x1.96a1d37699634p-8
+-0x1.37a8a71644c0dp-1
+-0x1.72836edc079b9p-1
+0x1.9a8c00637d6e5p-5
+-0x1.0b2164386670bp-2
+-0x1.7b43d69db69f6p-2
+-0x1.df6d04ef5133p-2
+-0x1.6ccc708621d7ap-1
+0x1.bdaaeb906c937p-4
+0x1.df0ca0911becap-3
+0x1.52bfd2204efbcp-1
+-0x1.b73ebc5a93e83p-1
+-0x1.fca2af7dd27e8p-2
+0x1.ee3ca21941265p-1
+0x1.8d165cd1f2828p-2
+0x1.d23ba1fc088aap-1
+-0x1.e802f8e9162c2p-1
+-0x1.8a48129934512p-7
+-0x1.36f28d8decbd9p-2
+0x1.2315f05677265p-4
+-0x1.932c1a149e859p-4
+0x1.16cf7017ca03fp-2
+-0x1.d2fde07a9aa27p-2
+0x1.60e9628dab22p-3
+0x1.babbf525ced42p-1
+0x1.58449cdb2a3edp-3
+-0x1.b6ed03a505162p-8
+0x1.1e7420cac0887p-1
+-0x1.229e021421072p-4
+0x1.be8fea15731c8p-1
+0x1.89d4fa3e5991ap-5
+0x1.ee0ea96f492e9p-3
+0x1.d665c042d7465p-1
+-0x1.7bb31405ad2e4p-2
+0x1.36f0afd52cd36p-2
+0x1.b5110550aa777p-1
+0x1.0d10c78b8895fp-2
+-0x1.a14a6ac6353e2p-7
+0x1.8113110b71c42p-1
+0x1.6c7c20322031ap-3
+0x1.fb5d6548d76afp-2
+-0x1.96d09e12f2396p-2
+-0x1.2de4356484814p-2
+0x1.b288e199b4275p-3
+0x1.e11a3085b223p-2
+0x1.03175e05ad8dap-5
+0x1.8a2febfec4015p-1
+-0x1.be9d6ab2537e3p-1
+0x1.d1c62c7f2b257p-1
+-0x1.94974b5b8f3b4p-1
+0x1.62d7fe6e3f70ap-1
+-0x1.63ddf83de64a7p-3
+-0x1.06c884006dc97p-2
+-0x1.ae12045f47e91p-1
+-0x1.d0163b4251969p-3
+-0x1.ae8c2edccfdefp-1
+0x1.22b436ff7485dp-1
+-0x1.7c039d7088227p-1
+0x1.4900d34fabbbdp-2
+0x1.edf06c1678a09p-1
+-0x1.cbe83c6c30fecp-3
+0x1.ec25231cf6bc5p-2
+# Random inputs in the range [1.00e+00,4.50e+15]
+## name: workload-1_maxint
+0x1.16970b0cca6c9p+51
+-0x1.fc48225729f6ap+51
+0x1.8bd92ae4c2593p+51
+0x1.af903e65b5f4p+51
+-0x1.0fe8bd80a4462p+50
+-0x1.380511af85dcfp+50
+0x1.88dc6f90454c2p+50
+0x1.4ad66367df1b1p+49
+0x1.294f6a9432d04p+50
+0x1.ade11d496e7f7p+51
+-0x1.e97a50cd18947p+51
+0x1.577ad81ff88a1p+47
+0x1.3f6aa86f84eb8p+51
+-0x1.588959b670376p+49
+0x1.988b77a327561p+51
+0x1.3fe3a7b06ebdap+51
+0x1.9814dffa2fc5ap+49
+0x1.96c5dbc9d252bp+50
+-0x1.53290b942dbdep+50
+-0x1.9008302dd8691p+49
+0x1.a8d0dbfc34d0ap+50
+-0x1.d11525de21f3ap+49
+-0x1.5fc1789a832d2p+50
+0x1.cb8e2ae925892p+50
+-0x1.8a96d3f9c22bfp+51
+0x1.b63e2e38c9b9ap+50
+-0x1.6cf35fc30f2e8p+51
+0x1.6b302db504332p+50
+-0x1.6eb0bab24ae1bp+51
+0x1.a1ecca7a32b8ap+51
+-0x1.0c9c54396c2f6p+50
+-0x1.848540c603204p+50
+0x1.9f1e6f23ed49ep+50
+-0x1.96bcaf5d00d55p+44
+0x1.52b90d59c0c88p+51
+-0x1.2d5491e83da06p+51
+-0x1.764b84195364ap+48
+-0x1.d9648ad1cc5e7p+50
+0x1.7fd8144c01932p+51
+0x1.3f22abea9edeap+47
+-0x1.88407cdea2894p+51
+0x1.0768bcc953afep+48
+-0x1.fece73f8e573dp+49
+0x1.820114e129214p+51
+0x1.d72c51168f748p+49
+0x1.94738a0010f67p+49
+0x1.cfdb222a9a5b9p+51
+-0x1.43d7c1ab8c33bp+50
+0x1.f299ecad180f8p+51
+-0x1.875970e4cf75fp+49
+0x1.381f820a2cda6p+49
+0x1.5c8fe57bafce1p+51
+-0x1.1130eacde98a5p+51
+-0x1.0ae316467db4ap+50
+0x1.9d638d8f04d0ap+50
+-0x1.7d082a71c3c4dp+49
+-0x1.39b7697957872p+45
+-0x1.ac2efe009f161p+49
+-0x1.a5a8e8e7f6633p+51
+0x1.81a3339007399p+51
+-0x1.9ac6e49aee59cp+50
+-0x1.ac2b869119683p+51
+0x1.004103e564a7p+51
+-0x1.bce1e32ce7404p+51
+0x1.88f90cc96c18p+51
+-0x1.7fe538c9c45a2p+49
+0x1.a322c2b8648f3p+51
+0x1.b433553a91d18p+47
+-0x1.df0dfc90d503cp+50
+0x1.5b0d239d3a58ap+51
+-0x1.21931e6ee2e68p+49
+0x1.8e7553b1662afp+51
+0x1.dc7181424981fp+48
+0x1.1f987ee9bb92p+51
+0x1.6b9b447cc4726p+50
+0x1.1156fd9d7aae8p+50
+-0x1.cbe62584e9ceep+51
+-0x1.3c1c62099c5c3p+50
+-0x1.ccd02d8ed77fep+50
+-0x1.c43f9b4da343dp+51
+-0x1.0c06aa8cdb39ap+49
+0x1.5bacae075291p+50
+-0x1.62d90ec27df59p+51
+0x1.dd7291636dcd5p+51
+0x1.6551300157c09p+49
+0x1.80760a9ede212p+48
+-0x1.261feecb7036cp+50
+0x1.56b792f21157bp+50
+-0x1.18c385c1ee64p+51
+0x1.6154fdcdd6893p+50
+0x1.934593bb8560dp+50
+-0x1.ac67202048826p+51
+-0x1.a2865ab7830ecp+50
+0x1.54deb2de19318p+45
+0x1.12fa0ab48dd9fp+50
+-0x1.acd57fdea3adbp+46
+-0x1.32ad321bd5c47p+51
+0x1.ec2109b829db3p+43
+-0x1.c9ac7a5691afdp+51
+0x1.8978f82653a66p+49
+0x1.5d0f8a6a9ba0dp+50
+0x1.05e32a3c8b7bep+51
+-0x1.cb5664a3bffb8p+51
+-0x1.487c2ad66d246p+51
+-0x1.c9abfa8d79831p+51
+-0x1.03cc57db4eb03p+51
+-0x1.9de9dc1e20bcep+51
+0x1.dd69fa3aee39fp+49
+-0x1.b42e50a13eeb2p+51
+-0x1.b28f24dfb8552p+48
+-0x1.f86084fb9b7eap+51
+-0x1.15752c108c3c9p+51
+0x1.90465bd4a79e2p+50
+0x1.05a821b545bdbp+51
+-0x1.5a2ca326a9ac3p+50
+-0x1.3653fd31ecfe9p+50
+-0x1.b861cdde2e203p+51
+0x1.ad2d633dd98dp+49
+0x1.b53248f56f423p+51
+-0x1.eaabac044a18bp+51
+0x1.b0947afdd9eb4p+51
+0x1.675b21d919715p+50
+0x1.424f29aca9c17p+51
+0x1.799a348c750a7p+50
+-0x1.03c544a6ba118p+50
+-0x1.4baf880573708p+50
+0x1.2affe1c808514p+51
+-0x1.4cdcc68587e89p+51
+-0x1.dc4d2bc5a2636p+50
+0x1.9a063dab88003p+51
+-0x1.bd1e874d482fcp+50
+0x1.cf7452f874805p+49
+-0x1.cb3748f0420c1p+51
+-0x1.88aa7b5cd0f9bp+51
+0x1.d967961ecd34p+49
+0x1.eba8551d9952cp+49
+0x1.cfc1b89ae4308p+51
+0x1.5366a9eb9e63p+50
+-0x1.aace8de06a35p+47
+0x1.7f288b1f9b175p+50
+-0x1.579320339b76p+51
+0x1.4b9d4e26d7696p+50
+-0x1.ce519e1915171p+50
+-0x1.8b21e3b72ccf3p+49
+-0x1.2e10415b30cbp+48
+0x1.47a4d5ab3c709p+51
+0x1.b323beee9ecedp+50
+-0x1.2008c5e690d16p+49
+-0x1.6c9f8c7566117p+51
+0x1.6a40079ed3649p+49
+0x1.16a1249d6e75p+51
+-0x1.37271aa942a3bp+51
+0x1.664a5c390d5b8p+51
+0x1.d9b48e27e602bp+49
+-0x1.dd4f76354ad6fp+50
+0x1.c4052b97248bcp+50
+0x1.4c29a6c5ece6ap+48
+-0x1.e8e3c4e9f31abp+50
+-0x1.e751f5d7e9492p+50
+-0x1.59676ca2b14eep+50
+0x1.ac495fdf6e074p+51
+-0x1.1aa8df913a00fp+51
+-0x1.2a3c010d9f246p+51
+-0x1.1d04be38cea19p+50
+0x1.4ed290888a5afp+50
+-0x1.427955e213c03p+51
+0x1.38ed6fbb07a2ep+51
+-0x1.72d987131c804p+51
+0x1.dbdb54d72fdb4p+51
+0x1.e7fa66838f13ap+49
+0x1.0f91ac84a8167p+51
+-0x1.d34d4465f202ap+51
+-0x1.e3ab44bfa9d2ep+51
+-0x1.64cea536f916dp+51
+0x1.50342b15c135ap+51
+-0x1.725abc76fb1cap+50
+-0x1.19a25ba95ad23p+50
+0x1.f437b24555432p+51
+-0x1.71f6809531f49p+49
+-0x1.c0823d32f863dp+49
+0x1.e50ae1ef75f75p+50
+0x1.2b4ef101cb94ep+51
+0x1.8119c822b016p+49
+0x1.18546fc2596abp+51
+0x1.19111e1f371e8p+51
+0x1.96c54a4d0ae37p+49
+0x1.4800bd3311e8cp+49
+-0x1.eb31219cbeaa8p+49
+-0x1.4de3ad5f931a1p+50
+0x1.a810aff80c28bp+50
+0x1.2c3534a207377p+51
+0x1.eea9f3af398f5p+51
+0x1.2de9606227475p+49
+0x1.dc97f918634b4p+50
+-0x1.4957443d1b58bp+51
+-0x1.e54c77b1431adp+51
+-0x1.873f47b9d6ad4p+51
+-0x1.4b342b6aa0be8p+51
+0x1.952b6b8791df3p+50
+-0x1.b6c754ec2cb77p+48
+-0x1.92d61a28eef48p+51
+-0x1.47ee9c921e749p+51
+-0x1.e330c7a4bbbecp+51
+-0x1.20acb13200b6p+51
+-0x1.da476946735a8p+49
+-0x1.23952ae722b09p+51
+-0x1.ba1589ed42217p+51
+0x1.be26e44dde99fp+47
+0x1.fea93a8254199p+51
+0x1.da965d6dca7a1p+51
+-0x1.cb80921e3f566p+49
+-0x1.4627f7f8567a1p+51
+-0x1.43f220fe24eabp+51
+-0x1.4fbd5980b542cp+51
+-0x1.660f214dd894dp+51
+-0x1.8e3ef7bed832bp+50
+-0x1.57b47226e3b38p+51
+-0x1.f8b6fa5c2dcc6p+49
+-0x1.b83b28f06d157p+50
+-0x1.b483a83e57919p+51
+0x1.d3a428801e012p+49
+0x1.483a3dd97962cp+51
+-0x1.d56441c170cffp+51
+-0x1.a9f9ced9757cap+50
+0x1.d7ddc8d1dab03p+50
+0x1.94d586f8ebff9p+51
+-0x1.dd46419f4aae6p+51
+0x1.c7564cbada4fcp+51
+-0x1.52faecc271ddbp+51
+-0x1.915fd10e57b3ep+51
+-0x1.3f88171cb8a4bp+51
+0x1.21a19dfa480e9p+51
+0x1.3a69ea2778501p+50
+0x1.2c6a720093f24p+49
+-0x1.44198669e6563p+50
+0x1.507f83a255aeep+51
+-0x1.4cb5f5cad4ccfp+51
+-0x1.5bd135a5e1076p+49
+0x1.ee65c1c112c9bp+51
+0x1.afc87160dfbf8p+51
+-0x1.545de51e69c6bp+51
+-0x1.5f3a7cf7d8977p+50
+0x1.c657018e973d9p+51
+-0x1.950bb390f0f29p+51
+-0x1.33592359aef41p+49
+0x1.b3dd5c1e26669p+46
+0x1.cc05f1fd8518bp+51
+-0x1.fa1a3d3ada53dp+49
+0x1.93600b91f13dcp+51
+-0x1.830e0f490da58p+48
+-0x1.585d529dfcf3p+51
+-0x1.a163a30f134e4p+51
+-0x1.2a3a891f4f939p+51
+0x1.1302c8edf9cc5p+49
+-0x1.4d15d2b94c09ap+51
+0x1.11f5a9f170f9bp+48
+0x1.2fa184e47ab08p+51
+0x1.e8cf4e1ad7081p+51
+0x1.b7d900d3654eep+51
+-0x1.ed77ae03f5d5dp+49
+-0x1.a3a36c4e9b9b3p+47
+-0x1.4030c3b461d9fp+50
+0x1.d675e4b91ece1p+50
+0x1.32a4cf8dce6ddp+49
+-0x1.70abe7acad24bp+51
+0x1.88d993318ef74p+49
+0x1.fc634bcb88668p+50
+0x1.86c98eee4de4bp+49
+0x1.42420b0cd4886p+50
+0x1.6256ebbb68f93p+50
+-0x1.d7956258bdc2p+50
+0x1.bfe4f2cc44f37p+51
+0x1.329c275223ab7p+51
+0x1.760bc3d915188p+47
+0x1.8628664df52c3p+51
+-0x1.7c1436d4c1495p+49
+-0x1.b1970748485f6p+51
+-0x1.600bfefca4c1fp+51
+-0x1.215763a6c5254p+49
+-0x1.cbe4e2522acf3p+50
+0x1.5d458760ce9f6p+50
+-0x1.bb7d145aac9f5p+51
+0x1.280fa28a1ee39p+50
+0x1.115612c2fef77p+50
+0x1.41b3da08379b2p+51
+-0x1.8ec9efce886b4p+50
+-0x1.0613473c2832dp+50
+-0x1.19c0cca52e577p+51
+0x1.1c68c4d08c3e6p+51
+-0x1.0d72622bbb8b9p+50
+-0x1.2ddb1f41a9bf3p+51
+-0x1.83ca55fe884d2p+49
+0x1.96c19aced7b5p+51
+0x1.bb4376e1c8b3bp+46
+0x1.0216b2c05a12bp+50
+-0x1.5e3c7fc17c259p+48
+0x1.6da0af621a802p+51
+-0x1.dfefbbce74e9fp+51
+0x1.d581d4f92c464p+51
+0x1.09d90c440329dp+49
+-0x1.f903b61d51db2p+49
+0x1.62ac68740f54dp+49
+0x1.bffdab741ddeap+49
+0x1.26112b86350b9p+49
+-0x1.1663594728f0fp+51
+-0x1.9f43a9e5a7799p+49
+0x1.fbd927698bebap+51
+-0x1.32bf82f8d04e8p+49
+0x1.bc013fd3c5c26p+48
+-0x1.7c3b891c32981p+50
+-0x1.4a11fa4a04372p+50
+-0x1.aedb8d9704783p+51
+0x1.dd5d83623ab81p+51
+0x1.bb969fdb7a9c2p+48
+-0x1.e0611602c4c94p+49
+0x1.6b23678c15386p+51
+0x1.d16ea786c22b2p+51
+-0x1.7f43f2fcb05f1p+49
+-0x1.3690b1e8a8f7fp+50
+0x1.4609f772573cap+51
+-0x1.6e73bfb8bf93ap+49
+-0x1.b54f325a27f8ap+51
+-0x1.013bd642573a7p+51
+-0x1.6f24925f8d466p+51
+0x1.9bdcccfb9fe07p+51
+0x1.b0af0f0d5516cp+51
+0x1.0f350c3d8324p+50
+0x1.c26bd5716dc74p+51
+-0x1.192c039306cc6p+50
+0x1.02378a8165fdep+51
+0x1.56c6aa8d2a93ep+51
+0x1.22b7e22f8edbcp+51
+0x1.7c755f6aad6a3p+49
+-0x1.45d3b2aff4a32p+51
+0x1.0e6a8755b10e2p+48
+0x1.c2843f66664f9p+51
+0x1.0a33a6c9fd0c8p+51
+-0x1.465fad20ef7a9p+51
+-0x1.8c1848c0b9b96p+51
+-0x1.66c0e166232a2p+51
+0x1.eae9bf9add18ap+47
+0x1.4fb7429f595e3p+50
+-0x1.9530c12f8a46bp+51
+-0x1.dc0d1fb230f7p+49
+0x1.98bc8dd89789fp+50
+-0x1.5ec2c88a85a47p+51
+-0x1.46bf405c60bdep+47
+0x1.3818f1d8c8a29p+48
+-0x1.f776ff0e1dd1ep+51
+0x1.9078680a7b90dp+51
+-0x1.7012fbcc9d28cp+51
+0x1.dfd5dc6556d33p+51
+0x1.352df7b2580bdp+51
+-0x1.fbc867c6c9e5dp+43
+0x1.940fadf98e4a9p+49
+-0x1.662ad3fe5aa65p+51
+0x1.9c6583a9d7937p+50
+-0x1.f12b433fb8e35p+50
+0x1.5f82d71c6f7c6p+48
+0x1.54c03a4660145p+51
+0x1.35bb48879999dp+50
+-0x1.b4ea3bf3664e1p+50
+-0x1.577a1ee0d6049p+50
+-0x1.c3a5ebcf828f4p+49
+0x1.dd0bd8b4f9e49p+51
+-0x1.137b16a551f1ep+46
+0x1.6b645777d8821p+48
+0x1.e24d59cee70a9p+51
+0x1.4834ca40a50cep+51
+0x1.3c42cb242ef06p+51
+-0x1.a46e9870e68bep+50
+-0x1.8f73c60fcc18ep+51
+0x1.fbdf9c751a862p+51
+0x1.0db80ede9d1bdp+49
+0x1.09c675915b1d8p+49
+-0x1.afbf0186e6a9cp+51
+0x1.ae4b65d88ca42p+47
+-0x1.ffb4729b04c95p+48
+0x1.b12e4e860fdep+45
+-0x1.b578646b3bdeep+51
+-0x1.7ca485e88ac53p+50
+-0x1.812f22f69027ep+50
+-0x1.a372edaa2aa5bp+51
+0x1.b6b9dd15f4b5bp+50
+-0x1.73b753b7f89fdp+51
+0x1.d1d563d2c0768p+50
+0x1.599763e639273p+51
+0x1.a83817aaa03e7p+50
+0x1.d6c3480727fefp+50
+-0x1.42c5b7ce323c6p+49
+-0x1.5ecce3b1f29cap+47
+0x1.2118e86e86cc5p+48
+-0x1.d8a91083c5906p+51
+0x1.423e8aaed6ad8p+51
+0x1.bba8404322bafp+49
+0x1.5313e08439d6ap+50
+0x1.6a65017478d0bp+51
+0x1.81e1cffaeedep+51
+-0x1.742f02cc05804p+51
+-0x1.611567a4df5fbp+50
+0x1.70e1ffbf13fdap+50
+0x1.aeda1f039f286p+51
+0x1.974f613911506p+51
+0x1.ff805c5cb6559p+48
+-0x1.806ef8e3f3decp+51
+0x1.bdda8c23eaf43p+48
+-0x1.3b5c8207230b5p+51
+-0x1.e1756ce1753ddp+50
+0x1.4f1d44ddf7e0bp+51
+0x1.3113923fbafd8p+50
+-0x1.ac44bbcd24181p+50
+0x1.b58e09ecc55edp+48
+0x1.e6a99d2ed7f3dp+51
+-0x1.c0a177f5372ep+48
+-0x1.5b1d3ccdea4f6p+50
+0x1.6eb8da50f2508p+49
+0x1.196f7768ef81p+50
+0x1.4f954ff11fe24p+51
+0x1.502eec3e7461bp+45
+0x1.e7726922b3684p+51
+0x1.d67e310f5559cp+50
+-0x1.ba3355d67b9bp+49
+0x1.3615b8329a28dp+49
+-0x1.48a44ac91de33p+47
+0x1.1833ad61fcc2p+51
+-0x1.ebd1895dd7c34p+51
+0x1.a2ccc135bf4ddp+50
+-0x1.183e6a82ca09ep+51
+0x1.879d9cbe2a7efp+48
+0x1.a6ad5d9d24d8dp+49
+-0x1.58f32cf4df112p+50
+-0x1.424c3ec82a6fap+51
+0x1.94396aa86f758p+48
+-0x1.5562bcafaefcp+50
+0x1.1de7ad5c7bd87p+49
+-0x1.552c1299862bdp+49
+0x1.84a7d1b8e43b9p+49
+0x1.7afd2ef29ddc9p+51
+0x1.be400b01afe37p+49
+0x1.b1109c1b2076ep+49
+0x1.e2ebaceba81d2p+49
+0x1.82f1896e32a9fp+51
+0x1.6f457fa43d926p+51
+-0x1.e8b0247901fc6p+51
+0x1.c0ab197e7f6e2p+50
+0x1.fb29b451f5659p+48
+0x1.4482e8b3b95dp+51
+0x1.465d6142579dp+51
+0x1.8604663105a8dp+51
+0x1.cf01a4dfc531dp+46
+0x1.208c4933b83c3p+51
+-0x1.59a416a48b6e6p+51
+-0x1.6d734ea3f3d37p+51
+-0x1.cd6d63c8cfccfp+50
+-0x1.614ff0f626794p+50
+0x1.42383e33648aep+51
+-0x1.005f2f0b72bf9p+51
+-0x1.b5db83209e02dp+49
+-0x1.80671ad8ed01fp+51
+-0x1.c807a9caaabc1p+50
+-0x1.ff9c6414af8a8p+50
+0x1.bcf18e375bd7ap+51
+-0x1.fdd52b172b50ap+50
+-0x1.ff3f2d26524f2p+51
+0x1.2c77ed3f1847ep+50
+0x1.24824d360599p+51
+-0x1.faa31ed050a82p+51
+0x1.f1706549e60cfp+50
+-0x1.ea9542c146094p+49
+0x1.2cfbe9d19ffe6p+50
+-0x1.6c2a07b04248cp+51
+-0x1.cec66705c8b0ap+51
+-0x1.55069250a6942p+51
+-0x1.7c56e9096b456p+49
+-0x1.55a3028b9876dp+51
+-0x1.3ddae807321dfp+49
+0x1.27bf89c458727p+51
+-0x1.66affd9743c8ap+50
+0x1.6d2743e75bbcp+48
+-0x1.397012c2b8e19p+51
+-0x1.20e85886a1b03p+50
+-0x1.9f789bf455afp+50
+-0x1.fd648d2486886p+51
+-0x1.99d8d7ee6bdb3p+51
+-0x1.6f1a82d2c26c7p+51
+-0x1.629f36e021797p+51
+0x1.233672b115e28p+51
+-0x1.dd8eb98c2f9cap+49
+0x1.b4c3567f5ae57p+51
+-0x1.b997f6715951cp+51
+0x1.c8a6b7f72156cp+51
+-0x1.da92df89a0c6ep+51
+0x1.f94f719c2b72fp+50
+-0x1.a3f964a52e825p+51
+0x1.db4d01947d792p+51
+0x1.8c25296d0034ep+49
+-0x1.c4f9ab8866f3ep+50
+-0x1.f482d6c36a81ep+51
+0x1.0800565252ecbp+49
+-0x1.46b23567cd651p+48
+0x1.2888b3762fed9p+51
+0x1.3c2115115d28bp+51
+0x1.546550b8b9a0fp+50
+0x1.61c0c33da4cfdp+51
+-0x1.3f9151ff28539p+48
+0x1.6776444aee8b4p+51
+0x1.fb925db4f1564p+50
+-0x1.5b0e39758481dp+51
+0x1.72b9be57f268p+50
+0x1.122e236c88344p+49
+-0x1.6534dd74ed8a8p+51
+-0x1.8323c2d0d29d3p+51
+0x1.9435a379feee7p+51
+0x1.c383a774d6ec7p+51
+0x1.3c9cde621cfaap+51
+0x1.59c60b6fb1722p+50
+0x1.b4e585bb1a90ap+50
+0x1.cb771fe0f3c25p+51
+-0x1.3d41449e0d4d2p+51
+-0x1.157b740b2916p+50
+0x1.62a7594710a2ep+49
+-0x1.ce7184ae56409p+51
+0x1.469045c5a5978p+49
+-0x1.11cdca425179p+51
+-0x1.c1541b9a42cbdp+50
+-0x1.26ae232aa0cd8p+51
+-0x1.6e83b2a96b09ep+50
+-0x1.fb1eea281db07p+50
+-0x1.160669e70cc4dp+51
+-0x1.3dd1c8a229c09p+48
+-0x1.5c93d39843c6bp+50
+0x1.f08627d0fc949p+50
+0x1.4aa306ebf33c8p+51
+-0x1.39430df9372cdp+50
+-0x1.049f81c367e1bp+50
+-0x1.b52130299b1c6p+51
+-0x1.257d92883d201p+51
+0x1.37bbab544008ap+51
+-0x1.9afce2becbc6fp+48
+-0x1.a13d4d07b7341p+51
+-0x1.f24c71b748ee5p+50
+-0x1.3f73d9a81d67p+51
+-0x1.02ee5e9b244fep+49
+-0x1.7a0fa9eb422aep+50
+0x1.279d853cc34cbp+51
+0x1.d05d9fd31a9ep+51
+0x1.68542dc55cf6cp+51
+0x1.228f790c180dap+51
+0x1.0d6f2977a06a3p+51
+0x1.10a57c5269aep+51
+-0x1.1dbc6c0284198p+50
+0x1.daef1e68df061p+51
+0x1.a42204759ff11p+51
+-0x1.a63f3dcbf8587p+51
+-0x1.55a67fe29811fp+50
+-0x1.13ff60185fa1dp+50
+0x1.4fcb3e7b65f06p+51
+0x1.7376826b83003p+51
+0x1.aced166ed8216p+50
+0x1.39d2faee8d22bp+51
+0x1.34ad9bbe77cd2p+51
+0x1.173eddca0b3f3p+51
+-0x1.b7bbb4eb4bcb7p+48
+0x1.2eb449e6a4ce5p+51
+-0x1.f7cab13452c37p+51
+0x1.f55bd6fc34f3fp+51
+-0x1.eb000c479cd76p+51
+-0x1.d10c53925305cp+51
+0x1.e72dbdcc221ccp+50
+-0x1.349b47c85a451p+51
+-0x1.322bbae188fa4p+49
+0x1.aa22455a4410fp+51
+-0x1.431d2992c20dap+48
+-0x1.c8e2027387492p+50
+0x1.7fddf1a6d1082p+49
+-0x1.1434d66a0adbp+50
+-0x1.c92d51b55a1b6p+51
+-0x1.563a85c404a82p+51
+-0x1.a91dc40677b6p+50
+-0x1.4339394430498p+51
+-0x1.077b30f1115d8p+51
+-0x1.b0309893af2fap+51
+-0x1.e928d62337c45p+51
+0x1.09967d2a2a939p+49
+0x1.990759b5ab83p+51
+0x1.890be2389fa58p+51
+-0x1.809b1c9063f98p+48
+-0x1.7507254284587p+51
+-0x1.7171e88a0e4b1p+51
+0x1.9b9c4699f2ab2p+50
+0x1.3a274b32d7bb5p+50
+-0x1.231ea310fa9f5p+46
+0x1.81fe45845d946p+51
+0x1.7c6ec88db65d7p+51
+-0x1.2da216c5051d5p+50
+0x1.6a75a4cf7f2e6p+50
+-0x1.576c6bd1a2bfcp+50
+0x1.7e8c3a8fe2af1p+51
+0x1.7c3f12f12c131p+51
+0x1.c15b2c57c380fp+47
+0x1.7786d4e437373p+50
+0x1.9c441b6083b2p+51
+0x1.59128db2a341fp+51
+-0x1.9690677eea4fp+50
+-0x1.afadb606c09a5p+51
+-0x1.87337ba9dc8bdp+50
+-0x1.07208f2819eb2p+50
+-0x1.c9970480a7652p+51
+0x1.90a30c6269d0cp+51
+0x1.bc71b685e540dp+51
+0x1.e4d756644f7b9p+50
+0x1.99070e5211c5p+49
+-0x1.d39c3e57234b5p+51
+0x1.31c4a1836d37fp+51
+-0x1.426f76968fd1fp+51
+-0x1.992c9fb667cbbp+49
+-0x1.69ed20c31206cp+49
+0x1.a64683b62ef78p+49
+-0x1.7209d8ce422f6p+51
+-0x1.d48ee6c5d510ep+51
+-0x1.650176774e0dfp+50
+0x1.4317f91512111p+48
+-0x1.41d4d8bc6e68fp+51
+0x1.4be421a12ae24p+51
+0x1.9aba07a7ac86p+50
+0x1.9fbd2a3a9abb9p+51
+0x1.72cf1b11876d5p+51
+-0x1.be64c4e37bd11p+50
+0x1.eff488ed96ef1p+51
+-0x1.9005da0cb9d3dp+50
+-0x1.9ad3859ecd202p+50
+-0x1.c5800eff11d91p+45
+0x1.55a2a1c1cccfdp+50
+-0x1.4acd04671daf3p+51
+0x1.754711bce7872p+49
+0x1.aac1f492b97f1p+49
+-0x1.8c049d0b5afafp+51
+0x1.74562b47b9492p+51
+0x1.bc4ad117423f1p+48
+-0x1.64ee7465a39f3p+51
+-0x1.35437901e4c56p+49
+-0x1.57969f65f552dp+51
+0x1.666e9aa755e5ep+51
+-0x1.1efa78dd820cp+50
+-0x1.403593eff9ea7p+51
+0x1.c59041a4d0d01p+49
+-0x1.99f36df41205bp+49
+-0x1.40cae6fe99a46p+51
+-0x1.a3f165fba7aabp+50
+0x1.540b9d1076166p+51
+-0x1.be0ece60ef8dep+51
+0x1.b6430df86d6b4p+47
+0x1.89f1511f0e49dp+51
+-0x1.9aca51f62b678p+50
+0x1.10ef6f790aaf6p+49
+-0x1.f5c1fa4402fc7p+51
+-0x1.0fe90a1118b8fp+49
+0x1.bd7b56499c196p+49
+-0x1.dddd4ff8701efp+51
+0x1.45e7f30d3e0a9p+51
+0x1.7f573790ee1f3p+51
+0x1.85c6a8ca064d8p+51
+0x1.8f8c416a20eddp+49
+0x1.06f013d31081bp+51
+0x1.2d8da0f575d34p+51
+-0x1.82e8381a7543ap+50
+-0x1.39711ed6b73fep+42
+-0x1.4bb6606c15f68p+48
+0x1.3062217be7733p+51
+-0x1.dd4d4aaef0c13p+47
+-0x1.b6dda7055cb31p+51
+0x1.707cb576f2c49p+51
+-0x1.f776711fbeaf6p+51
+0x1.7eb171964e6d4p+51
+-0x1.b792d337ca0b4p+51
+0x1.7d239e58de7bfp+51
+0x1.0acb8dc080fdp+51
+0x1.f886a5fd7bf23p+50
+0x1.7acb8452e939bp+51
+-0x1.421665e9334e4p+50
+-0x1.80cb6f88ab52p+51
+0x1.f5fbad6b7db32p+51
+0x1.07fc87dbe35d2p+51
+0x1.84d4ecc4660fap+48
+0x1.eb3b9b78306dbp+50
+-0x1.6736e62730396p+50
+-0x1.3961f5404da5p+49
+0x1.e2d01a42fe4fbp+51
+-0x1.1bb29fcf6d2cp+51
+0x1.2f393cac5b3cep+50
+0x1.0e0d20cfb45c1p+51
+-0x1.7da4c72c6ddecp+51
+-0x1.26c760247b228p+51
+0x1.026146913977ap+48
+0x1.d21ef03fae67ep+50
+-0x1.4621b3c108f9ep+49
+0x1.6fa7dd5f2a77ep+51
+0x1.8038a681c534fp+49
+-0x1.c5babcd3fa544p+48
+-0x1.39a44ae429dd3p+49
+0x1.cc996a6dbf999p+51
+0x1.d3fc306b719efp+48
+0x1.d8c7a8a227852p+50
+-0x1.28c90e12d9dfdp+51
+-0x1.91351d8483b8bp+51
+-0x1.ce0b815f660a1p+50
+-0x1.25cb6fcf33a66p+51
+0x1.c50d961582a16p+50
+-0x1.c4c35c7cf96ecp+51
+0x1.a72900eb8da56p+48
+-0x1.056bd710f2683p+51
+0x1.967b439a83522p+50
+0x1.75d5858f7d256p+50
+-0x1.87cd715e0e2d8p+50
+-0x1.0d3df87240d8ep+50
+-0x1.a08f999b28b2p+51
+0x1.460d3a2d0461dp+50
+0x1.9ddab3ab75c59p+50
+0x1.0907471df7adap+45
+0x1.0daa49f413c88p+46
+-0x1.ed58fdffebafbp+50
+0x1.651f276f0a1ddp+50
+-0x1.ec8ecb6d24c94p+51
+-0x1.0714e3966259fp+51
+0x1.4b55309fdf296p+49
+-0x1.9871f623e66bep+50
+0x1.e68f605db8596p+50
+-0x1.4f3dc4b0325b4p+51
+0x1.10b404c0b5efbp+51
+0x1.1d7f05e416bdbp+50
+0x1.9edf24eaef8bbp+51
+-0x1.b77ca0898ac0cp+50
+-0x1.93c54e6caf636p+51
+0x1.a2dd09106636fp+51
+-0x1.77690a295da63p+51
+0x1.096eb9092b23ap+49
+0x1.6cdc88cf09a81p+50
+-0x1.f6433bad90a56p+47
+0x1.b131bd57b53bp+51
+0x1.19a6dcee31c43p+51
+0x1.c200d9844b87bp+51
+0x1.23f777333db4dp+51
+0x1.6ba3e48481ccbp+51
+0x1.e65de3b12768fp+49
+0x1.b26f45f651206p+49
+-0x1.06453b90ca441p+51
+0x1.edf0fb196739dp+51
+-0x1.af65affa7affap+51
+-0x1.302eddffadfa4p+51
+0x1.638b95e370cbap+51
+-0x1.6dfaf44d3bb4ap+46
+-0x1.feabf8506a2cdp+51
+0x1.a35341db18472p+51
+0x1.1c24947936954p+48
+-0x1.ef1b7f6c2b852p+51
+-0x1.fbef366853a56p+50
+-0x1.94e14b55ddb64p+51
+-0x1.dce29b0e4bf21p+50
+-0x1.04b78bafd35fap+51
+-0x1.a0cdd9f3e46b3p+48
+0x1.f926dfb0e4591p+51
+-0x1.e089cc4e31bd1p+49
+0x1.926a3bfec954bp+50
+0x1.110eebdb2899bp+50
+0x1.f6f8dce03a65p+51
+0x1.a11f93ab3eecap+49
+0x1.edbf94bf9a28bp+51
+0x1.0c8c8f218c8d1p+46
+-0x1.0167818dddd57p+49
+-0x1.23561ee87358fp+51
+0x1.fa367aa658679p+51
+0x1.21816a169f838p+49
+-0x1.d596bdfd9ad2fp+51
+-0x1.cbbb40d14c892p+51
+-0x1.4cd113c803939p+51
+-0x1.285b7fa022a05p+51
+-0x1.3f7ec7d86c52cp+51
+0x1.f36933355ed8ap+51
+0x1.e42288c3ec50dp+51
+-0x1.0ec938283e23fp+49
+0x1.c0d7e4c34d3e7p+51
+0x1.e26aa193e6cecp+51
+0x1.ba2dd76449806p+51
+0x1.79dee80c7e1ddp+48
+0x1.3dd3fedfab9f1p+50
+-0x1.291b124a7ee5dp+47
+0x1.dc55d09ce75fap+51
+-0x1.e9e70e5981469p+50
+-0x1.6904afefe1cd4p+50
+0x1.5754cad93b68fp+51
+-0x1.b5596a98d430ap+51
+-0x1.de8c4c37ad1cp+50
+-0x1.2d6c66e848a7dp+49
+0x1.1a2ba7b2f86b6p+48
+0x1.6d5690a176ad6p+51
+0x1.778ae20f259afp+51
+0x1.4e5d8b3cb43cfp+45
+0x1.468102ec0ee96p+51
+-0x1.423b878358e5ap+51
+0x1.ca11b68f40833p+50
+-0x1.3831fc2fcbf4bp+46
+0x1.2119f84954d4fp+51
+-0x1.a48f39d18d9fdp+50
+-0x1.044aa55641fe4p+51
+0x1.091d0f9af7b43p+51
+0x1.f70c329322039p+51
+0x1.0782dc118d5adp+51
+-0x1.e94b6df8cab1p+51
+0x1.5453df7fee54ap+51
+0x1.4799956319995p+50
+-0x1.e659a8bc446e1p+46
+0x1.cbbcc2bef03a7p+51
+-0x1.29a4a227b5095p+51
+0x1.fa1dbed0a3af8p+51
+0x1.dfda41848a463p+49
+-0x1.1dd2343296b1dp+51
+0x1.3d7ed83bb2233p+51
+0x1.fbbdf40479d9bp+51
+-0x1.85d8e8698d318p+50
+0x1.ebf097279af9cp+50
+0x1.883f307d1962bp+51
+0x1.9856d3db13832p+49
+-0x1.532b6a6c18b07p+48
+-0x1.08a35eaa52aeap+51
+0x1.67c4706f77b7p+49
+-0x1.21515cdd0d36p+51
+-0x1.2c70a1bc72258p+49
+0x1.3461e0b1ed002p+51
+0x1.e0e7a44a0997ep+49
+0x1.af9bb066dae47p+51
+0x1.a949d63923ec9p+51
+0x1.c2dec65fa265ap+48
+-0x1.85bef3042d689p+50
+-0x1.aaa56621200ffp+51
+0x1.aa7791270fce3p+50
+-0x1.a9df2fc0fb7edp+51
+0x1.0ee32a5e0ab7cp+51
+0x1.bc796b10bbe8p+51
+0x1.1714c729a915fp+51
+0x1.cd100813bcd6p+51
+0x1.2e794a7ed754dp+51
+-0x1.9aa3aa6f22f5bp+51
+-0x1.b7d13bd6ee062p+51
+0x1.8ce25073755efp+51
+0x1.3926b276f95d8p+51
+-0x1.a89462ae224f4p+48
+-0x1.422ae3ebd8f99p+51
+0x1.a5a6c5558efa8p+51
+0x1.2488bed610d15p+51
+0x1.87eafaf1d86f3p+51
+-0x1.5a9ea37af819bp+48
+-0x1.136ee67539932p+50
+-0x1.25a6781b49a0fp+46
+-0x1.2371e80d130cbp+49
+-0x1.b67bd84e452bdp+51
+-0x1.7ac7ab4376e3ep+50
+-0x1.a1ee0d77f63b5p+51
+-0x1.6b0e7be60d00ep+51
+0x1.d37b4c85f252bp+51
+0x1.bed4fe06da7adp+50
+-0x1.7b322990101dfp+51
+0x1.4f8632d0fc008p+50
+-0x1.8fccbd2596389p+51
+-0x1.7977c0be89beap+47
+-0x1.c2c00d082cdc7p+50
+0x1.f18ff838135b7p+51
+-0x1.fa70c30a5dfa4p+49
+-0x1.0a347fffdd8a8p+49
+0x1.7fd1250d6131p+51
+0x1.f9b7055677e7dp+50
+0x1.55d7154e60df5p+51
+0x1.e793e183bb20bp+48
+0x1.a255486806e13p+50
+-0x1.262a7b0b4256bp+50
+-0x1.8a68d296df4b9p+51
+-0x1.8ae26ff150725p+46
+-0x1.40cbc20a5b52p+50
+-0x1.87dbfb08ce156p+51
+-0x1.7861b9414872p+51
+-0x1.b63985c74844bp+49
+0x1.215e05851eb9ep+51
+-0x1.20837cc44c5c6p+50
+0x1.c2cc81627d608p+51
+0x1.1003db8771cb1p+50
+-0x1.cdc5e3a354211p+51
+0x1.e8e2034179673p+51
+-0x1.4e7f8e6df23bfp+51
+0x1.0981286c8b8bcp+50
+0x1.131170a103927p+49
+-0x1.392d642c2899ap+42
+0x1.bee3978dda9fcp+51
+-0x1.6d31669a3f613p+51
+-0x1.2a745b49eed0bp+48
+-0x1.76d1337399f32p+51
+-0x1.438ab9d5565f9p+51
+0x1.6e8bca226638bp+51
+0x1.a244cb3c3f8a4p+51
+-0x1.0cee7860bea35p+49
+-0x1.b4aa82047dd8cp+46
+-0x1.37bc0d4eb1c58p+51
+0x1.2e687195dd32ap+51
+0x1.4c9e6926aa773p+51
+0x1.f002665a62491p+51
+-0x1.3024ee19c7be4p+51
+0x1.9249c6c61822ep+51
+0x1.2f5c34656fbcdp+49
+-0x1.a5cd6979a4748p+48
+0x1.666296c98bb98p+48
+-0x1.8bda2e4eb2575p+49
+-0x1.c3bc3f7defcaap+50
+-0x1.9aae7f668e275p+51
+-0x1.b14651b7f6e4bp+48
+-0x1.9b63639d29f79p+46
+0x1.0bf7b30ab5aap+49
+-0x1.8da3e9dd00088p+50
+0x1.9fa7be53d73dep+51
+0x1.8fb6154d89761p+50
+0x1.0e812ee825a4bp+49
+0x1.2dabe2cba264ap+50
+0x1.7e1b84ff51779p+51
+0x1.73656c608dd63p+51
+0x1.b5d79d525b618p+51
+-0x1.81bf3f252693bp+51
+-0x1.e161f15c47816p+50
+0x1.83d3ae4999d05p+51
+0x1.178a496b1f66cp+51
+-0x1.fcf906c4bbf5p+50
+-0x1.158876377bd4cp+48
+0x1.c0988b1e2f8bdp+51
+0x1.230dc5478320dp+51
+0x1.f85c141f3c856p+51
+0x1.3538449e49ad6p+50
+0x1.6a64814650df2p+51
+-0x1.84dd49ab44bp+51
+0x1.c0189b89e42d5p+51
+0x1.1f080d610997p+49
+0x1.4a00e2f023ddep+51
+-0x1.ca2f3f9b4d1eep+51
+0x1.217a6c126446ap+49
+-0x1.cc8b396c3ae57p+50
+-0x1.2ed6b9b553fd3p+48
+0x1.12025ee7695b7p+49
+0x1.836e4074da0bap+51
+-0x1.660e8446e06cp+51
+0x1.6cc9675afc23bp+51
+-0x1.92308040f88bep+50
+-0x1.027c004ed88cep+50
+0x1.4991e3145a693p+49
+0x1.3cc52bfec1d53p+51
+-0x1.e046f25ebad0ep+50
+0x1.e9c6d6f7e2af3p+50
+0x1.324c08f3a4f1dp+51
+-0x1.0b1c9bbd39eb2p+49
+-0x1.cc7f3e3269263p+47
+0x1.79855489f70e8p+51
+-0x1.b3ec1641f24bp+51
+0x1.50e80642aa956p+51
+0x1.9414c6ab9b846p+51
+-0x1.d4cfd9b554751p+51
+-0x1.2de661efd20cp+48
+0x1.a7b996cf3b9a2p+45
+-0x1.0238e9ea3c899p+48
+-0x1.b71074cd6b7c8p+47
+0x1.1d50961c0266fp+51
+-0x1.80da601e9741dp+51
+-0x1.37df6036a7d2dp+51
+0x1.9bcc409871f8ep+51
+-0x1.52c1527763e8ep+48
+0x1.f1c8795ecea22p+49
+-0x1.83adccabf4822p+51
+0x1.f1ab06c7b0116p+50
+-0x1.85b7b9fc90414p+51
+-0x1.9e4250b488f57p+51
+0x1.83717b759a46fp+51
+-0x1.9cb0c4a5966a3p+51
+0x1.2f7803e734378p+48
+-0x1.a2e1904ac9974p+51
+0x1.7e3f82f271844p+51
+-0x1.6c97374cf11cdp+51
+-0x1.c3dab9447a5bfp+49
+0x1.cdcb539a0a8f5p+51
+0x1.812253f635cbfp+51
+0x1.7bfe6521c124fp+51
+-0x1.547c62fb7b523p+51
+0x1.5818f5989f994p+49
+0x1.b3f1e320f5c07p+50
+0x1.6624a9e03fce3p+50
+-0x1.1473ca9031cb5p+49
+0x1.ff041a72110cep+49
+0x1.f1da828d473e1p+50
+0x1.51d57c50f68d6p+50
+0x1.d6ad157560ecap+51
+0x1.9fd7e5b2392f7p+49
+0x1.7ff54bbf85c34p+51
+0x1.8b7e8f32dcc28p+51
+-0x1.479d0cfe60b8ap+48
+0x1.2fce1ef4bcbf9p+51
+0x1.ac33c5c566ed1p+49
+-0x1.cecaf24e43227p+50
+0x1.b412939dcd6a2p+51
+# Random inputs in the range [4.50e+15,1.80e+308]
+## name: workload-maxint_maxfloat
+-0x1.2893c7c6bdebp+1023
+0x1.7a5f5e3d1dc4bp+1023
+-0x1.12051af0f230ap+1023
+0x1.5b1f70ac98952p+1023
+-0x1.530a4b774f271p+1023
+0x1.64976f5223d44p+1023
+0x1.64537d8a05c73p+1023
+0x1.94dd59e59ea88p+1023
+0x1.c0bb47e9b9088p+1022
+-0x1.929e991ab4979p+1023
+0x1.226a19468e40fp+1023
+-0x1.7e61ce917f572p+1023
+-0x1.4ed59f739a13ap+1023
+0x1.3a65949663ecbp+1022
+-0x1.2f9ccb970dd8ep+1022
+-0x1.5c6c8e3013d12p+1023
+-0x1.c2478e782d0cdp+1022
+0x1.ac5370574e766p+1023
+-0x1.43506404c18bfp+1022
+-0x1.281278ee04e48p+1023
+0x1.f309d815c3123p+1022
+-0x1.b3f234c3c7cbbp+1020
+0x1.b67d3ec40a2ep+1022
+0x1.419943b90a497p+1023
+-0x1.a1599b5bdf6d1p+1022
+0x1.1b46383e95b86p+1020
+0x1.42e366b8f8dc5p+1021
+-0x1.e8358139a83eap+1023
+0x1.dbca457d59a4p+1023
+0x1.da9b93752cf56p+1023
+-0x1.3db1c64de8a2ep+1021
+-0x1.1c93a497c399p+1021
+-0x1.3284b09698e82p+1023
+-0x1.ebf6b6dd67c5fp+1023
+0x1.e9bad91fd960bp+1023
+0x1.76ee8688a5538p+1022
+0x1.5a335a7b40a42p+1020
+0x1.bea526acd43d7p+1018
+0x1.fa6136966b8b9p+1023
+-0x1.1427851f2d488p+1022
+0x1.3c49385b781dap+1023
+-0x1.40e05d9e5dc0cp+1022
+0x1.9d23c05277d7ap+1023
+-0x1.8d4cd5d803fffp+1022
+0x1.500cd66b8ab43p+1023
+-0x1.75b967082e4ccp+1023
+-0x1.c05c31618ef51p+1023
+0x1.069a96f46ad4bp+1023
+-0x1.87658c1dc269p+1023
+0x1.870fe5c85e139p+1018
+0x1.d5d5c9f9c80b1p+1023
+-0x1.5283a96ea1c8ap+1023
+0x1.e2eb0c2807fccp+1023
+-0x1.0947fcb22f925p+1022
+-0x1.18ca05f01ceadp+1019
+-0x1.120ae3c354bp+1023
+-0x1.ba21e77f88d8ep+1022
+0x1.e4dbbceaaa875p+1021
+-0x1.e36957dd06197p+1023
+-0x1.bc50888801238p+1023
+-0x1.f8f88bc59ab95p+1023
+-0x1.ba036d0a7a623p+1022
+-0x1.18933795762b8p+1023
+0x1.5b7ae0d105d85p+1022
+-0x1.d9aa9ff561a88p+1022
+-0x1.a9a2e7d8377bp+1022
+-0x1.c29b61d89e628p+1022
+0x1.5e1846823d1a7p+1023
+-0x1.984b215934d2p+1020
+0x1.3202c74f1852ep+1023
+-0x1.5329325d7e237p+1023
+0x1.4532484082d88p+1021
+-0x1.c4a6ecf8fad76p+1023
+0x1.38488f041e897p+1023
+-0x1.edfca7de6f4f9p+1021
+-0x1.3e371814d8f69p+1023
+0x1.b531f20aff25ap+1023
+0x1.1c704d47438b3p+1023
+0x1.223c50ec07096p+1022
+0x1.0266db4a6abf6p+1023
+0x1.08c50ea522224p+1022
+-0x1.831a863f1c53p+1022
+0x1.1b18be6af1ddp+1022
+0x1.0b8108ec1588ep+1023
+0x1.f1bd3cccd6c29p+1023
+0x1.2004ac3bf2921p+1023
+0x1.9d702ffd8bbdap+1020
+-0x1.4abd11be857b2p+1022
+0x1.1b8a0df57f3a7p+1023
+0x1.11328ca9bd5e8p+1023
+-0x1.1dcfb035069e4p+1020
+0x1.6f3b4908d45cbp+1023
+-0x1.10cbb85f67aaap+1023
+-0x1.284a204cb163fp+1023
+-0x1.7188590afc945p+1023
+-0x1.60d89e4ccc965p+1023
+-0x1.943d42bec0847p+1023
+0x1.45fed483d309ap+1022
+0x1.56e28983946b6p+1018
+-0x1.69107214b6aa3p+1023
+0x1.895c5c3c5a2ecp+1023
+-0x1.fb0a3243d3c2cp+1021
+0x1.f6d738e2f2a8cp+1021
+0x1.432e766f34973p+1022
+0x1.6d03711aae1dp+1023
+0x1.86cc3b3fb7c81p+1020
+0x1.835b62572dfbfp+1020
+-0x1.137f63d81668cp+1020
+0x1.412f756069063p+1023
+-0x1.52c25176acbd7p+1023
+0x1.cf65727eece85p+1020
+0x1.34298023c445cp+1023
+0x1.cd55574015043p+1022
+0x1.a48a63d0051fep+1022
+-0x1.276578d397624p+1023
+0x1.9c436fee1d3bep+1023
+-0x1.b690487166ccep+1023
+0x1.cad2239e0ffddp+1023
+0x1.06155417715a3p+1022
+-0x1.1f7c538de446fp+1023
+-0x1.f906337b83308p+1023
+0x1.68ba8a624f39cp+1023
+0x1.f9aa879ee4291p+1023
+-0x1.a3e2fed8ee941p+1014
+-0x1.dd8e23cb5e0cfp+1021
+-0x1.08ca9d2af3593p+1022
+-0x1.52de580117cb1p+1023
+0x1.5336014eb390dp+1023
+0x1.23b9710837385p+1023
+-0x1.bb1d8e6134bb8p+1023
+0x1.1b03ba970845dp+1023
+-0x1.919715bb3297dp+1020
+-0x1.663f3a5d232c6p+1023
+0x1.d66742bc35ce6p+1023
+0x1.8bf58238d2c6cp+1023
+0x1.d835138c4162ap+1023
+-0x1.89921e08278bdp+1022
+-0x1.ffd2e3cc88a3p+1021
+0x1.d7fa0b28b7afep+1023
+-0x1.b8af7d03558d3p+1022
+-0x1.69f5d8ca693e1p+1023
+0x1.85f90b8ed2916p+1020
+0x1.9ebc8fb92e8d2p+1021
+-0x1.9662aa8e0f9f4p+1021
+-0x1.9a22999f8e15dp+1022
+-0x1.427dd2c4d857p+1020
+0x1.0c6dc4dff2665p+1023
+0x1.072054cc57acap+1022
+0x1.c674ca230cddfp+1022
+0x1.50401ee2b5059p+1023
+-0x1.6cc00b7f5c5dap+1023
+-0x1.da9d01a003911p+1021
+-0x1.325ed5d94e165p+1022
+0x1.7ab7f25fa8507p+1023
+-0x1.515173c8da8b2p+1023
+0x1.818c674ab8d68p+1023
+-0x1.90a2fe8677c44p+1022
+0x1.36bd14080d04dp+1023
+0x1.8ba7b4a87cb6ap+1023
+0x1.adccda9026fdcp+1021
+0x1.37219d83301e3p+1021
+-0x1.199705ceda1cep+1023
+0x1.a7084f168319bp+1023
+0x1.4353bd25d553cp+1022
+-0x1.f89aee124f074p+1020
+-0x1.088b0fc0d8465p+1018
+-0x1.eaa29b1560e1cp+1019
+0x1.dd5af53ae6eb8p+1021
+0x1.5899dce2f24e3p+1023
+-0x1.0ec0e0bcfe3e5p+1020
+-0x1.19cbd774bf2f5p+1023
+-0x1.76b01176e84d3p+1022
+-0x1.87b69bbc1b2f3p+1020
+-0x1.6aa7a0112e20ep+1023
+-0x1.74de4e5ca87bep+1023
+0x1.ccf2f953a0b8bp+1021
+0x1.481fd1d71f276p+1023
+-0x1.a8558f4a0a5d7p+1020
+0x1.2810aac548d66p+1022
+-0x1.e195f8bb6e287p+1023
+0x1.accb305048deep+1023
+-0x1.72acbc54834fcp+1023
+-0x1.bad779790cc3dp+1022
+-0x1.cd610db6c627fp+1023
+0x1.c3743e17c258dp+1022
+-0x1.33b360dfc90f2p+1021
+0x1.6db03aa1e17b2p+1016
+0x1.b9348831cfec7p+1023
+0x1.a7ddf3d686557p+1022
+0x1.805503ec97253p+1023
+0x1.0a908fc8ab91bp+1018
+0x1.dd202fd34f91bp+1023
+-0x1.884d25be8a5efp+1016
+-0x1.2668fec4d7edbp+1021
+0x1.044ea61accc0dp+1021
+-0x1.74a8f0b77e9a7p+1023
+-0x1.18c19e0db9775p+1023
+-0x1.981cb66f7c9adp+1022
+-0x1.d4213a21a5e8dp+1022
+0x1.a244d501ca653p+1023
+0x1.d14962a3bac67p+1023
+0x1.7cd478ff6dd43p+1023
+-0x1.43740cb56194ep+1023
+-0x1.4a48bbdb4658cp+1023
+-0x1.11953ff7258a5p+1023
+-0x1.390beb128fe6dp+1022
+0x1.9c6a15063cc98p+1022
+0x1.e09ffc8752284p+1019
+-0x1.79ee21f4ed85dp+1021
+-0x1.f3da28b0050d6p+1023
+0x1.47ef695aae944p+1023
+0x1.6b3d527187ff6p+1022
+0x1.5e65faeb93b0bp+1023
+-0x1.3d11dcd9d16c3p+1023
+0x1.c3beb750020e1p+1023
+-0x1.9e14d171718b6p+1021
+0x1.5872ee2ac721bp+1021
+-0x1.261cf615588dbp+1020
+0x1.66e0ad2bb0d82p+1022
+0x1.da80eefad8aep+1023
+-0x1.cd2a01a56bbbap+1023
+0x1.bec7bb09ec4dep+1022
+0x1.cee2a7ee1ebd9p+1021
+-0x1.fafcfc429bcf2p+1022
+0x1.35970d39c727p+1023
+-0x1.1c5b21d08a17cp+1020
+-0x1.ca7433bfa8355p+1022
+-0x1.15194ccce203bp+1021
+-0x1.fd333881cbcc1p+1023
+-0x1.9e29e2f059602p+1021
+-0x1.78134847de3bbp+1023
+-0x1.a8620432fbc5fp+1023
+-0x1.1869c0cc8de32p+1023
+0x1.a17aa9729ee43p+1023
+-0x1.cbc836928dbbep+1023
+-0x1.d31c44064af5p+1023
+-0x1.8723db2af9f71p+1022
+0x1.5338ee74add4fp+1023
+-0x1.8125c3b1a7795p+1022
+0x1.ef227f1f42a9bp+1021
+-0x1.441ad69f2b8aep+1021
+0x1.676a48919b8d8p+1019
+0x1.cadc4b8c0a2f9p+1023
+0x1.2878e288f4f0dp+1023
+0x1.128db23f62f8bp+1023
+-0x1.78baae227ebfep+1022
+-0x1.970c19a40926dp+1023
+0x1.bce04fea332c2p+1023
+0x1.e499a94cd6e47p+1023
+0x1.9e2801e958086p+1019
+0x1.aa385e22e8fa3p+1022
+0x1.85d264ccb2b4dp+1023
+0x1.4047cc578b333p+1023
+-0x1.8b428c1d1a15p+1023
+-0x1.a736f4ff93fc6p+1022
+-0x1.8ef6aec062b1ep+1021
+-0x1.800dd74593d6p+1023
+-0x1.83ab3b3c3b06ep+1022
+0x1.1a70a11058eefp+1022
+-0x1.7a0b36154686dp+1023
+0x1.ac83d765cb941p+1023
+-0x1.38e2d2e9839e2p+1023
+-0x1.c9d3f32d7698cp+1023
+-0x1.ee868b74875eep+1023
+-0x1.0af765eb6e531p+1023
+0x1.0fe3d17d4037ep+1021
+-0x1.d62a53533ec1ep+1022
+-0x1.7d0f475abcf54p+1023
+-0x1.06af1d0aba051p+1022
+-0x1.da81c793a9493p+1017
+0x1.a502c82134498p+1023
+0x1.52ccd5e3ff94ep+1020
+-0x1.c7c39eff68c5ap+1022
+0x1.c2936883311b9p+1023
+0x1.180ba439494edp+1021
+-0x1.a13610caa9acdp+1023
+-0x1.3351299fc697ep+1023
+-0x1.5f71f98ee4defp+1021
+0x1.babefd76533fap+1023
+-0x1.0e5b14fd78d18p+1023
+0x1.dfb3470533ad9p+1023
+-0x1.d1176bb930832p+1022
+-0x1.3b444f9296a44p+1023
+-0x1.b4765131e424cp+1023
+-0x1.65e144e33b781p+1023
+-0x1.eb30474a577bdp+1020
+-0x1.5b8f34e619e15p+1021
+0x1.1991a02d1cf68p+1023
+-0x1.84ddbc4805a61p+1021
+-0x1.24b37b79fe8ccp+1022
+-0x1.e94ec631cbf36p+1023
+-0x1.3227401adf71ep+1022
+0x1.5892ea1c36e88p+1021
+-0x1.58b15a9ee5c8ap+1022
+0x1.5cbbddb55a38ap+1020
+0x1.db24be33ee527p+1023
+-0x1.7541abffe4fffp+1023
+-0x1.f49a53497b42ep+1023
+0x1.52cc592aa86b6p+1021
+-0x1.9e030d83240ebp+1022
+0x1.6a1e12d9291cep+1023
+0x1.3f62c94b92333p+1023
+0x1.02414841df84p+1023
+0x1.1bd6c667a9308p+1023
+0x1.fcc522e8dcea6p+1021
+-0x1.386013c8531f2p+1023
+-0x1.795813648203fp+1023
+-0x1.a04ecaaa12ea6p+1023
+-0x1.a9630ad42bd28p+1022
+-0x1.1353ed721ad14p+1022
+0x1.004a377839b95p+1023
+-0x1.9c4cb7630b0c5p+1021
+-0x1.3300889c425d1p+1023
+0x1.4d46e05aab447p+1023
+0x1.794b7c6e48e75p+1023
+0x1.e00f3bc3c5873p+1023
+-0x1.a7834f76d4587p+1020
+-0x1.254b77d1d6e84p+1023
+-0x1.72c2ace322bd7p+1023
+-0x1.2d91f296b2b3ep+1022
+0x1.ece3e9315387p+1021
+0x1.e4479c7f16d4cp+1022
+0x1.6a9cee915e971p+1023
+-0x1.a26f2da115042p+1023
+0x1.b304ab42131bbp+1019
+0x1.6184021acd8bfp+1022
+-0x1.29087da0eabbcp+1023
+-0x1.e0e7976581483p+1023
+-0x1.c396f6b1071d1p+1022
+-0x1.e0397a554f537p+1022
+-0x1.c31624c4e95bfp+1022
+-0x1.adaca2f355f3p+1023
+-0x1.68f30e9c915b9p+1022
+-0x1.b664b8d736f46p+1022
+-0x1.e1df5a6a1def1p+1023
+-0x1.7db4058313d74p+1022
+-0x1.bc629c105b861p+1022
+0x1.3226c593f9bdfp+1019
+-0x1.8af451a4f496p+1023
+-0x1.f606003bf2ab5p+1021
+0x1.2ba08e75ce87p+1019
+0x1.a127c7364b679p+1023
+0x1.0c3e22a256206p+1023
+0x1.35b7c0a9a1465p+1018
+-0x1.c554fecb76ep+1023
+0x1.3a4f1f70b135dp+1021
+-0x1.94fde23dbac9dp+1022
+-0x1.5e43d9145dbb2p+1022
+0x1.d3fab25984d3bp+1023
+-0x1.24a8b2ec89c5fp+1021
+-0x1.8f437e5e6006p+1021
+0x1.ef2c75c224227p+1022
+0x1.27b61d3e85e0fp+1022
+-0x1.797832006abdfp+1023
+0x1.982f555e9e272p+1023
+-0x1.4389aa8633a3bp+1023
+0x1.f6bb70acf9d7bp+1023
+-0x1.a86d02c27facdp+1023
+0x1.a5ec992ccebddp+1023
+-0x1.d9512481fd3e2p+1023
+-0x1.bd58c96c5bb16p+1023
+0x1.94dcc29d26cb1p+1022
+-0x1.18ee1e48e38c3p+1022
+-0x1.ca7fd0211e3d6p+1023
+0x1.33d3bf13bf8fap+1023
+-0x1.fd0aa187808b7p+1023
+-0x1.3e4a61dbcfa7ep+1021
+0x1.f3b6874eaef01p+1023
+0x1.02e0eaf1dedb8p+1020
+-0x1.c079862452d98p+1021
+0x1.1bc83c6d28839p+1023
+0x1.4e224a78c58ebp+1023
+-0x1.689421d8342c8p+1023
+0x1.5a6b1ad0ab06ep+1023
+-0x1.da27c64f37d49p+1023
+-0x1.6217108aea1cp+1021
+-0x1.a1304c6f4c6f5p+1020
+0x1.58f36ff18382ep+1023
+-0x1.3a926befae00ap+1023
+0x1.2b177cf08cf02p+1023
+0x1.65832df38799ap+1018
+0x1.a703403d88ba6p+1022
+0x1.658657b08e79fp+1023
+0x1.42bfdd7495fd9p+1023
+0x1.25aba718dc811p+1023
+0x1.58aac1bb4645p+1022
+0x1.0b6b9b9f236dap+1023
+-0x1.88dbc92e040b7p+1023
+0x1.98ad28ba6ad37p+1022
+-0x1.0b0d5bdef315cp+1022
+0x1.00ade3d34d56p+1023
+0x1.4752ec604841p+1023
+0x1.00e1f8648ec58p+1023
+0x1.2181cc8f70efbp+1023
+0x1.f3c2fcc7bbbe8p+1022
+-0x1.0afb834873f06p+1022
+-0x1.809c22ca39feap+1019
+-0x1.e9ef21969071ep+1021
+-0x1.4c6bcce0f683bp+1023
+0x1.2b93408c44d91p+1023
+-0x1.23ed4b04d87dep+1022
+-0x1.a9fa9eacfbe17p+1022
+-0x1.4409895f629a2p+1023
+0x1.67606bbee661dp+1023
+-0x1.73337653e5566p+1021
+-0x1.0290b2cb0783fp+1023
+0x1.85a0a8c9b37c5p+1023
+0x1.cd3f65c961daap+1023
+-0x1.3987131be75c9p+1022
+0x1.859f9b3c45356p+1023
+0x1.9601f1952a44ep+1023
+-0x1.b02d6e857493fp+1023
+0x1.43aa5de497ef3p+1023
+-0x1.d41db983920e4p+1023
+-0x1.8bc9e7e1668e4p+1022
+-0x1.262e2ca70b0cfp+1021
+0x1.a33ed68b9c84ap+1023
+0x1.4ebee3629d515p+1023
+-0x1.17fe4fe89e85ep+1023
+-0x1.9ee1493fdae0dp+1023
+0x1.2e33d98e6d5e5p+1023
+-0x1.e02c0bf9191bbp+1022
+-0x1.706e13667ec9dp+1022
+0x1.05ee0de00eb26p+1022
+0x1.aa17101e268cap+1022
+0x1.ff9df12a56eep+1022
+0x1.58e6615311417p+1023
+-0x1.0652b58963efep+1023
+-0x1.40c2b41e31e0dp+1023
+-0x1.ecc55e7cd8761p+1022
+-0x1.c20672e1f8626p+1021
+0x1.6a50b4be88fcdp+1023
+0x1.40f436f551afbp+1018
+0x1.490279abb355ep+1021
+-0x1.3bac51a49ec39p+1022
+-0x1.2be5e718dfe52p+1023
+-0x1.ead7682b59719p+1021
+-0x1.3b82a9c238ad3p+1022
+0x1.03177b64720a6p+1023
+0x1.0be9366b35bd8p+1019
+-0x1.1dbcf5e236185p+1023
+0x1.50dc1351ca522p+1023
+0x1.2eead52db504fp+1021
+0x1.ebdb16c972031p+1023
+0x1.224f9ee045b85p+1020
+-0x1.0930142af8ce1p+1019
+-0x1.a2a62ae344c14p+1022
+0x1.ffce80fbae1ccp+1022
+0x1.14abb6c855eefp+1023
+-0x1.3aaea3ed5f7fbp+1022
+-0x1.f525ad4ab8078p+1023
+-0x1.f611f62801164p+1023
+0x1.8af9373bea598p+1021
+0x1.c70a6cae1f39bp+1023
+0x1.793120cb92e1ep+1021
+0x1.bee36b591d5d1p+1021
+0x1.b0f04b5cc08b2p+1020
+-0x1.6e8bc4042ffp+1022
+0x1.7da8a8764cbcbp+1023
+0x1.c9153ccd923c7p+1023
+-0x1.f349cc1c8970dp+1021
+0x1.a1d7407609568p+1023
+0x1.1f16f7347bdb6p+1023
+-0x1.ef4174e55a8ecp+1021
+0x1.d2525246b8db6p+1023
+-0x1.8c88d74ea169dp+1023
+-0x1.7f7280c6bfb5ap+1022
+-0x1.80c5284707113p+1022
+-0x1.445b1af95c441p+1023
+0x1.ed05c9ec43a9dp+1022
+0x1.ddaa3286dc2afp+1021
+-0x1.a172bdf6f39a8p+1023
+-0x1.9d8421eeafdd3p+1023
+0x1.7d5e539682413p+1021
+0x1.cc4236f593ee2p+1017
+-0x1.9b60c4e5c6da2p+1022
+-0x1.52b40a143f3dcp+1023
+0x1.f2e7202313914p+1022
+-0x1.56a5d23acfde3p+1022
+0x1.f5be534eda127p+1023
+0x1.fb25f4b187313p+1022
+0x1.7b3769d77835dp+1022
+-0x1.648ab1268037ep+1023
+0x1.4fe6b5c22c001p+1022
+-0x1.763c903bb9795p+1023
+-0x1.4a301066ef81p+1023
+-0x1.af9782958a4f6p+1022
+0x1.8574d9cbe21b6p+1019
+0x1.89c7d17a3c5bcp+1022
+-0x1.1c07153aadcd2p+1023
+-0x1.8032818975068p+1023
+-0x1.8b4b84f2c202fp+1022
+-0x1.38a5bba689d82p+1023
+0x1.59acf525b4958p+1022
+0x1.be584b59befbap+1023
+-0x1.99fa42adb3748p+1023
+-0x1.3c65d4e696012p+1023
+0x1.1e78a7ab98564p+1022
+0x1.13126c23a6306p+1021
+-0x1.24f56c9698707p+1021
+-0x1.9fa7ca06bbfb3p+1023
+0x1.cfe30a3493ap+1022
+-0x1.225b6b36d829ap+1023
+0x1.6e961141bdf52p+1023
+-0x1.6e5194a442b2bp+1021
+-0x1.4cf13497ba548p+1021
+0x1.18114826636f2p+1023
+0x1.4707581e83c44p+1023
+0x1.ed57721a53856p+1023
+-0x1.c14c39c4caceap+1023
+0x1.4c66053d0aa6fp+1023
+0x1.4f7ccf2d621d3p+1022
+0x1.413551564c8e4p+1023
+0x1.027d26e725955p+1023
+0x1.66d33b290fe66p+1022
+0x1.53b73de0b1b33p+1023
+-0x1.8e3c0e7c207f7p+1020
+0x1.d5671e0aef634p+1023
+0x1.71cb99d64aeebp+1023
+0x1.7a2464e05b56ap+1022
+-0x1.7a8c09858b6bep+1023
+-0x1.d7024ce084694p+1023
+0x1.29828e77252c6p+1023
+-0x1.0c0be221dff83p+1019
+0x1.987f71d428f3bp+1023
+-0x1.19b2cdb053861p+1023
+-0x1.a9d59fc6297f5p+1023
+0x1.509e65a17eb7dp+1022
+-0x1.f96213f1801d8p+1023
+-0x1.70b50c035ec75p+1023
+-0x1.110c1daa19b1dp+1023
+-0x1.e604c6da2e552p+1021
+0x1.56a83ff02d8c2p+1023
+-0x1.23b62ef1977a2p+1021
+-0x1.4d222af302ff2p+1020
+-0x1.cab97bd25723bp+1020
+-0x1.b026534a2702dp+1023
+-0x1.06987a9caf2c9p+1023
+-0x1.60aaae13f4bc6p+1023
+-0x1.f302c9528c545p+1023
+0x1.6dcf1f3bc81c2p+1022
+-0x1.b16f5a65d886ap+1023
+0x1.2b622f3f4eee8p+1021
+0x1.a690ded3e2f87p+1023
+0x1.2a9b10b13efe8p+1018
+-0x1.aee7bf4d79038p+1023
+-0x1.7bd7769b06499p+1023
+0x1.527607007d0c9p+1023
+-0x1.c0040bf097c9cp+1022
+-0x1.06fbf71c87ebcp+1019
+0x1.1cd91c65bfbeep+1019
+0x1.05b140b4b9874p+1023
+-0x1.454ffa21efecbp+1023
+0x1.f6501b7c84889p+1022
+0x1.fb1fb8be7412ep+1023
+0x1.c7136674760e3p+1023
+-0x1.812d4abc56f75p+1023
+0x1.2b2a03beba2dbp+1023
+0x1.f2cc1ba17096bp+1021
+-0x1.936f299c33b16p+1022
+-0x1.10e773c2a2d1p+1021
+0x1.e036765a7c06ap+1021
+0x1.a96a41157868dp+1023
+-0x1.84dd71d5ed7f4p+1023
+-0x1.ea3519694c819p+1023
+0x1.660d22944973bp+1023
+-0x1.519c4a6868fedp+1022
+-0x1.8db1479314e5fp+1023
+0x1.28bf2048f73cfp+1023
+-0x1.3b5c624e98577p+1021
+-0x1.f900f1bee7389p+1018
+-0x1.947f1429d0829p+1021
+0x1.d0f89241c720ap+1023
+0x1.b8a2265e8327ep+1019
+0x1.7a060e8b4214fp+1020
+-0x1.e287352e5f8a8p+1023
+-0x1.a16d30749bbeep+1021
+-0x1.fa9f5d0e0b17p+1023
+-0x1.2767fff8684cap+1022
+0x1.5f1e3bbfcfd9fp+1020
+-0x1.0358bee2d8784p+1020
+0x1.f9eeea3d15443p+1023
+-0x1.cfe9196446d6ap+1023
+-0x1.a2f5c9f5453edp+1023
+0x1.231d64136ed46p+1023
+0x1.171cd05486ac2p+1023
+-0x1.7524716e50a56p+1022
+0x1.78887c81058dap+1022
+-0x1.254b3af98a7d4p+1020
+0x1.f02f2db70c983p+1022
+-0x1.6647a8a683858p+1023
+0x1.4b786d49bef55p+1023
+-0x1.60e34f947f4abp+1023
+0x1.f6e50dc49f40ap+1023
+0x1.57a72cf668ea5p+1023
+0x1.02cb77e2116dp+1023
+0x1.32a457492cca2p+1023
+0x1.5a0282dc110d6p+1021
+0x1.cfd50819d4de9p+1023
+-0x1.f29f59302fb57p+1023
+-0x1.0e02419718f99p+1023
+-0x1.8cc6449c91b8p+1023
+0x1.e28bb0033ab86p+1020
+0x1.345f8b416d282p+1022
+0x1.ad546e773e931p+1023
+-0x1.2705a8e02bc64p+1023
+0x1.d29e47a39828dp+1023
+0x1.0c9e7e097d2dbp+1023
+-0x1.7de82c4cdc968p+1023
+-0x1.b88cc074b79b4p+1022
+0x1.0fe9efe480d2p+1022
+-0x1.e8d7503f98b71p+1022
+0x1.52ff87d2d1c87p+1023
+0x1.12bb8def50e2ap+1022
+-0x1.d24f4c3e1c656p+1022
+0x1.48fb82a9c869ap+1023
+0x1.17981095d0d84p+1017
+-0x1.f8b548ca59c99p+1023
+-0x1.e4b5bdd4b827dp+1022
+-0x1.4724a60e585b6p+1023
+0x1.fea9e26ebb5ffp+1020
+-0x1.e7b48e54eb092p+1023
+0x1.2cbd40f969404p+1020
+0x1.ad285c6f6a57ep+1021
+0x1.9755e63c84583p+1021
+-0x1.5c4fcfb450d7p+1018
+-0x1.d8319781ff922p+1023
+0x1.18759863be211p+1023
+0x1.9e589286bc028p+1023
+-0x1.945cd68a64ba2p+1022
+-0x1.b7f6626ea11d4p+1022
+-0x1.1a2226793d2b2p+1022
+-0x1.ef3d8c98d67d7p+1022
+-0x1.8045496148682p+1021
+-0x1.52310ec21f8e9p+1023
+-0x1.be952aef07072p+1023
+-0x1.58dd562f7cd2ap+1023
+-0x1.8b3613fd7da07p+1023
+0x1.a43fd3ceecee7p+1022
+-0x1.c8ebcc58718p+1022
+-0x1.a4c8e698ac9ep+1023
+-0x1.73bb39d8c8085p+1023
+0x1.29566f84c2d23p+1023
+-0x1.5856e4b5a54bdp+1023
+-0x1.61f907561c2ddp+1023
+-0x1.1c8e3382e4b35p+1021
+-0x1.caefa6f9f2de9p+1022
+0x1.414ee58bc94d8p+1020
+-0x1.4f9e93a1e40f6p+1017
+-0x1.5c3baae4c8188p+1020
+0x1.81ec60a27c556p+1023
+0x1.d0611cad1c86bp+1020
+-0x1.c3472e4f1ab91p+1023
+0x1.6c875cd06e265p+1018
+-0x1.529e8f49aa8dbp+1023
+-0x1.e11718c39a6bfp+1021
+-0x1.7e3822254e12p+1023
+0x1.3f5c104778299p+1023
+0x1.7f91366d862f9p+1023
+-0x1.1e23272df121ep+1021
+0x1.c413909bf403p+1022
+0x1.6000c86171df5p+1021
+-0x1.ca42614dc3222p+1021
+-0x1.7301899c67a46p+1022
+0x1.b66df709202c1p+1023
+0x1.2fd6a2a6d90b4p+1022
+-0x1.88c20286db7acp+1023
+-0x1.e35e0e9a6aa01p+1023
+0x1.d4927c4960a22p+1023
+0x1.e3065b8f0f7edp+1023
+-0x1.846c26041c2fap+1023
+-0x1.7dc5fe9cffc1dp+1023
+-0x1.a1a933b5e124dp+1022
+0x1.592fa16a71ab4p+1021
+0x1.9a8151eedaab1p+1023
+-0x1.d8b866029b178p+1022
+0x1.6a2077eacaa52p+1023
+0x1.4202e8f386c64p+1022
+0x1.86a90de9f0a5fp+1023
+0x1.6db90c816b8e4p+1022
+-0x1.eb4e1f700a34bp+1023
+-0x1.4c05e0d16d12dp+1022
+-0x1.c301fe6ffcb64p+1020
+-0x1.3cc8e0ffa41a5p+1017
+0x1.637236b0b5acdp+1023
+-0x1.d9ac99391034p+1021
+0x1.460386da6720ep+1023
+0x1.4396391094937p+1023
+-0x1.406b71ec7bb2ep+1021
+0x1.5273698378e55p+1021
+-0x1.954df12ce3b42p+1021
+-0x1.105e6b5e3e8bp+1023
+-0x1.a8acd86c4ba7cp+1023
+0x1.40b6e83164a81p+1023
+0x1.8905ee4837826p+1022
+0x1.56e38616b6049p+1022
+0x1.fb81440d821f6p+1023
+-0x1.7b1a0cc799335p+1018
+0x1.66536b7318715p+1023
+0x1.6163daec068f7p+1021
+-0x1.d6ca78f358862p+1021
+-0x1.469888e9beaa8p+1022
+-0x1.cdd8d064c9205p+1022
+0x1.8bf2399be0b8bp+1023
+-0x1.710e28a167d9p+1020
+-0x1.8fc1e11996963p+1023
+-0x1.0d47867d0e70cp+1021
+0x1.83cd81631e85cp+1023
+0x1.c37f52eee1b1bp+1022
+-0x1.70ae3567f40a3p+1023
+-0x1.5fa24ce6c81bbp+1023
+0x1.faf08ff39969p+1023
+0x1.b66a81833f794p+1021
+-0x1.99020b05eb264p+1021
+-0x1.b89b0dfa63501p+1023
+0x1.c9cc00ec70646p+1023
+-0x1.ed291eb2f7c28p+1022
+0x1.4433832bbaddp+1023
+0x1.608c90b4adc5fp+1023
+0x1.43df190403ac9p+1023
+0x1.fd5f96616e717p+1023
+-0x1.892c8820babd8p+1020
+0x1.891c3ef892952p+1022
+0x1.cfdb064f30a08p+1022
+0x1.26a2035caeb04p+1022
+-0x1.8016c7f9b2342p+1023
+-0x1.71f4cc45e073bp+1017
+0x1.d6b952b988d2ap+1022
+0x1.8a3e72c4479bep+1022
+-0x1.0830fe4c42897p+1023
+-0x1.01b7260aa67d6p+1020
+-0x1.4ec9842e411efp+1023
+-0x1.43cff7843e3edp+1023
+-0x1.648394da4a3ddp+1020
+-0x1.cf01ba3a8e479p+1023
+0x1.28839ed01b6c8p+1021
+0x1.55c641a297faap+1022
+-0x1.1fd57f3a5d164p+1022
+0x1.b779b5c95b787p+1023
+-0x1.e0943f5055fedp+1022
+-0x1.63dccab3285b1p+1020
+-0x1.561bc44008e65p+1021
+0x1.c7cfd3c436e76p+1023
+-0x1.6537e0d5526fbp+1023
+-0x1.7033b23025f44p+1022
+-0x1.49fc4b92b8527p+1021
+-0x1.8bf83858ee178p+1023
+0x1.9998d8ce6d0f6p+1023
+0x1.edde0c777ee05p+1022
+0x1.de852a18a0537p+1018
+0x1.2488dd00d9191p+1022
+-0x1.10ed5cd3dfe8bp+1023
+-0x1.948f8798f5228p+1022
+0x1.54d3e564779e8p+1023
+-0x1.cfa51e4c35714p+1022
+-0x1.8d374c89c805ep+1021
+0x1.1dc4431d390b3p+1020
+0x1.f6ddf8cc1e342p+1023
+0x1.15869acbe8941p+1021
+0x1.e9f6203c3813ap+1022
+-0x1.87be9d120cfd1p+1023
+0x1.01cc5c76e513bp+1023
+-0x1.101044071bdb7p+1021
+0x1.753cba51a0667p+1022
+-0x1.07f1863a70b67p+1022
+0x1.48afd1e084de3p+1023
+0x1.4fb9d443bc815p+1023
+0x1.f46df984439a3p+1022
+-0x1.b3f6a3401c34dp+1022
+0x1.5ce140bfb01e8p+1022
+0x1.0fb953e3972adp+1020
+0x1.7d84e373a14cdp+1023
+-0x1.b441e811121c9p+1023
+-0x1.3fcf168d74eacp+1022
+-0x1.4b5afaf08cdb3p+1023
+-0x1.29b4fa9a2c79fp+1023
+-0x1.334253fc342bcp+1022
+0x1.cc04bfd2b090dp+1023
+-0x1.1a3de738c1b23p+1023
+0x1.8bec03dcfda42p+1023
+0x1.d4814b259ec6fp+1023
+0x1.2f3ca234f2d2fp+1021
+0x1.c9b4fe3ca4c13p+1023
+0x1.fa1c1b498e33ap+1023
+-0x1.e71ee72c27d2ep+1021
+0x1.95dcba815acb3p+1023
+0x1.81d141647d036p+1021
+0x1.c2cce1c165395p+1022
+-0x1.991030f80861ep+1014
+0x1.a879f491a870bp+1021
+-0x1.7cd5a40eb38d1p+1023
+-0x1.af6d0407b5b49p+1023
+-0x1.19613c80fada2p+1023
+-0x1.354e00d0b7985p+1021
+0x1.3b4bd02a4ce8p+1019
+0x1.d53789e538895p+1023
+-0x1.01a8ab13bbf15p+1021
+0x1.5ea3d1c607d38p+1023
+0x1.e7cbadc4cb8c3p+1017
+0x1.9cf893f48b557p+1022
+-0x1.2ca1387511439p+1022
+0x1.2b1500a18d746p+1022
+0x1.6371f7847704bp+1022
+0x1.129905cbba64p+1022
+-0x1.2647f3a5fa0e2p+1023
+-0x1.e71c86ca3e13p+1021
+-0x1.7fafad7bcaeaep+1020
+-0x1.7ca8dbcd53399p+1023
+0x1.a5efe27ffb41ap+1023
+0x1.a8c1446276339p+1022
+-0x1.c6a1c89b4c6b6p+1020
+-0x1.22f7cc885c1d9p+1023
+0x1.0551f5974045cp+1017
+0x1.797546c9f05fep+1023
+-0x1.e2413229e2fdcp+1023
+-0x1.97e739dc7bdb2p+1023
+0x1.7911169948436p+1023
+0x1.c16738feb9c4bp+1023
+-0x1.46af98e34d398p+1022
+-0x1.8168d2f05e58dp+1021
+0x1.609fdfb99c708p+1019
+-0x1.4b59f0ef31a98p+1023
+-0x1.907721255abf8p+1023
+0x1.b3fff9c630f55p+1020
+-0x1.934aff6fb41f9p+1023
+0x1.cc092aadf8fbbp+1022
+0x1.71aea3fb27a78p+1022
+0x1.8df7397485a45p+1023
+-0x1.a6815511d6f0cp+1021
+0x1.5aeadd3f78c4bp+1015
+0x1.965172eaac33ep+1021
+0x1.af2a1e059db56p+1023
+-0x1.0c29f4613a27fp+1023
+-0x1.1bfcf2a9b2717p+1022
+-0x1.98011ca1a9896p+1022
+0x1.9c0f0541851f7p+1023
+-0x1.3f2190e05ac6cp+1023
+-0x1.223090fdbc32bp+1023
+-0x1.2983878fcf6c2p+1021
+-0x1.6e4bbe9389773p+1023
+0x1.835ae6881d492p+1023
+0x1.55fb640d2a65fp+1023
+-0x1.a3766c6de2bcap+1020
+-0x1.477787344951cp+1023
+-0x1.e1797e664bdp+1022
+0x1.d1bd4c4fd6878p+1023
+0x1.3fcdd2bcd5e49p+1023
+0x1.d06e1654d6b2ap+1023
+0x1.54815297b582dp+1021
+-0x1.30da3b01cf8dcp+1023
+-0x1.3237a1ab1dbe1p+1023
+-0x1.23a9e6058f9c8p+1023
+0x1.cca3a37f844c9p+1023
+-0x1.09aff774699b4p+1023
+0x1.df9f301e15eedp+1023
+-0x1.adad70a271b67p+1023
+-0x1.b85807715ef5cp+1022
+0x1.6ba078626a8ddp+1023
+-0x1.e6fadd8d92de4p+1022
+0x1.9fca286dcac9fp+1023
+0x1.cc6306f5460afp+1021
+0x1.7f9ba4e99d0adp+1019
+-0x1.cee1004924c5cp+1023
+0x1.b5a428765c5d8p+1021
+-0x1.7496ef66e6a1p+1023
+-0x1.4785b7bd12c4ep+1023
+-0x1.494eab1ac32f1p+1023
+-0x1.16dcff801087p+1023
+-0x1.e4a230e591477p+1022
+-0x1.3bb60786cea3ap+1022
+-0x1.8d8c8e80bc64ap+1023
+-0x1.ca741cb292da5p+1022
+-0x1.309c64fbe8186p+1023
+0x1.1bc4e0e13d185p+1023
+-0x1.81ce0081a559ap+1021
+-0x1.c6675321177a3p+1023
+0x1.7d8d01d5e38edp+1021
+0x1.fb2d1fee05db1p+1023
+-0x1.8096779304b82p+1022
+0x1.86584ae582346p+1023
+0x1.79356eeb82f81p+1023
+-0x1.96e7170ddaf4bp+1023
+-0x1.37375ea4a0ceep+1021
+-0x1.65530d9fd0c8ap+1020
+0x1.a71c21023cb78p+1023
+-0x1.55a6f6c7e581dp+1023
+-0x1.268750f983e1bp+1022
+-0x1.8cbb1651754e9p+1023
+-0x1.1709be52a5d4p+1022
+0x1.e076c616a83a1p+1023
+0x1.fe35e1efc6954p+1023
+0x1.b9ea7febeb645p+1023
+0x1.edf5fa4710329p+1023
+0x1.1bc64fd900f65p+1023
+0x1.5f6ed996429efp+1022
+0x1.9486fcf109e5bp+1021
+0x1.ca1362a0155dp+1022
+-0x1.bdbf02276fd89p+1023
+0x1.a658c5ca30b95p+1022
+-0x1.fcfd61f6ac1dap+1023
+-0x1.88f6c04bf74f8p+1022
+0x1.4ba43c9347f99p+1023
+0x1.1b3ce751fc649p+1021
+-0x1.7d2a29195bfe2p+1021
+0x1.27038754c57cdp+1022
+-0x1.760c458985041p+1022
+-0x1.815f7d5584413p+1023
+0x1.59480b825bc27p+1019
+-0x1.0e2054bcd4ap+1023
+-0x1.d6ebf2d68b3f1p+1021
+-0x1.3986be24c32f6p+1023
+0x1.beba32e079d6ap+1020
+0x1.be0101d485a7p+1022
+-0x1.1f775470c8853p+1023
+-0x1.b6e4d4dc00c1ap+1023
+-0x1.d19315aa8abd4p+1023
+0x1.b645630535957p+1018
+-0x1.40aa0507b2f35p+1020
+-0x1.64a9523f65e4dp+1021
+-0x1.54f1052033a6fp+1021
+0x1.4f5d1e842e854p+1023
+0x1.b80fb74bb67b8p+1017
+0x1.35389b58bccb4p+1021
+-0x1.fd7dcdd826011p+1023
+0x1.1f550da7f7c4dp+1023
+-0x1.aa515a50e01f6p+1023
+-0x1.cc1cad8c5f8c4p+1020
+-0x1.5aaa1bc272717p+1023
+0x1.47f57c16a7b3fp+1023
+0x1.2c7cb58e16ab2p+1023
+-0x1.3d05cf3f71abcp+1021
+-0x1.8c3515fc6d68ap+1020
+-0x1.96c912d9fc779p+1020
+0x1.bf2344f91a9bfp+1022
+-0x1.eb7fe732a6f9fp+1023
+-0x1.dec95c1ec22d3p+1023
+-0x1.e2252e77925f2p+1023
+-0x1.82ad41f848fa4p+1023
+-0x1.3e0ce969f6bp+1022
+-0x1.cfd1a13bab698p+1022
+-0x1.6ae5699bc5f61p+1023
+-0x1.d07f8590ba07cp+1022
+0x1.d6715ac0a4f4p+1023
+0x1.9c58251e2b027p+1023
+0x1.d26616813245dp+1023
+-0x1.7bce4012f8dd1p+1019
+-0x1.e5fb9cffe0e43p+1023
+-0x1.84a34dcdb5575p+1021
+0x1.c6bbc50cbbf8ep+1023
+-0x1.10495c40b600dp+1022
+0x1.14f45f624a4c8p+1023
+-0x1.39c4a9eb65fabp+1023
+0x1.6744c2dab3dabp+1021
+-0x1.16b5302062578p+1023
+0x1.907f18b418245p+1023
+-0x1.41788ae5aaaedp+1017
+0x1.fd4033cb2259ap+1023
+0x1.e73efaa1d287p+1019
+-0x1.30baea59bfdeap+1022
+0x1.b41961eb3b256p+1022
+-0x1.bcba1f415ba9ap+1023
+0x1.772cbf30f3ab4p+1023
+-0x1.0c9df03241819p+1023
+0x1.f8e1c64e092abp+1023
+0x1.fcd204f9f38ap+1022
+0x1.aa31e4e50c366p+1021
+0x1.2b269f97bca33p+1020
+-0x1.afa3548f45bf9p+1023
+0x1.e8dbb8575b095p+1022
+0x1.3980e3ed32b44p+1023
+-0x1.92ff41e40cb53p+1023
+-0x1.065274b3e6ep+1021
+0x1.64c7ce51b3a27p+1023
+-0x1.c5fc410013f5ap+1023
+-0x1.53ea31ea19e97p+1021
+-0x1.7d26db941a96p+1022
+0x1.def2d31244af7p+1021
+0x1.d7aaea0f13f3ap+1021
+0x1.d3dc0861296dfp+1021
+0x1.c7a8a6fc91b3p+1023
+-0x1.557d0e38d23bp+1021
+-0x1.1437674c6f2fap+1023
+-0x1.e3d2d39bf745cp+1023
+-0x1.cb2789186dfdp+1023
+-0x1.b307d44b6afdfp+1020
+-0x1.b26afc29932edp+1022
+0x1.5d9a619ea1301p+1023
+0x1.0aca98b694c6fp+1023
+-0x1.c330698e5b94bp+1023
+0x1.8d29bfd740832p+1022
+0x1.ee97b4022c214p+1023
+-0x1.789197818b5efp+1023
+0x1.31675adb74495p+1019
+0x1.7681dd6e0a2fbp+1022
+-0x1.4ab247d2f0804p+1023
+-0x1.49955ecdaa852p+1023
+0x1.74493ae448314p+1023
+0x1.47380e8752df3p+1021
+0x1.0be8fbc2861a5p+1023
+-0x1.cd4f0edebe566p+1023
+# Random inputs in the range [0.000000e+00,4.503600e+15]
+## name: workload-integral
+0x1.746762c4d0dfp+48
+0x1.85e8057b3fab8p+50
+0x1.8bb7b219e327cp+51
+0x1.89c0e6ea5abp+49
+0x1.bd66d91a4b16ap+51
+0x1.c3f7bed527f16p+51
+0x1.09be664c818e6p+51
+0x1.e41760ca96b14p+50
+0x1.2461d99a8c68cp+50
+0x1.000dde7ad2f38p+49
+0x1.2e531a9d6dc1ep+51
+0x1.5ed9076c34152p+51
+0x1.65d61729a97b6p+51
+0x1.6d5a63000184p+51
+0x1.51101b1bea6fcp+50
+0x1.4b2489e9d6372p+51
+0x1.a7042475cbb04p+50
+0x1.3145ca84244fp+49
+0x1.71eb9ce6e8bp+45
+0x1.73e48de492ccep+51
+0x1.dc474657d0558p+50
+0x1.c3eda80c69cbep+51
+0x1.5281c32213ba2p+51
+0x1.95172c1b22544p+51
+0x1.f0e16d3f4fee2p+51
+0x1.9850a00a01ad2p+51
+0x1.a2df9adce1ccp+49
+0x1.abf0e38ea7ae8p+49
+0x1.994739ed922p+47
+0x1.aee655920a7e8p+50
+0x1.3c8275a852b88p+50
+0x1.e7ed8ac710958p+50
+0x1.622bda73f83ep+51
+0x1.479ca5723b3e4p+50
+0x1.ec5f201bbde34p+50
+0x1.ae86df7791c48p+49
+0x1.5480da7f0873ep+51
+0x1.c159c7d84fb2p+50
+0x1.c0ba8e8d49d86p+51
+0x1.ea3448b00098p+49
+0x1.416c9adeffb8ap+51
+0x1.a0626129435f8p+51
+0x1.9641d5ff39bbp+50
+0x1.9fd782fd6f448p+50
+0x1.bde3dbc521e3ap+51
+0x1.e98b24c292a1p+51
+0x1.9e8e333825daap+51
+0x1.2b3d5f6461ap+50
+0x1.b0c7d2a32307p+51
+0x1.9436c919c7448p+49
+0x1.12729bd6a1c0cp+51
+0x1.da6fd931f41p+45
+0x1.a880f7cdae53p+49
+0x1.60d0693a44124p+50
+0x1.3a9f71e0307ap+49
+0x1.1282ab46b48p+43
+0x1.2a1aea668bd54p+51
+0x1.d2970df0ea596p+51
+0x1.676126fa86278p+51
+0x1.0c29a52e9d34ep+51
+0x1.8e576eb0dfbbp+48
+0x1.f4894c1a051ap+50
+0x1.ddfdeba7f012p+49
+0x1.f05479635266p+49
+0x1.be0a199b88c22p+51
+0x1.07667f654902cp+51
+0x1.aa028da68e8fp+48
+0x1.8a8989181501ap+51
+0x1.c1dbf84b16c2p+51
+0x1.b38f4c1932338p+51
+0x1.14c1c6981410ap+51
+0x1.ae8a756051b72p+51
+0x1.f8531cb52de8cp+50
+0x1.b983c7ab47ad4p+50
+0x1.f04cebab78efp+48
+0x1.fc824977fd7a2p+51
+0x1.59669e4e17006p+51
+0x1.49879d5a499f4p+50
+0x1.350feb5f98e4p+51
+0x1.7ecf69092a92p+51
+0x1.41570f35d475p+51
+0x1.d2af2893a37p+51
+0x1.09302218244fap+51
+0x1.b16ef06e2c7ap+48
+0x1.76c3a77ad6b8p+45
+0x1.c2fa5fe4dbe56p+51
+0x1.35f1cfd28fbe6p+51
+0x1.ab6fda87a8c9p+50
+0x1.a3f8054eababcp+50
+0x1.2bf135b32b2ap+47
+0x1.736bc9187efc6p+51
+0x1.9e5874e22658p+47
+0x1.f760bf9ede498p+50
+0x1.84171c1122e04p+51
+0x1.a726b935490cp+47
+0x1.455684047a1p+44
+0x1.420a24b9b5d7cp+50
+0x1.1beb6b1e65e88p+51
+0x1.aa6761588a232p+51
+0x1.7a1cb3e2c306p+51
+0x1.cc6ed69a3d388p+49
+0x1.08293b2834e82p+51
+0x1.980f9f88a0a36p+51
+0x1.490aa5d1ab75p+49
+0x1.2c0df8fe02ebp+50
+0x1.95b6064f01abp+49
+0x1.197a769c9c436p+51
+0x1.4402e6c2fb5a8p+49
+0x1.11f2eaead3ap+44
+0x1.e2f2bbcc5e8ap+50
+0x1.8a4e79451074p+46
+0x1.c8af712b25334p+51
+0x1.633d933b06cfp+51
+0x1.c582a78fb552p+50
+0x1.7840fbf81fdc8p+51
+0x1.2790c77d9a51p+50
+0x1.384d29aac3788p+49
+0x1.7914916a0a95ap+51
+0x1.209ed1675b8a2p+51
+0x1.14a8af1c836dp+49
+0x1.920c7f1bb11ap+49
+0x1.303c3b1ad990ep+51
+0x1.3a1412d93210cp+51
+0x1.d48e4e991d8bp+50
+0x1.cd733aee21b1p+49
+0x1.79a500f4a2aap+51
+0x1.577fcde2ddc14p+51
+0x1.c9663e671011ap+51
+0x1.8310b1b012c28p+50
+0x1.f2c248b7c44ap+50
+0x1.d4c3ccb7eb6cep+51
+0x1.5bbcffdfaed88p+50
+0x1.172ae62902cbcp+50
+0x1.e1de008e90bfep+51
+0x1.e485e85c8858cp+50
+0x1.971a9f76b75p+49
+0x1.12aecce4134fcp+51
+0x1.a3d5ba67e995p+49
+0x1.8b8b87e673b68p+49
+0x1.5db98b0625e98p+50
+0x1.e42ebfc8470cp+46
+0x1.62979ff609fcp+49
+0x1.edb3a2ebcc9c8p+49
+0x1.a45f65a9738aep+51
+0x1.3c5d3ef3cb87ap+51
+0x1.e9d40d4847bf8p+50
+0x1.afdd5a9bcf0ep+50
+0x1.989a28a974bep+49
+0x1.9bc7315999d4cp+51
+0x1.b206e24119af8p+49
+0x1.2fe3271c916ep+51
+0x1.d456fb297b18p+45
+0x1.dac0e60b9e01cp+51
+0x1.6fb392247d85cp+50
+0x1.e5146b545452ap+51
+0x1.0163dbc0a40cp+51
+0x1.f2c6fec3a98a4p+50
+0x1.680213b4cb62ap+51
+0x1.b7616dbfb6f96p+51
+0x1.dce6dfcc5dea8p+50
+0x1.cab7d5035063p+48
+0x1.039f05d49cd3ap+51
+0x1.b06985dbc404ep+51
+0x1.8b858aa020e36p+51
+0x1.5e4516bc163cp+48
+0x1.f2daaa2994988p+50
+0x1.db88461d449a2p+51
+0x1.0aa6443b083c4p+50
+0x1.9ce984b55aef8p+49
+0x1.6ab1264078ab2p+51
+0x1.a9c0c9f18efcp+51
+0x1.ba2764ef7747p+50
+0x1.34ae3d444ea6p+47
+0x1.34cd0bff5965cp+51
+0x1.d06848c7d42c4p+50
+0x1.a7713fe2c1692p+51
+0x1.31a6d41b3c08p+49
+0x1.1a817679eb732p+51
+0x1.83b0f30fa229p+50
+0x1.1ecee9e980c4ep+51
+0x1.ae8354bdf9cbp+49
+0x1.4aa7aba9c7cecp+50
+0x1.e4f3dfbb69e2p+47
+0x1.b8b8aa4e6c1e8p+51
+0x1.3cc70a3b71e68p+51
+0x1.98dd69c02c704p+51
+0x1.304a7901ae798p+51
+0x1.706027b637c8p+46
+0x1.2f66e2a208426p+51
+0x1.f336bfb530228p+51
+0x1.4ef7a67485dcp+49
+0x1.2ed7cc05536cp+50
+0x1.e9d00b60a35d6p+51
+0x1.d2f0d9814c698p+50
+0x1.4aa638d1c1666p+51
+0x1.e9a3d88c2fb5cp+51
+0x1.c28d99db206d2p+51
+0x1.8f7554cee4f54p+51
+0x1.4e5fecf297f92p+51
+0x1.e8182fa88854ap+51
+0x1.653725c05e6c8p+49
+0x1.175e10a424ad2p+51
+0x1.f7baa1158adfp+51
+0x1.0ede40edfa5aep+51
+0x1.b6799ea19554p+50
+0x1.ba0e16bf057fap+51
+0x1.91eb7a586d356p+51
+0x1.bdecce8eb303p+51
+0x1.457b0ceeea15ep+51
+0x1.712b186271f96p+51
+0x1.d42241e89bcp+51
+0x1.664179b23c38p+47
+0x1.35e73ddcbaebap+51
+0x1.a8e60e2938508p+49
+0x1.311e00793ba4cp+51
+0x1.ea8d9900e47dep+51
+0x1.e31b6af67c708p+50
+0x1.20be5ada9211ap+51
+0x1.696563102445cp+51
+0x1.3eb534c21dc96p+51
+0x1.518b5377e92fp+48
+0x1.0169fb5b4fdcp+51
+0x1.3c1d6b047c85p+48
+0x1.b914de57fe012p+51
+0x1.f03e47c8d53fcp+50
+0x1.d44300ac1f4a2p+51
+0x1.546d39cf7e9ap+51
+0x1.bac302da8b67p+48
+0x1.7dcc8dec6616p+50
+0x1.77d2f58966b7p+50
+0x1.66ea3a5650368p+50
+0x1.23928d1829382p+51
+0x1.80cb4f9cfd528p+50
+0x1.6c1b30e51169p+50
+0x1.f1b9cd225dc1p+50
+0x1.4f679168db464p+50
+0x1.54899d3d074c2p+51
+0x1.5e0c3e4214ca4p+50
+0x1.1a96702e71a8cp+51
+0x1.d137671b448f8p+49
+0x1.f412fdcca2118p+51
+0x1.a830eb0611f64p+51
+0x1.8e2044581f46cp+51
+0x1.32bb253511c9ap+51
+0x1.1a7b8d6293758p+50
+0x1.016a64518d336p+51
+0x1.d24b4d2baca28p+50
+0x1.a524ac0c50cd8p+51
+0x1.c37ed81fb6648p+49
+0x1.4e66064011c74p+51
+0x1.471aefcca333cp+51
+0x1.6ebe8bbdf7f7cp+50
+0x1.8b6810d668dc8p+50
+0x1.92b3d907f3e5p+51
+0x1.0fd488d42e8dcp+50
+0x1.113f1a763fa66p+51
+0x1.f49f558dbe908p+50
+0x1.702e4175c52fp+49
+0x1.86f58f635feaep+51
+0x1.3b5f932029762p+51
+0x1.a91cab8ce869cp+51
+0x1.2768cfb9855c6p+51
+0x1.75fc92c97f0bap+51
+0x1.0f793a2d1e26ap+51
+0x1.8b252cf7adea4p+50
+0x1.97c7d271ed28p+45
+0x1.40842779a12p+50
+0x1.0e34374d3df4p+48
+0x1.02be41c1345c4p+50
+0x1.8ddc9cb963488p+50
+0x1.a98d3364fc45cp+50
+0x1.3055a58aa99aap+51
+0x1.cbcc86406abp+49
+0x1.8b4378c3e1d0cp+50
+0x1.af398a0ffaeb2p+51
+0x1.cc67a44f7bd5p+49
+0x1.51fbe1ba067fp+51
+0x1.5f02d865556a4p+51
+0x1.de5a7c5313f48p+49
+0x1.b9a46ee72aaap+47
+0x1.ec5aabf766da8p+49
+0x1.3bf0cedfd20a8p+49
+0x1.1e10674b5aceap+51
+0x1.4b0bfbc989cfp+50
+0x1.1ceeef0621488p+49
+0x1.f0d74b089e04ep+51
+0x1.5df02db1d669p+51
+0x1.d2b7ef38edd8p+47
+0x1.c6f336372ef5p+48
+0x1.0e0246cff372p+48
+0x1.ab0746ca8f46p+48
+0x1.5d414e9b91bb8p+49
+0x1.48380e3f6a87p+49
+0x1.4103abf4de99p+48
+0x1.c278b0d8ded2cp+50
+0x1.34205399bb08p+48
+0x1.4bdcca3155f3cp+50
+0x1.a73ba482c0c24p+50
+0x1.865c60b5f573ap+51
+0x1.c8bba8c77b6d8p+50
+0x1.ef75e17c7d806p+51
+0x1.158faee95c3f8p+49
+0x1.c8625db1d1508p+51
+0x1.0399a24c83b3ap+51
+0x1.9e07633cf9ccp+51
+0x1.9a4c5e845902p+47
+0x1.81b3e502b517p+48
+0x1.56f5f0d4a02b6p+51
+0x1.35e9937a9a86ap+51
+0x1.be01fc5c8b39ap+51
+0x1.1e1e9a9fe9aep+48
+0x1.6955e9486dd4p+51
+0x1.a99f63d8028cp+51
+0x1.149943df6a448p+51
+0x1.e5eeaa24552bcp+50
+0x1.cb77f4a065a58p+49
+0x1.82f9be704d804p+50
+0x1.fe3d7fdbf729p+51
+0x1.727f779787d18p+49
+0x1.e6832183d003cp+50
+0x1.4ae20e3cdbc5cp+50
+0x1.589444491166cp+51
+0x1.e1e6285e9f13p+50
+0x1.3310faf0da28cp+51
+0x1.d8ad3bb29cc3p+50
+0x1.a5644ebf6998p+49
+0x1.1771368782592p+51
+0x1.afb87c7b1011cp+50
+0x1.85ae985aaa578p+50
+0x1.881a43feb22f8p+51
+0x1.aa3bcdd548a44p+50
+0x1.a969acbebdbb6p+51
+0x1.a09037a9f9514p+51
+0x1.262a28d43db8p+51
+0x1.a9034d42c5c74p+50
+0x1.cbde9f61691a6p+51
+0x1.6fda08de3f0fp+50
+0x1.9e89badb07396p+51
+0x1.9063bf994b97p+49
+0x1.6c556c535d53p+48
+0x1.a5402233fe24p+50
+0x1.dc919a2494748p+50
+0x1.1c7c4587512b8p+50
+0x1.88ffc6c1b8f94p+51
+0x1.f4bc4d8de150ep+51
+0x1.6f6767dad4b2ep+51
+0x1.48e22e2abc288p+50
+0x1.d28657ee6c8d2p+51
+0x1.d98a6e048b39p+49
+0x1.634484296039p+48
+0x1.59b8c5319e868p+49
+0x1.5504e5c46ac5cp+51
+0x1.50c935c76d15cp+51
+0x1.2aa12c820474cp+51
+0x1.7ddd183f11aa8p+51
+0x1.dda2e6f1b2fbcp+50
+0x1.2182e2f0e27fp+49
+0x1.32f1ed4068f8p+50
+0x1.b421cd37959d2p+51
+0x1.fafadcc7a1cbep+51
+0x1.6737c4d90b0cap+51
+0x1.ef7eb8eedd62p+48
+0x1.ebfa9bbcc9c58p+51
+0x1.cb7d73da2901ep+51
+0x1.51890e9faa63p+50
+0x1.94704459b4388p+50
+0x1.89690f184b72p+51
+0x1.2d8debabdbc9cp+50
+0x1.6d41fc507ce5ep+51
+0x1.f40c70774cbd6p+51
+0x1.12f34fa728p+45
+0x1.1db5d07214752p+51
+0x1.29ee6758b8a72p+51
+0x1.59224b26b3c6p+48
+0x1.b2613999cbc66p+51
+0x1.489fadba1b1d8p+49
+0x1.d402fd365c21p+48
+0x1.a1a6086ec86a4p+51
+0x1.be5dd8a6e8dp+50
+0x1.05ce0d96b0214p+50
+0x1.0d6b7d36da4ecp+50
+0x1.0d354636e7fcp+49
+0x1.258bbde5dc192p+51
+0x1.908c8c2faacap+48
+0x1.8774df3a46974p+50
+0x1.4699083ed86b6p+51
+0x1.f3aa95825a748p+51
+0x1.09b06bf5f4f52p+51
+0x1.8d0af726b56ep+47
+0x1.5659f7d6be16p+49
+0x1.68e7872303aap+49
+0x1.f6ed92fb533b6p+51
+0x1.b31a60293edb4p+50
+0x1.e3d2e572b3p+46
+0x1.2a86047d49ccp+49
+0x1.0fdfc848445dp+49
+0x1.e543d041f385ap+51
+0x1.44d987fefd93ep+51
+0x1.e719229487bbp+49
+0x1.bac452377ee34p+50
+0x1.ea745fa6402ep+50
+0x1.485ed12ed4ec2p+51
+0x1.9b8a84031477p+51
+0x1.f091362f1ff54p+50
+0x1.ffe9ca2c50d1ap+51
+0x1.cd1dbb955501p+51
+0x1.1d7cb39a9524cp+51
+0x1.bfdeb0f3051d6p+51
+0x1.a1736e124f60cp+51
+0x1.e5b4c628f0c9p+49
+0x1.fc424765b7592p+51
+0x1.4d3455a5b5d7p+51
+0x1.9834e537f6eecp+51
+0x1.e1a7f40de3198p+51
+0x1.00521e9a6aaap+47
+0x1.3ac716decc398p+49
+0x1.a75450c6be99p+51
+0x1.1f0795ec9d8p+49
+0x1.a6a5a18eccfdcp+50
+0x1.db6e03979b606p+51
+0x1.9c080226c3b48p+49
+0x1.d3747cff6b198p+50
+0x1.71ad8a4c7a3a4p+51
+0x1.9166304646f1p+48
+0x1.51b5711e01fcep+51
+0x1.a7c25bc2d19ap+50
+0x1.16c56cb86438cp+51
+0x1.20e4b5310a16cp+51
+0x1.9fb27b1a20e8p+51
+0x1.015470e671d1p+51
+0x1.2b1cd1d70072p+49
+0x1.44a42ce1bb852p+51
+0x1.044591a20b04cp+51
+0x1.8c31bae3515e8p+50
+0x1.bfdfe80b740f8p+51
+0x1.15bc01479cfb4p+51
+0x1.8cd19ffbb707p+49
+0x1.c70d55cf60eb8p+50
+0x1.1fec284d704f2p+51
+0x1.50922001e1fa8p+49
+0x1.385ebedcd54e8p+50
+0x1.7276ffe035a34p+51
+0x1.a5162c2669p+45
+0x1.37e1d8de9cbacp+51
+0x1.0657c85d5b342p+51
+0x1.3df079e6319ccp+50
+0x1.5eadd2d2e4f58p+50
+0x1.70bbd797ceed8p+51
+0x1.12ffbade79f3ep+51
+0x1.aac391c5bb584p+51
+0x1.07de37a54f12ep+51
+0x1.6a8d65ce32442p+51
+0x1.bc9b96e3823p+48
+0x1.d8585ed4a0f0ep+51
+0x1.71a2c20ff369ep+51
+0x1.3b898815d8b8p+51
+0x1.dba1948a5b51p+48
+0x1.7d5d05bc37f92p+51
+0x1.515d60bfb60cp+46
+0x1.50670f22de868p+51
+0x1.dd528ccb2e418p+50
+0x1.1224a5c61f0aap+51
+0x1.06dabe54763a6p+51
+0x1.c56ffd1fa074cp+51
+0x1.9f8928d5847b2p+51
+0x1.2ba8c18313954p+51
+0x1.b57317d80af6p+48
+0x1.81e772e53888ep+51
+0x1.8d69a23ee983cp+50
+0x1.4477b9a273d98p+49
+0x1.f82167f2e40cp+49
+0x1.aa8b21783a732p+51
+0x1.801f3fd66fe08p+50
+0x1.2e09bcada47b4p+50
+0x1.5727731195064p+50
+0x1.054a640d9068p+47
+0x1.1222bf10999c4p+50
+0x1.55c0040fa8726p+51
+0x1.055534caf8b18p+49
+0x1.bdb4953e815e8p+49
+0x1.9235c7e67fe1cp+51
+0x1.1bf2a9c15087p+48
+0x1.9617f7a169708p+50
+0x1.351886602664p+50
+0x1.fa86eb65e3876p+51
+0x1.3ea5b75d29f0ep+51
+0x1.7b99f3f315b7p+51
+0x1.e03d1e4eb898cp+51
+0x1.1f67d8b0ae8e6p+51
+0x1.1173374f7e1dcp+50
+0x1.3749b29a4236p+47
+0x1.7c2d0fb943ea2p+51
+0x1.2ccf3e84b5ed6p+51
+0x1.60338aba3c14p+51
+0x1.e8331bd6ebe98p+49
+0x1.207191287ed08p+51
+0x1.ff496109a1e04p+50
+0x1.e6771ed334ab4p+50
+0x1.840cb8bf1d24cp+51
+0x1.e8679da8539a8p+50
+0x1.058deba60af54p+50
+0x1.55fb538573d4p+46
+0x1.9c66a947307b8p+49
+0x1.d07f68d0906b4p+50
+0x1.350c8369b21p+50
+0x1.8eb3b092d356p+49
+0x1.e75e06c9f991ep+51
+0x1.6e6153f2ad98p+51
+0x1.83794040f257p+48
+0x1.0c264c120f628p+50
+0x1.0556a97323e68p+50
+0x1.a82d233e26c3p+49
+0x1.38d5b8230f8a4p+50
+0x1.ec11beffb1028p+51
+0x1.7e2ba50f2098cp+51
+0x1.6595780ce548p+49
+0x1.866535d42273cp+50
+0x1.5f936e84caebp+48
+0x1.fd859e26cbb0cp+50
+0x1.a10e1d72a135cp+50
+0x1.4b7d56100b9fap+51
+0x1.7c24b1c1f74ccp+50
+0x1.bf9bf3e1bbab8p+50
+0x1.42e4e676ec49cp+51
+0x1.366a0893d6d04p+50
+0x1.463ca64aeecp+46
+0x1.07ba1310a8d4p+47
+0x1.f50220632a54p+50
+0x1.9549b0c010f8cp+50
+0x1.872047095e1fap+51
+0x1.f112d2df50b1ap+51
+0x1.92d2ebf651cfcp+50
+0x1.173f124691e1ap+51
+0x1.c37fb4514a3cep+51
+0x1.d90a10f3960bcp+50
+0x1.23df317a08c3p+50
+0x1.0b4ed8bdff086p+51
+0x1.b8bbcc2866f42p+51
+0x1.7429b0da953e8p+50
+0x1.068db8894c918p+51
+0x1.ac01116f2ed9ep+51
+0x1.8bcb446b4812ap+51
+0x1.0e0a9dfd4615p+50
+0x1.9d6f4db748656p+51
+0x1.160fc9d189c4ap+51
+0x1.f280793b82ap+50
+0x1.df5d9826e3e82p+51
+0x1.ea530e556a9bep+51
+0x1.6f63d23e216ap+49
+0x1.de21b12f40aap+51
+0x1.1bbecb2490f62p+51
+0x1.6c548336c16f6p+51
+0x1.59915369bbc18p+51
+0x1.0fe15ffc7775p+49
+0x1.aa155dd20546p+49
+0x1.80e7b32a8c044p+51
+0x1.dcec85661701p+50
+0x1.183323caf05ap+49
+0x1.7c37194ccc7b2p+51
+0x1.bde92bc371cfp+50
+0x1.f2ac1fe3c331cp+50
+0x1.ab36d0c1ba21ep+51
+0x1.141a478f82448p+50
+0x1.20c3e28c5c74ap+51
+0x1.3a7a1b376b4p+51
+0x1.0af2d673cc1cp+48
+0x1.2976ab9b89cc4p+50
+0x1.06fe4545ce7b4p+51
+0x1.3d59803022bep+49
+0x1.5615a6fcaf994p+51
+0x1.069ccdc3bfeaep+51
+0x1.74aa0a6b5d3dap+51
+0x1.93b60431074bcp+50
+0x1.3778da758a97ap+51
+0x1.966355c09dcd2p+51
+0x1.3390574a3e3f2p+51
+0x1.0e75fff5adc2p+50
+0x1.92af8f4cd42ap+48
+0x1.77892677d19dap+51
+0x1.89243dc8a3118p+49
+0x1.f519caea1817p+48
+0x1.6d064c0009ep+48
+0x1.faeadbd140a44p+50
+0x1.e2bcc05f271d2p+51
+0x1.0850ef78469cp+47
+0x1.7656885d436ccp+50
+0x1.3a90388fe44bp+49
+0x1.8a204afee2b8p+46
+0x1.7da2aa4517c78p+50
+0x1.2c8aa85b50338p+49
+0x1.2b07bd56e9d2ap+51
+0x1.64375e8316532p+51
+0x1.2aeac7d6b7d4ep+51
+0x1.a22225ad5d2fp+51
+0x1.4e20be294d664p+51
+0x1.ffd5b2f15967p+48
+0x1.5a245e7551506p+51
+0x1.6e801b1c82a98p+50
+0x1.ee6c0b640bb8cp+50
+0x1.38fdfe1c49154p+51
+0x1.35cdc5384f37p+49
+0x1.dcc47aeafdb8p+47
+0x1.5924104244678p+49
+0x1.2737de1379bc2p+51
+0x1.b3a984913c4cp+51
+0x1.f5ad8d112bb98p+51
+0x1.dfde407d6da2p+47
+0x1.ccc462666beep+47
+0x1.6b41442d72cacp+51
+0x1.d8075072a90dp+51
+0x1.532ac94828eb8p+51
+0x1.85b114b99506ep+51
+0x1.b4c449db9bb6p+48
+0x1.24d7dea6fef12p+51
+0x1.43c417f3fdb6p+51
+0x1.c33a35db4e662p+51
+0x1.1bd0247a780c4p+51
+0x1.ea678207d78bep+51
+0x1.9c0f38feb868cp+50
+0x1.00c1c5ae43f3ep+51
+0x1.af2f0a380362p+49
+0x1.b56c0c70279p+47
+0x1.2f82065daa08cp+50
+0x1.0ca1dd2023b08p+51
+0x1.4db0345c144fcp+51
+0x1.71d7f9e536084p+51
+0x1.5a65db8de6cc4p+51
+0x1.7c992021dc3c2p+51
+0x1.7331c160aceep+51
+0x1.f52bf8c92494cp+51
+0x1.0be4d25c3bd36p+51
+0x1.4a9569c5328a2p+51
+0x1.6f0c9da1d81c2p+51
+0x1.ade4350c3d536p+51
+0x1.bce74372f55p+47
+0x1.f3bc095fcb6d4p+50
+0x1.b7d03ef1188p+48
+0x1.7a82de7b5ef84p+50
+0x1.08645eaf4c2e2p+51
+0x1.6a6729c4a447ep+51
+0x1.53fb3f57456cp+50
+0x1.90a696d1bff38p+49
+0x1.4e7866001ab68p+51
+0x1.04553b359dp+49
+0x1.21f0c61adfdaep+51
+0x1.dbb8f09b82dc8p+51
+0x1.7effafdde9646p+51
+0x1.dce536143a25p+48
+0x1.802474e0d9608p+50
+0x1.1fcee2b2cf75ep+51
+0x1.eec8b9994d35p+48
+0x1.22876914a3ef8p+51
+0x1.034967ea9e558p+50
+0x1.d210677ac0af8p+51
+0x1.789716de4e2ecp+50
+0x1.fa1902358518p+51
+0x1.6e635962f3a7p+48
+0x1.fc696932e03bap+51
+0x1.bcdaa175e7fcp+51
+0x1.be7585bebbec8p+49
+0x1.2aab78b96e0eep+51
+0x1.53f6f99f2482ep+51
+0x1.0e19b4ca21278p+50
+0x1.70e274065db84p+50
+0x1.ed3ea3106cebcp+51
+0x1.96add6a58bccp+49
+0x1.59176bd7181p+49
+0x1.60d75c083bd4p+50
+0x1.2e5542529b49p+51
+0x1.3ecdfbb89b13cp+51
+0x1.93b7d3111758cp+50
+0x1.db43453f03656p+51
+0x1.46e294b2863ccp+50
+0x1.71b4af997c638p+50
+0x1.57e67fece56p+48
+0x1.a8cff81c07224p+51
+0x1.3172e05a3c28ep+51
+0x1.415b0151ab02p+51
+0x1.e6d859cc2b924p+51
+0x1.85b6c6c9d72bp+48
+0x1.7b2fb330c8038p+51
+0x1.2f9e194588a6p+50
+0x1.20248a33fe592p+51
+0x1.a6b56375fc9ccp+50
+0x1.317c416aad298p+50
+0x1.bc3eb9a99d4c8p+51
+0x1.e379d6ee03da8p+49
+0x1.25801c34043c8p+49
+0x1.dc2b7b444ed7p+51
+0x1.daa1f16713ap+50
+0x1.c675d3c8178dep+51
+0x1.64120f9a2935cp+50
+0x1.43c9b7fbc1c14p+50
+0x1.993e17b21f408p+50
+0x1.ac65d2cb0339p+48
+0x1.bee47dcb2eefp+50
+0x1.0bcd9dbeffbep+51
+0x1.083b5b0bf29ep+49
+0x1.9a3d21361e16p+49
+0x1.cf0179721afcp+46
+0x1.2b25013981012p+51
+0x1.23886c9f86416p+51
+0x1.d0202fe6c470cp+51
+0x1.3a544f691cd3cp+51
+0x1.d6241b9d262fp+51
+0x1.d261e991815d8p+50
+0x1.fc478cd1b513p+51
+0x1.863a7f94a30ccp+50
+0x1.95025651d285ap+51
+0x1.d889060a87ba8p+50
+0x1.36c6d56b7d628p+51
+0x1.bb1aaf137456p+50
+0x1.171085166de18p+51
+0x1.c7c6b76f4452ap+51
+0x1.e8ee5db839992p+51
+0x1.dfb38987987bp+50
+0x1.91c646f4d545p+48
+0x1.6accab01d6458p+50
+0x1.71c54837119a8p+50
+0x1.d999b85d5f544p+51
+0x1.05a1ba8af857cp+51
+0x1.9ff5db7f27e7cp+50
+0x1.87a3cf2037e5p+48
+0x1.fd9420cc24784p+51
+0x1.ec2f1bbe01aap+48
+0x1.b958e885febccp+51
+0x1.aeebc8e5c69e6p+51
+0x1.5c300038d1ap+48
+0x1.0b7d81f551904p+50
+0x1.b938043d1bee4p+51
+0x1.a899ca23881p+45
+0x1.c0d23a796d5f8p+49
+0x1.ce8485105d4dcp+50
+0x1.a6a9dd38c72bep+51
+0x1.b4e6499e62c4ap+51
+0x1.a7150006b851p+50
+0x1.4539f0eea589ap+51
+0x1.083db083e395cp+50
+0x1.8d540a35a235cp+51
+0x1.ab9faf6e70baep+51
+0x1.53070aa4a6b0cp+51
+0x1.31aee4491fc8p+47
+0x1.a2f40aec8dcf2p+51
+0x1.d038c2b61ceacp+50
+0x1.27baab948432p+51
+0x1.119604ccc0cd2p+51
+0x1.7ffaeffff3d1cp+50
+0x1.7860f8e9835a8p+51
+0x1.17a86a4a9934p+48
+0x1.e951eb26deedp+48
+0x1.b943ce66e3a3p+51
+0x1.5f7c967eb506p+51
+0x1.8be94d1cf8c5p+51
+0x1.540ea826997b8p+49
+0x1.f3cccf741e1b4p+51
+0x1.209bae76abc5p+49
+0x1.718477d0fd306p+51
+0x1.07ed9d6cf852p+49
+0x1.730c7fddd53a2p+51
+0x1.b2a8ff15f34c2p+51
+0x1.6d4d5fe4d11d4p+50
+0x1.3048dcc1c4324p+50
+0x1.9b11ca69283e8p+51
+0x1.f63c1bcfc3e14p+50
+0x1.44afcd58f83ccp+50
+0x1.d3da4d2909ad4p+51
+0x1.53e1f88365d18p+49
+0x1.0269674a1fb8p+48
+0x1.d0fa18e34808p+45
+0x1.56a0a096d244ep+51
+0x1.b7679d8217db8p+49
+0x1.343e289696b3ap+51
+0x1.56cd57d8e1424p+51
+0x1.c3b8b1bad649p+48
+0x1.a8db6e1e3fccp+50
+0x1.ce2e8bc044b6p+49
+0x1.bae54e473547ep+51
+0x1.a895ad752555p+51
+0x1.e7565e702d214p+51
+0x1.1250c8d1e865p+50
+0x1.2e6256b5d761p+49
+0x1.bd9a93d07116p+51
+0x1.4a20dac15fc3p+51
+0x1.6b8dd6027a8cp+51
+0x1.c5d891f309cp+43
+0x1.a21fd2e32ccfap+51
+0x1.ead98c8b52f6ap+51
+0x1.d186448193b98p+50
+0x1.02dadc425bf2ap+51
+0x1.80902032390d4p+51
+0x1.91a4d46197384p+50
+0x1.9d4462be53916p+51
+0x1.3b2e58aa29e9cp+51
+0x1.25996a2083c02p+51
+0x1.3c7b056866fcp+48
+0x1.1c1c9b2bf0d7cp+50
+0x1.1c0cbf7191cbp+51
+0x1.d3f66ed5f33p+46
+0x1.939ec8eedac5p+50
+0x1.657bdc1784f26p+51
+0x1.d5097c9d6d54ep+51
+0x1.83d5752a8c3e8p+50
+0x1.d7099a644c08cp+51
+0x1.a547d2afd4568p+51
+0x1.93fd260b4628p+45
+0x1.685b42ac677f4p+51
+0x1.4fb4e0abc2ae4p+50
+0x1.067d715c0bd2p+48
+0x1.d9721221362e8p+51
+0x1.cb4ce7772c3a8p+50
+0x1.c3fd6a5d57408p+49
+0x1.6239aa2cc103cp+50
+0x1.7351c9c50953p+50
+0x1.86d6ab20cdb6cp+50
+0x1.24daa3d97bb4p+51
+0x1.9e6e052ae8864p+50
+0x1.aa67d8c8d2fcap+51
+0x1.88859595404eap+51
+0x1.9adb2e126398ap+51
+0x1.6602916737878p+50
+0x1.6a62d69ac4f7p+49
+0x1.076e442a6343p+48
+0x1.0e85946e5b65cp+51
+0x1.d2054990edap+44
+0x1.2fb941c35f04p+48
+0x1.3610cf1ed7154p+51
+0x1.6fac88e03392p+48
+0x1.533468fadcbp+48
+0x1.3d744a6bf872p+47
+0x1.6c40a88919e0cp+50
+0x1.c5e956c345e2p+51
+0x1.4d86d5fac89bep+51
+0x1.83360d51e7b2p+48
+0x1.530a91e223754p+50
+0x1.522b12f7b71f8p+49
+0x1.56ee9a7294c68p+51
+0x1.4c96c7abbaefp+50
+0x1.7ae40724e5a2p+50
+0x1.b73158dc60198p+50
+0x1.d59e94b60869p+50
+0x1.d24da56d8b1f2p+51
+0x1.a77ec447d345ap+51
+0x1.2e595abfca112p+51
+0x1.a82d51ac28c88p+49
+0x1.47fa01a069f3p+50
+0x1.805913ea9bb58p+51
+0x1.ef306f663c75p+49
+0x1.c49998601c332p+51
+0x1.002aff3b1679cp+50
+0x1.b249951a503ccp+50
+0x1.1dff084da09acp+50
+0x1.8282a3fa0a8a4p+51
+0x1.ff35a9212a51p+51
+0x1.c0d2d572cd6bp+50
+0x1.e52d7a3ebd38p+48
+0x1.ffd49312e0d7p+51
+0x1.f0f4ba5db0ab2p+51
+0x1.275501888895ap+51
+0x1.5de02e0045p+40
+0x1.fcac857ce79bep+51
+0x1.1ffb2fdb8f49cp+51
+0x1.5eb07545e29bep+51
+0x1.331799a4e865p+49
+0x1.c96cdb680b8dp+49
+0x1.8bd26a1da9ec6p+51
+0x1.a5c79ae9ad3fp+50
+0x1.730754e6fe06cp+51
+0x1.c55f3e39277p+45
+0x1.027b52126cb06p+51
+0x1.08c1af8c8beb6p+51
+0x1.bb44db1a72b08p+50
+0x1.11a493f552508p+51
+0x1.0c3110458b168p+51
+0x1.9be9f49a2b5p+49
+0x1.e5182737a9f54p+51
+0x1.53205c31d6658p+51
+0x1.b45bb0efdd688p+51
+0x1.123627c096becp+51
+0x1.f579cd75797c8p+50
+0x1.dcbfc666ff27p+49
+0x1.d953517afcbbcp+51
+0x1.c2a5046e3b458p+50
+0x1.303aefdc8935p+49
+0x1.8d9924a700e5cp+50
+0x1.b555cccd0b7fep+51
+0x1.44f7b05b66528p+51
+0x1.b7a0cbbd5f836p+51
+0x1.42a023749ed38p+49
+0x1.cdfc44f06e5p+44
+0x1.44c27da056d6cp+50
+0x1.4b6dc0578e4p+42
+0x1.9e4de78d3f20ep+51
+0x1.1f2b0e48699dep+51
+0x1.21f9c66ca637ep+51
+0x1.7a63bef01ccep+50
+0x1.0bf1beba4f9eap+51
+0x1.29617266aa48cp+51
+0x1.7c11fd308effap+51
+0x1.842bb5f7f74eep+51
+0x1.8613d8407ca2p+51
+0x1.5d838675bd10cp+51
+0x1.d8adc4899244cp+50
+0x1.e5e471ac7fb52p+51
+0x1.9a19f2108d5acp+50
+0x1.e7038632db12cp+50
+0x1.08b98a5bfbb5cp+50
+0x1.650c6990d3694p+50
+0x1.188f556892e26p+51
+0x1.4be7a9788f33cp+50
+0x1.97f4001959196p+51
+0x1.335ce02d36a5ap+51
+0x1.dc17a86fb8952p+51
+0x1.5037308c4f7a4p+50
+0x1.256e6f49ef3a8p+50
+0x1.6e79a839e81p+45
+0x1.ee9fe07ba074cp+50
+0x1.d7e04e2f8af08p+51
+0x1.6b2327d1cac3cp+51
+0x1.fd37a13856f14p+51
+0x1.0d1695aa19818p+51
+0x1.4242c10f4b528p+49
+0x1.4d587f0dfc68ep+51
+0x1.5b5e23d953edap+51
+0x1.839bea5a51fap+51
+0x1.0f3447da0c8d8p+51
+0x1.c2707abcd1a48p+51
+0x1.8d91150298268p+51
+0x1.d0d9823350208p+49
+0x1.c2da5cafff6ep+51
+0x1.5c4af48f154fep+51
+0x1.90a114c8b51ap+50
+0x1.6cf8db95dfed4p+51
+0x1.38f03e985cf4cp+50
+0x1.55953dd3737c2p+51
+0x1.b4d609ae98828p+50
+0x1.d89831b6dfc68p+50
+0x1.98375c851a788p+51
+0x1.42e9e0a2a68b2p+51
+0x1.c4c98dd6d464p+50
+0x1.0bbb8158e7ea8p+50
+0x1.a51a1c09cd7dcp+51
+0x1.ae262ecd12f2p+51
+0x1.6da4239b26d66p+51
+0x1.5323337316aap+48
+0x1.700f30396478p+47
+0x1.3ff2cd4e1f3ecp+50
+0x1.fe7880b484f7cp+50
+0x1.73b6016b82518p+49
+0x1.c6bff697446f8p+49
+0x1.404317f20bc8p+45
+0x1.42cb47fbd7dep+50
+0x1.97cfea135b514p+51
+0x1.9846988953f88p+49
+0x1.fc586837f831p+50
+0x1.d298cd0b72468p+50
+0x1.ae9daaf7424ecp+50
+0x1.688fdfbc042dp+50
+0x1.fe6a5149f122cp+50
+0x1.663fbe54a33f4p+50
+0x1.f3f049ae255acp+51
+0x1.504519af88052p+51
+0x1.5f893e5e4edbep+51
+0x1.07a6d4c527f48p+51
+0x1.0278f195f905ep+51
+0x1.23d341abb0608p+50
+0x1.c93774c5e3448p+51
+0x1.d813beed24ba2p+51
+0x1.1b7889681101cp+50
+0x1.2d46b2ff0a0f6p+51
+0x1.8fdb6ecd526ap+49
+0x1.1544dc1f5475ep+51
+0x1.2a371ca2c752p+50
+0x1.6ebdf3c3c630ap+51
+0x1.8557afa88cdf8p+51
+0x1.318d70b09d5d4p+50
+0x1.a5e260e4976f8p+51
+0x1.d902fd4e32b5p+50
+0x1.653ae66eacf3ap+51
+0x1.e34970dfe9e0cp+51
+0x1.9b375c6646398p+51
+0x1.5b5dcaf63f6acp+50
+0x1.528dbc924dac8p+49
+0x1.c7336be3743a2p+51
+0x1.84becf63408ap+49
+0x1.09f5c296cfa22p+51
+0x1.eaad0154c40bap+51
+0x1.d6bd213db6964p+51
+0x1.8faa9bef7d46p+48
+0x1.e2314d8f31cccp+51
+0x1.c6aff80b9b5dep+51
+0x1.d662244c0f5f8p+49
+0x1.db0e4f81caa5p+50
+0x1.ca240c0d72f2p+50
+0x1.a4ed165376336p+51
+0x1.f16fbf6423a8p+49
+0x1.f4c7aacc01bdp+49
+0x1.e648bae184e3cp+51
+0x1.2c87b302ac3dcp+51
+0x1.6d5760f3c9572p+51
+0x1.cf92427427ac4p+50
diff --git a/benchtests/modff-inputs b/benchtests/modff-inputs
new file mode 100644
index 0000000..355927b
--- /dev/null
+++ b/benchtests/modff-inputs
@@ -0,0 +1,8011 @@
+## args: float:<float *>
+## ret: float
+## includes: math.h
+# Random inputs in the range [0.000000e+00,1.000000e+00]
+## name: workload-0
+-0x1.63cafcp-3
+-0x1.4f0c4cp-1
+0x1.510d26p-1
+0x1.fb6cc4p-2
+0x1.85399ep-1
+0x1.f878aap-2
+0x1.6843f4p-2
+0x1.a1eae6p-1
+-0x1.3c76cp-2
+0x1.bef7e8p-1
+0x1.418d3cp-2
+0x1.627e3ep-1
+0x1.2cc418p-4
+0x1.77a77ep-1
+-0x1.65ab7p-1
+-0x1.c8333cp-1
+-0x1.a3266cp-1
+0x1.8753a2p-1
+-0x1.86ac3cp-5
+0x1.2667e4p-3
+-0x1.402572p-3
+0x1.84b234p-1
+-0x1.9d0edp-5
+0x1.bea7c2p-1
+-0x1.18528ap-1
+-0x1.dbc2e6p-1
+-0x1.a15b5cp-3
+0x1.8aa4acp-2
+0x1.76c466p-2
+-0x1.43dc24p-3
+0x1.ee0e2p-1
+0x1.0ff766p-1
+0x1.9ba76p-1
+-0x1.d6f00ep-1
+-0x1.ab920ep-3
+0x1.9e48c4p-9
+-0x1.ce1b9cp-1
+0x1.fa3022p-1
+-0x1.047fa8p-2
+0x1.e1adb6p-1
+0x1.7b4ddp-2
+-0x1.d31832p-1
+-0x1.0a8ba2p-2
+0x1.4bef2cp-2
+0x1.f3754ap-2
+0x1.75ca46p-1
+0x1.0eed7ep-2
+-0x1.2d7378p-2
+0x1.5602dcp-1
+-0x1.28fb6cp-5
+0x1.81f858p-1
+0x1.ee76c8p-1
+0x1.fe798ep-1
+0x1.6526a6p-2
+0x1.82a8p-1
+-0x1.a00b14p-2
+-0x1.dcb7ap-1
+-0x1.87764p-1
+0x1.34a474p-2
+0x1.d6abd2p-1
+0x1.cbb4acp-2
+-0x1.5cd5a6p-5
+-0x1.6bc2dep-6
+0x1.0f328p-1
+-0x1.69ca42p-2
+0x1.a7b142p-5
+0x1.f3c8bep-2
+-0x1.8a711p-1
+-0x1.477458p-1
+-0x1.0df5fap-1
+-0x1.d2a8acp-7
+0x1.e3ae4ap-1
+-0x1.027ed6p-3
+0x1.79d772p-1
+0x1.18ac1cp-5
+0x1.c7adbp-1
+0x1.2de194p-4
+0x1.11c24ap-2
+-0x1.fb693p-1
+-0x1.b62c34p-1
+0x1.a90ffcp-1
+0x1.80d714p-2
+0x1.7f8a42p-4
+-0x1.fbc6f8p-1
+-0x1.0f312p-1
+-0x1.ac866p-1
+0x1.ca8c14p-1
+0x1.967782p-4
+-0x1.a0ae92p-1
+0x1.1ef54p-4
+-0x1.9b822cp-5
+-0x1.907e6cp-1
+-0x1.95750ap-3
+-0x1.45c184p-1
+0x1.d1098ap-1
+0x1.5e0b56p-2
+0x1.46dc76p-1
+0x1.68c94ap-1
+-0x1.bb3cc8p-1
+0x1.a4242cp-1
+0x1.bf8e7ep-2
+0x1.d24452p-1
+-0x1.6c4c34p-1
+-0x1.018896p-1
+-0x1.19b11cp-1
+0x1.364dacp-3
+-0x1.f876p-2
+-0x1.82c362p-2
+-0x1.06452p-6
+0x1.b56aeep-3
+-0x1.e0cbcp-1
+0x1.cced6ep-3
+0x1.274f5ap-1
+-0x1.3fbc18p-1
+-0x1.291484p-2
+-0x1.a67d06p-5
+-0x1.69d27cp-3
+-0x1.ed496cp-1
+0x1.f7c66ep-3
+-0x1.c01764p-1
+-0x1.3e07acp-1
+0x1.be0784p-1
+-0x1.8009fp-2
+0x1.95e826p-3
+-0x1.67f246p-2
+0x1.6b0338p-3
+-0x1.cced78p-1
+0x1.9e574p-1
+-0x1.6071ap-1
+-0x1.b5e49p-3
+0x1.375796p-3
+0x1.597c24p-1
+0x1.d1f65ep-2
+0x1.a0be6ap-1
+-0x1.b541fep-1
+-0x1.13b6dap-7
+-0x1.83775p-1
+0x1.1b1eaap-2
+-0x1.e14ceap-2
+0x1.0b30ecp-1
+-0x1.e32eecp-6
+0x1.56b1ccp-2
+0x1.a2862cp-1
+-0x1.184b54p-1
+0x1.9c1f2cp-1
+0x1.1cb51p-2
+0x1.c5372ap-2
+0x1.32af02p-1
+0x1.e3dc9p-2
+0x1.94bffp-2
+0x1.d7c52ap-3
+-0x1.710626p-3
+-0x1.cf958ap-1
+0x1.0f16e8p-2
+0x1.50a48ap-1
+0x1.5b8036p-4
+-0x1.d99c76p-1
+0x1.635554p-2
+0x1.f8dfd8p-4
+0x1.d8830ep-1
+0x1.c4653ep-1
+-0x1.eadcbcp-3
+-0x1.d0cce2p-1
+0x1.ba264cp-1
+0x1.6e11bp-2
+-0x1.c7f5a2p-3
+0x1.07ad32p-1
+0x1.eaa652p-1
+0x1.07b4e6p-1
+0x1.dc8d88p-1
+-0x1.bd2a26p-2
+0x1.7b8cf6p-4
+-0x1.3a5ca4p-2
+-0x1.cd0286p-3
+-0x1.5ac314p-1
+0x1.eb3db4p-6
+0x1.815fp-1
+-0x1.9efedcp-1
+0x1.3739eep-2
+-0x1.453d08p-2
+-0x1.1d528cp-2
+0x1.ddc62cp-2
+0x1.cf6f9cp-3
+0x1.08cfcap-5
+0x1.3b87aap-2
+0x1.4524dep-2
+-0x1.75851p-1
+-0x1.d2a12cp-1
+0x1.ce16bcp-1
+-0x1.742372p-3
+0x1.45335ep-1
+-0x1.e6c95ap-2
+-0x1.68b9c8p-1
+0x1.a00ff4p-1
+0x1.c662d4p-5
+0x1.3f6802p-2
+-0x1.69aa64p-2
+-0x1.f1449ep-1
+0x1.6deb82p-1
+-0x1.6e6c22p-2
+-0x1.cc48b8p-1
+-0x1.bda1a4p-1
+-0x1.d66e4ep-1
+-0x1.c6f492p-3
+-0x1.e30852p-2
+0x1.7c154ap-2
+0x1.d8532p-1
+-0x1.c04b2ep-1
+0x1.708fd6p-1
+-0x1.3d3d78p-1
+-0x1.35bea4p-3
+-0x1.f0f8e6p-1
+-0x1.733a2ap-3
+-0x1.a524c8p-2
+-0x1.07a4b4p-3
+-0x1.6363ap-1
+-0x1.7f893p-1
+0x1.3622aep-3
+0x1.a07e28p-2
+-0x1.b04f74p-2
+0x1.d74faep-1
+0x1.492e52p-2
+0x1.e3b93cp-1
+0x1.f5469p-1
+0x1.b29242p-1
+0x1.29cd8p-1
+0x1.18bae4p-2
+0x1.49496ep-1
+-0x1.2b5e2cp-1
+0x1.62096p-1
+0x1.262504p-2
+0x1.175fa6p-2
+-0x1.1b73b6p-1
+0x1.030f92p-5
+0x1.7082aap-1
+-0x1.e123ecp-3
+0x1.90d1ep-1
+0x1.c3b5dep-3
+0x1.7b9df2p-1
+0x1.4bd656p-1
+0x1.4d7388p-1
+0x1.d03b06p-3
+-0x1.886dbcp-3
+0x1.360472p-1
+-0x1.9ef738p-11
+0x1.58927ap-4
+-0x1.cb351p-3
+-0x1.a09228p-1
+-0x1.146edp-4
+0x1.d58c26p-2
+-0x1.334af8p-1
+0x1.1237bp-1
+0x1.bfa20cp-3
+0x1.cd1ebap-3
+-0x1.d6e066p-5
+-0x1.170578p-1
+-0x1.75691p-1
+0x1.9b69fcp-1
+0x1.bb67cap-1
+-0x1.38c5b8p-2
+-0x1.8d3886p-1
+0x1.1e3ac2p-2
+0x1.b639fap-2
+0x1.4686f8p-3
+-0x1.2426dp-1
+-0x1.514f82p-3
+-0x1.1ecbdap-1
+0x1.df9c64p-1
+-0x1.a180ap-1
+-0x1.613ac8p-1
+-0x1.38994p-5
+-0x1.78d984p-1
+-0x1.8e7c6ep-1
+-0x1.337384p-1
+0x1.138dd6p-1
+-0x1.a630ap-1
+0x1.ef1f56p-2
+-0x1.a368e4p-1
+-0x1.7534bcp-3
+0x1.669e6cp-4
+-0x1.9a416p-3
+-0x1.02645cp-1
+-0x1.0a08ep-1
+-0x1.9c93aep-3
+-0x1.b93916p-3
+-0x1.b69dbep-4
+0x1.87456p-4
+-0x1.f0753cp-1
+0x1.d7a19ep-2
+-0x1.413ecp-1
+0x1.177bd2p-1
+0x1.323e7p-1
+0x1.aeafep-1
+0x1.e6befcp-2
+0x1.670a78p-3
+-0x1.8c08eep-2
+-0x1.3b485cp-2
+-0x1.2cfbaap-3
+0x1.b6435ap-2
+-0x1.f0f8f8p-2
+-0x1.b4cbe6p-6
+0x1.8acb6p-2
+-0x1.375eeep-5
+-0x1.c8e38ep-9
+-0x1.5f752ap-2
+0x1.9d54cap-1
+0x1.b932f4p-2
+-0x1.59c2a6p-1
+0x1.4f4bc8p-1
+-0x1.e36e14p-2
+-0x1.94c9eap-1
+0x1.489d52p-1
+-0x1.153b04p-2
+0x1.b5600ep-1
+-0x1.11119ap-1
+0x1.28a47p-1
+-0x1.a613c2p-2
+-0x1.2873fp-1
+-0x1.895dacp-1
+-0x1.93d264p-3
+-0x1.1f99b2p-2
+0x1.c342dcp-1
+0x1.5cb23cp-1
+0x1.ed7774p-1
+-0x1.e7b26p-2
+0x1.eda54ep-2
+-0x1.a036fp-1
+0x1.0aaf3p-1
+0x1.bc3df4p-4
+0x1.069cc4p-6
+0x1.b4c1d2p-1
+-0x1.a7be04p-1
+-0x1.8e45aep-1
+-0x1.2e2bfep-3
+0x1.de932p-2
+-0x1.2dfb9cp-5
+0x1.f6c3d6p-4
+-0x1.1c06e6p-2
+-0x1.c8db72p-1
+0x1.5b7a0cp-1
+-0x1.b4117p-3
+-0x1.8299b6p-1
+0x1.96a872p-1
+-0x1.3df3dp-1
+0x1.3750acp-1
+0x1.9cf40cp-1
+0x1.38b80ep-1
+-0x1.a95c3ep-3
+-0x1.38a0b4p-3
+-0x1.2184dep-1
+0x1.54c7b4p-1
+0x1.a525f4p-2
+0x1.653428p-2
+0x1.2ea704p-3
+-0x1.5a5ac2p-6
+-0x1.85098ep-1
+-0x1.862a52p-2
+-0x1.ed3f8ep-1
+-0x1.5f1f58p-1
+-0x1.3592dap-2
+0x1.eefefap-1
+0x1.39a37p-1
+-0x1.bd2e74p-1
+0x1.4c0f6ep-1
+0x1.c3044p-1
+-0x1.e3a2aap-3
+0x1.6d94e6p-2
+0x1.9c3cf6p-4
+-0x1.fb480ap-1
+0x1.476f9ep-1
+0x1.f1e43p-1
+-0x1.8c8ffp-1
+0x1.7db566p-1
+0x1.066384p-2
+-0x1.301b3p-2
+0x1.61e4c8p-2
+0x1.60d946p-1
+0x1.3052d8p-2
+-0x1.01178ap-4
+0x1.92e9a8p-1
+0x1.59c81ep-1
+-0x1.f79862p-1
+-0x1.a77104p-3
+0x1.8b04cap-1
+0x1.6e8962p-1
+0x1.9c3802p-1
+0x1.48f0d8p-2
+-0x1.a2139ap-1
+0x1.01ccp-1
+0x1.6ef5cap-1
+-0x1.9b4a98p-4
+0x1.d5b988p-4
+-0x1.2457f2p-1
+0x1.3bdfb8p-1
+0x1.014e4ep-1
+0x1.cd60bep-8
+0x1.6c85e6p-1
+0x1.d89266p-1
+-0x1.34534cp-1
+0x1.44eabep-1
+0x1.6e2032p-3
+-0x1.4736d8p-2
+0x1.6c715ap-5
+-0x1.2a665ep-1
+0x1.fdf0bep-1
+-0x1.c5145ap-1
+0x1.de356p-1
+-0x1.a7e81ep-2
+-0x1.5da7f2p-4
+-0x1.fefbd8p-7
+0x1.8e97p-1
+0x1.d85d2p-1
+0x1.ff8354p-2
+0x1.f7170cp-3
+0x1.84eefcp-3
+-0x1.e806aep-1
+0x1.b187p-2
+0x1.959318p-1
+0x1.649564p-1
+0x1.6b12f6p-1
+0x1.db9f92p-1
+0x1.adc5f6p-2
+-0x1.5bc468p-1
+-0x1.43b87cp-5
+-0x1.b15a2ep-1
+-0x1.70ea4cp-1
+-0x1.09fc48p-2
+-0x1.1b1148p-1
+-0x1.998b46p-1
+0x1.f43656p-3
+-0x1.eb5c6p-2
+-0x1.017f38p-2
+0x1.18722cp-1
+-0x1.99cba8p-2
+0x1.0bb198p-3
+-0x1.207dd6p-1
+0x1.281bd8p-4
+-0x1.c4a0d4p-2
+0x1.69135p-5
+0x1.4dc42p-2
+-0x1.66e6dcp-1
+-0x1.518ffap-1
+-0x1.dc1354p-1
+0x1.0b669p-4
+0x1.5d4fecp-2
+-0x1.51de38p-1
+0x1.4003fap-1
+0x1.26a5a2p-1
+-0x1.7126d2p-1
+-0x1.95eed4p-3
+-0x1.1db582p-3
+0x1.a21b24p-4
+-0x1.11b92p-1
+-0x1.e62c7ap-1
+0x1.aff852p-1
+-0x1.11c836p-2
+-0x1.6294dcp-1
+-0x1.ee572cp-3
+0x1.bca65p-1
+0x1.5c1b2ep-1
+-0x1.c39e44p-1
+0x1.23df36p-3
+-0x1.5e58bap-6
+-0x1.286b7ep-2
+0x1.e55424p-1
+-0x1.2e8e4cp-1
+-0x1.d83564p-2
+0x1.e6cb64p-2
+0x1.4d96e6p-1
+0x1.99e5c6p-1
+0x1.78190ap-1
+0x1.799244p-1
+0x1.069c5p-1
+0x1.349264p-3
+0x1.2df32p-3
+-0x1.68a95ep-1
+0x1.58f0f6p-1
+-0x1.b00c84p-1
+-0x1.1d0d68p-3
+0x1.024a68p-3
+0x1.459758p-1
+-0x1.28766p-1
+-0x1.e1557p-1
+0x1.68c16cp-2
+0x1.b9829p-1
+-0x1.f01fd8p-4
+0x1.f06b6ep-1
+-0x1.2a52f2p-1
+-0x1.6b316cp-1
+0x1.70813ap-4
+-0x1.8010d6p-2
+0x1.b6639p-1
+0x1.3c1672p-2
+0x1.acc378p-1
+-0x1.7ad958p-1
+-0x1.5057d8p-5
+-0x1.9d083ep-4
+0x1.9283fep-1
+-0x1.7053eap-4
+-0x1.fdebecp-1
+0x1.c9b6eap-2
+-0x1.42d094p-1
+-0x1.648fd2p-2
+0x1.50cfbap-4
+-0x1.b6f95cp-1
+0x1.c8e1fp-1
+-0x1.3baff8p-4
+-0x1.c1300ep-1
+0x1.ba7ebap-1
+-0x1.d44aa2p-2
+0x1.cdac1p-4
+-0x1.331518p-1
+0x1.985e8p-2
+-0x1.9bf3cap-2
+-0x1.4feb68p-1
+-0x1.9fc4a4p-1
+0x1.09dcfp-3
+0x1.39aadap-1
+-0x1.212aeep-1
+-0x1.9127d2p-1
+0x1.2be826p-3
+0x1.4e029ep-1
+-0x1.70cddcp-4
+0x1.e667b6p-2
+-0x1.ccfe88p-1
+-0x1.59d76ap-2
+0x1.c2e37cp-1
+-0x1.c99bf8p-1
+0x1.dda6a4p-4
+-0x1.0018d8p-2
+-0x1.53b34cp-3
+0x1.69ceb8p-2
+0x1.7b43eep-1
+0x1.9a6522p-1
+0x1.897bfep-3
+0x1.db1cf6p-1
+-0x1.1d89cap-4
+-0x1.7b75c6p-1
+0x1.d34b68p-1
+0x1.3a9322p-1
+0x1.c982c6p-2
+0x1.5b831ap-2
+-0x1.187a96p-2
+0x1.e43d6cp-1
+-0x1.5c0954p-2
+0x1.e2825p-1
+0x1.b0b704p-1
+-0x1.3b272ep-1
+-0x1.1999e6p-3
+-0x1.ffb3c8p-2
+0x1.020abp-3
+-0x1.117f4p-3
+-0x1.21cbaap-3
+0x1.b979bp-2
+0x1.c5e4p-2
+0x1.cb9126p-1
+-0x1.443e6p-2
+0x1.f20776p-3
+-0x1.4a54fap-1
+-0x1.2788f4p-8
+-0x1.37c3e8p-3
+-0x1.b152cep-1
+0x1.f10cccp-1
+-0x1.d87266p-3
+-0x1.225772p-1
+0x1.e27854p-2
+-0x1.acec2cp-1
+0x1.26a7aep-1
+-0x1.625d8cp-3
+-0x1.21c55p-1
+-0x1.c21146p-1
+-0x1.f05f56p-1
+0x1.25358ap-1
+-0x1.ecfbb8p-2
+0x1.9893e2p-1
+0x1.558646p-1
+-0x1.4453fep-1
+-0x1.71bd78p-1
+-0x1.0c776ap-2
+-0x1.5f3fbap-3
+-0x1.393c24p-1
+-0x1.e52f7p-1
+-0x1.2951acp-6
+-0x1.6aab56p-1
+0x1.fb92ap-3
+-0x1.b44d06p-1
+0x1.773636p-2
+0x1.3ee104p-2
+0x1.f0ee14p-2
+-0x1.aebaa8p-1
+0x1.d6b9cap-1
+0x1.071dep-5
+0x1.ef4a8ap-2
+0x1.58456p-3
+-0x1.f9e5f4p-3
+-0x1.a6234cp-3
+0x1.beb19cp-2
+0x1.35c578p-2
+0x1.bcdab4p-2
+0x1.99f2e6p-1
+-0x1.86f424p-1
+-0x1.21fb1cp-1
+-0x1.04d196p-2
+-0x1.124f2ep-6
+0x1.c8510ap-2
+-0x1.7cab78p-3
+-0x1.3bb946p-1
+0x1.7f6edcp-1
+0x1.826948p-3
+0x1.ba664p-1
+-0x1.4906dap-1
+0x1.c09058p-3
+0x1.35a04ep-2
+0x1.439a92p-1
+-0x1.18a3fp-2
+-0x1.4a8e28p-1
+0x1.bdbb16p-1
+0x1.da35b8p-4
+0x1.d37f9p-2
+0x1.69d5a2p-1
+-0x1.18386ep-5
+-0x1.b195c4p-3
+0x1.8707eep-2
+-0x1.c3ba7ep-1
+0x1.b3224ap-3
+0x1.ff4afep-2
+0x1.23d998p-1
+-0x1.ec1bd8p-2
+0x1.eb3712p-3
+0x1.931daap-1
+0x1.94dd66p-1
+-0x1.8b9a54p-1
+-0x1.4a3eccp-2
+-0x1.eecb74p-2
+-0x1.a410e4p-5
+-0x1.fac61cp-1
+0x1.7b701ep-2
+-0x1.644feep-5
+-0x1.a1067ep-1
+0x1.72827ap-1
+0x1.a7fc72p-3
+-0x1.085d58p-2
+0x1.40a97ap-1
+-0x1.48d642p-3
+0x1.0a7494p-1
+-0x1.91a466p-4
+-0x1.a8ce2ep-1
+0x1.eb6b82p-1
+-0x1.dfe4fcp-2
+-0x1.a14578p-2
+-0x1.70cd5ep-1
+-0x1.7b4d98p-1
+-0x1.89a6b8p-1
+-0x1.b269d6p-1
+0x1.6dab2ep-1
+-0x1.08ac96p-1
+-0x1.a00fd4p-1
+0x1.45d93ap-4
+0x1.0f2bc4p-1
+-0x1.e63a32p-2
+0x1.f6fe8ep-1
+0x1.816bc4p-1
+-0x1.385f94p-2
+-0x1.3ba116p-1
+-0x1.11d59ap-1
+0x1.87ccaap-2
+-0x1.55953p-1
+-0x1.d6a906p-2
+0x1.96126ap-2
+-0x1.0da9c6p-4
+-0x1.b3bd74p-2
+0x1.a3da94p-1
+-0x1.fa55dp-1
+0x1.da4914p-5
+-0x1.51a224p-1
+0x1.f0b334p-4
+-0x1.0ff79cp-3
+0x1.61a77ap-1
+0x1.b83ddcp-1
+0x1.165b5p-1
+-0x1.fa03f4p-1
+-0x1.b6887ep-1
+-0x1.3523b4p-1
+0x1.d16948p-2
+0x1.2a29ep-1
+-0x1.cb7264p-5
+0x1.03b73ap-1
+0x1.5b6118p-1
+-0x1.93c95ep-2
+0x1.5cbdd8p-2
+-0x1.786a1cp-1
+-0x1.81c0b8p-2
+-0x1.51618ap-1
+0x1.37f46cp-1
+0x1.33317p-2
+0x1.bf1d04p-1
+-0x1.ea7b38p-1
+-0x1.565b88p-1
+0x1.cf0e2cp-1
+0x1.b6bb48p-1
+0x1.7a5216p-1
+0x1.3333a4p-5
+0x1.e0736ap-1
+-0x1.50b416p-1
+0x1.352a92p-3
+0x1.619df2p-1
+0x1.63e06ap-1
+-0x1.e323eep-4
+-0x1.28a158p-1
+0x1.bf8c44p-2
+0x1.cb9886p-5
+-0x1.538f38p-1
+0x1.873e4p-1
+-0x1.0322f4p-3
+0x1.e48a42p-3
+0x1.3f76b6p-1
+0x1.be1008p-1
+-0x1.e8126cp-5
+-0x1.2c7144p-2
+-0x1.1d7468p-1
+0x1.4ab6a2p-1
+-0x1.de5accp-1
+-0x1.ab73b6p-1
+-0x1.0dee3cp-1
+-0x1.ff505cp-2
+-0x1.40f626p-1
+-0x1.638278p-3
+0x1.0bc33ap-5
+-0x1.362e1ap-2
+-0x1.4a5394p-1
+-0x1.4f6bccp-1
+-0x1.ed5134p-2
+0x1.934784p-7
+0x1.d7aec2p-1
+0x1.294228p-2
+-0x1.7ea966p-1
+0x1.a9e1a6p-1
+-0x1.310818p-3
+-0x1.f942ecp-1
+-0x1.3f6b16p-2
+0x1.fb6746p-1
+0x1.341112p-3
+0x1.b631dcp-1
+0x1.28288ep-2
+-0x1.0f402p-1
+0x1.9fba7p-1
+-0x1.406a34p-3
+-0x1.80ed3cp-1
+-0x1.fda3b2p-2
+-0x1.c0eaf2p-2
+0x1.e8697ep-2
+0x1.494166p-1
+-0x1.1a27bcp-2
+0x1.c2819cp-2
+-0x1.bc1a72p-2
+-0x1.b71b6ep-2
+-0x1.e18c1ap-1
+-0x1.7ad54ap-2
+0x1.a01db6p-1
+-0x1.97892ap-1
+0x1.ae83dcp-1
+0x1.67375ap-3
+-0x1.d97446p-2
+0x1.1f4206p-1
+-0x1.f4a45p-1
+-0x1.ed6b5cp-1
+-0x1.ae6ef4p-1
+0x1.58246ap-1
+-0x1.fff244p-3
+-0x1.890cdcp-3
+0x1.334da4p-1
+0x1.986346p-5
+0x1.abadb4p-2
+0x1.c9345p-1
+0x1.adf66ep-1
+-0x1.49916cp-1
+0x1.db5d64p-2
+0x1.48546ep-3
+0x1.5fbcap-1
+0x1.0a73dp-3
+-0x1.ba398ap-3
+-0x1.802ec4p-1
+0x1.fa196ap-1
+0x1.3459b4p-1
+-0x1.41bf16p-2
+0x1.3c44c6p-1
+0x1.ff31fcp-1
+-0x1.35e388p-4
+0x1.9f84a2p-2
+0x1.2c5c46p-5
+-0x1.adf34ap-2
+-0x1.6080e6p-1
+0x1.44644p-1
+0x1.e94c78p-1
+-0x1.ca38aep-3
+0x1.c37aacp-1
+-0x1.e0b126p-2
+0x1.cf1b92p-3
+0x1.b702bp-2
+-0x1.5fdcb4p-1
+0x1.8d18aep-1
+-0x1.c7240cp-3
+-0x1.a73466p-1
+-0x1.e964acp-2
+0x1.9040a8p-1
+0x1.0fc084p-1
+0x1.f6cc92p-1
+0x1.76f8d2p-4
+-0x1.939edp-1
+-0x1.6975ep-5
+0x1.173ab6p-1
+0x1.c3fc58p-1
+0x1.4ddf26p-1
+-0x1.d66682p-1
+0x1.a1b7c6p-1
+0x1.33c1b6p-1
+-0x1.41565ep-2
+-0x1.78ed56p-2
+0x1.73c3f4p-2
+-0x1.591c16p-2
+0x1.526daep-1
+0x1.413976p-4
+-0x1.e7f5ap-3
+0x1.b1dcacp-2
+-0x1.a25134p-1
+0x1.568b84p-1
+-0x1.446f6ap-3
+-0x1.b029dep-3
+0x1.1a04acp-1
+-0x1.450e62p-1
+-0x1.34d7cap-1
+0x1.257798p-2
+0x1.9a274ep-1
+0x1.f4fa78p-6
+-0x1.9e4c44p-2
+-0x1.65ce9ap-6
+-0x1.5d1f86p-3
+-0x1.4b5f28p-4
+-0x1.6d41fep-3
+-0x1.62a6p-5
+-0x1.2c8dccp-2
+0x1.d8ee54p-2
+-0x1.164a44p-1
+-0x1.865272p-2
+-0x1.d59ca4p-1
+0x1.723a6ep-1
+-0x1.50019p-1
+0x1.0b7e68p-1
+0x1.9c9ec8p-1
+0x1.a41b54p-1
+-0x1.ed4e92p-1
+0x1.b97f24p-2
+-0x1.08606ep-1
+0x1.b5b4a4p-1
+0x1.9050fep-1
+-0x1.0179d8p-1
+0x1.36e184p-8
+-0x1.fa920ep-6
+-0x1.517e1ep-2
+0x1.a140b2p-6
+0x1.5b521p-1
+-0x1.8f7198p-3
+0x1.5817aap-2
+-0x1.216128p-1
+-0x1.8117f4p-2
+-0x1.2ab004p-1
+0x1.f554ep-1
+-0x1.7f0528p-3
+-0x1.7a2266p-2
+-0x1.4c9f6cp-4
+0x1.a09c4cp-1
+0x1.24d12ap-5
+0x1.ef0f56p-2
+0x1.93a882p-2
+-0x1.fa1acep-3
+-0x1.0a5296p-1
+-0x1.4dca9ep-2
+0x1.758e4p-1
+0x1.938c48p-1
+0x1.04d7dcp-1
+-0x1.143d5ep-3
+-0x1.679e52p-2
+-0x1.adbbaep-1
+0x1.7fac6ap-1
+-0x1.462606p-1
+0x1.645d3ep-2
+-0x1.2b09b6p-1
+-0x1.0e234cp-4
+-0x1.a7ca86p-1
+-0x1.8553c8p-1
+-0x1.0874b4p-1
+0x1.9cbeep-4
+0x1.d3e36cp-3
+-0x1.36e694p-3
+-0x1.3a88d4p-2
+0x1.9da0a4p-4
+-0x1.dd4caep-1
+0x1.21d716p-5
+0x1.a41c2cp-1
+-0x1.a49b24p-1
+0x1.211efcp-1
+-0x1.d57732p-2
+-0x1.518a64p-1
+0x1.97eb9ap-1
+-0x1.dc4bd2p-1
+0x1.bbcc7p-2
+0x1.2e0758p-10
+0x1.17b71p-2
+0x1.4542a8p-2
+-0x1.d3340ap-1
+0x1.7d7abap-1
+0x1.16777ep-1
+0x1.df41fp-1
+0x1.96e33ep-2
+-0x1.d1b2eap-2
+-0x1.292794p-1
+0x1.b3137ep-1
+0x1.683d6ap-5
+-0x1.03a2dcp-2
+-0x1.26500ep-1
+0x1.493cfap-1
+-0x1.27cfep-2
+-0x1.af4b94p-1
+-0x1.8abd44p-3
+-0x1.f97558p-6
+0x1.34e03cp-2
+-0x1.00123ep-2
+0x1.318516p-3
+0x1.7ebecep-1
+-0x1.8e5714p-1
+0x1.8d7dp-2
+0x1.e92836p-1
+-0x1.9a5c34p-1
+0x1.936bfep-2
+0x1.6925f8p-4
+-0x1.db0f02p-3
+0x1.2d79cp-1
+0x1.e335fap-7
+0x1.c5c08p-2
+-0x1.1e751cp-4
+-0x1.ce1b02p-1
+0x1.d1bf3ep-3
+0x1.f95c22p-1
+-0x1.9e1b38p-1
+0x1.f07c6ap-1
+0x1.94902p-3
+0x1.189d22p-1
+0x1.ac14fp-1
+0x1.9f8184p-5
+-0x1.8eeafp-2
+0x1.b2928ap-3
+-0x1.4a8d6ap-3
+0x1.98f7f8p-2
+-0x1.3c29aap-1
+-0x1.30e344p-2
+-0x1.f81e14p-1
+0x1.8661b8p-1
+-0x1.dacdacp-3
+-0x1.1b77aep-5
+-0x1.e1b8a4p-4
+0x1.1a5e36p-4
+-0x1.1a9a18p-1
+0x1.16752p-2
+0x1.9223a8p-3
+0x1.382e36p-1
+0x1.f8866ap-1
+0x1.454a2cp-1
+0x1.3a63d6p-1
+-0x1.fa711cp-1
+0x1.9ca2f6p-1
+0x1.7d2dcep-1
+0x1.ab8ffep-2
+0x1.0ad3c6p-1
+-0x1.65978cp-1
+0x1.c5efdp-4
+0x1.70dc3p-1
+0x1.1e78f4p-1
+0x1.599d34p-2
+-0x1.a95114p-1
+0x1.cbac56p-1
+0x1.4b27f4p-1
+-0x1.7f333ep-1
+0x1.a77fcp-1
+-0x1.266ebcp-1
+0x1.8a8086p-2
+-0x1.d89c9cp-2
+0x1.3a465p-3
+0x1.82a5cp-1
+0x1.2f5d0ep-1
+0x1.09f04p-4
+0x1.7512bap-3
+0x1.aef86p-1
+0x1.4152b2p-1
+0x1.806432p-3
+0x1.6e4fd2p-2
+0x1.20ab14p-1
+-0x1.655c88p-1
+0x1.c7f24p-2
+0x1.199268p-1
+-0x1.13efc4p-1
+-0x1.17ca02p-1
+0x1.bbd862p-1
+-0x1.699e28p-1
+0x1.9e3102p-2
+-0x1.886c26p-3
+-0x1.a87692p-1
+0x1.f4e81cp-1
+-0x1.64646cp-1
+-0x1.fd1d5ap-1
+-0x1.4435d2p-1
+0x1.0ca1d4p-5
+0x1.830bfep-2
+-0x1.439a8ep-1
+0x1.cfc594p-1
+0x1.7d10eap-1
+-0x1.de20cep-5
+-0x1.496928p-2
+-0x1.a19cd4p-1
+0x1.825adap-1
+-0x1.840a52p-2
+-0x1.ed230ap-2
+-0x1.4efca6p-1
+0x1.8913ap-1
+0x1.f540ap-4
+-0x1.035b7cp-2
+0x1.9199dcp-1
+0x1.91d598p-3
+0x1.5a45a6p-2
+-0x1.1c5cd2p-4
+-0x1.eb65f6p-2
+-0x1.f511fp-2
+0x1.6ff814p-1
+0x1.f3b146p-1
+0x1.ca1aecp-4
+-0x1.ebfbb8p-1
+0x1.996132p-3
+0x1.5b183ep-2
+-0x1.aa336p-2
+0x1.05a978p-2
+0x1.6f2fd4p-1
+-0x1.a379d8p-4
+-0x1.46859ap-2
+0x1.7152e8p-7
+0x1.4e8c2cp-1
+-0x1.e4e4ccp-1
+0x1.8b6612p-1
+0x1.6a0fc2p-4
+-0x1.e3dd64p-3
+0x1.7ff666p-3
+-0x1.8505dap-3
+-0x1.3eef6cp-1
+-0x1.19388p-1
+0x1.d6907ep-2
+0x1.75f38ap-1
+-0x1.bcb646p-1
+0x1.bd1b88p-1
+-0x1.bb9516p-1
+-0x1.6e5adep-1
+0x1.a20f7cp-1
+0x1.28ce3cp-1
+0x1.dbad9ap-1
+0x1.8ec91ep-3
+0x1.4a7fcap-2
+-0x1.61569ep-2
+0x1.c7861p-3
+-0x1.77c528p-2
+-0x1.a788bp-1
+-0x1.1510eap-1
+-0x1.77f3fap-1
+-0x1.5058d4p-6
+-0x1.67b4eap-2
+-0x1.8bfe8cp-6
+-0x1.02d2ccp-2
+-0x1.572066p-1
+0x1.7d87c6p-2
+-0x1.9e4eep-2
+0x1.2fe546p-4
+-0x1.ab011p-1
+-0x1.c31036p-5
+-0x1.e6df0cp-2
+0x1.16c0d4p-1
+0x1.6abb4ap-1
+0x1.56e09cp-1
+0x1.8f1bb8p-4
+0x1.528486p-1
+0x1.34c408p-3
+0x1.4f9b6ap-3
+-0x1.36062p-4
+0x1.72afa6p-1
+0x1.649eecp-6
+0x1.3ce256p-1
+0x1.84fe1cp-1
+0x1.d9b0b4p-5
+-0x1.bebebep-1
+0x1.16f4b2p-1
+-0x1.8cb3cep-1
+0x1.5a8ebcp-1
+0x1.f6dddcp-1
+-0x1.c17a0ep-6
+-0x1.81812cp-2
+0x1.9a0194p-3
+0x1.eb5facp-1
+0x1.a289fp-2
+-0x1.c09648p-1
+-0x1.ed2a4p-1
+0x1.d26124p-1
+-0x1.cbb30cp-2
+0x1.061622p-1
+-0x1.a981f4p-3
+-0x1.2ac856p-1
+-0x1.ef7726p-2
+-0x1.e57144p-2
+0x1.ed9c46p-3
+0x1.896e8ep-2
+-0x1.7ff6e8p-1
+-0x1.7d21eep-1
+0x1.5ca832p-1
+0x1.843c3ep-2
+-0x1.c3f2d4p-1
+-0x1.6e504cp-5
+-0x1.0f2ebep-1
+0x1.8049f8p-2
+-0x1.3217b4p-2
+-0x1.ea035cp-1
+-0x1.a90a1ap-1
+-0x1.c31c7ap-2
+0x1.42b538p-4
+0x1.a9d7acp-2
+-0x1.88949p-1
+-0x1.14fae2p-2
+-0x1.532b62p-3
+0x1.128ed8p-3
+-0x1.df5bbap-1
+-0x1.a74bccp-2
+-0x1.38e32cp-1
+-0x1.fbc698p-3
+-0x1.38d05ep-1
+-0x1.b636cep-6
+0x1.bf7bfap-1
+-0x1.24de36p-1
+0x1.41fcecp-1
+0x1.3ae2d6p-4
+-0x1.edf9d4p-1
+-0x1.cf140cp-4
+0x1.a4158cp-1
+-0x1.bcc97ap-2
+0x1.493e42p-1
+-0x1.6702fep-1
+0x1.7f7076p-1
+-0x1.20894p-2
+-0x1.9fe664p-1
+-0x1.15b06ap-1
+-0x1.6cd73ep-2
+-0x1.e75a44p-3
+-0x1.0e7dfcp-1
+0x1.2ee01ap-1
+-0x1.f04708p-2
+-0x1.a47ad8p-2
+-0x1.f36efap-2
+-0x1.be8a3p-2
+0x1.27d34cp-1
+0x1.2f8514p-1
+-0x1.8b39e2p-1
+-0x1.e89f9p-1
+0x1.a72cf2p-3
+-0x1.efe2dep-1
+-0x1.653d82p-1
+-0x1.0c2fb8p-3
+-0x1.2ee59p-1
+0x1.ea367ap-1
+-0x1.0dea4cp-5
+0x1.6c2bd6p-1
+-0x1.354b9ap-3
+-0x1.66775ap-4
+-0x1.c237aep-1
+-0x1.3b4e76p-1
+-0x1.d4e234p-1
+0x1.ee88acp-1
+-0x1.e2847ap-4
+-0x1.304f5ap-1
+-0x1.f1053ap-2
+-0x1.0b66eep-1
+-0x1.082b6p-1
+-0x1.075cb2p-1
+-0x1.5cf696p-1
+-0x1.8a39bcp-7
+-0x1.e5fa04p-5
+0x1.38df12p-2
+0x1.27c5b8p-1
+-0x1.85c11ap-2
+-0x1.eee93ap-5
+-0x1.0fff68p-1
+0x1.29e29ap-1
+0x1.f70b24p-2
+-0x1.03263cp-1
+0x1.fc736p-1
+-0x1.5006fap-5
+0x1.a11d2cp-1
+0x1.6b6c92p-2
+0x1.d005b2p-3
+-0x1.21b02p-5
+-0x1.03d5fep-1
+-0x1.47d574p-1
+-0x1.ef9952p-1
+-0x1.23fb82p-3
+-0x1.3be22p-1
+0x1.56adb4p-1
+0x1.30f1cp-1
+0x1.06af34p-2
+-0x1.a7376ep-1
+-0x1.88b994p-1
+0x1.242042p-1
+-0x1.d9ac38p-1
+-0x1.3e1f96p-1
+0x1.359086p-1
+-0x1.38c6cap-1
+-0x1.d9af1ap-3
+0x1.621692p-1
+0x1.34665cp-3
+0x1.45390cp-1
+0x1.40cf68p-1
+-0x1.e42a7ap-2
+-0x1.4e338p-1
+0x1.2a1196p-3
+-0x1.0d47ep-2
+-0x1.f69312p-2
+-0x1.3178d6p-1
+-0x1.79e4bp-1
+0x1.9ef246p-1
+-0x1.c846f8p-1
+-0x1.69851ap-2
+-0x1.3fdb56p-1
+0x1.b31dbap-2
+-0x1.388d12p-1
+0x1.9cad5p-1
+-0x1.b447d6p-1
+-0x1.f5a54cp-1
+-0x1.636104p-1
+-0x1.29ac2p-1
+-0x1.ea867ep-1
+-0x1.2859e6p-2
+0x1.7e23cp-1
+0x1.213798p-2
+-0x1.2df3bcp-1
+-0x1.ca2c9p-1
+-0x1.88beaep-1
+0x1.de6824p-2
+-0x1.7000b8p-4
+0x1.1a27cep-1
+0x1.5f257cp-2
+0x1.2d0d08p-6
+0x1.1b00f8p-2
+-0x1.b29cacp-2
+-0x1.8f6624p-2
+0x1.51c334p-4
+0x1.079a1ap-1
+0x1.fe02dep-1
+-0x1.68e44ap-1
+-0x1.daa726p-1
+-0x1.6fe984p-5
+-0x1.f9de8ap-1
+-0x1.708dc2p-2
+-0x1.f28c2p-1
+0x1.7ea5e6p-2
+-0x1.22a264p-2
+0x1.f81fb4p-2
+-0x1.5deb0ep-1
+0x1.2d697ap-2
+0x1.530dbp-2
+0x1.b53632p-1
+-0x1.e85cb8p-4
+0x1.bbe14ap-1
+0x1.ac1126p-1
+0x1.9f524cp-1
+-0x1.395ed8p-1
+-0x1.9b3232p-3
+0x1.b00308p-6
+0x1.360dbap-2
+-0x1.fad06ep-2
+0x1.953922p-1
+0x1.b6e934p-2
+0x1.dcf538p-3
+0x1.5e322ap-2
+0x1.58b98p-2
+-0x1.c1162ap-1
+0x1.044604p-1
+0x1.4a08c6p-1
+-0x1.96b95p-1
+0x1.7d622ep-1
+-0x1.44c38p-15
+0x1.f08486p-1
+-0x1.9e4494p-1
+0x1.a5c8bp-1
+0x1.7b45cp-3
+0x1.66312p-2
+0x1.91c99ep-2
+-0x1.ad5412p-1
+0x1.2a1b8cp-1
+0x1.102c3p-1
+-0x1.24f664p-2
+0x1.ee92bep-2
+-0x1.9843fp-1
+0x1.d3c1f8p-8
+0x1.34d69ep-4
+-0x1.bcf0cap-2
+-0x1.b8e50ep-1
+-0x1.aa891ep-4
+0x1.a4273ap-1
+0x1.967cbep-2
+0x1.334b08p-2
+0x1.7a1576p-1
+-0x1.77e2eep-2
+-0x1.e4fb6p-1
+-0x1.696184p-1
+0x1.7a8ca2p-2
+-0x1.b3c364p-1
+0x1.a2affcp-2
+0x1.033852p-2
+-0x1.4cd648p-2
+0x1.5e7e92p-1
+-0x1.56905ap-1
+-0x1.af1c54p-6
+-0x1.01e1bcp-1
+0x1.8504bp-1
+-0x1.6dadfap-5
+-0x1.f01a5ap-2
+-0x1.25a766p-1
+0x1.ede42ap-1
+0x1.64b1b4p-6
+-0x1.619f8cp-1
+-0x1.6309dp-1
+-0x1.8ab31cp-1
+0x1.0536ap-1
+0x1.db7dbp-1
+0x1.02217cp-1
+0x1.4f7192p-1
+0x1.61629p-5
+0x1.b1c056p-3
+-0x1.34b0c8p-1
+-0x1.c58502p-2
+-0x1.42ef4p-2
+-0x1.5f7e44p-1
+0x1.70f66ap-3
+-0x1.4f61d4p-2
+-0x1.fe6aa2p-3
+0x1.cad1dcp-2
+0x1.d2282ep-2
+0x1.402c96p-2
+0x1.a8072p-1
+-0x1.163882p-1
+-0x1.e94714p-2
+-0x1.d32ad6p-1
+0x1.2e429p-9
+0x1.b1c3bap-1
+-0x1.c0aba4p-1
+0x1.382de4p-4
+0x1.7e678ap-1
+-0x1.6f716cp-1
+0x1.6e778ap-2
+-0x1.613f66p-1
+-0x1.4c43d6p-3
+-0x1.f10394p-1
+0x1.f236p-1
+-0x1.0002aap-1
+-0x1.1e66ccp-3
+0x1.cf36e2p-2
+-0x1.76bd6cp-3
+0x1.54cae6p-1
+0x1.049dbap-2
+0x1.691cd4p-1
+0x1.52a592p-1
+0x1.23d9e6p-4
+0x1.032eacp-1
+-0x1.fd7d66p-1
+-0x1.fe88a4p-2
+-0x1.0f3284p-2
+0x1.2a5a74p-2
+-0x1.3eaefap-2
+-0x1.b0d926p-1
+-0x1.5b4a66p-1
+-0x1.80d254p-2
+-0x1.6bbbb8p-4
+0x1.114272p-1
+0x1.ac4f22p-1
+0x1.9f017ep-1
+0x1.d2f3a4p-2
+0x1.a7eaccp-1
+0x1.cbde04p-2
+-0x1.180e52p-1
+-0x1.d2cf08p-2
+-0x1.f7a6eap-2
+0x1.13886ep-4
+-0x1.ec89a4p-1
+0x1.a06cccp-1
+-0x1.de738p-1
+0x1.57a82ep-1
+-0x1.b2cf22p-2
+0x1.524cecp-1
+0x1.f1229p-1
+0x1.e5a234p-1
+0x1.62f7ccp-1
+-0x1.97ad5cp-5
+-0x1.c10578p-1
+0x1.e6b6fp-2
+0x1.0c0decp-2
+-0x1.57bffcp-3
+-0x1.4bfb28p-1
+0x1.b58b0cp-1
+0x1.8d86eep-3
+-0x1.7a3094p-1
+0x1.b549dp-2
+0x1.313f5p-5
+-0x1.c6f17ep-1
+0x1.4414a8p-1
+0x1.cf6ccep-3
+-0x1.2ee8bap-1
+-0x1.86121p-2
+-0x1.d6da44p-1
+-0x1.7323f8p-5
+-0x1.228a5cp-6
+-0x1.bcf22ep-2
+0x1.c95e7ap-1
+0x1.54744ap-3
+0x1.f45a14p-1
+0x1.fd16f2p-6
+0x1.3ea204p-1
+0x1.ba69d8p-3
+-0x1.7950c6p-1
+-0x1.0e8562p-2
+-0x1.981f7cp-1
+-0x1.382c38p-1
+-0x1.55c4b4p-2
+-0x1.1e2432p-2
+0x1.e044f8p-2
+0x1.3745fep-1
+0x1.2df906p-1
+0x1.4c3022p-2
+-0x1.ad6e4p-1
+-0x1.6c7eb6p-1
+0x1.133268p-1
+0x1.d48c3cp-1
+-0x1.bf9e52p-1
+0x1.00c732p-2
+0x1.662274p-3
+0x1.31785p-3
+-0x1.2404bp-2
+0x1.11a39ap-1
+-0x1.509e4ap-7
+-0x1.d31e82p-4
+-0x1.1a2d3cp-2
+0x1.656e1ep-1
+0x1.9c1e08p-1
+-0x1.f2ce62p-2
+-0x1.71e2bep-1
+-0x1.470772p-2
+0x1.9919d8p-3
+0x1.1db40ep-1
+0x1.31ed6ep-1
+0x1.1efd78p-2
+0x1.75e94cp-2
+-0x1.4804eep-7
+-0x1.44e95p-1
+0x1.82b0bep-3
+0x1.e3c64cp-1
+0x1.1f35eap-1
+-0x1.b9881p-1
+-0x1.443cap-1
+0x1.79c59p-1
+0x1.0921b4p-1
+-0x1.dff7fp-1
+0x1.109a1p-1
+0x1.c6b5a2p-1
+-0x1.44c9d8p-5
+-0x1.2a8548p-4
+-0x1.f992a4p-1
+-0x1.d8afeep-1
+0x1.2c56p-2
+-0x1.d70f46p-3
+-0x1.8c254cp-2
+0x1.74ac42p-2
+0x1.129058p-3
+0x1.b7b4f4p-3
+0x1.f32eb8p-1
+0x1.bef956p-2
+-0x1.2ef70ap-2
+-0x1.5c7de2p-1
+-0x1.db93c8p-2
+-0x1.9500ep-3
+0x1.8e6a62p-4
+0x1.79f0a6p-2
+-0x1.a3551ep-2
+-0x1.2fb418p-1
+0x1.c34a74p-2
+0x1.f74e14p-5
+0x1.a415aap-1
+0x1.d234e6p-3
+0x1.9ad09p-2
+0x1.45d4ccp-1
+0x1.647276p-2
+0x1.7f684ep-2
+-0x1.e358d2p-1
+0x1.c7eb0ap-2
+-0x1.061492p-2
+0x1.7fb364p-8
+-0x1.514cfp-1
+0x1.1787b2p-5
+-0x1.42e7fep-2
+-0x1.f692f8p-1
+-0x1.113514p-1
+0x1.4e98d8p-2
+0x1.0d23aep-2
+-0x1.a354bp-2
+-0x1.b3eeep-1
+0x1.6ed08ap-3
+-0x1.c74804p-1
+0x1.e92704p-3
+-0x1.aa4a24p-4
+-0x1.d443aap-1
+0x1.237a6p-4
+-0x1.6d96e2p-5
+-0x1.6ba64ep-1
+0x1.6e9b32p-2
+0x1.03b2eap-1
+0x1.353312p-3
+0x1.70c46ap-1
+0x1.b4c1bap-1
+-0x1.972798p-1
+0x1.cbf884p-3
+0x1.522e4ap-2
+0x1.7d188ep-2
+-0x1.f4e5cep-1
+-0x1.74f77cp-1
+0x1.f20304p-1
+0x1.a199e2p-1
+-0x1.f49362p-1
+-0x1.41c7fp-1
+-0x1.6f91cap-2
+-0x1.d78732p-3
+-0x1.ae443cp-2
+-0x1.eb7b2ep-1
+0x1.529262p-1
+0x1.48706ap-2
+0x1.05ad42p-1
+-0x1.9ea636p-1
+0x1.832af4p-2
+0x1.c1aaaep-1
+0x1.723e8p-2
+-0x1.eb638p-1
+-0x1.68fda8p-1
+0x1.9fc44cp-1
+0x1.5ad3cep-1
+-0x1.b8e40ap-1
+-0x1.e1338ep-2
+-0x1.e7ca46p-5
+0x1.eac5a6p-2
+-0x1.c33ab4p-3
+0x1.1eec0ap-2
+0x1.c39e3cp-3
+0x1.400644p-1
+-0x1.0a5e18p-2
+-0x1.05bba6p-2
+0x1.18335p-1
+0x1.bb8a2ep-1
+0x1.afc582p-2
+0x1.e875eep-2
+0x1.914bccp-1
+0x1.da85cap-2
+0x1.b954fep-4
+0x1.04eadcp-3
+0x1.628bd4p-3
+-0x1.e0235ep-3
+0x1.cd601ep-2
+-0x1.0815c4p-1
+0x1.42aafap-1
+0x1.de8beap-1
+-0x1.039e1cp-3
+-0x1.1debfap-1
+-0x1.e340e8p-2
+-0x1.a69718p-6
+0x1.36041ap-2
+-0x1.f76d06p-2
+0x1.34de18p-3
+-0x1.01859ap-1
+0x1.a2d4d6p-1
+0x1.11d964p-1
+-0x1.b6cdeep-2
+-0x1.02bdd2p-4
+-0x1.e9ed66p-5
+0x1.261b26p-1
+-0x1.ed7308p-1
+0x1.914228p-3
+0x1.ce73bep-1
+-0x1.e9eac6p-2
+0x1.e72454p-1
+0x1.a5d88p-2
+0x1.08866ep-1
+0x1.fe8e1ap-1
+0x1.6a1866p-1
+-0x1.459104p-2
+0x1.f740a6p-1
+-0x1.247816p-2
+0x1.fcbc5p-4
+-0x1.b46fcep-4
+-0x1.6779b6p-1
+0x1.64a6fcp-3
+0x1.3f11f4p-1
+-0x1.78af48p-2
+-0x1.230bfap-1
+-0x1.fd4dd8p-2
+-0x1.eee0e2p-2
+-0x1.1b2132p-2
+-0x1.f9882cp-1
+0x1.fb9ccap-2
+-0x1.3ffb5ep-1
+0x1.277856p-1
+-0x1.c9086cp-1
+0x1.b76cf4p-2
+0x1.ec2edep-1
+0x1.5c4a98p-2
+0x1.884cd8p-2
+0x1.c40114p-1
+0x1.e3c984p-2
+0x1.f4bdd2p-1
+-0x1.9d2a52p-1
+0x1.003aep-1
+-0x1.3c4d2p-1
+-0x1.c37bbep-4
+0x1.c04f98p-1
+-0x1.07318cp-3
+-0x1.1b9e46p-3
+-0x1.c2c112p-1
+0x1.511c84p-3
+-0x1.aeaaccp-1
+0x1.047488p-1
+-0x1.9061fp-1
+0x1.5df0dcp-1
+-0x1.5d5e08p-2
+0x1.5cbbfcp-6
+-0x1.ec2614p-1
+0x1.20a1dep-1
+0x1.69432ap-1
+-0x1.369c34p-3
+-0x1.f0aa7ep-3
+-0x1.e29bfp-2
+0x1.f4e85cp-1
+0x1.d9ac1cp-1
+0x1.71f1b6p-3
+0x1.c18202p-1
+-0x1.d499e2p-3
+0x1.af4c9ep-1
+-0x1.0edab4p-2
+0x1.3d959cp-1
+-0x1.3fb9a4p-3
+0x1.4f0dfap-3
+0x1.b06d44p-2
+0x1.824184p-2
+0x1.b431c6p-2
+0x1.7acb4p-1
+0x1.1fee8ap-1
+-0x1.2380e2p-1
+0x1.1f54e2p-1
+0x1.da5428p-3
+-0x1.3db5dp-1
+0x1.6e4e44p-4
+-0x1.fdde6ep-1
+-0x1.5c1a7cp-3
+-0x1.97d5f8p-1
+-0x1.573c96p-2
+-0x1.46b65ep-1
+0x1.31d40ep-1
+-0x1.2093e8p-4
+-0x1.6d06fep-4
+-0x1.7a887ap-5
+0x1.50e4f6p-1
+-0x1.f6ffb6p-3
+0x1.bd218ap-2
+0x1.9cd098p-2
+-0x1.816d8p-1
+-0x1.e776f2p-3
+0x1.021b74p-3
+0x1.c9b388p-1
+-0x1.1abaeep-4
+-0x1.9d737p-3
+0x1.efa72p-2
+0x1.58cdfap-1
+0x1.3ab38ep-3
+-0x1.b5f4ccp-2
+-0x1.fbe7f4p-2
+-0x1.71174p-2
+0x1.a99062p-5
+0x1.695c0cp-2
+-0x1.da80aap-1
+-0x1.4651aap-2
+0x1.34d532p-1
+-0x1.d70fcp-1
+0x1.efbd32p-2
+0x1.9299d8p-1
+0x1.bb034ep-1
+-0x1.808ed2p-1
+0x1.8ef63ep-2
+0x1.9eae1ep-1
+0x1.a00f5ap-2
+0x1.c37984p-1
+-0x1.6749c4p-1
+-0x1.e11bc8p-1
+-0x1.d7ef1p-2
+0x1.996928p-8
+-0x1.a465p-2
+0x1.19ad9p-1
+0x1.c08a68p-4
+0x1.accc74p-1
+0x1.8dafbep-3
+-0x1.5e3ff4p-1
+0x1.bed1d8p-2
+-0x1.ccc46cp-1
+0x1.3d4ddcp-4
+-0x1.109f5ep-4
+0x1.f06016p-2
+-0x1.226df4p-1
+-0x1.d8c454p-3
+0x1.3b51fp-1
+0x1.48034cp-1
+0x1.bfab58p-1
+0x1.62c1dap-2
+-0x1.94cf38p-1
+-0x1.2ba57p-2
+-0x1.8bd6d4p-3
+-0x1.c8765ep-3
+0x1.76602cp-1
+0x1.5199f2p-5
+-0x1.6c29f2p-2
+-0x1.249272p-1
+-0x1.f8fdd4p-2
+-0x1.0ea6p-2
+0x1.920a04p-2
+0x1.05214ep-1
+-0x1.586f58p-2
+0x1.949c0ep-1
+0x1.dc91d4p-1
+-0x1.2963e2p-1
+-0x1.487a7p-2
+0x1.3ac622p-1
+-0x1.36b172p-2
+0x1.4aad18p-1
+0x1.ab09c6p-3
+-0x1.3096f2p-1
+-0x1.2fd0a4p-5
+-0x1.2b1e0ap-2
+0x1.9fb1f6p-5
+-0x1.5e756cp-2
+0x1.893554p-1
+-0x1.af32fcp-1
+0x1.90cc54p-1
+0x1.e66f12p-4
+-0x1.cce3ep-2
+0x1.4aa434p-1
+-0x1.8d806p-4
+0x1.bf6c4p-5
+-0x1.1fd37cp-3
+0x1.4f1ae2p-4
+-0x1.643edap-4
+-0x1.cc291p-1
+0x1.6d9074p-3
+0x1.68c23cp-1
+-0x1.cfadf6p-2
+-0x1.8d6f88p-1
+-0x1.bb0ed8p-2
+-0x1.f591e4p-2
+-0x1.021a66p-1
+-0x1.3c23d6p-1
+0x1.2e05dap-2
+-0x1.2620a2p-1
+0x1.d07da2p-2
+0x1.aa8a72p-2
+0x1.416f4ap-3
+0x1.bc0a68p-1
+-0x1.fda962p-4
+-0x1.ec6818p-6
+-0x1.833db8p-2
+-0x1.7f61d2p-1
+0x1.024df6p-2
+-0x1.5943f8p-1
+0x1.c85926p-1
+0x1.aa2ef8p-4
+-0x1.62cb9cp-3
+-0x1.13f79ap-1
+-0x1.63d7ap-1
+0x1.ebe976p-1
+-0x1.c8e8fcp-1
+-0x1.3dc446p-2
+0x1.6025cep-1
+-0x1.f46664p-2
+0x1.aa94dcp-1
+-0x1.63dbd4p-2
+-0x1.a56f32p-1
+-0x1.7dde54p-3
+0x1.10379ap-2
+-0x1.fffc48p-1
+-0x1.1884dap-3
+0x1.1ac93ap-2
+-0x1.271b4ap-1
+-0x1.9d8cecp-3
+-0x1.b48f3ep-1
+0x1.bfcad2p-1
+0x1.24befap-4
+0x1.0c27a2p-1
+0x1.7e9f62p-1
+0x1.eb35c2p-1
+0x1.8429d6p-1
+0x1.7fb05cp-3
+0x1.be6018p-1
+0x1.58d5d8p-2
+0x1.b793e2p-2
+-0x1.1f946p-2
+0x1.f54474p-3
+-0x1.50f358p-3
+0x1.0b0454p-2
+-0x1.3f360cp-3
+0x1.502514p-4
+0x1.3505fap-3
+-0x1.e6a7ep-2
+0x1.c08228p-1
+0x1.e7b80ep-1
+0x1.63be7ap-2
+0x1.a9010cp-1
+0x1.7b04bep-1
+0x1.883e4p-2
+0x1.09b27ap-1
+-0x1.4a1452p-3
+0x1.08b332p-2
+-0x1.dfc0f8p-1
+-0x1.bf7c4ap-5
+0x1.61aaeap-4
+-0x1.30968cp-1
+0x1.a8f706p-2
+0x1.b080bap-2
+0x1.7e7c74p-2
+-0x1.6e6d14p-2
+0x1.bd55dap-5
+0x1.088a74p-1
+-0x1.03b74cp-1
+-0x1.f7a74ep-3
+-0x1.ff6ad6p-8
+0x1.2df69ap-6
+-0x1.cd8534p-3
+0x1.1632p-1
+0x1.3c698cp-1
+-0x1.fbedep-1
+0x1.0aaaccp-1
+0x1.35286p-3
+0x1.64cbacp-5
+-0x1.37c9c4p-4
+0x1.d9a7a8p-1
+-0x1.167122p-1
+-0x1.41212ep-6
+-0x1.90f75ep-3
+-0x1.9fc096p-2
+-0x1.1ee676p-1
+0x1.e7703cp-1
+-0x1.5df438p-1
+0x1.a758e6p-1
+0x1.025688p-3
+0x1.b599e4p-1
+-0x1.b48dc6p-1
+0x1.626212p-2
+-0x1.8fa66cp-1
+0x1.44f5bcp-1
+0x1.8ef52ep-1
+-0x1.43a1fep-1
+0x1.f000eep-3
+-0x1.f3038ep-2
+0x1.6d5e1ap-1
+-0x1.1c6ba4p-1
+-0x1.b0e4a4p-2
+-0x1.d4641p-1
+0x1.e5311cp-1
+0x1.3d12ecp-1
+0x1.3fcap-1
+0x1.72bcecp-2
+0x1.251582p-1
+-0x1.1aee52p-4
+-0x1.af3e32p-1
+0x1.80b886p-1
+0x1.16302ap-1
+0x1.2aaa8p-3
+0x1.b25cb8p-1
+0x1.0a96f4p-1
+0x1.4cd3c8p-2
+0x1.89cb4p-1
+-0x1.6835ap-3
+0x1.310dd8p-3
+0x1.f056dp-1
+-0x1.ec7464p-1
+-0x1.858fd8p-5
+-0x1.a71fep-1
+-0x1.db93b6p-1
+-0x1.49ae86p-1
+0x1.4bcdd6p-3
+0x1.3feb8cp-1
+-0x1.bdf40ap-2
+0x1.c145f2p-1
+-0x1.cc49f4p-2
+0x1.e58a0ep-2
+-0x1.6a4092p-1
+0x1.1abd76p-1
+0x1.78ccb8p-1
+0x1.4a1984p-2
+-0x1.04033cp-1
+-0x1.e27bfcp-2
+-0x1.e1c84p-9
+0x1.0e21bcp-1
+0x1.3264fep-1
+0x1.01752p-4
+-0x1.44e8bap-2
+0x1.4381aep-3
+-0x1.93fb04p-2
+0x1.8b7962p-8
+0x1.3badfcp-1
+0x1.364794p-5
+0x1.74cea4p-1
+0x1.b0ddap-4
+0x1.d2c372p-1
+0x1.eaac02p-1
+-0x1.accac2p-2
+-0x1.7ff272p-4
+0x1.4a89f6p-2
+0x1.ee6c88p-4
+0x1.4c684p-1
+-0x1.1a9f2ap-3
+-0x1.dc4b62p-2
+0x1.905b2p-3
+-0x1.c8e64cp-1
+-0x1.f8919ap-1
+-0x1.0c1b5p-8
+0x1.21079cp-1
+0x1.01a876p-1
+0x1.b8bbf8p-1
+-0x1.1b3b42p-1
+0x1.21387cp-2
+-0x1.1e50bp-2
+-0x1.8f2fep-2
+-0x1.ad0b14p-3
+-0x1.db3812p-2
+0x1.54958p-1
+-0x1.0f564ep-1
+-0x1.00e4f8p-2
+-0x1.14a6f8p-1
+-0x1.0ecd58p-2
+-0x1.b7f102p-3
+-0x1.20bb2ep-4
+-0x1.431b78p-3
+-0x1.8e805cp-3
+-0x1.ee4662p-5
+0x1.f6303p-1
+-0x1.8e728p-1
+0x1.35a89cp-1
+0x1.4e81bap-1
+0x1.baa108p-2
+-0x1.25e69ep-1
+-0x1.7a7936p-1
+0x1.10886ep-3
+-0x1.644314p-2
+0x1.7dfbfep-1
+-0x1.03e89p-1
+0x1.4be98ep-3
+0x1.c98a1ep-1
+-0x1.f65906p-4
+0x1.c511d2p-1
+0x1.640906p-1
+0x1.094064p-1
+-0x1.fe190ap-1
+0x1.0b88cep-1
+0x1.8caa46p-1
+-0x1.5b9b36p-1
+0x1.a430eap-3
+0x1.2ef038p-2
+-0x1.2bbf22p-3
+-0x1.f1adbp-3
+-0x1.be4916p-1
+-0x1.47c608p-1
+-0x1.674ad2p-1
+-0x1.69ba6ap-1
+0x1.4e51cap-1
+-0x1.22b2eep-1
+0x1.909d42p-1
+-0x1.130f9cp-6
+-0x1.f41da2p-3
+-0x1.44ba6cp-1
+0x1.b36c62p-2
+-0x1.104a9ep-1
+-0x1.5448f6p-2
+0x1.5227f6p-2
+0x1.9ff43p-1
+0x1.d0784p-1
+0x1.86b6e2p-1
+0x1.adc052p-2
+0x1.969c08p-1
+-0x1.ea0f2ep-1
+-0x1.293046p-2
+0x1.85f258p-1
+# Random inputs in the range [1.000000e+00,8.388608e+06]
+## name: workload-1
+0x1.a01ddap+21
+0x1.6b3482p+20
+0x1.31a874p+22
+0x1.3456acp+14
+-0x1.2df87ep+19
+0x1.4acfbp+22
+0x1.aa832ap+22
+0x1.8fdc3cp+21
+0x1.8f67bap+20
+0x1.b7ab96p+22
+-0x1.9de762p+22
+0x1.1178aep+22
+-0x1.0ff356p+21
+0x1.7dd248p+22
+-0x1.87b7f6p+20
+-0x1.ad6f72p+19
+-0x1.88054cp+22
+0x1.ef65p+21
+0x1.88e23p+20
+-0x1.866016p+22
+0x1.aea636p+22
+0x1.0f6d82p+20
+-0x1.381f5cp+22
+-0x1.becea2p+20
+-0x1.b358a6p+20
+-0x1.070b28p+22
+0x1.c71602p+22
+-0x1.d5ba82p+20
+-0x1.d52b2cp+22
+-0x1.df2cd4p+22
+0x1.99c606p+22
+-0x1.43f0dep+22
+0x1.04169ap+22
+0x1.377344p+22
+0x1.02253p+22
+-0x1.b4a2b4p+22
+-0x1.affce6p+22
+0x1.8b29d4p+22
+0x1.399aecp+21
+0x1.72eed4p+20
+-0x1.4ce24ep+22
+-0x1.26a0e4p+20
+0x1.01908cp+22
+0x1.62e086p+22
+-0x1.1019fep+22
+0x1.cee1acp+22
+-0x1.b13cecp+21
+0x1.e535ep+21
+-0x1.c68488p+21
+0x1.2475acp+20
+0x1.f46252p+16
+0x1.d4772cp+22
+0x1.599246p+18
+0x1.c8a668p+21
+0x1.cda154p+22
+0x1.8c6c48p+22
+-0x1.80c80ap+21
+-0x1.2c06cp+21
+0x1.53a9a2p+18
+0x1.549b12p+22
+-0x1.de53ep+16
+-0x1.4df2bap+18
+-0x1.66b79cp+21
+0x1.827454p+22
+0x1.41c47cp+22
+0x1.b28074p+22
+0x1.c5d272p+21
+0x1.bd3d06p+20
+-0x1.dafd06p+18
+0x1.69372ap+21
+-0x1.80d61ap+20
+-0x1.7864fep+22
+0x1.67563p+21
+0x1.f02256p+19
+-0x1.4f923p+21
+0x1.4c15fep+21
+-0x1.02f0ep+22
+-0x1.928f24p+22
+-0x1.366b58p+22
+-0x1.635bbap+21
+0x1.7d9438p+20
+0x1.31314cp+22
+0x1.762e04p+20
+0x1.4a271ep+22
+-0x1.be90e2p+21
+-0x1.98769cp+22
+-0x1.299a92p+21
+0x1.320216p+12
+-0x1.7d6a4ap+22
+-0x1.c6bcbep+20
+-0x1.7ed15ap+20
+0x1.ef1b92p+22
+-0x1.670238p+22
+-0x1.aa7e92p+22
+-0x1.b70d0cp+19
+-0x1.c61afp+20
+-0x1.63197cp+21
+-0x1.6d0e14p+22
+0x1.61b6e6p+22
+0x1.8c43p+22
+-0x1.0b3ddcp+19
+0x1.e6ec94p+22
+-0x1.9d9c2ap+22
+0x1.c551cap+22
+-0x1.7f767ap+22
+-0x1.d578b8p+22
+0x1.afbb36p+22
+0x1.42be34p+20
+-0x1.8286ccp+22
+0x1.de62cep+22
+-0x1.c6336ap+20
+-0x1.ad88b2p+21
+-0x1.6e6bb4p+22
+-0x1.447264p+22
+-0x1.e0ad98p+22
+-0x1.0424fp+22
+-0x1.a52106p+22
+-0x1.849974p+21
+0x1.7ec776p+20
+0x1.faf3cap+22
+-0x1.55a2a4p+22
+-0x1.5599eep+21
+0x1.45ff72p+17
+-0x1.26378p+20
+-0x1.efaaf8p+22
+-0x1.48cb24p+22
+0x1.3f2bbep+22
+-0x1.b51bc6p+22
+0x1.d923d6p+20
+0x1.6a6bcep+20
+0x1.935426p+22
+0x1.648ea4p+22
+-0x1.c2cceap+21
+-0x1.4c0b78p+22
+-0x1.95e3fep+21
+-0x1.b14ed6p+21
+0x1.c79dap+21
+-0x1.e04f8ep+21
+0x1.ff1502p+21
+-0x1.e43e56p+19
+-0x1.c1c2eep+22
+0x1.d36a46p+22
+-0x1.da27f2p+19
+-0x1.d3dd1cp+22
+-0x1.73a14p+20
+0x1.317fd4p+20
+0x1.1a575cp+14
+0x1.402b44p+21
+-0x1.980b5ap+19
+-0x1.eaf1fcp+22
+-0x1.cf6b8cp+20
+0x1.24191ep+21
+-0x1.23698ep+20
+0x1.def77cp+20
+-0x1.143756p+21
+0x1.646ca8p+19
+0x1.7fb9f6p+21
+-0x1.9be854p+20
+-0x1.952dacp+21
+-0x1.ef2dbcp+21
+0x1.6faa84p+22
+-0x1.02d9fep+21
+-0x1.0dc5aap+22
+-0x1.ee75ecp+22
+-0x1.63cc36p+20
+-0x1.42601ap+22
+0x1.a3bdaap+22
+0x1.fd7a5ap+20
+0x1.bc588p+22
+-0x1.d82b86p+22
+-0x1.42437ep+22
+0x1.ffde12p+22
+-0x1.213236p+22
+-0x1.105102p+21
+0x1.c438ep+22
+0x1.ca1fd2p+22
+-0x1.a980b2p+22
+0x1.dcb92cp+22
+0x1.fe7a64p+21
+-0x1.55b7f4p+21
+0x1.c93deap+22
+0x1.54b9e6p+20
+-0x1.4817d2p+22
+0x1.5e9e8p+21
+-0x1.a3a9cp+21
+-0x1.1ac39ep+21
+0x1.e861f6p+20
+-0x1.c73196p+19
+-0x1.b9c4a4p+21
+-0x1.9cc12ep+21
+0x1.03d55ep+20
+0x1.ba9d98p+22
+0x1.4fab32p+22
+-0x1.474b64p+22
+-0x1.00cd22p+21
+-0x1.66bee6p+20
+-0x1.30306ap+21
+-0x1.7d94b4p+20
+0x1.466d0cp+22
+0x1.b3160ep+22
+-0x1.ab1ca8p+18
+-0x1.bea762p+22
+-0x1.78aeeap+22
+0x1.cd33aap+21
+0x1.64b778p+21
+0x1.7b2852p+21
+-0x1.186bap+22
+-0x1.0f98fcp+21
+-0x1.299bdp+22
+0x1.e29deap+20
+0x1.84541ap+18
+-0x1.817baep+22
+-0x1.412a6p+22
+0x1.deadap+18
+0x1.6674d2p+21
+-0x1.489532p+18
+-0x1.448b8p+20
+-0x1.71ca36p+17
+0x1.7de39ep+22
+-0x1.3e1ab8p+21
+0x1.7c48cap+22
+0x1.6225ecp+22
+0x1.8665e2p+22
+0x1.d75c12p+22
+0x1.df3ef6p+22
+0x1.a8a794p+22
+-0x1.622f08p+19
+0x1.ff4c2cp+21
+0x1.64219p+22
+0x1.050f9ep+22
+0x1.6ceffep+22
+-0x1.f5fe7ap+22
+0x1.c261aep+22
+-0x1.75e02ap+22
+-0x1.d6bd52p+22
+-0x1.944cb4p+22
+0x1.ca4252p+22
+-0x1.baae68p+22
+-0x1.80fb16p+20
+0x1.b38536p+17
+0x1.2d5668p+22
+0x1.9942f2p+22
+0x1.e5e8a4p+22
+-0x1.15f5d6p+21
+0x1.984a34p+22
+0x1.35f2c4p+21
+0x1.61b4bcp+22
+0x1.5481bep+22
+0x1.cfd866p+20
+-0x1.fd3fe2p+21
+-0x1.089cacp+21
+-0x1.27ac6p+22
+0x1.8adeccp+20
+0x1.549c7ep+22
+0x1.dc1008p+20
+0x1.2bd772p+18
+-0x1.048c4ep+22
+-0x1.29777ap+22
+-0x1.a4da36p+21
+0x1.91a05p+22
+-0x1.1378bap+22
+0x1.03509ap+22
+-0x1.7a3274p+18
+-0x1.1d18eep+21
+-0x1.b678cp+21
+-0x1.e5e9a4p+21
+0x1.4dd8ccp+21
+0x1.757e34p+21
+0x1.d91a3ap+21
+0x1.86ad2ep+22
+-0x1.921beap+21
+-0x1.890e78p+21
+0x1.ed392ep+22
+-0x1.f468eap+20
+-0x1.20241ep+18
+-0x1.93509ep+22
+0x1.52d658p+22
+0x1.844284p+21
+0x1.014f14p+19
+-0x1.04d34ep+22
+0x1.48a592p+18
+0x1.2cbf74p+21
+0x1.9c55eap+22
+0x1.d06e1p+20
+0x1.0395dp+22
+-0x1.47cda2p+22
+0x1.bdddf2p+22
+-0x1.6845aap+22
+-0x1.a7e40ap+21
+0x1.d5c742p+22
+-0x1.9a0b7ep+22
+-0x1.f6661p+17
+0x1.e93668p+22
+0x1.3a975cp+21
+0x1.b75444p+21
+-0x1.87178cp+22
+0x1.8d7494p+20
+0x1.9212c8p+21
+0x1.594a52p+22
+0x1.0033p+22
+-0x1.baf8ccp+20
+-0x1.82d4ccp+21
+0x1.01d4dap+21
+0x1.7a6c02p+21
+0x1.6c0826p+21
+-0x1.22aecap+22
+-0x1.c0b7f2p+22
+0x1.91619p+21
+0x1.3fd74ap+22
+-0x1.ff2732p+22
+0x1.bea5cep+22
+-0x1.816b54p+18
+0x1.1b6ed4p+22
+-0x1.65bf36p+22
+0x1.6bf58ap+22
+-0x1.47466cp+22
+0x1.8e8508p+22
+-0x1.2c227cp+16
+-0x1.28f9cp+22
+-0x1.b02d6ap+22
+-0x1.7fc8dcp+22
+0x1.1c3c82p+22
+0x1.fe8f1ep+20
+0x1.2b050ap+21
+-0x1.e42212p+20
+-0x1.31e8f6p+21
+-0x1.3dceb8p+22
+0x1.8a4146p+20
+0x1.cb395p+21
+-0x1.262cdcp+21
+0x1.04aecap+20
+-0x1.4e8d3ep+22
+0x1.e64ff2p+22
+-0x1.5f998cp+22
+-0x1.a8abp+19
+-0x1.4a369ap+22
+-0x1.cee32ap+16
+-0x1.26eab8p+21
+0x1.d6c652p+22
+-0x1.3fcd62p+22
+0x1.1923e8p+22
+-0x1.80c142p+19
+-0x1.b9ab54p+19
+-0x1.8bbfe2p+22
+0x1.ebbdb2p+22
+-0x1.7e120ap+19
+-0x1.aac25cp+21
+-0x1.da3362p+22
+-0x1.559aa2p+21
+-0x1.accf42p+22
+0x1.056f7p+22
+-0x1.cf8736p+21
+0x1.1229d2p+22
+-0x1.cf8ddp+21
+-0x1.5edc48p+22
+-0x1.23c8b4p+21
+0x1.9e9c64p+22
+0x1.16a4e8p+22
+-0x1.429726p+21
+-0x1.ab7d6ap+22
+0x1.94367ap+21
+0x1.04a63cp+21
+0x1.891ce6p+20
+-0x1.fb4174p+21
+0x1.d2aa0cp+22
+-0x1.422cb4p+22
+-0x1.0a905ep+22
+0x1.fac9fcp+22
+0x1.261e68p+22
+0x1.195a18p+19
+-0x1.753cep+19
+0x1.2f5c18p+21
+-0x1.dcf4bp+22
+0x1.b931dcp+22
+0x1.3b7e0ap+21
+-0x1.0ab3cp+22
+-0x1.791f3ap+22
+0x1.8d1654p+22
+0x1.fea07ap+22
+0x1.f179p+22
+-0x1.2d0d1p+22
+0x1.217f7p+22
+-0x1.bb3ap+20
+0x1.c231e6p+19
+-0x1.4e899cp+22
+0x1.27a2fp+21
+0x1.deaf9p+21
+-0x1.c0aefep+21
+-0x1.fd99aep+18
+-0x1.b99d56p+21
+0x1.62232ep+16
+-0x1.f9be5ap+22
+0x1.7e5152p+22
+-0x1.4971fep+20
+0x1.81a8dp+22
+0x1.a81608p+22
+0x1.49a77cp+22
+0x1.dfd2bp+22
+-0x1.174206p+22
+-0x1.ff4456p+22
+0x1.436cfap+22
+0x1.09071ep+21
+-0x1.fe4512p+22
+0x1.61fadcp+21
+0x1.79dcb2p+19
+0x1.9bc13cp+22
+-0x1.991764p+21
+-0x1.382a62p+13
+0x1.e5c0eep+22
+-0x1.a85e4p+19
+0x1.c6ee0cp+22
+-0x1.9d37aap+22
+0x1.925516p+22
+-0x1.ed447cp+22
+0x1.e2e72ap+22
+0x1.7c3c3ep+22
+0x1.309fe4p+21
+-0x1.5b0ee2p+20
+0x1.271022p+20
+0x1.9ac67cp+22
+0x1.c04e32p+20
+-0x1.e17be6p+21
+0x1.ad8cccp+15
+0x1.2428bap+22
+-0x1.21b3bap+22
+0x1.ab2b5p+21
+0x1.bfc498p+22
+0x1.09d3c2p+22
+-0x1.fc219p+22
+-0x1.4aac04p+22
+0x1.cff22cp+21
+0x1.8577bp+22
+-0x1.0fcd4ep+22
+0x1.9907e6p+19
+0x1.4d9fe6p+21
+-0x1.9c5f3ap+18
+-0x1.9fad26p+22
+-0x1.000228p+22
+0x1.65569p+22
+-0x1.8dfbeap+18
+-0x1.a07742p+22
+-0x1.0d463ep+22
+0x1.611158p+22
+-0x1.a9b94ep+22
+-0x1.22ee96p+22
+0x1.c1712cp+22
+-0x1.60b74cp+21
+0x1.86d7aep+21
+0x1.ed9f7p+22
+0x1.b076b6p+22
+-0x1.746fa6p+20
+-0x1.a54e5p+17
+0x1.3886b8p+20
+0x1.5edaf4p+21
+-0x1.07932cp+22
+0x1.5410ccp+22
+0x1.136bacp+22
+-0x1.99fae8p+19
+-0x1.603b7p+21
+0x1.dd64fep+21
+-0x1.0c402ep+22
+0x1.c8efb6p+20
+0x1.683768p+20
+-0x1.d26e8ep+22
+-0x1.e94dc2p+20
+0x1.4f7cp+16
+0x1.5496cep+21
+0x1.3d8c38p+22
+-0x1.a4b3f6p+21
+0x1.f0c3fcp+22
+0x1.8eccd2p+22
+0x1.1d3abp+19
+0x1.4a67b4p+20
+-0x1.50a7dcp+18
+-0x1.9c618ap+19
+0x1.83e81ap+22
+0x1.2b2eecp+22
+-0x1.2acd64p+22
+0x1.f3252ap+22
+-0x1.3f2952p+22
+-0x1.50c354p+21
+0x1.0d11aep+22
+-0x1.017c22p+22
+0x1.c542d8p+22
+-0x1.ebd094p+22
+-0x1.0b3db8p+21
+0x1.387216p+22
+0x1.ac50c8p+20
+-0x1.d8f136p+22
+-0x1.a3ffcep+20
+0x1.f1cf74p+21
+0x1.31d962p+22
+0x1.4b7f8cp+20
+-0x1.271054p+22
+0x1.63fd76p+22
+0x1.8f4abcp+22
+0x1.2915bcp+20
+-0x1.ddee96p+21
+-0x1.3439ecp+21
+0x1.19f3eap+21
+-0x1.c5a358p+22
+-0x1.a9ab98p+18
+-0x1.2a6044p+22
+0x1.45771p+22
+0x1.1cdbf2p+22
+-0x1.f82ec4p+19
+0x1.72f5e6p+22
+-0x1.8c0f34p+22
+0x1.08b366p+22
+0x1.5f147ap+22
+-0x1.dadbap+22
+0x1.3ceeccp+21
+-0x1.da865ep+22
+-0x1.e0d8a4p+22
+0x1.66458ap+20
+0x1.ceee2p+21
+-0x1.697a6ap+22
+0x1.d38732p+22
+-0x1.2d43aep+21
+0x1.4b13fp+22
+0x1.418772p+20
+-0x1.9030aep+21
+0x1.1dd99ap+22
+-0x1.3fcd1p+22
+-0x1.857204p+22
+0x1.26d3a2p+19
+-0x1.6ff26ep+18
+0x1.168f28p+22
+0x1.a5657p+20
+0x1.f69724p+22
+0x1.36f678p+22
+0x1.e54402p+22
+-0x1.b68e2cp+22
+-0x1.01a59p+18
+0x1.1b54aep+22
+0x1.fba968p+21
+-0x1.e37e34p+19
+0x1.0d6764p+21
+0x1.3a7f1p+22
+0x1.0e21eap+18
+0x1.ae9604p+21
+-0x1.599a22p+22
+-0x1.af7974p+22
+-0x1.418cd2p+22
+0x1.2143aap+21
+-0x1.e470ap+21
+-0x1.f1461cp+22
+-0x1.261914p+21
+0x1.35791p+21
+-0x1.69ba86p+20
+-0x1.152044p+21
+0x1.add034p+22
+-0x1.7c4e58p+22
+0x1.838bp+22
+-0x1.a9b9c4p+20
+-0x1.2d86b8p+21
+0x1.33d608p+20
+0x1.8d7ed2p+21
+-0x1.7efbbap+20
+0x1.db38b6p+22
+0x1.bccccep+20
+-0x1.a78144p+20
+0x1.77d234p+22
+0x1.f82dap+22
+-0x1.ed39b6p+21
+-0x1.e12cd2p+19
+-0x1.4b1808p+22
+-0x1.68938p+22
+-0x1.7128b2p+20
+0x1.000a9cp+22
+-0x1.bb88f2p+20
+0x1.c9d636p+22
+0x1.8c4bbap+22
+-0x1.86bbd8p+22
+0x1.85f144p+22
+-0x1.8f518cp+20
+-0x1.07d30cp+21
+0x1.58dfc8p+22
+-0x1.c3907ep+22
+-0x1.bea2b8p+21
+-0x1.e71b82p+20
+-0x1.dd1e4cp+22
+0x1.15ca44p+22
+0x1.5d2dp+22
+-0x1.3b772p+22
+-0x1.dd695cp+20
+0x1.c7614cp+21
+-0x1.b517aep+17
+-0x1.3cc14ap+22
+-0x1.3a475ep+19
+-0x1.42e5a2p+22
+0x1.b6aeb8p+20
+-0x1.6ffebp+22
+-0x1.b8c234p+22
+-0x1.4be044p+22
+0x1.b5a0dp+22
+-0x1.d23aap+21
+-0x1.51005cp+21
+0x1.f96592p+19
+-0x1.e57b7ap+22
+0x1.65298ap+21
+0x1.eb9ba2p+20
+0x1.c4d706p+22
+-0x1.091606p+22
+-0x1.b38e2p+21
+-0x1.67624p+22
+-0x1.02d60ap+22
+0x1.9526c2p+22
+0x1.2e2c5ap+22
+0x1.e98742p+21
+-0x1.4f5428p+18
+0x1.1ad4a4p+22
+0x1.c63614p+22
+0x1.0bddb6p+17
+-0x1.bcbd42p+22
+-0x1.3be0a8p+20
+0x1.5b606cp+22
+0x1.451fe4p+22
+-0x1.31484cp+19
+-0x1.5b4ec4p+22
+0x1.9b2f32p+21
+-0x1.28ab62p+22
+0x1.d6b73p+22
+-0x1.c12df6p+19
+0x1.2f59dp+15
+0x1.8776bp+22
+-0x1.3f254p+16
+-0x1.ca0b92p+20
+-0x1.e7a01ep+22
+-0x1.25b7f8p+22
+-0x1.2f7b86p+22
+0x1.d023e8p+21
+0x1.97cfecp+22
+-0x1.b2377ap+18
+0x1.76e4a4p+20
+-0x1.4788bcp+22
+-0x1.beedbcp+22
+-0x1.2219fcp+22
+0x1.2a5606p+15
+-0x1.b6407ap+22
+-0x1.a4caa8p+20
+0x1.0507a2p+21
+0x1.b37808p+18
+0x1.cb2bb2p+20
+-0x1.16cebcp+19
+-0x1.6d55c2p+22
+0x1.bffd2ep+22
+-0x1.4e335ep+18
+0x1.997dp+19
+-0x1.26716ap+22
+-0x1.a153aep+22
+0x1.189f6p+21
+0x1.165288p+20
+0x1.101728p+22
+-0x1.acdaa2p+20
+0x1.6acdd6p+18
+0x1.79c9ccp+22
+0x1.5506fcp+18
+0x1.d3e7d6p+21
+0x1.b4a36ep+22
+-0x1.d1707p+19
+0x1.f2f0f6p+18
+-0x1.1bad7ap+22
+-0x1.46c8b6p+21
+-0x1.0b9ff6p+19
+-0x1.4e14b2p+22
+0x1.183466p+22
+0x1.308796p+22
+-0x1.ea844p+21
+0x1.61fbeep+22
+0x1.ef11ecp+22
+-0x1.db6e2cp+18
+-0x1.0247fap+22
+0x1.ad39eep+21
+-0x1.14b24cp+21
+-0x1.17b69cp+22
+-0x1.948454p+22
+-0x1.9d1628p+21
+-0x1.56981cp+22
+0x1.ef8dd8p+22
+0x1.71dbp+18
+-0x1.14bb4p+22
+0x1.59341ep+22
+-0x1.2202d6p+20
+0x1.d0fdf6p+22
+-0x1.f4c79cp+22
+0x1.c3b3bap+22
+0x1.8df704p+22
+0x1.05289cp+21
+0x1.357c82p+21
+-0x1.efa558p+22
+0x1.484c5cp+20
+-0x1.61aa5ap+22
+0x1.9aa0e4p+20
+0x1.8adb2cp+22
+-0x1.877348p+22
+0x1.42bddep+22
+-0x1.206f16p+20
+-0x1.e4ff3ap+22
+0x1.6aa32ap+22
+0x1.d9088cp+20
+-0x1.f43fccp+18
+-0x1.5a92e2p+22
+-0x1.ab530cp+22
+0x1.b12ep+22
+0x1.e86c04p+18
+-0x1.d77becp+21
+0x1.6dc178p+22
+0x1.77671p+22
+0x1.945ae2p+22
+-0x1.91ed58p+19
+-0x1.92cc1p+22
+0x1.1ba054p+20
+0x1.00e2c4p+21
+-0x1.3bbddp+20
+0x1.5cd4e2p+21
+0x1.c06a08p+22
+0x1.f56c38p+22
+0x1.3b5e4ep+20
+0x1.ff5814p+22
+0x1.c0e652p+22
+0x1.b5ebd8p+22
+-0x1.220248p+19
+-0x1.7fecfap+22
+0x1.5eff0ap+22
+0x1.aafc82p+22
+0x1.b16bf8p+22
+-0x1.032a4ap+21
+-0x1.1d28eap+22
+-0x1.5d7884p+16
+-0x1.6d682cp+21
+0x1.bd3508p+21
+0x1.a5c9acp+22
+-0x1.924746p+22
+0x1.037a0ep+22
+0x1.b9cdb8p+21
+-0x1.4c57e2p+22
+0x1.6086aep+20
+-0x1.1021ap+22
+0x1.628486p+21
+-0x1.a5350ap+22
+-0x1.fae458p+21
+-0x1.24cfccp+21
+-0x1.09406p+20
+-0x1.9973d8p+21
+-0x1.ea09c2p+22
+-0x1.54dea8p+21
+0x1.6bf22p+22
+0x1.1c05e6p+22
+-0x1.24b02cp+21
+0x1.389216p+18
+-0x1.ab5f86p+22
+-0x1.b55b84p+22
+-0x1.f97f4ep+21
+-0x1.ad9732p+22
+0x1.cfe814p+22
+0x1.2616dap+22
+-0x1.e569acp+22
+-0x1.1cc17p+22
+0x1.ea9e1ep+22
+0x1.22044ap+20
+0x1.d698d8p+21
+-0x1.f912e2p+21
+0x1.24a892p+22
+0x1.392ce4p+22
+-0x1.167412p+22
+0x1.ee1e02p+21
+-0x1.a48ecap+22
+-0x1.74b9c2p+22
+-0x1.fd1c7p+21
+-0x1.f86912p+22
+0x1.37ce34p+21
+-0x1.dcc8e8p+22
+-0x1.65110cp+22
+-0x1.22b6ep+20
+0x1.3d89eap+22
+0x1.e730fp+21
+-0x1.1caab4p+22
+0x1.2014f6p+15
+-0x1.a83d54p+22
+-0x1.3edcap+22
+-0x1.61c89ap+22
+-0x1.35f728p+22
+0x1.1b1ad4p+21
+-0x1.45a82p+22
+-0x1.62e10cp+21
+-0x1.e33368p+21
+0x1.8308ap+22
+0x1.f979a4p+22
+-0x1.3582f4p+18
+-0x1.74b3fp+21
+0x1.ea79a2p+22
+0x1.496374p+20
+-0x1.f5c1fcp+22
+0x1.99cc1ap+21
+0x1.bf9aep+22
+-0x1.bfc3f6p+21
+0x1.fa6d52p+21
+0x1.65384ep+18
+0x1.2746aap+21
+0x1.b4641p+22
+0x1.efb6fep+19
+0x1.ad642ep+21
+0x1.c949aep+22
+-0x1.61d1d2p+22
+-0x1.140438p+22
+-0x1.c88c0cp+16
+-0x1.3ed658p+19
+0x1.4f61bap+22
+0x1.b6f2dap+22
+0x1.c11412p+21
+0x1.26302ap+22
+-0x1.ac7df6p+21
+-0x1.17bb92p+21
+-0x1.fac33cp+22
+0x1.d9f048p+17
+0x1.728ddcp+22
+0x1.86340ap+22
+-0x1.d7bd1ep+22
+0x1.b4d5b8p+22
+0x1.ddf6acp+20
+-0x1.f78d8p+20
+0x1.922a74p+22
+0x1.6749c8p+22
+-0x1.9bb126p+22
+-0x1.1398e8p+19
+-0x1.fa759cp+22
+-0x1.efbe6cp+21
+0x1.c3430ap+19
+-0x1.48bd3ep+21
+-0x1.a892bap+22
+-0x1.f2a0a4p+21
+-0x1.1cf94ap+22
+-0x1.a8db04p+21
+0x1.a67544p+20
+-0x1.b56d6p+22
+-0x1.6a25d6p+22
+-0x1.cf057p+22
+-0x1.b8ddc6p+22
+-0x1.c1988ap+22
+-0x1.f52e2cp+22
+0x1.76dfb6p+22
+0x1.d0db9cp+22
+-0x1.b4d1c8p+22
+0x1.d271d2p+21
+-0x1.3fb9a8p+21
+0x1.30e9ep+22
+-0x1.ef1c1cp+20
+0x1.9cd9fep+20
+0x1.615d62p+22
+0x1.4d2d44p+22
+0x1.f79114p+22
+0x1.59c476p+22
+-0x1.93b2aep+22
+0x1.89a6a6p+21
+0x1.da3c54p+22
+-0x1.9fff4p+22
+-0x1.9a69e2p+18
+0x1.b556bp+21
+-0x1.9ea054p+22
+0x1.428fa4p+22
+-0x1.2da47ep+21
+0x1.a21aa6p+22
+-0x1.c8af86p+20
+-0x1.2dd0fp+22
+-0x1.621862p+20
+0x1.6355cap+19
+0x1.ad3246p+22
+-0x1.81c8e2p+22
+-0x1.bda18ep+21
+-0x1.e3f508p+20
+0x1.4b1b5p+19
+-0x1.06794cp+22
+-0x1.08e4dcp+15
+0x1.16a084p+19
+-0x1.6349eap+20
+0x1.b93496p+19
+-0x1.c83c42p+20
+-0x1.8785b6p+22
+0x1.7e63d8p+22
+-0x1.7e09c4p+22
+-0x1.7bcff6p+20
+0x1.cac5cp+22
+0x1.b4063cp+21
+0x1.bc01b6p+22
+0x1.4bf25cp+21
+0x1.3faa6cp+22
+0x1.6f665ap+22
+0x1.92cf38p+21
+-0x1.4075dp+19
+-0x1.c462d6p+22
+0x1.30e8f4p+22
+0x1.5b2368p+22
+-0x1.8d4cf4p+21
+0x1.7fc56p+21
+-0x1.2a160ep+22
+0x1.68c8d2p+22
+-0x1.afb074p+19
+-0x1.eafe04p+20
+-0x1.b90f0cp+21
+-0x1.860d78p+22
+0x1.67fe8ap+21
+-0x1.d7a22ap+20
+-0x1.ae4822p+19
+-0x1.11413ap+20
+-0x1.16d4a4p+20
+0x1.f311fp+20
+0x1.31248cp+21
+-0x1.cab132p+19
+0x1.fe7c52p+22
+-0x1.165e04p+22
+-0x1.a027e8p+22
+-0x1.7ec476p+19
+-0x1.bc84e2p+22
+-0x1.dc4244p+22
+0x1.368296p+22
+-0x1.6a6a36p+19
+0x1.441bccp+22
+0x1.fcee4ap+18
+0x1.54fcb4p+22
+0x1.2f65dep+21
+0x1.b98b9ep+21
+-0x1.a6ab06p+21
+-0x1.c9c37p+22
+-0x1.1ddcb2p+22
+-0x1.fac5acp+22
+0x1.ed3966p+22
+-0x1.b6877ap+22
+-0x1.779c2ep+22
+0x1.044f16p+22
+-0x1.cd7b9cp+17
+-0x1.2c212cp+19
+-0x1.f94bbp+21
+-0x1.2f583p+19
+0x1.db26c6p+22
+0x1.dd0394p+21
+0x1.f9ed9p+22
+-0x1.5f1c9p+22
+-0x1.6a8fd4p+18
+0x1.910d16p+22
+0x1.22a30cp+22
+-0x1.5d6e3ep+16
+-0x1.08d128p+21
+0x1.72f332p+22
+-0x1.20bf4ap+13
+-0x1.00ffaep+22
+-0x1.cb64aap+21
+-0x1.31e166p+22
+-0x1.2e6906p+19
+-0x1.06079cp+22
+-0x1.e029e4p+22
+0x1.49d78cp+18
+0x1.f1b1bap+21
+-0x1.0d770ep+22
+0x1.eb35ap+22
+0x1.b65b98p+22
+0x1.106c5ep+22
+0x1.e94f14p+22
+-0x1.70f8ap+19
+-0x1.392a7p+20
+0x1.852accp+17
+-0x1.1a2eaep+22
+0x1.815efep+22
+-0x1.282b92p+20
+-0x1.72dbbap+18
+0x1.069ef2p+22
+0x1.0f5142p+21
+-0x1.90113p+21
+-0x1.44c896p+20
+0x1.ceb3d8p+22
+-0x1.c854a4p+21
+0x1.e0a7d4p+22
+0x1.14e68p+19
+0x1.5e6258p+21
+0x1.d1a9eep+22
+0x1.ba1338p+22
+-0x1.50b346p+21
+-0x1.320048p+20
+-0x1.782324p+19
+-0x1.7ca3d6p+21
+0x1.2352dap+22
+0x1.e5f132p+21
+-0x1.6923p+22
+0x1.ca7ebcp+21
+-0x1.61c302p+18
+0x1.39f388p+22
+-0x1.2322d4p+19
+-0x1.9d0afcp+22
+-0x1.db4ab6p+22
+-0x1.fa3b34p+20
+0x1.8ccac4p+22
+-0x1.15a56cp+21
+-0x1.38581ep+21
+-0x1.47ab5cp+22
+0x1.befb72p+22
+-0x1.09589cp+19
+0x1.374f2p+22
+-0x1.4d0a32p+21
+0x1.a981cp+22
+0x1.0ee7c6p+19
+-0x1.32e8d4p+21
+-0x1.838c74p+22
+-0x1.327318p+22
+0x1.d68f72p+22
+0x1.386df4p+22
+-0x1.9eb5bep+19
+-0x1.20b3d2p+22
+-0x1.b83dd4p+22
+-0x1.8fdfdp+22
+0x1.69a752p+22
+-0x1.0e410cp+21
+0x1.ae355cp+22
+-0x1.d05ddp+22
+0x1.918e86p+20
+0x1.301cb6p+22
+-0x1.80b4d2p+22
+0x1.360854p+20
+-0x1.d0d91cp+22
+-0x1.8895c8p+20
+0x1.1ee546p+22
+-0x1.05186ep+22
+-0x1.30d56ap+22
+-0x1.e86f26p+21
+-0x1.589088p+22
+0x1.b921b8p+22
+0x1.8f2dd2p+20
+0x1.76d91ap+21
+-0x1.3f6b78p+21
+0x1.a189dap+22
+-0x1.d071cep+21
+0x1.4311bep+22
+-0x1.505afcp+22
+-0x1.09b0a2p+20
+-0x1.c95174p+22
+-0x1.e68e4p+22
+0x1.514616p+19
+0x1.f4739ap+18
+0x1.eca8aap+21
+-0x1.c79fcp+22
+-0x1.5e3716p+21
+0x1.278f68p+21
+-0x1.e4d9f4p+21
+0x1.67d30ep+22
+-0x1.de26a4p+22
+-0x1.691df2p+22
+0x1.1fa882p+21
+-0x1.6fb094p+22
+-0x1.4520c4p+21
+0x1.a387p+20
+0x1.3f32f2p+20
+-0x1.9c63aap+22
+0x1.72c1e2p+22
+-0x1.eff38ep+18
+-0x1.be5c42p+22
+0x1.780e22p+22
+0x1.d6365ap+21
+0x1.a67efp+20
+-0x1.993ca2p+20
+0x1.3e1edcp+22
+0x1.455f8cp+22
+0x1.53a6a6p+17
+-0x1.21349ep+22
+0x1.21bcfep+17
+0x1.84f092p+22
+0x1.10e7ep+22
+0x1.1000f8p+21
+0x1.080b36p+21
+0x1.18ec9ap+22
+0x1.4747c6p+22
+-0x1.e2404p+19
+-0x1.405786p+22
+0x1.8e1372p+21
+-0x1.2d9682p+19
+0x1.883f92p+22
+0x1.c362d6p+20
+-0x1.409c5ep+22
+0x1.54e9b4p+22
+-0x1.a66826p+22
+-0x1.386f9p+21
+0x1.37eb66p+20
+0x1.3e3dfcp+22
+-0x1.c9897ep+14
+0x1.05fcaap+19
+0x1.90be7p+22
+0x1.748c98p+22
+-0x1.190e82p+22
+0x1.3a595ap+22
+-0x1.ba18ecp+22
+-0x1.fb9a8ap+21
+0x1.f1ee62p+22
+0x1.97aa0ep+22
+0x1.9c0d28p+22
+0x1.701f8ap+19
+-0x1.fea642p+21
+-0x1.a49f98p+21
+0x1.002f2ap+22
+-0x1.3a8616p+22
+0x1.a37caep+20
+-0x1.53648ep+21
+0x1.0900f2p+19
+0x1.232c86p+20
+0x1.85acaep+22
+-0x1.0dd15ep+21
+0x1.71fb02p+21
+-0x1.a60c12p+19
+-0x1.3567d4p+21
+-0x1.c278f8p+22
+-0x1.a4857ep+22
+0x1.1d2ea6p+22
+0x1.799d92p+20
+0x1.90077ep+17
+0x1.255a26p+20
+-0x1.ab1e2p+22
+0x1.e41fa6p+18
+-0x1.187692p+21
+-0x1.ae6388p+20
+-0x1.33ec44p+22
+-0x1.11b1p+21
+0x1.7b7858p+22
+-0x1.4e7322p+22
+0x1.a38f9ap+16
+0x1.c048c6p+22
+-0x1.ea49e6p+22
+-0x1.93c9a8p+22
+0x1.a57364p+21
+0x1.4b892p+22
+0x1.7170bap+22
+0x1.792f2p+22
+0x1.d573ecp+22
+0x1.e173a4p+22
+-0x1.e93ac6p+21
+-0x1.76cab8p+20
+0x1.9c292cp+21
+0x1.76c2ap+20
+-0x1.dadd42p+22
+-0x1.142de8p+22
+0x1.ef2662p+22
+-0x1.b77b4ep+21
+-0x1.1827ap+22
+0x1.75d97cp+22
+-0x1.481c1p+22
+-0x1.a2f78ap+22
+-0x1.4cdc3ep+20
+-0x1.c55642p+21
+0x1.44e4d6p+22
+0x1.807bcp+22
+0x1.d43984p+21
+0x1.38639ep+22
+-0x1.aa01a6p+21
+0x1.6fe49p+22
+-0x1.e264c6p+21
+-0x1.3a9992p+19
+-0x1.410b74p+21
+-0x1.017458p+21
+-0x1.91e442p+22
+-0x1.ee77b6p+22
+0x1.1a673ap+22
+-0x1.0c7f3cp+22
+-0x1.4323dcp+22
+0x1.c3c2bap+20
+-0x1.d1882ep+22
+0x1.05d90cp+22
+0x1.5687acp+20
+0x1.45eb56p+21
+0x1.e197b4p+22
+-0x1.2d5288p+20
+-0x1.ccc18cp+22
+0x1.1bc7fep+22
+0x1.9e7426p+20
+-0x1.b3de3cp+21
+-0x1.5ea4c2p+22
+-0x1.59e526p+22
+-0x1.234b86p+22
+-0x1.86934cp+20
+0x1.825c98p+20
+-0x1.2ab36p+22
+-0x1.bc6c58p+22
+0x1.f5fb7ap+22
+0x1.17c516p+21
+0x1.8e575ep+22
+0x1.85f932p+19
+0x1.a32fb6p+19
+0x1.16e58ep+22
+-0x1.bc0b3cp+22
+-0x1.b686a8p+22
+-0x1.90496ep+21
+0x1.b34bb2p+22
+-0x1.8d11f2p+21
+-0x1.449c3ap+19
+0x1.b14b54p+22
+-0x1.d47474p+21
+0x1.908dc8p+19
+0x1.90b3dp+22
+0x1.d4fcdap+22
+0x1.b8857p+22
+0x1.d9268p+19
+-0x1.743bdap+21
+0x1.719a82p+21
+0x1.0a5066p+20
+0x1.c3d446p+22
+0x1.2a2914p+20
+-0x1.caba5ep+22
+0x1.e4c94ap+22
+0x1.c2e56ep+22
+0x1.21316ep+22
+-0x1.2ce28cp+19
+0x1.4918f2p+21
+-0x1.dbb0bap+22
+-0x1.1f1acep+22
+0x1.6588ecp+22
+0x1.876034p+22
+-0x1.d1dc8p+18
+-0x1.c982p+22
+0x1.943752p+21
+0x1.aece88p+22
+0x1.b86d58p+20
+-0x1.656eaap+19
+0x1.a4fce6p+22
+-0x1.c2924ep+22
+0x1.db53aap+22
+-0x1.4bf648p+22
+-0x1.8ec2e4p+22
+-0x1.3b64cap+21
+0x1.782566p+20
+0x1.5f4094p+20
+0x1.68e354p+22
+-0x1.563e14p+22
+-0x1.09b6d4p+22
+-0x1.cab858p+22
+-0x1.3a728ap+21
+-0x1.a829eap+22
+0x1.f7d842p+21
+0x1.f0ab34p+22
+-0x1.439714p+19
+0x1.9b2bdp+22
+-0x1.7811e8p+18
+-0x1.129378p+22
+0x1.f7d512p+22
+0x1.c74d54p+22
+0x1.d6b6f6p+22
+0x1.f8e3bp+21
+0x1.50487cp+21
+-0x1.daa638p+20
+-0x1.2383aap+21
+-0x1.cb6864p+20
+0x1.fd7bc2p+22
+0x1.6e5eb4p+22
+0x1.b62d6ap+22
+0x1.3b912p+21
+-0x1.c28708p+21
+-0x1.7a2bbp+22
+-0x1.b61c1ap+22
+-0x1.7ead6cp+22
+0x1.d2bbecp+20
+-0x1.fcd39p+22
+0x1.61c0fcp+15
+0x1.3b8cdp+22
+0x1.3a2c62p+21
+0x1.3ce774p+22
+-0x1.6d3c84p+22
+0x1.b96484p+22
+0x1.d06ff8p+22
+0x1.f00062p+22
+0x1.f2ae54p+22
+0x1.cfbed6p+22
+-0x1.d3f1c8p+22
+0x1.9df814p+21
+-0x1.27eb34p+22
+-0x1.3ba80ap+21
+0x1.f4a0ccp+22
+0x1.6fd548p+22
+0x1.9ff0aap+22
+-0x1.757a98p+21
+0x1.a87e5p+22
+-0x1.9a3d74p+22
+-0x1.c5c06ep+20
+0x1.42c6a2p+22
+-0x1.90c55ep+20
+0x1.487176p+18
+0x1.d9dd1p+22
+0x1.e16ac8p+20
+0x1.374c7p+21
+-0x1.821fb2p+22
+0x1.6b884cp+22
+0x1.afd59p+22
+-0x1.c2ff86p+22
+0x1.8206a2p+22
+-0x1.d97598p+22
+0x1.777a1ep+22
+0x1.5a9f86p+18
+-0x1.00fcacp+20
+-0x1.0bc666p+21
+0x1.c327dap+22
+0x1.f73d8ep+21
+0x1.2a1d9ep+22
+-0x1.39d6c2p+21
+0x1.bca1cep+22
+0x1.ce266cp+21
+-0x1.198e36p+21
+0x1.2995bep+20
+0x1.a24262p+22
+0x1.419ef8p+22
+0x1.a228bap+22
+-0x1.6d7a22p+21
+-0x1.a3e862p+22
+-0x1.9dd4e6p+21
+-0x1.fbc11ap+20
+-0x1.c658eep+21
+-0x1.e4cd18p+18
+0x1.17e01ep+22
+-0x1.5123fcp+21
+0x1.6967bcp+20
+0x1.29ea74p+22
+0x1.9fa93ep+22
+0x1.f8f57ep+20
+0x1.90e99cp+22
+-0x1.8fff26p+21
+0x1.a803cap+22
+0x1.5f424cp+20
+0x1.bd5778p+22
+-0x1.eb5ef2p+19
+-0x1.24d44ep+21
+-0x1.0e187ap+22
+0x1.8fb7c2p+21
+-0x1.3ba92ep+22
+0x1.0740b8p+22
+-0x1.dd6ebcp+21
+0x1.2e1cdcp+20
+-0x1.95559ap+22
+-0x1.c2af9cp+20
+0x1.151df4p+22
+0x1.6bf48ep+20
+0x1.082c94p+21
+-0x1.5a5f08p+22
+-0x1.534968p+18
+-0x1.114f94p+22
+-0x1.eb9222p+20
+-0x1.de6fe6p+21
+0x1.c7def6p+22
+-0x1.05822ep+19
+-0x1.ac983ep+22
+-0x1.9ca968p+22
+0x1.43a096p+22
+-0x1.fa9fd2p+22
+-0x1.5ea77ap+22
+0x1.4f5b64p+22
+-0x1.22debep+22
+0x1.79d6bcp+19
+0x1.ddc64ep+20
+0x1.cf666p+15
+-0x1.f8862ap+21
+0x1.48c1d6p+22
+-0x1.6ae84cp+21
+0x1.d4bf36p+22
+0x1.d6b676p+19
+0x1.75a2bap+22
+0x1.701954p+22
+0x1.7feeep+19
+-0x1.23f15ap+22
+0x1.c5f78ap+22
+0x1.be4bf2p+17
+0x1.27bbaep+21
+-0x1.e58fe8p+22
+0x1.01eedp+21
+0x1.e4ba48p+22
+0x1.e9c1e2p+22
+0x1.91f5eap+22
+-0x1.c75878p+21
+-0x1.bc6afcp+22
+0x1.ffb73ep+22
+-0x1.b7715cp+22
+0x1.21ac16p+22
+0x1.3eb084p+21
+-0x1.9f1b6ep+20
+-0x1.32c864p+19
+-0x1.e6634cp+22
+0x1.46ad72p+21
+-0x1.35ca46p+21
+-0x1.5e6e16p+21
+0x1.7ae866p+22
+0x1.4523fap+21
+0x1.fc5ac6p+21
+-0x1.cbca8cp+22
+-0x1.fae752p+16
+-0x1.26fc66p+18
+0x1.fb64bep+22
+0x1.b47f6ep+22
+0x1.6236dap+21
+-0x1.d36ebp+22
+-0x1.e0aa8ap+22
+0x1.445984p+21
+0x1.2d62p+22
+0x1.11760ep+21
+0x1.9e84fp+20
+0x1.8dcb9ap+17
+-0x1.41e7dcp+22
+-0x1.41b72ep+22
+0x1.d94176p+22
+0x1.9f2a62p+21
+0x1.fd8f98p+13
+0x1.af3ab4p+22
+0x1.330cfep+20
+-0x1.95fdecp+21
+0x1.bbb45ep+22
+-0x1.414e38p+20
+-0x1.a774b4p+22
+-0x1.f485dcp+20
+0x1.d909e4p+22
+0x1.e0814ep+20
+-0x1.bab314p+21
+0x1.1c99b6p+17
+-0x1.7388b8p+20
+0x1.426026p+21
+-0x1.39d7p+22
+0x1.79b8cap+19
+-0x1.ed3f44p+22
+0x1.e56ea4p+21
+-0x1.3a4936p+21
+0x1.2173fcp+22
+-0x1.423118p+22
+0x1.410108p+19
+0x1.65aeccp+21
+0x1.2c444cp+22
+-0x1.720392p+21
+-0x1.1b455cp+21
+-0x1.4fbc48p+22
+0x1.f0c6eap+14
+0x1.76837ap+22
+-0x1.49bap+22
+-0x1.24de3ap+21
+-0x1.6c3cfap+20
+-0x1.d93e4cp+17
+-0x1.d91fa8p+21
+0x1.de692ep+20
+0x1.c2b622p+16
+-0x1.936676p+22
+-0x1.e78d38p+18
+0x1.6698cep+19
+-0x1.b74ef4p+22
+-0x1.7e1e4cp+22
+-0x1.e79f78p+22
+0x1.b402eep+22
+0x1.4ada7ap+20
+-0x1.73b856p+20
+-0x1.dc731ep+22
+0x1.e8c348p+22
+-0x1.726eeap+22
+0x1.699888p+21
+-0x1.47ca8ep+22
+0x1.69b24cp+22
+-0x1.443158p+21
+0x1.acfafap+22
+0x1.20380cp+21
+0x1.a695aep+22
+0x1.7ad62cp+21
+0x1.02b016p+22
+-0x1.959efp+22
+-0x1.cd038cp+21
+0x1.e957eap+21
+0x1.af6146p+22
+0x1.d975d2p+22
+-0x1.8a97bcp+22
+-0x1.455cf6p+22
+0x1.e88d68p+22
+-0x1.7a3b7cp+22
+0x1.e9a2f4p+21
+0x1.5f9d6p+20
+-0x1.e1aeap+22
+-0x1.096c1ep+21
+0x1.3263f2p+19
+-0x1.b9224p+22
+-0x1.54f8d4p+20
+-0x1.de96bep+22
+0x1.e679fap+22
+0x1.7a13ep+21
+-0x1.d5b458p+21
+-0x1.2c3568p+19
+0x1.1d9bf6p+22
+-0x1.d0a39p+22
+-0x1.ad5632p+19
+-0x1.382422p+22
+-0x1.0e3754p+21
+0x1.b4bb36p+22
+0x1.4eca38p+22
+0x1.c22834p+19
+0x1.3c29f4p+22
+-0x1.cb4ac8p+22
+-0x1.42c75ep+20
+0x1.a4a266p+18
+0x1.13f91ep+19
+0x1.2c05ecp+22
+0x1.877164p+22
+-0x1.c7f4c4p+22
+0x1.7dfca4p+22
+-0x1.a17eccp+22
+-0x1.fe716p+20
+0x1.716304p+22
+-0x1.233c9cp+20
+0x1.90e9a2p+20
+-0x1.31fc9p+22
+-0x1.093c86p+21
+0x1.2dd1d6p+21
+-0x1.a7b4ccp+21
+0x1.9ffe38p+20
+-0x1.001d36p+19
+0x1.9bb0cap+21
+0x1.8c6282p+20
+-0x1.744364p+20
+0x1.e85cb6p+22
+0x1.1d6906p+22
+-0x1.a6f9fep+22
+-0x1.20a476p+21
+0x1.c9f19ap+22
+-0x1.b0012ap+22
+0x1.62ca26p+22
+0x1.64fad8p+22
+0x1.9e951cp+22
+-0x1.85e65ap+22
+0x1.4c5238p+21
+-0x1.b26678p+21
+-0x1.bc05b2p+21
+-0x1.4ab36ep+22
+0x1.ae9216p+21
+-0x1.106e3cp+22
+0x1.39e882p+22
+0x1.70335p+21
+-0x1.8a1592p+19
+0x1.ff4d78p+22
+-0x1.847004p+19
+0x1.9ea79ap+22
+0x1.b4718p+22
+-0x1.7191c8p+22
+0x1.1a4db4p+18
+0x1.bc6d0cp+22
+-0x1.e877c8p+22
+0x1.5f5592p+21
+0x1.737faap+22
+-0x1.d8d438p+22
+0x1.2aacaep+22
+-0x1.55a73ap+19
+0x1.b73526p+21
+0x1.874fc4p+19
+0x1.da9506p+22
+-0x1.c96cfcp+22
+-0x1.bd1cb6p+21
+-0x1.c4d01cp+22
+0x1.fb3c3ap+22
+-0x1.f05ec8p+21
+0x1.c6b4b4p+22
+0x1.41e6b4p+21
+0x1.93aacep+22
+0x1.fdc632p+22
+-0x1.9f9444p+19
+-0x1.566ebcp+20
+0x1.664172p+21
+-0x1.6ceb3ep+21
+0x1.211dfp+22
+-0x1.4b1754p+22
+0x1.f4271p+18
+0x1.f8c8fcp+22
+0x1.4b179ap+22
+0x1.cc5d68p+22
+-0x1.465c84p+21
+0x1.5f87cap+21
+-0x1.68accep+22
+-0x1.4ce0dcp+19
+0x1.994518p+19
+-0x1.79f9b6p+22
+-0x1.adc4c8p+21
+-0x1.c98f36p+22
+-0x1.2bb8e2p+21
+0x1.0c3408p+19
+-0x1.27dfc2p+22
+-0x1.f5c068p+22
+0x1.05ee34p+21
+-0x1.676a98p+20
+0x1.0fcc6ep+22
+0x1.d112b2p+21
+-0x1.9178b4p+22
+-0x1.8442dap+22
+-0x1.3251fep+22
+-0x1.9c594ep+22
+0x1.ea3d9ap+22
+0x1.842b3ep+22
+-0x1.91d67cp+12
+-0x1.33c5f6p+22
+0x1.e4c4bcp+22
+0x1.63f616p+19
+-0x1.d40e32p+22
+0x1.7f647ep+22
+0x1.762d9cp+22
+-0x1.f5047cp+19
+0x1.50e1f6p+21
+-0x1.08f65p+22
+-0x1.4ea7a8p+20
+-0x1.66984ep+22
+-0x1.e6eb1cp+21
+0x1.c9f50ap+22
+0x1.ed926ap+21
+-0x1.1bad96p+20
+-0x1.97cfb8p+21
+0x1.3f6c52p+22
+0x1.6eb838p+22
+0x1.9dbf2cp+21
+-0x1.377c2ap+19
+0x1.5eae0ep+20
+-0x1.b430f8p+21
+-0x1.0a18b2p+22
+0x1.4b8d72p+21
+-0x1.0a4c3ap+22
+-0x1.e45294p+20
+0x1.f64db8p+20
+-0x1.076ecap+19
+0x1.c25efp+22
+-0x1.fe0b08p+22
+-0x1.b63d9p+22
+-0x1.e40248p+22
+-0x1.2c24dap+21
+0x1.a7b7b2p+22
+-0x1.ce69b4p+22
+0x1.8eee8ep+22
+0x1.a6870ap+21
+-0x1.72d15ep+22
+0x1.98b5cp+20
+0x1.89edd8p+22
+-0x1.f84a88p+21
+0x1.f3be88p+20
+0x1.096f5cp+22
+0x1.c587eep+22
+-0x1.02244ap+22
+0x1.d3b01ep+22
+0x1.5a49f4p+20
+0x1.bf215cp+22
+-0x1.64a75ap+19
+-0x1.637d9ap+22
+0x1.b3087ap+21
+0x1.6def16p+20
+-0x1.e275cep+20
+-0x1.756e58p+22
+-0x1.d4697ep+22
+0x1.0b083ap+22
+0x1.9f25cp+22
+0x1.d00314p+22
+0x1.b0bf14p+22
+0x1.a671f6p+21
+-0x1.62ce38p+22
+0x1.42d71p+22
+0x1.93b95ep+20
+0x1.56b15cp+22
+-0x1.a44c74p+21
+-0x1.c0504cp+19
+-0x1.54fd6p+18
+0x1.e9e67p+21
+0x1.926834p+20
+-0x1.60e958p+21
+-0x1.5f0982p+18
+-0x1.fc3efp+15
+-0x1.e00a6cp+22
+-0x1.6cc136p+22
+0x1.3ee7c2p+22
+-0x1.0b29ecp+21
+-0x1.b91ed6p+22
+-0x1.f72aaap+22
+-0x1.f65a48p+21
+0x1.a32e5ap+22
+-0x1.6ecf22p+20
+-0x1.0a2e8ep+20
+-0x1.6d7ebap+22
+0x1.96e942p+21
+0x1.9b5776p+22
+0x1.a347eep+22
+0x1.f61a56p+22
+-0x1.63297ep+22
+0x1.2e0dap+22
+-0x1.106ac8p+22
+-0x1.5ea7f4p+22
+0x1.64cb14p+18
+-0x1.6dd3p+18
+-0x1.383b06p+22
+0x1.c5dc1p+22
+-0x1.28bfdep+22
+0x1.255624p+21
+0x1.546a6p+22
+-0x1.e36396p+22
+0x1.c8ab64p+20
+-0x1.6b17c8p+22
+0x1.467278p+21
+0x1.f2f48cp+22
+0x1.7c970ep+19
+-0x1.9873b6p+22
+0x1.c3b65ap+21
+-0x1.3d9816p+22
+0x1.01b306p+22
+0x1.68a674p+22
+-0x1.6956d4p+22
+0x1.a91b0cp+21
+0x1.d332cep+22
+-0x1.f448ap+18
+0x1.a58d7ep+21
+0x1.ebbe2cp+20
+-0x1.3ee322p+17
+-0x1.d3d64p+21
+-0x1.7f50d6p+20
+-0x1.71a9c4p+20
+0x1.adb6d2p+21
+-0x1.dafcaep+20
+0x1.cbc7eep+20
+-0x1.13e54cp+20
+0x1.73c53p+21
+-0x1.703f78p+22
+-0x1.a18f2p+19
+-0x1.e59156p+20
+0x1.5d8a5ep+22
+-0x1.553256p+22
+0x1.32466p+21
+0x1.d90b18p+22
+-0x1.fa71bp+22
+-0x1.3b3cc8p+21
+0x1.6ca11cp+22
+0x1.03b7e8p+22
+0x1.7fa14p+21
+0x1.ace9d4p+22
+-0x1.99f2c4p+21
+-0x1.5040b2p+18
+-0x1.396e56p+21
+0x1.91f4bcp+21
+0x1.6b55cep+22
+0x1.fd6c6ap+22
+-0x1.60458p+22
+0x1.179104p+21
+0x1.c92f3ap+22
+0x1.80364cp+21
+-0x1.34d0bcp+20
+0x1.813f16p+21
+-0x1.5b359p+18
+0x1.83013cp+22
+-0x1.c2a106p+21
+0x1.e8abbap+21
+0x1.a9c316p+21
+0x1.1706d2p+19
+0x1.72499p+22
+0x1.d9d73ep+22
+0x1.1e371p+22
+0x1.007e32p+22
+0x1.b73a44p+20
+0x1.178ddap+21
+-0x1.29c7dep+21
+-0x1.669a7p+22
+0x1.ca0d3p+22
+0x1.4bac36p+20
+0x1.f6207p+19
+0x1.2ee3d2p+22
+-0x1.1477cap+20
+-0x1.344f9ep+21
+-0x1.45557ep+22
+0x1.1c735cp+20
+0x1.b89a16p+22
+-0x1.3c88bep+22
+0x1.b40464p+18
+-0x1.e02f02p+22
+0x1.989cfep+22
+0x1.738cdep+21
+0x1.5aa874p+22
+-0x1.55db94p+22
+-0x1.474c84p+21
+-0x1.8fcd0cp+19
+-0x1.041ae8p+22
+-0x1.33edd4p+22
+-0x1.48176cp+22
+-0x1.66e39cp+21
+0x1.7883fcp+21
+0x1.6552a6p+22
+0x1.41a33ap+22
+0x1.a2a1bap+22
+-0x1.6fdd34p+21
+-0x1.a627f8p+22
+0x1.e83daep+22
+-0x1.235bdep+22
+0x1.4b95ep+22
+-0x1.3c3b32p+22
+-0x1.887e68p+18
+-0x1.09e528p+22
+-0x1.0477fp+22
+0x1.f16ecp+20
+-0x1.54701ap+22
+-0x1.faf462p+21
+0x1.569d32p+22
+-0x1.d2097ep+22
+-0x1.93754ep+21
+0x1.ab552p+20
+-0x1.50a624p+21
+-0x1.c93d9p+21
+-0x1.170e8cp+22
+-0x1.0bde28p+21
+0x1.1d5e1cp+19
+0x1.14f5e8p+22
+-0x1.a29fdap+21
+0x1.1f3f78p+22
+0x1.e6124cp+22
+0x1.c38826p+22
+0x1.e509bp+22
+0x1.2480a6p+20
+-0x1.bdd68ap+22
+-0x1.c6a5ecp+21
+0x1.6187fap+22
+-0x1.3951f6p+13
+-0x1.9f7f1cp+19
+0x1.3de9e2p+19
+0x1.90ab2p+21
+-0x1.6dd25cp+18
+-0x1.8d67ecp+19
+-0x1.ae061ep+21
+0x1.2eb7cp+22
+-0x1.403a98p+22
+-0x1.90198ep+22
+-0x1.4d32cep+22
+-0x1.a1bf06p+20
+-0x1.9b2e4p+21
+0x1.b6345ep+22
+0x1.e66756p+22
+-0x1.dfd8bep+22
+0x1.f4d314p+22
+-0x1.c3f846p+22
+-0x1.fc169ap+20
+0x1.2dd20ep+22
+0x1.0e1e84p+22
+0x1.1522e2p+22
+-0x1.bb0768p+22
+0x1.b02bcep+22
+0x1.dd118ap+22
+0x1.4a76fp+22
+0x1.4c21eap+16
+-0x1.611c7ap+21
+0x1.85eacp+22
+0x1.878d5ep+21
+-0x1.e15a1ap+20
+-0x1.676ad6p+22
+-0x1.ed9728p+21
+0x1.972372p+22
+-0x1.8bace2p+22
+0x1.70764cp+21
+0x1.cec904p+22
+0x1.ee131p+21
+-0x1.39c6fep+22
+-0x1.91a5eap+20
+0x1.5b05b4p+22
+-0x1.5fea6ep+22
+-0x1.4107a2p+21
+-0x1.098f22p+22
+-0x1.b8225ap+20
+0x1.1b9c94p+22
+0x1.c285d6p+22
+-0x1.f9ab46p+22
+0x1.fbbf3p+22
+-0x1.429bc4p+22
+0x1.cb6122p+22
+-0x1.c434eep+20
+0x1.a31efp+22
+0x1.fb04d6p+22
+0x1.c62c84p+21
+-0x1.34e44p+20
+0x1.069e54p+22
+0x1.284f6ep+15
+-0x1.df721cp+21
+-0x1.f101b8p+22
+0x1.643336p+22
+-0x1.4ade22p+22
+0x1.5d49c2p+21
+0x1.b24478p+22
+-0x1.5df018p+22
+-0x1.c1887ep+22
+0x1.80133p+22
+0x1.c5fbecp+22
+0x1.7f9166p+22
+-0x1.f38ba8p+22
+-0x1.dd7e04p+21
+0x1.80267p+22
+-0x1.19badp+21
+0x1.7edb64p+22
+-0x1.c95f6cp+22
+0x1.090766p+22
+-0x1.63a5b6p+20
+-0x1.f502c8p+22
+-0x1.d0863ap+18
+-0x1.4c39c2p+22
+0x1.399d9cp+20
+0x1.9f1fep+22
+-0x1.13d512p+22
+0x1.a60aap+22
+-0x1.a5a11ap+22
+-0x1.9ae8cp+22
+0x1.60a64ap+22
+-0x1.464f88p+20
+0x1.bd96c8p+21
+0x1.a37812p+22
+0x1.4f2a8cp+22
+0x1.4e4b6ep+21
+0x1.3ce41ap+22
+0x1.f2f27ap+21
+-0x1.a96064p+21
+-0x1.0bf8aep+20
+0x1.74c794p+21
+-0x1.4ece9cp+21
+0x1.fdac26p+20
+0x1.78160ap+21
+-0x1.ae4b3p+21
+0x1.dc7cbep+21
+-0x1.23b0a2p+22
+-0x1.08c9cep+20
+0x1.3aa856p+19
+0x1.0b92d2p+22
+0x1.27adbap+22
+-0x1.58abc6p+20
+0x1.b56f88p+21
+0x1.473e06p+21
+0x1.661446p+21
+0x1.d217b2p+22
+0x1.5509a2p+21
+-0x1.4a6cfap+22
+0x1.720e46p+22
+-0x1.93471ep+19
+-0x1.8e9eep+21
+-0x1.7cccdap+21
+-0x1.d0797ap+22
+0x1.469e3ep+21
+-0x1.a2aa52p+21
+-0x1.afe6a6p+18
+-0x1.33d8ecp+20
+0x1.bdee5ep+22
+-0x1.238066p+22
+-0x1.ff1638p+22
+-0x1.0bdabep+21
+-0x1.5b0022p+21
+0x1.6b0902p+22
+0x1.abc24ap+22
+-0x1.92a536p+21
+0x1.af57f6p+18
+-0x1.836376p+22
+-0x1.e4ce54p+22
+0x1.30a5b2p+22
+-0x1.abc2acp+22
+-0x1.53556p+21
+-0x1.f61d56p+22
+-0x1.631556p+22
+-0x1.76238ep+21
+-0x1.2a321ep+22
+-0x1.02bffcp+21
+-0x1.f78b92p+22
+0x1.c22c7p+22
+-0x1.7436fap+22
+-0x1.47c4aap+22
+-0x1.b9eb1p+19
+0x1.b7d94ep+18
+-0x1.6b420ep+22
+-0x1.0ccafp+21
+-0x1.5e596ap+18
+-0x1.c9f0ep+22
+0x1.9a090cp+22
+-0x1.1731a4p+22
+-0x1.3d7358p+22
+0x1.0d2b4p+22
+-0x1.80c112p+20
+-0x1.796012p+22
+-0x1.44c4e4p+22
+0x1.a0907ep+21
+-0x1.16c75ap+21
+0x1.4bb076p+18
+-0x1.943fe6p+22
+-0x1.d863f6p+22
+0x1.78b2b8p+22
+0x1.9b9ba4p+22
+-0x1.92c28ep+22
+-0x1.e719dcp+16
+0x1.a48106p+21
+0x1.20f30ap+22
+0x1.425f28p+19
+0x1.958838p+22
+0x1.785c5cp+22
+-0x1.6eca1p+20
+0x1.acdc9ap+20
+0x1.15012ap+21
+-0x1.dd3302p+22
+-0x1.717eep+20
+0x1.e727bcp+20
+-0x1.96c47ap+21
+0x1.1675dp+22
+0x1.cdcc2ep+21
+0x1.8d105p+20
+0x1.601f4cp+22
+-0x1.6df2ecp+21
+0x1.f9fcbap+22
+-0x1.24c452p+20
+-0x1.4fbbbep+22
+-0x1.0995b4p+22
+0x1.93893p+21
+0x1.7323fcp+22
+-0x1.d57f9ep+20
+0x1.18f2dp+20
+-0x1.d8713p+21
+0x1.a12114p+22
+# Random inputs in the range [8.388608e+06,3.402823e+38]
+## name: workload-2
+-0x1.eae25p+127
+0x1.6bc59cp+127
+0x1.ead822p+126
+-0x1.efe874p+127
+0x1.de01dap+125
+-0x1.2632d4p+127
+0x1.1eb86ep+127
+-0x1.ef32bep+127
+0x1.34bfa4p+124
+-0x1.806224p+127
+0x1.c22d22p+127
+-0x1.8d611cp+127
+0x1.a8d84cp+124
+-0x1.27eb26p+124
+-0x1.476bbp+127
+-0x1.ef841ep+118
+-0x1.fb08e6p+125
+0x1.bd7866p+126
+-0x1.09bc6cp+127
+0x1.b46692p+125
+0x1.411a16p+127
+0x1.d880c6p+126
+-0x1.737848p+127
+0x1.994d1p+127
+-0x1.832484p+127
+0x1.e27dcap+127
+0x1.9a64b8p+127
+-0x1.4e7cfep+127
+-0x1.6efa6cp+127
+-0x1.6e1be4p+127
+-0x1.73c6e8p+127
+0x1.1cb332p+123
+0x1.6e1bacp+126
+0x1.56a68ap+123
+0x1.8115c6p+127
+0x1.4b5ec8p+127
+-0x1.544c28p+126
+-0x1.7fdb58p+123
+-0x1.de761ep+127
+0x1.16e4dep+127
+0x1.3ede0ap+127
+0x1.6cafd2p+119
+-0x1.ac0f5cp+125
+-0x1.1dd652p+127
+0x1.8f8ea6p+126
+-0x1.d2332p+126
+0x1.e40918p+122
+0x1.7e0caap+127
+0x1.3d4b3ep+125
+-0x1.dece6ep+127
+0x1.855788p+127
+0x1.a6bbdap+127
+-0x1.b2702cp+126
+-0x1.d1451p+127
+0x1.bcb416p+123
+0x1.aea088p+126
+0x1.55fea6p+127
+0x1.8ff74p+127
+0x1.65a66ap+127
+-0x1.320e68p+127
+-0x1.7bfd18p+124
+0x1.e6cf6ep+127
+0x1.c99bc4p+127
+0x1.641192p+127
+0x1.62f154p+127
+0x1.7d9feep+127
+-0x1.1a3b72p+127
+0x1.f60ffep+127
+0x1.cc38c4p+123
+0x1.e98042p+127
+0x1.e82c46p+127
+0x1.d4af9cp+127
+0x1.c2dd8cp+127
+-0x1.9a67d6p+127
+-0x1.db7b3cp+124
+0x1.a35b8ep+125
+0x1.0929c2p+125
+0x1.45ffcep+127
+0x1.d80e78p+126
+-0x1.bab46ap+127
+0x1.d0fa44p+126
+-0x1.c46b0cp+127
+0x1.b3ca58p+127
+0x1.be363ap+127
+-0x1.a0c6e8p+126
+0x1.2c8254p+127
+-0x1.2fcca8p+125
+0x1.33e2p+127
+-0x1.b883ccp+125
+-0x1.def9bp+126
+0x1.f699acp+123
+-0x1.e72bbp+127
+-0x1.d7c4ccp+126
+-0x1.d56094p+127
+0x1.448198p+126
+-0x1.e8764ap+126
+0x1.0128d2p+127
+-0x1.cc5738p+127
+-0x1.e66f28p+127
+-0x1.40fe4cp+127
+-0x1.9f0f16p+127
+0x1.1bbc44p+126
+-0x1.b19edcp+126
+-0x1.1e47fap+127
+-0x1.1014d2p+125
+-0x1.7e6d3ap+125
+0x1.a10a6ep+126
+-0x1.020cf8p+123
+0x1.5ed278p+125
+-0x1.22070ap+120
+-0x1.f86f7cp+127
+-0x1.145de6p+126
+0x1.6a2cdep+127
+-0x1.93f914p+125
+-0x1.26656ep+127
+0x1.b2d688p+127
+0x1.5a8ca4p+126
+0x1.9d5762p+125
+0x1.307446p+124
+-0x1.a04276p+127
+0x1.3fc002p+123
+0x1.899a28p+127
+-0x1.6a2798p+127
+0x1.f2b828p+126
+0x1.62451cp+127
+-0x1.87ad72p+127
+0x1.ab119ep+126
+0x1.2676bap+127
+-0x1.17bddep+125
+0x1.665b8ep+126
+-0x1.54f60ep+126
+0x1.e6bcbap+125
+-0x1.66471cp+127
+-0x1.063ce8p+127
+-0x1.689ae8p+126
+0x1.b311ecp+123
+-0x1.7efb18p+127
+-0x1.3291cp+127
+0x1.32f982p+126
+-0x1.c90954p+127
+0x1.74f3ap+127
+0x1.6f4994p+126
+0x1.f36636p+127
+0x1.34e53p+127
+-0x1.1fc5eap+127
+-0x1.523a1ap+127
+-0x1.a82f5ap+126
+0x1.1ff034p+127
+0x1.c7100ap+124
+-0x1.75dfe6p+126
+0x1.43cb44p+124
+0x1.e11ea6p+127
+0x1.26ba0ap+127
+0x1.7a3ff6p+127
+0x1.b6771ep+123
+-0x1.d8aeb6p+125
+-0x1.4beb8ep+125
+0x1.7f21d6p+127
+0x1.c55d46p+122
+0x1.3ac636p+127
+0x1.afba6ep+126
+0x1.27584p+126
+-0x1.70bd5p+127
+0x1.f40b28p+127
+-0x1.3ddb42p+125
+-0x1.92d9ap+127
+-0x1.7857p+127
+-0x1.89aaap+127
+-0x1.e09e54p+127
+0x1.b4672p+126
+-0x1.b2365ap+124
+-0x1.1173f4p+125
+0x1.de89fcp+127
+-0x1.a15f2ap+124
+-0x1.29c986p+127
+0x1.d414e2p+127
+-0x1.3614b4p+126
+0x1.429158p+125
+0x1.a08a48p+127
+-0x1.7173a4p+127
+-0x1.78c04cp+127
+-0x1.f07f76p+124
+-0x1.92cd6p+127
+-0x1.0e8bb4p+126
+-0x1.f0f71ep+126
+-0x1.b87e88p+127
+-0x1.afebbcp+126
+0x1.dc189p+126
+-0x1.f5133cp+127
+-0x1.e30938p+127
+0x1.2600e8p+126
+0x1.824df8p+127
+-0x1.d728acp+126
+0x1.8190d2p+124
+0x1.4a5c52p+127
+0x1.508786p+124
+0x1.6f7dbp+127
+-0x1.fe077p+127
+-0x1.00093p+125
+-0x1.0c93a8p+127
+-0x1.934d88p+123
+-0x1.da4206p+127
+0x1.7f2cb4p+127
+-0x1.f0cd72p+127
+0x1.5b53b2p+127
+-0x1.16a7fep+125
+0x1.bc87d4p+126
+0x1.6897d8p+127
+0x1.489f7ap+127
+0x1.39c008p+126
+-0x1.f55e16p+127
+0x1.6ec406p+126
+0x1.597a4ap+125
+-0x1.23d03cp+127
+0x1.4f9be6p+127
+-0x1.dc7d64p+127
+0x1.dc9b96p+126
+-0x1.1b4cf8p+127
+0x1.c0a97ep+126
+-0x1.8d1dep+127
+-0x1.f16aap+123
+-0x1.7591b6p+127
+0x1.da0b26p+127
+0x1.6b965ep+125
+0x1.29bd42p+127
+0x1.b8f4ecp+127
+0x1.94a26cp+127
+-0x1.a32988p+127
+-0x1.84606ep+127
+-0x1.06a956p+127
+0x1.bbc8c2p+127
+0x1.cb41e4p+126
+-0x1.3ece78p+127
+0x1.4b6c82p+124
+0x1.d4b0bap+127
+-0x1.41cd6ep+127
+0x1.c481bep+127
+-0x1.9d746cp+127
+-0x1.ada9eep+127
+0x1.b96116p+126
+0x1.791ef4p+126
+-0x1.75bb7p+126
+-0x1.3e1ac4p+123
+0x1.298522p+126
+-0x1.67292cp+127
+0x1.664682p+127
+0x1.fc521cp+124
+0x1.33b35cp+123
+-0x1.5752ep+127
+-0x1.184282p+127
+0x1.e1fd64p+127
+0x1.5d1d62p+126
+-0x1.1bded8p+127
+0x1.09be8p+127
+-0x1.801f5p+127
+0x1.dd137ap+121
+-0x1.ee5f7cp+126
+-0x1.41ad3cp+125
+0x1.75c806p+126
+-0x1.1f744cp+127
+-0x1.a38a6ap+126
+-0x1.4fb5d6p+127
+0x1.e2701p+127
+0x1.2798fep+126
+-0x1.beb2acp+127
+0x1.f114f6p+127
+-0x1.911adp+126
+0x1.3ca53ap+127
+0x1.e0117cp+127
+0x1.a56d5ep+127
+-0x1.d18004p+125
+0x1.aa9a4p+126
+0x1.57fa6cp+126
+-0x1.aabb64p+124
+0x1.c3f1fp+127
+-0x1.a075dap+124
+-0x1.59eb78p+127
+-0x1.fcc3e6p+126
+-0x1.ee225p+125
+0x1.516426p+122
+-0x1.61113ap+127
+-0x1.97cc3p+121
+-0x1.444848p+126
+-0x1.0336fcp+126
+0x1.3af2c4p+125
+0x1.0d6432p+125
+-0x1.bf7822p+127
+0x1.8a4614p+126
+-0x1.b54f84p+122
+0x1.27343p+127
+0x1.c3d49ap+126
+0x1.7fbefep+127
+0x1.a76c84p+127
+0x1.2a63bcp+126
+-0x1.9f0ed8p+126
+-0x1.13980ep+122
+-0x1.2163d8p+126
+0x1.b2bc02p+124
+0x1.eaa15p+127
+0x1.0c19ap+127
+0x1.bef714p+127
+0x1.71b8d2p+127
+-0x1.e86ffap+125
+-0x1.51ad0cp+126
+-0x1.9260c4p+126
+0x1.442bd6p+127
+0x1.ed6e02p+127
+-0x1.61c94p+127
+-0x1.861a78p+125
+-0x1.c3d5a8p+126
+-0x1.68738ep+125
+-0x1.985b38p+122
+0x1.22c9b8p+127
+0x1.10e90cp+127
+0x1.f37c3ap+127
+0x1.b2ece8p+124
+0x1.952124p+127
+0x1.2775fp+127
+-0x1.06dbfcp+127
+0x1.a3fbep+126
+-0x1.7ad7fep+125
+0x1.4ce022p+127
+-0x1.bad2b6p+127
+0x1.90c01ap+127
+0x1.9147dp+127
+-0x1.8479c8p+125
+0x1.0b861ap+126
+-0x1.55848ap+125
+0x1.7e0a96p+127
+0x1.98050ep+126
+0x1.a76dbep+126
+-0x1.196062p+127
+-0x1.214cb8p+125
+0x1.ab20c8p+126
+-0x1.382bcp+126
+0x1.6a981cp+126
+-0x1.47b812p+124
+-0x1.5db334p+125
+-0x1.aa8876p+127
+-0x1.9871aep+127
+-0x1.ff4c28p+127
+-0x1.ef48bcp+127
+0x1.71807cp+127
+-0x1.ae5814p+127
+-0x1.c0115ep+127
+-0x1.a77b1p+127
+-0x1.ca1c2ap+126
+0x1.b62404p+127
+-0x1.c4ea92p+127
+0x1.244038p+124
+-0x1.7b367p+127
+-0x1.fa9cfp+127
+-0x1.446bdp+127
+0x1.374478p+126
+-0x1.2760fcp+125
+0x1.8d1f12p+124
+0x1.995e54p+126
+-0x1.3807p+127
+0x1.d2a2a4p+127
+0x1.ecf024p+127
+0x1.2b9da6p+127
+-0x1.efce48p+127
+-0x1.512f62p+127
+0x1.9b8864p+127
+0x1.5483d4p+124
+-0x1.58a052p+127
+0x1.ee7f0cp+126
+0x1.c97bb6p+127
+-0x1.6bc4ap+127
+-0x1.b4bec8p+127
+-0x1.804dcep+126
+0x1.e3ddaep+127
+0x1.6873d4p+127
+-0x1.6c283cp+125
+-0x1.c7963ap+126
+0x1.02a884p+127
+0x1.1877ep+127
+-0x1.58234ep+127
+0x1.87362ep+127
+-0x1.bdbfe4p+126
+0x1.976bfap+127
+-0x1.f9dadp+126
+-0x1.e780ap+126
+-0x1.e45faep+127
+-0x1.34ffeep+127
+-0x1.fe2926p+127
+-0x1.11a714p+126
+-0x1.9ec55cp+126
+0x1.045374p+124
+-0x1.72b1ccp+127
+-0x1.e43644p+126
+0x1.25360ep+125
+0x1.b4cd52p+124
+0x1.fd0546p+126
+-0x1.10e838p+127
+0x1.64aeacp+127
+0x1.5fbdd6p+125
+-0x1.f09138p+127
+-0x1.62c26ep+125
+0x1.b46d08p+127
+0x1.099e5ap+126
+0x1.358c12p+126
+0x1.c23bfp+125
+-0x1.8059b8p+123
+-0x1.2a1684p+125
+-0x1.322c1ap+127
+-0x1.a60874p+126
+0x1.346022p+125
+-0x1.9fbf84p+123
+0x1.662694p+124
+0x1.69a874p+126
+0x1.61387cp+127
+-0x1.8eeaa6p+125
+-0x1.5e6ecp+127
+0x1.11eb6ap+125
+-0x1.a53fb2p+127
+-0x1.ea995ap+127
+0x1.fb900cp+126
+0x1.080c9cp+126
+0x1.3ed2d6p+127
+-0x1.d9e226p+127
+-0x1.9219d6p+127
+-0x1.c65b1cp+125
+-0x1.f425d4p+127
+0x1.676c54p+126
+0x1.94baf8p+126
+-0x1.d3eaf2p+126
+0x1.cbc028p+126
+0x1.bf2ab2p+120
+-0x1.2edce6p+127
+0x1.026e9cp+127
+-0x1.f3d10ep+126
+-0x1.e5243cp+126
+0x1.432818p+127
+-0x1.856d9ap+127
+0x1.5da4fap+126
+0x1.95f24cp+125
+-0x1.e930d8p+127
+-0x1.bd8278p+127
+-0x1.538384p+125
+0x1.d60ce6p+127
+0x1.8bd128p+123
+-0x1.bc472ap+127
+0x1.cd7728p+127
+-0x1.3f3218p+127
+-0x1.04e8bep+125
+-0x1.ac7ba8p+127
+-0x1.ae2076p+126
+-0x1.6baec2p+124
+-0x1.3332a4p+124
+0x1.67479ap+127
+-0x1.b44228p+124
+0x1.a39fc8p+126
+-0x1.c74e36p+125
+-0x1.db6cfcp+126
+-0x1.4f3d84p+124
+-0x1.ccaccp+124
+-0x1.e18744p+127
+0x1.bd4a82p+126
+0x1.d82ad4p+127
+0x1.e10d0ep+127
+0x1.c6104ep+127
+-0x1.4f946cp+126
+0x1.281b56p+127
+-0x1.4c6ba2p+125
+-0x1.c40baap+126
+-0x1.82c2f6p+127
+-0x1.141996p+124
+0x1.74bd22p+125
+-0x1.f48172p+127
+-0x1.d649b2p+126
+-0x1.2f2deep+127
+-0x1.22efcap+125
+-0x1.304082p+127
+-0x1.42f1b8p+127
+-0x1.7d3a94p+127
+0x1.eb4568p+127
+-0x1.2ed8e4p+126
+-0x1.d3cf8cp+126
+0x1.b9b116p+127
+-0x1.f79fd6p+122
+-0x1.597768p+126
+-0x1.832792p+125
+-0x1.857f08p+123
+0x1.9f0ce6p+126
+-0x1.254f5cp+126
+0x1.f05d08p+127
+0x1.ef5cbap+127
+0x1.5cec2ap+127
+-0x1.a50b16p+124
+-0x1.3e126p+127
+-0x1.695a16p+127
+0x1.06057cp+127
+0x1.4e5ad8p+126
+0x1.77dc28p+126
+0x1.a8e79p+127
+-0x1.2a43e4p+126
+0x1.6147c8p+124
+-0x1.8c03e8p+127
+-0x1.806664p+126
+-0x1.bf009ep+121
+-0x1.123c96p+122
+0x1.92ee3cp+127
+0x1.b3b788p+127
+0x1.35a352p+126
+0x1.646d26p+126
+0x1.2481ccp+127
+0x1.2b2876p+127
+-0x1.09c4a8p+126
+-0x1.750382p+127
+0x1.ad4f54p+127
+0x1.84e314p+126
+-0x1.f9382p+127
+0x1.ff079cp+123
+0x1.03597ap+127
+-0x1.160418p+124
+-0x1.e1614p+126
+-0x1.e493f4p+126
+-0x1.05aa1cp+123
+-0x1.4ec07p+126
+-0x1.cd9098p+127
+0x1.7c8c6ep+126
+0x1.c93da6p+125
+-0x1.194218p+127
+0x1.67a526p+127
+-0x1.188fa6p+127
+-0x1.9de748p+126
+0x1.560936p+126
+0x1.1caf7ep+125
+-0x1.ef8e26p+124
+-0x1.e0d672p+127
+-0x1.307086p+126
+-0x1.198e2ap+127
+-0x1.044daap+126
+-0x1.d833bap+126
+0x1.f09cd6p+124
+-0x1.63be02p+125
+-0x1.2c9c0ap+126
+0x1.b7b628p+127
+0x1.d9d7e6p+127
+0x1.ca9e7ep+123
+0x1.3ac1bcp+127
+-0x1.e0c958p+127
+-0x1.1a1b62p+124
+0x1.6adc9cp+127
+-0x1.18aa1cp+126
+-0x1.cb7c4ap+126
+0x1.152ecep+125
+-0x1.63fa8ap+125
+0x1.62edap+127
+0x1.200296p+127
+0x1.ec2edcp+127
+-0x1.cdb2eap+126
+-0x1.d5fd6ep+126
+0x1.0331e2p+125
+0x1.b3d6bp+127
+-0x1.948cfap+125
+-0x1.9e269cp+126
+-0x1.569eeep+127
+-0x1.6854bcp+127
+-0x1.c25458p+126
+-0x1.c0a1d6p+126
+-0x1.f0f694p+124
+0x1.c66a62p+126
+0x1.0f53a4p+127
+0x1.914988p+126
+0x1.3cd4dcp+127
+0x1.9e812p+124
+0x1.ec58dep+126
+-0x1.585b7cp+125
+0x1.8478f8p+127
+-0x1.8c2476p+127
+-0x1.65018cp+127
+0x1.c6f508p+126
+-0x1.61667ap+126
+0x1.064b72p+126
+0x1.1de0e8p+125
+-0x1.53bf86p+127
+-0x1.2e3c86p+127
+0x1.5eb966p+127
+0x1.2c2532p+125
+0x1.fbdf36p+122
+-0x1.19f366p+127
+-0x1.ed63a2p+127
+0x1.834226p+127
+-0x1.fa413ap+127
+0x1.9679ap+127
+0x1.897baep+126
+-0x1.451728p+127
+-0x1.f4f596p+127
+0x1.407f9cp+126
+0x1.7019fep+127
+-0x1.d0907ap+127
+-0x1.5e6f3p+127
+0x1.a8298ap+127
+-0x1.7671fcp+126
+0x1.35d6dcp+127
+0x1.8432e8p+127
+0x1.f0a1dep+127
+0x1.606468p+127
+0x1.fd2cd2p+127
+-0x1.87b0aap+125
+-0x1.4c06d6p+127
+0x1.73b0cp+125
+-0x1.c0aep+127
+-0x1.e87b64p+126
+0x1.cfdc64p+127
+-0x1.cd587p+126
+-0x1.95a0e2p+127
+0x1.1cf196p+127
+0x1.965204p+127
+0x1.54429ep+127
+0x1.1e32f4p+127
+0x1.c33268p+127
+0x1.a19b86p+127
+0x1.581362p+127
+-0x1.a742bcp+126
+0x1.99073cp+126
+0x1.89f99cp+127
+0x1.875d22p+127
+0x1.c6c2dap+127
+0x1.b8ff4p+124
+-0x1.03ee6cp+127
+0x1.8c78ecp+126
+-0x1.7f667p+127
+-0x1.e49b1p+126
+0x1.9ad97ep+127
+-0x1.b61464p+127
+0x1.b8ca82p+125
+-0x1.5ed7dcp+126
+-0x1.f668cap+127
+0x1.2ec58p+126
+-0x1.815b3ap+127
+-0x1.d193f4p+124
+0x1.ede4c4p+126
+0x1.1c20cap+127
+-0x1.93eaep+127
+-0x1.9d3b92p+127
+0x1.13f1d8p+126
+0x1.9b1212p+126
+0x1.063fdp+127
+0x1.34451ep+127
+-0x1.4e96e4p+127
+-0x1.7e60e4p+125
+-0x1.9ba834p+126
+-0x1.5c45e6p+123
+-0x1.67f58p+127
+0x1.70b81p+127
+-0x1.8f8baep+127
+-0x1.1d15b2p+127
+-0x1.e9227cp+127
+0x1.ea3bdcp+127
+-0x1.de1f78p+127
+0x1.592e0ep+127
+-0x1.09fd12p+125
+-0x1.6b3c66p+127
+0x1.63d746p+127
+0x1.d0c346p+127
+-0x1.7515dcp+127
+-0x1.9c9acep+125
+0x1.1801d6p+127
+0x1.00b926p+122
+-0x1.e3809ep+127
+-0x1.d66668p+125
+-0x1.bd0ee6p+127
+-0x1.f6b998p+127
+0x1.d70dfp+126
+-0x1.54e698p+127
+-0x1.9444dep+123
+-0x1.5ffadap+124
+0x1.a658cp+126
+-0x1.01bdbep+127
+-0x1.2a406ep+127
+-0x1.88e942p+127
+-0x1.d04d92p+127
+-0x1.4a0022p+127
+0x1.0c4beap+127
+0x1.818df2p+127
+-0x1.638f3ep+127
+0x1.db919ap+126
+0x1.18cafep+127
+-0x1.644c0ap+127
+0x1.f5cc7cp+127
+0x1.e985ecp+126
+0x1.f57c32p+122
+-0x1.11e042p+126
+-0x1.c962a2p+127
+0x1.f5c9bp+123
+-0x1.22cf06p+125
+-0x1.5e7caep+127
+-0x1.ce72cap+127
+0x1.c1641ep+126
+0x1.b9013ep+127
+0x1.2978c6p+127
+-0x1.3837f6p+126
+-0x1.f4106cp+127
+-0x1.904ea8p+127
+-0x1.e48b66p+126
+-0x1.8cdc48p+127
+0x1.3277dcp+126
+-0x1.76492cp+124
+-0x1.7bf17p+127
+0x1.1d230ap+127
+0x1.e677a8p+127
+0x1.3f866ap+127
+-0x1.bb048ap+126
+0x1.169ee8p+123
+-0x1.8741cap+127
+0x1.d0c64p+127
+0x1.a5b86cp+127
+-0x1.b79ff2p+122
+0x1.5a73f6p+126
+-0x1.6e2b6cp+127
+0x1.3c8658p+126
+0x1.e57c6p+127
+0x1.76de1cp+127
+-0x1.5acaacp+127
+0x1.b85a64p+127
+0x1.e7227ap+126
+-0x1.671aeap+127
+0x1.add826p+126
+0x1.341fbep+126
+-0x1.bcfb9ep+127
+0x1.211276p+125
+-0x1.cc5992p+126
+-0x1.257a4ap+124
+-0x1.5c75eep+126
+-0x1.2259e2p+126
+0x1.0f712p+126
+0x1.335d18p+124
+0x1.7f2b0ep+127
+-0x1.e7787ap+124
+-0x1.643d44p+124
+-0x1.0d4fc8p+126
+-0x1.4f7632p+125
+0x1.83f308p+124
+-0x1.4e9f84p+127
+-0x1.274b96p+127
+0x1.6ba63ep+127
+0x1.509dbep+126
+0x1.840572p+124
+-0x1.bd69e8p+127
+0x1.c6db54p+127
+-0x1.fbc912p+126
+0x1.b48faap+126
+0x1.bfd1cp+126
+-0x1.f725d4p+124
+0x1.00f158p+123
+0x1.67eb1ep+127
+0x1.e891aep+127
+-0x1.88591ep+121
+0x1.ef7916p+126
+0x1.ee050ep+126
+-0x1.a73a18p+127
+-0x1.579882p+127
+0x1.c04742p+127
+-0x1.f8fa9cp+127
+0x1.270d8p+125
+-0x1.6d04e4p+127
+0x1.df1458p+126
+0x1.287272p+127
+-0x1.397cf6p+126
+0x1.f07088p+127
+0x1.0abb1cp+127
+-0x1.d1d3cp+127
+0x1.2861bp+127
+0x1.1b4ebp+127
+0x1.11bc3ep+126
+0x1.db7196p+127
+0x1.f26566p+125
+-0x1.02fa32p+119
+0x1.02842ep+127
+0x1.f2653ap+127
+-0x1.9e02b8p+127
+0x1.73600ep+125
+0x1.d66e64p+127
+-0x1.193f4ep+126
+-0x1.4cbc9ep+125
+-0x1.e84018p+127
+0x1.2cac3ap+127
+0x1.971ed2p+126
+-0x1.2e6decp+126
+0x1.7311ecp+126
+-0x1.9cb426p+127
+0x1.c2aadp+126
+-0x1.6ba7aap+125
+-0x1.6c0d32p+126
+-0x1.c8973p+126
+0x1.b4043ep+125
+-0x1.cf9a56p+127
+-0x1.c052fp+125
+-0x1.f28f86p+127
+-0x1.3ba352p+127
+0x1.20bc0cp+126
+0x1.152ccap+127
+0x1.d2fe4ap+126
+0x1.49fc4cp+127
+-0x1.ccf72ap+127
+0x1.de79d4p+127
+0x1.616fc4p+126
+0x1.e725f2p+124
+0x1.64eaf6p+125
+0x1.b333b6p+127
+-0x1.8ba6a6p+122
+-0x1.9830d4p+127
+-0x1.939456p+127
+0x1.78a5bp+127
+-0x1.b098dap+127
+-0x1.2cceb8p+127
+0x1.6de1a4p+127
+-0x1.dbf82ap+127
+-0x1.b9e954p+121
+-0x1.b9f51p+126
+-0x1.1b3412p+127
+0x1.1393d8p+127
+-0x1.57e5c2p+126
+-0x1.a405b2p+125
+-0x1.ab5e3ap+127
+0x1.792558p+126
+0x1.9efd0ep+127
+0x1.4ce224p+126
+-0x1.e2d39ep+126
+0x1.d0705ep+127
+-0x1.fe5f58p+127
+0x1.68a408p+125
+-0x1.ede37p+127
+0x1.229214p+127
+0x1.86ab18p+127
+-0x1.4dc898p+127
+-0x1.7487bap+127
+0x1.0c1b44p+122
+0x1.1a8c6ap+126
+-0x1.64823ep+125
+0x1.8cc54cp+126
+0x1.aa418cp+124
+0x1.2a62d8p+127
+0x1.932aa8p+126
+-0x1.6204cap+127
+0x1.2bde6ap+127
+-0x1.e64feap+125
+-0x1.1bcbdep+127
+-0x1.c0e0e6p+126
+0x1.151758p+124
+0x1.60a1f8p+125
+-0x1.250226p+124
+0x1.cfc86ap+127
+-0x1.e6dd7ep+124
+-0x1.e473c2p+126
+0x1.8ab1b8p+127
+0x1.00ce16p+126
+-0x1.017548p+127
+0x1.ce94ccp+125
+0x1.e4efbcp+127
+-0x1.a9a90cp+127
+-0x1.7ff918p+126
+-0x1.7d0832p+125
+-0x1.a6082p+124
+0x1.bd44d8p+127
+-0x1.9ad0e6p+127
+0x1.9591e6p+127
+0x1.b55a82p+126
+0x1.76b34cp+127
+-0x1.add4a6p+122
+-0x1.6a83a4p+127
+0x1.29e034p+126
+0x1.2db8c6p+127
+0x1.93bb28p+126
+-0x1.ea8d34p+127
+0x1.08a9fp+126
+0x1.72efcep+127
+-0x1.7b4da6p+127
+-0x1.f84a78p+127
+-0x1.05cdf6p+126
+-0x1.3a7a4ep+126
+-0x1.93697p+125
+0x1.c6dd96p+127
+0x1.5982ap+127
+-0x1.0d49e8p+126
+-0x1.cc6ccep+125
+-0x1.893fd2p+126
+0x1.6f8ffep+124
+-0x1.c56fa2p+126
+-0x1.233b7cp+127
+-0x1.148d92p+127
+0x1.196e3ap+127
+0x1.ef844cp+127
+0x1.8ebff8p+127
+-0x1.f58ceep+127
+-0x1.9684b6p+127
+0x1.482f6cp+127
+-0x1.45b98cp+127
+-0x1.4b4702p+127
+0x1.97f8bep+124
+0x1.0f5f9ap+126
+0x1.e9e23ep+127
+-0x1.df586cp+126
+0x1.e45d8ep+124
+-0x1.91deaap+125
+-0x1.ae34bcp+127
+0x1.2e2b94p+127
+-0x1.6f811p+127
+0x1.6857b2p+127
+0x1.01157ap+127
+0x1.a015bep+126
+0x1.c44cp+127
+0x1.812c2ep+122
+-0x1.52766ap+127
+-0x1.c24286p+127
+0x1.db9f4ap+127
+0x1.41e85cp+127
+-0x1.72676ap+127
+0x1.bf808ep+127
+0x1.5725c8p+124
+0x1.2c9104p+127
+-0x1.bdecd8p+127
+-0x1.bf8bfep+127
+0x1.5faffcp+127
+-0x1.d7f0acp+127
+-0x1.37a932p+124
+0x1.3d9732p+126
+0x1.55daa8p+126
+-0x1.1db4cap+127
+-0x1.06242ap+127
+0x1.2fbd72p+127
+-0x1.537146p+127
+-0x1.dcc95ap+122
+-0x1.62d696p+126
+-0x1.385246p+127
+0x1.d84f16p+127
+0x1.43ec32p+127
+-0x1.f4756p+126
+0x1.8a85f8p+127
+0x1.f778a6p+127
+-0x1.6eab0ep+127
+-0x1.16892ep+126
+0x1.be06cep+124
+0x1.e04184p+125
+-0x1.d36784p+127
+-0x1.08828p+125
+0x1.0cf09ep+127
+-0x1.c3fbb2p+126
+-0x1.d19b18p+127
+-0x1.200854p+127
+0x1.7322e8p+127
+-0x1.b73cdap+124
+0x1.905048p+127
+-0x1.ca9b12p+126
+0x1.e7c1aap+127
+-0x1.0d5f38p+125
+0x1.43cacap+127
+0x1.9fccbcp+126
+-0x1.7676b4p+126
+0x1.6c973ep+125
+-0x1.de2fap+127
+-0x1.5f79a2p+127
+-0x1.7cfcap+127
+0x1.1cc1bp+124
+-0x1.404f6cp+127
+0x1.4d9e92p+120
+0x1.70bb86p+124
+-0x1.425486p+127
+-0x1.6cb556p+126
+0x1.1e7beep+127
+-0x1.3cc9fp+125
+-0x1.591312p+127
+-0x1.ddb2dp+127
+-0x1.2452fep+126
+-0x1.ca359p+126
+0x1.5b363ap+127
+-0x1.e27ffcp+127
+-0x1.d6b77p+126
+-0x1.d22e02p+127
+0x1.65018ap+127
+-0x1.4ef9e8p+127
+-0x1.4898cap+127
+-0x1.dbabdp+127
+0x1.8b5932p+127
+0x1.a19a84p+124
+0x1.44531cp+127
+0x1.645cccp+126
+0x1.4a6cf2p+127
+0x1.8e4948p+125
+0x1.b71178p+127
+0x1.6be434p+126
+-0x1.beb0ap+126
+-0x1.4b390ap+127
+0x1.0052e6p+127
+0x1.ba1d76p+127
+0x1.486624p+127
+0x1.0e6244p+127
+0x1.9173cep+127
+0x1.8d2404p+124
+0x1.e0e0aap+127
+-0x1.b456bcp+126
+-0x1.b2dbdep+125
+-0x1.509ffap+127
+0x1.72669cp+124
+0x1.c12e78p+125
+-0x1.cdc986p+127
+-0x1.c2a726p+126
+-0x1.499ecep+127
+0x1.9a7a38p+126
+0x1.6c268ep+127
+-0x1.8c498cp+127
+-0x1.a3b83ap+127
+0x1.6f3324p+127
+-0x1.235054p+127
+-0x1.3ef37p+126
+-0x1.22ec36p+125
+0x1.71bc34p+126
+0x1.ff570ap+127
+0x1.ddaabap+126
+0x1.3c0d48p+126
+0x1.18233p+127
+-0x1.f05722p+123
+-0x1.dde01ep+127
+0x1.2f1094p+124
+-0x1.719bep+127
+0x1.6fdec8p+126
+0x1.83ba12p+127
+-0x1.88de08p+127
+-0x1.433de6p+127
+-0x1.a725ecp+126
+0x1.b487bcp+126
+-0x1.3aefbcp+125
+0x1.b42758p+126
+-0x1.e3cd1p+126
+-0x1.27f124p+127
+-0x1.ba5422p+126
+0x1.236702p+127
+0x1.884f66p+126
+0x1.1c1faep+124
+-0x1.dac84cp+126
+0x1.17a4c6p+126
+-0x1.17ec7cp+127
+0x1.1b992cp+127
+0x1.40a9bcp+126
+0x1.defaacp+126
+0x1.f4198p+127
+0x1.e8389cp+126
+0x1.f84188p+127
+-0x1.bd0546p+127
+-0x1.f54b0cp+125
+0x1.ff1e04p+127
+0x1.db2468p+126
+0x1.dca9d6p+127
+0x1.96fa66p+126
+0x1.d1a3bep+123
+0x1.220bfep+126
+0x1.3a01acp+127
+-0x1.d7a546p+126
+-0x1.0a429cp+123
+0x1.b040dp+127
+-0x1.86168ap+127
+0x1.2a5084p+126
+0x1.de5acap+126
+-0x1.28d19ap+126
+0x1.85c414p+126
+-0x1.15e642p+127
+0x1.c7f17ep+127
+0x1.ea067p+127
+0x1.6c1146p+122
+-0x1.432264p+126
+-0x1.01e682p+124
+0x1.db36a4p+127
+0x1.da8c06p+123
+0x1.dcbdbep+127
+-0x1.a66cf8p+127
+0x1.17b9b2p+127
+0x1.4f6176p+127
+-0x1.584d28p+125
+0x1.4c4972p+126
+0x1.abf094p+123
+-0x1.75fe8ap+127
+-0x1.a558a4p+126
+0x1.ec1052p+127
+-0x1.ea4818p+127
+0x1.e74e7cp+126
+0x1.c4df18p+125
+-0x1.6f7bcep+127
+0x1.b66432p+126
+-0x1.6d2014p+127
+0x1.681feep+127
+0x1.e89f82p+125
+0x1.b77b44p+126
+0x1.c7395ep+127
+-0x1.717992p+125
+-0x1.f70332p+127
+-0x1.4ca60ep+127
+0x1.9e630ep+126
+-0x1.2bd648p+127
+-0x1.846734p+123
+-0x1.f5f9e6p+125
+0x1.ad0d5p+126
+0x1.ef9268p+127
+0x1.f1c966p+127
+0x1.37f9ecp+127
+-0x1.72a6c4p+127
+-0x1.ba78dp+125
+0x1.c8546cp+127
+-0x1.7ffffep+127
+0x1.fe8ddcp+127
+-0x1.647de2p+124
+0x1.5c5c32p+122
+-0x1.f542ap+123
+-0x1.a1d9a2p+126
+-0x1.02d5d4p+127
+0x1.6ed252p+125
+-0x1.42b25ap+127
+0x1.491188p+126
+-0x1.8b529cp+127
+-0x1.990cbp+127
+0x1.c30602p+127
+-0x1.9c99dap+127
+-0x1.af4ff4p+127
+-0x1.f9b32ep+126
+0x1.32a2cp+126
+-0x1.f4fd16p+120
+-0x1.d27efp+127
+0x1.d2a0ap+126
+-0x1.ab308ap+127
+-0x1.e03ebep+126
+-0x1.24872ap+127
+0x1.e73056p+127
+-0x1.02e8ecp+126
+-0x1.e62f0ap+125
+0x1.019c6p+125
+-0x1.e916c4p+122
+0x1.71f31ep+127
+0x1.a47dfep+121
+-0x1.703dcep+125
+-0x1.f2f5cp+126
+-0x1.1ff634p+126
+-0x1.d37a32p+127
+0x1.fa321ap+125
+-0x1.ffaecap+127
+-0x1.cc6f64p+126
+0x1.7e7f08p+127
+-0x1.e4ac7ap+123
+0x1.9b6e96p+125
+-0x1.539cdcp+127
+-0x1.d5b82p+126
+0x1.bb2982p+126
+0x1.91d57p+126
+0x1.f651ccp+126
+-0x1.d9bb2p+122
+0x1.79cff4p+127
+-0x1.fba23p+125
+-0x1.f42022p+127
+0x1.9fb3c2p+127
+0x1.9ed72p+126
+-0x1.cd56acp+126
+-0x1.f7c24p+127
+-0x1.991f8p+127
+-0x1.fe7856p+125
+0x1.82703p+127
+0x1.9f57bap+126
+0x1.80eb94p+127
+0x1.edd204p+127
+0x1.de57b2p+120
+-0x1.0a71ap+126
+0x1.b5d824p+126
+0x1.f07d7cp+127
+0x1.f942fcp+127
+-0x1.d2a6e6p+127
+0x1.a2c8fp+126
+0x1.8eadecp+127
+0x1.ea949ap+127
+-0x1.5cdf2cp+126
+-0x1.4cf40ap+126
+-0x1.3ae82p+119
+0x1.f45274p+127
+0x1.19a78ep+127
+0x1.2b4a6p+127
+0x1.debd42p+120
+-0x1.628426p+126
+-0x1.7d1866p+127
+-0x1.3bf11p+127
+0x1.9b9be8p+126
+0x1.877e4cp+126
+-0x1.1a866p+127
+-0x1.3ec208p+127
+-0x1.a2a502p+127
+0x1.300464p+126
+-0x1.f615fep+126
+0x1.a18378p+127
+-0x1.91d71cp+126
+0x1.3ee83p+126
+-0x1.849cf4p+127
+0x1.b2732ap+126
+-0x1.07fb8ap+127
+0x1.0fca06p+127
+-0x1.797e7cp+125
+-0x1.faf328p+127
+0x1.e26dfcp+126
+0x1.3d8e46p+125
+0x1.804be4p+127
+-0x1.1a63p+127
+-0x1.6f9a7ap+127
+-0x1.d5cea8p+126
+-0x1.ff6afep+127
+0x1.4094e2p+127
+0x1.027f2ep+127
+0x1.c95872p+125
+0x1.5ab42ap+127
+0x1.772156p+127
+0x1.847a6cp+127
+0x1.8e0574p+122
+-0x1.a1b6e8p+127
+0x1.b452bap+127
+-0x1.26b9a8p+127
+-0x1.3b3d6cp+127
+-0x1.4ad3eep+123
+-0x1.858082p+126
+0x1.804abp+127
+-0x1.c60ac4p+126
+-0x1.912492p+127
+-0x1.a7b3aep+124
+0x1.811a9ap+125
+0x1.2d333ap+127
+0x1.f2a59ap+127
+0x1.b1e24cp+126
+-0x1.d2ecfap+127
+0x1.928e86p+124
+0x1.1fd20cp+123
+-0x1.64b136p+127
+0x1.258c3ep+124
+-0x1.34dcdp+127
+-0x1.085aa4p+127
+-0x1.3aa528p+127
+0x1.b91e32p+127
+0x1.9c9b04p+125
+0x1.9d1b6ep+127
+0x1.b6f8e6p+127
+-0x1.2ea544p+126
+-0x1.b89acap+125
+-0x1.4fd3d2p+127
+-0x1.81b142p+127
+0x1.34a48p+125
+0x1.33700cp+127
+0x1.fddf4ep+127
+0x1.a5e576p+127
+0x1.bbca62p+126
+-0x1.93a846p+127
+0x1.5852dep+126
+0x1.24cba4p+127
+0x1.ba290ep+127
+0x1.2c65b4p+127
+0x1.50f924p+125
+0x1.5ec82ap+126
+-0x1.f2d40ep+127
+-0x1.f1f81cp+127
+-0x1.ede522p+127
+-0x1.5eda3ap+126
+-0x1.ede2a6p+127
+0x1.71a632p+127
+-0x1.a0e922p+125
+-0x1.abea26p+126
+0x1.2a561ep+127
+0x1.ebafeap+127
+0x1.235df4p+127
+0x1.adfa1ep+126
+0x1.de9704p+126
+0x1.441b3ep+127
+-0x1.272264p+127
+-0x1.c933b8p+126
+-0x1.38a8aep+127
+0x1.af615ep+125
+0x1.856cc4p+127
+0x1.764702p+126
+-0x1.c90eaap+126
+-0x1.5b92aep+126
+0x1.51f76cp+125
+0x1.a97acep+125
+0x1.f3d9b8p+126
+0x1.ec55aap+127
+-0x1.620f9cp+127
+-0x1.06ed3ap+127
+-0x1.1fce04p+125
+0x1.3b793p+127
+0x1.0a6f5p+126
+0x1.0aa9fp+127
+0x1.8c4936p+127
+-0x1.1c6366p+127
+-0x1.5deff6p+126
+0x1.1ddd42p+127
+-0x1.3490b2p+121
+0x1.25cd4ep+127
+0x1.fa2b8ep+127
+0x1.77c55ep+127
+0x1.d667aep+127
+0x1.e58d1ep+125
+0x1.5a7a72p+127
+-0x1.5a62p+125
+0x1.ed0092p+126
+0x1.7f63a2p+127
+-0x1.fe858cp+127
+0x1.43dec4p+127
+0x1.970108p+123
+0x1.307e2ap+127
+-0x1.cccc74p+127
+0x1.7c06c4p+125
+0x1.d94a2ap+125
+0x1.79df3ap+126
+0x1.bc1764p+127
+-0x1.fe801p+127
+0x1.7b2dd4p+127
+-0x1.116eb8p+127
+0x1.d75992p+127
+-0x1.272e2p+126
+-0x1.601918p+127
+-0x1.126fbp+126
+-0x1.a24b72p+126
+-0x1.29dfcap+126
+-0x1.29c7f6p+126
+0x1.8abc12p+124
+0x1.865f3ep+126
+0x1.3e8658p+124
+-0x1.cf9398p+126
+0x1.726094p+126
+-0x1.065714p+127
+0x1.6c63p+126
+0x1.3f1238p+124
+-0x1.93641p+127
+0x1.8c4b6p+124
+-0x1.932e32p+127
+-0x1.35c6bap+124
+-0x1.868be4p+127
+0x1.55eecep+125
+0x1.c99f48p+124
+-0x1.b8dd52p+127
+-0x1.10b9dp+127
+0x1.153ab6p+126
+-0x1.160346p+126
+-0x1.fae694p+126
+0x1.4811bap+126
+-0x1.19246cp+127
+-0x1.a7601p+127
+-0x1.98efb8p+127
+-0x1.1eb9bp+125
+-0x1.bb1464p+127
+0x1.a7ff0cp+125
+0x1.9a7a5p+125
+0x1.95293p+127
+-0x1.51c376p+127
+0x1.e0f96ap+125
+-0x1.0fd08p+126
+-0x1.1c3198p+127
+-0x1.8fe8eap+127
+0x1.dddb8p+125
+-0x1.c3b0fep+127
+0x1.28f128p+127
+-0x1.23e6fap+125
+0x1.5d6992p+127
+0x1.535b72p+122
+0x1.0d3c2p+126
+0x1.b16408p+126
+-0x1.2555e4p+127
+0x1.1cb226p+127
+0x1.3a3e9cp+127
+-0x1.05185ep+127
+-0x1.67c268p+126
+-0x1.4e5ddap+127
+-0x1.6ca364p+127
+-0x1.ca426ap+127
+0x1.94a2e8p+127
+-0x1.76ab26p+126
+0x1.c8da18p+127
+-0x1.93faaep+125
+-0x1.e9e83ap+127
+-0x1.40a736p+127
+0x1.55576ep+126
+-0x1.45f1f2p+124
+0x1.79c504p+127
+-0x1.360362p+126
+-0x1.c27904p+127
+0x1.2301c4p+127
+0x1.07030ap+126
+-0x1.1e8c62p+126
+-0x1.689376p+127
+0x1.e64b6cp+126
+0x1.ae8848p+127
+0x1.c007d8p+126
+-0x1.6715d4p+125
+-0x1.174ee2p+126
+-0x1.39bd58p+125
+0x1.827734p+127
+-0x1.7f4458p+126
+0x1.bcf634p+127
+-0x1.9da76cp+127
+-0x1.29bdfcp+127
+-0x1.7adf3p+127
+0x1.dbfa4p+126
+-0x1.062e4p+127
+-0x1.c74514p+127
+0x1.3f3412p+127
+-0x1.afa1dap+127
+-0x1.31713ap+127
+-0x1.bb5782p+122
+0x1.ccf8d2p+125
+-0x1.6d829ep+126
+-0x1.0a5ea4p+127
+0x1.55dd26p+126
+-0x1.5b01e4p+126
+0x1.d82718p+127
+0x1.70be88p+124
+-0x1.06d144p+126
+0x1.b0e896p+127
+-0x1.4f81dep+127
+-0x1.8bfce8p+126
+0x1.50bf96p+127
+0x1.2a1504p+127
+0x1.d5e822p+126
+0x1.884e4ap+125
+0x1.59dfeap+126
+0x1.99ebaep+124
+0x1.e858cap+127
+0x1.c8fbe8p+124
+-0x1.b9825p+127
+0x1.f7c908p+126
+0x1.4ebf64p+127
+-0x1.0d8ce2p+125
+-0x1.caf528p+127
+-0x1.1b55cep+122
+-0x1.379df8p+126
+-0x1.1faa82p+126
+-0x1.a0647ap+127
+0x1.17791p+127
+0x1.49b64ap+126
+-0x1.983a82p+125
+0x1.b64672p+127
+-0x1.c7b992p+126
+0x1.5c74f8p+126
+0x1.a05ab6p+125
+0x1.37f724p+125
+0x1.8c14dp+125
+-0x1.3586bcp+127
+0x1.198c72p+124
+0x1.ded958p+123
+0x1.9315a6p+127
+-0x1.a51932p+125
+0x1.ab4108p+125
+-0x1.4081e2p+127
+-0x1.d9246p+126
+-0x1.04d3a4p+122
+-0x1.2f8018p+126
+0x1.3ef576p+124
+0x1.087dd2p+127
+-0x1.38bd8p+126
+-0x1.2eba8ap+123
+0x1.4c64f6p+125
+-0x1.a1a64ap+126
+0x1.64cae8p+127
+0x1.5edef2p+127
+0x1.1a4074p+127
+-0x1.4441d2p+126
+-0x1.f931eep+126
+0x1.d154e4p+126
+-0x1.2bf03p+127
+0x1.caa59cp+125
+0x1.560a72p+127
+-0x1.7a127ep+127
+-0x1.79603ep+127
+0x1.f72202p+127
+0x1.f9d79ep+115
+0x1.df5562p+127
+0x1.ebb714p+127
+0x1.79507ep+127
+0x1.e41968p+127
+0x1.af58e2p+126
+-0x1.15d4bp+127
+-0x1.dd6a9ap+121
+-0x1.b3d322p+126
+-0x1.eb0a6ap+127
+-0x1.2841d6p+127
+0x1.210f7p+126
+-0x1.1e943cp+127
+0x1.7ddaaap+127
+0x1.4b65aap+127
+-0x1.c2b1dcp+127
+-0x1.05edc2p+127
+0x1.bd0f82p+127
+-0x1.99a5c2p+127
+-0x1.ebc0c2p+127
+0x1.6b81f2p+126
+-0x1.52ea08p+127
+0x1.f1b01p+127
+0x1.8424bp+125
+0x1.d1337cp+126
+-0x1.340dd4p+126
+-0x1.bd8b96p+127
+0x1.05a5eep+124
+-0x1.07c678p+126
+0x1.0a2558p+127
+0x1.ebef28p+127
+-0x1.ea35b2p+124
+0x1.32ce9p+126
+0x1.0ca7c6p+125
+-0x1.80555ap+126
+0x1.0d601cp+127
+0x1.b32c6ap+127
+-0x1.e377ccp+127
+-0x1.175c04p+124
+0x1.7a9a56p+124
+-0x1.5c886p+126
+-0x1.dcc536p+127
+-0x1.18fdd2p+127
+-0x1.7fca7ap+127
+-0x1.a3825p+127
+-0x1.c2fe5p+125
+-0x1.3dc9d6p+127
+0x1.4b61bp+127
+-0x1.4da15ep+125
+0x1.c3ee72p+127
+0x1.56841ap+127
+0x1.18a616p+126
+-0x1.1aaefep+125
+-0x1.cd6a2p+127
+0x1.042e8ap+122
+-0x1.e1c8b6p+126
+-0x1.23d7f8p+123
+-0x1.e40994p+126
+-0x1.100c5ap+126
+0x1.2457e6p+127
+0x1.5d42b4p+126
+0x1.a8d12ep+127
+0x1.f0c328p+124
+-0x1.8a76d4p+127
+-0x1.d7c40cp+127
+0x1.57873p+126
+0x1.f1d096p+120
+-0x1.1d612cp+127
+0x1.079d04p+127
+0x1.c27834p+127
+0x1.fba11p+127
+-0x1.1f658ap+126
+-0x1.92c8aep+126
+-0x1.26cbbap+127
+-0x1.6e7886p+127
+0x1.f43dd2p+126
+0x1.01f2ap+124
+-0x1.214868p+126
+0x1.4c3684p+127
+0x1.002914p+127
+0x1.24d8cep+126
+0x1.85b0d8p+126
+0x1.2c8856p+127
+-0x1.21fac4p+127
+-0x1.e6616ap+126
+-0x1.3f09d6p+127
+0x1.c5e7cp+125
+-0x1.74244ep+127
+-0x1.384e1ap+127
+0x1.d3af4ep+125
+-0x1.10f90cp+127
+0x1.83e842p+125
+-0x1.55351cp+124
+0x1.2be46ap+127
+0x1.68c9e2p+127
+-0x1.aeb338p+127
+0x1.58cda8p+127
+0x1.bf9184p+126
+0x1.abeb7p+124
+0x1.a766bcp+127
+-0x1.c98866p+126
+-0x1.0fb0cep+126
+0x1.1e4cb4p+123
+0x1.ba09e8p+126
+0x1.daccb2p+126
+-0x1.a38692p+126
+-0x1.1b9cf8p+127
+0x1.55b5a8p+127
+0x1.2f8adp+126
+-0x1.5892f2p+126
+-0x1.58e0c8p+127
+0x1.202fc8p+125
+-0x1.3c22cp+119
+-0x1.dc3aacp+126
+-0x1.8b8984p+126
+-0x1.2668c4p+127
+-0x1.1ff956p+126
+-0x1.eadb6ap+127
+-0x1.b9b026p+127
+-0x1.becc72p+127
+-0x1.27fb3cp+126
+0x1.f229d2p+127
+0x1.f55334p+127
+-0x1.c9b1b8p+127
+-0x1.e8c282p+123
+0x1.c33a2ep+120
+0x1.089468p+127
+0x1.bc1452p+126
+0x1.b429dcp+126
+-0x1.ab1eb2p+127
+0x1.f0160ap+127
+0x1.2e63a6p+126
+-0x1.9a2de4p+127
+-0x1.aadfa8p+127
+0x1.894b26p+127
+0x1.1ad3a4p+127
+0x1.c82efcp+127
+-0x1.2acc9ep+126
+0x1.91ad44p+125
+0x1.6879d6p+127
+-0x1.93e902p+126
+-0x1.106516p+127
+-0x1.24cd02p+126
+-0x1.eaea76p+127
+-0x1.b08518p+125
+-0x1.ee97aap+127
+-0x1.faa35cp+126
+0x1.6d8594p+127
+0x1.c7defp+126
+-0x1.297f76p+127
+-0x1.0cd462p+127
+-0x1.22b82p+127
+-0x1.f35806p+127
+-0x1.da2c04p+126
+0x1.5c7528p+124
+-0x1.6d3494p+124
+-0x1.60c3c6p+125
+-0x1.456a5p+125
+-0x1.fd187cp+127
+0x1.a0cb12p+126
+-0x1.775562p+127
+0x1.9f40bep+127
+-0x1.6abb9cp+124
+-0x1.811d88p+123
+0x1.fd59f6p+127
+-0x1.b0a3cep+123
+-0x1.133fcep+127
+0x1.a0bc92p+124
+-0x1.a5d912p+127
+0x1.b83e98p+127
+0x1.4ac334p+126
+0x1.35afcap+127
+-0x1.e579dap+123
+0x1.f3db04p+126
+0x1.a7b39ap+127
+0x1.75c51ep+124
+-0x1.80729ap+127
+0x1.8bd07ap+126
+-0x1.d1b4bap+127
+-0x1.2e4ffap+127
+-0x1.eb47fap+127
+-0x1.c3d2e4p+125
+-0x1.687fep+125
+-0x1.4138a6p+126
+-0x1.ead8e2p+126
+0x1.c1c582p+127
+-0x1.57cd42p+125
+-0x1.d33392p+127
+-0x1.7ef3c6p+127
+0x1.db2292p+126
+0x1.5b7fe4p+127
+-0x1.4c7fc4p+127
+0x1.62166cp+127
+0x1.985a48p+126
+0x1.fa25c6p+127
+0x1.355e1ep+127
+0x1.cf77a2p+121
+-0x1.26553ep+127
+-0x1.6b3638p+125
+0x1.14afe4p+127
+0x1.66b59ap+126
+0x1.96da66p+127
+-0x1.5afc26p+127
+0x1.f6319p+125
+-0x1.b02a0ep+126
+-0x1.a6c704p+125
+0x1.d6cedp+125
+-0x1.8eef4p+127
+0x1.9b41fp+126
+0x1.f5ac44p+126
+0x1.88f47ep+127
+-0x1.51c7aep+124
+-0x1.6f1ad4p+127
+0x1.6b7d56p+127
+0x1.01c798p+127
+-0x1.737cf8p+127
+0x1.1a6c6ap+127
+-0x1.df0feap+118
+-0x1.b46438p+126
+-0x1.ecdf0ap+125
+0x1.0fbd18p+127
+-0x1.f888f4p+127
+0x1.c31396p+127
+0x1.9971b8p+124
+0x1.0dd458p+126
+-0x1.fd7c2ap+125
+0x1.967296p+127
+0x1.162de6p+126
+0x1.178e92p+126
+0x1.a655ep+127
+-0x1.65702ap+125
+0x1.983398p+127
+-0x1.da102cp+127
+-0x1.16e99cp+127
+0x1.3f375ap+127
+-0x1.92c0e8p+127
+0x1.84ade4p+125
+-0x1.e46e88p+127
+0x1.196a54p+122
+0x1.0e5c84p+127
+0x1.173cbap+127
+0x1.1bbae4p+127
+0x1.40968p+127
+0x1.e58018p+127
+0x1.c0393cp+126
+0x1.cb7754p+127
+0x1.324586p+127
+-0x1.f750fcp+126
+-0x1.2626fap+127
+0x1.d0bf74p+125
+0x1.37aad6p+127
+-0x1.492acap+127
+-0x1.7d65aep+127
+0x1.d17a18p+127
+-0x1.930284p+124
+0x1.2fbef2p+126
+-0x1.87263ep+125
+-0x1.a55e1ap+127
+-0x1.fcbf46p+127
+-0x1.6eb444p+127
+-0x1.d62a38p+126
+0x1.3e9414p+127
+-0x1.d7000ap+127
+-0x1.8c41eep+127
+-0x1.21ec58p+126
+-0x1.2b81fcp+125
+0x1.90989cp+127
+-0x1.901dc8p+127
+-0x1.3d4232p+127
+0x1.327a7p+126
+-0x1.cbb6d2p+127
+-0x1.0db8cap+127
+-0x1.3dc384p+126
+-0x1.47772ap+127
+0x1.c816d2p+127
+0x1.bb6b32p+126
+0x1.ff7f86p+125
+0x1.c6d3acp+127
+0x1.ef207ap+126
+0x1.e0aa8ep+127
+0x1.4dd89ap+125
+-0x1.377ddp+124
+0x1.dc61d8p+125
+0x1.2c072p+127
+0x1.ae9d6ep+127
+0x1.08fd06p+125
+-0x1.28415ep+126
+-0x1.16ede4p+127
+0x1.9b2776p+126
+0x1.3babf6p+127
+-0x1.e3eb1ap+126
+0x1.ccb05cp+127
+-0x1.93d14ap+126
+-0x1.0c4cb4p+124
+0x1.250a4p+124
+0x1.857258p+127
+0x1.267114p+123
+0x1.7b5184p+126
+0x1.43fac6p+125
+0x1.b16a82p+127
+0x1.bddf46p+125
+-0x1.f7e67ap+124
+-0x1.4d33aep+126
+-0x1.4e561p+127
+0x1.420606p+127
+-0x1.cc0dcep+127
+-0x1.674bdap+126
+0x1.a4c7c6p+124
+-0x1.b42372p+127
+-0x1.e57d94p+122
+-0x1.e0c884p+127
+-0x1.77b204p+126
+0x1.991306p+127
+0x1.f9010cp+127
+0x1.39b8e4p+127
+0x1.cb005ep+124
+-0x1.1d64fap+125
+0x1.f8952cp+127
+0x1.120976p+127
+0x1.4b64aap+125
+-0x1.173e78p+126
+0x1.e17882p+127
+-0x1.726a98p+127
+-0x1.f9ef9cp+126
+-0x1.8d119p+125
+-0x1.70ff56p+127
+0x1.ea0c86p+127
+0x1.7022b6p+127
+0x1.e9083p+127
+0x1.bbffe4p+124
+0x1.aa851ap+127
+-0x1.53d26ep+127
+0x1.c6ffaep+127
+-0x1.99eb22p+125
+0x1.33ef2p+123
+0x1.d77dccp+123
+-0x1.ce9b44p+127
+-0x1.254fc8p+124
+-0x1.72aa42p+126
+-0x1.d3f278p+126
+0x1.93389ap+127
+-0x1.926ac8p+127
+0x1.beb2fep+125
+0x1.62be8ep+124
+0x1.d9a79ap+125
+-0x1.6ebb06p+126
+0x1.5f3192p+124
+0x1.bc6a66p+126
+0x1.8165ap+127
+0x1.7a40ep+127
+-0x1.06c2f6p+126
+0x1.60cd96p+127
+-0x1.86e2dcp+127
+0x1.68fc4p+127
+0x1.33fccep+126
+0x1.e73a0cp+126
+0x1.7edd16p+126
+0x1.5329c4p+126
+0x1.545bep+127
+-0x1.4f173ep+125
+0x1.e57b86p+127
+0x1.2d7602p+126
+0x1.15150ep+125
+0x1.a8154ap+127
+0x1.a06656p+127
+0x1.b05742p+124
+-0x1.6c522ap+125
+0x1.dee992p+124
+-0x1.da383ep+127
+-0x1.6a872cp+127
+-0x1.a8f19ap+127
+-0x1.b1ae2ap+125
+0x1.6c7992p+127
+0x1.fedadap+127
+0x1.4262f6p+118
+0x1.529796p+127
+-0x1.33de58p+127
+0x1.8072bep+127
+-0x1.e228dp+127
+0x1.7ba86cp+127
+0x1.757fa2p+124
+-0x1.41a1d8p+127
+-0x1.079532p+125
+0x1.bf446ep+124
+-0x1.d0aa36p+127
+0x1.d44d3ep+127
+0x1.da43e6p+122
+-0x1.fd3eap+125
+-0x1.6d631p+125
+-0x1.0c04bp+127
+0x1.dca1ccp+126
+-0x1.da5b3ap+127
+-0x1.1d6222p+126
+0x1.139872p+126
+-0x1.b1e3dcp+127
+-0x1.d55a1cp+126
+0x1.31356ap+127
+0x1.023364p+125
+-0x1.c9b09p+125
+0x1.df92e4p+124
+-0x1.be599p+126
+0x1.5622d4p+127
+0x1.0b217ep+127
+-0x1.b3055cp+127
+0x1.1064f8p+126
+0x1.844bd6p+127
+-0x1.691194p+127
+0x1.07b97cp+127
+0x1.5c2c46p+127
+0x1.c58dp+125
+0x1.8ebf58p+121
+-0x1.e62b46p+127
+-0x1.0b943p+126
+-0x1.ace99ep+125
+0x1.c64992p+125
+-0x1.7ccefap+127
+0x1.e069e8p+127
+-0x1.cf1344p+127
+-0x1.f07a08p+127
+0x1.182b4cp+125
+0x1.a251a8p+127
+-0x1.34478ap+127
+0x1.1dad6ap+127
+-0x1.2471bp+127
+0x1.12481cp+127
+-0x1.de117ap+127
+-0x1.5346ccp+127
+0x1.ed1dfap+125
+-0x1.b036ep+124
+-0x1.d0e63p+126
+0x1.4dfafp+127
+0x1.77f732p+127
+0x1.d0b398p+126
+0x1.1f5464p+127
+0x1.d515e2p+126
+0x1.eed09cp+123
+0x1.b315b2p+126
+0x1.8f3ffep+126
+-0x1.95aa82p+125
+0x1.f96a54p+124
+-0x1.d64394p+126
+-0x1.0d3c0ap+126
+-0x1.d1e726p+127
+0x1.c0d9p+127
+-0x1.67f11cp+127
+-0x1.e24d04p+126
+0x1.9a0866p+126
+0x1.8e8b24p+126
+0x1.7f1798p+123
+-0x1.c9e16p+127
+0x1.8d3924p+127
+-0x1.15206ep+126
+-0x1.d6b81p+126
+0x1.bf5c9ap+127
+-0x1.2c804p+126
+0x1.d2656ep+126
+0x1.2fb762p+127
+0x1.5b0e7ap+127
+0x1.af4efcp+126
+-0x1.146104p+127
+0x1.9f0448p+127
+-0x1.2fb12ap+124
+-0x1.1493bcp+127
+0x1.004c38p+126
+-0x1.ab8dc2p+123
+0x1.ae207p+127
+-0x1.ba2dbep+127
+-0x1.6f1b0ep+126
+-0x1.d8ee84p+127
+0x1.a89058p+126
+-0x1.1a0454p+125
+0x1.b312acp+127
+0x1.b131c8p+126
+-0x1.648b5ep+126
+-0x1.a6669ap+125
+-0x1.659524p+127
+0x1.bd0b72p+125
+-0x1.3e9514p+125
+0x1.a56fc4p+127
+-0x1.e65ac6p+127
+-0x1.a61272p+127
+0x1.244482p+126
+0x1.86beap+127
+-0x1.019636p+127
+0x1.678686p+127
+-0x1.3ce1e8p+127
+0x1.74c1a6p+127
+0x1.b84792p+123
+-0x1.c6e454p+127
+0x1.ef21e4p+127
+0x1.132a2ep+127
+-0x1.7c222cp+124
+-0x1.37ceeep+127
+-0x1.c5193cp+126
+-0x1.f442c2p+127
+0x1.d10798p+127
+-0x1.2a5b66p+127
+-0x1.452f14p+125
+0x1.87c2eap+127
+0x1.9265b4p+127
+0x1.b2771cp+126
+-0x1.360226p+126
+0x1.cf463cp+127
+0x1.0ac5c4p+127
+0x1.5dd746p+124
+0x1.0565f2p+127
+-0x1.a0374p+127
+-0x1.1332cap+125
+-0x1.79b9ccp+127
+-0x1.484faep+127
+-0x1.87b832p+123
+0x1.77c0aep+127
+0x1.aedfe4p+127
+0x1.16f478p+127
+0x1.1374f2p+127
+-0x1.b355f2p+127
+0x1.cac31ap+127
+-0x1.5b32ccp+127
+-0x1.ed9a2ep+126
+-0x1.348544p+127
+-0x1.7d4ad2p+126
+-0x1.9c657p+127
+0x1.336a88p+127
+0x1.30d69ep+125
+0x1.e3e9ep+120
+0x1.2d4e32p+127
+0x1.1c86aep+127
+-0x1.445628p+127
+-0x1.5882b2p+127
+0x1.ad2052p+121
+0x1.1e16a8p+125
+-0x1.5c263cp+127
+-0x1.d461d4p+125
+0x1.46fc5ep+125
+-0x1.34acfcp+127
+-0x1.7db37cp+125
+# Random inputs in the range [0.000000e+00,8.388608e+06]
+## name: workload-integral
+0x1.abe01p+20
+0x1.2003bp+20
+0x1.2615dp+20
+0x1.2f9a6cp+22
+0x1.bc07bp+21
+0x1.d4a32p+19
+0x1.f4aeap+21
+0x1.1a96ep+21
+0x1.42a41p+21
+0x1.09ed8p+20
+0x1.297148p+22
+0x1.52b95cp+22
+0x1.77868p+22
+0x1.3f5b7p+21
+0x1.627974p+22
+0x1.a52664p+22
+0x1.763b6p+22
+0x1.a3b938p+21
+0x1.d8f684p+22
+0x1.240b6cp+22
+0x1.e7f4cp+19
+0x1.20cb14p+22
+0x1.0d0d6cp+22
+0x1.02e2c4p+22
+0x1.a6b804p+22
+0x1.fb7abcp+22
+0x1.a933bp+20
+0x1.643e34p+22
+0x1.3b39ep+19
+0x1.cdaffp+22
+0x1.53ddecp+22
+0x1.a1a06p+21
+0x1.cf3dp+22
+0x1.8802a8p+21
+0x1.4c937p+22
+0x1.1659acp+22
+0x1.40fap+17
+0x1.1fd89p+22
+0x1.8cd9cp+22
+0x1.5eaf2p+22
+0x1.f32dfp+21
+0x1.cdf8bp+21
+0x1.957ccp+21
+0x1.cdce9cp+22
+0x1.2e082cp+22
+0x1.5636ep+20
+0x1.d27c3p+21
+0x1.27e4p+21
+0x1.adf4p+19
+0x1.4b2b64p+22
+0x1.8fba5p+20
+0x1.09bfdcp+22
+0x1.dc5dp+19
+0x1.332cp+17
+0x1.66ac6p+21
+0x1.0540cp+18
+0x1.5d262p+22
+0x1.787888p+21
+0x1.5e226p+19
+0x1.d8389p+21
+0x1.c165p+16
+0x1.bcc64p+20
+0x1.b45318p+22
+0x1.3d65a8p+22
+0x1.8811ccp+22
+0x1.6a52b4p+22
+0x1.d9720cp+22
+0x1.8eead4p+22
+0x1.9c7a4p+21
+0x1.96545p+22
+0x1.ae3cp+15
+0x1.f38b98p+21
+0x1.315fbp+22
+0x1.4250ecp+22
+0x1.d88c88p+22
+0x1.1547p+19
+0x1.444eep+19
+0x1.f9ef6p+22
+0x1.4ef0ccp+22
+0x1.72b614p+22
+0x1.62a098p+21
+0x1.2c6bp+19
+0x1.8a9f78p+22
+0x1.ff667p+22
+0x1.f984c4p+22
+0x1.77c5cp+19
+0x1.cf071p+21
+0x1.025388p+22
+0x1.075c7p+21
+0x1.55c2c8p+21
+0x1.14841cp+22
+0x1.827f3p+21
+0x1.23123p+21
+0x1.8d61d8p+22
+0x1.ba593p+22
+0x1.d60c78p+21
+0x1.c8b264p+22
+0x1.1bbefp+22
+0x1.1b422p+22
+0x1.1f2e5cp+22
+0x1.19d93cp+22
+0x1.002ap+16
+0x1.c1abcp+20
+0x1.d0bdp+16
+0x1.c56a4cp+22
+0x1.53066p+20
+0x1.1faf7cp+22
+0x1.7e098p+22
+0x1.b09b18p+21
+0x1.64a63p+22
+0x1.6b7ap+22
+0x1.732c7p+20
+0x1.5ae388p+21
+0x1.90074p+20
+0x1.2b392cp+22
+0x1.fd06p+20
+0x1.4a3aa8p+22
+0x1.797a0cp+22
+0x1.72b598p+21
+0x1.8277c8p+22
+0x1.512b28p+22
+0x1.52b738p+21
+0x1.07bed8p+21
+0x1.bb59p+20
+0x1.95b898p+21
+0x1.56fap+22
+0x1.550edp+21
+0x1.28932p+20
+0x1.3d55c8p+22
+0x1.cd3dap+20
+0x1.d216cp+22
+0x1.bc02c8p+21
+0x1.1804ap+22
+0x1.f27bep+22
+0x1.1d8eccp+22
+0x1.dfa624p+22
+0x1.ba124cp+22
+0x1.763c6p+20
+0x1.0698acp+22
+0x1.dc81d4p+22
+0x1.103b1p+21
+0x1.13cc78p+21
+0x1.26a95p+22
+0x1.cf5804p+22
+0x1.9b16a8p+21
+0x1.bfd3ep+22
+0x1.e73184p+22
+0x1.8de38cp+22
+0x1.071fap+19
+0x1.f3f5d8p+21
+0x1.79e4d8p+21
+0x1.537968p+22
+0x1.fa43ep+19
+0x1.4d16cp+20
+0x1.239f88p+21
+0x1.ed586p+21
+0x1.0446e8p+22
+0x1.095bcp+18
+0x1.78395p+21
+0x1.aa7e1cp+22
+0x1.94f598p+21
+0x1.03f9cp+19
+0x1.7ccad8p+21
+0x1.21bb14p+22
+0x1.b65ec4p+22
+0x1.9e8b7p+22
+0x1.1a012p+19
+0x1.81fcp+17
+0x1.d2e73p+22
+0x1.906408p+21
+0x1.78e38p+17
+0x1.331208p+21
+0x1.932ec8p+22
+0x1.2bcc3p+21
+0x1.03651p+22
+0x1.75c0d8p+21
+0x1.2a936p+20
+0x1.6f329p+20
+0x1.e9df2cp+22
+0x1.354b58p+22
+0x1.3ed2f4p+22
+0x1.8a961p+20
+0x1.28ce3p+21
+0x1.2c859p+22
+0x1.bbfe1p+20
+0x1.8af0ap+21
+0x1.510798p+22
+0x1.66307p+22
+0x1.c805cp+18
+0x1.cd968p+22
+0x1.0bb9bcp+22
+0x1.3c9e68p+21
+0x1.a9436p+20
+0x1.fcf5b8p+22
+0x1.41abbp+22
+0x1.fdd34p+18
+0x1.d3cf0cp+22
+0x1.52f6dp+20
+0x1.03d2c8p+21
+0x1.ed98ap+19
+0x1.6d944p+21
+0x1.5048dp+20
+0x1.6a3ba8p+21
+0x1.3ffddp+22
+0x1.c36ba8p+22
+0x1.6b854cp+22
+0x1.ff8f68p+22
+0x1.62fa8p+20
+0x1.da2d1p+20
+0x1.d1af3p+20
+0x1.3ce388p+21
+0x1.30c2dp+21
+0x1.d8a46p+21
+0x1.9fb78p+18
+0x1.adec48p+21
+0x1.5b1c2cp+22
+0x1.3fe608p+22
+0x1.ee1424p+22
+0x1.e696p+20
+0x1.9ba2p+20
+0x1.5f9194p+22
+0x1.8d528cp+22
+0x1.d3808p+18
+0x1.fa6008p+22
+0x1.8d1c7p+21
+0x1.dd6ap+15
+0x1.f39f6p+22
+0x1.21d718p+21
+0x1.5be5f8p+22
+0x1.7fdaf8p+21
+0x1.918174p+22
+0x1.c4cbep+22
+0x1.8a3e68p+21
+0x1.a4129p+20
+0x1.a87254p+22
+0x1.5b7fp+16
+0x1.20e3dcp+22
+0x1.c071c4p+22
+0x1.cf284p+21
+0x1.cb1c58p+21
+0x1.cdb24p+18
+0x1.559c6p+19
+0x1.2bb43p+20
+0x1.60381p+20
+0x1.debf6p+21
+0x1.9d49a8p+22
+0x1.b635a8p+21
+0x1.1fd3p+16
+0x1.6a9d34p+22
+0x1.9b3988p+21
+0x1.ce613p+22
+0x1.5a69ep+22
+0x1.5da9a8p+21
+0x1.d7efdp+22
+0x1.e2017p+21
+0x1.463fbcp+22
+0x1.5c4444p+22
+0x1.035fap+19
+0x1.e9fa34p+22
+0x1.8be84p+22
+0x1.279ccp+20
+0x1.ea9abcp+22
+0x1.39dbb8p+22
+0x1.2b9b0cp+22
+0x1.becfcp+18
+0x1.cf229cp+22
+0x1.3439e8p+22
+0x1.acc86p+22
+0x1.68e3cp+21
+0x1.3f4e1p+21
+0x1.845524p+22
+0x1.4e3824p+22
+0x1.4dd3b4p+22
+0x1.55b6ep+21
+0x1.95ed6p+20
+0x1.b99bbp+21
+0x1.0290bp+22
+0x1.49c384p+22
+0x1.bc5598p+21
+0x1.838cfcp+22
+0x1.8825dcp+22
+0x1.1728bp+21
+0x1.111bdp+22
+0x1.a96c4p+20
+0x1.61ef38p+21
+0x1.e5245p+20
+0x1.dead3p+21
+0x1.aece68p+21
+0x1.14dc5p+21
+0x1.3dcfep+21
+0x1.d344fp+21
+0x1.cc635p+20
+0x1.c26778p+21
+0x1.6c1f48p+21
+0x1.12f8d8p+21
+0x1.d7094p+21
+0x1.3f625p+21
+0x1.21f0ep+21
+0x1.9cc79p+21
+0x1.d802c8p+21
+0x1.c2ab18p+22
+0x1.ae80ap+20
+0x1.eeeabp+21
+0x1.7778ep+21
+0x1.119c9p+21
+0x1.ccdde8p+22
+0x1.ea24c8p+22
+0x1.0e7d74p+22
+0x1.3ee91p+20
+0x1.378db8p+22
+0x1.a78278p+22
+0x1.de5edp+22
+0x1.5da0bcp+22
+0x1.5132f8p+22
+0x1.2bd78cp+22
+0x1.c4bc18p+22
+0x1.2c9448p+21
+0x1.1d7a38p+22
+0x1.f45a6p+19
+0x1.ba575p+21
+0x1.cd2a34p+22
+0x1.92c08p+19
+0x1.e26d68p+21
+0x1.8dd21cp+22
+0x1.2ceedcp+22
+0x1.c16268p+21
+0x1.eaff28p+21
+0x1.59232p+20
+0x1.c545f4p+22
+0x1.b4cf7p+20
+0x1.965388p+21
+0x1.1c851p+21
+0x1.3a72ap+19
+0x1.1f0e8p+21
+0x1.dc1478p+21
+0x1.74834p+21
+0x1.3dfc5p+21
+0x1.8eb0c8p+22
+0x1.00ccp+16
+0x1.cfddap+19
+0x1.57c3a8p+21
+0x1.a0f92cp+22
+0x1.329904p+22
+0x1.74756cp+22
+0x1.eedebp+22
+0x1.f15e2p+21
+0x1.a9c464p+22
+0x1.d3d8p+22
+0x1.1d3ae4p+22
+0x1.32ccp+14
+0x1.6e8458p+22
+0x1.d50888p+21
+0x1.4a21d4p+22
+0x1.f86fap+22
+0x1.b3283p+21
+0x1.75605p+20
+0x1.29f2fcp+22
+0x1.16a0d8p+21
+0x1.ab1fbp+21
+0x1.74cf6p+22
+0x1.6e2a8p+17
+0x1.08dd48p+22
+0x1.2aa258p+21
+0x1.9724p+18
+0x1.2b97acp+22
+0x1.46ba98p+22
+0x1.9f386p+21
+0x1.a4b428p+21
+0x1.45f1a4p+22
+0x1.1ca96cp+22
+0x1.7bea6p+22
+0x1.531e4p+21
+0x1.2c5ep+19
+0x1.68436p+20
+0x1.0ae56cp+22
+0x1.f22c64p+22
+0x1.f9b8cp+19
+0x1.ba4c6p+22
+0x1.6faed4p+22
+0x1.06d20cp+22
+0x1.d1058p+18
+0x1.e98f2p+21
+0x1.101b18p+21
+0x1.e873cp+21
+0x1.cace3p+21
+0x1.1bf04cp+22
+0x1.6fb23cp+22
+0x1.74bcd4p+22
+0x1.05f87p+22
+0x1.8105c4p+22
+0x1.59269p+21
+0x1.9df65cp+22
+0x1.0e13cp+20
+0x1.def5bp+20
+0x1.7c34a8p+22
+0x1.4e1fd4p+22
+0x1.92e0ap+21
+0x1.b0cc2p+19
+0x1.b1abfp+21
+0x1.8827cp+20
+0x1.5ec8cp+21
+0x1.3392acp+22
+0x1.e1f9p+21
+0x1.f7e618p+21
+0x1.b70b2p+20
+0x1.1c2a1p+21
+0x1.d7744p+18
+0x1.8ba43p+22
+0x1.05df58p+22
+0x1.4f674p+21
+0x1.455ep+20
+0x1.aadd74p+22
+0x1.065bcp+18
+0x1.828d98p+21
+0x1.c1ce5p+22
+0x1.fcd688p+21
+0x1.21099p+22
+0x1.ceeap+22
+0x1.8895fcp+22
+0x1.7a4a44p+22
+0x1.e0b688p+22
+0x1.43f298p+22
+0x1.a036cp+18
+0x1.1d171p+21
+0x1.d56134p+22
+0x1.2a003p+21
+0x1.5907p+18
+0x1.7dc958p+22
+0x1.bfad1p+21
+0x1.db9088p+21
+0x1.727be8p+21
+0x1.b2c158p+21
+0x1.a35f3p+20
+0x1.d21c8p+20
+0x1.bef3p+19
+0x1.9c5f6p+21
+0x1.b2acf8p+21
+0x1.d8dccp+20
+0x1.42276cp+22
+0x1.36398p+19
+0x1.d35b18p+22
+0x1.2f0b48p+22
+0x1.d53548p+22
+0x1.eff6b8p+21
+0x1.2160a8p+21
+0x1.672d8p+21
+0x1.edc03cp+22
+0x1.38a974p+22
+0x1.1c7dd4p+22
+0x1.544e0cp+22
+0x1.0e904p+18
+0x1.3d427p+21
+0x1.69b628p+22
+0x1.39347p+22
+0x1.c75bap+19
+0x1.b1c65p+22
+0x1.51b88p+18
+0x1.a4fd84p+22
+0x1.1690a4p+22
+0x1.8ae4bp+21
+0x1.c8fb7cp+22
+0x1.c6ad34p+22
+0x1.804a6p+20
+0x1.75c87cp+22
+0x1.79f8ap+19
+0x1.722d28p+21
+0x1.8bf758p+21
+0x1.ca75f8p+21
+0x1.87a0f8p+21
+0x1.7da1cp+20
+0x1.d8c2f8p+22
+0x1.7e0bf8p+22
+0x1.40a718p+21
+0x1.fed938p+22
+0x1.ae3eep+20
+0x1.016abp+21
+0x1.9b3cb8p+22
+0x1.268508p+22
+0x1.b98b1p+20
+0x1.ab13p+18
+0x1.099a68p+22
+0x1.ed23b8p+22
+0x1.27741p+20
+0x1.ae7034p+22
+0x1.c28ap+17
+0x1.64d1d8p+21
+0x1.99b4cp+18
+0x1.2a9a68p+22
+0x1.05d2fp+21
+0x1.a66bep+22
+0x1.0a216p+19
+0x1.e59b6p+20
+0x1.a3fc48p+22
+0x1.632eacp+22
+0x1.464bb8p+22
+0x1.404c98p+21
+0x1.3b0d2p+22
+0x1.daeb2p+20
+0x1.77a2p+22
+0x1.59fcp+20
+0x1.b84e8p+19
+0x1.c4c214p+22
+0x1.a1069p+22
+0x1.5414bp+22
+0x1.0086p+17
+0x1.f9c4f8p+21
+0x1.d06aep+20
+0x1.b68f1p+22
+0x1.650ccp+20
+0x1.20d3f8p+21
+0x1.23a2a8p+21
+0x1.0c44ap+19
+0x1.484b3p+20
+0x1.34e604p+22
+0x1.9b8ecp+20
+0x1.6d551p+20
+0x1.b2a028p+22
+0x1.39d11p+22
+0x1.2693ep+20
+0x1.feb414p+22
+0x1.3205p+19
+0x1.255844p+22
+0x1.0cb9bp+21
+0x1.619e8p+19
+0x1.65631cp+22
+0x1.7d15b8p+22
+0x1.3b6e5cp+22
+0x1.6da12p+21
+0x1.4d98bcp+22
+0x1.bd02p+19
+0x1.a0ec5cp+22
+0x1.a123p+20
+0x1.948acp+19
+0x1.b3d1cp+18
+0x1.e87444p+22
+0x1.3b47bp+21
+0x1.68df48p+21
+0x1.936298p+22
+0x1.b63804p+22
+0x1.6f38p+22
+0x1.a93be8p+22
+0x1.5445a4p+22
+0x1.68c158p+21
+0x1.f5564p+19
+0x1.a9cd1p+21
+0x1.fd9068p+21
+0x1.62e884p+22
+0x1.0f19e8p+22
+0x1.da59c8p+22
+0x1.64429p+21
+0x1.986334p+22
+0x1.19e4ap+21
+0x1.8586c8p+21
+0x1.68e4ep+22
+0x1.f6fa88p+22
+0x1.a689ap+20
+0x1.a63acp+22
+0x1.2e2c8p+19
+0x1.d0b198p+22
+0x1.d2a77p+20
+0x1.19dba8p+22
+0x1.975fe8p+22
+0x1.e758d8p+22
+0x1.0bc178p+21
+0x1.6f29cp+19
+0x1.db1d48p+21
+0x1.9cc4dcp+22
+0x1.74e2b8p+22
+0x1.2238ap+22
+0x1.630684p+22
+0x1.deaaap+19
+0x1.dbc98p+17
+0x1.fd7fa8p+21
+0x1.11438p+19
+0x1.681fp+20
+0x1.ee76dp+20
+0x1.cdd7ep+21
+0x1.b05cfp+22
+0x1.8bd938p+21
+0x1.dcb4fcp+22
+0x1.248cb8p+21
+0x1.35bc7p+20
+0x1.8a80ep+22
+0x1.03dd88p+21
+0x1.e60bccp+22
+0x1.1bc2f8p+21
+0x1.70c57p+21
+0x1.51ca9cp+22
+0x1.1b80bp+20
+0x1.f8f5acp+22
+0x1.78e76p+22
+0x1.9ba3ep+19
+0x1.bd229cp+22
+0x1.dd2538p+22
+0x1.00d4ap+22
+0x1.af3a6p+21
+0x1.40963p+22
+0x1.78546p+20
+0x1.969c2p+21
+0x1.64b37p+22
+0x1.7e846p+21
+0x1.b25aecp+22
+0x1.0948fp+20
+0x1.793facp+22
+0x1.7a84cp+22
+0x1.644264p+22
+0x1.53c064p+22
+0x1.4a74a8p+22
+0x1.84acbp+21
+0x1.84beep+20
+0x1.cc54e4p+22
+0x1.0d114p+22
+0x1.05dep+21
+0x1.9bf02p+20
+0x1.e6d64cp+22
+0x1.d6062p+19
+0x1.cdb408p+21
+0x1.9b3f84p+22
+0x1.0e51acp+22
+0x1.9423fcp+22
+0x1.5afcp+14
+0x1.365dc8p+22
+0x1.4df548p+22
+0x1.ab254p+18
+0x1.f20738p+21
+0x1.c624cp+19
+0x1.245f18p+22
+0x1.05441cp+22
+0x1.234p+10
+0x1.168e68p+21
+0x1.d2acc4p+22
+0x1.793f2p+22
+0x1.89f6p+21
+0x1.2e804cp+22
+0x1.f934bp+20
+0x1.176d4p+18
+0x1.692408p+22
+0x1.932938p+21
+0x1.93aed8p+21
+0x1.a09aa4p+22
+0x1.dd5a2p+19
+0x1.f8b034p+22
+0x1.c58c2p+19
+0x1.5c3738p+21
+0x1.76ed18p+22
+0x1.25518p+20
+0x1.7ebd6p+20
+0x1.b7aafp+22
+0x1.b1d9dp+20
+0x1.23398p+20
+0x1.ecebb8p+22
+0x1.1fe48cp+22
+0x1.f4eddp+21
+0x1.f800acp+22
+0x1.92e99p+20
+0x1.739ae4p+22
+0x1.02b8ecp+22
+0x1.5b13ap+22
+0x1.183ap+16
+0x1.3cacdp+22
+0x1.494de8p+22
+0x1.4c20f4p+22
+0x1.264974p+22
+0x1.cac628p+21
+0x1.6ce3b4p+22
+0x1.45df3p+21
+0x1.975ec8p+22
+0x1.5728d8p+22
+0x1.ee4998p+22
+0x1.c523a4p+22
+0x1.e0219p+22
+0x1.033534p+22
+0x1.3b5318p+22
+0x1.617fp+16
+0x1.d4ec2p+19
+0x1.8c5998p+21
+0x1.996638p+21
+0x1.eb1448p+22
+0x1.667a38p+21
+0x1.26de6p+19
+0x1.13e398p+21
+0x1.e2fcp+15
+0x1.8f38p+20
+0x1.dc80d8p+21
+0x1.1fc5d4p+22
+0x1.574308p+21
+0x1.586564p+22
+0x1.1b7404p+22
+0x1.07951cp+22
+0x1.b069ap+22
+0x1.7e068p+22
+0x1.c11p+18
+0x1.94c588p+21
+0x1.5af824p+22
+0x1.dc05dp+20
+0x1.13d748p+21
+0x1.2bc128p+22
+0x1.8d7c9p+20
+0x1.0f921p+22
+0x1.a33f2p+22
+0x1.2f6ff8p+21
+0x1.ebb8p+21
+0x1.ffd8d8p+22
+0x1.b634ap+19
+0x1.a589a8p+22
+0x1.29618p+21
+0x1.f96ad4p+22
+0x1.e77fap+20
+0x1.80ef4p+20
+0x1.a41c34p+22
+0x1.294848p+22
+0x1.6eb67p+22
+0x1.9e0b18p+22
+0x1.f81ed4p+22
+0x1.329ba8p+22
+0x1.0d17p+22
+0x1.dc5bdp+22
+0x1.3fe58p+17
+0x1.f7e068p+21
+0x1.f38a74p+22
+0x1.505a4p+19
+0x1.ceb918p+22
+0x1.e28e5cp+22
+0x1.c8f42p+21
+0x1.febf48p+21
+0x1.21177p+20
+0x1.b1b348p+21
+0x1.797c4p+18
+0x1.3195bp+20
+0x1.6e52ep+20
+0x1.34300cp+22
+0x1.96e8d8p+21
+0x1.67c048p+21
+0x1.da2c4p+20
+0x1.3c4fbp+21
+0x1.bc8b4p+20
+0x1.9ca64cp+22
+0x1.e65618p+22
+0x1.f9c96p+22
+0x1.967b2p+22
+0x1.147f7p+21
+0x1.9e51bcp+22
+0x1.9f166p+19
+0x1.4a5b4p+21
+0x1.b8816cp+22
+0x1.2dd78cp+22
+0x1.0f084p+20
+0x1.a8b1dcp+22
+0x1.fab53p+22
+0x1.e2375p+22
+0x1.5b627p+22
+0x1.cbcc48p+21
+0x1.9326a8p+21
+0x1.f80ccp+19
+0x1.22a71p+20
+0x1.c7c6cp+19
+0x1.6dbbbcp+22
+0x1.97bbap+22
+0x1.7f9ee8p+21
+0x1.dc91b4p+22
+0x1.2948f8p+22
+0x1.207d28p+22
+0x1.55079cp+22
+0x1.c21978p+21
+0x1.f79c94p+22
+0x1.c4d804p+22
+0x1.ded94cp+22
+0x1.daa9a8p+22
+0x1.502fep+21
+0x1.9e405p+22
+0x1.430fb8p+22
+0x1.cd5bd8p+21
+0x1.76e264p+22
+0x1.0b67f4p+22
+0x1.b5664p+19
+0x1.6b74c8p+22
+0x1.dd3e48p+22
+0x1.6bdeep+19
+0x1.b12ep+19
+0x1.487b1p+22
+0x1.197a98p+22
+0x1.53e1dp+21
+0x1.b08b9cp+22
+0x1.d009p+16
+0x1.02042cp+22
+0x1.a488p+13
+0x1.6fdf9cp+22
+0x1.b2de1p+22
+0x1.ec6f74p+22
+0x1.2f8dd4p+22
+0x1.701bc8p+22
+0x1.b2dff8p+21
+0x1.02461cp+22
+0x1.d617bcp+22
+0x1.53508p+21
+0x1.9fe36p+21
+0x1.6dcb08p+21
+0x1.47639p+21
+0x1.dfd79cp+22
+0x1.4b927p+22
+0x1.dba9b8p+21
+0x1.6375ap+22
+0x1.00df0cp+22
+0x1.a4cc54p+22
+0x1.e53cdp+21
+0x1.de380cp+22
+0x1.ca522p+21
+0x1.8ec0bcp+22
+0x1.21fd4cp+22
+0x1.3c2c5p+21
+0x1.558a64p+22
+0x1.4e2ebp+22
+0x1.d53cf4p+22
+0x1.298d4p+21
+0x1.38a48cp+22
+0x1.e9bf9p+20
+0x1.4a4cdcp+22
+0x1.307238p+22
+0x1.45dd5p+22
+0x1.e25c1cp+22
+0x1.1798d8p+22
+0x1.e3adep+20
+0x1.04cdap+21
+0x1.1a56a8p+21
+0x1.c46078p+21
+0x1.89308cp+22
+0x1.dfb1c8p+22
+0x1.49107p+21
+0x1.f5697p+20
+0x1.8867c8p+22
+0x1.74858cp+22
+0x1.e16d04p+22
+0x1.f20edp+20
+0x1.4073bcp+22
+0x1.f5f84p+18
+0x1.f9e34cp+22
+0x1.47f2cp+22
+0x1.4cd2d8p+21
+0x1.030558p+22
+0x1.d9dacp+18
+0x1.d13418p+21
+0x1.db364p+21
+0x1.0d45ep+21
+0x1.4a23b8p+21
+0x1.441aacp+22
+0x1.8ebd1p+22
+0x1.5c50ap+22
+0x1.769b9cp+22
+0x1.bb73a8p+22
+0x1.c809p+19
+0x1.cb5998p+21
+0x1.b0f3f4p+22
+0x1.6ba268p+22
+0x1.80e1a4p+22
+0x1.b47614p+22
+0x1.58c868p+22
+0x1.aa7fd8p+21
+0x1.f87cccp+22
+0x1.c629ecp+22
+0x1.533bf8p+21
+0x1.83136p+22
+0x1.249318p+21
+0x1.2d3d28p+21
+0x1.c769f4p+22
+0x1.8c3738p+22
+0x1.8f24f8p+21
+0x1.be4fp+20
+0x1.16f1d8p+22
+0x1.19cf6p+21
+0x1.d96c38p+22
+0x1.5c7bdp+20
+0x1.4b3a94p+22
+0x1.be14ap+19
+0x1.2f104p+18
+0x1.35bd6cp+22
+0x1.90cd3p+21
+0x1.1b76p+16
+0x1.79d0ep+19
+0x1.0fdba4p+22
+0x1.128cbcp+22
+0x1.b287f8p+21
+0x1.d90ccp+18
+0x1.a835b4p+22
+0x1.dd46b8p+22
+0x1.2a2e3p+20
+0x1.657f4p+21
+0x1.ec5c38p+21
+0x1.48000cp+22
+0x1.823704p+22
+0x1.f79974p+22
+0x1.a9cd6p+22
+0x1.b1825p+21
+0x1.9d3aa8p+22
+0x1.4aba68p+22
+0x1.2260fcp+22
+0x1.3b7p+16
+0x1.98f9ep+21
+0x1.551978p+21
+0x1.348f48p+21
+0x1.df935p+21
+0x1.28dde8p+22
+0x1.c87f8p+20
+0x1.5b9594p+22
+0x1.69144cp+22
+0x1.f8a9cp+18
+0x1.2ed4ep+19
+0x1.94c6bp+20
+0x1.022cp+20
+0x1.8a4e74p+22
+0x1.deadb4p+22
+0x1.5d21cp+19
+0x1.1463fp+20
+0x1.915c78p+21
+0x1.7ced48p+22
+0x1.14b95cp+22
+0x1.77991cp+22
+0x1.dd4a44p+22
+0x1.b62998p+22
+0x1.d3fb4p+19
+0x1.2406bp+22
+0x1.ebd1ccp+22
+0x1.984594p+22
+0x1.2241bp+20
+0x1.5ea87cp+22
+0x1.e97d5p+22
+0x1.01dc5p+21
+0x1.f1dcf8p+22
+0x1.494dd8p+21
+0x1.ba6fa8p+22
+0x1.5b464p+19
+0x1.d11dp+22
+0x1.26706p+22
+0x1.e4f58cp+22
+0x1.14fe8p+17
+0x1.4250ep+22
+0x1.6d7fe8p+22
+0x1.14976p+21
+0x1.4ad8e8p+21
+0x1.eb9b88p+21
+0x1.85c794p+22
+0x1.d9af98p+22
+0x1.6b78ap+20
+0x1.c92c9p+20
+0x1.afd08p+22
+0x1.aaae4p+21
+0x1.3b4aacp+22
+0x1.cc7e08p+21
+0x1.9d6774p+22
+0x1.a16d84p+22
+0x1.4ffcbcp+22
+0x1.bee178p+21
+0x1.e557ecp+22
+0x1.79784p+18
+0x1.66d1ep+22
+0x1.c0b2bp+21
+0x1.1eb2ep+21
+0x1.b1c51p+22
+0x1.67f73p+20
+0x1.52bf1cp+22
+0x1.0155fcp+22
+0x1.f7fecp+21
+0x1.1db8e8p+22
+0x1.68a8p+21
+0x1.e756p+16
+0x1.a3d558p+22
+0x1.59f0cp+20
+0x1.5e81a8p+21
+0x1.efd914p+22
+0x1.3a8e6cp+22
+0x1.d4f98p+19
+0x1.981a5p+22
+0x1.4aa678p+21
+0x1.62c94cp+22
+0x1.9aac3p+21
+0x1.340598p+22
+0x1.8bb14cp+22
+0x1.e2919cp+22
+0x1.db64c4p+22
+0x1.ba6f7p+22
+0x1.dcb2p+21
+0x1.21309p+20
+0x1.e275cp+21
+0x1.d7547p+20
+0x1.5b352p+22
+0x1.f47c08p+21
+0x1.f3c98p+19
+0x1.0a945p+20
+0x1.8e8bcp+22
+0x1.21364p+20
+0x1.1437ep+20
+0x1.db5f4cp+22
+0x1.9516bp+22
+0x1.bea7f8p+22
+0x1.504b8p+22
+0x1.fe37b4p+22
+0x1.76fp+17
+0x1.e372f4p+22
+0x1.3bf43p+21
+0x1.440eb8p+21
+0x1.2543ap+20
+0x1.47615p+22
+0x1.d5eeap+19
+0x1.06edp+21
+0x1.13b5acp+22
+0x1.d0f69cp+22
+0x1.a285p+18
+0x1.0695acp+22
+0x1.3935d4p+22
+0x1.3c62c8p+22
+0x1.62dcfp+21
+0x1.21829cp+22
+0x1.d8be84p+22
+0x1.8489dp+20
+0x1.bb1828p+21
+0x1.9bb2bp+22
+0x1.b98edp+20
+0x1.01ede4p+22
+0x1.309b2p+20
+0x1.53ca04p+22
+0x1.8c56ap+22
+0x1.bb2734p+22
+0x1.2a219cp+22
+0x1.4982ap+22
+0x1.8738dp+20
+0x1.424c8p+21
+0x1.28d044p+22
+0x1.a7e64cp+22
+0x1.f154e4p+22
+0x1.89c27p+20
+0x1.5c19d8p+21
+0x1.46271p+21
+0x1.ff258p+20
+0x1.7a198p+19
+0x1.b7d7ecp+22
+0x1.ce10f8p+21
+0x1.3626ep+20
+0x1.8d3a58p+21
+0x1.efa5b8p+22
+0x1.9e990cp+22
+0x1.0b1b6p+21
+0x1.6d0e28p+21
+0x1.6869f8p+22
+0x1.79p+14
+0x1.f04fccp+22
+0x1.4f4964p+22
+0x1.2a63fp+22
+0x1.7a7ep+20
+0x1.05eacp+19
+0x1.cee4cp+20
+0x1.a6f108p+22
+0x1.8d4494p+22
+0x1.93b68p+19
+0x1.bc31ap+21
+0x1.a47568p+22
+0x1.31c32p+20
+0x1.15008p+19
+0x1.02a02p+21
+0x1.ccb93p+22
+0x1.cb8c9p+21
+0x1.205bd8p+22
+0x1.c38db8p+22
+0x1.4b5de4p+22
+0x1.86ce1cp+22
+0x1.ffd57p+22
+0x1.52a238p+21
+0x1.1d04ep+21
+0x1.aac43p+22
+0x1.c659fp+22
+0x1.2fcabp+20
+0x1.c844p+14
+0x1.bb77cp+22
+0x1.1aa43p+20
+0x1.de5518p+22
+0x1.368d3p+21
+0x1.90c03p+22
+0x1.d3f3bp+21
+0x1.afbb6p+20
+0x1.788f7cp+22
+0x1.30861p+21
+0x1.1514b4p+22
+0x1.105308p+22
+0x1.f8724cp+22
+0x1.c7ea58p+22
+0x1.267928p+21
+0x1.17e22p+21
+0x1.6861b8p+21
+0x1.a8d6ap+21
+0x1.659488p+22
+0x1.7d971cp+22
+0x1.e868d8p+21
+0x1.fcc28p+20
+0x1.a7999cp+22
+0x1.13f7fp+21
+0x1.ce7p+12
+0x1.124318p+22
+0x1.140bcp+21
+0x1.d2c28p+17
+0x1.e2ae2p+22
+0x1.34d6p+22
+0x1.2fd03cp+22
+0x1.243dap+22
+0x1.765d1p+22
+0x1.0309fp+22
+0x1.9ebda8p+21
+0x1.2ccb94p+22
+0x1.4ee1bp+20
+0x1.5883e8p+22
+0x1.a59eap+19
+0x1.28aa84p+22
+0x1.b13bap+20
+0x1.2a358p+17
+0x1.6d0bacp+22
+0x1.c91a8p+18
+0x1.976c3cp+22
+0x1.c856f8p+21
+0x1.bb3cb8p+21
+0x1.e8e318p+22
+0x1.30f044p+22
+0x1.473a6p+22
+0x1.b6244cp+22
+0x1.85ea48p+22
+0x1.e77b8p+17
+0x1.ed3fbcp+22
+0x1.352698p+21
+0x1.e9fap+18
+0x1.4fdf8p+21
+0x1.635e3p+20
+0x1.6344fcp+22
+0x1.2b7ec8p+21
+0x1.091d8p+22
+0x1.ef2f8p+18
+0x1.030714p+22
+0x1.0386dp+21
+0x1.d706b4p+22
+0x1.d8a63p+21
+0x1.174bdp+22
+0x1.2466bp+21
+0x1.d4fbp+20
+0x1.03755p+21
+0x1.cb498p+21
+0x1.5afb98p+22
+0x1.4166c4p+22
+0x1.7acee8p+21
+0x1.29b95p+22
+0x1.df3fcp+22
+0x1.421ce8p+21
+0x1.45808p+20
+0x1.d0090cp+22
+0x1.f3edecp+22
+0x1.411aap+21
+0x1.f4418p+21
+0x1.3c621p+20
+0x1.22e1e4p+22
+0x1.536268p+21
+0x1.1e03c8p+21
+0x1.a7e92p+19
+0x1.e3207p+21
+0x1.671a6p+22
+0x1.24aaap+21
+0x1.03e2dp+22
+0x1.12150cp+22
+0x1.74a1e8p+22
+0x1.43127p+21
+0x1.4022ap+19
+0x1.904c8p+20
+0x1.f0c6ap+19
+0x1.b7231cp+22
+0x1.a63d88p+22
+0x1.00bcep+19
+0x1.a14dfcp+22
+0x1.db2528p+22
+0x1.00318p+20
+0x1.d29c4cp+22
+0x1.bb12acp+22
+0x1.26f758p+21
+0x1.edc2fp+22
+0x1.845a34p+22
+0x1.dbdb5cp+22
+0x1.9257ecp+22
+0x1.8925d4p+22
+0x1.fd2e9cp+22
+0x1.630c08p+21
+0x1.b944d4p+22
+0x1.a33358p+22
+0x1.408b7p+22
+0x1.795ep+16
+0x1.3afb18p+21
+0x1.69c26p+21
+0x1.c9b768p+22
+0x1.46c53p+21
+0x1.bb78p+16
+0x1.b1146p+20
+0x1.06848p+20
+0x1.dce1c4p+22
+0x1.c01ea4p+22
+0x1.4bcep+20
+0x1.6b6cdp+22
+0x1.308fcp+19
+0x1.b55dbcp+22
+0x1.a0eb24p+22
+0x1.2e3b4p+18
+0x1.a7e4ep+21
+0x1.e3298p+19
+0x1.80cb84p+22
+0x1.d839bp+20
+0x1.d10e3p+21
+0x1.eb0f8p+19
+0x1.4875bp+21
+0x1.8bbe78p+21
+0x1.fc047p+22
+0x1.d84414p+22
+0x1.e450dp+20
+0x1.c12024p+22
+0x1.004ecp+22
+0x1.561d8p+21
+0x1.dae04cp+22
+0x1.0e6e38p+21
+0x1.88b4d4p+22
+0x1.7ba28p+22
+0x1.74e3cp+18
+0x1.e3428p+17
+0x1.71014p+20
+0x1.249d34p+22
+0x1.44f46cp+22
+0x1.cbbcdp+20
+0x1.eb1d8p+20
+0x1.eaf35p+22
+0x1.b10e2p+20
+0x1.15921p+22
+0x1.74cc5p+21
+0x1.d51ba8p+22
+0x1.6df408p+22
+0x1.3f9dc4p+22
+0x1.04e3ep+21
+0x1.9229cp+22
+0x1.763404p+22
+0x1.437d8p+20
+0x1.fb0cfp+21
+0x1.65589cp+22
+0x1.92e604p+22
+0x1.ae5fp+19
+0x1.a8ef38p+21
+0x1.492f8p+18
+0x1.7f246p+19
+0x1.2ac7p+16
+0x1.caa69p+20
+0x1.ddfe6p+19
+0x1.15421p+21
+0x1.161308p+22
+0x1.522bccp+22
+0x1.e797fp+22
+0x1.241c88p+21
+0x1.ad90bcp+22
+0x1.c25168p+22
+0x1.5023cp+19
+0x1.29c03p+22
+0x1.6741bp+22
+0x1.4621bp+20
+0x1.aaf48cp+22
+0x1.e43e5p+21
+0x1.045c6cp+22
+0x1.699278p+21
+0x1.5abc6p+22
+0x1.1e716p+20
+0x1.d227b8p+22
+0x1.7303dp+22
+0x1.ee019cp+22
+0x1.e2d09p+21
+0x1.4f9308p+21
+0x1.722e1p+22
+0x1.15c4fcp+22
+0x1.6e2cdcp+22
+0x1.8a4fc4p+22
+0x1.c4c29p+22
+0x1.4d7c3p+22
+0x1.ba11fp+22
+0x1.80693p+20
+0x1.fa4498p+22
+0x1.8e7714p+22
+0x1.2e6eap+22
+0x1.197804p+22
+0x1.3fcc84p+22
+0x1.1502d4p+22
+0x1.9d54d8p+21
+0x1.926a2p+22
+0x1.a09244p+22
+0x1.37e72p+19
+0x1.81a248p+22
+0x1.96668cp+22
+0x1.17ec8cp+22
+0x1.9b61p+22
+0x1.3b4008p+22
+0x1.b4db64p+22
+0x1.35de78p+22
+0x1.79adfp+20
+0x1.f3010cp+22
+0x1.5728fp+22
+0x1.bc22ep+22
+0x1.bba8ccp+22
+0x1.b9a42p+19
+0x1.c7f5ep+19
+0x1.ab96bp+20
+0x1.3f1dfcp+22
+0x1.65bedp+22
+0x1.8e34a4p+22
+0x1.149478p+21
+0x1.fbe8dp+21
+0x1.ccb76p+22
+0x1.c30b98p+21
+0x1.3661ap+21
+0x1.119d68p+21
+0x1.785bap+20
+0x1.f1d09p+20
+0x1.d1ff4p+18
+0x1.2a49d4p+22
+0x1.be05ep+20
+0x1.acfb2p+20
+0x1.86f914p+22
+0x1.ff7p+19
+0x1.135bfcp+22
+0x1.0e92cp+22
+0x1.b6820cp+22
+0x1.2c42ecp+22
+0x1.5cd11p+20
+0x1.4af59p+20
+0x1.a88f8cp+22
+0x1.27771p+20
+0x1.3e88p+20
+0x1.4271b8p+21
+0x1.73ce5cp+22
+0x1.aeaep+20
+0x1.f681cp+19
+0x1.b74a4p+19
+0x1.f8bcap+19
+0x1.22eeap+22
+0x1.92d05cp+22
+0x1.8d71e8p+21
+0x1.b8611p+22
+0x1.9f8cb8p+21
+0x1.7ee7p+19
+0x1.31da6p+21
+0x1.f0ebcp+20
+0x1.99a59p+22
+0x1.f78becp+22
+0x1.84fa98p+21
+0x1.7e818p+19
+0x1.dcd6p+17
+0x1.e35b9p+21
+0x1.47af5p+21
+0x1.49c27p+22
+0x1.91ea08p+21
+0x1.d3c93p+20
+0x1.d3c4ep+20
+0x1.c1526p+21
+0x1.7889f4p+22
+0x1.de07f8p+21
+0x1.283fe4p+22
+0x1.963a58p+21
+0x1.90571cp+22
+0x1.885628p+22
+0x1.94fa8cp+22
+0x1.c8e088p+21
+0x1.ae3614p+22
+0x1.3ccd7p+21
+0x1.d1b6ecp+22
+0x1.bd8adp+22
+0x1.b9c0bcp+22
+0x1.264a08p+21
+0x1.5edeacp+22
+0x1.4c4de8p+21
+0x1.7933fp+20
+0x1.a13d6p+22
+0x1.73b348p+21
+0x1.2d78d8p+22
+0x1.3cbc04p+22
+0x1.380ep+22
+0x1.10662p+20
+0x1.a64fcp+19
+0x1.78a8cp+20
+0x1.62c6ep+19
+0x1.31de3p+22
+0x1.a871p+17
+0x1.be91ap+20
+0x1.253dep+19
+0x1.7fa0acp+22
+0x1.c0ea2p+20
+0x1.d7e9f4p+22
+0x1.cd87b4p+22
+0x1.886ffp+22
+0x1.13eecp+21
+0x1.b61c5cp+22
+0x1.9119p+17
+0x1.08fd1p+20
+0x1.65461p+20
+0x1.a6ca5cp+22
+0x1.4b403p+21
+0x1.d88888p+21
+0x1.ca12fp+21
+0x1.5ac3acp+22
+0x1.640e44p+22
+0x1.19d06cp+22
+0x1.b04c9p+21
+0x1.d65f98p+21
+0x1.5023bp+22
+0x1.1ae42p+20
+0x1.5577ep+21
+0x1.781c58p+22
+0x1.67bfdp+20
+0x1.2e2dp+21
+0x1.15b198p+22
+0x1.f82p+11
+0x1.a3fca4p+22
+0x1.43e368p+22
+0x1.4c3eb4p+22
+0x1.ce59bp+21
+0x1.f918cp+20
+0x1.245cap+21
+0x1.6d2988p+22
+0x1.3feap+17
+0x1.087514p+22
+0x1.3dbb18p+22
+0x1.ae948p+19
+0x1.fe474p+20
+0x1.1f148p+21
+0x1.f8db74p+22
+0x1.bb5274p+22
+0x1.a2649cp+22
+0x1.29294p+19
+0x1.6d07ep+19
+0x1.a6b93p+22
+0x1.c28aa8p+22
+0x1.ca047p+20
+0x1.09a108p+21
+0x1.e6683cp+22
+0x1.ded5fp+20
+0x1.130bf4p+22
+0x1.4673fcp+22
+0x1.7c7a8p+17
+0x1.4534fp+21
+0x1.93f228p+22
+0x1.90174p+20
+0x1.a830f8p+22
+0x1.be131p+21
+0x1.82b0ap+19
+0x1.6f1c9cp+22
+0x1.c4935cp+22
+0x1.0c7f1p+22
+0x1.21badcp+22
+0x1.c6cbcp+19
+0x1.8bf54p+21
+0x1.09453p+21
+0x1.118c58p+22
+0x1.74065p+21
+0x1.a11138p+22
+0x1.e9b408p+22
+0x1.a6604p+20
+0x1.06f31p+22
+0x1.584b7p+21
+0x1.c88ddp+22
+0x1.3e3accp+22
+0x1.4dd23p+21
+0x1.b6b66cp+22
+0x1.c29544p+22
+0x1.bac2ap+21
+0x1.e7ac3p+20
+0x1.1eab3p+22
+0x1.b4b3ecp+22
+0x1.224b38p+22
+0x1.b944d8p+21
+0x1.f45698p+21
+0x1.8b6bp+17
+0x1.4f8e4p+19
+0x1.fa7194p+22
+0x1.e91efp+21
+0x1.292acp+19
+0x1.6bdfa4p+22
+0x1.feb2a4p+22
+0x1.58e444p+22
+0x1.e4ce98p+21
+0x1.9b12dcp+22
+0x1.6f067p+21
+0x1.0af74p+22
+0x1.87cdd8p+22
+0x1.1785p+21
+0x1.58701p+20
+0x1.b21bdp+21
+0x1.72cf6p+20
+0x1.b764cp+18
+0x1.810a1p+20
+0x1.22a98p+22
+0x1.756844p+22
+0x1.31ee3p+21
+0x1.a95c8p+20
+0x1.b08504p+22
+0x1.595e8cp+22
+0x1.96bb44p+22
+0x1.480428p+21
+0x1.0ce288p+22
+0x1.2568ep+20
+0x1.912a3p+22
+0x1.52741cp+22
+0x1.bba168p+21
+0x1.4ca2p+16
+0x1.293544p+22
+0x1.b40e08p+22
+0x1.a3aaecp+22
+0x1.39eb2cp+22
+0x1.0de18p+22
+0x1.b2d2e8p+22
+0x1.0ap+14
+0x1.4e9c1cp+22
+0x1.aa7a6p+21
+0x1.cc47ap+20
+0x1.8e6df8p+22
+0x1.6d7cf8p+21
+0x1.79f82cp+22
+0x1.6dace8p+21
+0x1.3a225p+20
+0x1.882d4p+19
+0x1.7e39f8p+22
+0x1.34c568p+22
+0x1.8d4944p+22
+0x1.5ad2ap+20
+0x1.acdd94p+22
+0x1.b92fa8p+21
+0x1.2f0acp+19
+0x1.8edc7p+21
+0x1.e1137p+22
+0x1.efb8f8p+22
+0x1.c7b9c8p+21
+0x1.a8433p+20
+0x1.a02888p+22
+0x1.b232d8p+21
+0x1.eca9dp+20
+0x1.5da144p+22
+0x1.652888p+21
+0x1.5f03c8p+22
+0x1.1b632p+22
+0x1.2885cp+19
+0x1.caca28p+21
+0x1.fcac7p+21
+0x1.322e3cp+22
+0x1.ed0f4p+19
+0x1.bbb0d8p+22
+0x1.8badd8p+22
+0x1.4ad37p+21
+0x1.86adp+21
+0x1.759948p+22
+0x1.144ccp+22
+0x1.8f7b7cp+22
+0x1.39ea8p+17
+0x1.7da1c8p+22
+0x1.74c2cp+19
+0x1.dd1688p+22
+0x1.8f7f6p+22
+0x1.280358p+22
+0x1.bd4914p+22
+0x1.db074p+21
+0x1.b574dp+21
+0x1.a64c9p+20
+0x1.eae678p+22
+0x1.35fee4p+22
+0x1.ce9dp+17
+0x1.97dccp+19
+0x1.a1971p+20
+0x1.74c858p+22
+0x1.413db8p+21
+0x1.39d9ep+20
+0x1.f7df3p+20
+0x1.a80b4p+21
+0x1.6a417p+20
+0x1.cbed7p+22
+0x1.09989p+20
+0x1.7be678p+21
+0x1.2cf01p+20
+0x1.165b8p+19
+0x1.672534p+22
+0x1.b3dabp+21
+0x1.4a5dfcp+22
+0x1.8c8084p+22
+0x1.b5a2cp+19
+0x1.de6618p+22
+0x1.c7cc7p+22
+0x1.f6a028p+22
+0x1.d87374p+22
+0x1.e928f8p+21
+0x1.3cb178p+22
+0x1.54384p+22
+0x1.0018acp+22
+0x1.26babcp+22
+0x1.09641cp+22
+0x1.c0dc5p+20
+0x1.eabd98p+22
+0x1.0b9d8p+20
+0x1.f55f8p+19
+0x1.986b78p+22
+0x1.912098p+21
+0x1.c220ap+19
+0x1.497ea8p+21
+0x1.4b9024p+22
+0x1.bb9c6p+19
+0x1.b82fc8p+22
+0x1.987facp+22
+0x1.fa62ep+20
+0x1.967ecp+18
+0x1.94c9bp+21
+0x1.d040fp+22
+0x1.593acp+22
+0x1.787788p+22
+0x1.068268p+22
+0x1.2e6d88p+22
+0x1.0fb654p+22
+0x1.e9f19cp+22
+0x1.d64e94p+22
+0x1.126808p+22
+0x1.c5d6a8p+21
+0x1.09c27p+22
+0x1.061bp+22
+0x1.9f2c08p+21
+0x1.f0e298p+22
+0x1.1ff52p+19
+0x1.668138p+22
+0x1.043808p+21
+0x1.d3f97p+21
+0x1.1aaee8p+22
+0x1.e9e58p+22
+0x1.2aef4p+19
+0x1.79a87p+20
+0x1.2d851p+22
+0x1.5544cp+20
+0x1.12048p+20
+0x1.ba1f4cp+22
+0x1.e46b9cp+22
+0x1.79424p+18
+0x1.b6e8p+19
+0x1.e35a78p+22
+0x1.5906ap+19
+0x1.b38acp+20
+0x1.0d876p+22
+0x1.f99c9p+22
+0x1.58e388p+22
+0x1.0017b8p+21
+0x1.7e1818p+21
+0x1.b4b1ccp+22
+0x1.8a60f4p+22
+0x1.15ae3cp+22
+0x1.09a7a8p+21
+0x1.d6bc98p+22
+0x1.3fe6p+17
+0x1.6dab04p+22
+0x1.91d85cp+22
+0x1.69b84p+20
+0x1.2c6cdp+22
+0x1.c272p+20
+0x1.c2c55p+20
+0x1.fa5fecp+22
+0x1.495748p+21
+0x1.f527dp+20
+0x1.f16618p+22
+0x1.24e56p+20
+0x1.c4975cp+22
+0x1.509dap+19
+0x1.fa379p+20
+0x1.68f3cp+22
+0x1.c7587cp+22
+0x1.3078c4p+22
+0x1.779e4p+22
+0x1.2aa03p+21
+0x1.bc5b2cp+22
+0x1.138f9p+21
+0x1.fc14cp+18
+0x1.9d8cfp+22
+0x1.7c2888p+22
+0x1.553e8p+19
+0x1.3682bp+20
+0x1.ae5dp+20
+0x1.caa218p+22
+0x1.9754p+19
+0x1.a12bd4p+22
+0x1.b698p+15
+0x1.fc2b68p+21
+0x1.fdb588p+22
+0x1.889e24p+22
+0x1.ef9ac8p+22
+0x1.8237b8p+21
+0x1.2d144p+22
+0x1.a9f4ap+22
+0x1.62b28cp+22
+0x1.07294p+21
+0x1.dbd45p+20
+0x1.db777p+21
+0x1.5c537p+22
+0x1.5bbf8p+18
+0x1.4c02dp+21
+0x1.c0fb6p+21
+0x1.cfb58p+17
+0x1.c31f84p+22
+0x1.8baccp+18
+0x1.63c418p+21
+0x1.149b2cp+22
+0x1.46a438p+21
+0x1.9096f8p+22
+0x1.25d78cp+22
+0x1.32ea6p+21
+0x1.9b8cdp+22
+0x1.1ad694p+22
+0x1.b91a2p+21
+0x1.578924p+22
+0x1.2c38p+14
+0x1.d86e2p+19
+0x1.bdca9p+20
+0x1.286b2p+19
+0x1.0739ap+21
+0x1.4b75ep+21
+0x1.e5192p+19
+0x1.7144cp+21
+0x1.7334ap+19
+0x1.1ab01p+22
+0x1.e477ep+21
+0x1.8502ap+20
+0x1.5a221p+22
+0x1.2a771cp+22
+0x1.ee5b68p+21
+0x1.8e84b8p+22
+0x1.5f9548p+21
+0x1.815fep+19
+0x1.6d6d5p+20
+0x1.573548p+22
+0x1.ac7c38p+21
+0x1.e94c1cp+22
+0x1.e682fp+21
+0x1.5d0394p+22
+0x1.6fd5fcp+22
+0x1.bb21p+20
+0x1.6fcfacp+22
+0x1.cc2924p+22
+0x1.d7d56p+19
+0x1.1b9afp+22
+0x1.ec32cp+18
+0x1.a78cf4p+22
+0x1.1c78cp+18
+0x1.2c798cp+22
+0x1.13328cp+22
+0x1.626b8cp+22
+0x1.fa068p+18
+0x1.e5c02cp+22
+0x1.0b460cp+22
+0x1.bba5p+20
+0x1.ae574p+18
+0x1.e57c3cp+22
+0x1.21b3bp+20
+0x1.b1c8f4p+22
+0x1.deb02p+19
+0x1.4b664p+20
+0x1.e00e28p+22
+0x1.e90da8p+21
+0x1.13133p+22
+0x1.55134p+18
+0x1.b0b448p+21
+0x1.885b4p+18
+0x1.ed23p+20
+0x1.9b2258p+22
+0x1.70ff0cp+22
+0x1.ae60b8p+21
+0x1.f5453cp+22
+0x1.235138p+22
+0x1.8b5ffp+21
+0x1.ab3dp+18
+0x1.ab71f8p+21
+0x1.8b25a4p+22
+0x1.f817b8p+21
+0x1.e8adcp+20
+0x1.f60388p+22
+0x1.f0497p+22
+0x1.419b78p+21
+0x1.612b7cp+22
+0x1.cec098p+21
+0x1.572ep+16
+0x1.871cb8p+22
+0x1.42f6f8p+21
+0x1.727c88p+21
+0x1.1adb24p+22
+0x1.7ce538p+21
+0x1.a3a544p+22
+0x1.f4ab8p+19
+0x1.8474dp+20
+0x1.4cceep+22
+0x1.3e49p+21
+0x1.c98478p+21
+0x1.fb62ap+20
+0x1.4cee4p+19
+0x1.d6db64p+22
+0x1.ab222cp+22
+0x1.d57e5p+20
+0x1.dc84f8p+21
+0x1.853214p+22
+0x1.0679ccp+22
+0x1.e334d8p+22
+0x1.b4c51p+21
+0x1.55eb78p+21
+0x1.b4c31cp+22
+0x1.9f4914p+22
+0x1.2c407p+21
+0x1.21fed8p+21
+0x1.5da3dp+20
+0x1.664fdcp+22
+0x1.2c6f4p+21
+0x1.0eea78p+21
+0x1.048264p+22
+0x1.997c88p+22
+0x1.a152dcp+22
+0x1.c922bp+22
+0x1.36d34p+20
+0x1.3bb2b8p+22
+0x1.5778c8p+21
+0x1.4229d8p+22
+0x1.baa37p+22
+0x1.408b3p+20
+0x1.1dd08cp+22
+0x1.fb8fcp+19
+0x1.9591f8p+22
+0x1.7ee9p+22
+0x1.2ed81p+22
+0x1.5e48ep+19
+0x1.5f8ecp+20
+0x1.72c4f8p+22
+0x1.52d4dp+20
+0x1.1952cp+18
+0x1.776ep+15
+0x1.107144p+22
+0x1.1994e8p+22
+0x1.0c2074p+22
+0x1.972fep+20
+0x1.de7c48p+22
+0x1.c0e0cp+22
+0x1.c902p+20
+0x1.3cbadcp+22
+0x1.561228p+22
+0x1.5f518p+18
+0x1.75d1p+19
+0x1.6019a8p+21
+0x1.d25f88p+21
+0x1.6b7698p+22
+0x1.51b1fcp+22
+0x1.60bcp+21
+0x1.1197a8p+21
+0x1.6ce6cp+22
+0x1.9ccaacp+22
+0x1.19c838p+22
+0x1.aa2eccp+22
+0x1.692f38p+22
+0x1.f5d44p+21
+0x1.23bda8p+22
+0x1.f04084p+22
+0x1.a29ep+15
+0x1.2a254p+21
+0x1.db4f3p+20
+0x1.a412e4p+22
+0x1.9ed28p+19
+0x1.5ad38p+20
+0x1.b45a9p+21
+0x1.b8b228p+21
+0x1.74459cp+22
+0x1.86cdc8p+21
+0x1.100f48p+22
+0x1.a1218p+18
+0x1.d5eb48p+22
+0x1.fd1b3p+22
+0x1.d2afp+17
+0x1.30d6p+19
+0x1.5c9114p+22
+0x1.5482e8p+21
+0x1.13afap+19
+0x1.d3113p+21
+0x1.4bee7cp+22
+0x1.a2c47cp+22
+0x1.b27bacp+22
+0x1.25306p+19
+0x1.895f38p+21
+0x1.0a4b98p+21
+0x1.9ada88p+21
+0x1.c03538p+21
+0x1.11407p+20
+0x1.181a4p+19
+0x1.f80ccp+19
+0x1.4648e8p+21
+0x1.f1f7cp+20
+0x1.2703fp+20
+0x1.e2dd4p+20
+0x1.bfb464p+22
+0x1.21446cp+22
+0x1.1621ap+20
+0x1.af80b8p+21
+0x1.7b4424p+22
+0x1.9ecaf8p+22
+0x1.a0d9ecp+22
+0x1.ee609p+20
+0x1.dd5e68p+22
+0x1.d3dea8p+21
+0x1.379edp+20
+0x1.bbc82p+22
+0x1.f08b5p+22
+0x1.9adcp+17
+0x1.63585p+20
+0x1.43b3a8p+22
+0x1.6e67ep+19
+0x1.b65978p+22
+0x1.2b134p+20
+0x1.d4acc4p+22
+0x1.cced1cp+22
+0x1.752594p+22
+0x1.157b9cp+22
+0x1.9a74cp+20
+0x1.f6899p+22
+0x1.885708p+22
+0x1.90fc38p+21
+0x1.67e5d8p+21
+0x1.8c81f8p+22
+0x1.49b8cp+19
+0x1.0e1714p+22
+0x1.5b93fcp+22
+0x1.cc0424p+22
+0x1.062edp+22
+0x1.286bb8p+21
+0x1.f17d5cp+22
+0x1.ea88p+15
+0x1.be2df8p+22
+0x1.60e09cp+22
+0x1.cb7668p+22
+0x1.0379acp+22
+0x1.a825p+19
+0x1.3e3af4p+22
+0x1.cf5e98p+22
+0x1.1e402p+22
+0x1.ea648p+19
+0x1.15d3p+16
+0x1.0a553p+22
+0x1.40773p+22
+0x1.59fcf8p+21
+0x1.4f7f3p+20
+0x1.d8c9cp+20
+0x1.3a2a3cp+22
+0x1.4756d8p+21
+0x1.9fcba4p+22
+0x1.ab43cp+20
+0x1.b1199p+21
+0x1.04a3ep+19
+0x1.1e93cp+20
+0x1.60d3c8p+21
+0x1.82378p+21
+0x1.b36158p+21
+0x1.a6a7dp+22
+0x1.72bbccp+22
+0x1.192bap+20
+0x1.286a58p+22
+0x1.2b217p+20
+0x1.003044p+22
+0x1.de9878p+22
+0x1.11aa8p+21
+0x1.ae42ep+22
+0x1.2d5a5p+20
+0x1.e44p+16
+0x1.38e04p+22
+0x1.287aa4p+22
+0x1.1cc3ap+22
+0x1.6a00dp+20
+0x1.bd5408p+21
+0x1.06f26p+20
+0x1.d86058p+22
+0x1.1cc4c8p+22
+0x1.f884dp+22
+0x1.ced208p+21
+0x1.0b9f44p+22
+0x1.7fccf8p+21
+0x1.da2488p+22
+0x1.dab064p+22
+0x1.8e40c4p+22
+0x1.65d6a8p+21
+0x1.6b565cp+22
+0x1.dbd71p+22
+0x1.0df39p+20
+0x1.522df8p+21
+0x1.cdf0f8p+22
+0x1.b92fdp+21
+0x1.a5b68p+19
+0x1.1192bp+21
+0x1.5804p+18
+0x1.be90a8p+22
+0x1.d97fd4p+22
+0x1.c9aa5p+22
+0x1.9c21cp+21
+0x1.5805a8p+22
+0x1.566e3cp+22
+0x1.f3c274p+22
+0x1.89053p+21
+0x1.c5dbap+19
+0x1.75e98p+22
+0x1.98a8bp+22
+0x1.9739cp+20
+0x1.5f152p+22
diff --git a/benchtests/powl-inputs b/benchtests/powl-inputs
new file mode 100644
index 0000000..5683eae
--- /dev/null
+++ b/benchtests/powl-inputs
@@ -0,0 +1,1003 @@
+## args: long double:long double
+## ret: long double
+## includes: math.h
+0x1.396f9b1246899f8ep+0l, 0x1.c6ee6e790b0bbe14p-1l
+0x1.c5d84ecab6e84c6p-3l, 0x1.fae9ef3a730214d2p+2l
+0x1.f3b0618dee077634p+2l, 0x1.c5d394bf7e64b3acp+2l
+0x1.61fcfed474c9e908p+2l, 0x1.3138d94e6c01ca62p+3l
+0x1.f6005dbf8aa3b03cp+2l, 0x1.e8a1b46dbbd5f01p+1l
+0x1.b0dab162315f7a0ep+1l, 0x1.a9fc007ba96b828ep+2l
+0x1.141a0f38490118cp+2l, 0x1.1fa0af72f9c8aa64p+3l
+0x1.19e03fed84461f52p+3l, 0x1.791de77e81929a26p+0l
+0x1.025aa0f0d2553d56p+2l, 0x1.3facc7f344c6695cp+3l
+0x1.7db9540e6b7c9222p+1l, 0x1.33e219372d2351b6p+3l
+0x1.374bb78230f385fcp-1l, 0x1.10823445ee7f57p+0l
+0x1.4987e9854efb92ap-4l, 0x1.f6cf51a9daeb205p+2l
+0x1.dcae6d6d2332acb4p+0l, 0x1.59f3c10520e8e38p-4l
+0x1.145bc3cd4ba7613cp+1l, 0x1.267a293a40d6508cp+3l
+0x1.5e1191a733b2f996p+2l, 0x1.5ab3f754f434e16ep+2l
+0x1.b0fc60d0e073d53cp+2l, 0x1.4f7f1bb1a684462p+1l
+0x1.032d050a6c64aa08p+0l, 0x1.ca4a8a54b8019b8cp+2l
+0x1.c31ec8dcddba845p-2l, 0x1.9244b13ed9377fp+2l
+0x1.3b4fc70cbc207108p+1l, 0x1.182ecc87466340ecp+2l
+0x1.1b5424e95d3c42ccp+1l, 0x1.05a073a432b20c0ap+2l
+0x1.3e90cdb06f7e9e98p-2l, 0x1.2232638b0293ba2p+0l
+0x1.b82e862a51b23588p+2l, 0x1.9fdd5620a7b3ecf6p+2l
+0x1.5c803a490bbedc44p+1l, 0x1.b751de84a256a738p-1l
+0x1.0d638c94aec74a64p+2l, 0x1.60b4461d4edfd6ep+2l
+0x1.db8370e228d62bap+2l, 0x1.81a4c069cfbc8c48p+2l
+0x1.2e79f778b59149aap+3l, 0x1.7115247697d15df8p-1l
+0x1.4be4f230071d387cp+0l, 0x1.35830ec85e565c86p+0l
+0x1.2ebd9cb72adbdfd6p+3l, 0x1.639f408f480b0b96p+2l
+0x1.0be30fc563013832p+3l, 0x1.2aebc5ccb5e39f5ep+3l
+0x1.f741bf56307bbaa6p+2l, 0x1.d9c6a0614352fdep+1l
+0x1.43485ebd7cedb5dcp-1l, 0x1.a8f2bff3fb64dea2p+2l
+0x1.5f863b9bf87fd45cp+2l, 0x1.3dcf8568d997ea2p+1l
+0x1.3ae06818413d1002p+0l, 0x1.5ade2f56bed73304p+1l
+0x1.2a9a7077108d05d2p+0l, 0x1.7dffa561d6763bbap+1l
+0x1.da8b5c02658656c2p+2l, 0x1.4ed191c25a430f92p+1l
+0x1.5c938e2dbb6f9b96p+1l, 0x1.2725b19a10b53574p+3l
+0x1.eb7c299caa17b81p-2l, 0x1.1a214298af869cfap+3l
+0x1.b02725c619b62beap+2l, 0x1.3d3158ca620aa9e8p-2l
+0x1.17440984c757527ep+3l, 0x1.4e250f0e7824c124p+0l
+0x1.0e5683eac87bd1ecp+3l, 0x1.e08223b9381202ccp+1l
+0x1.bb13d1ca1ee9173cp+2l, 0x1.a07687725d5723dcp+2l
+0x1.5876a01e7fc68b3p+2l, 0x1.1ef7b4a4941124e6p+3l
+0x1.9eb674128d4e4678p+2l, 0x1.c214da3778d16f7p+1l
+0x1.ec9e03c45ccbe734p+2l, 0x1.037990f2b05e6766p+3l
+0x1.fc9cd7920bb27b08p+2l, 0x1.413bf688939fea3p-3l
+0x1.64c55d1cf8a5088cp+0l, 0x1.8d5081bcf0e84028p-1l
+0x1.ea29adccb9b3c628p+1l, 0x1.17d5b9dcc642a3bp+1l
+0x1.9b642a62b24d4004p+2l, 0x1.3d580f017ec24262p+1l
+0x1.1e1da2a19977069p+3l, 0x1.b7b4b54d44c5f292p+0l
+0x1.1d246e04ea14cdcep+3l, 0x1.d0a8ada8d9808f5p+2l
+0x1.066931be3fa50312p+2l, 0x1.9d552c620d2911a8p+1l
+0x1.2e4ea242881f5bbp+3l, 0x1.b1568160d141321cp+1l
+0x1.28c09757be7fdbd4p+3l, 0x1.1461ad9a2927d74cp+3l
+0x1.0caed2f8138fd3d6p+2l, 0x1.765f4297fdc3195p+1l
+0x1.0945aba316a32b54p-1l, 0x1.066caf34ceabd2c6p+3l
+0x1.04d350000531b6p+2l, 0x1.07a4c97e4c56f59p-2l
+0x1.0b1025ca81d64f24p+3l, 0x1.8fcfb588c26b3a4cp+2l
+0x1.36407c1e951e2036p+3l, 0x1.5d2f61f50de45f1ap+1l
+0x1.0789b8bd0a6000cep+1l, 0x1.f6bd4360f636fca8p+1l
+0x1.1689e695602a2ecp-3l, 0x1.9eb61f5a36cbef6p+1l
+0x1.3803a18bf266cfacp+3l, 0x1.3f6ad0ebdbf4bd9p+1l
+0x1.85ee011e98696252p+0l, 0x1.196a9ae43ea1b19cp+2l
+0x1.1cbfc795bf808668p+2l, 0x1.a5173ded0274f5bp+1l
+0x1.2529dc5d15d03364p+3l, 0x1.fb246a969d8cf426p+2l
+0x1.18bccff493b5f852p+3l, 0x1.24d059592baa3d4ep+3l
+0x1.fdecf32a3cc9651ep+2l, 0x1.c2a336379b3ea946p+2l
+0x1.404f74a029dead54p+1l, 0x1.62d70cb795e4c29p+1l
+0x1.ede9dded79245c34p+0l, 0x1.16cba97515cdf2dep+3l
+0x1.c5bacb15366affcp+0l, 0x1.11fa8b0b7052d52cp+1l
+0x1.923bebc9a479f93ep+2l, 0x1.057ab478d273d38ap+3l
+0x1.1cb9326c2a33145ap+0l, 0x1.798269ef215a2bdap+2l
+0x1.1333025c1dcd4538p+1l, 0x1.2889e7548292fb2ap+2l
+0x1.affd5ad2904894dep+0l, 0x1.6087b365009eafb8p+1l
+0x1.ba2349e13d239afp-3l, 0x1.673a4c3121e616f8p-1l
+0x1.0e2821e324abc7c8p+1l, 0x1.352028760f9e3274p+3l
+0x1.e5307cbf516be80ap+2l, 0x1.26c2eab6d6d7627p+2l
+0x1.9a7fa62bb5c87952p+0l, 0x1.85011042ea3fbb24p+2l
+0x1.2ff06178ef08be86p+3l, 0x1.7b9468c7d88c9398p+1l
+0x1.c7a7ee309822296p+1l, 0x1.2ca5125fbd9571d6p+3l
+0x1.25010758a2660f52p+0l, 0x1.ed2862477cf6275p+2l
+0x1.163fd8691e8c9dap+3l, 0x1.24c027dae2652952p+3l
+0x1.e1c77e808b3ce966p+2l, 0x1.13e81085b9666488p+3l
+0x1.bd40eb831f11bfc8p+2l, 0x1.8267bae247bfa2bp+2l
+0x1.212786be16a88688p+3l, 0x1.3f6213dc193912ecp+3l
+0x1.e9098b2500f12bcp+1l, 0x1.0e67143b70008e28p+3l
+0x1.26bcac39b7cbd358p+2l, 0x1.244155f4442a98d2p+3l
+0x1.34d4d93ab2ab4de8p+2l, 0x1.c8edda477d74235ap+2l
+0x1.6d8a3b7eaf94fe1ep+1l, 0x1.a52151cb40f198a4p+1l
+0x1.5d838005da45faa4p+2l, 0x1.8d141e31eb8bb64ep+2l
+0x1.aa37d5722882e4a8p+2l, 0x1.17534f1caa6c790ep+2l
+0x1.43a71307d27752eep+2l, 0x1.8ae04fa3bb245498p+1l
+0x1.d796c54dcccf3086p+2l, 0x1.1c5f137378140e72p+3l
+0x1.140a1a832eb3588ep+3l, 0x1.e2dc03456baa021cp+2l
+0x1.636d9305179230d6p+2l, 0x1.9e618631e9b6b334p+2l
+0x1.17f43d2b4d025b22p+3l, 0x1.a6dcfd945b058778p+2l
+0x1.8973c32990378e5ap+1l, 0x1.c9ee451d543bb776p+2l
+0x1.18665e5fb2f78054p+2l, 0x1.24fd4b04a9f80a88p+3l
+0x1.d86b539abb954b58p-2l, 0x1.76f729dca5675988p+0l
+0x1.bb65b7e44d76f27cp+1l, 0x1.93203cd04cb791cp+1l
+0x1.38b9d4d73ff92b5ep+3l, 0x1.07450262a17a64acp+3l
+0x1.af46bfffbd514e68p+2l, 0x1.96884836b8183f24p+0l
+0x1.09bd64b7c310f636p+3l, 0x1.a661d5ac0de81e06p+0l
+0x1.773d7ae25e5f53dep+2l, 0x1.d49a4a53e304a76cp+0l
+0x1.7e33e38f8a26623ap+2l, 0x1.3604125a959c9c84p+1l
+0x1.ff98e02ebadc38fap+1l, 0x1.56138894e9ff2c98p+1l
+0x1.a7a7e109ad2db7c8p+0l, 0x1.1dc433005b95bbacp+3l
+0x1.cfd4ffb2a10926ccp+2l, 0x1.9c48a83996380e28p+1l
+0x1.0f69559b6fea33aap+3l, 0x1.8caecce89039c2dp+2l
+0x1.5a987f9ef7969b7ap+2l, 0x1.e4c7e72379509a92p+1l
+0x1.4db8c8337303fb2cp+2l, 0x1.667b107ea929e8b6p+2l
+0x1.70a63b647e5f1d88p+2l, 0x1.2d80f9bbddc651e2p+3l
+0x1.383ce567f99b2f74p+3l, 0x1.31793158fd2531fap+2l
+0x1.480c810d905b6b68p+2l, 0x1.f2efad16b1d0fc5ep+2l
+0x1.22aacee718f9770ep+2l, 0x1.a41a2b639661a9aep+2l
+0x1.dc8905db3ceb17b6p+2l, 0x1.0787eb7ff0380c18p+3l
+0x1.164c7da71d0e4a72p+3l, 0x1.45f8b960e4e16aa2p+2l
+0x1.8186e3eca9c8f8d4p+2l, 0x1.1039df3974eda46cp+3l
+0x1.0c3518badc8bd476p+1l, 0x1.9cc9199791ff592p-3l
+0x1.f822aa86b6f4ad52p+2l, 0x1.1ffe99f72cc79474p+3l
+0x1.2bdaadb11e81485ap+2l, 0x1.78d422f81c98c9b6p+2l
+0x1.1e54c79256e93dap+3l, 0x1.b856fed942be160ap+1l
+0x1.3e9a5c008ad2965cp+3l, 0x1.f9f0f9bef08b06b8p+2l
+0x1.09f7c98b264ab524p+2l, 0x1.117a73d055cb428p-6l
+0x1.91131b5532738b34p+2l, 0x1.f3e4127e724b0ffap+1l
+0x1.413759aadd7a0b1p+1l, 0x1.87d3d2a6fa50a2d2p+1l
+0x1.0af0e2d02e5db2f8p+0l, 0x1.34a1511f5bf994p+3l
+0x1.1ce5cc9a0d13b9c2p+3l, 0x1.bbb6815bea7ffbecp+2l
+0x1.520345688b547ed4p+0l, 0x1.3f32f97ea2001866p+3l
+0x1.19599e6c019479ccp+2l, 0x1.994b6b998eb7e40ap+2l
+0x1.1a82fa7d95066fdap+3l, 0x1.1ee23b4b2f392a32p+3l
+0x1.5e5dd4c8021b62b2p+2l, 0x1.3e3bb5a932548936p+2l
+0x1.4025ab3ddade61e8p+2l, 0x1.87908f00cb4506f6p+2l
+0x1.9f9383b61ec6ed6cp+2l, 0x1.49e66d401bc94ce2p+2l
+0x1.312a324c344a527cp-1l, 0x1.3a3a6c772f4c7e6cp+3l
+0x1.498306970902b498p-2l, 0x1.2e1bc74bdae7f1fcp+0l
+0x1.3a1fbc688026561p-1l, 0x1.0ec34489578aa3fcp+2l
+0x1.33fdadc2d8e921f2p+3l, 0x1.8201d7ec7791eaccp+0l
+0x1.05709c0b99f79ba4p+3l, 0x1.1bb5d3ed00a93c0ep+3l
+0x1.2433e50a31143fa6p+2l, 0x1.5d0a1cad4ae21aaep+1l
+0x1.260d101b4111b818p-1l, 0x1.0acaba5b187ce744p+2l
+0x1.80f05f320b6269a4p+2l, 0x1.2aa77192ac3b3b54p+3l
+0x1.53041ae155eb6064p+1l, 0x1.403a787c7df3fbbap+2l
+0x1.81566a999c1039p+1l, 0x1.251eb834b4ce0dc4p+1l
+0x1.428e415403ed0cbep+0l, 0x1.dad1faa25bedd55cp+2l
+0x1.f60de60df0acaefp+2l, 0x1.0ee0dd12be72cdbcp-1l
+0x1.2e462648c33eaf72p+3l, 0x1.711965aabe811ccp+1l
+0x1.2a5c3ab56bec4afcp+3l, 0x1.03657a1d13769dc4p+3l
+0x1.3f04904f222fdba8p+3l, 0x1.2f7059a0fa797584p+2l
+0x1.8e0beaaaca9432ep+2l, 0x1.54aa0d4dafd25decp+1l
+0x1.2543e03152861adp+3l, 0x1.26e9a4a72205a35p+1l
+0x1.bf70b036e60a6418p+2l, 0x1.5d0d2703bb87f3b8p+2l
+0x1.9749bf126c1944dcp+0l, 0x1.0c4c2c68d1859268p+3l
+0x1.29aa57f9c1ea1236p+3l, 0x1.64d63d269fa390bep+1l
+0x1.ea3071a7599d40e8p+1l, 0x1.3b8d2ca6361c0c38p+3l
+0x1.9d7840678cddd812p+1l, 0x1.c232f8553eadebcap+2l
+0x1.3113653b702a0aeap+3l, 0x1.2361480726987d5cp+3l
+0x1.4033ac709dd1a0e4p+2l, 0x1.bb2620aad7b66e54p+2l
+0x1.aa01790d73bb3142p+2l, 0x1.819714e47d0e446ap+2l
+0x1.36a571599ca4b35ep+0l, 0x1.76bace91026396eep+0l
+0x1.50c000d1478c6be6p+2l, 0x1.d8a125fb639621d2p+2l
+0x1.1c44ec96a94b44aap+2l, 0x1.8a4a4f83cc19ecdcp+2l
+0x1.918567dd406244dp+1l, 0x1.09fdfbf7bbd7d194p-1l
+0x1.2ec5f190be84bb78p+3l, 0x1.3fe5a5cccbc7f092p+2l
+0x1.3d3f1c69418a2b5ap+3l, 0x1.1be445bb0b817bbep+0l
+0x1.bde5c3f173dfd482p+2l, 0x1.0c3bfd34117660a8p+1l
+0x1.067ed433041dbba8p+1l, 0x1.cf21583199a27b22p+1l
+0x1.3d161c3c7767a73ep+3l, 0x1.5ee5b082c04c4304p+2l
+0x1.ada3eebdb862518ap+1l, 0x1.a29e4ca8cfac4efcp+1l
+0x1.159ce685ed9b366cp+0l, 0x1.ff4f301793eec3fep+0l
+0x1.a4774a578cf04a36p+2l, 0x1.2fa20bf7bc21be1ep+3l
+0x1.2bf882313e289cf2p+3l, 0x1.c263b11352f557c4p+0l
+0x1.38188404ebfb47f8p+3l, 0x1.4491c237038e1b2p+2l
+0x1.85e5d7cf6a43c0ap-3l, 0x1.235f9f49bc1dd612p+3l
+0x1.ce25db7a59afe5cap+0l, 0x1.6a0150d854d7e008p+1l
+0x1.0eb4638f2a6b59ccp+2l, 0x1.530ce67e19b950dap+0l
+0x1.36eba6dd3e6766dp+3l, 0x1.b40b9f412c6ddd54p+2l
+0x1.1357e01d1e5bba76p+2l, 0x1.e4491c525085c02p+1l
+0x1.d89b34ad5c57f2d6p+2l, 0x1.307d6cead655633p+3l
+0x1.1200dadd4711310cp+3l, 0x1.087e4fbea2ee0a06p+3l
+0x1.182b71640154e79p+2l, 0x1.7903e649920b47aep+0l
+0x1.42ed70be3b228dfp-1l, 0x1.d8b399f44939513ap+2l
+0x1.32cbf73017fe1fcp+1l, 0x1.2ecc6b5135e1755cp+2l
+0x1.8ba04323fa21f11cp+2l, 0x1.1558f7d85da37cd4p+3l
+0x1.0589e422c97e7a74p+1l, 0x1.673aaf0b50337a18p+1l
+0x1.8b021153b251ccc8p+2l, 0x1.5dd5dc4a0e288f8ep+2l
+0x1.a4edea59cedf2e8cp+1l, 0x1.3fd20adfe4df018p+3l
+0x1.d53bc067303a392p+2l, 0x1.2ee98fe8d91a5138p-1l
+0x1.0ba5d9a0df3a796p+3l, 0x1.37364b65c34370d2p+3l
+0x1.b1312f3e99b74cc4p+1l, 0x1.8d96a8352e6aecc2p+0l
+0x1.2f1d987754e615a8p+3l, 0x1.341146848dce9d64p+3l
+0x1.cbcb195beda0984ep+1l, 0x1.30824eb532516424p+3l
+0x1.3e217a69b1df7f52p+3l, 0x1.fad46688e2a5ccf2p+2l
+0x1.06b76b513eb3c078p+1l, 0x1.f9451aae5f83a4aep+2l
+0x1.c66ea9614d27f18p-5l, 0x1.3b538bccbc3b0d52p+3l
+0x1.ab746f057ba036f6p+2l, 0x1.737062e5361d1ca4p+1l
+0x1.d39336d8f2b4e6b8p-1l, 0x1.028b35001ba00978p+3l
+0x1.e6de6d77c74f540ep+2l, 0x1.2f140aa23530e782p+3l
+0x1.9adca21db7da1dcp+2l, 0x1.207a5b08c2002258p-1l
+0x1.332efd450ff21dbcp+1l, 0x1.8f37f77c323e1b74p+0l
+0x1.fd2e5191eb197aa4p+2l, 0x1.d93e208df3703f8p+1l
+0x1.a0ecdf0ff9698e58p+2l, 0x1.c37f0edb985f901p+2l
+0x1.8aafc5aadf39563p+0l, 0x1.a3253b8abfe24438p+1l
+0x1.89fefd293dde1414p+1l, 0x1.44b2a41f960f9cf4p+2l
+0x1.24932bca7b5e3d5cp+1l, 0x1.1cc92b76a11d8922p+2l
+0x1.b6ba514e4d1d83p-7l, 0x1.2fe9208398fe1882p+3l
+0x1.7e786b10e4c92c48p+1l, 0x1.80eec5038be8c3dcp+2l
+0x1.a96a19d9cd181284p+2l, 0x1.15c06c3efc73b954p+0l
+0x1.8d79c9c2761922fap+0l, 0x1.1c5f56f3e34971fp+3l
+0x1.31eec4fa9aefa50ep+3l, 0x1.71e3529fedad9c74p+2l
+0x1.14fe589d44e36f54p-1l, 0x1.1da31007d096e858p+3l
+0x1.1277d1f3066cbdaap+2l, 0x1.532c10e24d6f7b4p-2l
+0x1.8f8ba6089031346ep+2l, 0x1.b82b1b3f4d0a4472p+2l
+0x1.c6ad887f6e33d11ep+2l, 0x1.d6c3fdb1ea42bac2p+0l
+0x1.b3b02419ca8e88dp+0l, 0x1.40b430fb0f697cc2p+2l
+0x1.2cb1bb7fda6c4fc8p+2l, 0x1.656cd0f3cb0d2ac2p+2l
+0x1.68f4aee25ce13deep+1l, 0x1.de532940b63a2584p+1l
+0x1.e9e7f8c0de87f592p+2l, 0x1.1c5ea8216c56f7cp+2l
+0x1.33c36ac17e39bc9cp+2l, 0x1.d29550f9f5323dd8p+1l
+0x1.04d575f433278ae4p+3l, 0x1.8f45020b2ff5426p-1l
+0x1.0ceec44845ba1e9ap+3l, 0x1.22f784948e819bp+2l
+0x1.49b188751733ab7cp+2l, 0x1.250fa71f21a390b2p+3l
+0x1.babddecddba3e10ap+0l, 0x1.7cbdc3bff380ca38p+2l
+0x1.a1fd581ab54fbe06p+1l, 0x1.c4e33080dd4fb278p+2l
+0x1.8db76363d1bb991cp-1l, 0x1.16a5531dad4a9ae6p+3l
+0x1.de83fa19c7547618p+1l, 0x1.d722b74a63755942p+2l
+0x1.3bf3e138927d612cp+3l, 0x1.634517be39245eb4p+2l
+0x1.32cd928e2f20d65p+3l, 0x1.3fbde594c5689928p+2l
+0x1.012c745ada36fabcp+3l, 0x1.43a697d232f591c6p+2l
+0x1.14c1063e361947aap+3l, 0x1.a863d013f3330b38p+2l
+0x1.2e4912b1db4ad93cp+3l, 0x1.92d7fa4edb95c018p+1l
+0x1.0b66a9704b53cbdcp+2l, 0x1.792e8c0a5affda9ap+1l
+0x1.2375738c33bfbcd4p-1l, 0x1.c1ad8f49c1de337p+2l
+0x1.f71d321ea46ad1ep-3l, 0x1.98d4e08b1564f038p+1l
+0x1.78346d57fc9e03a4p+2l, 0x1.b7ab96cbad72387p+2l
+0x1.1c0881fb9f6d49fcp+2l, 0x1.79964ba21da01df4p+1l
+0x1.06bbbaf862f0c534p+0l, 0x1.05d42e6456a07848p+2l
+0x1.910cdd3582bbcbe8p+2l, 0x1.e9e6d35f5a46d318p-1l
+0x1.36884eff8729caap+3l, 0x1.51d8bc1512190fp+1l
+0x1.9094095eeebc8628p+1l, 0x1.4dc0d231e76c8ff4p-1l
+0x1.28ee82c7621d127cp+2l, 0x1.b6560dc9e217474ap+2l
+0x1.6bc02671cf456aa4p+2l, 0x1.21b8f3271d301f2ap+1l
+0x1.8ccae6c894497c5cp-1l, 0x1.2d4e4d47dc6b096p+3l
+0x1.cfa6f3274a764be6p+2l, 0x1.2bdd6bd0c5410348p+3l
+0x1.931b021d689f57b4p+1l, 0x1.7468c1d13b159472p+2l
+0x1.928802f4d80060ccp-1l, 0x1.9361289986bb425p-1l
+0x1.112769710fc180dp+1l, 0x1.3b30f92cdfbd070ap+3l
+0x1.3858343bc46f4c7ep+3l, 0x1.4e52ada5844b2264p+0l
+0x1.ff81ed83e5572478p-1l, 0x1.14ff0438350b4d84p+3l
+0x1.1c85c87a40cf929p+2l, 0x1.f5f15c7f41f658b8p+2l
+0x1.d061312fed632b86p+2l, 0x1.de2f4cab1e926ddap+1l
+0x1.457126a7c059351cp+0l, 0x1.112344db7808565p+1l
+0x1.1329668f901b26dap+3l, 0x1.a5be7681f10c8018p+2l
+0x1.ad77e5d05a9f37bcp+2l, 0x1.1f206b93b40bfb96p+1l
+0x1.5e71327a3e8d9b1p+2l, 0x1.49ff15f05818659ap+2l
+0x1.ff3fd00fe8fdd64p-5l, 0x1.9ab692a25cf49548p+2l
+0x1.81bea0c6ea598f84p+1l, 0x1.9941874540efe858p+1l
+0x1.ad24a9bfe64491cap+2l, 0x1.879d7c6eae34aad8p+1l
+0x1.2cc6347a04a2a62ap+3l, 0x1.a62900382c9a39dcp+2l
+0x1.cb777ad564f2b80cp+2l, 0x1.3dac6beb4d854768p+2l
+0x1.5ec3e917957decep-3l, 0x1.e79195b1156a7f8p-4l
+0x1.5d9fe5c181e57c54p+2l, 0x1.8e501b2bbcdb3b92p+0l
+0x1.91d981003fff8db8p+0l, 0x1.031a95dee2aa1da4p+3l
+0x1.e7b14e2b21dab6d4p-1l, 0x1.92e2067f396cae96p+0l
+0x1.0a7a5220d10abb8p+1l, 0x1.a16577268c1a975p+2l
+0x1.2b3366dcad18b98p+3l, 0x1.8d4536edaa0bd1b8p+2l
+0x1.cdcbff3f634226p-5l, 0x1.ceb48ab97d3662bcp+2l
+0x1.f2f4d22f07f4d7e6p+0l, 0x1.3a068537c537f64p-4l
+0x1.2594c944983029c2p+0l, 0x1.9a555b21c5150dap+0l
+0x1.987191502787bd74p-1l, 0x1.16a5657bd1308ec4p+2l
+0x1.0cab17f9ef212d7p+0l, 0x1.018e9eeca78fc3aap+3l
+0x1.0c09d4d250bf3b5p+3l, 0x1.03a3eec351f747d8p+0l
+0x1.0ed53211201f92a8p+3l, 0x1.477ae95e066991e4p+1l
+0x1.bd653eef2dc17fe4p+2l, 0x1.f53e2b685afd4594p-1l
+0x1.0d8629aeb9f86f94p+3l, 0x1.a0901462cbb53614p+2l
+0x1.d135582089caab4cp+2l, 0x1.2012c07aba3e0c7cp+3l
+0x1.43e0ceacf882ccd4p+1l, 0x1.9f57419ade31ee96p+0l
+0x1.1dc275a45a36ed7ap+3l, 0x1.639a393eb2b6acp-7l
+0x1.2cf9ea7855f45904p+1l, 0x1.4c65c5ad358e540cp+1l
+0x1.b6bc5fb7dbddc3ccp+2l, 0x1.2a1e3307f856990cp+3l
+0x1.45dfb9152745eb3p-2l, 0x1.299d02e9e7e16246p+3l
+0x1.19102e5835cc34fcp+2l, 0x1.3536af287c7f6fp+1l
+0x1.6dc95ef9b8931644p-1l, 0x1.cdc7120238247182p+1l
+0x1.4c325698360da784p+1l, 0x1.f852e7396a9bb52cp-1l
+0x1.5c6cf7b02f213c6p-4l, 0x1.f1501e0ee9a14c54p+1l
+0x1.6591ef09b8967accp+0l, 0x1.f750b5627ece4774p+1l
+0x1.b8d928d4247442b4p+2l, 0x1.fafc229f97bbc9fp-2l
+0x1.795382836a59ca4ap+2l, 0x1.b2efa861483e3346p+2l
+0x1.d6bc780ff4633584p+1l, 0x1.f88b0a2786e86028p+1l
+0x1.d675827910bad14cp+0l, 0x1.0cce0bb4430fdf66p+3l
+0x1.1fd7a47a962941b4p+2l, 0x1.d3e0c155e38ecd3ep+0l
+0x1.e18b3466348d1e58p-1l, 0x1.ea289be37c8355dp+1l
+0x1.1935cd443a3d589cp+1l, 0x1.09c1fa838c0550ccp+3l
+0x1.fd61242bc46b3068p+0l, 0x1.096ccec95382b4a4p+3l
+0x1.24c8b891ec3cd31p+3l, 0x1.b32096dcc156814p+2l
+0x1.18fa21799ad11bc8p+3l, 0x1.36e6260bd2a9255p+3l
+0x1.6cb963a16784990cp+2l, 0x1.07824e812de606ep+3l
+0x1.f87ff473cbbe6674p+2l, 0x1.62276aad925cd142p+1l
+0x1.d8964134178beaaap+2l, 0x1.3d52400387293876p+3l
+0x1.7f88002d64eb7d1ap+1l, 0x1.79598bda14c3e326p+2l
+0x1.2beff8233b467d8cp+3l, 0x1.79dd2d266f67f3d8p+2l
+0x1.a9716ca0f3d7cd12p+2l, 0x1.17fef956c9403966p+3l
+0x1.877d4f860c0fb144p+1l, 0x1.7f99f033f36706bcp+2l
+0x1.de2cf9d8ef26da7cp+1l, 0x1.0defdb2ffb949eeap+3l
+0x1.2b2dd217b11c04b8p+3l, 0x1.31f15cb0d2c7c7dp+1l
+0x1.1c4fdc8c59f25568p+3l, 0x1.9aefcf4975072b4p-4l
+0x1.dcc64c0f1607b4ecp-1l, 0x1.9516ea8c67f9a836p+1l
+0x1.c60a9df3c8a8a7p+1l, 0x1.e2393d3ef2a7eb5ep+1l
+0x1.67b649b855878e14p+2l, 0x1.17e18d3640f897c2p+3l
+0x1.1f37ae36523caa98p+3l, 0x1.2a3b7f1ebbdd0bacp+2l
+0x1.0f88fa86fcee2928p+2l, 0x1.9aaba2169e043ee2p+0l
+0x1.2d605f2d5af97354p+2l, 0x1.94df28d1cfb6ba92p+2l
+0x1.41d6e72f5531ece8p+1l, 0x1.4cca0adde91babf4p+2l
+0x1.311a10c17cde2638p-2l, 0x1.2a14d006b75afd1ep+2l
+0x1.61a6fa318c0f7d7ap+1l, 0x1.4f190f456c82603ep+1l
+0x1.8aef534fce51f72p+2l, 0x1.12587a281f0b73b8p+0l
+0x1.2bccb645455e3d7ap+2l, 0x1.2693fbb0e55303ecp+3l
+0x1.85759f7c23db0c46p+1l, 0x1.1b554fe57f447fcap+2l
+0x1.1fc4592bb1a740e8p-2l, 0x1.f1d87b51f1e5b6f6p+0l
+0x1.0164a15efcea5e5cp+1l, 0x1.8b26903af83866eap+1l
+0x1.2ba4bd121c6707fcp+1l, 0x1.88929a78f494040cp+0l
+0x1.2ffe61c5ec28eb14p+2l, 0x1.c3bc06ce6760c5e6p+2l
+0x1.8630793aec500b78p+2l, 0x1.dcb14dc333b36428p-2l
+0x1.08f6ab36f6d011f8p+1l, 0x1.efb6f6039d6ebd8p+2l
+0x1.defc14cfcab285c8p+2l, 0x1.fe134ddad06bfd98p+1l
+0x1.ab2c15792495566cp+2l, 0x1.018f6e1f7e6645ap+3l
+0x1.988863c4cd7f6838p+2l, 0x1.a6321f799b0d5d6ep+2l
+0x1.ccd0a7e5dcd7668ep+2l, 0x1.eea557ed4109a58p-4l
+0x1.2f8c6eeb5f2eddc8p+1l, 0x1.81c284b24dbe1206p+2l
+0x1.6926a709d13010c2p+2l, 0x1.3d18bce5725654d8p+2l
+0x1.5f753c0e76a7f4p+1l, 0x1.07f582cb5eead866p+3l
+0x1.d37fd7370b3a9564p+2l, 0x1.4b24291481e7d7d8p+1l
+0x1.af037b84cd2980cp-2l, 0x1.41b04a106744717ap+2l
+0x1.197bed270b9da944p+0l, 0x1.6ec8e9f4882d85a8p+2l
+0x1.6faa0bb23c6ce606p+2l, 0x1.9747ef1ec76615f4p+2l
+0x1.c5437bcc52fd0b34p+2l, 0x1.a0f26c8b3a64bd84p+1l
+0x1.6acf846848c69d5cp+2l, 0x1.de3bdf4e2e9bbaap-2l
+0x1.c438ef28759b9676p+2l, 0x1.646effd8f3cdfdacp-1l
+0x1.417815948b34d5ap+2l, 0x1.2182b0f2f74290cp+3l
+0x1.d5b052842c6e08bcp+1l, 0x1.c488633ff824ce18p+2l
+0x1.28df6d348145a09cp+3l, 0x1.bd3c0a154531653p+2l
+0x1.52860bd231672904p-1l, 0x1.1c3624e469b6d38ep+2l
+0x1.1dc1b70410135c8p+1l, 0x1.2acb8774bdb7fad4p+3l
+0x1.eb48dbe19e85d33cp+1l, 0x1.ae105edc08251758p+2l
+0x1.27188207689b38ecp+3l, 0x1.92e427bac013277ap+2l
+0x1.348a829ff7719f9p+2l, 0x1.e6127cf99add74e4p+2l
+0x1.1ee60f5d2019cfacp+1l, 0x1.d888381c757d5a8cp+2l
+0x1.2ab633ff1e1b8a1ep+3l, 0x1.43acfee2806c1494p+1l
+0x1.4d9cfe69c54de428p+2l, 0x1.096e56f5f3faa4e4p+3l
+0x1.2d9e2fb77838b84ap+3l, 0x1.bba54ef122da479cp+1l
+0x1.eb55c7c853211b74p+2l, 0x1.2c82386431bb45fep+2l
+0x1.69602224d90a6226p+1l, 0x1.1f0cc40d542db714p+1l
+0x1.017df2152fe49a02p+3l, 0x1.27abf43601c8fc9p+2l
+0x1.e838e26eb6642fecp+1l, 0x1.fda7bf21a25ac57p+1l
+0x1.0e97da7bf38d8e84p+1l, 0x1.0d014ece1c9e9e46p+3l
+0x1.771c664d6a9de1ap+0l, 0x1.6709f9de816a761cp-1l
+0x1.0caaea124531065ep+2l, 0x1.ece2f0d959ba0f24p+2l
+0x1.46cb2eaf7cd247fap+1l, 0x1.3234ea3d40e8ef2p+2l
+0x1.828e30118824ca12p+1l, 0x1.9848c67a6ddc28b4p+2l
+0x1.58cb094ec9fa58ep+2l, 0x1.32171c9b2f2118d6p+3l
+0x1.766110b99f67fa7cp+2l, 0x1.2316f1d6bb0353d6p+0l
+0x1.fa404371d83085dp+2l, 0x1.815623d9517baee2p+2l
+0x1.0e627cb4ddbbeb0ap+1l, 0x1.2bf5eb5207309764p+2l
+0x1.63bea12af98b7bd6p+2l, 0x1.f7ac0efcb3c7b3aep+2l
+0x1.815787621c4ca6bp+2l, 0x1.020b36d0d6bad1fp-2l
+0x1.a3b2b49f861424eap+0l, 0x1.6664d9ccfbab860ap+2l
+0x1.37354f8c57bfbd84p+3l, 0x1.22a88e3dfd71388ep+3l
+0x1.2fe243ff41da658cp+1l, 0x1.56146fc63e15dbdep+2l
+0x1.a9aa7c0f51facfa8p+2l, 0x1.040fb64fe619d7f2p+2l
+0x1.2536cc53b6e3fc3cp+0l, 0x1.3f0595d7185780d8p+3l
+0x1.0162ff9213fa5794p+2l, 0x1.a5b8c96fde26cd9p+2l
+0x1.9269ab13b5079504p+2l, 0x1.76898fe6992532e2p+0l
+0x1.934066db6f188a24p+2l, 0x1.3882a2c5a724e4e8p+3l
+0x1.290b2676f788998cp+2l, 0x1.3e7d1218833ceb74p+2l
+0x1.8585eae58ea25bb4p+2l, 0x1.07e4eff07f5dd834p+3l
+0x1.d565d25c50645724p+2l, 0x1.ef397f0f15411e78p+0l
+0x1.f5ee15d13fd49fbcp+2l, 0x1.eca58713d508b31cp+2l
+0x1.7ec03a5985ec9842p+2l, 0x1.113a582b81380778p+3l
+0x1.2784949bd226ef54p+1l, 0x1.d4203af714fa7814p+0l
+0x1.1f0c5bb123252fdep+2l, 0x1.e875e12df859496p+2l
+0x1.1f825095e7e5aa44p+2l, 0x1.281b4bd288d1fc9ep+3l
+0x1.a4cff19410549d48p+2l, 0x1.ac0cda2c31e7e108p+0l
+0x1.829725ecabe0e154p+2l, 0x1.9dc370e57f50ecbcp+1l
+0x1.c2a6ecaabc630fcep+0l, 0x1.103255fb408949b2p+1l
+0x1.460bad0e27d775fp-1l, 0x1.6084f38b61e1f72ap+2l
+0x1.658e275f8e5913cp-1l, 0x1.a3eee813e9f94ec8p+2l
+0x1.b76ccbd748d080a8p+2l, 0x1.aaa459cb0506725cp+1l
+0x1.1b336e5b8b3f210cp+2l, 0x1.3bb3820d2f95237p+3l
+0x1.0d5003db3a960c84p+3l, 0x1.cf7380fb3bb89ec8p+2l
+0x1.20bc6b5b9bc2f63cp+2l, 0x1.4bfacddecdc924bep+0l
+0x1.ee0d0270f418af22p+2l, 0x1.b417b9fab6a5da36p+2l
+0x1.85d219ff5851ba9p+2l, 0x1.0f2d7971b2b2489cp+3l
+0x1.14417e0ee95e233p+3l, 0x1.1423b3ee004e7298p+2l
+0x1.2579c122a57ce51ap+3l, 0x1.b9f809d36043887ap+1l
+0x1.139c9dce9be795e8p+3l, 0x1.1963a4537d34023p+3l
+0x1.c3047638cb812c3cp-1l, 0x1.c8c36ec1c0e92036p+0l
+0x1.c51c69f6a87aea74p+2l, 0x1.f849381dde80e27p-1l
+0x1.1d1309190769975ep+2l, 0x1.adae416902247804p-1l
+0x1.0901bc324f5adfbap+3l, 0x1.2e9bfb741a3008dcp+3l
+0x1.3123dea94f186f3cp+3l, 0x1.507d5037cda4519p-3l
+0x1.69d994ba76b7e258p+2l, 0x1.90b049d2af9172f8p+1l
+0x1.2cf7d8889cec4cp+3l, 0x1.6be5cfa27daf00aep+0l
+0x1.43965e38344b10a8p+1l, 0x1.3801d3f135676634p+2l
+0x1.5b63879cc8d6b1cap+2l, 0x1.00c61462c517515p+2l
+0x1.86df319688ef148p+2l, 0x1.ab117e1a889460bcp+2l
+0x1.2c826d05fe82204ep+2l, 0x1.6adf8a364ef798ecp+1l
+0x1.3a2a1450ba664b68p+3l, 0x1.535949afdccbeffcp+1l
+0x1.11878c30598ad1b8p+3l, 0x1.253b8308eaebe536p+3l
+0x1.3a06fa3137c223p+2l, 0x1.15809a855aad1432p+3l
+0x1.2350e905b2c5629ep+0l, 0x1.e0b12056872493ecp+1l
+0x1.0eca08ad30c7c78p+3l, 0x1.4587504e61a8322p+2l
+0x1.e77ed86eb02e5e78p+2l, 0x1.a2642bd1a39443dep+0l
+0x1.e42edb92f989509ap+2l, 0x1.365334a6e2a5887cp+3l
+0x1.bb2d10738bad9604p-1l, 0x1.04d5325026fc5626p+3l
+0x1.3a6deb3906e1a7e4p+1l, 0x1.1ae48a6488270674p+3l
+0x1.4ae7d32dd99cd5cp+2l, 0x1.1a293e2c7ad288acp+3l
+0x1.492a997cd3b23ebap+1l, 0x1.fc372a05597770aap+1l
+0x1.11a533a8b520523p+1l, 0x1.252684ecea8c3f4p-4l
+0x1.5a486b370d70b1dp-1l, 0x1.894f24aa1f7c4d46p+2l
+0x1.146d631fd0db98a6p+0l, 0x1.09975a2bbef5141cp+3l
+0x1.864c29b1a30f90cp+2l, 0x1.e694b789091b3fb6p+1l
+0x1.b6517124e9d21ca6p+2l, 0x1.1fa230f6fecb043p+3l
+0x1.dcf173398d7e4b9p+2l, 0x1.d558662fd88a366p+1l
+0x1.97d95cc771cfee88p+1l, 0x1.3516c40e2416d69ap+2l
+0x1.3262c817be2f0d4p+1l, 0x1.e10d2058941a3c52p+0l
+0x1.4a4bb5f89269afa2p+2l, 0x1.9463fae7009d14f4p+0l
+0x1.9ca63c24a502f9fap+1l, 0x1.4b2373f0818e0f5cp+2l
+0x1.3391abb33dff12dp+1l, 0x1.2abc871939c57fdp-1l
+0x1.71853115fa22a898p+2l, 0x1.7035cbdb910c18f8p+2l
+0x1.4d1db57a387f7efp+1l, 0x1.192ed0f91aaf0158p+3l
+0x1.2fe6fd209e8d55dep+3l, 0x1.8f7849105566f4eep+2l
+0x1.34fe83e441aab2bp+2l, 0x1.e55e7c8d3edf039cp+2l
+0x1.739e1ed92c5609ep+2l, 0x1.a4d6ccb8a381f498p-1l
+0x1.3b0e5af929d9870ep+2l, 0x1.c4441565b4a0c65ap+1l
+0x1.759484f7a23689acp-1l, 0x1.6074e94c371011fp-2l
+0x1.1c2639c1a9fbee6p+3l, 0x1.7461dcd82d9c2eap+2l
+0x1.d219aa277801ee98p+2l, 0x1.b697c5f1c70489ccp+1l
+0x1.de14d7359ccf7506p+2l, 0x1.9d58554e21e4011cp+1l
+0x1.2c196c3591bde826p+0l, 0x1.5074e4d3e3624b1cp+2l
+0x1.d5737b2cd71cbcf8p+0l, 0x1.395046a71294777ap+3l
+0x1.9f699afd8891945ep+2l, 0x1.d4472419471409acp+2l
+0x1.6b4a6c36ea944c44p-1l, 0x1.ab38e9b78e832444p+2l
+0x1.bd9caed6508f01a2p+1l, 0x1.22838e87b520177ep+3l
+0x1.584e0425a5d6a4b8p+1l, 0x1.7321d7fa98c8e37p-1l
+0x1.d3ab2c446dffd83p+2l, 0x1.e0f12fb026847f68p-1l
+0x1.2c46cca34a3df234p+3l, 0x1.d010d8d10e453f8ep+2l
+0x1.e5bcc6b068cb30b2p+0l, 0x1.9f9e2c48c34137f6p+0l
+0x1.1a48e80f7d001bdcp+3l, 0x1.8c90f1c9e91a566p+2l
+0x1.b4a5f35d24b5838ep+2l, 0x1.ef911f1ec8430874p+2l
+0x1.6e80f3d9a9d0aff4p+2l, 0x1.940497241165146ep+2l
+0x1.2de701363f94f3bp+2l, 0x1.3c984ea392a5c73ap+3l
+0x1.2da4b6dc49cc7462p+3l, 0x1.9d1aaa9d219601p-4l
+0x1.3a7db871d579b3e4p+3l, 0x1.6b1d37cb8a10cb12p+1l
+0x1.51617cd74a0835a8p+1l, 0x1.56dbcc51309877b4p-1l
+0x1.83e38aaf6043aa8ap+2l, 0x1.103b0ee418526p-2l
+0x1.75468613beaaa3bap+1l, 0x1.23f20a9fbeeee90cp+2l
+0x1.00cfc58fcc7f7c4p+3l, 0x1.095a9d94a9d5e96p+3l
+0x1.ae758aebd0506808p-2l, 0x1.e9f7b7ece2b24aa8p+1l
+0x1.208f5922f9474e76p+2l, 0x1.cc45b914c0beb46ap+2l
+0x1.2bb4a08ec5778358p+1l, 0x1.761bd925279d212p+1l
+0x1.a0f673717867015p+1l, 0x1.07e99ded924eab6cp+3l
+0x1.2a4ff44084eb7308p+2l, 0x1.49048cf19da3be88p+1l
+0x1.a07fea908a0494aep+1l, 0x1.94944994cb2c67fep+2l
+0x1.7223fed3916a1bap+2l, 0x1.ff15edc2621709fcp-1l
+0x1.6d69487b38d8d514p-1l, 0x1.c003d54f4ba06dccp+1l
+0x1.4172b795f0291cf2p+2l, 0x1.be7290b562201708p+2l
+0x1.2ac6455991512aaap+3l, 0x1.f8aec2f830fa4624p+1l
+0x1.4b4708e34cb0f718p-1l, 0x1.2a1e94a72c694e12p+3l
+0x1.8e067d5389096382p+2l, 0x1.38a6df6b0c4fd58p-3l
+0x1.3d7d5b77ac9ad76ep+2l, 0x1.e261f229b4bb532p+1l
+0x1.4b537935b966a7a8p+2l, 0x1.e76d7cf625e459ap+2l
+0x1.33a3e204acfd313p+2l, 0x1.31196c91d2242288p+2l
+0x1.4e0c1daff7c9539ap+1l, 0x1.70cea5acd87288c6p+2l
+0x1.3f6fa1f8473b13a6p+3l, 0x1.257744c0b4f0f062p+1l
+0x1.182b9c7cf86b14dep+3l, 0x1.a112be5729a44072p+0l
+0x1.16105b452ccdece8p+3l, 0x1.08a7b36b91c979f8p+2l
+0x1.1891eca4db648ffap+2l, 0x1.937105a180eaab64p+0l
+0x1.121176df4235d234p+3l, 0x1.d09391557d113b5ap+2l
+0x1.7f46486efed66494p+2l, 0x1.766dc04538d87aacp+1l
+0x1.53c595cadbd73d62p+2l, 0x1.60d3e1d98e593fbp-1l
+0x1.18f410dac8cd4274p-1l, 0x1.289b7a8c83c2afd4p+0l
+0x1.8a6dbd04ce263954p+1l, 0x1.1f38c78b39192d14p+3l
+0x1.61cb0239998f3858p+0l, 0x1.3c700ebfe4c77f3cp+3l
+0x1.aa600363f372f1aap+2l, 0x1.c7726d7d834b69bap+2l
+0x1.851e08247439ee3cp+1l, 0x1.e746a0a83f8ed4a4p+1l
+0x1.2e0cd31d218c70d6p+2l, 0x1.0938b1905d628f4ap+0l
+0x1.122bb1cfe6fe5b04p+2l, 0x1.0e9f8cf1376a4cbep+2l
+0x1.048173f3fb289c38p+2l, 0x1.085904e1dcc24934p+2l
+0x1.3b96f7379b439b9cp+2l, 0x1.14fea23f1e14d346p+3l
+0x1.282bd0a04e1dd0a6p+3l, 0x1.d65894471a3698acp+1l
+0x1.70a9d50555ee8678p+2l, 0x1.890bfe0e027a2b48p+1l
+0x1.0687d9c4f89f7d3ep+3l, 0x1.a098b1b1ff3aa12cp+0l
+0x1.5acfa0adabf25e1p+1l, 0x1.18695bb55463c676p+3l
+0x1.7be135c05d8e9d68p+2l, 0x1.f8cc9b2d76af65b2p+2l
+0x1.23111b1ec075f494p+2l, 0x1.2f235b1f7d52b36cp+3l
+0x1.1f2dd48ff543de16p+3l, 0x1.fa7da0cd6409719ap+2l
+0x1.4c98f147ef297432p+2l, 0x1.d37679265aa05362p+2l
+0x1.c0bb008843ff448ep+2l, 0x1.66adbc9ba3596358p+2l
+0x1.51e494dc870cf438p-2l, 0x1.b98d4e045ce27p+2l
+0x1.23ebc22cee32b0dap+3l, 0x1.3240b663eb49aafp+1l
+0x1.8c23520e9dd57d04p+1l, 0x1.aec40cb13be1a862p+0l
+0x1.8a2a02bbc5f290b6p+1l, 0x1.73ad48ceb21839a4p+2l
+0x1.2f00f91f818af04ep+3l, 0x1.cf3dc88f23b9aaeep+2l
+0x1.1074dddddb061742p+3l, 0x1.3d055876a191130cp+0l
+0x1.28451cd2b4b5babep+0l, 0x1.37790c008df68e4p+2l
+0x1.b803eddd2fde543ap+2l, 0x1.962de7f3c51201b6p+2l
+0x1.e6bebc24e2bc9728p+2l, 0x1.1430dce00ab7859ep+2l
+0x1.adc8aff767571e5cp+2l, 0x1.92ef07a6b97ffd62p+2l
+0x1.825bf2da4167e182p+2l, 0x1.0a6fe75ec9bf5ebcp+1l
+0x1.817d4fe89e4a367ep+2l, 0x1.2624827eecea955p+2l
+0x1.ffdd8d90d9345fep+2l, 0x1.8f7126ebae046b9p+1l
+0x1.1df30c47904489d8p+1l, 0x1.15c898a612329c1ap+1l
+0x1.41bb74bc089016ep+2l, 0x1.21b2e259cc208428p+0l
+0x1.5c445496c54362acp+1l, 0x1.4285e536d6b2b3ep+2l
+0x1.d953dd79b5a62198p+2l, 0x1.d71f330f351d05b2p+2l
+0x1.537d2930fe2382b8p+2l, 0x1.3a8b62ccc05757eap+0l
+0x1.1168899c01ea6a8cp+2l, 0x1.1076eb3c3bbdba58p+3l
+0x1.01becc919dbd1abep+3l, 0x1.00716cf68eac9154p+1l
+0x1.d58bd78b59cf66aap+0l, 0x1.07ab50877ee5ff88p-1l
+0x1.220549147d3ce2d8p+2l, 0x1.04682ac87b2ee8dap+3l
+0x1.2bc797ff7ec1a472p+3l, 0x1.0efac2aebefb068p+3l
+0x1.40cb0da2da3f6bep-4l, 0x1.38a472bf337c1cb8p+3l
+0x1.05254f57c1b6d39p+2l, 0x1.173f94d4bf787f3ap+2l
+0x1.1053b3931d6f8e16p+0l, 0x1.2904baac1e460146p+1l
+0x1.e82ed27295aa6f2p-2l, 0x1.748166b279006034p+2l
+0x1.9683c5e7815b1648p+2l, 0x1.25749b76ade454a4p+3l
+0x1.0d35ee3ab5ff9868p+3l, 0x1.97f8ebf001e281e8p+2l
+0x1.9e69eee3a71344a2p+1l, 0x1.3bfdd7da1e215afcp+3l
+0x1.23f35e4bec5d0748p+3l, 0x1.8d86ade9c3814164p+2l
+0x1.2b7e6efacfc89728p+3l, 0x1.efafaef9ad4254e4p+2l
+0x1.0fd1f45fa20b6bf4p+2l, 0x1.3211b9eeb215b5fep+3l
+0x1.2a4e6090fcafebcp+3l, 0x1.d746f2633377095p+1l
+0x1.d1f784b360bfdc68p+2l, 0x1.fb0a201e8f7096bp+0l
+0x1.200336a47c1169d4p+3l, 0x1.f5e096cb03290fc4p+2l
+0x1.78c906d7057a3f2p-4l, 0x1.96b64ebf9c19893p+2l
+0x1.7d2fe4ff6698cf8p-3l, 0x1.2af6b5d162df7dc8p+2l
+0x1.dbf5fa70cf554b9cp-1l, 0x1.0c759a6302922f4p+2l
+0x1.8231323affa7451p+2l, 0x1.be9217f9ba156dp+1l
+0x1.c9ab66ded5b68b04p+0l, 0x1.539d36b8de339134p+1l
+0x1.0d33d084f069d3acp+3l, 0x1.4b093c8626a16414p+2l
+0x1.4035b684e3d40a78p+2l, 0x1.b9900a3854271f64p-1l
+0x1.23dc9308cdaca86ep+3l, 0x1.a120d3129794fa06p+2l
+0x1.841f0455b802c758p+2l, 0x1.0699d38ad39ea42p+1l
+0x1.ddb3cce320224098p+1l, 0x1.3280790396447594p+3l
+0x1.4d9874c263b573ap-3l, 0x1.0d751cf3fcedd0d4p+1l
+0x1.8dd9f6dd0941528p+0l, 0x1.dc3b8380964cd4dap+0l
+0x1.4bd8588476e2d5bp+1l, 0x1.fe098b189d2b6c1p+1l
+0x1.864b08a8d0f3f51cp-1l, 0x1.b9b4ecfa5dc56c0ap+2l
+0x1.8a01c8f6a0b761f4p+2l, 0x1.057be9bd8d3dae62p+3l
+0x1.b37702f072b34fe8p+0l, 0x1.d2c06a6bb52f9c0ap+0l
+0x1.3d1b494b20c6a462p+3l, 0x1.6cfad720d0789d4p-2l
+0x1.c9036ad0e58ce544p+2l, 0x1.1b94a83d6f915d34p+2l
+0x1.5af7292067e3a644p+1l, 0x1.f1b160ec9e4c91fap+0l
+0x1.8cd18922bd016636p+2l, 0x1.4c295fe0075a9c24p+1l
+0x1.34a5ff8c694e9b1cp+3l, 0x1.ad2b2c4f379eb70ep+2l
+0x1.1c2d1c567a07a558p-1l, 0x1.d178788ac77086d2p+2l
+0x1.092070ffab89a818p+2l, 0x1.cd50ef7954b01864p+1l
+0x1.0140ab35e8db7b18p+2l, 0x1.6763f7b769bc6074p+2l
+0x1.ecc67ce2b11e44p+0l, 0x1.721abf1d9986822ap+2l
+0x1.537d0853809c2b8p-6l, 0x1.2e57b495a61e7a78p+2l
+0x1.b248f145d8f133cp+1l, 0x1.9b02bdd33f3a73f6p+0l
+0x1.cdfd603935dc39c8p+2l, 0x1.ce2819c5d17caadcp+2l
+0x1.83ce77467e4635dp+1l, 0x1.7e8a0c2b83282106p+0l
+0x1.f6af1eed6c577cd8p+1l, 0x1.0022411e3e83d9ccp+1l
+0x1.2efbc8b0879b40e6p+3l, 0x1.0935ee74ee2c2996p+3l
+0x1.985d517ca3535ba8p+1l, 0x1.0188081d9deaff78p+2l
+0x1.09d159567ed8743cp+3l, 0x1.7e87659c008a7caep+2l
+0x1.b8e9a3e99c744122p+2l, 0x1.2ffbc9fa2a3883acp+1l
+0x1.fca495160b68a7p-7l, 0x1.2b52304480a4e74cp+1l
+0x1.44119849ac94e8c8p+2l, 0x1.f452d404849b6594p+2l
+0x1.fbf368aeb9b44042p+2l, 0x1.f2824b7ca53de464p+2l
+0x1.506dbf2e0cfcf022p+1l, 0x1.627cd0b537870012p+1l
+0x1.675a217a920db164p+2l, 0x1.099f740e3d313098p+2l
+0x1.f461a2101c19d466p+2l, 0x1.46dd48de0823c3f6p+1l
+0x1.12554b35928a5434p+2l, 0x1.a2b828ddf4eadd58p+1l
+0x1.8e58292fe7c32ae4p+0l, 0x1.6f7398aff514908cp+2l
+0x1.a2c3793e11e887d4p+2l, 0x1.4d85cd87a375a4d2p+1l
+0x1.07108156249d5d3cp+0l, 0x1.38d79ed9b45f15b6p+1l
+0x1.5d112b4c23182f4p+2l, 0x1.fcad4a6aaea0a90ep+2l
+0x1.0ad9939d108d480ep+0l, 0x1.3643daf8c1148a2ep+0l
+0x1.78600b39079adf2p+1l, 0x1.da06ee242dbbafa4p-1l
+0x1.3de15cbd92880964p+2l, 0x1.03024e5e8a67a2a4p+1l
+0x1.d77bcbe94d6a5f7ap+2l, 0x1.96f542c2bd69f6fep+2l
+0x1.7db4bb559d43438ap+2l, 0x1.6ee58d29d4b6d4e4p+2l
+0x1.ef4ea923a6dd2f52p+2l, 0x1.457101bfb1b9c7bcp+2l
+0x1.2eebaaa868accce6p+0l, 0x1.267b204a1cf120e4p+3l
+0x1.7d67b0b5b0c53c5p+1l, 0x1.9c3eab99150321ep+2l
+0x1.47b6603b6ecc36b8p+2l, 0x1.38cd9c410de2f6c2p+3l
+0x1.eb8d9b93f3757c08p+2l, 0x1.ee0f7484c23d93e2p+2l
+0x1.b660bc1e867fcf64p+1l, 0x1.47bb8df5c7756652p+0l
+0x1.94d481f6e2d5c578p+2l, 0x1.1da8207f3eb7eea4p+3l
+0x1.b4e048f164df27bp+2l, 0x1.0801eda8453797d4p+3l
+0x1.2f9a7543ac568aap+3l, 0x1.f7d8959fa33dcc9cp+2l
+0x1.2a4e713a443a546ep+2l, 0x1.9e3cfe0f93298f7ep+1l
+0x1.3447c21ce00d8b66p+3l, 0x1.123d5f7aeed6406ep+3l
+0x1.d86e083927454ae8p+1l, 0x1.d3ff307123ebda68p+2l
+0x1.4ea10e9cfb517434p+1l, 0x1.6f4ddc6bad972c5ep+2l
+0x1.bc0a3e4da07a9df8p+1l, 0x1.0b99589dfa20fbdp+2l
+0x1.069835f241dd397p+3l, 0x1.e6b27a314a959e9p+2l
+0x1.5529a7df65498254p+2l, 0x1.a51b9f8107ccf198p+1l
+0x1.26e093318b318ccp+3l, 0x1.eb2b5d9cda4a5c3ap+0l
+0x1.27a1d8d2ff53e268p+2l, 0x1.cca6ec76c9c31568p+1l
+0x1.196aa7e2226d5a64p+2l, 0x1.c46b1c2a627b75acp+2l
+0x1.71d7dcbda93ce158p+0l, 0x1.1160355ad15c899p+2l
+0x1.633e937be2aa8ba8p+2l, 0x1.529abcf6978b955ap+2l
+0x1.5d3cc0bb89ae687p-3l, 0x1.3ffc00651374451ap+2l
+0x1.7e16892e86e29e38p+2l, 0x1.eebdbcaea4c54a76p+2l
+0x1.1d35a3196a1bfd46p+3l, 0x1.1db1aeb290cf7e36p+2l
+0x1.6f5653d58dcd9188p+1l, 0x1.19ce1cb2c8e666ep+3l
+0x1.1db13266a28af42p+3l, 0x1.a2f0613772d842c4p+2l
+0x1.0acf0db395fd0c9p+3l, 0x1.df8e8fa51177b03p+1l
+0x1.ee83f0b04c344d94p+1l, 0x1.8973b5a92c9c7166p+2l
+0x1.f2a5ba3a1556382cp+2l, 0x1.1af5cf6ed487600cp+1l
+0x1.1dbda57994114cb8p-1l, 0x1.355513cf97866702p+1l
+0x1.2fd0aa2d0411782p+3l, 0x1.4000485aaaca4c5p-3l
+0x1.3e002b16806dc264p+2l, 0x1.dbc4fe0a2a6852e4p+1l
+0x1.8b84f3e2c70e12bcp+0l, 0x1.05ae5c85ddb31aa2p+3l
+0x1.97f3032a588503f4p+2l, 0x1.3e4811ef218c26cap+3l
+0x1.91f57b843945067p+0l, 0x1.1b0711075a12194ep+1l
+0x1.9ab47bee2fdeb284p-1l, 0x1.5f56968105255156p+2l
+0x1.a61300af2a7d6ddp+2l, 0x1.c1e8c3fb62fe0e3ep+0l
+0x1.3c8d7e6eaedccecp-4l, 0x1.7173bc9a7da2fc58p+2l
+0x1.1ef9d3affe74f31p+3l, 0x1.3463203f619a5edap+3l
+0x1.98f93ca4f5af34bcp+2l, 0x1.cac847ce0f947e88p+2l
+0x1.b499442ef4f6289p+2l, 0x1.7f043727c0e3aed4p+1l
+0x1.c7d09131d00a30a2p+1l, 0x1.ef652813b2c3254cp+1l
+0x1.fd0d67cd0e69d704p+2l, 0x1.ed3a35a451aa4028p+2l
+0x1.685734a70f962c68p+1l, 0x1.4cc5ddcf01dbaa46p+2l
+0x1.cddf679b8261e8ep-2l, 0x1.6b9ab1d7b16a6f3p+1l
+0x1.217b75b5627c8106p+3l, 0x1.2f4e9b7ab746cd52p+3l
+0x1.55a08dafe028fc9cp+2l, 0x1.150a4f8877fc5b08p+3l
+0x1.823c9b84c96753c8p-1l, 0x1.2477412e07b711b4p+2l
+0x1.3463ab4e9e5bf1cap+2l, 0x1.631b9f7050c546ecp+2l
+0x1.22758ffbf32740ecp+2l, 0x1.269372b7417a146ep+0l
+0x1.7991b009eee0317ap+1l, 0x1.3db6ff8ed5e4ae7p+3l
+0x1.727ec126e192659cp+1l, 0x1.71b17a440418d954p-1l
+0x1.441277b3a7ad49cap+1l, 0x1.3147d2ed62cdee78p+3l
+0x1.1b6b31b1156c55fcp+2l, 0x1.b9e8a2fd265f74e4p-1l
+0x1.968af98c7824cd38p+2l, 0x1.14a5b3c17c9dc8d4p+3l
+0x1.06e8a57c3e593d1ap+3l, 0x1.0e1ce9e9db12c458p+1l
+0x1.86bdc5badb3ba4bap+2l, 0x1.6a5c50a0947d6e3ap+1l
+0x1.212e23331aae64f2p+2l, 0x1.8fb5a178d17bfb06p+2l
+0x1.eba8b2ef3cf610fcp+1l, 0x1.e2c0d442e7c6b47cp+2l
+0x1.32e6f9d3736632cp+3l, 0x1.06fa5a0a0221184p+2l
+0x1.73b8cbe55be693c4p+2l, 0x1.02015956ca3482dep+1l
+0x1.830061589e95edf4p-1l, 0x1.a5bdc9e9f1dc4e52p+0l
+0x1.576eafd149fe0d6cp+2l, 0x1.b360b6cce3b4a24cp+2l
+0x1.e8f85194a9fb91b2p+2l, 0x1.d7e2b9471890e1ccp+2l
+0x1.02c8e02f76dab4f2p+2l, 0x1.4683024294ff10cp+2l
+0x1.5b9d0e7d0883c1acp+2l, 0x1.3c9b069ed674c58p-1l
+0x1.cbca400370f6aebp+1l, 0x1.0987642d87bcdb1cp+3l
+0x1.0d5171bc3f3e818ap+3l, 0x1.b61ea5387968a3e4p-1l
+0x1.3ef8535df3140774p+3l, 0x1.95f22743612d2dc8p-2l
+0x1.fb47493fa3586b2ep+2l, 0x1.18cc15ac808bab2ap+3l
+0x1.415adc341c15470cp+2l, 0x1.13020b63fb6b5abp+3l
+0x1.2949b00b855a31dcp+3l, 0x1.be24d1ff9fc6e3dap+2l
+0x1.5d1fb468b60ee138p+1l, 0x1.f8462d7906acc1b8p-1l
+0x1.a78a381bd3e4fd4ap+2l, 0x1.e62da1d661cac2dp+2l
+0x1.c0b0a112b5186b1ep+2l, 0x1.2f2f58eb9d0c498ap+2l
+0x1.dc26e8401edeaa88p+2l, 0x1.13fdafbaa199b2e4p+3l
+0x1.29ccaf8d06ecc40ep+3l, 0x1.2938ff8b47453e36p+3l
+0x1.5ad8f824afa42a84p+2l, 0x1.27f0c571c6a0327p+0l
+0x1.19139953e2191bbep+3l, 0x1.3123f8fb3e3bc00ap+2l
+0x1.8f46ebf4bdccdfa6p+0l, 0x1.7474a2b957df6908p+2l
+0x1.32361a1ac8c491c8p+3l, 0x1.aa42a05b11587b44p+2l
+0x1.5a0cdb2506899a2ep+2l, 0x1.8248275d030249b4p+2l
+0x1.09f9865b63e0e89ap+3l, 0x1.1747d82a8bec8cacp+1l
+0x1.fd973987a58b2d44p+1l, 0x1.5816e29d23095288p+2l
+0x1.1802a68dc9285248p+1l, 0x1.8fa8673046969a4cp+2l
+0x1.6a25b67af18ca9d4p+0l, 0x1.1edff3a14b189e3p+3l
+0x1.a32b8f241a742a02p+2l, 0x1.d87f28ce9a394f7cp+1l
+0x1.0fb4e5f33fbb88d2p+3l, 0x1.b1f078f6bc7c0f92p+2l
+0x1.d82067d8e06964bep+2l, 0x1.141528be642626c2p+3l
+0x1.406c929a2d4b507p+1l, 0x1.b910e88cca4190ccp+1l
+0x1.40e961a3cf627d04p+2l, 0x1.2af9e05ca93e474ap+3l
+0x1.9f673411e79a268ap+2l, 0x1.094c9a62ad84bd6cp+3l
+0x1.023d033eca550caap+2l, 0x1.58b2288245e92c88p+1l
+0x1.9eb63c0dc1bff5f8p+1l, 0x1.9a7fb2830710736cp+2l
+0x1.6c99c4fe19fa89fep+2l, 0x1.f34eabe791517956p+2l
+0x1.010e040e53b83ecp-1l, 0x1.0e53f5de2b229f4p+3l
+0x1.2b86bca16ff8b672p+3l, 0x1.f3a21b22f77dd968p+0l
+0x1.ee5d0c93fc511a64p-1l, 0x1.179ad7655565332ep+3l
+0x1.05a8c972690725e2p+3l, 0x1.5302af8e2d136618p+2l
+0x1.505638b9ed31c83p+2l, 0x1.cc82c2a6f7500212p+2l
+0x1.82ebec46c58d219cp+1l, 0x1.66c0c13d7c7dd938p+2l
+0x1.12373bad5970f58p+1l, 0x1.c599730760935e28p-2l
+0x1.27bd19724e194e2ep+3l, 0x1.9748023df9680cc6p+0l
+0x1.ccf7fbecef898e26p+0l, 0x1.b00eaea099df280ep+2l
+0x1.1ecf8ed8909ffea4p+3l, 0x1.3da568f53f0a34e4p+2l
+0x1.5c39ac57d127f83cp+2l, 0x1.a8d2832e67c1410ap+2l
+0x1.8d8b81ef767f3224p-1l, 0x1.28ab9882a1b14a4ap+1l
+0x1.169f0f8e1a3e8d6cp+2l, 0x1.e1abbb1ced33dd8ep+2l
+0x1.327b54592e48cf9p+1l, 0x1.023ad46ad365ac5ap+3l
+0x1.211edf016e9130fep+3l, 0x1.2f8ea90e318e7dfcp+2l
+0x1.20bfdeb0b726f548p-2l, 0x1.f2e36d2d3e572c92p+2l
+0x1.b44cf3aef6bae688p+2l, 0x1.0bfaa89bede6264p+2l
+0x1.40fa1b6b98efd9e4p-1l, 0x1.3a33eaa038e2784p-4l
+0x1.e449a6e26330635ap+1l, 0x1.69d24e80e1f5d3dep+1l
+0x1.67dcbc59e4bdfdfcp+2l, 0x1.5977d9d9a64f166ep+0l
+0x1.74c9d0fbc0e545a8p+2l, 0x1.9260e05fa71bc89p-1l
+0x1.0a10e26d915e41e4p+2l, 0x1.8820fe75de74d27p+2l
+0x1.10ad582ad5540332p+0l, 0x1.dba578e87f979c7ep+2l
+0x1.6d6dd7642881ce92p+2l, 0x1.c00d02ef8658a88p-1l
+0x1.32ef74139ab0689ap+3l, 0x1.42f4d490f3eb4268p+0l
+0x1.5351f1700666e04ep+2l, 0x1.07f3fdaaea09d23p+2l
+0x1.dd93d3428c44ee6cp+0l, 0x1.221f8c8c8c5a68e8p+2l
+0x1.24007d9b939aabdp+3l, 0x1.eb94376c45a23bf4p+1l
+0x1.a4086b9c7fdd218p+1l, 0x1.16accd6f19ffb55ap+2l
+0x1.13191edbf4f76682p+2l, 0x1.311e39e460d4470ep+3l
+0x1.0dbc9d192f3ccffcp+3l, 0x1.238b8d44b7c7e122p+3l
+0x1.0cdb26a96b5d85c4p+3l, 0x1.45a499003705e1e2p+2l
+0x1.354d6c456925634cp+3l, 0x1.b17e66bf2561b882p+1l
+0x1.9624f94d5a19e0dp-1l, 0x1.291a7aa222a15968p+1l
+0x1.c954d65785d23d7cp+2l, 0x1.86c37e4570ba35ep+0l
+0x1.2539edbea056cfcep+3l, 0x1.125879a34b841fcap+3l
+0x1.8120db9e39f9a014p+0l, 0x1.5df9520cfc46eaf2p+0l
+0x1.621bd49a93b29914p+0l, 0x1.e111ea28bae98b58p+2l
+0x1.1ad10ce615ccedep+2l, 0x1.08cf6956c2819272p+2l
+0x1.d882dbd98ea17b06p+0l, 0x1.d1c8ab5f7149b83p+1l
+0x1.1762320cf9a8ee0ep+3l, 0x1.14c3666edb60c0dcp+0l
+0x1.0d96949f2cbf86c6p+3l, 0x1.69e858890d152ebep+2l
+0x1.0e0e42d05b0a47bep+3l, 0x1.044574087c7cea8ap+2l
+0x1.26211570a606e1cp+3l, 0x1.0ac1f2e895bde422p+3l
+0x1.07a911e44ecca7a6p+2l, 0x1.56467866100c617ep+2l
+0x1.a8a7f7504c5a63cap+1l, 0x1.ec97181fe3e99994p+2l
+0x1.7a7ec723ab8dc148p+0l, 0x1.7575e58e5d249b12p+2l
+0x1.26d891683027d886p+3l, 0x1.6e7d222d4c0755c2p+2l
+0x1.5128a2920dbc5ebep+2l, 0x1.5eb288ce67c3b01p-3l
+0x1.c8ce9e9d7fc19c7cp+2l, 0x1.6affa483d71067f6p+2l
+0x1.c994cda58bd78908p+1l, 0x1.3cc3dba7db7d3f24p-1l
+0x1.62162e688595f09cp+2l, 0x1.a9b498c24452a9p+0l
+0x1.5356b8cf0f4258e6p+1l, 0x1.2f50342158b5ffcp+3l
+0x1.cef5a339125078fcp+2l, 0x1.0a938f27a3da5124p+2l
+0x1.c2c63833e4ceacc4p+2l, 0x1.e74c5d352b1c854cp+1l
+0x1.213b86498b02a2a8p+3l, 0x1.57391db037b7857cp+0l
+0x1.81172911a6947874p+1l, 0x1.637ae413c8aa79c8p-1l
+0x1.fddbdb5a4dd3d46ap+2l, 0x1.363912b7f7d986c2p+3l
+0x1.a36354d3d69ba2c4p-1l, 0x1.7a6fe77b4d37665cp+1l
+0x1.5d96e2268f470c4ep+2l, 0x1.854618eaf98a961ap+1l
+0x1.1fb926d006c8f438p+2l, 0x1.b911476142a9be8cp+2l
+0x1.084c822708ad3004p+2l, 0x1.df0de824681abe12p+2l
+0x1.0b5b53c97c59e33cp+2l, 0x1.b538d7a8efe6c314p+0l
+0x1.2a3b35f8b95f584cp+2l, 0x1.eb53482b7548582cp+2l
+0x1.98538de69efb711p-2l, 0x1.395b034294890562p+3l
+0x1.7df1dbec594d0058p+1l, 0x1.1c9d0c192312112cp+3l
+0x1.4ef874e3f4e67ce6p+2l, 0x1.3c3987ef241dbf2p+3l
+0x1.091a7865d64b4ccp+3l, 0x1.8ac6160112ed998p+2l
+0x1.d37b8de8a9fda30cp+2l, 0x1.2ad5a099e0641fp+2l
+0x1.04eb6d69e85952cp+3l, 0x1.810b8c78a126bfcep+2l
+0x1.12bf8b32349c028p+3l, 0x1.14a3a5bba36e46e4p+3l
+0x1.123b4e1d5077799ap+3l, 0x1.11d40c2bae88625ep+3l
+0x1.82b0b4b2cb9f6872p+1l, 0x1.2dc4594855d741b2p+3l
+0x1.3107b08be7410cbep+1l, 0x1.cdb11a2d6b7f5002p+0l
+0x1.1933f75fcee21a7p+2l, 0x1.6e69aee63104fa24p+1l
+0x1.9e36044b387ed062p+1l, 0x1.86dda73935c608d8p+2l
+0x1.0e6a7d3a394abffep+0l, 0x1.b6ffc65938eb5174p+2l
+0x1.27a083426eacd066p+3l, 0x1.7f2e1c7342d8faeep+2l
+0x1.842ae33b331adep-3l, 0x1.9e62f127adc88ee4p+0l
+0x1.78b1fa5d9e36e778p+2l, 0x1.f2a0a513882e22cp-2l
+0x1.23ead810a8ef1a08p+3l, 0x1.faa203db06b4004p-3l
+0x1.3e2b6b3eb2d1c168p+3l, 0x1.1aac28957f8a667cp+1l
+0x1.16ab943d33a209aap+0l, 0x1.8dda1a4ddf1e01b4p+2l
+0x1.9abdb3d30d8ec61cp+2l, 0x1.037aafa4cbc76724p+1l
+0x1.78345d4af1a8d99p+1l, 0x1.01234d1fbb76db9ap+2l
+0x1.07b4b717333cc1fep+2l, 0x1.0130e73029a82f98p+3l
+0x1.597ad7854931283p+2l, 0x1.64aa2d409f291f5ep+2l
+0x1.c1025a4b5147d9a4p+1l, 0x1.18981a6193bc3e94p+2l
+0x1.94e1abc33993d092p+2l, 0x1.23b7e31f57b30a5ap+3l
+0x1.751d3590bd6e92acp+2l, 0x1.cf4ab1e09f90441p-2l
+0x1.ca7133c665430ae8p-1l, 0x1.fed39461b5b661aep+2l
+0x1.7dfe97a9d4f34618p+2l, 0x1.1dc5dede8eb374d6p+2l
+0x1.964ed6a4405a2548p-2l, 0x1.ff984885ed410172p+2l
+0x1.1780f1c48a2e19ep+2l, 0x1.f3a0c7f0e08d5558p+2l
+0x1.d8d14256aac6d524p+2l, 0x1.0fd1e1dfb57bb7b6p+3l
+0x1.681391049624e072p+2l, 0x1.8a3ebc0e61948a86p+2l
+0x1.3d253b8414aa9024p-1l, 0x1.99f864a725bb5becp+2l
+0x1.52fd60c63e2a8e2cp+2l, 0x1.e1676de8d1b6e8c4p+2l
+0x1.ed364b7174b0475cp+2l, 0x1.a8e4be96c477c882p+2l
+0x1.0fd13fd0781d14a4p+3l, 0x1.ceb7d0e847c7c2d4p+1l
+0x1.002d6864dbbe24c4p+3l, 0x1.279ca38ea014f464p+1l
+0x1.edfc7eeda74f268p-4l, 0x1.8653fb10991ad99ap+2l
+0x1.d5de2467a715664p+2l, 0x1.88688d75e85821a8p-2l
+0x1.82ca76e5258f954cp+1l, 0x1.9ac049d7bb4a9e2p+1l
+0x1.f23fbf00fd4dcc68p+2l, 0x1.570ad9f1a0a615f2p+2l
+0x1.c669735d8c2d40d8p+2l, 0x1.95e211b51bb7aefep+2l
+0x1.ef85065020994264p+1l, 0x1.9566dac81ef82ab4p+0l
+0x1.1a78ba21faa0f998p+2l, 0x1.3db10c21759436b6p+0l
+0x1.fd89ded87f582676p+0l, 0x1.00875ba3bb8afcdcp+3l
+0x1.920a332830b3ecdcp+1l, 0x1.7d972151b90a6f4ep+1l
+0x1.d3e7f5aa4c73f65ap+1l, 0x1.6b20f5ea153b9f34p-1l
+0x1.78d0e835feae494cp+2l, 0x1.37f443267acc9bcep+2l
+0x1.fe1f82a7c423ce0cp+2l, 0x1.0b5687f21fc7bacp+2l
+0x1.ece174d5a7777118p+1l, 0x1.26c4cb10a0b81b4cp+1l
+0x1.2ad5e94f5650c2aep+2l, 0x1.c2e64da6837482ep+1l
+0x1.dcd7c50ccfd126f8p+2l, 0x1.8f22fc93edf5dd58p+2l
+0x1.287454842a47eb68p-1l, 0x1.36292ca6e9239808p+3l
+0x1.682776ea023dbec4p-1l, 0x1.2a647060c5c1e01cp+2l
+0x1.01a0ae0e1e1c10a6p+2l, 0x1.a616bf04439658cep+0l
+0x1.87d3f45b0dea2cecp+1l, 0x1.37b9ba164e6e5182p+2l
+0x1.55f5102c376dab1ap+2l, 0x1.549bcd602254400cp+1l
+0x1.638f8e8d28826b22p+2l, 0x1.6a4d1a0e8e7954ccp-1l
+0x1.79bafa7380d20f4p-5l, 0x1.67d3ca7b7f7d769p+1l
+0x1.649924b7bfd11794p+2l, 0x1.0b57b298eb10bap+3l
+0x1.592a5a60c35a136cp+2l, 0x1.c25dec11a3333122p+2l
+0x1.467bed0752d59bbep+2l, 0x1.fbc278f261aa384p-2l
+0x1.34530ac4b2fcdc4cp+2l, 0x1.1456bb2f28bfad88p+3l
+0x1.adb1230830e44d62p+1l, 0x1.3b16f3ee7c111f5p+0l
+0x1.b0fa67dde1590384p+1l, 0x1.1af15393406ee10ep+3l
+0x1.06af859a36f2de58p+0l, 0x1.d66081ff7c635e94p+1l
+0x1.b07eeae15a118728p+2l, 0x1.0935844ded7ef9ccp+3l
+0x1.a9f1f5fde206d484p-1l, 0x1.f2e5d5db33147d8cp+0l
+0x1.745fc8640726abd4p+0l, 0x1.3eb444effecdd812p+2l
+0x1.3e3e8ded97c7063cp+1l, 0x1.514c8df9eb45cf5cp+1l
+0x1.af066f32efc4d824p+2l, 0x1.0990b5503f7b956ep+2l
+0x1.5ebf8fd4ba51065ep+2l, 0x1.260b3adff8fcf62p+2l
+0x1.45c9fc7d5763f5f8p+2l, 0x1.f8fd1fa941b6cap+2l
+0x1.c363e66da4b9b7ep-4l, 0x1.ca1e9f7515b64996p+0l
+0x1.a70e976bccfdee68p+1l, 0x1.19889fce98e10258p+3l
+0x1.a68902a35fad1e68p+2l, 0x1.fe41877daab1b724p+1l
+0x1.7a1a10d29cc2e73p+2l, 0x1.5cfbf79ed6eda45p+2l
+0x1.33121f0206d95506p+3l, 0x1.3d981942b2d60cf2p+3l
+0x1.f5ea990ded8c7fa4p+2l, 0x1.6ca70cb3b7d4e5dep+2l
+0x1.e75b1cddfaae05fep+2l, 0x1.7981a7db0a5d6fc8p+1l
+0x1.b9298a7d46a7b414p+2l, 0x1.1136d652d81173b8p-2l
+0x1.c6a0cc3b1fde4abap+0l, 0x1.eecbb9de549cc4e6p+1l
+0x1.6b1c41ff7511631cp+2l, 0x1.00aa3a1e197c80ep-3l
+0x1.037cefe6c1ada34ap+3l, 0x1.154505dd43be0708p+3l
+0x1.df629863c9d8b234p+1l, 0x1.00094cbd626c94e8p+1l
+0x1.e9866e5b23e320c8p+2l, 0x1.4956378026d42212p+0l
+0x1.a703e9d72196d024p+2l, 0x1.5aadad66d8bd56acp+2l
+0x1.b075b431be4abe1cp+2l, 0x1.be6bfbb1aeec5398p+2l
+0x1.6652a27395662c8p-4l, 0x1.30c3e4a0cc7ee3c4p+0l
+0x1.826a3c0449c95p-6l, 0x1.27da4fd6462d72c8p+1l
+0x1.30553ddc06e63084p+2l, 0x1.2e75ab25d829dcb8p+3l
+0x1.e26ded68e41439c6p+2l, 0x1.461e7ab543b3f88p+2l
+0x1.751a464a67ef8e7p+2l, 0x1.42276472566323ap-2l
+0x1.34beccf30e20c8a4p+0l, 0x1.d627590aaa54d43p+2l
+0x1.17e1528f0f2a5e76p+2l, 0x1.2f724adbb85a28cep+3l
+0x1.ba1feaa259a5adfp+1l, 0x1.cc65d8373bc304cp+2l
+0x1.604549d8123b1a38p+2l, 0x1.b91890b4420138e4p+0l
+0x1.4adea9669f6014b8p+2l, 0x1.3ad3ae375896f392p+3l
+0x1.e5193f783e151f96p+2l, 0x1.1248a893ecbb4612p+2l
+0x1.2114d8cc8fcbfa5cp+3l, 0x1.1206876a62fc65bcp+2l
+0x1.61852187270b6118p-1l, 0x1.4dc6da313d0e0faep+2l
+0x1.2d05753743c4f718p+2l, 0x1.07b7f51be1662dap+2l
+0x1.676876d683426e48p+1l, 0x1.255353e14ecd90ap+1l
+0x1.9632d43bd778684ap+0l, 0x1.7bbe2266fd77f096p+2l
+0x1.cf67be7154f860c6p+2l, 0x1.5de242af98b87e08p+2l
+0x1.dfbc8b3fb8558c88p+1l, 0x1.0fab7d2a55edd32cp+2l
+0x1.7c32a747ffcbd8dcp+2l, 0x1.a34497a6626887cap+2l
+0x1.2e9e00bf63ef8388p+2l, 0x1.064c04d9bdb21cd4p+3l
+0x1.23ba4849626eb1c8p+3l, 0x1.d64bc2a501161b9cp-1l
+0x1.a8c81a7d24fbc51p-3l, 0x1.3c2dd4ab13fe32d4p+3l
+0x1.fbf06c8dc57e47cp+2l, 0x1.15bc28f3b215aa24p+3l
+0x1.608415df1e50a142p+2l, 0x1.0543f2e35267ec8p+1l
+0x1.772b18cb01d56672p+1l, 0x1.2d6be092ac1ce7eap+2l
+0x1.79bb52d5184de77p+2l, 0x1.3c4f23fff1962dcap+3l
+0x1.ee36451b9b3b196p+2l, 0x1.dc0666b99ebe52d4p+2l
+0x1.e376c3e0890c4b42p+2l, 0x1.c9508faabeb7f93p-1l
+0x1.df2fb7adcb2a5bbp+2l, 0x1.5d675df80e3ed5f8p+2l
+0x1.3d1a9badf00d5872p+3l, 0x1.ab7fe2737a6e17bp+1l
+0x1.bdade69e7f6b5e38p-2l, 0x1.60c6de51d0be6674p+2l
+0x1.bac52bf0ec376bf4p+1l, 0x1.dd7165964681fc44p+1l
+0x1.901a8b616ae7c9fap+2l, 0x1.1652aae13443bep+3l
+0x1.0f6fc2911032254cp+0l, 0x1.08a2eee32745892ep+2l
+0x1.27d3c126b7bf2d9ap+0l, 0x1.be9f9a840b84b3fcp+2l
+0x1.d32f678cb5d6763p+2l, 0x1.ec67495db4a666eep+2l
+0x1.70b3aa5eb366769p+1l, 0x1.c8ec707f198c70acp+0l
+0x1.e5a26c6b0a4d7b96p+2l, 0x1.1186e3e2f549c582p+0l
+0x1.1b235c3b12e07bc8p+3l, 0x1.a7f6b92cb1d4d00ap+2l
+0x1.0599c2613405f48cp+1l, 0x1.ceac5f8a784de024p+1l
+0x1.4b1b8c14058a23a4p+1l, 0x1.adfd0a6636eb09bep+2l
+0x1.c20aaf637ff9a9a6p+0l, 0x1.fd0aaf980a6aa8c4p+2l
+0x1.0c28af90ee4a1764p+3l, 0x1.b698e54f65b19004p+1l
+0x1.1b962b829c17cb3cp+2l, 0x1.6b1c89ce16b64d2ap+2l
+0x1.106272c29383c664p+2l, 0x1.76946ddcee994f1ap+2l
+0x1.005cd1922d076336p+2l, 0x1.43299ccdb8137ad8p+1l
+0x1.1413bfe2a0884ed4p+3l, 0x1.253420cb2828896ap+3l
+0x1.d68b3ad44ce5b2b2p+0l, 0x1.e1cc9e9ac3dd86d8p+2l
+0x1.a3af5e689271fccap+0l, 0x1.9d817c9f76443318p+1l
+0x1.d9a0d47dbd76719cp+1l, 0x1.894e9f9be94fcd4p+1l
+0x1.d808731c8c66c304p+2l, 0x1.122f7aa6747b8d36p+2l
+0x1.9d81643e48c3a0d4p+2l, 0x1.3669388fecfeaec2p+3l
+0x1.bd5235d3ff06558ap+1l, 0x1.34643587ccd34962p+3l
+0x1.6e7b162c1e9e7f96p+1l, 0x1.4cae06bb8f26f6e2p+2l
+0x1.dbbc539c268a0a36p+2l, 0x1.3a02d79e4e1dd426p+3l
+0x1.15baf0deadcd23fap+3l, 0x1.83c728738ecda35p+2l
+0x1.bfb8ca624a61e2e8p-1l, 0x1.da1d8a2a401d2ae8p-1l
+0x1.fd06c5226e90550ap+0l, 0x1.3b4f644541142c58p-2l
+0x1.151b8fc3791f79fap+1l, 0x1.dd062352fa60a6ecp+2l
+0x1.910c889cd79900cp-3l, 0x1.7d829d899c3a9178p+2l
+0x1.6add181aa978a184p+1l, 0x1.009500fd1da29426p+2l
+0x1.d96510b76a7fff64p+1l, 0x1.4b9831f38ed4d6f8p+1l
+0x1.15a472ff05b9a108p+2l, 0x1.6cb595eca3ecfddp+2l
+0x1.4e8350d502e9b4d6p+2l, 0x1.2fa8fa71b4e3fb64p+3l
+0x1.53ff8e28cf8abdfap+1l, 0x1.bc7418a495664efap+2l
+0x1.f1b7bfdd5dc0d9cp+1l, 0x1.4eb1697169094d88p+2l
+0x1.059d3d16c5b55424p+2l, 0x1.8f4493270ac638a8p+1l
+0x1.2f7ca618d0474d14p+3l, 0x1.313423ac745093eep+1l
+0x1.ea1449440edd8ddap+0l, 0x1.afcc3498edbca94cp+1l
+0x1.60db4af108ac87dp+1l, 0x1.dd9894f679513c5p-3l
+0x1.37b3628f810985eep+0l, 0x1.99451d1a275a75c4p+1l
+0x1.57af0a180b895b5ep+1l, 0x1.d74301925feb0e42p+2l
+0x1.c138c6eae3e8516cp+1l, 0x1.d3af026ca0c52e08p+2l
+0x1.1e135ab454ac40e4p+3l, 0x1.a9f70b3f22bbac6p-1l
+0x1.e27e0e2195129ac8p+2l, 0x1.8ef63f2cf10af964p+2l
+0x1.6fd15974877b8e8cp+2l, 0x1.90b43ce962be65bcp+0l
+0x1.16580d1d9e04455p+2l, 0x1.0176e89b3935495ep+3l
+0x1.515d1297af9c40c4p+1l, 0x1.f62f9df4fd27cef2p+1l
+0x1.4ca4c94be72d277p+2l, 0x1.06125c37e89b288ap+2l
+0x1.bc4ed6a388bb27f4p+2l, 0x1.05b4df6ff405407p-1l
+0x1.34a2ced1ca988924p+2l, 0x1.0a2a7fdbf21b22bcp+1l
+0x1.1841e91c08cd47cap+3l, 0x1.485ba828ac9f64d4p+1l
+0x1.e5e9fbac5c40d352p+2l, 0x1.8841638fdd92ad84p+2l
+0x1.057c2ed965463044p+2l, 0x1.c7379eec92223bf2p+2l
+0x1.b9d422602e1501ep-3l, 0x1.4eb5a64aef75d7f4p-1l
+0x1.36d84e7060c7f66ap+3l, 0x1.6ad2164b04dfabb2p+2l
+0x1.3db6155f005e9bf6p+0l, 0x1.587cbab01d7dd774p-1l
+0x1.378e7bbdb578a6aap+2l, 0x1.5ab7b8ec64aad77cp+2l
+0x1.c8c39129cc538664p+2l, 0x1.484b0415fc94e262p+2l
+0x1.b41f0ec88b7fa558p+2l, 0x1.1bd073da7f4d4374p+3l
+0x1.429345e28ca2e03ep+2l, 0x1.8b5a9e1296e5b294p+2l
+0x1.1b8c346ec93ff1b4p+2l, 0x1.16700deb143ce332p+3l
+0x1.11f8d63ecbae766p+2l, 0x1.66f28a9853f6b49ep+2l
+0x1.39041d85b8bc0504p+0l, 0x1.ceae9f0fd4d0761cp+1l
+0x1.d6776ad1528d858cp+2l, 0x1.4fa1098a454b16dcp+2l
+0x1.417d6836d266d36p+2l, 0x1.b09998fd7bbff7b8p+1l
+0x1.d5582be35127187ap+2l, 0x1.26a9e1c4fabef5aep+3l
+0x1.89ee5804161d11eap+1l, 0x1.82a3ed79746a7ac2p+1l
+0x1.ed59663d77b028p-9l, 0x1.be4dd26c7bdb2dp+2l
+0x1.9e1a9a92b62c8e34p+2l, 0x1.19cd6675b31dbbf4p+2l
+0x1.7b9d739f95c7916ep+2l, 0x1.a652f77c3f7eff42p+0l
+0x1.cf3e2ad8af7fa63cp+2l, 0x1.75173b337cc64262p+2l
+0x1.d0cf2c3ffa4716ep-3l, 0x1.75f4fe526078f4cp+2l
+0x1.087b2aefae7c5576p+3l, 0x1.788fd3ebdd8c5ce8p+0l
+0x1.271b2baa1b39b1fep+2l, 0x1.51020d8a29340ecep+2l
+0x1.94c5d9d28765dd1ep+1l, 0x1.08fd6ad269ed7836p+3l
+0x1.18f31aa291f7a9ecp+3l, 0x1.734ce31977bc2a9p+2l
+0x1.70aa7b19e156027p+2l, 0x1.0cae38f2b63a2edp+3l
+0x1.43a98e4cb47d4d68p+2l, 0x1.0a12d73f2adfa45ep+0l
+0x1.060e78a697f528c4p+3l, 0x1.ea566c4c51c499bp+2l
+0x1.52f4c6c571d5004cp+1l, 0x1.f331568e63647ea4p+0l
+0x1.7d17bb66e7cb07fp+1l, 0x1.c300a9c74967584p+2l
+0x1.c85caed4e494b85cp+2l, 0x1.1a56f6d9b035a00ep+3l
+0x1.25e78eb88a8a3772p+1l, 0x1.7ab616fa78cb2d0ap+1l
+0x1.82dacb3236ea7918p+1l, 0x1.2ed9fb98f6348a5cp+2l
+0x1.16bce505d755c1a4p+2l, 0x1.9831250d52a1754p+2l
+0x1.deefb689d7dd38fcp+1l, 0x1.fbda1167a7daa98cp+2l
+0x1.0a4b54a5fe1e2938p+3l, 0x1.1dfa9ca1f8fa495ap+3l
+0x1.4aeffeee3da6c912p+2l, 0x1.23912ec9fc66b1cep+3l
+0x1.e77409137d5482acp+2l, 0x1.09ee537f8b4333c8p+2l
+0x1.e6b122fd4692b4ep-2l, 0x1.48a54a3c325d22p+1l
+0x1.e5ef071349b506a2p+2l, 0x1.089298d14d52304p+2l
+0x1.134f3e4892f75564p+3l, 0x1.1bfa53fbe97dd3dcp+3l
+0x1.253584fc5897a48ap+3l, 0x1.3ea28939db022af8p-2l
+0x1.546e66b55243785ap+2l, 0x1.192d98bcbc8b2c3p-2l
+0x1.f2ecc7130bb0e4b8p+2l, 0x1.a2430d38574b37ccp+2l
+0x1.c098c435b68b0e62p+2l, 0x1.a78986aade13e1aap+2l
+0x1.070ca85e54c1ee1ep+3l, 0x1.c96746b7d516ebcp+0l
+0x1.a769bc81d4355c8p-2l, 0x1.4cb78f15628f77c4p+2l
+0x1.9468d7a699be1eccp+2l, 0x1.99d79d2ec5fedc66p+0l
+0x1.89b1536ceee017ep+1l, 0x1.39e2e15e22550c1cp+3l
+0x1.3a0f7aea961a6bcp+1l, 0x1.be30d3916014be7cp+0l
+0x1.b039f8704724739p+2l, 0x1.03a80ce7e58aa316p+3l
+0x1.d01d8135e28d14aap+2l, 0x1.a9a1448a24ec79e8p+2l
+0x1.21ab26ca8261fdfcp+2l, 0x1.9193c2506407eb98p+2l
+0x1.c15e94f5b2950f94p+1l, 0x1.8b8e0a58d3aedadep+0l
+0x1.017b0105e97069f4p+2l, 0x1.825953b45a32e5dp+1l
+0x1.0d565fd7cdc5acdap+2l, 0x1.54e65fa71bdd99f2p+1l
+0x1.0ac6cb570c6f45acp+3l, 0x1.57f9bf8713765d8ep+2l
+0x1.fed908b2cdb7ece4p+2l, 0x1.8c50971acd66912p+2l
+0x1.c6774069eccdc5p-4l, 0x1.faa8b8017394388ep+2l
+0x1.93222eff81849962p+0l, 0x1.28bb622c2b535932p+0l
+0x1.54a453bc46fc05fcp+2l, 0x1.0f875268c6f2cfap+1l
+0x1.9e1493f4e4ce4c68p+2l, 0x1.3cd09dbaa0263ca2p+2l
+0x1.0e73196044217c9ep+3l, 0x1.d90589574c248bc8p+2l
+0x1.1e54d6809281a92ep+3l, 0x1.77830c8661d42edap+0l
+0x1.23baf5e72204c6bp+3l, 0x1.381d30dfc0d9a4p+1l
+0x1.2a9d28669d3f3e24p+2l, 0x1.63f1e05c1ab35e28p+2l
+0x1.3e4e51cdd1189556p+0l, 0x1.4e579e7a63f4c6fcp+1l
+0x1.25b06d26d43bdebp+2l, 0x1.b4ab2a796a3bdff2p+0l
+0x1.0e308bee50b7ce6p+0l, 0x1.3c6b0393570e726p+3l
+0x1.951b17d12e029228p+2l, 0x1.9fbb15b6f3c00148p+2l
+0x1.f16303669c102464p+2l, 0x1.2e6bd944686261dcp+3l
+0x1.8d1061787a07f214p+1l, 0x1.c151754c68edfa56p+2l
+0x1.26ec553688fd5d9p+0l, 0x1.5035c3654346d5b8p+2l
+0x1.48520f92f340b2d8p+2l, 0x1.3c9d612c040e7f6ap+3l
+0x1.23b93213911e10bap+2l, 0x1.3bd6636bcfe1351ep+1l
+0x1.36a569d41e46bcbp+3l, 0x1.168e0d5a080063eep+3l
+0x1.1565ea27c446c77cp+2l, 0x1.0109029d8b5de18p-6l
+0x1.8636a76c69a44882p+2l, 0x1.3e116b6762af87ecp+3l
+0x1.185d967a9f60de32p+3l, 0x1.3eb165f5992f73eap+0l
+0x1.382f101a0db03a2p+2l, 0x1.c7fa64ef9f824062p+2l
+0x1.e45d601c99cdd2bap+1l, 0x1.150fdb077017f066p+2l
+0x1.e5960ca2afb7cc2p+2l, 0x1.a7284580e19965d8p+1l
+0x1.fe2882092fc76d56p+1l, 0x1.da88b20f2264fec2p+0l
+0x1.50e4df62cf448d8p+2l, 0x1.052dcf174bc8a136p+3l
+0x1.87e1781a54278d72p+0l, 0x1.35db0afd77937e5ep+3l
+0x1.02e0188219619c8cp+3l, 0x1.d129dcb35a9b8bc2p+2l
+0x1.abc58895ee356428p+0l, 0x1.dea17adc78d3e57ap+2l
+0x1.9a8b6596216cc1e2p+2l, 0x1.663e4370a3a611ccp+1l
diff --git a/bits/libm-simd-decl-stubs.h b/bits/libm-simd-decl-stubs.h
index 529df43..25a5f48 100644
--- a/bits/libm-simd-decl-stubs.h
+++ b/bits/libm-simd-decl-stubs.h
@@ -373,4 +373,48 @@
#define __DECL_SIMD_tanpif32x
#define __DECL_SIMD_tanpif64x
#define __DECL_SIMD_tanpif128x
+
+#define __DECL_SIMD_acospi
+#define __DECL_SIMD_acospif
+#define __DECL_SIMD_acospil
+#define __DECL_SIMD_acospif16
+#define __DECL_SIMD_acospif32
+#define __DECL_SIMD_acospif64
+#define __DECL_SIMD_acospif128
+#define __DECL_SIMD_acospif32x
+#define __DECL_SIMD_acospif64x
+#define __DECL_SIMD_acospif128x
+
+#define __DECL_SIMD_asinpi
+#define __DECL_SIMD_asinpif
+#define __DECL_SIMD_asinpil
+#define __DECL_SIMD_asinpif16
+#define __DECL_SIMD_asinpif32
+#define __DECL_SIMD_asinpif64
+#define __DECL_SIMD_asinpif128
+#define __DECL_SIMD_asinpif32x
+#define __DECL_SIMD_asinpif64x
+#define __DECL_SIMD_asinpif128x
+
+#define __DECL_SIMD_atanpi
+#define __DECL_SIMD_atanpif
+#define __DECL_SIMD_atanpil
+#define __DECL_SIMD_atanpif16
+#define __DECL_SIMD_atanpif32
+#define __DECL_SIMD_atanpif64
+#define __DECL_SIMD_atanpif128
+#define __DECL_SIMD_atanpif32x
+#define __DECL_SIMD_atanpif64x
+#define __DECL_SIMD_atanpif128x
+
+#define __DECL_SIMD_atan2pi
+#define __DECL_SIMD_atan2pif
+#define __DECL_SIMD_atan2pil
+#define __DECL_SIMD_atan2pif16
+#define __DECL_SIMD_atan2pif32
+#define __DECL_SIMD_atan2pif64
+#define __DECL_SIMD_atan2pif128
+#define __DECL_SIMD_atan2pif32x
+#define __DECL_SIMD_atan2pif64x
+#define __DECL_SIMD_atan2pif128x
#endif
diff --git a/bits/termios-baud.h b/bits/termios-baud.h
new file mode 100644
index 0000000..697ad80
--- /dev/null
+++ b/bits/termios-baud.h
@@ -0,0 +1,75 @@
+/* termios baud rate selection definitions. Universal version for sane speed_t.
+ Copyright (C) 2019-2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library. If not, see
+ <https://www.gnu.org/licenses/>. */
+
+#ifndef _TERMIOS_H
+# error "Never include <bits/termios-baud.h> directly; use <termios.h> instead."
+#endif
+
+/* POSIX required baud rates */
+#define B0 0U /* Hang up or ispeed == ospeed */
+#define B50 50U
+#define B75 75U
+#define B110 110U
+#define B134 134U /* Really 134.5 baud by POSIX spec */
+#define B150 150U
+#define B200 200U
+#define B300 300U
+#define B600 600U
+#define B1200 1200U
+#define B1800 1800U
+#define B2400 2400U
+#define B4800 4800U
+#define B9600 9600U
+#define B19200 19200U
+#define B38400 38400U
+#ifdef __USE_MISC
+# define EXTA B19200
+# define EXTB B38400
+#endif
+
+/* Other baud rates, "nonstandard" but known to be used */
+#define B7200 7200U
+#define B14400 14400U
+#define B28800 28800U
+#define B33600 33600U
+#define B57600 57600U
+#define B76800 76800U
+#define B115200 115200U
+#define B153600 153600U
+#define B230400 230400U
+#define B307200 307200U
+#define B460800 460800U
+#define B500000 500000U
+#define B576000 576000U
+#define B614400 614400U
+#define B921600 921600U
+#define B1000000 1000000U
+#define B1152000 1152000U
+#define B1500000 1500000U
+#define B2000000 2000000U
+#define B2500000 2500000U
+#define B3000000 3000000U
+#define B3500000 3500000U
+#define B4000000 4000000U
+#define B5000000 5000000U
+#define B10000000 10000000U
+
+#ifdef __USE_GNU
+#define SPEED_MAX 4294967295U /* maximum valid speed_t value */
+#endif
+#define __MAX_BAUD 4294967295U /* legacy alias for SPEED_MAX */
diff --git a/bits/termios.h b/bits/termios.h
index 9e3ed8e..798012c 100644
--- a/bits/termios.h
+++ b/bits/termios.h
@@ -20,6 +20,8 @@
# error "Never include <bits/termios.h> directly; use <termios.h> instead."
#endif
+#include <bits/termios-baud.h>
+
/* These macros are also defined in some <bits/ioctls.h> files (with
numerically identical values), but this serves to shut up cpp's
complaining. */
@@ -105,7 +107,7 @@ typedef unsigned int tcflag_t;
typedef unsigned char cc_t;
/* Type of baud rate specifiers. */
-typedef int speed_t;
+typedef unsigned int speed_t;
/* Terminal control structure. */
struct termios
@@ -284,46 +286,16 @@ struct termios
cc_t c_cc[NCCS];
/* Input and output baud rates. */
- speed_t __ispeed, __ospeed;
-#define B0 0 /* Hang up. */
-#define B50 50 /* 50 baud. */
-#define B75 75 /* 75 baud. */
-#define B110 110 /* 110 baud. */
-#define B134 134 /* 134.5 baud. */
-#define B150 150 /* 150 baud. */
-#define B200 200 /* 200 baud. */
-#define B300 300 /* 300 baud. */
-#define B600 600 /* 600 baud. */
-#define B1200 1200 /* 1200 baud. */
-#define B1800 1800 /* 1800 baud. */
-#define B2400 2400 /* 2400 baud. */
-#define B4800 4800 /* 4800 baud. */
-#define B9600 9600 /* 9600 baud. */
-#define B7200 7200 /* 7200 baud. */
-#define B14400 14400 /* 14400 baud. */
-#define B19200 19200 /* 19200 baud. */
-#define B28800 28800 /* 28800 baud. */
-#define B38400 38400 /* 38400 baud. */
-#ifdef __USE_MISC
-# define EXTA 19200
-# define EXTB 38400
-#endif
-#define B57600 57600
-#define B76800 76800
-#define B115200 115200
-#define B230400 230400
-#define B460800 460800
-#define B500000 500000
-#define B576000 576000
-#define B921600 921600
-#define B1000000 1000000
-#define B1152000 1152000
-#define B1500000 1500000
-#define B2000000 2000000
-#define B2500000 2500000
-#define B3000000 3000000
-#define B3500000 3500000
-#define B4000000 4000000
+ __extension__ union {
+ speed_t __ispeed;
+ speed_t c_ispeed;
+ };
+#define _HAVE_STRUCT_TERMIOS_C_ISPEED 1
+ __extension__ union {
+ speed_t __ospeed;
+ speed_t c_ospeed;
+ };
+#define _HAVE_STRUCT_TERMIOS_C_OSPEED 1
};
#define _IOT_termios /* Hurd ioctl type field. */ \
diff --git a/config.h.in b/config.h.in
index d3575c9..8b4077f 100644
--- a/config.h.in
+++ b/config.h.in
@@ -113,17 +113,6 @@
/* AArch64 big endian ABI */
#undef HAVE_AARCH64_BE
-/* AArch64 BTI support enabled. */
-#define HAVE_AARCH64_BTI 0
-
-/* AArch64 PAC-RET code generation is enabled. */
-#define HAVE_AARCH64_PAC_RET 0
-
-/* Assembler support ARMv8.2-A SVE.
- This macro becomes obsolete when glibc increased the minimum
- required version of GNU 'binutils' to 2.28 or later. */
-#define HAVE_AARCH64_SVE_ASM 0
-
/* C-SKY ABI version. */
#undef CSKYABI
@@ -298,6 +287,9 @@
/* Define if static PIE is enabled. */
#define ENABLE_STATIC_PIE 0
+/* Define if SFrame v2 is enabled. */
+#define ENABLE_SFRAME 0
+
/* The default value of x86 CET control. */
#define DEFAULT_DL_X86_CET_CONTROL cet_elf_property
diff --git a/config.make.in b/config.make.in
index 59897ea..fca75ab 100644
--- a/config.make.in
+++ b/config.make.in
@@ -113,6 +113,7 @@ OBJDUMP = @OBJDUMP@
OBJCOPY = @OBJCOPY@
GPROF = @GPROF@
READELF = @READELF@
+STRIP = @STRIP@
# Installation tools.
INSTALL = @INSTALL@
diff --git a/configure b/configure
index 7cda641..180e49d 100755
--- a/configure
+++ b/configure
@@ -649,6 +649,8 @@ have_selinux
have_libcap
have_libaudit
LIBGD
+libc_cv_test_cc_wmissing_parameter_name
+libc_cv_test_cc_wfree_labels
libc_cv_test_cc_wimplicit_fallthrough
libc_cv_cc_loop_to_function
libc_cv_test_cc_signaling_nans
@@ -690,6 +692,7 @@ MAKEINFO
MSGFMT
MAKE
LD
+STRIP
NM
OBJDUMP
READELF
@@ -820,6 +823,7 @@ enable_mathvec
enable_cet
enable_scv
enable_fortify_source
+enable_sframe
with_cpu
'
ac_precious_vars='build_alias
@@ -1505,6 +1509,7 @@ Optional Features:
Use -D_FORTIFY_SOURCE=[1|2|3] to control code
hardening, defaults to highest possible value
supported by the build compiler.
+ --enable-sframe Enable building with SFrame support [default=no]
Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
@@ -4883,6 +4888,16 @@ case "$enable_fortify_source" in
*) as_fn_error $? "Not a valid argument for --enable-fortify-source: \"$enable_fortify_source\"" "$LINENO" 5;;
esac
+# Check whether --enable-sframe was given.
+if test ${enable_sframe+y}
+then :
+ enableval=$enable_sframe; use_sframe=$enableval
+else case e in #(
+ e) use_sframe=no ;;
+esac
+fi
+
+
# We keep the original values in `$config_*' and never modify them, so we
# can write them unchanged into config.make. Everything else uses
# $machine, $vendor, and $os, and changes them whenever convenient.
@@ -4929,6 +4944,9 @@ with_fp_cond=1
# A preconfigure script may define another name to TLS descriptor variant
mtls_descriptor=gnu2
+# A preconfigure script may define another name to traditional TLS variant
+mtls_traditional=gnu
+
if frags=`ls -d $srcdir/sysdeps/*/preconfigure 2> /dev/null`
then
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for sysdeps preconfigure fragments" >&5
@@ -5122,9 +5140,13 @@ if test -z "$NM"; then
NM=`$CC -print-prog-name=nm`
fi
+if test -z "$STRIP"; then
+ STRIP=`$CC -print-prog-name=strip`
+fi
+
-# Accept binutils 2.25 or newer.
+# Accept binutils 2.39 or newer.
libc_cv_with_lld=no
case $($LD --version) in
"GNU gold"*)
@@ -5330,7 +5352,7 @@ printf %s "checking version of $LD... " >&6; }
ac_prog_version=`$LD --version 2>&1 | sed -n 's/^.*GNU ld.* \([0-9][0-9]*\.[0-9.]*\).*$/\1/p'`
case $ac_prog_version in
'') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
- 2.1[0-9][0-9]*|2.2[5-9]*|2.[3-9][0-9]*|[3-9].*|[1-9][0-9]*)
+ 2.[1-9][0-9][0-9]*|2.39*|2.[4-9][0-9]*|[3-9].*|[1-9][0-9]*)
ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
*) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
@@ -7488,6 +7510,41 @@ rm -f conftest*
config_vars="$config_vars
have-test-mtls-descriptor = $libc_cv_test_mtls_descriptor"
+
+cat > conftest.c <<EOF
+$conftest_code
+EOF
+
+saved_CC="$CC"
+CC="$TEST_CC"
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for traditional tls support in testing" >&5
+printf %s "checking for traditional tls support in testing... " >&6; }
+if test ${libc_cv_test_mtls_traditional+y}
+then :
+ printf %s "(cached) " >&6
+else case e in #(
+ e) if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -fPIC -mtls-dialect=$mtls_traditional -nostdlib -nostartfiles -shared conftest.c -o conftest 1>&5'
+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }
+ then
+ libc_cv_test_mtls_traditional=$mtls_traditional
+ else
+ libc_cv_test_mtls_traditional=no
+ fi ;;
+esac
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_test_mtls_traditional" >&5
+printf "%s\n" "$libc_cv_test_mtls_traditional" >&6; }
+
+CC="$saved_CC"
+
+rm -f conftest*
+config_vars="$config_vars
+have-test-mtls-traditional = $libc_cv_test_mtls_traditional"
+
conftest_code="
void __foo (void)
{
@@ -7968,6 +8025,126 @@ config_vars="$config_vars
cc-option-wimplicit-fallthrough = $libc_cv_cc_wimplicit_fallthrough"
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -Wfree-labels" >&5
+printf %s "checking for -Wfree-labels... " >&6; }
+if test ${libc_cv_cc_wfree_labels+y}
+then :
+ printf %s "(cached) " >&6
+else case e in #(
+ e) if { ac_try='${CC-cc} -Werror -Wfree-labels -xc /dev/null -S -o /dev/null'
+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }
+then :
+ libc_cv_cc_wfree_labels=-Wfree-labels
+else case e in #(
+ e) libc_cv_cc_wfree_labels= ;;
+esac
+fi ;;
+esac
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_cc_wfree_labels" >&5
+printf "%s\n" "$libc_cv_cc_wfree_labels" >&6; }
+if test "$TEST_CC" = "$CC"; then
+ libc_cv_test_cc_wfree_labels=$libc_cv_cc_wfree_labels
+else
+
+saved_CC="$CC"
+CC="$TEST_CC"
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -Wfree-labels in testing" >&5
+printf %s "checking for -Wfree-labels in testing... " >&6; }
+if test ${libc_cv_test_cc_wfree_labels+y}
+then :
+ printf %s "(cached) " >&6
+else case e in #(
+ e) if { ac_try='${CC-cc} -Werror -Wfree-labels -xc /dev/null -S -o /dev/null'
+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }
+then :
+ libc_cv_test_cc_wfree_labels=-Wfree-labels
+else case e in #(
+ e) libc_cv_test_cc_wfree_labels= ;;
+esac
+fi ;;
+esac
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_test_cc_wfree_labels" >&5
+printf "%s\n" "$libc_cv_test_cc_wfree_labels" >&6; }
+
+CC="$saved_CC"
+
+fi
+
+config_vars="$config_vars
+cc-option-wfree-labels = $libc_cv_cc_wfree_labels"
+
+
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -Wmissing-parameter-name" >&5
+printf %s "checking for -Wmissing-parameter-name... " >&6; }
+if test ${libc_cv_cc_wmissing_parameter_name+y}
+then :
+ printf %s "(cached) " >&6
+else case e in #(
+ e) if { ac_try='${CC-cc} -Werror -Wmissing-parameter-name -xc /dev/null -S -o /dev/null'
+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }
+then :
+ libc_cv_cc_wmissing_parameter_name=-Wmissing-parameter-name
+else case e in #(
+ e) libc_cv_cc_wmissing_parameter_name= ;;
+esac
+fi ;;
+esac
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_cc_wmissing_parameter_name" >&5
+printf "%s\n" "$libc_cv_cc_wmissing_parameter_name" >&6; }
+if test "$TEST_CC" = "$CC"; then
+ libc_cv_test_cc_wmissing_parameter_name=$libc_cv_cc_wmissing_parameter_name
+else
+
+saved_CC="$CC"
+CC="$TEST_CC"
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -Wmissing-parameter-name in testing" >&5
+printf %s "checking for -Wmissing-parameter-name in testing... " >&6; }
+if test ${libc_cv_test_cc_wmissing_parameter_name+y}
+then :
+ printf %s "(cached) " >&6
+else case e in #(
+ e) if { ac_try='${CC-cc} -Werror -Wmissing-parameter-name -xc /dev/null -S -o /dev/null'
+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }
+then :
+ libc_cv_test_cc_wmissing_parameter_name=-Wmissing-parameter-name
+else case e in #(
+ e) libc_cv_test_cc_wmissing_parameter_name= ;;
+esac
+fi ;;
+esac
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_test_cc_wmissing_parameter_name" >&5
+printf "%s\n" "$libc_cv_test_cc_wmissing_parameter_name" >&6; }
+
+CC="$saved_CC"
+
+fi
+
+config_vars="$config_vars
+cc-option-wmissing-parameter-name = $libc_cv_cc_wmissing_parameter_name"
+
+
conftest_code="
void bar (void (*callback) (void));
int foo (void)
@@ -9181,6 +9358,134 @@ have-libgcc_s = $libc_cv_have_libgcc_s"
+enable_gsframe=no
+if test $use_sframe = yes; then
+ # SFrame requires to be explicit enabled by the architecture
+ if test -z $libc_cv_support_sframe; then
+ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;}
+as_fn_error $? "the architecture doesn't support SFrame
+See 'config.log' for more details" "$LINENO" 5; }
+ fi
+
+ # SFrame requires binutils 2.45 or higher.
+ libc_cv_sframe_readelf_version=yes
+ for ac_prog in $READELF
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_READELF+y}
+then :
+ printf %s "(cached) " >&6
+else case e in #(
+ e) if test -n "$READELF"; then
+ ac_cv_prog_READELF="$READELF" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+ ac_cv_prog_READELF="$ac_prog"
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi ;;
+esac
+fi
+READELF=$ac_cv_prog_READELF
+if test -n "$READELF"; then
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $READELF" >&5
+printf "%s\n" "$READELF" >&6; }
+else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
+
+
+ test -n "$READELF" && break
+done
+
+if test -z "$READELF"; then
+ ac_verc_fail=yes
+else
+ # Found it, now check the version.
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking version of $READELF" >&5
+printf %s "checking version of $READELF... " >&6; }
+ ac_prog_version=`$READELF --version 2>&1 | sed -n 's/^.*GNU readelf.* \([0-9][0-9]*\.[0-9.]*\).*$/\1/p'`
+ case $ac_prog_version in
+ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
+ 2.4[5-9]*|2.[5-9][0-9]*|2.[1-9][0-9][0-9]*|[3-9]*|[1-9][0-9]*)
+ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
+ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
+
+ esac
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_prog_version" >&5
+printf "%s\n" "$ac_prog_version" >&6; }
+fi
+if test $ac_verc_fail = yes; then
+ libc_cv_sframe_readelf_version=no
+fi
+
+ if test $libc_cv_sframe_readelf_version = no; then
+ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;}
+as_fn_error $? "binutils too old to enable SFrame
+See 'config.log' for more details" "$LINENO" 5; }
+ fi
+
+ # Check if the current toolchain supports SFrame
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for SFrame support" >&5
+printf %s "checking for SFrame support... " >&6; }
+if test ${libc_cv_default_sframe+y}
+then :
+ printf %s "(cached) " >&6
+else case e in #(
+ e) cat > conftest.c <<EOF
+int test_function(void)
+{
+ return 42;
+}
+EOF
+ libc_cv_default_sframe=no
+ if ${CC} -c conftest.c -o conftest.o -Wa,--gsframe >/dev/null 2>&1 && \
+ # Check if .sframe section is present and if version > 1
+ $READELF --sframe conftest.o | grep "SFRAME_VER" | grep -qv "VERSION_1"; then
+ libc_cv_default_sframe=yes
+ fi
+ rm -f conftest.c conftest.o
+ ;;
+esac
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_default_sframe" >&5
+printf "%s\n" "$libc_cv_default_sframe" >&6; }
+
+ if test $libc_cv_default_sframe = no; then
+ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;}
+as_fn_error $? "toolchain doesn't support SFrame v2 or higher
+See 'config.log' for more details" "$LINENO" 5; }
+ fi
+
+ enable_gsframe=yes
+ printf "%s\n" "#define ENABLE_SFRAME 1" >>confdefs.h
+
+fi
+config_vars="$config_vars
+enable-gsframe = $enable_gsframe"
+
# Set the `multidir' variable by grabbing the variable from the compiler.
# We do it once and save the result in a generated makefile.
libc_cv_multidir=`${CC-cc} $CFLAGS $CPPFLAGS -print-multi-directory`
diff --git a/configure.ac b/configure.ac
index 0b0d887..4480ae8 100644
--- a/configure.ac
+++ b/configure.ac
@@ -440,6 +440,12 @@ case "$enable_fortify_source" in
*) AC_MSG_ERROR([Not a valid argument for --enable-fortify-source: "$enable_fortify_source"]);;
esac
+AC_ARG_ENABLE([sframe],
+ [AS_HELP_STRING([--enable-sframe],
+ [Enable building with SFrame support @<:@default=no@:>@])],
+ [use_sframe=$enableval],
+ [use_sframe=no])
+
# We keep the original values in `$config_*' and never modify them, so we
# can write them unchanged into config.make. Everything else uses
# $machine, $vendor, and $os, and changes them whenever convenient.
@@ -483,6 +489,9 @@ with_fp_cond=1
# A preconfigure script may define another name to TLS descriptor variant
mtls_descriptor=gnu2
+# A preconfigure script may define another name to traditional TLS variant
+mtls_traditional=gnu
+
dnl Let sysdeps/*/preconfigure act here.
LIBC_PRECONFIGURE([$srcdir], [for sysdeps])
@@ -522,7 +531,7 @@ AC_PROG_LN_S
LIBC_PROG_BINUTILS
-# Accept binutils 2.25 or newer.
+# Accept binutils 2.39 or newer.
libc_cv_with_lld=no
case $($LD --version) in
"GNU gold"*)
@@ -543,7 +552,7 @@ case $($LD --version) in
*)
AC_CHECK_PROG_VER(LD, $LD, --version,
[GNU ld.* \([0-9][0-9]*\.[0-9.]*\)],
- [2.1[0-9][0-9]*|2.2[5-9]*|2.[3-9][0-9]*|[3-9].*|[1-9][0-9]*],
+ [2.[1-9][0-9][0-9]*|2.39*|2.[4-9][0-9]*|[3-9].*|[1-9][0-9]*],
LD=: critic_missing="$critic_missing GNU ld")
;;
esac
@@ -1401,6 +1410,16 @@ LIBC_TRY_TEST_CC_COMMAND([for tls descriptor support],
LIBC_CONFIG_VAR([have-test-mtls-descriptor],
[$libc_cv_test_mtls_descriptor])
+dnl Check if TEST_CC support traditional tls.
+LIBC_TRY_TEST_CC_COMMAND([for traditional tls support],
+ [$conftest_code],
+ [-fPIC -mtls-dialect=$mtls_traditional -nostdlib -nostartfiles -shared],
+ libc_cv_test_mtls_traditional,
+ [libc_cv_test_mtls_traditional=$mtls_traditional],
+ [libc_cv_test_mtls_traditional=no])
+LIBC_CONFIG_VAR([have-test-mtls-traditional],
+ [$libc_cv_test_mtls_traditional])
+
dnl clang emits an warning for a double alias redirection, to warn the
dnl original symbol is sed even when weak definition overrides it.
dnl It is a usual pattern for weak_alias, where multiple alias point to
@@ -1575,6 +1594,29 @@ LIBC_CONFIG_VAR([cc-option-wimplicit-fallthrough],
[$libc_cv_cc_wimplicit_fallthrough])
AC_SUBST(libc_cv_test_cc_wimplicit_fallthrough)
+LIBC_TRY_CC_AND_TEST_CC_OPTION([for -Wfree-labels],
+ [-Werror -Wfree-labels],
+ libc_cv_cc_wfree_labels,
+ [libc_cv_cc_wfree_labels=-Wfree-labels],
+ [libc_cv_cc_wfree_labels=],
+ libc_cv_test_cc_wfree_labels,
+ [libc_cv_test_cc_wfree_labels=-Wfree-labels],
+ [libc_cv_test_cc_wfree_labels=])
+LIBC_CONFIG_VAR([cc-option-wfree-labels], [$libc_cv_cc_wfree_labels])
+AC_SUBST(libc_cv_test_cc_wfree_labels)
+
+LIBC_TRY_CC_AND_TEST_CC_OPTION([for -Wmissing-parameter-name],
+ [-Werror -Wmissing-parameter-name],
+ libc_cv_cc_wmissing_parameter_name,
+ [libc_cv_cc_wmissing_parameter_name=-Wmissing-parameter-name],
+ [libc_cv_cc_wmissing_parameter_name=],
+ libc_cv_test_cc_wmissing_parameter_name,
+ [libc_cv_test_cc_wmissing_parameter_name=-Wmissing-parameter-name],
+ [libc_cv_test_cc_wmissing_parameter_name=])
+LIBC_CONFIG_VAR([cc-option-wmissing-parameter-name],
+ [$libc_cv_cc_wmissing_parameter_name])
+AC_SUBST(libc_cv_test_cc_wmissing_parameter_name)
+
conftest_code="
void bar (void (*callback) (void));
int foo (void)
@@ -2079,6 +2121,50 @@ AC_SUBST(libc_cv_test_cc_mprefer_vector_width)
AC_SUBST(test_enable_cet)
AC_SUBST(libc_cv_test_x86_have_amx_tile)
+enable_gsframe=no
+if test $use_sframe = yes; then
+ # SFrame requires to be explicit enabled by the architecture
+ if test -z $libc_cv_support_sframe; then
+ AC_MSG_FAILURE([the architecture doesn't support SFrame])
+ fi
+
+ # SFrame requires binutils 2.45 or higher.
+ libc_cv_sframe_readelf_version=yes
+ AC_CHECK_PROG_VER(READELF, $READELF, --version,
+ [GNU readelf.* \([0-9][0-9]*\.[0-9.]*\)],
+ [2.4[5-9]*|2.[5-9][0-9]*|2.[1-9][0-9][0-9]*|[3-9]*|[1-9][0-9]*],
+ libc_cv_sframe_readelf_version=no)
+ if test $libc_cv_sframe_readelf_version = no; then
+ AC_MSG_FAILURE([binutils too old to enable SFrame])
+ fi
+
+ # Check if the current toolchain supports SFrame
+ AC_CACHE_CHECK([for SFrame support], libc_cv_default_sframe,
+ [dnl
+cat > conftest.c <<EOF
+int test_function(void)
+{
+ return 42;
+}
+EOF
+ libc_cv_default_sframe=no
+ if ${CC} -c conftest.c -o conftest.o -Wa,--gsframe >/dev/null 2>&1 && \
+ # Check if .sframe section is present and if version > 1
+ $READELF --sframe conftest.o | grep "SFRAME_VER" | grep -qv "VERSION_1"; then
+ libc_cv_default_sframe=yes
+ fi
+ rm -f conftest.c conftest.o
+ ])
+
+ if test $libc_cv_default_sframe = no; then
+ AC_MSG_FAILURE([toolchain doesn't support SFrame v2 or higher])
+ fi
+
+ enable_gsframe=yes
+ AC_DEFINE(ENABLE_SFRAME)
+fi
+LIBC_CONFIG_VAR([enable-gsframe], [$enable_gsframe])
+
# Set the `multidir' variable by grabbing the variable from the compiler.
# We do it once and save the result in a generated makefile.
libc_cv_multidir=`${CC-cc} $CFLAGS $CPPFLAGS -print-multi-directory`
diff --git a/conform/data/aio.h-data b/conform/data/aio.h-data
index adb291b..7801faa 100644
--- a/conform/data/aio.h-data
+++ b/conform/data/aio.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined XPG42
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined XPG42
type {struct aiocb}
// Test elements of the AIO control struct.
diff --git a/conform/data/arpa/inet.h-data b/conform/data/arpa/inet.h-data
index 040b821..c514690 100644
--- a/conform/data/arpa/inet.h-data
+++ b/conform/data/arpa/inet.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4
// in_port_t should have exactly 16 bits
type in_port_t
// in_addr_t should have exactly 32 bits
diff --git a/conform/data/assert.h-data b/conform/data/assert.h-data
index acdfef9..2344ee3 100644
--- a/conform/data/assert.h-data
+++ b/conform/data/assert.h-data
@@ -1,9 +1,9 @@
macro assert
-#ifdef ISO11
+#if defined ISO11 || defined ISO23
macro static_assert
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
allow *_t
#endif
diff --git a/conform/data/complex.h-data b/conform/data/complex.h-data
index 4af7757..0c267e4 100644
--- a/conform/data/complex.h-data
+++ b/conform/data/complex.h-data
@@ -74,7 +74,7 @@ function {long double complex} csqrtl (long double complex)
function {long double complex} ctanhl (long double complex)
function {long double complex} ctanl (long double complex)
-# if defined ISO11
+# if defined ISO11 || defined ISO23
macro-function {double complex} CMPLX (double, double)
macro-function {float complex} CMPLXF (float, float)
macro-function {long double complex} CMPLXL (long double, long double)
diff --git a/conform/data/cpio.h-data b/conform/data/cpio.h-data
index ac7d40f..ab91f2c 100644
--- a/conform/data/cpio.h-data
+++ b/conform/data/cpio.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX
constant C_IRUSR == 0000400
constant C_IWUSR == 0000200
constant C_IXUSR == 0000100
diff --git a/conform/data/ctype.h-data b/conform/data/ctype.h-data
index 7e10794..84426f9 100644
--- a/conform/data/ctype.h-data
+++ b/conform/data/ctype.h-data
@@ -16,7 +16,7 @@ function int toupper (int)
function int isblank (int)
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008
function int isascii (int)
function int toascii (int)
@@ -46,6 +46,6 @@ function int toupper_l (int, locale_t)
allow is[abcdefghijklmnopqrstuvwxyz]*
allow to[abcdefghijklmnopqrstuvwxyz]*
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
allow *_t
#endif
diff --git a/conform/data/dirent.h-data b/conform/data/dirent.h-data
index be7ad06..e7acdeb 100644
--- a/conform/data/dirent.h-data
+++ b/conform/data/dirent.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
type DIR
type {struct dirent}
diff --git a/conform/data/dlfcn.h-data b/conform/data/dlfcn.h-data
index b6658ae..e852889 100644
--- a/conform/data/dlfcn.h-data
+++ b/conform/data/dlfcn.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4 && !defined XPG42
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4 && !defined XPG42
macro RTLD_LAZY
macro RTLD_NOW
macro RTLD_GLOBAL
diff --git a/conform/data/errno.h-data b/conform/data/errno.h-data
index 12730ba..c7b5f7f 100644
--- a/conform/data/errno.h-data
+++ b/conform/data/errno.h-data
@@ -7,7 +7,7 @@ macro-int-constant ERANGE {int} > 0
// variable int errno
allow errno
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
macro-int-constant E2BIG {int} > 0
macro-int-constant EACCES {int} > 0
# if !defined POSIX
diff --git a/conform/data/fcntl.h-data b/conform/data/fcntl.h-data
index ffa4a35..8491ca6 100644
--- a/conform/data/fcntl.h-data
+++ b/conform/data/fcntl.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
constant F_DUPFD
constant F_GETFD
constant F_SETFD
diff --git a/conform/data/fenv.h-data b/conform/data/fenv.h-data
index 280b728..b3f674c 100644
--- a/conform/data/fenv.h-data
+++ b/conform/data/fenv.h-data
@@ -30,7 +30,7 @@ function int feholdexcept (fenv_t*)
function int fesetenv (const fenv_t*)
function int feupdateenv (const fenv_t *)
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
allow *_t
#endif
#endif
diff --git a/conform/data/float.h-data b/conform/data/float.h-data
index 7b98fc0..5478424 100644
--- a/conform/data/float.h-data
+++ b/conform/data/float.h-data
@@ -43,7 +43,7 @@ macro-int-constant DECIMAL_DIG >= 10
macro-int-constant FLT_EVAL_METHOD
#endif
-#if defined ISO11
+#if defined ISO11 || defined ISO23
macro-int-constant DBL_HAS_SUBNORM
macro-int-constant FLT_HAS_SUBNORM
macro-int-constant LDBL_HAS_SUBNORM
@@ -57,6 +57,6 @@ macro-constant FLT_TRUE_MIN <= 1E-37
macro-constant LDBL_TRUE_MIN <= 1E-37
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
allow *_t
#endif
diff --git a/conform/data/fmtmsg.h-data b/conform/data/fmtmsg.h-data
index c1b18ad..16d0003 100644
--- a/conform/data/fmtmsg.h-data
+++ b/conform/data/fmtmsg.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 && !defined XPG4
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 && !defined XPG4
macro MM_HARD
constant MM_HARD
diff --git a/conform/data/fnmatch.h-data b/conform/data/fnmatch.h-data
index 12a9a4a..e63a469 100644
--- a/conform/data/fnmatch.h-data
+++ b/conform/data/fnmatch.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
constant FNM_NOMATCH
constant FNM_PATHNAME
constant FNM_PERIOD
diff --git a/conform/data/ftw.h-data b/conform/data/ftw.h-data
index 340334b..5c8568f 100644
--- a/conform/data/ftw.h-data
+++ b/conform/data/ftw.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008
# ifndef XPG4
type {struct FTW}
element {struct FTW} int base
diff --git a/conform/data/glob.h-data b/conform/data/glob.h-data
index eca8393..3b5a999 100644
--- a/conform/data/glob.h-data
+++ b/conform/data/glob.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
#ifdef POSIX
# define size_t __size_t
#endif
diff --git a/conform/data/grp.h-data b/conform/data/grp.h-data
index 1688444..428329b 100644
--- a/conform/data/grp.h-data
+++ b/conform/data/grp.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
#ifdef POSIX
# define gid_t __gid_t
#endif
diff --git a/conform/data/iconv.h-data b/conform/data/iconv.h-data
index 79fb2d6..8700fc6 100644
--- a/conform/data/iconv.h-data
+++ b/conform/data/iconv.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX
type iconv_t
# if defined XOPEN2K8 || defined POSIX2008
type size_t
diff --git a/conform/data/iso646.h-data b/conform/data/iso646.h-data
index 9e307f7..713c3a4 100644
--- a/conform/data/iso646.h-data
+++ b/conform/data/iso646.h-data
@@ -11,7 +11,7 @@ macro or_eq
macro xor
macro xor_eq
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
allow *_t
#endif
#endif
diff --git a/conform/data/langinfo.h-data b/conform/data/langinfo.h-data
index 6bbb387..4bd90f2 100644
--- a/conform/data/langinfo.h-data
+++ b/conform/data/langinfo.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX
constant CODESET
constant D_T_FMT
constant D_FMT
diff --git a/conform/data/libgen.h-data b/conform/data/libgen.h-data
index e9eb5fa..aee71bb 100644
--- a/conform/data/libgen.h-data
+++ b/conform/data/libgen.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 && !defined XPG4
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 && !defined XPG4
function {char*} basename (char*)
function {char*} dirname (char*)
diff --git a/conform/data/limits.h-data b/conform/data/limits.h-data
index 23114a5..4160f96 100644
--- a/conform/data/limits.h-data
+++ b/conform/data/limits.h-data
@@ -20,13 +20,13 @@ macro-int-constant UINT_MAX {unsigned int} >= 4294967295U
macro-int-constant LONG_MAX {long int} >= 2147483647L
macro-int-constant LONG_MIN {long int} <= -2147483647L
macro-int-constant ULONG_MAX {unsigned long int} >= 4294967295UL
-#if defined ISO99 || defined ISO11 || defined XOPEN2K8 || defined POSIX2008
+#if defined ISO99 || defined ISO11 || defined ISO23 || defined XOPEN2K8 || defined POSIX2008
macro-int-constant LLONG_MIN {long long int} <= -9223372036854775807ll
macro-int-constant LLONG_MAX {long long int} >= 9223372036854775807ll
macro-int-constant ULLONG_MAX {unsigned long long int} >= 18446744073709551615ull
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
// if these values exist, we should check the minimal value
allow AIO_LISTIO_MAX
allow AIO_MAX
diff --git a/conform/data/locale.h-data b/conform/data/locale.h-data
index 266264ac6..df28e44 100644
--- a/conform/data/locale.h-data
+++ b/conform/data/locale.h-data
@@ -31,7 +31,7 @@ macro-constant NULL == 0
macro-int-constant LC_ALL
macro-int-constant LC_COLLATE
macro-int-constant LC_CTYPE
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
macro-int-constant LC_MESSAGES
#endif
macro-int-constant LC_MONETARY
@@ -62,7 +62,7 @@ function locale_t uselocale (locale_t)
#endif
allow LC_[ABCDEFGHIJKLMNOPQRSTUVWXYZ]*
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
allow *_t
#endif
#if defined XOPEN2K8 || defined POSIX2008
diff --git a/conform/data/math.h-data b/conform/data/math.h-data
index 0c50755..d177e9b 100644
--- a/conform/data/math.h-data
+++ b/conform/data/math.h-data
@@ -21,7 +21,7 @@ type double_t
function int isnan (double)
# endif
-# if !defined ISO99 && !defined ISO11 && !defined POSIX2008
+# if !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX2008
constant M_E
constant M_LOG2E
constant M_LOG10E
@@ -104,7 +104,7 @@ function double gamma (double)
#endif
#if !defined ISO && !defined POSIX
function double hypot (double, double)
-# if !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
+# if !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008
function double j0 (double)
function double j1 (double)
function double jn (int, double)
@@ -113,7 +113,7 @@ function double lgamma (double)
# if !defined XPG4 && !defined XPG42 && !defined UNIX98
function double tgamma (double)
# endif
-# if !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
+# if !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008
function double y0 (double)
function double y1 (double)
function double yn (int, double)
@@ -157,7 +157,7 @@ function double nan (const char*)
# endif
# endif
-# if !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
+# if !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008
// variable signgam
allow signgam
# endif
@@ -327,7 +327,7 @@ allow tanl
allow tanhl
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
allow *_t
#endif
#if !defined ISO && !defined POSIX && !defined XPG4 && !defined XPG42 && !defined UNIX98
diff --git a/conform/data/monetary.h-data b/conform/data/monetary.h-data
index 4f0cb9b..7a87041 100644
--- a/conform/data/monetary.h-data
+++ b/conform/data/monetary.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX
type size_t
type ssize_t
# if defined XOPEN2K8 || defined POSIX2008
diff --git a/conform/data/mqueue.h-data b/conform/data/mqueue.h-data
index 42ccd85..6b5c15d 100644
--- a/conform/data/mqueue.h-data
+++ b/conform/data/mqueue.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined XPG42
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined XPG42
// should test for not an array type.
type mqd_t
diff --git a/conform/data/ndbm.h-data b/conform/data/ndbm.h-data
index 2ee7a59..1aa4423 100644
--- a/conform/data/ndbm.h-data
+++ b/conform/data/ndbm.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 && !defined XPG4
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 && !defined XPG4
type datum
element datum {void*} dptr
element datum size_t dsize
diff --git a/conform/data/net/if.h-data b/conform/data/net/if.h-data
index 8a4d89c..98e1bd7 100644
--- a/conform/data/net/if.h-data
+++ b/conform/data/net/if.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4 && !defined XPG42 && !defined UNIX98
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4 && !defined XPG42 && !defined UNIX98
type {struct if_nameindex}
element {struct if_nameindex} {unsigned int} if_index
diff --git a/conform/data/netdb.h-data b/conform/data/netdb.h-data
index c6d8b70..a6484ac 100644
--- a/conform/data/netdb.h-data
+++ b/conform/data/netdb.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4
optional-type in_port_t
optional-type in_addr_t
diff --git a/conform/data/netinet/in.h-data b/conform/data/netinet/in.h-data
index ccc74db..ad1d0b3 100644
--- a/conform/data/netinet/in.h-data
+++ b/conform/data/netinet/in.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4
type in_port_t
type in_addr_t
diff --git a/conform/data/nl_types.h-data b/conform/data/nl_types.h-data
index 67a0d7a..90ba794 100644
--- a/conform/data/nl_types.h-data
+++ b/conform/data/nl_types.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX
type nl_catd
type nl_item
diff --git a/conform/data/poll.h-data b/conform/data/poll.h-data
index f7ebb91..d99c776 100644
--- a/conform/data/poll.h-data
+++ b/conform/data/poll.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4
type {struct pollfd}
element {struct pollfd} int fd
element {struct pollfd} {short int} events
diff --git a/conform/data/pthread.h-data b/conform/data/pthread.h-data
index 6b10499..09bf527 100644
--- a/conform/data/pthread.h-data
+++ b/conform/data/pthread.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined XPG42
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined XPG42
constant PTHREAD_CANCEL_ASYNCHRONOUS
constant PTHREAD_CANCEL_ENABLE
constant PTHREAD_CANCEL_DEFERRED
diff --git a/conform/data/pwd.h-data b/conform/data/pwd.h-data
index e86433d..b2f8cbf 100644
--- a/conform/data/pwd.h-data
+++ b/conform/data/pwd.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
#ifdef POSIX
# define uid_t __uid_t
# define gid_t __gid_t
diff --git a/conform/data/regex.h-data b/conform/data/regex.h-data
index 04f9034..602f209 100644
--- a/conform/data/regex.h-data
+++ b/conform/data/regex.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
type regex_t
element regex_t size_t re_nsub
diff --git a/conform/data/sched.h-data b/conform/data/sched.h-data
index 63e5eb2..639f129 100644
--- a/conform/data/sched.h-data
+++ b/conform/data/sched.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined XPG42
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined XPG42
# if defined POSIX || defined UNIX98
# include "time.h-data"
# else
diff --git a/conform/data/search.h-data b/conform/data/search.h-data
index e99f7e6..240be29 100644
--- a/conform/data/search.h-data
+++ b/conform/data/search.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008
type ENTRY
type {struct entry}
element {struct entry} {char*} key
diff --git a/conform/data/semaphore.h-data b/conform/data/semaphore.h-data
index 066c2f7..18afd16 100644
--- a/conform/data/semaphore.h-data
+++ b/conform/data/semaphore.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined XPG42
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined XPG42
type sem_t
constant SEM_FAILED
diff --git a/conform/data/setjmp.h-data b/conform/data/setjmp.h-data
index af28ddb..37bd9bd 100644
--- a/conform/data/setjmp.h-data
+++ b/conform/data/setjmp.h-data
@@ -1,10 +1,10 @@
type jmp_buf
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
type sigjmp_buf
#endif
function void longjmp (jmp_buf, int)
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
function void siglongjmp (sigjmp_buf, int)
# if !defined POSIX && !defined POSIX2008
function void _longjmp (jmp_buf, int)
@@ -12,13 +12,13 @@ function void _longjmp (jmp_buf, int)
#endif
macro-function int setjmp (jmp_buf)
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
macro-function int sigsetjmp (sigjmp_buf, int)
# if !defined POSIX && !defined POSIX2008
macro-function int _setjmp (jmp_buf)
# endif
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
allow *_t
#endif
diff --git a/conform/data/signal.h-data b/conform/data/signal.h-data
index 3b00b76..4beb3d8 100644
--- a/conform/data/signal.h-data
+++ b/conform/data/signal.h-data
@@ -1,15 +1,15 @@
macro-constant SIG_DFL {void(*)(int)}
macro-constant SIG_ERR {void(*)(int)}
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008
macro-constant SIG_HOLD {void(*)(int)}
#endif
macro-constant SIG_IGN {void(*)(int)}
type sig_atomic_t
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
type sigset_t
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX
type pid_t
#elif defined POSIX
# define pid_t __pid_t
@@ -68,7 +68,7 @@ macro-int-constant SIGTERM {int} > 0
function void (*signal (int, void(*)(int)))(int)
function int raise (int)
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
macro-int-constant SIGALRM {int} > 0
macro-int-constant SIGHUP {int} > 0
macro-int-constant SIGKILL {int} > 0
diff --git a/conform/data/spawn.h-data b/conform/data/spawn.h-data
index be69922..47b709b 100644
--- a/conform/data/spawn.h-data
+++ b/conform/data/spawn.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4 && !defined XPG42 && !defined UNIX98
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4 && !defined XPG42 && !defined UNIX98
type posix_spawnattr_t
type posix_spawn_file_actions_t
# if defined XOPEN2K8 || defined POSIX2008
diff --git a/conform/data/stdalign.h-data b/conform/data/stdalign.h-data
index edc2310..62eb704 100644
--- a/conform/data/stdalign.h-data
+++ b/conform/data/stdalign.h-data
@@ -1,4 +1,4 @@
-#if defined ISO11
+#if defined ISO11 || defined ISO23
macro alignas
macro alignof
macro-int-constant __alignas_is_defined {int} == 1
diff --git a/conform/data/stdarg.h-data b/conform/data/stdarg.h-data
index 53addb9..c753745 100644
--- a/conform/data/stdarg.h-data
+++ b/conform/data/stdarg.h-data
@@ -5,10 +5,10 @@ macro va_start
macro va_arg
macro va_end
-#if defined ISO99 || defined ISO11 || defined XOPEN2K || defined POSIX2008 || defined XOPEN2K8
+#if defined ISO99 || defined ISO11 || defined ISO23 || defined XOPEN2K || defined POSIX2008 || defined XOPEN2K8
macro va_copy
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
allow *_t
#endif
diff --git a/conform/data/stdbool.h-data b/conform/data/stdbool.h-data
index a030e9c..2a5a08f 100644
--- a/conform/data/stdbool.h-data
+++ b/conform/data/stdbool.h-data
@@ -4,7 +4,7 @@ macro-int-constant true {int} == 1
macro-int-constant false {int} == 0
macro-int-constant __bool_true_false_are_defined {int} == 1
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
allow *_t
#endif
#endif
diff --git a/conform/data/stddef.h-data b/conform/data/stddef.h-data
index 9ded4f1..c7a80a8 100644
--- a/conform/data/stddef.h-data
+++ b/conform/data/stddef.h-data
@@ -6,10 +6,10 @@ type ptrdiff_t
type wchar_t
type size_t
-#if defined ISO11
+#if defined ISO11 || defined ISO23
type max_align_t
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
allow *_t
#endif
diff --git a/conform/data/stdio.h-data b/conform/data/stdio.h-data
index 3ef2460..1be80b4 100644
--- a/conform/data/stdio.h-data
+++ b/conform/data/stdio.h-data
@@ -6,7 +6,7 @@ macro-int-constant _IOFBF
macro-int-constant _IOLBF
macro-int-constant _IONBF
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
constant L_ctermid
# if !defined XOPEN2K && !defined XOPEN2K8 && !defined POSIX2008
# ifdef POSIX
@@ -28,7 +28,7 @@ macro-int-constant EOF < 0
macro-constant NULL == 0
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008
constant P_tmpdir
#endif
@@ -38,7 +38,7 @@ macro stderr {FILE *}
type FILE
type fpos_t
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX
type va_list
#else
#define va_list __gnuc_va_list
@@ -50,7 +50,7 @@ type ssize_t
#endif
function void clearerr (FILE*)
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
function {char*} ctermid (char*)
# if defined XPG4 || defined XPG42 || defined UNIX98
function {char*} cuserid (char*)
@@ -60,7 +60,7 @@ function {char*} cuserid (char*)
function int dprintf (int, const char*, ...)
#endif
function int fclose (FILE*)
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
function {FILE*} fdopen (int, const char*)
#endif
function int feof (FILE*)
@@ -69,7 +69,7 @@ function int fflush (FILE*)
function int fgetc (FILE*)
function int fgetpos (FILE*, fpos_t*)
function {char*} fgets (char*, int, FILE*)
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
function int fileno (FILE*)
#endif
#if defined POSIX || defined UNIX98 || defined XOPEN2K || defined XOPEN2K8 || defined POSIX2008
@@ -112,7 +112,7 @@ function ssize_t getline (char**, size_t*, FILE*)
#if defined XPG4 || defined XPG42 || defined UNIX98
function int getopt (int, char *const[], const char *)
#endif
-#if !defined ISO11
+#if !defined ISO11 && !defined ISO23
function {char*} gets (char*)
#endif
#if defined XPG4 || defined XPG42 || defined UNIX98
@@ -121,11 +121,11 @@ function int getw (FILE*)
#if defined XOPEN2K8 || defined POSIX2008
function {FILE*} open_memstream (char**, size_t*)
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
function int pclose (FILE*)
#endif
function void perror (const char*)
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
function {FILE*} popen (const char*, const char*)
#endif
function int printf (const char*, ...)
@@ -178,7 +178,7 @@ function int vsprintf (char*, const char*, va_list)
function int vsscanf (const char*, const char*, va_list)
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
#if !defined POSIX && !defined XOPEN2K && !defined XOPEN2K8 && !defined POSIX2008
variable {char*} optarg
variable int opterr
diff --git a/conform/data/stdlib.h-data b/conform/data/stdlib.h-data
index 6913828..0f6da09 100644
--- a/conform/data/stdlib.h-data
+++ b/conform/data/stdlib.h-data
@@ -12,7 +12,7 @@ macro-constant NULL == 0
macro-int-constant RAND_MAX >= 32767
macro MB_CUR_MAX
-#if defined ISO99 || defined ISO11 || defined XOPEN2K || defined XOPEN2K8 || defined POSIX2008
+#if defined ISO99 || defined ISO11 || defined ISO23 || defined XOPEN2K || defined XOPEN2K8 || defined POSIX2008
type lldiv_t
element lldiv_t {long long} quot
element lldiv_t {long long} rem
@@ -20,7 +20,7 @@ element lldiv_t {long long} rem
type size_t
type wchar_t
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX
constant WNOHANG
constant WUNTRACED
@@ -35,16 +35,16 @@ macro WTERMSIG
#if !defined ISO && !defined XPG4 && !defined XPG42 && !defined UNIX98 && !defined POSIX
function void _Exit (int)
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined POSIX && !defined POSIX2008
function long a64l (const char*)
#endif
function void abort (void)
function int abs (int)
-#if defined ISO11
+#if defined ISO11 || defined ISO23
function {void *} aligned_alloc (size_t, size_t)
#endif
function int atexit (void(*)(void))
-#if defined ISO11
+#if defined ISO11 || defined ISO23
function int at_quick_exit (void (*) (void))
#endif
function double atof (const char*)
@@ -56,13 +56,13 @@ function {long long} atoll (const char*)
function {void*} bsearch (const void*, const void*, size_t, size_t, int(*)(const void*, const void*))
function {void*} calloc (size_t, size_t)
function div_t div (int, int)
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008
function double drand48 (void)
#endif
#if defined XPG42 || defined UNIX98 || defined XOPEN2K
function {char*} ecvt (double, int, int*, int*)
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008
function double erand48 (unsigned short int[3])
#endif
function void exit (int)
@@ -74,21 +74,21 @@ function void free (void*)
function {char*} gcvt (double, int, char*)
#endif
function {char*} getenv (const char*)
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined POSIX
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined POSIX
function int getsubopt (char**, char *const*, char**)
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined POSIX && !defined POSIX2008
function int grantpt (int)
function {char*} initstate (unsigned int, char*, size_t)
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008
function {long int} jrand48 (unsigned short int[3])
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined POSIX && !defined POSIX2008
function {char*} l64a (long)
#endif
function {long int} labs (long int)
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008
function void lcong48 (unsigned short int[7])
#endif
function ldiv_t ldiv (long int, long int)
@@ -96,7 +96,7 @@ function ldiv_t ldiv (long int, long int)
function {long long} llabs (long long)
function lldiv_t lldiv (long long, long long)
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008
function {long int} lrand48 (void)
#endif
function {void*} malloc (size_t)
@@ -106,13 +106,13 @@ function int mbtowc (wchar_t*, const char*, size_t)
#if defined XOPEN2K8 || defined POSIX2008
function {char*} mkdtemp (char*)
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined POSIX && !defined XOPEN2K8 && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined POSIX && !defined XOPEN2K8 && !defined POSIX2008
function {char*} mktemp (char*)
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined POSIX
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined POSIX
function int mkstemp (char*)
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008
function {long int} mrand48 (void)
function {long int} nrand48 (unsigned short int[3])
#endif
@@ -122,41 +122,41 @@ function int posix_memalign (void**, size_t, size_t)
#if defined XOPEN2K || defined XOPEN2K8
function int posix_openpt (int)
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined POSIX && !defined POSIX2008
function {char*} ptsname (int)
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008
function int putenv (char*)
#endif
function void qsort (void*, size_t, size_t, int(*)(const void*, const void*))
-#if defined ISO11
+#if defined ISO11 || defined ISO23
function void quick_exit (int)
#endif
function int rand (void)
#if defined POSIX || defined UNIX98 || defined XOPEN2K || defined XOPEN2K8 || defined POSIX2008
function int rand_r (unsigned int*)
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined POSIX && !defined POSIX2008
function long random (void)
#endif
function {void*} realloc (void*, size_t)
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined POSIX && !defined POSIX2008
function {char*} realpath (const char*, char*)
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008
function {unsigned short int*} seed48 (unsigned short int[3])
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4 && !defined XPG42 && !defined UNIX98
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4 && !defined XPG42 && !defined UNIX98
function int setenv (const char*, const char*, int)
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined POSIX && !defined POSIX2008
function {char*} setstate (char*)
#endif
function void srand (unsigned int)
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008
function void srand48 (long int)
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined POSIX && !defined POSIX2008
function void srandom (unsigned)
#endif
function double strtod (const char*, char**)
@@ -174,10 +174,10 @@ function int system (const char*)
#if defined XPG42 || defined UNIX98
function int ttyslot (void)
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined POSIX && !defined POSIX2008
function int unlockpt (int)
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4 && !defined XPG42 && !defined UNIX98
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4 && !defined XPG42 && !defined UNIX98
function int unsetenv (const char*)
#endif
#if defined XPG42 || defined UNIX98
@@ -186,7 +186,7 @@ function {void*} valloc (size_t)
function size_t wcstombs (char*, const wchar_t*, size_t)
function int wctomb (char*, wchar_t)
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX
allow-header stddef.h
allow-header limits.h
allow-header math.h
@@ -194,6 +194,6 @@ allow-header sys/wait.h
#endif
allow str[abcdefghijklmnopqrstuvwxyz]*
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
allow *_t
#endif
diff --git a/conform/data/stdnoreturn.h-data b/conform/data/stdnoreturn.h-data
index 77b9a58..fa83c4f 100644
--- a/conform/data/stdnoreturn.h-data
+++ b/conform/data/stdnoreturn.h-data
@@ -1,3 +1,3 @@
-#if defined ISO11
+#if defined ISO11 || defined ISO23
macro noreturn
#endif
diff --git a/conform/data/string.h-data b/conform/data/string.h-data
index e06f941..8cda133 100644
--- a/conform/data/string.h-data
+++ b/conform/data/string.h-data
@@ -5,7 +5,7 @@ type size_t
type locale_t
#endif
-#if !defined ISO && !defined ISO99 & !defined ISO11 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 & !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008
function {void*} memccpy (void*, const void*, int, size_t)
#endif
function {void*} memchr (const void*, int, size_t)
@@ -27,7 +27,7 @@ function int strcoll_l (const char*, const char*, locale_t)
#endif
function {char*} strcpy (char*, const char*)
function size_t strcspn (const char*, const char*)
-#if !defined ISO && !defined ISO99 & !defined ISO11 && !defined XPG4 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 & !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined POSIX && !defined POSIX2008
function {char*} strdup (const char*)
#endif
function {char*} strerror (int)
@@ -61,13 +61,13 @@ function size_t strxfrm (char*, const char*, size_t)
function size_t strxfrm_l (char*, const char*, size_t, locale_t)
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX
allow-header stddef.h
#endif
allow str[abcdefghijklmnopqrstuvwxyz]*
allow mem[abcdefghijklmnopqrstuvwxyz]*
allow wcs[abcdefghijklmnopqrstuvwxyz]*
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
allow *_t
#endif
diff --git a/conform/data/strings.h-data b/conform/data/strings.h-data
index 13827eb..b5d352f 100644
--- a/conform/data/strings.h-data
+++ b/conform/data/strings.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4
# if !defined XOPEN2K8 && !defined POSIX2008
function int bcmp (const void*, const void*, size_t)
function void bcopy (const void*, void*, size_t)
diff --git a/conform/data/sys/ipc.h-data b/conform/data/sys/ipc.h-data
index 1364b07..e157257 100644
--- a/conform/data/sys/ipc.h-data
+++ b/conform/data/sys/ipc.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008
type {struct ipc_perm}
// Bug 23082: uid/gid/cuid/cgid/mode have type unsigned short instead of uid_t and mode_t.
diff --git a/conform/data/sys/mman.h-data b/conform/data/sys/mman.h-data
index a743883..b742b90 100644
--- a/conform/data/sys/mman.h-data
+++ b/conform/data/sys/mman.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4
constant PROT_READ
constant PROT_WRITE
constant PROT_EXEC
diff --git a/conform/data/sys/msg.h-data b/conform/data/sys/msg.h-data
index f5e9f1c..93df6fd 100644
--- a/conform/data/sys/msg.h-data
+++ b/conform/data/sys/msg.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008
type {struct msqid_ds}
type msgqnum_t
diff --git a/conform/data/sys/resource.h-data b/conform/data/sys/resource.h-data
index cedbee1..ba247e3 100644
--- a/conform/data/sys/resource.h-data
+++ b/conform/data/sys/resource.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 && !defined XPG4
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 && !defined XPG4
constant PRIO_PROCESS
constant PRIO_PGRP
constant PRIO_USER
diff --git a/conform/data/sys/select.h-data b/conform/data/sys/select.h-data
index 44d63eb..9406eae 100644
--- a/conform/data/sys/select.h-data
+++ b/conform/data/sys/select.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4 && !defined XPG42 && !defined UNIX98
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4 && !defined XPG42 && !defined UNIX98
type time_t
type suseconds_t
diff --git a/conform/data/sys/sem.h-data b/conform/data/sys/sem.h-data
index a36ab1b..f34541c 100644
--- a/conform/data/sys/sem.h-data
+++ b/conform/data/sys/sem.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008
constant SEM_UNDO
constant GETNCNT
diff --git a/conform/data/sys/shm.h-data b/conform/data/sys/shm.h-data
index 778b194..a9d2539 100644
--- a/conform/data/sys/shm.h-data
+++ b/conform/data/sys/shm.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008
constant SHM_RDONLY
symbol SHMLBA
constant SHM_RND
diff --git a/conform/data/sys/socket.h-data b/conform/data/sys/socket.h-data
index 8796c57..d00504b 100644
--- a/conform/data/sys/socket.h-data
+++ b/conform/data/sys/socket.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4
type socklen_t
type sa_family_t
diff --git a/conform/data/sys/stat.h-data b/conform/data/sys/stat.h-data
index 03be481..ba80a5a 100644
--- a/conform/data/sys/stat.h-data
+++ b/conform/data/sys/stat.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
#if !defined POSIX && !defined POSIX2008 && !defined XPG4 && !defined XPG42
type blkcnt_t
diff --git a/conform/data/sys/statvfs.h-data b/conform/data/sys/statvfs.h-data
index 2a74813..712fbcf 100644
--- a/conform/data/sys/statvfs.h-data
+++ b/conform/data/sys/statvfs.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4
type {struct statvfs}
element {struct statvfs} {unsigned long} f_bsize
diff --git a/conform/data/sys/time.h-data b/conform/data/sys/time.h-data
index 30523e1..df5b6b9 100644
--- a/conform/data/sys/time.h-data
+++ b/conform/data/sys/time.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 && !defined XPG4
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 && !defined XPG4
type {struct timeval}
element {struct timeval} time_t tv_sec
diff --git a/conform/data/sys/timeb.h-data b/conform/data/sys/timeb.h-data
index 9638f73..a1db569 100644
--- a/conform/data/sys/timeb.h-data
+++ b/conform/data/sys/timeb.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4 && !defined POSIX2008 && !defined XOPEN2K8
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4 && !defined POSIX2008 && !defined XOPEN2K8
type {struct timeb}
element {struct timeb} time_t time
diff --git a/conform/data/sys/times.h-data b/conform/data/sys/times.h-data
index c93357b..c4c3edf 100644
--- a/conform/data/sys/times.h-data
+++ b/conform/data/sys/times.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
type {struct tms}
element {struct tms} clock_t tms_utime
diff --git a/conform/data/sys/types.h-data b/conform/data/sys/types.h-data
index cc28eb7..3330f9e 100644
--- a/conform/data/sys/types.h-data
+++ b/conform/data/sys/types.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
#if !defined POSIX
# if !defined XPG4 && !defined XPG42
type blkcnt_t
diff --git a/conform/data/sys/uio.h-data b/conform/data/sys/uio.h-data
index b9fc661..6da312c 100644
--- a/conform/data/sys/uio.h-data
+++ b/conform/data/sys/uio.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4 && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4 && !defined POSIX2008
type {struct iovec}
element {struct iovec} {void*} iov_base
diff --git a/conform/data/sys/un.h-data b/conform/data/sys/un.h-data
index 08bf9bc..8114024 100644
--- a/conform/data/sys/un.h-data
+++ b/conform/data/sys/un.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4
type {struct sockaddr_un}
element {struct sockaddr_un} sa_family_t sun_family
diff --git a/conform/data/sys/utsname.h-data b/conform/data/sys/utsname.h-data
index 82f7f39..f9045e3 100644
--- a/conform/data/sys/utsname.h-data
+++ b/conform/data/sys/utsname.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
type {struct utsname}
element {struct utsname} char sysname []
diff --git a/conform/data/sys/wait.h-data b/conform/data/sys/wait.h-data
index a671346..5998748 100644
--- a/conform/data/sys/wait.h-data
+++ b/conform/data/sys/wait.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
#ifdef POSIX
# define pid_t __pid_t
#endif
diff --git a/conform/data/syslog.h-data b/conform/data/syslog.h-data
index 6604d76..f72734d 100644
--- a/conform/data/syslog.h-data
+++ b/conform/data/syslog.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 && !defined XPG4
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 && !defined XPG4
constant LOG_PID
constant LOG_CONS
constant LOG_NDELAY
diff --git a/conform/data/tar.h-data b/conform/data/tar.h-data
index 8477860..43b2d05 100644
--- a/conform/data/tar.h-data
+++ b/conform/data/tar.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
macro-str TMAGIC "ustar"
macro-int-constant TMAGLEN {int} == 6
macro-str TVERSION "00"
diff --git a/conform/data/termios.h-data b/conform/data/termios.h-data
index bb2092b..87fbcb9 100644
--- a/conform/data/termios.h-data
+++ b/conform/data/termios.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
type cc_t
type speed_t
type tcflag_t
diff --git a/conform/data/threads.h-data b/conform/data/threads.h-data
index 406e497..a6ba414 100644
--- a/conform/data/threads.h-data
+++ b/conform/data/threads.h-data
@@ -1,4 +1,4 @@
-#if defined ISO11
+#if defined ISO11 || defined ISO23
macro ONCE_FLAG_INIT
macro thread_local
diff --git a/conform/data/time.h-data b/conform/data/time.h-data
index 9c1c195..3b2846c 100644
--- a/conform/data/time.h-data
+++ b/conform/data/time.h-data
@@ -1,7 +1,7 @@
macro-constant NULL == 0
macro CLOCKS_PER_SEC {clock_t}
-#ifdef ISO11
+#if defined ISO11 || defined ISO23
macro-int-constant TIME_UTC > 0
#endif
@@ -38,11 +38,11 @@ function {char*} ctime (const time_t*)
function {struct tm*} gmtime (const time_t*)
function {struct tm*} localtime (const time_t*)
function size_t strftime (char*, size_t, const char*, const struct tm*)
-#if defined ISO11
+#if defined ISO11 || defined ISO23
function int timespec_get (struct timespec *, int)
#endif
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
# if !defined XOPEN2K && !defined XOPEN2K8 && !defined POSIX2008
symbol CLK_TCK
# endif
diff --git a/conform/data/uchar.h-data b/conform/data/uchar.h-data
index ef27617..14718ad 100644
--- a/conform/data/uchar.h-data
+++ b/conform/data/uchar.h-data
@@ -1,4 +1,4 @@
-#if defined ISO11
+#if defined ISO11 || defined ISO23
type mbstate_t
type size_t
type char16_t
diff --git a/conform/data/ucontext.h-data b/conform/data/ucontext.h-data
index e3dcb30..414635f 100644
--- a/conform/data/ucontext.h-data
+++ b/conform/data/ucontext.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4 && !defined POSIX2008 && !defined XOPEN2K8
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4 && !defined POSIX2008 && !defined XOPEN2K8
type mcontext_t
type ucontext_t
diff --git a/conform/data/ulimit.h-data b/conform/data/ulimit.h-data
index 1e5e5b4..fbe3ec2 100644
--- a/conform/data/ulimit.h-data
+++ b/conform/data/ulimit.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008
constant UL_GETFSIZE
constant UL_SETFSIZE
diff --git a/conform/data/unistd.h-data b/conform/data/unistd.h-data
index aa07052..b453186 100644
--- a/conform/data/unistd.h-data
+++ b/conform/data/unistd.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
#ifdef POSIX
# define uid_t __uid_t
# define gid_t __gid_t
diff --git a/conform/data/utime.h-data b/conform/data/utime.h-data
index e320165..2ca26ef 100644
--- a/conform/data/utime.h-data
+++ b/conform/data/utime.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
#ifdef POSIX
# define time_t __time_t
#endif
diff --git a/conform/data/utmpx.h-data b/conform/data/utmpx.h-data
index cfe2a08..28ad96a 100644
--- a/conform/data/utmpx.h-data
+++ b/conform/data/utmpx.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 && !defined XPG4
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 && !defined XPG4
type {struct utmpx}
element {struct utmpx} char ut_user []
diff --git a/conform/data/wchar.h-data b/conform/data/wchar.h-data
index 2433210..4c8a2e3 100644
--- a/conform/data/wchar.h-data
+++ b/conform/data/wchar.h-data
@@ -1,11 +1,11 @@
#if !defined ISO && !defined POSIX && !defined XPG4 && !defined XPG42
type wchar_t
type wint_t
-# if !defined ISO99 && !defined ISO11 && !defined POSIX2008
+# if !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX2008
type wctype_t
# endif
type mbstate_t
-# if !defined ISO99 && !defined ISO11
+# if !defined ISO99 && !defined ISO11 && !defined ISO23
type FILE
# else
# define FILE __FILE
@@ -15,7 +15,7 @@ type size_t
type locale_t
# endif
tag {struct tm}
-# if !defined ISO99 && !defined ISO11 && !defined UNIX98
+# if !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined UNIX98
type va_list
# else
# define va_list __gnuc_va_list
@@ -24,7 +24,7 @@ type va_list
function wint_t btowc (int)
function int fwprintf (FILE*, const wchar_t*, ...)
function int fwscanf (FILE*, const wchar_t*, ...)
-# if !defined ISO99 && !defined ISO11 && !defined POSIX2008
+# if !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX2008
function int iswalnum (wint_t)
function int iswalpha (wint_t)
function int iswcntrl (wint_t)
@@ -59,7 +59,7 @@ function wint_t putwc (wchar_t, FILE*)
function wint_t putwchar (wchar_t)
function int swprintf (wchar_t*, size_t, const wchar_t*, ...)
function int swscanf (const wchar_t*, const wchar_t*, ...)
-# if !defined ISO99 && !defined ISO11 && !defined POSIX2008
+# if !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX2008
function wint_t towlower (wint_t)
function wint_t towupper (wint_t)
# endif
@@ -132,7 +132,7 @@ function {unsigned long long int} wcstoull (const wchar_t*, wchar_t**, int)
# if defined UNIX98 || defined XOPEN2K
function {wchar_t*} wcswcs (const wchar_t*, const wchar_t*)
# endif
-# if !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
+# if !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008
function int wcswidth (const wchar_t*, size_t)
# endif
function size_t wcsxfrm (wchar_t*, const wchar_t*, size_t)
@@ -140,7 +140,7 @@ function size_t wcsxfrm (wchar_t*, const wchar_t*, size_t)
function size_t wcsxfrm_l (wchar_t*, const wchar_t*, size_t, locale_t)
# endif
function int wctob (wint_t)
-# if !defined ISO99 && !defined ISO11 && !defined POSIX2008
+# if !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX2008
function wctype_t wctype (const char*)
function int wcwidth (wchar_t)
# endif
@@ -157,7 +157,7 @@ macro-int-constant WCHAR_MAX {promoted:wchar_t} >= 127
macro-constant WEOF {wint_t}
macro-constant NULL == 0
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
allow-header ctype.h
allow-header stdio.h
allow-header stdarg.h
@@ -168,7 +168,7 @@ allow-header time.h
#endif
allow wcs[abcdefghijklmnopqrstuvwxyz]*
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
allow *_t
#endif
#endif
diff --git a/conform/data/wctype.h-data b/conform/data/wctype.h-data
index 944fe6e..f939f3c 100644
--- a/conform/data/wctype.h-data
+++ b/conform/data/wctype.h-data
@@ -49,7 +49,7 @@ function wctype_t wctype_l (const char*, locale_t)
macro-constant WEOF {wint_t}
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
allow-header ctype.h
allow-header stdio.h
allow-header stdarg.h
@@ -62,7 +62,7 @@ allow-header wchar.h
allow is[abcdefghijklmnopqrstuvwxyz]*
allow to[abcdefghijklmnopqrstuvwxyz]*
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
allow *_t
#endif
#endif
diff --git a/conform/data/wordexp.h-data b/conform/data/wordexp.h-data
index 0d96d68..eed4754 100644
--- a/conform/data/wordexp.h-data
+++ b/conform/data/wordexp.h-data
@@ -1,4 +1,4 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23
type wordexp_t
element wordexp_t size_t we_wordc
diff --git a/conform/linknamespace.py b/conform/linknamespace.py
index 8447f75..d099cac 100644
--- a/conform/linknamespace.py
+++ b/conform/linknamespace.py
@@ -29,7 +29,7 @@ import tempfile
import glibcconform
-# The following whitelisted symbols are also allowed for now.
+# The following ALLOWLIST symbols are also allowed for now.
#
# * Bug 17576: stdin, stdout, stderr only reserved with external
# linkage when stdio.h included (and possibly not then), not
@@ -38,7 +38,7 @@ import glibcconform
# * Bug 18442: re_syntax_options wrongly brought in by regcomp and
# used by re_comp.
#
-WHITELIST = {'stdin', 'stdout', 'stderr', 're_syntax_options'}
+ALLOWLIST = {'stdin', 'stdout', 'stderr', 're_syntax_options'}
def list_syms(filename):
@@ -94,7 +94,7 @@ def main():
with open(args.stdsyms, 'r') as stdsyms_file:
for line in stdsyms_file:
stdsyms.add(line.rstrip())
- stdsyms |= WHITELIST
+ stdsyms |= ALLOWLIST
# Load information about GLOBAL and WEAK symbols defined or used
# in the standard libraries.
diff --git a/ctype/Makefile b/ctype/Makefile
index 64848bd..783b689 100644
--- a/ctype/Makefile
+++ b/ctype/Makefile
@@ -36,6 +36,23 @@ aux := ctype-info
tests := \
test_ctype \
+ tst-ctype-tls-dlmopen \
+ tst-ctype-tls-dlopen-static \
# tests
+tests-static := \
+ tst-ctype-tls-dlopen-static \
+ # tests-static
+
+modules-names := \
+ tst-ctype-tls-mod \
+ # modules-names
+
include ../Rules
+
+$(objpfx)tst-ctype-tls-dlmopen: $(shared-thread-library)
+$(objpfx)tst-ctype-tls-dlmopen.out: $(objpfx)tst-ctype-tls-mod.so
+$(objpfx)tst-ctype-tls-dlopen-static: $(static-thread-library)
+$(objpfx)tst-ctype-tls-dlopen-static.out: $(objpfx)tst-ctype-tls-mod.so
+tst-ctype-tls-dlopen-static-ENV = \
+ LD_LIBRARY_PATH=$(ld-library-path):$(common-objpfx):$(common-objpfx)elf
diff --git a/ctype/ctype-info.c b/ctype/ctype-info.c
index 5ee578e..b7d3422 100644
--- a/ctype/ctype-info.c
+++ b/ctype/ctype-info.c
@@ -19,20 +19,28 @@
#include <ctype.h>
#include <locale/localeinfo.h>
-__libc_tsd_define (, const uint16_t *, CTYPE_B)
-__libc_tsd_define (, const int32_t *, CTYPE_TOLOWER)
-__libc_tsd_define (, const int32_t *, CTYPE_TOUPPER)
+/* Fallback initialization using relocations. See the _nl_C_locobj
+ initializers in locale/xlocale.c. Usually, this is overwritten by
+ __ctype_init before user code runs, but this does not happen for
+ threads in secondary namespaces. With the initializers, secondary
+ namespaces at least get locale data from the C locale. */
+__thread const uint16_t * __libc_tsd_CTYPE_B
+ = (const uint16_t *) _nl_C_LC_CTYPE_class + 128;
+__thread const int32_t * __libc_tsd_CTYPE_TOLOWER
+ = (const int32_t *) _nl_C_LC_CTYPE_tolower + 128;
+__thread const int32_t * __libc_tsd_CTYPE_TOUPPER
+ = (const int32_t *) _nl_C_LC_CTYPE_toupper + 128;
void
__ctype_init (void)
{
- const uint16_t **bp = __libc_tsd_address (const uint16_t *, CTYPE_B);
- *bp = (const uint16_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_CLASS) + 128;
- const int32_t **up = __libc_tsd_address (const int32_t *, CTYPE_TOUPPER);
- *up = ((int32_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_TOUPPER) + 128);
- const int32_t **lp = __libc_tsd_address (const int32_t *, CTYPE_TOLOWER);
- *lp = ((int32_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_TOLOWER) + 128);
+ __libc_tsd_CTYPE_B
+ = ((const uint16_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_CLASS)) + 128;
+ __libc_tsd_CTYPE_TOUPPER
+ = ((const int32_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_TOUPPER)) + 128;
+ __libc_tsd_CTYPE_TOLOWER =
+ ((const int32_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_TOLOWER)) + 128;
}
libc_hidden_def (__ctype_init)
@@ -41,10 +49,7 @@ libc_hidden_def (__ctype_init)
#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3)
/* Defined in locale/C-ctype.c. */
-extern const char _nl_C_LC_CTYPE_class[] attribute_hidden;
extern const char _nl_C_LC_CTYPE_class32[] attribute_hidden;
-extern const char _nl_C_LC_CTYPE_toupper[] attribute_hidden;
-extern const char _nl_C_LC_CTYPE_tolower[] attribute_hidden;
extern const char _nl_C_LC_CTYPE_class_upper[] attribute_hidden;
extern const char _nl_C_LC_CTYPE_class_lower[] attribute_hidden;
extern const char _nl_C_LC_CTYPE_class_alpha[] attribute_hidden;
diff --git a/ctype/tst-ctype-tls-dlmopen.c b/ctype/tst-ctype-tls-dlmopen.c
new file mode 100644
index 0000000..f7eeb65
--- /dev/null
+++ b/ctype/tst-ctype-tls-dlmopen.c
@@ -0,0 +1,2 @@
+#define DO_STATIC_TEST 0
+#include "tst-ctype-tls-skeleton.c"
diff --git a/ctype/tst-ctype-tls-dlopen-static.c b/ctype/tst-ctype-tls-dlopen-static.c
new file mode 100644
index 0000000..c2c09c3
--- /dev/null
+++ b/ctype/tst-ctype-tls-dlopen-static.c
@@ -0,0 +1,2 @@
+#define DO_STATIC_TEST 1
+#include "tst-ctype-tls-skeleton.c"
diff --git a/ctype/tst-ctype-tls-mod.c b/ctype/tst-ctype-tls-mod.c
new file mode 100644
index 0000000..52cbb9d
--- /dev/null
+++ b/ctype/tst-ctype-tls-mod.c
@@ -0,0 +1,37 @@
+/* Wrappers for <ctype.h> macros in a secondary namespace.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <ctype.h>
+
+int
+my_isalpha (int ch)
+{
+ return isalpha (ch);
+}
+
+int
+my_toupper (int ch)
+{
+ return toupper (ch);
+}
+
+int
+my_tolower (int ch)
+{
+ return tolower (ch);
+}
diff --git a/ctype/tst-ctype-tls-skeleton.c b/ctype/tst-ctype-tls-skeleton.c
new file mode 100644
index 0000000..8c53e35
--- /dev/null
+++ b/ctype/tst-ctype-tls-skeleton.c
@@ -0,0 +1,67 @@
+/* Test that <ctype.h> in a secondary namespace works.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+/* Before this file is included, define DO_STATIC_TEST to 0 or 1.
+ With 0, dlmopen is used for the test. With 1, dlopen is used. */
+
+#include <stddef.h>
+#include <stdlib.h>
+#include <support/check.h>
+#include <support/support.h>
+#include <support/xdlfcn.h>
+#include <support/xthread.h>
+
+static int (*my_isalpha) (int);
+static int (*my_toupper) (int);
+static int (*my_tolower) (int);
+
+static void *
+checks (void *ignore)
+{
+ TEST_VERIFY (my_isalpha ('a'));
+ TEST_VERIFY (!my_isalpha ('0'));
+ TEST_COMPARE (my_toupper ('a'), 'A');
+ TEST_COMPARE (my_toupper ('A'), 'A');
+ TEST_COMPARE (my_tolower ('a'), 'a');
+ TEST_COMPARE (my_tolower ('A'), 'a');
+ return NULL;
+}
+
+static int
+do_test (void)
+{
+ char *dso = xasprintf ("%s/ctype/tst-ctype-tls-mod.so", support_objdir_root);
+#if DO_STATIC_TEST
+ void *handle = xdlopen (dso, RTLD_LAZY);
+#else
+ void *handle = xdlmopen (LM_ID_NEWLM, dso, RTLD_LAZY);
+#endif
+ my_isalpha = xdlsym (handle, "my_isalpha");
+ my_toupper = xdlsym (handle, "my_toupper");
+ my_tolower = xdlsym (handle, "my_tolower");
+
+ checks (NULL);
+ xpthread_join (xpthread_create (NULL, checks, NULL));
+
+ xdlclose (handle);
+ free (dso);
+
+ return 0;
+}
+
+#include <support/test-driver.c>
diff --git a/debug/Makefile b/debug/Makefile
index 4020184..4f7ac04 100644
--- a/debug/Makefile
+++ b/debug/Makefile
@@ -184,12 +184,20 @@ CPPFLAGS-tst-chk-cancel.c += $(no-fortify-source) -D_FORTIFY_SOURCE=2
CFLAGS-tst-sprintf-fortify-rdonly.c += $(no-fortify-source) -D_FORTIFY_SOURCE=2
CFLAGS-tst-sprintf-fortify-rdonly-mod.c += $(no-fortify-source) -D_FORTIFY_SOURCE=2
CFLAGS-tst-sprintf-fortify-rdonly-dlopen.c += $(no-fortify-source) -D_FORTIFY_SOURCE=2
+CFLAGS-tst-sprintf-fortify-rdonly-static.c += $(no-fortify-source) -D_FORTIFY_SOURCE=2
CFLAGS-tst-fortify-syslog.c += $(no-fortify-source) -D_FORTIFY_SOURCE=2
CFLAGS-tst-fortify-wide.c += $(no-fortify-source) -D_FORTIFY_SOURCE=2
-
-$(objpfx)tst-sprintf-fortify-rdonly: \
- $(objpfx)tst-sprintf-fortify-rdonly-mod.so \
- $(objpfx)tst-sprintf-fortify-rdonly-dlopen.so
+LDFLAGS-tst-sprintf-fortify-rdonly-static += $(relro-LDFLAGS)
+
+$(objpfx)tst-sprintf-fortify-rdonly: $(objpfx)tst-sprintf-fortify-rdonly-mod.so
+$(objpfx)tst-sprintf-fortify-rdonly.out: \
+ $(objpfx)tst-sprintf-fortify-rdonly-dlopen.so
+$(objpfx)tst-sprintf-fortify-rdonly-static: \
+ $(objpfx)tst-sprintf-fortify-rdonly-dlopen.o
+$(objpfx)tst-sprintf-fortify-rdonly-static.out: \
+ $(objpfx)tst-sprintf-fortify-rdonly-dlopen.so
+tst-sprintf-fortify-rdonly-static-ENV = \
+ LD_LIBRARY_PATH=$(objpfx):$(common-objpfx):$(common-objpfx)/elf
# _FORTIFY_SOURCE tests.
# Auto-generate tests for _FORTIFY_SOURCE for different levels, compilers and
@@ -278,6 +286,39 @@ LDFLAGS-tst-backtrace4 = -rdynamic
LDFLAGS-tst-backtrace5 = -rdynamic
LDFLAGS-tst-backtrace6 = -rdynamic
+$(objpfx)tst-backtrace1: $(shared-thread-library)
+
+# When SFrame is enabled, make sure the dwarf unwinder is also exercised.
+ifeq ($(enable-gsframe),yes)
+dw_unwind_pair := \
+ tst-backtrace1-nosframe:tst-backtrace1 \
+ tst-backtrace2-nosframe:tst-backtrace2 \
+ tst-backtrace3-nosframe:tst-backtrace3 \
+ tst-backtrace4-nosframe:tst-backtrace4 \
+ tst-backtrace5-nosframe:tst-backtrace5 \
+ tst-backtrace6-nosframe:tst-backtrace6
+
+first_column = $(foreach pair,$(dw_unwind_pair),$(word 1,$(subst :, ,$(pair))))
+tests-dw-unwind = $(patsubst %,$(objpfx)%.out,$(first_column))
+ifeq ($(run-built-tests),yes)
+tests-special += $(tests-dw-unwind)
+endif
+endif
+
+define make-strip-rule
+$(objpfx)$(word 1,$(subst :, ,$(1))): $(objpfx)$(word 2,$(subst :, ,$(1)))
+ $(STRIP) --remove-section=.sframe $$< -o $$@
+endef
+
+$(foreach pair,$(dw_unwind_pair),$(eval $(call make-strip-rule,$(pair))))
+
+define make-run-rule
+$(objpfx)$(word 1,$(subst :, ,$(1))).out: /dev/null $(objpfx)$(word 1,$(subst :, ,$(1)))
+ $$(make-test-out) > $$@; $$(evaluate-test)
+endef
+
+$(foreach pair,$(dw_unwind_pair),$(eval $(call make-run-rule,$(pair))))
+
CFLAGS-tst-ssp-1.c += -fstack-protector-all
# Disable compiler optimizations around vsprintf (the function under test).
@@ -289,6 +330,7 @@ tests = \
backtrace-tst \
test-stpcpy_chk \
test-strcpy_chk \
+ tst-backtrace1 \
tst-backtrace2 \
tst-backtrace3 \
tst-backtrace4 \
@@ -300,9 +342,14 @@ tests = \
tst-longjmp_chk3 \
tst-realpath-chk \
tst-sprintf-fortify-rdonly \
+ tst-sprintf-fortify-rdonly-static \
tst-sprintf-fortify-unchecked \
# tests
+tests-static = \
+ tst-sprintf-fortify-rdonly-static \
+ # tests-static
+
tests-time64 += \
$(tests-all-time64-chk) \
# tests-time64
diff --git a/debug/backtrace.c b/debug/backtrace.c
index 05cdc84..d563a04 100644
--- a/debug/backtrace.c
+++ b/debug/backtrace.c
@@ -20,6 +20,9 @@
#include <stdlib.h>
#include <unwind.h>
#include <unwind-link.h>
+#if ENABLE_SFRAME
+#include <sframe.h>
+#endif
struct trace_arg
{
@@ -30,6 +33,42 @@ struct trace_arg
int size;
};
+#if ENABLE_SFRAME
+/* Initialize the SFrame backtrace routine and attempt to backtrace
+ the current stack using SFrame information. For the SFrame
+ backtrace to be considered valid, the tracer must return more than
+ one frame. If it doesn't, this could indicate a mixed
+ environment for example, glibc may have been compiled with SFrame
+ support, while the application was not. An even more complex
+ scenario arises when the application uses shared objects compiled
+ with differing configurations.
+
+ Additionally, glibc includes certain callback paths that must be
+ considered. For example: an application calls shared object A,
+ which calls shared object B, which in turn calls qsort() in
+ glibc. qsort() then invokes a helper in shared object C, which
+ raises a SIGFPE signal, handled by object D, which requests a
+ backtrace. Any of these components may or may not include SFrame
+ encoding.
+
+ In cases where a stack frame lacks SFrame information, the SFrame
+ backtracer can fall back to using the DWARF unwinder.
+
+ This function must be always inline. Otherwise the
+ __builtin_frame_address and the __getXX helper functions will not
+ return the right addresses. */
+
+static inline int __attribute__ ((always_inline))
+do_sframe_backtrace (void **array, int size)
+{
+ frame frame;
+ frame.pc = __getPC ();
+ frame.sp = __getSP ();
+ frame.fp = (_Unwind_Ptr) __builtin_frame_address (0);
+ return __stacktrace_sframe (array, size, &frame);
+}
+#endif
+
static _Unwind_Reason_Code
backtrace_helper (struct _Unwind_Context *ctx, void *a)
{
@@ -72,7 +111,18 @@ __backtrace (void **array, int size)
.cnt = -1
};
- if (size <= 0 || arg.unwind_link == NULL)
+ if (size <= 0)
+ return 0;
+
+#if ENABLE_SFRAME
+ /* Try first the SFrame backtracer. */
+ int cnt = do_sframe_backtrace (array, size);
+ if (cnt > 1)
+ return cnt;
+#endif
+
+ /* Try the dwarf unwinder. */
+ if (arg.unwind_link == NULL)
return 0;
UNWIND_LINK_PTR (arg.unwind_link, _Unwind_Backtrace)
diff --git a/sysdeps/pthread/tst-backtrace1.c b/debug/tst-backtrace1.c
index 01b8a0c..01b8a0c 100644
--- a/sysdeps/pthread/tst-backtrace1.c
+++ b/debug/tst-backtrace1.c
diff --git a/debug/tst-sprintf-fortify-rdonly-static.c b/debug/tst-sprintf-fortify-rdonly-static.c
new file mode 100644
index 0000000..ca5bbd5
--- /dev/null
+++ b/debug/tst-sprintf-fortify-rdonly-static.c
@@ -0,0 +1 @@
+#include "tst-sprintf-fortify-rdonly.c"
diff --git a/dlfcn/dlfcn.h b/dlfcn/dlfcn.h
index 4c2bdf9..bc73180 100644
--- a/dlfcn/dlfcn.h
+++ b/dlfcn/dlfcn.h
@@ -217,15 +217,21 @@ struct dl_find_object
int dlfo_eh_count; /* Number of exception handling entries. */
unsigned int __dlfo_eh_count_pad;
# endif
- __extension__ unsigned long long int __dflo_reserved[7];
+ void *dlfo_sframe; /* SFrame stack trace data of the object. */
+#if __WORDSIZE == 32
+ unsigned int __dlfo_sframe_pad;
+#endif
+ __extension__ unsigned long long int __dlfo_reserved[6];
};
/* If ADDRESS is found in an object, fill in *RESULT and return 0.
Otherwise, return -1. */
int _dl_find_object (void *__address, struct dl_find_object *__result) __THROW;
-#endif /* __USE_GNU */
+/* SFrame stack trace data is valid. */
+#define DLFO_FLAG_SFRAME (1ULL << 0)
+#endif /* __USE_GNU */
__END_DECLS
diff --git a/elf/Makefile b/elf/Makefile
index 250348c..3a5596e 100644
--- a/elf/Makefile
+++ b/elf/Makefile
@@ -57,9 +57,11 @@ dl-routines = \
dl-close \
dl-debug \
dl-debug-symbols \
+ dl-debug_state \
dl-deps \
dl-exception \
dl-execstack \
+ dl-execstack-tunable \
dl-find_object \
dl-fini \
dl-init \
@@ -267,6 +269,7 @@ tests-static-normal := \
tst-array1-static \
tst-array5-static \
tst-dl-iter-static \
+ tst-dlopen-sgid \
tst-dst-static \
tst-env-setuid-static \
tst-getauxval-static \
@@ -417,6 +420,8 @@ tests += \
tst-dlmopen1 \
tst-dlmopen3 \
tst-dlmopen4 \
+ tst-dlmopen4-nonpic \
+ tst-dlmopen4-pic \
tst-dlopen-auditdup \
tst-dlopen-constructor-null \
tst-dlopen-self \
@@ -494,6 +499,7 @@ tests += \
tst-tls21 \
tst-tls22 \
tst-tls22-gnu2 \
+ tst-tls23 \
tst-tlsalign \
tst-tlsalign-extern \
tst-tlsgap \
@@ -537,6 +543,8 @@ tests-internal += \
tst-dl_find_object-threads \
tst-dlmopen2 \
tst-hash-collision3 \
+ tst-link-map-contiguous-ldso \
+ tst-link-map-contiguous-libc \
tst-ptrguard1 \
tst-stackguard1 \
tst-tls-surplus \
@@ -548,6 +556,10 @@ tests-internal += \
unload2 \
# tests-internal
+ifeq ($(build-hardcoded-path-in-tests),yes)
+tests-internal += tst-link-map-contiguous-main
+endif
+
tests-container += \
tst-dlopen-self-container \
tst-dlopen-tlsmodid-container \
@@ -572,9 +584,11 @@ tests-execstack-yes = \
tst-execstack \
tst-execstack-needed \
tst-execstack-prog \
+ tst-execstack-tunable \
# tests-execstack-yes
tests-execstack-static-yes = \
- tst-execstack-prog-static
+ tst-execstack-prog-static \
+ tst-execstack-prog-static-tunable \
# tests-execstack-static-yes
ifeq (yes,$(run-built-tests))
tests-execstack-special-yes = \
@@ -765,6 +779,12 @@ modules-names += \
libmarkermod5-3 \
libmarkermod5-4 \
libmarkermod5-5 \
+ libmarkermod6-1 \
+ libmarkermod6-2 \
+ libmarkermod6-3 \
+ libmarkermod6-4 \
+ libmarkermod6-5 \
+ libmarkermod6-6 \
liborigin-mod \
libtracemod1-1 \
libtracemod2-1 \
@@ -914,6 +934,7 @@ modules-names += \
tst-dlopen-auditdupmod \
tst-dlopen-constructor-null-mod1 \
tst-dlopen-constructor-null-mod2 \
+ tst-dlopen-sgid-mod \
tst-dlopen-tlsreinitmod1 \
tst-dlopen-tlsreinitmod2 \
tst-dlopen-tlsreinitmod3 \
@@ -1012,6 +1033,7 @@ modules-names += \
tst-tls22-mod1-gnu2 \
tst-tls22-mod2 \
tst-tls22-mod2-gnu2 \
+ tst-tls23-mod \
tst-tlsalign-lib \
tst-tlsgap-mod0 \
tst-tlsgap-mod1 \
@@ -1366,11 +1388,11 @@ $(objpfx)$(1).generated-makefile: $(objpfx)$(1)
endef
endif
-postclean-generated += $(objpfx)/dso-sort-tests-1.generated-makefile \
- $(objpfx)/dso-sort-tests-2.generated-makefile \
- $(objpfx)/dso-sort-tests-all2.generated-makefile \
- $(objpfx)/dso-sort-tests-all3.generated-makefile \
- $(objpfx)/dso-sort-tests-all4.generated-makefile
+postclean-generated += $(objpfx)dso-sort-tests-1.generated-makefile \
+ $(objpfx)dso-sort-tests-2.generated-makefile \
+ $(objpfx)dso-sort-tests-all2.generated-makefile \
+ $(objpfx)dso-sort-tests-all3.generated-makefile \
+ $(objpfx)dso-sort-tests-all4.generated-makefile
# Generate from each testcase description file
$(eval $(call include_dsosort_tests,dso-sort-tests-1.def))
@@ -2023,6 +2045,14 @@ LDFLAGS-tst-execstack-prog = -Wl,-z,execstack
CFLAGS-tst-execstack-prog.c += -Wno-trampolines
CFLAGS-tst-execstack-mod.c += -Wno-trampolines
+# It expects loading a module with executable stack to work.
+CFLAGS-tst-execstack-tunable.c += -DUSE_PTHREADS=0 -DDEFAULT_RWX_STACK=1
+$(objpfx)tst-execstack-tunable.out: $(objpfx)tst-execstack-mod.so
+tst-execstack-tunable-ENV = GLIBC_TUNABLES=glibc.rtld.execstack=2
+
+LDFLAGS-tst-execstack-prog-static-tunable = -Wl,-z,noexecstack
+tst-execstack-prog-static-tunable-ENV = GLIBC_TUNABLES=glibc.rtld.execstack=2
+
LDFLAGS-tst-execstack-prog-static = -Wl,-z,execstack
ifeq ($(have-no-error-execstack),yes)
LDFLAGS-tst-execstack-prog-static += -Wl,--no-error-execstack
@@ -2237,6 +2267,13 @@ $(objpfx)tst-dlmopen3.out: $(objpfx)tst-dlmopen1mod.so
$(objpfx)tst-dlmopen4.out: $(objpfx)tst-dlmopen1mod.so
+CFLAGS-tst-dlmopen4-pic.c += -fPIC
+$(objpfx)tst-dlmopen4-pic.out: $(objpfx)tst-dlmopen1mod.so
+
+CFLAGS-tst-dlmopen4-nonpic.c += -fno-pie
+tst-dlmopen4-nonpic-no-pie = yes
+$(objpfx)tst-dlmopen4-nonpic.out: $(objpfx)tst-dlmopen1mod.so
+
$(objpfx)tst-audit1.out: $(objpfx)tst-auditmod1.so
tst-audit1-ENV = LD_AUDIT=$(objpfx)tst-auditmod1.so
@@ -2855,6 +2892,7 @@ LDFLAGS-libmarkermod2-1.so += -Wl,-soname,libmarkermod2.so
LDFLAGS-libmarkermod3-1.so += -Wl,-soname,libmarkermod3.so
LDFLAGS-libmarkermod4-1.so += -Wl,-soname,libmarkermod4.so
LDFLAGS-libmarkermod5-1.so += -Wl,-soname,libmarkermod5.so
+LDFLAGS-libmarkermod6-1.so += -Wl,-soname,libmarkermod6.so
$(objpfx)libmarkermod%.os : markermodMARKER-VALUE.c
$(compile-command.c) \
-DMARKER=marker$(firstword $(subst -, ,$*)) \
@@ -2869,6 +2907,8 @@ $(objpfx)libmarkermod4.so: $(objpfx)libmarkermod4-1.so
cp $< $@
$(objpfx)libmarkermod5.so: $(objpfx)libmarkermod5-1.so
cp $< $@
+$(objpfx)libmarkermod6.so: $(objpfx)libmarkermod6-1.so
+ cp $< $@
# tst-glibc-hwcaps-prepend checks that --glibc-hwcaps-prepend is
# preferred over auto-detected subdirectories.
@@ -3027,7 +3067,7 @@ $(objpfx)tst-rtld-list-diagnostics.out: tst-rtld-list-diagnostics.py \
> $@; \
$(evaluate-test)
-$(objpfx)tst-rtld-run-static.out: $(objpfx)/ldconfig
+$(objpfx)tst-rtld-run-static.out: $(objpfx)ldconfig
$(objpfx)tst-dl_find_object.out: \
$(objpfx)tst-dl_find_object-mod1.so $(objpfx)tst-dl_find_object-mod2.so
@@ -3338,9 +3378,11 @@ $(objpfx)tst-dlopen-auditdup.out: \
# Reuse an audit module which provides ample debug logging.
tst-rtld-no-malloc-audit-ENV = LD_AUDIT=$(objpfx)tst-auditmod1.so
+$(objpfx)tst-rtld-no-malloc-audit.out: $(objpfx)tst-auditmod1.so
# Any shared object should do.
tst-rtld-no-malloc-preload-ENV = LD_PRELOAD=$(objpfx)tst-auditmod1.so
+$(objpfx)tst-rtld-no-malloc-preload.out: $(objpfx)tst-auditmod1.so
LDFLAGS-tst-hash-collision1-mod.so = -Wl,--hash-style=both
$(objpfx)tst-hash-collision1: $(objpfx)tst-hash-collision1-mod.so
@@ -3388,6 +3430,13 @@ tst-tls22-mod1-gnu2.so-no-z-defs = yes
tst-tls22-mod2.so-no-z-defs = yes
tst-tls22-mod2-gnu2.so-no-z-defs = yes
+$(objpfx)tst-tls23: $(shared-thread-library)
+$(objpfx)tst-tls23.out: $(objpfx)tst-tls23-mod.so
+
+ifneq (no,$(have-test-mtls-traditional))
+CFLAGS-tst-tls23-mod.c += -mtls-dialect=$(have-test-mtls-traditional)
+endif
+
ifeq ($(have-test-cc-cflags-fsemantic-interposition),yes)
# Compiler may default to -fno-semantic-interposition. These modules
# must be compiled with -fsemantic-interposition.
@@ -3468,3 +3517,5 @@ $(objpfx)tst-origin.out: tst-origin.sh $(objpfx)tst-origin
liborigin-mod.so \
> $@; \
$(evaluate-test)
+
+$(objpfx)tst-dlopen-sgid.out: $(objpfx)tst-dlopen-sgid-mod.so
diff --git a/elf/dl-close.c b/elf/dl-close.c
index 47bd3da..83e4f01 100644
--- a/elf/dl-close.c
+++ b/elf/dl-close.c
@@ -433,8 +433,7 @@ _dl_close_worker (struct link_map *map, bool force)
/* Notify the debugger we are about to remove some loaded objects.
LA_ACT_DELETE has already been signalled above for !unload_any. */
struct r_debug *r = _dl_debug_update (nsid);
- r->r_state = RT_DELETE;
- _dl_debug_state ();
+ _dl_debug_change_state (r, RT_DELETE);
LIBC_PROBE (unmap_start, 2, nsid, r);
if (unload_global)
@@ -726,8 +725,7 @@ _dl_close_worker (struct link_map *map, bool force)
__rtld_lock_unlock_recursive (GL(dl_load_tls_lock));
/* Notify the debugger those objects are finalized and gone. */
- r->r_state = RT_CONSISTENT;
- _dl_debug_state ();
+ _dl_debug_change_state (r, RT_CONSISTENT);
LIBC_PROBE (unmap_complete, 2, nsid, r);
#ifdef SHARED
diff --git a/elf/dl-debug-symbols.S b/elf/dl-debug-symbols.S
index 7bcb035..d789f4e 100644
--- a/elf/dl-debug-symbols.S
+++ b/elf/dl-debug-symbols.S
@@ -38,3 +38,4 @@
_r_debug:
_r_debug_extended:
.zero R_DEBUG_EXTENDED_SIZE
+rtld_hidden_def (_r_debug)
diff --git a/elf/dl-debug.c b/elf/dl-debug.c
index 5ff1460..7052f4a 100644
--- a/elf/dl-debug.c
+++ b/elf/dl-debug.c
@@ -16,6 +16,7 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
+#include <assert.h>
#include <ldsodefs.h>
@@ -30,23 +31,86 @@ extern const int verify_link_map_members[(VERIFY_MEMBER (l_addr)
&& VERIFY_MEMBER (l_prev))
? 1 : -1];
+#ifdef SHARED
+/* r_debug structs for secondary namespaces. The first namespace is
+ handled separately because its r_debug structure must overlap with
+ the public _r_debug symbol, so the first array element corresponds
+ to LM_ID_BASE + 1. See elf/dl-debug-symbols.S. */
+struct r_debug_extended _r_debug_array[DL_NNS - 1];
+
+/* If not null, pointer to the _r_debug in the main executable. */
+static struct r_debug *_r_debug_main;
+
+void
+_dl_debug_post_relocate (struct link_map *main_map)
+{
+ /* Perform a full symbol search in all objects, to maintain
+ compatibility if interposed _r_debug definitions. The lookup
+ cannot fail because there is a definition in ld.so, and this
+ function is only called if the ld.so search scope is not empty. */
+ const ElfW(Sym) *sym = NULL;
+ lookup_t result =_dl_lookup_symbol_x ("_r_debug", main_map, &sym,
+ main_map->l_scope, NULL, 0, 0, NULL);
+ if (sym->st_size >= sizeof (struct r_debug))
+ {
+ struct r_debug *main_r_debug = DL_SYMBOL_ADDRESS (result, sym);
+ if (main_r_debug != &_r_debug_extended.base)
+ {
+ /* The extended version of the struct is not available in
+ the main executable because a copy relocation has been
+ used. r_map etc. have already been copied as part of the
+ copy relocation processing. */
+ main_r_debug->r_version = 1;
+
+ /* Record that dual updates of the initial link map are
+ required. */
+ _r_debug_main = main_r_debug;
+ }
+ }
+}
+
+/* Return the r_debug object for the namespace NS. */
+static inline struct r_debug_extended *
+get_rdebug (Lmid_t ns)
+{
+ if (ns == LM_ID_BASE)
+ return &_r_debug_extended;
+ else
+ return &_r_debug_array[ns - 1];
+}
+#else /* !SHARED */
+static inline struct r_debug_extended *
+get_rdebug (Lmid_t ns)
+{
+ return &_r_debug_extended; /* There is just one namespace. */
+}
+#endif /* !SHARED */
+
/* Update the `r_map' member and return the address of `struct r_debug'
of the namespace NS. */
struct r_debug *
_dl_debug_update (Lmid_t ns)
{
- struct r_debug_extended *r;
- if (ns == LM_ID_BASE)
- r = &_r_debug_extended;
- else
- r = &GL(dl_ns)[ns]._ns_debug;
+ struct r_debug_extended *r = get_rdebug (ns);
if (r->base.r_map == NULL)
atomic_store_release (&r->base.r_map,
(void *) GL(dl_ns)[ns]._ns_loaded);
return &r->base;
}
+void
+_dl_debug_change_state (struct r_debug *r, int state)
+{
+ atomic_store_release (&r->r_state, state);
+#ifdef SHARED
+ if (r == &_r_debug_extended.base && _r_debug_main != NULL)
+ /* Update the copy-relocation of _r_debug. */
+ atomic_store_release (&_r_debug_main->r_state, state);
+#endif
+ _dl_debug_state ();
+}
+
/* Initialize _r_debug_extended for the namespace NS. LDBASE is the
run-time load address of the dynamic linker, to be put in
_r_debug_extended.r_ldbase. Return the address of _r_debug. */
@@ -54,34 +118,7 @@ _dl_debug_update (Lmid_t ns)
struct r_debug *
_dl_debug_initialize (ElfW(Addr) ldbase, Lmid_t ns)
{
- struct r_debug_extended *r, **pp = NULL;
-
- if (ns == LM_ID_BASE)
- {
- r = &_r_debug_extended;
- /* Initialize r_version to 1. */
- if (_r_debug_extended.base.r_version == 0)
- _r_debug_extended.base.r_version = 1;
- }
- else if (DL_NNS > 1)
- {
- r = &GL(dl_ns)[ns]._ns_debug;
- if (r->base.r_brk == 0)
- {
- /* Add the new namespace to the linked list. After a namespace
- is initialized, r_brk becomes non-zero. A namespace becomes
- empty (r_map == NULL) when it is unused. But it is never
- removed from the linked list. */
- struct r_debug_extended *p;
- for (pp = &_r_debug_extended.r_next;
- (p = *pp) != NULL;
- pp = &p->r_next)
- ;
-
- r->base.r_version = 2;
- }
- }
-
+ struct r_debug_extended *r = get_rdebug (ns);
if (r->base.r_brk == 0)
{
/* Tell the debugger where to find the map of loaded objects.
@@ -89,30 +126,44 @@ _dl_debug_initialize (ElfW(Addr) ldbase, Lmid_t ns)
only once. */
r->base.r_ldbase = ldbase ?: _r_debug_extended.base.r_ldbase;
r->base.r_brk = (ElfW(Addr)) &_dl_debug_state;
- r->r_next = NULL;
+
+#ifdef SHARED
+ /* Add the new namespace to the linked list. This assumes that
+ namespaces are allocated in increasing order. After a
+ namespace is initialized, r_brk becomes non-zero. A
+ namespace becomes empty (r_map == NULL) when it is unused.
+ But it is never removed from the linked list. */
+
+ if (ns != LM_ID_BASE)
+ {
+ r->base.r_version = 2;
+ if (ns - 1 == LM_ID_BASE)
+ {
+ atomic_store_release (&_r_debug_extended.r_next, r);
+ /* Now there are multiple namespaces. Note that this
+ deliberately does not update the copy in the main
+ executable (if it exists). */
+ atomic_store_release (&_r_debug_extended.base.r_version, 2);
+ }
+ else
+ /* Update r_debug_extended of the previous namespace. */
+ atomic_store_release (&_r_debug_array[ns - 2].r_next, r);
+ }
+ else
+#endif /* SHARED */
+ r->base.r_version = 1;
}
if (r->base.r_map == NULL)
- atomic_store_release (&r->base.r_map,
- (void *) GL(dl_ns)[ns]._ns_loaded);
-
- if (pp != NULL)
{
- atomic_store_release (pp, r);
- /* Bump r_version to 2 for the new namespace. */
- atomic_store_release (&_r_debug_extended.base.r_version, 2);
+ struct link_map_public *l = (void *) GL(dl_ns)[ns]._ns_loaded;
+ atomic_store_release (&r->base.r_map, l);
+#ifdef SHARED
+ if (ns == LM_ID_BASE && _r_debug_main != NULL)
+ /* Update the copy-relocation of _r_debug. */
+ atomic_store_release (&_r_debug_main->r_map, l);
+#endif
}
return &r->base;
}
-
-
-/* This function exists solely to have a breakpoint set on it by the
- debugger. The debugger is supposed to find this function's address by
- examining the r_brk member of struct r_debug, but GDB 4.15 in fact looks
- for this particular symbol name in the PT_INTERP file. */
-void
-_dl_debug_state (void)
-{
-}
-rtld_hidden_def (_dl_debug_state)
diff --git a/elf/dl-debug_state.c b/elf/dl-debug_state.c
new file mode 100644
index 0000000..40c134a
--- /dev/null
+++ b/elf/dl-debug_state.c
@@ -0,0 +1,30 @@
+/* Debugger hook called after dynamic linker updates.
+ Copyright (C) 1996-2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <ldsodefs.h>
+
+/* This function exists solely to have a breakpoint set on it by the
+ debugger. The debugger is supposed to find this function's address by
+ examining the r_brk member of struct r_debug, but GDB 4.15 in fact looks
+ for this particular symbol name in the PT_INTERP file. Therefore,
+ this function must not be inlined. */
+void
+_dl_debug_state (void)
+{
+}
+rtld_hidden_def (_dl_debug_state)
diff --git a/elf/dl-execstack-tunable.c b/elf/dl-execstack-tunable.c
new file mode 100644
index 0000000..e3b638a
--- /dev/null
+++ b/elf/dl-execstack-tunable.c
@@ -0,0 +1,39 @@
+/* Stack executability handling for GNU dynamic linker.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <ldsodefs.h>
+#include <dl-tunables.h>
+
+void
+_dl_handle_execstack_tunable (void)
+{
+ switch (TUNABLE_GET (glibc, rtld, execstack, int32_t, NULL))
+ {
+ case stack_tunable_mode_disable:
+ if ((__glibc_unlikely (GL(dl_stack_flags)) & PF_X))
+ _dl_fatal_printf (
+"Fatal glibc error: executable stack is not allowed\n");
+ break;
+
+ case stack_tunable_mode_force:
+ if (_dl_make_stack_executable (__libc_stack_end) != 0)
+ _dl_fatal_printf (
+"Fatal glibc error: cannot enable executable stack as tunable requires");
+ break;
+ }
+}
diff --git a/elf/dl-execstack.c b/elf/dl-execstack.c
index e4d7dbe..ceec5b2 100644
--- a/elf/dl-execstack.c
+++ b/elf/dl-execstack.c
@@ -23,7 +23,7 @@
so as to mprotect it. */
int
-_dl_make_stack_executable (void **stack_endp)
+_dl_make_stack_executable (const void *stack_endp)
{
return ENOSYS;
}
diff --git a/elf/dl-find_object.c b/elf/dl-find_object.c
index 1e76373..c9f4c1c 100644
--- a/elf/dl-find_object.c
+++ b/elf/dl-find_object.c
@@ -465,6 +465,37 @@ _dl_find_object (void *pc1, struct dl_find_object *result)
}
rtld_hidden_def (_dl_find_object)
+/* Subroutine of _dlfo_process_initial to split out noncontigous link
+ maps. NODELETE is the number of used _dlfo_nodelete_mappings
+ elements. It is incremented as needed, and the new NODELETE value
+ is returned. */
+static size_t
+_dlfo_process_initial_noncontiguous_map (struct link_map *map,
+ size_t nodelete)
+{
+ struct dl_find_object_internal dlfo;
+ _dl_find_object_from_map (map, &dlfo);
+
+ /* PT_LOAD segments for a non-contiguous link map are added to the
+ non-closeable mappings. */
+ const ElfW(Phdr) *ph = map->l_phdr;
+ const ElfW(Phdr) *ph_end = map->l_phdr + map->l_phnum;
+ for (; ph < ph_end; ++ph)
+ if (ph->p_type == PT_LOAD)
+ {
+ if (_dlfo_nodelete_mappings != NULL)
+ {
+ /* Second pass only. */
+ _dlfo_nodelete_mappings[nodelete] = dlfo;
+ ElfW(Addr) start = ph->p_vaddr + map->l_addr;
+ _dlfo_nodelete_mappings[nodelete].map_start = start;
+ _dlfo_nodelete_mappings[nodelete].map_end = start + ph->p_memsz;
+ }
+ ++nodelete;
+ }
+ return nodelete;
+}
+
/* _dlfo_process_initial is called twice. First to compute the array
sizes from the initial loaded mappings. Second to fill in the
bases and infos arrays with the (still unsorted) data. Returns the
@@ -476,29 +507,8 @@ _dlfo_process_initial (void)
size_t nodelete = 0;
if (!main_map->l_contiguous)
- {
- struct dl_find_object_internal dlfo;
- _dl_find_object_from_map (main_map, &dlfo);
-
- /* PT_LOAD segments for a non-contiguous are added to the
- non-closeable mappings. */
- for (const ElfW(Phdr) *ph = main_map->l_phdr,
- *ph_end = main_map->l_phdr + main_map->l_phnum;
- ph < ph_end; ++ph)
- if (ph->p_type == PT_LOAD)
- {
- if (_dlfo_nodelete_mappings != NULL)
- {
- /* Second pass only. */
- _dlfo_nodelete_mappings[nodelete] = dlfo;
- _dlfo_nodelete_mappings[nodelete].map_start
- = ph->p_vaddr + main_map->l_addr;
- _dlfo_nodelete_mappings[nodelete].map_end
- = _dlfo_nodelete_mappings[nodelete].map_start + ph->p_memsz;
- }
- ++nodelete;
- }
- }
+ /* Contiguous case already handled in _dl_find_object_init. */
+ nodelete = _dlfo_process_initial_noncontiguous_map (main_map, nodelete);
size_t loaded = 0;
for (Lmid_t ns = 0; ns < GL(dl_nns); ++ns)
@@ -510,11 +520,18 @@ _dlfo_process_initial (void)
/* lt_library link maps are implicitly NODELETE. */
if (l->l_type == lt_library || l->l_nodelete_active)
{
- if (_dlfo_nodelete_mappings != NULL)
- /* Second pass only. */
- _dl_find_object_from_map
- (l, _dlfo_nodelete_mappings + nodelete);
- ++nodelete;
+ /* The kernel may have loaded ld.so with gaps. */
+ if (!l->l_contiguous && is_rtld_link_map (l))
+ nodelete
+ = _dlfo_process_initial_noncontiguous_map (l, nodelete);
+ else
+ {
+ if (_dlfo_nodelete_mappings != NULL)
+ /* Second pass only. */
+ _dl_find_object_from_map
+ (l, _dlfo_nodelete_mappings + nodelete);
+ ++nodelete;
+ }
}
else if (l->l_type == lt_loaded)
{
@@ -764,7 +781,6 @@ _dl_find_object_update_1 (struct link_map **loaded, size_t count)
/* Prefer newly loaded link map. */
assert (loaded_index1 > 0);
_dl_find_object_from_map (loaded[loaded_index1 - 1], dlfo);
- loaded[loaded_index1 - 1]->l_find_object_processed = 1;
--loaded_index1;
}
diff --git a/elf/dl-find_object.h b/elf/dl-find_object.h
index e433ff8..d9d75c4 100644
--- a/elf/dl-find_object.h
+++ b/elf/dl-find_object.h
@@ -43,6 +43,7 @@ struct dl_find_object_internal
#if DLFO_STRUCT_HAS_EH_COUNT
int eh_count;
#endif
+ void *sframe;
};
/* Create a copy of *SOURCE in *COPY using relaxed MO loads and
@@ -67,13 +68,14 @@ _dl_find_object_internal_copy (const struct dl_find_object_internal *source,
atomic_store_relaxed (&copy->eh_count,
atomic_load_relaxed (&source->eh_count));
#endif
+ atomic_store_relaxed (&copy->sframe,
+ atomic_load_relaxed (&source->sframe));
}
static inline void
_dl_find_object_to_external (struct dl_find_object_internal *internal,
struct dl_find_object *external)
{
- external->dlfo_flags = 0;
external->dlfo_map_start = (void *) internal->map_start;
external->dlfo_map_end = (void *) internal->map_end;
external->dlfo_link_map = internal->map;
@@ -84,14 +86,22 @@ _dl_find_object_to_external (struct dl_find_object_internal *internal,
# if DLFO_STRUCT_HAS_EH_COUNT
external->dlfo_eh_count = internal->eh_count;
# endif
+ external->dlfo_sframe = internal->sframe;
+ if (internal->sframe != NULL)
+ external->dlfo_flags = DLFO_FLAG_SFRAME;
+ else
+ external->dlfo_flags = 0;
}
/* Extract the object location data from a link map and writes it to
- *RESULT using relaxed MO stores. */
+ *RESULT using relaxed MO stores. Set L->l_find_object_processed. */
static void __attribute__ ((unused))
_dl_find_object_from_map (struct link_map *l,
struct dl_find_object_internal *result)
{
+ /* A mask to find out which segment has been read out. */
+ unsigned int read_seg = 0;
+
atomic_store_relaxed (&result->map_start, (uintptr_t) l->l_map_start);
atomic_store_relaxed (&result->map_end, (uintptr_t) l->l_map_end);
atomic_store_relaxed (&result->map, l);
@@ -100,23 +110,42 @@ _dl_find_object_from_map (struct link_map *l,
atomic_store_relaxed (&result->eh_dbase, (void *) l->l_info[DT_PLTGOT]);
#endif
- for (const ElfW(Phdr) *ph = l->l_phdr, *ph_end = l->l_phdr + l->l_phnum;
- ph < ph_end; ++ph)
- if (ph->p_type == DLFO_EH_SEGMENT_TYPE)
- {
- atomic_store_relaxed (&result->eh_frame,
- (void *) (ph->p_vaddr + l->l_addr));
+ /* Initialize object's exception handling segment and SFrame segment
+ data. */
+ atomic_store_relaxed (&result->sframe, NULL);
+ atomic_store_relaxed (&result->eh_frame, NULL);
#if DLFO_STRUCT_HAS_EH_COUNT
- atomic_store_relaxed (&result->eh_count, ph->p_memsz / 8);
+ atomic_store_relaxed (&result->eh_count, 0);
#endif
- return;
- }
- /* Object has no exception handling segment. */
- atomic_store_relaxed (&result->eh_frame, NULL);
+ for (const ElfW(Phdr) *ph = l->l_phdr, *ph_end = l->l_phdr + l->l_phnum;
+ ph < ph_end; ++ph)
+ {
+ switch (ph->p_type)
+ {
+ case DLFO_EH_SEGMENT_TYPE:
+ atomic_store_relaxed (&result->eh_frame,
+ (void *) (ph->p_vaddr + l->l_addr));
#if DLFO_STRUCT_HAS_EH_COUNT
- atomic_store_relaxed (&result->eh_count, 0);
+ atomic_store_relaxed (&result->eh_count, ph->p_memsz / 8);
#endif
+ read_seg |= 1;
+ break;
+
+ case PT_GNU_SFRAME:
+ atomic_store_relaxed (&result->sframe,
+ (void *) (ph->p_vaddr + l->l_addr));
+ read_seg |= 2;
+ /* Fall through. */
+ default:
+ break;
+ }
+ if (read_seg == 3)
+ goto done;
+ }
+
+ done:
+ l->l_find_object_processed = 1;
}
/* Called by the dynamic linker to set up the data structures for the
diff --git a/elf/dl-load.c b/elf/dl-load.c
index 6b7e979..00b9da9 100644
--- a/elf/dl-load.c
+++ b/elf/dl-load.c
@@ -921,8 +921,7 @@ _dl_notify_new_object (int mode, Lmid_t nsid, struct link_map *l)
/* Notify the debugger we have added some objects. We need to
call _dl_debug_initialize in a static program in case dynamic
linking has not been used before. */
- r->r_state = RT_ADD;
- _dl_debug_state ();
+ _dl_debug_change_state (r, RT_ADD);
LIBC_PROBE (map_start, 2, nsid, r);
}
else
@@ -945,7 +944,7 @@ struct link_map *
_dl_map_object_from_fd (const char *name, const char *origname, int fd,
struct filebuf *fbp, char *realname,
struct link_map *loader, int l_type, int mode,
- void **stack_endp, Lmid_t nsid)
+ const void *stack_endp, Lmid_t nsid)
{
struct link_map *l = NULL;
const ElfW(Ehdr) *header;
@@ -1340,7 +1339,7 @@ cannot enable executable stack as shared object requires");
/* Adjust the address of the TLS initialization image. */
if (l->l_tls_initimage != NULL)
- l->l_tls_initimage = (char *) l->l_tls_initimage + l->l_addr;
+ l->l_tls_initimage = (void*)((uintptr_t)l->l_tls_initimage + l->l_addr);
/* Process program headers again after load segments are mapped in
case processing requires accessing those segments. Scan program
@@ -2181,7 +2180,7 @@ _dl_map_new_object (struct link_map *loader, const char *name,
void *stack_end = __libc_stack_end;
return _dl_map_object_from_fd (name, origname, fd, &fb, realname, loader,
- type, mode, &stack_end, nsid);
+ type, mode, stack_end, nsid);
}
struct link_map *
diff --git a/elf/dl-open.c b/elf/dl-open.c
index f6227bd..5526065 100644
--- a/elf/dl-open.c
+++ b/elf/dl-open.c
@@ -772,8 +772,7 @@ dl_open_worker (void *a)
#ifdef SHARED
bool was_not_consistent = r->r_state != RT_CONSISTENT;
#endif
- r->r_state = RT_CONSISTENT;
- _dl_debug_state ();
+ _dl_debug_change_state (r, RT_CONSISTENT);
LIBC_PROBE (map_complete, 3, nsid, r, args->map);
#ifdef SHARED
@@ -842,7 +841,7 @@ no more namespaces available for dlmopen()"));
}
GL(dl_ns)[nsid].libc_map = NULL;
- _dl_debug_update (nsid)->r_state = RT_CONSISTENT;
+ _dl_debug_change_state (_dl_debug_update (nsid), RT_CONSISTENT);
}
/* Never allow loading a DSO in a namespace which is empty. Such
direct placements is only causing problems. Also don't allow
diff --git a/elf/dl-support.c b/elf/dl-support.c
index c7860f3..7b2a1c3 100644
--- a/elf/dl-support.c
+++ b/elf/dl-support.c
@@ -331,9 +331,7 @@ _dl_non_dynamic_init (void)
break;
}
- if ((__glibc_unlikely (GL(dl_stack_flags)) & PF_X)
- && TUNABLE_GET (glibc, rtld, execstack, int32_t, NULL) == 0)
- _dl_fatal_printf ("Fatal glibc error: executable stack is not allowed\n");
+ _dl_handle_execstack_tunable ();
call_function_static_weak (_dl_find_object_init);
diff --git a/elf/dl-tunables.list b/elf/dl-tunables.list
index 0b6721b..c03c996 100644
--- a/elf/dl-tunables.list
+++ b/elf/dl-tunables.list
@@ -138,7 +138,7 @@ glibc {
execstack {
type: INT_32
minval: 0
- maxval: 1
+ maxval: 2
default: 1
}
}
diff --git a/elf/elf.h b/elf/elf.h
index c0f6148..2f29a47 100644
--- a/elf/elf.h
+++ b/elf/elf.h
@@ -837,12 +837,15 @@ typedef struct
#define NT_ARM_ZT 0x40d /* ARM SME ZT registers. */
#define NT_ARM_FPMR 0x40e /* ARM floating point mode register. */
#define NT_ARM_POE 0x40f /* ARM POE registers. */
+#define NT_ARM_GCS 0x410 /* ARM GCS state. */
#define NT_VMCOREDD 0x700 /* Vmcore Device Dump Note. */
#define NT_MIPS_DSP 0x800 /* MIPS DSP ASE registers. */
#define NT_MIPS_FP_MODE 0x801 /* MIPS floating-point mode. */
#define NT_MIPS_MSA 0x802 /* MIPS SIMD registers. */
#define NT_RISCV_CSR 0x900 /* RISC-V Control and Status Registers */
#define NT_RISCV_VECTOR 0x901 /* RISC-V vector registers */
+#define NT_RISCV_TAGGED_ADDR_CTRL 0x902 /* RISC-V tagged
+ address control */
#define NT_LOONGARCH_CPUCFG 0xa00 /* LoongArch CPU config registers. */
#define NT_LOONGARCH_CSR 0xa01 /* LoongArch control and
status registers. */
@@ -4078,6 +4081,7 @@ enum
#define R_RISCV_TLS_DTPREL64 9
#define R_RISCV_TLS_TPREL32 10
#define R_RISCV_TLS_TPREL64 11
+#define R_RISCV_TLSDESC 12
#define R_RISCV_BRANCH 16
#define R_RISCV_JAL 17
#define R_RISCV_CALL 18
@@ -4103,16 +4107,10 @@ enum
#define R_RISCV_SUB16 38
#define R_RISCV_SUB32 39
#define R_RISCV_SUB64 40
-#define R_RISCV_GNU_VTINHERIT 41
-#define R_RISCV_GNU_VTENTRY 42
+#define R_RISCV_GOT32_PCREL 41
#define R_RISCV_ALIGN 43
#define R_RISCV_RVC_BRANCH 44
#define R_RISCV_RVC_JUMP 45
-#define R_RISCV_RVC_LUI 46
-#define R_RISCV_GPREL_I 47
-#define R_RISCV_GPREL_S 48
-#define R_RISCV_TPREL_I 49
-#define R_RISCV_TPREL_S 50
#define R_RISCV_RELAX 51
#define R_RISCV_SUB6 52
#define R_RISCV_SET6 53
@@ -4124,8 +4122,12 @@ enum
#define R_RISCV_PLT32 59
#define R_RISCV_SET_ULEB128 60
#define R_RISCV_SUB_ULEB128 61
+#define R_RISCV_TLSDESC_HI20 62
+#define R_RISCV_TLSDESC_LOAD_LO12 63
+#define R_RISCV_TLSDESC_ADD_LO12 64
+#define R_RISCV_TLSDESC_CALL 65
-#define R_RISCV_NUM 62
+#define R_RISCV_NUM 66
/* RISC-V specific values for the st_other field. */
#define STO_RISCV_VARIANT_CC 0x80 /* Function uses variant calling
@@ -4134,7 +4136,7 @@ enum
/* RISC-V specific values for the sh_type field. */
#define SHT_RISCV_ATTRIBUTES (SHT_LOPROC + 3)
-/* RISC-V specific values for the p_type field. */
+/* RISC-V specific values for the p_type field (deprecated). */
#define PT_RISCV_ATTRIBUTES (PT_LOPROC + 3)
/* RISC-V specific values for the d_tag field. */
diff --git a/elf/libc_early_init.c b/elf/libc_early_init.c
index 0720231..4da170a 100644
--- a/elf/libc_early_init.c
+++ b/elf/libc_early_init.c
@@ -24,6 +24,7 @@
#include <pthread_early_init.h>
#include <sys/single_threaded.h>
#include <getrandom-internal.h>
+#include <malloc/malloc-internal.h>
#ifdef SHARED
_Bool __libc_initial;
@@ -49,4 +50,7 @@ __libc_early_init (_Bool initial)
#if ENABLE_ELISION_SUPPORT
__lll_elision_init ();
#endif
+
+ /* Initialize system malloc (needs __libc_initial to be set). */
+ call_function_static_weak (__ptmalloc_init);
}
diff --git a/elf/rtld.c b/elf/rtld.c
index 099c447..ef4d96c 100644
--- a/elf/rtld.c
+++ b/elf/rtld.c
@@ -371,7 +371,6 @@ struct rtld_global_ro _rtld_global_ro attribute_relro =
._dl_error_free = _dl_error_free,
._dl_tls_get_addr_soft = _dl_tls_get_addr_soft,
._dl_libc_freeres = __rtld_libc_freeres,
- ._dl_readonly_area = _dl_readonly_area,
};
/* If we would use strong_alias here the compiler would see a
non-hidden definition. This would undo the effect of the previous
@@ -428,7 +427,6 @@ static ElfW(Addr) _dl_start_final (void *arg,
/* These are defined magically by the linker. */
extern const ElfW(Ehdr) __ehdr_start attribute_hidden;
-extern char _etext[] attribute_hidden;
extern char _end[] attribute_hidden;
@@ -459,6 +457,7 @@ _dl_start_final (void *arg, struct dl_start_final_info *info)
/* Do not use an initializer for these members because it would
interfere with __rtld_static_init. */
GLRO (dl_find_object) = &_dl_find_object;
+ GLRO (dl_readonly_area) = &_dl_readonly_area;
/* If it hasn't happen yet record the startup time. */
rtld_timer_start (&start_time);
@@ -477,8 +476,10 @@ _dl_start_final (void *arg, struct dl_start_final_info *info)
#endif
_dl_setup_hash (&_dl_rtld_map);
_dl_rtld_map.l_real = &_dl_rtld_map;
- _dl_rtld_map.l_map_start = (ElfW(Addr)) &__ehdr_start;
- _dl_rtld_map.l_map_end = (ElfW(Addr)) _end;
+ _dl_rtld_map.l_map_start
+ = (ElfW(Addr)) DL_ADDRESS_WITHOUT_RELOC (&__ehdr_start);
+ _dl_rtld_map.l_map_end
+ = (ElfW(Addr)) DL_ADDRESS_WITHOUT_RELOC (_end);
/* Copy the TLS related data if necessary. */
#ifndef DONT_USE_BOOTSTRAP_MAP
# if NO_TLS_OFFSET != 0
@@ -1238,6 +1239,60 @@ rtld_setup_main_map (struct link_map *main_map)
return has_interp;
}
+/* Set up the program header information for the dynamic linker
+ itself. It can be accessed via _r_debug and dl_iterate_phdr
+ callbacks, and it is used by _dl_find_object. */
+static void
+rtld_setup_phdr (void)
+{
+ /* Starting from binutils-2.23, the linker will define the magic
+ symbol __ehdr_start to point to our own ELF header if it is
+ visible in a segment that also includes the phdrs. */
+
+ const ElfW(Ehdr) *rtld_ehdr = &__ehdr_start;
+ assert (rtld_ehdr->e_ehsize == sizeof *rtld_ehdr);
+ assert (rtld_ehdr->e_phentsize == sizeof (ElfW(Phdr)));
+
+ const ElfW(Phdr) *rtld_phdr = (const void *) rtld_ehdr + rtld_ehdr->e_phoff;
+
+ _dl_rtld_map.l_phdr = rtld_phdr;
+ _dl_rtld_map.l_phnum = rtld_ehdr->e_phnum;
+
+
+ _dl_rtld_map.l_contiguous = 1;
+ /* The linker may not have produced a contiguous object. The kernel
+ will load the object with actual gaps (unlike the glibc loader
+ for shared objects, which always produces a contiguous mapping).
+ See similar logic in rtld_setup_main_map above. */
+ {
+ ElfW(Addr) expected_load_address = 0;
+ for (const ElfW(Phdr) *ph = rtld_phdr; ph < &rtld_phdr[rtld_ehdr->e_phnum];
+ ++ph)
+ if (ph->p_type == PT_LOAD)
+ {
+ ElfW(Addr) mapstart = ph->p_vaddr & ~(GLRO(dl_pagesize) - 1);
+ if (_dl_rtld_map.l_contiguous && expected_load_address != 0
+ && expected_load_address != mapstart)
+ _dl_rtld_map.l_contiguous = 0;
+ ElfW(Addr) allocend = ph->p_vaddr + ph->p_memsz;
+ /* The next expected address is the page following this load
+ segment. */
+ expected_load_address = ((allocend + GLRO(dl_pagesize) - 1)
+ & ~(GLRO(dl_pagesize) - 1));
+ }
+ }
+
+ /* PT_GNU_RELRO is usually the last phdr. */
+ size_t cnt = rtld_ehdr->e_phnum;
+ while (cnt-- > 0)
+ if (rtld_phdr[cnt].p_type == PT_GNU_RELRO)
+ {
+ _dl_rtld_map.l_relro_addr = rtld_phdr[cnt].p_vaddr;
+ _dl_rtld_map.l_relro_size = rtld_phdr[cnt].p_memsz;
+ break;
+ }
+}
+
/* Adjusts the contents of the stack and related globals for the user
entry point. The ld.so processed skip_args arguments and bumped
_dl_argv and _dl_argc accordingly. Those arguments are removed from
@@ -1622,9 +1677,9 @@ dl_main (const ElfW(Phdr) *phdr,
bool has_interp = rtld_setup_main_map (main_map);
- if ((__glibc_unlikely (GL(dl_stack_flags)) & PF_X)
- && TUNABLE_GET (glibc, rtld, execstack, int32_t, NULL) == 0)
- _dl_fatal_printf ("Fatal glibc error: executable stack is not allowed\n");
+ /* Handle this after PT_GNU_STACK parse, because it updates dl_stack_flags
+ if required. */
+ _dl_handle_execstack_tunable ();
/* If the current libname is different from the SONAME, add the
latter as well. */
@@ -1704,33 +1759,7 @@ dl_main (const ElfW(Phdr) *phdr,
++GL(dl_ns)[LM_ID_BASE]._ns_nloaded;
++GL(dl_load_adds);
- /* Starting from binutils-2.23, the linker will define the magic symbol
- __ehdr_start to point to our own ELF header if it is visible in a
- segment that also includes the phdrs. If that's not available, we use
- the old method that assumes the beginning of the file is part of the
- lowest-addressed PT_LOAD segment. */
-
- /* Set up the program header information for the dynamic linker
- itself. It is needed in the dl_iterate_phdr callbacks. */
- const ElfW(Ehdr) *rtld_ehdr = &__ehdr_start;
- assert (rtld_ehdr->e_ehsize == sizeof *rtld_ehdr);
- assert (rtld_ehdr->e_phentsize == sizeof (ElfW(Phdr)));
-
- const ElfW(Phdr) *rtld_phdr = (const void *) rtld_ehdr + rtld_ehdr->e_phoff;
-
- _dl_rtld_map.l_phdr = rtld_phdr;
- _dl_rtld_map.l_phnum = rtld_ehdr->e_phnum;
-
-
- /* PT_GNU_RELRO is usually the last phdr. */
- size_t cnt = rtld_ehdr->e_phnum;
- while (cnt-- > 0)
- if (rtld_phdr[cnt].p_type == PT_GNU_RELRO)
- {
- _dl_rtld_map.l_relro_addr = rtld_phdr[cnt].p_vaddr;
- _dl_rtld_map.l_relro_size = rtld_phdr[cnt].p_memsz;
- break;
- }
+ rtld_setup_phdr ();
/* Add the dynamic linker to the TLS list if it also uses TLS. */
if (_dl_rtld_map.l_tls_blocksize != 0)
@@ -1777,8 +1806,7 @@ dl_main (const ElfW(Phdr) *phdr,
elf_setup_debug_entry (main_map, r);
/* We start adding objects. */
- r->r_state = RT_ADD;
- _dl_debug_state ();
+ _dl_debug_change_state (r, RT_ADD);
LIBC_PROBE (init_start, 2, LM_ID_BASE, r);
/* Auditing checkpoint: we are ready to signal that the initial map
@@ -2313,6 +2341,9 @@ dl_main (const ElfW(Phdr) *phdr,
__rtld_mutex_init ();
__rtld_malloc_init_real (main_map);
+
+ /* Update copy-relocated _r_debug if necessary. */
+ _dl_debug_post_relocate (main_map);
}
/* All ld.so initialization is complete. Apply RELRO. */
@@ -2333,8 +2364,7 @@ dl_main (const ElfW(Phdr) *phdr,
/* Notify the debugger all new objects are now ready to go. We must re-get
the address since by now the variable might be in another object. */
r = _dl_debug_update (LM_ID_BASE);
- r->r_state = RT_CONSISTENT;
- _dl_debug_state ();
+ _dl_debug_change_state (r, RT_CONSISTENT);
LIBC_PROBE (init_complete, 2, LM_ID_BASE, r);
/* Auditing checkpoint: we have added all objects. */
diff --git a/elf/rtld_static_init.c b/elf/rtld_static_init.c
index 6423790..9c56180 100644
--- a/elf/rtld_static_init.c
+++ b/elf/rtld_static_init.c
@@ -79,6 +79,7 @@ __rtld_static_init (struct link_map *map)
attribute_hidden;
dl->_dl_tls_static_size = _dl_tls_static_size;
dl->_dl_find_object = _dl_find_object;
+ dl->_dl_readonly_area = _dl_readonly_area;
__rtld_static_init_arch (map, dl);
}
diff --git a/elf/tst-asm-helper.h b/elf/tst-asm-helper.h
index 6f91ac2..ae2e3aa 100644
--- a/elf/tst-asm-helper.h
+++ b/elf/tst-asm-helper.h
@@ -20,6 +20,7 @@
#include <config.h>
+#ifdef __aarch64__
/* GNU_PROPERTY_AARCH64_* macros from elf.h for use in asm code. */
#define FEATURE_1_AND 0xc0000000
#define FEATURE_1_BTI 1
@@ -42,8 +43,5 @@
/* Add GNU property note with the supported features to all asm code
where sysdep.h is included. */
-#if HAVE_AARCH64_BTI && HAVE_AARCH64_PAC_RET
GNU_PROPERTY (FEATURE_1_AND, FEATURE_1_BTI|FEATURE_1_PAC|FEATURE_1_GCS)
-#elif HAVE_AARCH64_BTI
-GNU_PROPERTY (FEATURE_1_AND, FEATURE_1_BTI|FEATURE_1_GCS)
#endif
diff --git a/elf/tst-dl_find_object.c b/elf/tst-dl_find_object.c
index 96ec591..d85eb21 100644
--- a/elf/tst-dl_find_object.c
+++ b/elf/tst-dl_find_object.c
@@ -122,6 +122,14 @@ check (void *address,
address, actual.dlfo_eh_count, expected->dlfo_eh_count);
}
#endif
+ if (actual.dlfo_flags & DLFO_FLAG_SFRAME
+ && actual.dlfo_sframe != expected->dlfo_sframe)
+ {
+ support_record_failure ();
+ printf ("%s:%d: error: %p: sframe is %p, expected %p\n",
+ __FILE__, line,
+ address, actual.dlfo_sframe, expected->dlfo_sframe);
+ }
}
/* Check that unwind data for the main executable and the dynamic
@@ -180,6 +188,12 @@ do_test (void)
dlfo.dlfo_eh_frame, ret);
TEST_COMPARE (ret, 0);
TEST_VERIFY (dlfo.dlfo_eh_frame != NULL);
+#if ENABLE_SFRAME
+ TEST_VERIFY ((dlfo.dlfo_flags & DLFO_FLAG_SFRAME) == DLFO_FLAG_SFRAME);
+ TEST_VERIFY (dlfo.dlfo_sframe != NULL);
+#else
+ TEST_VERIFY ((dlfo.dlfo_flags & DLFO_FLAG_SFRAME) != DLFO_FLAG_SFRAME);
+#endif
}
check_initial ();
diff --git a/elf/tst-dlmopen4-nonpic.c b/elf/tst-dlmopen4-nonpic.c
new file mode 100644
index 0000000..ad4e409
--- /dev/null
+++ b/elf/tst-dlmopen4-nonpic.c
@@ -0,0 +1,2 @@
+#define BUILD_FOR_NONPIC
+#include "tst-dlmopen4.c"
diff --git a/elf/tst-dlmopen4-pic.c b/elf/tst-dlmopen4-pic.c
new file mode 100644
index 0000000..919fa85
--- /dev/null
+++ b/elf/tst-dlmopen4-pic.c
@@ -0,0 +1,2 @@
+#define BUILD_FOR_PIC
+#include "tst-dlmopen4.c"
diff --git a/elf/tst-dlmopen4.c b/elf/tst-dlmopen4.c
index 64e007e..5cda024 100644
--- a/elf/tst-dlmopen4.c
+++ b/elf/tst-dlmopen4.c
@@ -46,6 +46,15 @@ do_test (void)
TEST_COMPARE (debug->base.r_version, 1);
TEST_VERIFY_EXIT (debug->r_next == NULL);
+#ifdef BUILD_FOR_PIC
+ /* In a PIC build, using _r_debug directly should give us the same
+ object. */
+ TEST_VERIFY (&_r_debug == &debug->base);
+#endif
+#ifdef BUILD_FOR_NONPIC
+ TEST_COMPARE (_r_debug.r_version, 1);
+#endif
+
void *h = xdlmopen (LM_ID_NEWLM, "$ORIGIN/tst-dlmopen1mod.so",
RTLD_LAZY);
@@ -57,6 +66,19 @@ do_test (void)
const char *name = basename (debug->r_next->base.r_map->l_name);
TEST_COMPARE_STRING (name, "tst-dlmopen1mod.so");
+#ifdef BUILD_FOR_NONPIC
+ /* If a copy relocation is used, it must be at version 1. */
+ if (&_r_debug != &debug->base)
+ {
+ TEST_COMPARE (_r_debug.r_version, 1);
+ TEST_COMPARE ((uintptr_t) _r_debug.r_map,
+ (uintptr_t) debug->base.r_map);
+ TEST_COMPARE (_r_debug.r_brk, debug->base.r_brk);
+ TEST_COMPARE (_r_debug.r_state, debug->base.r_state);
+ TEST_COMPARE (_r_debug.r_ldbase, debug->base.r_ldbase);
+ }
+#endif
+
xdlclose (h);
return 0;
diff --git a/elf/tst-dlopen-sgid-mod.c b/elf/tst-dlopen-sgid-mod.c
new file mode 100644
index 0000000..5eb79ee
--- /dev/null
+++ b/elf/tst-dlopen-sgid-mod.c
@@ -0,0 +1 @@
+/* Opening this object should not succeed. */
diff --git a/elf/tst-dlopen-sgid.c b/elf/tst-dlopen-sgid.c
new file mode 100644
index 0000000..8aec52e
--- /dev/null
+++ b/elf/tst-dlopen-sgid.c
@@ -0,0 +1,106 @@
+/* Test case for ignored LD_LIBRARY_PATH in static startug (bug 32976).
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <dlfcn.h>
+#include <gnu/lib-names.h>
+#include <stddef.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <string.h>
+#include <support/capture_subprocess.h>
+#include <support/check.h>
+#include <support/support.h>
+#include <support/temp_file.h>
+#include <support/test-driver.h>
+#include <sys/wait.h>
+#include <unistd.h>
+
+/* This is the name of our test object. Use a custom module for
+ testing, so that this object does not get picked up from the system
+ path. */
+static const char dso_name[] = "tst-dlopen-sgid-mod.so";
+
+/* Used to mark the recursive invocation. */
+static const char magic_argument[] = "run-actual-test";
+
+static int
+do_test (void)
+{
+/* Pathname of the directory that receives the shared objects this
+ test attempts to load. */
+ char *libdir = support_create_temp_directory ("tst-dlopen-sgid-");
+
+ /* This is supposed to be ignored and stripped. */
+ TEST_COMPARE (setenv ("LD_LIBRARY_PATH", libdir, 1), 0);
+
+ /* Copy of libc.so.6. */
+ {
+ char *from = xasprintf ("%s/%s", support_objdir_root, LIBC_SO);
+ char *to = xasprintf ("%s/%s", libdir, LIBC_SO);
+ add_temp_file (to);
+ support_copy_file (from, to);
+ free (to);
+ free (from);
+ }
+
+ /* Copy of the test object. */
+ {
+ char *from = xasprintf ("%s/elf/%s", support_objdir_root, dso_name);
+ char *to = xasprintf ("%s/%s", libdir, dso_name);
+ add_temp_file (to);
+ support_copy_file (from, to);
+ free (to);
+ free (from);
+ }
+
+ free (libdir);
+
+ support_capture_subprogram_self_sgid (magic_argument);
+
+ return 0;
+}
+
+static void
+alternative_main (int argc, char **argv)
+{
+ if (argc == 2 && strcmp (argv[1], magic_argument) == 0)
+ {
+ if (getgid () == getegid ())
+ /* This can happen if the file system is mounted nosuid. */
+ FAIL_UNSUPPORTED ("SGID failed: GID and EGID match (%jd)\n",
+ (intmax_t) getgid ());
+
+ /* Should be removed due to SGID. */
+ TEST_COMPARE_STRING (getenv ("LD_LIBRARY_PATH"), NULL);
+
+ TEST_VERIFY (dlopen (dso_name, RTLD_NOW) == NULL);
+ {
+ const char *message = dlerror ();
+ TEST_COMPARE_STRING (message,
+ "tst-dlopen-sgid-mod.so:"
+ " cannot open shared object file:"
+ " No such file or directory");
+ }
+
+ support_record_failure_barrier ();
+ exit (EXIT_SUCCESS);
+ }
+}
+
+#define PREPARE alternative_main
+#include <support/test-driver.c>
diff --git a/elf/tst-env-setuid-tunables.c b/elf/tst-env-setuid-tunables.c
index a4233b1..bfdb30c 100644
--- a/elf/tst-env-setuid-tunables.c
+++ b/elf/tst-env-setuid-tunables.c
@@ -105,10 +105,7 @@ do_test (int argc, char **argv)
if (ret != 0)
exit (1);
-
- /* Special return code to make sure that the child executed all the way
- through. */
- exit (42);
+ return 0;
}
else
{
@@ -127,18 +124,7 @@ do_test (int argc, char **argv)
continue;
}
- int status = support_capture_subprogram_self_sgid (buf);
-
- /* Bail out early if unsupported. */
- if (WEXITSTATUS (status) == EXIT_UNSUPPORTED)
- return EXIT_UNSUPPORTED;
-
- if (WEXITSTATUS (status) != 42)
- {
- printf (" [%d] child failed with status %d\n", i,
- WEXITSTATUS (status));
- support_record_failure ();
- }
+ support_capture_subprogram_self_sgid (buf);
}
return 0;
}
diff --git a/elf/tst-env-setuid.c b/elf/tst-env-setuid.c
index 2c632ed..7209acd 100644
--- a/elf/tst-env-setuid.c
+++ b/elf/tst-env-setuid.c
@@ -147,10 +147,7 @@ do_test (int argc, char **argv)
if (ret != 0)
exit (1);
-
- /* Special return code to make sure that the child executed all the way
- through. */
- exit (42);
+ return 0;
}
else
{
@@ -174,17 +171,7 @@ do_test (int argc, char **argv)
free (profilepath);
}
- int status = support_capture_subprogram_self_sgid (SETGID_CHILD);
-
- if (WEXITSTATUS (status) == EXIT_UNSUPPORTED)
- exit (EXIT_UNSUPPORTED);
-
- if (WEXITSTATUS (status) != 42)
- {
- printf (" child failed with status %d\n",
- WEXITSTATUS (status));
- support_record_failure ();
- }
+ support_capture_subprogram_self_sgid (SETGID_CHILD);
return 0;
}
diff --git a/elf/tst-execstack-prog-static-tunable.c b/elf/tst-execstack-prog-static-tunable.c
new file mode 100644
index 0000000..88b0ca1
--- /dev/null
+++ b/elf/tst-execstack-prog-static-tunable.c
@@ -0,0 +1 @@
+#include <tst-execstack-prog-static.c>
diff --git a/elf/tst-execstack-tunable.c b/elf/tst-execstack-tunable.c
new file mode 100644
index 0000000..9f03b0f
--- /dev/null
+++ b/elf/tst-execstack-tunable.c
@@ -0,0 +1 @@
+#include <tst-execstack.c>
diff --git a/elf/tst-glibc-hwcaps-2-cache.root/etc/ld.so.conf b/elf/tst-glibc-hwcaps-2-cache.root/etc/ld.so.conf
deleted file mode 100644
index e1e74db..0000000
--- a/elf/tst-glibc-hwcaps-2-cache.root/etc/ld.so.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-# This file was created to suppress a warning from ldconfig:
-# /sbin/ldconfig: Warning: ignoring configuration file that cannot be opened: /etc/ld.so.conf: No such file or directory
diff --git a/elf/tst-glibc-hwcaps-cache.root/etc/ld.so.conf b/elf/tst-glibc-hwcaps-cache.root/etc/ld.so.conf
deleted file mode 100644
index e1e74db..0000000
--- a/elf/tst-glibc-hwcaps-cache.root/etc/ld.so.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-# This file was created to suppress a warning from ldconfig:
-# /sbin/ldconfig: Warning: ignoring configuration file that cannot be opened: /etc/ld.so.conf: No such file or directory
diff --git a/elf/tst-glibc-hwcaps-cache.script b/elf/tst-glibc-hwcaps-cache.script
index d58fc8c..af89e9c 100644
--- a/elf/tst-glibc-hwcaps-cache.script
+++ b/elf/tst-glibc-hwcaps-cache.script
@@ -5,6 +5,7 @@ cp $B/elf/libmarkermod2-1.so $L/libmarkermod2.so
cp $B/elf/libmarkermod3-1.so $L/libmarkermod3.so
cp $B/elf/libmarkermod4-1.so $L/libmarkermod4.so
cp $B/elf/libmarkermod5-1.so $L/libmarkermod5.so
+cp $B/elf/libmarkermod6-1.so $L/libmarkermod6.so
mkdirp 0770 $L/glibc-hwcaps/power9
cp $B/elf/libmarkermod2-2.so $L/glibc-hwcaps/power9/libmarkermod2.so
@@ -26,6 +27,12 @@ cp $B/elf/libmarkermod5-2.so $L/glibc-hwcaps/z13/libmarkermod5.so
cp $B/elf/libmarkermod5-3.so $L/glibc-hwcaps/z14/libmarkermod5.so
cp $B/elf/libmarkermod5-4.so $L/glibc-hwcaps/z15/libmarkermod5.so
cp $B/elf/libmarkermod5-5.so $L/glibc-hwcaps/z16/libmarkermod5.so
+mkdirp 0770 $L/glibc-hwcaps/z17
+cp $B/elf/libmarkermod6-2.so $L/glibc-hwcaps/z13/libmarkermod6.so
+cp $B/elf/libmarkermod6-3.so $L/glibc-hwcaps/z14/libmarkermod6.so
+cp $B/elf/libmarkermod6-4.so $L/glibc-hwcaps/z15/libmarkermod6.so
+cp $B/elf/libmarkermod6-5.so $L/glibc-hwcaps/z16/libmarkermod6.so
+cp $B/elf/libmarkermod6-6.so $L/glibc-hwcaps/z17/libmarkermod6.so
mkdirp 0770 $L/glibc-hwcaps/x86-64-v2
cp $B/elf/libmarkermod2-2.so $L/glibc-hwcaps/x86-64-v2/libmarkermod2.so
diff --git a/elf/tst-gnu2-tls2.c b/elf/tst-gnu2-tls2.c
index 74637ee..6a253c9 100644
--- a/elf/tst-gnu2-tls2.c
+++ b/elf/tst-gnu2-tls2.c
@@ -25,7 +25,7 @@
#include <support/xthread.h>
#include <support/check.h>
#include <support/test-driver.h>
-#include "tst-gnu2-tls2.h"
+#include <tst-gnu2-tls2.h>
#ifndef IS_SUPPORTED
# define IS_SUPPORTED() true
@@ -75,7 +75,7 @@ close_mod (int i)
static void
access_mod (int i, const char *sym)
{
- struct tls var = { -1, -1, -1, -1 };
+ struct tls var = { -4, -4, -4, -4 };
struct tls *(*f) (struct tls *) = xdlsym (mod[i], sym);
/* Check that our malloc is called. */
malloc_counter = 0;
diff --git a/elf/tst-ldconfig-bad-aux-cache.root/etc/ld.so.conf b/elf/tst-ldconfig-bad-aux-cache.root/etc/ld.so.conf
deleted file mode 100644
index e1e74db..0000000
--- a/elf/tst-ldconfig-bad-aux-cache.root/etc/ld.so.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-# This file was created to suppress a warning from ldconfig:
-# /sbin/ldconfig: Warning: ignoring configuration file that cannot be opened: /etc/ld.so.conf: No such file or directory
diff --git a/elf/tst-link-map-contiguous-ldso.c b/elf/tst-link-map-contiguous-ldso.c
new file mode 100644
index 0000000..04de808
--- /dev/null
+++ b/elf/tst-link-map-contiguous-ldso.c
@@ -0,0 +1,98 @@
+/* Check that _dl_find_object behavior matches up with gaps.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <dlfcn.h>
+#include <gnu/lib-names.h>
+#include <link.h>
+#include <stdbool.h>
+#include <stdio.h>
+#include <support/check.h>
+#include <support/xdlfcn.h>
+#include <support/xunistd.h>
+#include <sys/mman.h>
+#include <unistd.h>
+
+static int
+do_test (void)
+{
+ struct link_map *l = xdlopen (LD_SO, RTLD_NOW);
+ if (!l->l_contiguous)
+ {
+ puts ("info: ld.so link map is not contiguous");
+
+ /* Try to find holes by probing with mmap. */
+ int pagesize = getpagesize ();
+ bool gap_found = false;
+ ElfW(Addr) addr = l->l_map_start;
+ TEST_COMPARE (addr % pagesize, 0);
+ while (addr < l->l_map_end)
+ {
+ void *expected = (void *) addr;
+ void *ptr = xmmap (expected, 1, PROT_READ | PROT_WRITE,
+ MAP_PRIVATE | MAP_ANONYMOUS, -1);
+ struct dl_find_object dlfo;
+ int dlfo_ret = _dl_find_object (expected, &dlfo);
+ if (ptr == expected)
+ {
+ if (dlfo_ret < 0)
+ {
+ TEST_COMPARE (dlfo_ret, -1);
+ printf ("info: hole without mapping data found at %p\n", ptr);
+ }
+ else
+ FAIL ("object \"%s\" found in gap at %p",
+ dlfo.dlfo_link_map->l_name, ptr);
+ gap_found = true;
+ }
+ else if (dlfo_ret == 0)
+ {
+ if ((void *) dlfo.dlfo_link_map != (void *) l)
+ {
+ printf ("info: object \"%s\" found at %p\n",
+ dlfo.dlfo_link_map->l_name, ptr);
+ gap_found = true;
+ }
+ }
+ else
+ TEST_COMPARE (dlfo_ret, -1);
+ xmunmap (ptr, 1);
+ addr += pagesize;
+ }
+ if (!gap_found)
+ FAIL ("no ld.so gap found");
+ }
+ else
+ {
+ puts ("info: ld.so link map is contiguous");
+
+ /* Assert that ld.so is truly contiguous in memory. */
+ volatile long int *p = (volatile long int *) l->l_map_start;
+ volatile long int *end = (volatile long int *) l->l_map_end;
+ while (p < end)
+ {
+ *p;
+ ++p;
+ }
+ }
+
+ xdlclose (l);
+
+ return 0;
+}
+
+#include <support/test-driver.c>
diff --git a/elf/tst-link-map-contiguous-libc.c b/elf/tst-link-map-contiguous-libc.c
new file mode 100644
index 0000000..eb5728c
--- /dev/null
+++ b/elf/tst-link-map-contiguous-libc.c
@@ -0,0 +1,57 @@
+/* Check that the entire libc.so program image is readable if contiguous.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <gnu/lib-names.h>
+#include <link.h>
+#include <support/check.h>
+#include <support/xdlfcn.h>
+#include <support/xunistd.h>
+#include <sys/mman.h>
+#include <unistd.h>
+
+static int
+do_test (void)
+{
+ struct link_map *l = xdlopen (LIBC_SO, RTLD_NOW);
+
+ /* The dynamic loader fills holes with PROT_NONE mappings. */
+ if (!l->l_contiguous)
+ FAIL_EXIT1 ("libc.so link map is not contiguous");
+
+ /* Direct probing does not work because not everything is readable
+ due to PROT_NONE mappings. */
+ int pagesize = getpagesize ();
+ ElfW(Addr) addr = l->l_map_start;
+ TEST_COMPARE (addr % pagesize, 0);
+ while (addr < l->l_map_end)
+ {
+ void *expected = (void *) addr;
+ void *ptr = xmmap (expected, 1, PROT_READ | PROT_WRITE,
+ MAP_PRIVATE | MAP_ANONYMOUS, -1);
+ if (ptr == expected)
+ FAIL ("hole in libc.so memory image after %lu bytes",
+ (unsigned long int) (addr - l->l_map_start));
+ xmunmap (ptr, 1);
+ addr += pagesize;
+ }
+
+ xdlclose (l);
+
+ return 0;
+}
+#include <support/test-driver.c>
diff --git a/elf/tst-link-map-contiguous-main.c b/elf/tst-link-map-contiguous-main.c
new file mode 100644
index 0000000..2d1a054
--- /dev/null
+++ b/elf/tst-link-map-contiguous-main.c
@@ -0,0 +1,45 @@
+/* Check that the entire main program image is readable if contiguous.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <link.h>
+#include <support/check.h>
+#include <support/xdlfcn.h>
+
+static int
+do_test (void)
+{
+ struct link_map *l = xdlopen ("", RTLD_NOW);
+ if (!l->l_contiguous)
+ FAIL_UNSUPPORTED ("main link map is not contiguous");
+
+ /* This check only works if the kernel loaded the main program. The
+ dynamic loader replaces gaps with PROT_NONE mappings, resulting
+ in faults. */
+ volatile long int *p = (volatile long int *) l->l_map_start;
+ volatile long int *end = (volatile long int *) l->l_map_end;
+ while (p < end)
+ {
+ *p;
+ ++p;
+ }
+
+ xdlclose (l);
+
+ return 0;
+}
+#include <support/test-driver.c>
diff --git a/elf/tst-rtld-list-tunables.exp b/elf/tst-rtld-list-tunables.exp
index 9f5990f..8df6f59 100644
--- a/elf/tst-rtld-list-tunables.exp
+++ b/elf/tst-rtld-list-tunables.exp
@@ -13,6 +13,6 @@ glibc.malloc.top_pad: 0x20000 (min: 0x0, max: 0x[f]+)
glibc.malloc.trim_threshold: 0x0 (min: 0x0, max: 0x[f]+)
glibc.rtld.dynamic_sort: 2 (min: 1, max: 2)
glibc.rtld.enable_secure: 0 (min: 0, max: 1)
-glibc.rtld.execstack: 1 (min: 0, max: 1)
+glibc.rtld.execstack: 1 (min: 0, max: 2)
glibc.rtld.nns: 0x4 (min: 0x1, max: 0x10)
glibc.rtld.optional_static_tls: 0x200 (min: 0x0, max: 0x[f]+)
diff --git a/elf/tst-tls23-mod.c b/elf/tst-tls23-mod.c
new file mode 100644
index 0000000..3ee4c70
--- /dev/null
+++ b/elf/tst-tls23-mod.c
@@ -0,0 +1,32 @@
+/* DSO used by tst-tls23.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <tst-tls23.h>
+
+__thread struct tls tls_var0 __attribute__ ((visibility ("hidden")));
+
+struct tls *
+apply_tls (struct tls *p)
+{
+ INIT_TLS_CALL ();
+ BEFORE_TLS_CALL ();
+ tls_var0 = *p;
+ struct tls *ret = &tls_var0;
+ AFTER_TLS_CALL ();
+ return ret;
+}
diff --git a/elf/tst-tls23.c b/elf/tst-tls23.c
new file mode 100644
index 0000000..afe594c
--- /dev/null
+++ b/elf/tst-tls23.c
@@ -0,0 +1,106 @@
+/* Test that __tls_get_addr preserves caller-saved registers.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <dlfcn.h>
+#include <pthread.h>
+#include <support/xdlfcn.h>
+#include <support/xthread.h>
+#include <support/check.h>
+#include <support/test-driver.h>
+#include <tst-tls23.h>
+
+#ifndef IS_SUPPORTED
+# define IS_SUPPORTED() true
+#endif
+
+/* An architecture can define it to clobber caller-saved registers in
+ malloc below to verify that __tls_get_addr won't change caller-saved
+ registers. */
+#ifndef PREPARE_MALLOC
+# define PREPARE_MALLOC()
+#endif
+
+extern void * __libc_malloc (size_t);
+
+size_t malloc_counter = 0;
+
+void *
+malloc (size_t n)
+{
+ PREPARE_MALLOC ();
+ malloc_counter++;
+ return __libc_malloc (n);
+}
+
+static void *mod;
+static const char *modname = "tst-tls23-mod.so";
+
+static void
+open_mod (void)
+{
+ mod = xdlopen (modname, RTLD_LAZY);
+ printf ("open %s\n", modname);
+}
+
+static void
+close_mod (void)
+{
+ xdlclose (mod);
+ mod = NULL;
+ printf ("close %s\n", modname);
+}
+
+static void
+access_mod (const char *sym)
+{
+ struct tls var = { -4, -4, -4, -4 };
+ struct tls *(*f) (struct tls *) = xdlsym (mod, sym);
+ /* Check that our malloc is called. */
+ malloc_counter = 0;
+ struct tls *p = f (&var);
+ TEST_VERIFY (malloc_counter != 0);
+ printf ("access %s: %s() = %p\n", modname, sym, p);
+ TEST_VERIFY_EXIT (memcmp (p, &var, sizeof (var)) == 0);
+ ++(p->a);
+}
+
+static void *
+start (void *arg)
+{
+ access_mod ("apply_tls");
+ return arg;
+}
+
+static int
+do_test (void)
+{
+ if (!IS_SUPPORTED ())
+ return EXIT_UNSUPPORTED;
+
+ open_mod ();
+ pthread_t t = xpthread_create (NULL, start, NULL);
+ xpthread_join (t);
+ close_mod ();
+
+ return 0;
+}
+
+#include <support/test-driver.c>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strncase_l-power7.c b/elf/tst-tls23.h
index e9c9022..d0e7345 100644
--- a/sysdeps/powerpc/powerpc64/multiarch/strncase_l-power7.c
+++ b/elf/tst-tls23.h
@@ -1,4 +1,5 @@
-/* Copyright (C) 2013-2025 Free Software Foundation, Inc.
+/* Test that __tls_get_addr preserves caller-saved registers.
+ Copyright (C) 2025 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -15,16 +16,25 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
-#include <string.h>
+#include <stdint.h>
-#define __strncasecmp_l __strncasecmp_l_power7
+struct tls
+{
+ int64_t a, b, c, d;
+};
-#undef weak_alias
-#define weak_alias(a,b)
+extern struct tls *apply_tls (struct tls *);
-#undef libc_hidden_def
-#define libc_hidden_def(name)
+/* An architecture can define them to verify that caller-saved registers
+ aren't changed by __tls_get_addr. */
+#ifndef INIT_TLS_CALL
+# define INIT_TLS_CALL()
+#endif
-extern __typeof (strncasecmp_l) __strncasecmp_l_power7 attribute_hidden;
+#ifndef BEFORE_TLS_CALL
+# define BEFORE_TLS_CALL()
+#endif
-#include <string/strncase_l.c>
+#ifndef AFTER_TLS_CALL
+# define AFTER_TLS_CALL()
+#endif
diff --git a/gmon/Makefile b/gmon/Makefile
index 26051ed..b42c14a 100644
--- a/gmon/Makefile
+++ b/gmon/Makefile
@@ -62,8 +62,9 @@ tests-static += tst-gmon-static-pie
endif
endif
-# The mcount code won't work without a frame pointer.
-CFLAGS-mcount.c := -fno-omit-frame-pointer
+# The mcount code won't work without a frame pointer nor when memcpy or
+# memset are called.
+CFLAGS-mcount.c := -fno-omit-frame-pointer -fno-tree-loop-distribute-patterns
CFLAGS-tst-gmon.c := -fno-omit-frame-pointer -pg
tst-gmon-no-pie = yes
diff --git a/htl/Makefile b/htl/Makefile
index 603af24..82b7803 100644
--- a/htl/Makefile
+++ b/htl/Makefile
@@ -25,12 +25,7 @@ SYSDEPS := lockfile
LCLHDRS :=
libpthread-routines := \
- pt-destroy-specific \
pt-init-specific \
- pt-key-create \
- pt-key-delete \
- pt-getspecific \
- pt-setspecific \
pt-alloc \
pt-create \
pt-getattr \
@@ -40,7 +35,6 @@ libpthread-routines := \
pt-initialize \
pt-join \
pt-spin-inlines \
- pt-cleanup \
pt-testcancel \
pt-cancel \
pt-mutex-transfer-np \
@@ -148,6 +142,7 @@ routines := \
pt-barrierattr-setpshared \
pt-block \
pt-block-intr \
+ pt-cleanup \
pt-cond \
pt-cond-brdcast \
pt-cond-destroy \
@@ -161,7 +156,11 @@ routines := \
pt-condattr-init \
pt-condattr-setclock \
pt-condattr-setpshared \
+ pt-destroy-specific \
pt-getschedparam \
+ pt-getspecific \
+ pt-key-create \
+ pt-key-delete \
pt-mutex-checklocked \
pt-mutex-consistent \
pt-mutex-destroy \
@@ -205,6 +204,7 @@ routines := \
pt-setcancelstate \
pt-setcanceltype \
pt-setschedparam \
+ pt-setspecific \
pt-sigmask \
pt-sigstate \
pt-sigstate-destroy \
diff --git a/htl/Versions b/htl/Versions
index a07a3b3..40ee274 100644
--- a/htl/Versions
+++ b/htl/Versions
@@ -2,6 +2,8 @@ libc {
GLIBC_2.12 {
pthread_self;
+ __pthread_get_cleanup_stack;
+ __pthread_key_create;
__pthread_self;
pthread_attr_getdetachstate;
pthread_attr_getinheritsched;
@@ -12,6 +14,7 @@ libc {
pthread_attr_setschedpolicy;
pthread_equal;
pthread_getschedparam;
+ pthread_getspecific;
pthread_setschedparam;
pthread_attr_destroy;
pthread_attr_getguardsize;
@@ -45,6 +48,8 @@ libc {
pthread_condattr_getpshared;
pthread_condattr_setclock;
pthread_condattr_setpshared;
+ pthread_key_create;
+ pthread_key_delete;
pthread_mutex_destroy;
pthread_mutex_getprioceiling;
pthread_mutex_init;
@@ -79,6 +84,7 @@ libc {
pthread_rwlockattr_setpshared;
pthread_setcancelstate;
pthread_setcanceltype;
+ pthread_setspecific;
pthread_sigmask;
}
@@ -154,6 +160,9 @@ libc {
pthread_barrierattr_getpshared;
pthread_barrierattr_init;
pthread_barrierattr_setpshared;
+ pthread_getspecific;
+ pthread_key_create;
+ pthread_key_delete;
pthread_mutex_consistent; pthread_mutex_consistent_np;
pthread_mutex_getprioceiling;
pthread_mutex_setprioceiling;
@@ -174,6 +183,7 @@ libc {
pthread_rwlockattr_getpshared;
pthread_rwlockattr_init;
pthread_rwlockattr_setpshared;
+ pthread_setspecific;
}
GLIBC_PRIVATE {
@@ -203,6 +213,9 @@ libc {
__pthread_cond_wait;
__pthread_condattr_init;
__pthread_default_condattr;
+ __pthread_destroy_specific;
+ __pthread_getspecific;
+ __pthread_key_delete;
__pthread_mutex_checklocked;
__pthread_mutex_destroy;
__pthread_mutex_init;
@@ -214,6 +227,7 @@ libc {
__pthread_mutexattr_init;
__pthread_mutexattr_settype;
__pthread_once;
+ __pthread_setspecific;
__pthread_sigstate;
__pthread_sigstate_destroy;
__pthread_sigmask;
@@ -229,8 +243,6 @@ libpthread {
__errno_location; __h_errno_location;
}
GLIBC_2.12 {
- __pthread_get_cleanup_stack;
-
__pthread_mutex_transfer_np;
cthread_detach;
@@ -255,20 +267,16 @@ libpthread {
pthread_getattr_np;
pthread_getconcurrency; pthread_getcpuclockid;
- pthread_getspecific;
pthread_join;
- pthread_key_create; pthread_key_delete;
- __pthread_key_create;
-
pthread_kill;
__pthread_kill;
pthread_mutex_transfer_np;
pthread_setconcurrency;
- pthread_setschedprio; pthread_setspecific;
+ pthread_setschedprio;
pthread_testcancel;
pthread_yield;
@@ -315,8 +323,6 @@ libpthread {
__cthread_keycreate;
__cthread_getspecific;
__cthread_setspecific;
- __pthread_getspecific;
- __pthread_setspecific;
__pthread_getattr_np;
__pthread_enable_asynccancel;
__pthread_disable_asynccancel;
diff --git a/htl/forward.c b/htl/forward.c
index 0a7a696..21acf66 100644
--- a/htl/forward.c
+++ b/htl/forward.c
@@ -57,6 +57,3 @@ name decl \
FORWARD_NORETURN (__pthread_exit, void, (void *retval), (retval),
exit (EXIT_SUCCESS))
strong_alias (__pthread_exit, pthread_exit);
-
-FORWARD2 (__pthread_get_cleanup_stack, struct __pthread_cancelation_handler **,
- (void), (), return &__pthread_cleanup_stack);
diff --git a/htl/pt-cleanup.c b/htl/pt-cleanup.c
index 863c38f..76fdbe2 100644
--- a/htl/pt-cleanup.c
+++ b/htl/pt-cleanup.c
@@ -19,10 +19,16 @@
#include <pthread.h>
#include <pt-internal.h>
+#include <shlib-compat.h>
struct __pthread_cancelation_handler **
-__pthread_get_cleanup_stack (void)
+___pthread_get_cleanup_stack (void)
{
return &__pthread_cleanup_stack;
}
-hidden_def(__pthread_get_cleanup_stack)
+versioned_symbol (libc, ___pthread_get_cleanup_stack, __pthread_get_cleanup_stack, GLIBC_2_21);
+libc_hidden_ver (___pthread_get_cleanup_stack, __pthread_get_cleanup_stack)
+
+#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_21)
+compat_symbol (libpthread, ___pthread_get_cleanup_stack, __pthread_get_cleanup_stack, GLIBC_2_12);
+#endif
diff --git a/htl/pt-initialize.c b/htl/pt-initialize.c
index 658ba1e..b4e8b15 100644
--- a/htl/pt-initialize.c
+++ b/htl/pt-initialize.c
@@ -28,11 +28,6 @@
#if IS_IN (libpthread)
static const struct pthread_functions pthread_functions = {
.ptr___pthread_exit = __pthread_exit,
- .ptr___pthread_get_cleanup_stack = __pthread_get_cleanup_stack,
- .ptr_pthread_once = __pthread_once,
- .ptr___pthread_key_create = __pthread_key_create,
- .ptr___pthread_getspecific = __pthread_getspecific,
- .ptr___pthread_setspecific = __pthread_setspecific,
.ptr__IO_flockfile = _cthreads_flockfile,
.ptr__IO_funlockfile = _cthreads_funlockfile,
.ptr__IO_ftrylockfile = _cthreads_ftrylockfile,
diff --git a/htl/pt-internal.h b/htl/pt-internal.h
index d19579b..8b37838 100644
--- a/htl/pt-internal.h
+++ b/htl/pt-internal.h
@@ -299,6 +299,7 @@ extern error_t __pthread_init_specific (struct __pthread *thread);
/* Call the destructors on all of the thread specific data in THREAD.
THREAD must be the calling thread. */
extern void __pthread_destroy_specific (struct __pthread *thread);
+libc_hidden_proto (__pthread_destroy_specific)
/* Initialize newly create thread *THREAD's signal state data
diff --git a/hurd/Makefile b/hurd/Makefile
index cf70b8c..cbc3c23 100644
--- a/hurd/Makefile
+++ b/hurd/Makefile
@@ -19,6 +19,11 @@ subdir := hurd
include ../Makeconfig
+tests := test-sig-xstate \
+ test-sig-rpc-interrupted
+$(objpfx)test-sig-xstate: $(shared-thread-library)
+$(objpfx)test-sig-rpc-interrupted: $(shared-thread-library) $(objdir)/hurd/libhurduser.so
+
headers = \
$(interface-headers) \
hurd.h \
diff --git a/hurd/intr-msg.c b/hurd/intr-msg.c
index 1c2fe3f..f9bf5c1 100644
--- a/hurd/intr-msg.c
+++ b/hurd/intr-msg.c
@@ -183,9 +183,12 @@ _hurd_intr_rpc_mach_msg (mach_msg_header_t *msg,
switch (name)
{
case MACH_MSG_TYPE_MOVE_SEND:
- mach_port_t *ports = (mach_port_t *) data;
- for (i = 0; i < number; i++)
- __mach_port_deallocate (__mach_task_self (), *ports++);
+ {
+ mach_port_t *ports = (mach_port_t *) data;
+ for (i = 0; i < number; i++)
+ __mach_port_deallocate (__mach_task_self (),
+ *ports++);
+ }
if (ty->msgtl_header.msgt_longform)
ty->msgtl_name = MACH_MSG_TYPE_COPY_SEND;
else
diff --git a/hurd/test-sig-rpc-interrupted.c b/hurd/test-sig-rpc-interrupted.c
new file mode 100644
index 0000000..a89d70e
--- /dev/null
+++ b/hurd/test-sig-rpc-interrupted.c
@@ -0,0 +1,185 @@
+/* Test the state save/restore procedures during signal handling when an
+ interruptible RPC is restarted.
+
+ Copyright (C) 2024 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+
+#include <assert.h>
+#include <pthread.h>
+#include <signal.h>
+#include <stdbool.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+
+#include <mach/message.h>
+#include <mach/gnumach.h>
+#include <mach/mach_traps.h>
+#include <mach/mig_errors.h>
+#include <mach-shortcuts.h>
+#include <mach_init.h>
+#include <hurd/io.h>
+#include <hurd/io_reply.h>
+
+#include <support/check.h>
+#include <support/xthread.h>
+
+#include "test-xstate.h"
+
+void handler (int signum, siginfo_t *info, void *context)
+{
+ printf ("signal %d setting a different CPU state\n", signum);
+ char buf3[XSTATE_BUFFER_SIZE];
+ memset (buf3, 0x77, XSTATE_BUFFER_SIZE);
+ SET_XSTATE (buf3);
+}
+
+static const mach_msg_type_t RetCodeCheck = {
+ .msgt_name = (unsigned char) MACH_MSG_TYPE_INTEGER_32,
+ .msgt_size = 32,
+ .msgt_number = 1,
+ .msgt_inline = TRUE,
+ .msgt_longform = FALSE,
+ .msgt_deallocate = FALSE,
+ .msgt_unused = 0
+};
+
+
+/* Helper thread to simulate a proper RPC interruption during dignal handling */
+void* fake_interruptor (void *arg)
+{
+ int err;
+ sigset_t ss;
+ TEST_COMPARE (sigemptyset (&ss), 0);
+ TEST_COMPARE (sigaddset (&ss, SIGUSR1), 0);
+ TEST_COMPARE (sigprocmask (SIG_BLOCK, &ss, NULL), 0);
+
+ struct {
+ mach_msg_header_t Head;
+ } request;
+ mach_port_t rxport = *((mach_port_t*)arg);
+ err = mach_msg (&request.Head, MACH_RCV_MSG, 0, sizeof (request), rxport,
+ MACH_MSG_TIMEOUT_NONE, MACH_PORT_NULL);
+ TEST_COMPARE (err, MACH_MSG_SUCCESS);
+ TEST_COMPARE (request.Head.msgh_bits, 0x1112);
+ TEST_COMPARE (request.Head.msgh_size, sizeof (request.Head));
+ TEST_COMPARE (request.Head.msgh_id, 33000);
+
+ mig_reply_header_t reply;
+ reply.Head = request.Head;
+ reply.Head.msgh_id += 100;
+ reply.RetCodeType = RetCodeCheck;
+ reply.RetCode = KERN_SUCCESS;
+ err = mach_msg (&reply.Head, MACH_SEND_MSG, sizeof (reply), 0, MACH_PORT_NULL,
+ MACH_MSG_TIMEOUT_NONE, MACH_PORT_NULL);
+ TEST_COMPARE (err, MACH_MSG_SUCCESS);
+
+ return NULL;
+}
+
+
+/* Helper thread to send a signal to the main thread in the middle of
+ * an interruptible rpc */
+void* signal_sender (void *arg)
+{
+ int err;
+ sigset_t ss;
+ TEST_COMPARE (sigemptyset (&ss), 0);
+ TEST_COMPARE (sigaddset (&ss, SIGUSR1), 0);
+ TEST_COMPARE (sigprocmask (SIG_BLOCK, &ss, NULL), 0);
+
+ /* Receive the first request, we won't answer to this. */
+ struct {
+ mach_msg_header_t head;
+ char data[64];
+ } m1, m2;
+ mach_port_t rxport = *((mach_port_t*)arg);
+ memset (&m1, 0, sizeof (m1));
+ memset (&m2, 0, sizeof (m2));
+ err = mach_msg (&m1.head, MACH_RCV_MSG, 0, sizeof (m1), rxport,
+ MACH_MSG_TIMEOUT_NONE, MACH_PORT_NULL);
+ TEST_COMPARE (err, MACH_MSG_SUCCESS);
+
+ /* interrupt the ongoing rpc with a signal, using the
+ * interruptible rpc protocol */
+ pthread_t thintr = xpthread_create (NULL, fake_interruptor, arg);
+ TEST_COMPARE (kill (getpid (), SIGUSR1), 0);
+ xpthread_join (thintr);
+
+ /* Complete the interruption by sending EINTR */
+ mig_reply_header_t reply;
+ reply.Head = m1.head;
+ reply.Head.msgh_id += 100;
+ reply.RetCodeType = RetCodeCheck;
+ reply.RetCode = EINTR;
+ err = mach_msg (&reply.Head, MACH_SEND_MSG, sizeof (reply), 0, MACH_PORT_NULL,
+ MACH_MSG_TIMEOUT_NONE, MACH_PORT_NULL);
+ TEST_COMPARE (err, MACH_MSG_SUCCESS);
+
+ /* Receive the retried rpc, and check that it has the same payload
+ * as the first one. Port names might still be different. */
+ err = mach_msg (&m2.head, MACH_RCV_MSG, 0, sizeof (m2), rxport,
+ MACH_MSG_TIMEOUT_NONE, MACH_PORT_NULL);
+ TEST_COMPARE (m1.head.msgh_bits, m2.head.msgh_bits);
+ TEST_COMPARE (m1.head.msgh_size, m2.head.msgh_size);
+ TEST_COMPARE (m1.head.msgh_id, m2.head.msgh_id);
+ TEST_COMPARE_BLOB (m1.data, sizeof (m1.data), m2.data, sizeof (m2.data));
+
+ /* And finally make the rpc succeed by sending a valid reply */
+ err = io_read_reply (m2.head.msgh_remote_port, MACH_MSG_TYPE_MOVE_SEND_ONCE,
+ KERN_SUCCESS, NULL, 0);
+ TEST_COMPARE (err, MACH_MSG_SUCCESS);
+
+ return NULL;
+}
+
+
+static int do_test (void)
+{
+#if ! XSTATE_HELPERS_SUPPORTED
+ FAIL_UNSUPPORTED ("Test not supported on this arch.");
+#endif
+
+ /* Setup signal handling; we need to handle the signal in the main
+ * thread, the other ones will explicitely block SIGUSR1. */
+ struct sigaction act = { 0 };
+ act.sa_flags = SA_RESTART;
+ act.sa_sigaction = &handler;
+ TEST_COMPARE (sigaction (SIGUSR1, &act, NULL), 0);
+
+ mach_port_t fakeio;
+ int err;
+ err = mach_port_allocate (mach_task_self (), MACH_PORT_RIGHT_RECEIVE, &fakeio);
+ TEST_COMPARE (err, MACH_MSG_SUCCESS);
+
+ err = mach_port_insert_right (mach_task_self (), fakeio, fakeio,
+ MACH_MSG_TYPE_MAKE_SEND);
+ TEST_COMPARE (err, MACH_MSG_SUCCESS);
+
+ pthread_t thsender = xpthread_create (NULL, signal_sender, &fakeio);
+
+ char *buf;
+ mach_msg_type_number_t n;
+ TEST_COMPARE (io_read (fakeio, &buf, &n, 1, 2), 0);
+
+ xpthread_join (thsender);
+ return EXIT_SUCCESS;
+}
+
+#include <support/test-driver.c>
diff --git a/hurd/test-sig-xstate.c b/hurd/test-sig-xstate.c
new file mode 100644
index 0000000..0a68a44
--- /dev/null
+++ b/hurd/test-sig-xstate.c
@@ -0,0 +1,94 @@
+/* Test the state save/restore procedures during signal handling.
+
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+
+#include <assert.h>
+#include <pthread.h>
+#include <signal.h>
+#include <stdbool.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+
+#include <mach/message.h>
+#include <mach/gnumach.h>
+#include <mach/mach_traps.h>
+#include <mach-shortcuts.h>
+#include <mach_init.h>
+#include <hurd/io.h>
+#include <hurd/io_reply.h>
+
+#include <support/check.h>
+#include <support/xthread.h>
+
+#include "test-xstate.h"
+
+static volatile bool loopflag = true;
+
+void handler (int signum, siginfo_t *info, void *context)
+{
+ char buf3[XSTATE_BUFFER_SIZE];
+ memset (buf3, 0x77, XSTATE_BUFFER_SIZE);
+ SET_XSTATE (buf3);
+ printf ("signal %d setting a different CPU state\n", signum);
+ loopflag = false;
+}
+
+/* Helper thread to send a signal to the main thread */
+void* signal_sender (void *arg)
+{
+ sigset_t ss;
+ assert (! sigemptyset (&ss));
+ assert (! sigaddset (&ss, SIGUSR1));
+ assert (! sigprocmask (SIG_BLOCK, &ss, NULL));
+
+ TEST_COMPARE (kill (getpid (), SIGUSR1), 0);
+
+ return NULL;
+}
+
+static int do_test (void)
+{
+#if ! XSTATE_HELPERS_SUPPORTED
+ FAIL_UNSUPPORTED ("Test not supported on this arch.");
+#endif
+
+ struct sigaction act = { 0 };
+ act.sa_sigaction = &handler;
+ TEST_COMPARE (sigaction (SIGUSR1, &act, NULL), 0);
+
+ pthread_t thsender = xpthread_create (NULL, signal_sender, NULL);
+
+ char buf1[XSTATE_BUFFER_SIZE], buf2[XSTATE_BUFFER_SIZE];
+ memset (buf1, 0x33, XSTATE_BUFFER_SIZE);
+
+ SET_XSTATE (buf1);
+
+ while (loopflag)
+ ;
+
+ GET_XSTATE (buf2);
+ TEST_COMPARE_BLOB (buf1, sizeof (buf1), buf2, sizeof (buf2));
+
+ xpthread_join (thsender);
+ return EXIT_SUCCESS;
+}
+
+#include <support/test-driver.c>
diff --git a/hurd/test-xstate.h b/hurd/test-xstate.h
new file mode 100644
index 0000000..a8185dc
--- /dev/null
+++ b/hurd/test-xstate.h
@@ -0,0 +1,40 @@
+/* Helpers to test XSTATE during signal handling
+
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#ifndef _TEST_XSTATE_H
+#define _TEST_XSTATE_H
+
+#if defined __x86_64__ || defined __i386__
+#define XSTATE_HELPERS_SUPPORTED 1
+#define XSTATE_BUFFER_SIZE 16
+#define SET_XSTATE(b) do { \
+ asm volatile ("movups (%0),%%xmm0" :: "r" (b)); \
+ } while (0)
+
+#define GET_XSTATE(b) do { \
+ asm volatile ("movups %%xmm0,(%0)" :: "r" (b)); \
+ } while (0)
+
+#else
+#define XSTATE_HELPERS_SUPPORTED 0
+#define XSTATE_BUFFER_SIZE 1
+#define SET_XSTATE(b)
+#endif
+
+#endif /* _TEST_XSTATE_H */
diff --git a/iconv/iconv_prog.c b/iconv/iconv_prog.c
index 7dba5d8..558cfb1 100644
--- a/iconv/iconv_prog.c
+++ b/iconv/iconv_prog.c
@@ -436,7 +436,7 @@ input_error (const char *path)
static void
open_output_direct (void)
{
- output_fd = open64 (output_file, O_WRONLY | O_CREAT | O_TRUNC, 0777);
+ output_fd = open64 (output_file, O_WRONLY | O_CREAT | O_TRUNC, 0666);
if (output_fd < 0)
output_error ();
}
@@ -457,7 +457,7 @@ prepare_output_file (char **argv)
else
{
/* If iconv creates the output file, no overlap is possible. */
- output_fd = open64 (output_file, O_WRONLY | O_CREAT | O_EXCL, 0777);
+ output_fd = open64 (output_file, O_WRONLY | O_CREAT | O_EXCL, 0666);
if (output_fd >= 0)
output_buffer_size = copy_buffer_size;
else
diff --git a/iconv/tst-iconv_prog-buffer.sh b/iconv/tst-iconv_prog-buffer.sh
index 1c499d5..40340c3 100644
--- a/iconv/tst-iconv_prog-buffer.sh
+++ b/iconv/tst-iconv_prog-buffer.sh
@@ -75,6 +75,10 @@ run_iconv () {
}
check_out_expected () {
+ if test -x "$tmp/out" ; then
+ echo "error: iconv output file is executable"
+ failure=true
+ fi
if ! cmp -s "$tmp/out" "$tmp/expected" ; then
echo "error: iconv output difference" >&$logfd
echo "*** expected ***" >&$logfd
diff --git a/include/array_length.h b/include/array_length.h
index 2305e21..2a4f09f 100644
--- a/include/array_length.h
+++ b/include/array_length.h
@@ -33,4 +33,18 @@
VAR must evaluate to an array, not a pointer. */
#define array_end(var) (&(var)[array_length (var)])
+/* array_foreach (PTR, ARRAY) iterates over all the elements in an
+ array, assigning the locally defined pointer variable PTR to each
+ element in turn.
+
+ array_foreach_const (PTR, ARRAY) does the same, but *PTR is declared
+ const even if the array is not. */
+#define array_foreach(ptr, array) \
+ for (__typeof ((array)[0]) *ptr = (array) ; \
+ ptr < array_end (array) ; ptr++)
+
+#define array_foreach_const(ptr, array) \
+ for (const __typeof ((array)[0]) *ptr = (array) ; \
+ ptr < array_end (array) ; ptr++)
+
#endif /* _ARRAY_LENGTH_H */
diff --git a/include/ctype.h b/include/ctype.h
index 493a6f8..a15e5b6 100644
--- a/include/ctype.h
+++ b/include/ctype.h
@@ -24,33 +24,35 @@ libc_hidden_proto (toupper)
NL_CURRENT_INDIRECT. */
# include "../locale/localeinfo.h"
-# include <libc-tsd.h>
# ifndef CTYPE_EXTERN_INLINE /* Used by ctype/ctype-info.c, which see. */
# define CTYPE_EXTERN_INLINE extern inline
# endif
-__libc_tsd_define (extern, const uint16_t *, CTYPE_B)
-__libc_tsd_define (extern, const int32_t *, CTYPE_TOUPPER)
-__libc_tsd_define (extern, const int32_t *, CTYPE_TOLOWER)
+extern __thread const uint16_t * __libc_tsd_CTYPE_B
+ attribute_hidden attribute_tls_model_ie;
+extern __thread const int32_t * __libc_tsd_CTYPE_TOUPPER
+ attribute_hidden attribute_tls_model_ie;
+extern __thread const int32_t * __libc_tsd_CTYPE_TOLOWER
+ attribute_hidden attribute_tls_model_ie;
CTYPE_EXTERN_INLINE const uint16_t ** __attribute__ ((const))
__ctype_b_loc (void)
{
- return __libc_tsd_address (const uint16_t *, CTYPE_B);
+ return &__libc_tsd_CTYPE_B;
}
CTYPE_EXTERN_INLINE const int32_t ** __attribute__ ((const))
__ctype_toupper_loc (void)
{
- return __libc_tsd_address (const int32_t *, CTYPE_TOUPPER);
+ return &__libc_tsd_CTYPE_TOUPPER;
}
CTYPE_EXTERN_INLINE const int32_t ** __attribute__ ((const))
__ctype_tolower_loc (void)
{
- return __libc_tsd_address (const int32_t *, CTYPE_TOLOWER);
+ return &__libc_tsd_CTYPE_TOLOWER;
}
# ifndef __NO_CTYPE
@@ -64,6 +66,11 @@ __ctype_tolower_loc (void)
# define __isdigit_l(c, l) ({ int __c = (c); __c >= '0' && __c <= '9'; })
# endif /* Not __NO_CTYPE. */
+/* For use in initializers. */
+extern const char _nl_C_LC_CTYPE_class[] attribute_hidden;
+extern const uint32_t _nl_C_LC_CTYPE_toupper[] attribute_hidden;
+extern const uint32_t _nl_C_LC_CTYPE_tolower[] attribute_hidden;
+
# endif /* IS_IN (libc). */
#endif /* Not _ISOMAC. */
diff --git a/include/elf.h b/include/elf.h
index 14ed67f..1424982 100644
--- a/include/elf.h
+++ b/include/elf.h
@@ -15,6 +15,19 @@
# define ELF_NOTE_NEXT_OFFSET(namesz, descsz, align) \
ALIGN_UP (ELF_NOTE_DESC_OFFSET ((namesz), (align)) + (descsz), (align))
+# ifdef HIDDEN_VAR_NEEDS_DYNAMIC_RELOC
+# define DL_ADDRESS_WITHOUT_RELOC(expr) (expr)
+# else
+/* Evaluate EXPR without run-time relocation for it. EXPR should be an
+ array, an address of an object, or a string literal. */
+# define DL_ADDRESS_WITHOUT_RELOC(expr) \
+ ({ \
+ __auto_type _result = (expr); \
+ asm ("" : "+r" (_result)); \
+ _result; \
+ })
+# endif
+
/* Some information which is not meant for the public and therefore not
in <elf.h>. */
# include <dl-dtprocnum.h>
diff --git a/include/features.h b/include/features.h
index 44bc4bb..8515b06 100644
--- a/include/features.h
+++ b/include/features.h
@@ -513,7 +513,7 @@
/* Major and minor version number of the GNU C library package. Use
these macros to test for features in specific releases. */
#define __GLIBC__ 2
-#define __GLIBC_MINOR__ 41
+#define __GLIBC_MINOR__ 42
#define __GLIBC_PREREQ(maj, min) \
((__GLIBC__ << 16) + __GLIBC_MINOR__ >= ((maj) << 16) + (min))
diff --git a/include/libc-symbols.h b/include/libc-symbols.h
index 91f64fd..b407fa8 100644
--- a/include/libc-symbols.h
+++ b/include/libc-symbols.h
@@ -208,7 +208,7 @@
#define __make_section_unallocated(section_string) \
asm (".section " section_string "\n\t.previous");
-/* Tacking on "\n\t#" to the section name makes gcc put it's bogus
+/* Tacking on "\n\t#" to the section name makes gcc put its bogus
section attributes on what looks like a comment to the assembler. */
#ifdef HAVE_SECTION_QUOTES
# define __sec_comment "\"\n\t#\""
diff --git a/include/link.h b/include/link.h
index 518bfd1..41e5e54 100644
--- a/include/link.h
+++ b/include/link.h
@@ -365,6 +365,8 @@ struct auditstate
dynamic linker. */
extern struct r_debug_extended _r_debug_extended attribute_hidden;
+rtld_hidden_proto (_r_debug)
+
#if __ELF_NATIVE_CLASS == 32
# define symbind symbind32
# define LA_SYMBIND "la_symbind32"
diff --git a/include/rpc/rpc.h b/include/rpc/rpc.h
index f5cee6c..ba96783 100644
--- a/include/rpc/rpc.h
+++ b/include/rpc/rpc.h
@@ -3,8 +3,6 @@
# ifndef _ISOMAC
-#include <libc-tsd.h>
-
/* Now define the internal interfaces. */
extern unsigned long _create_xid (void);
@@ -47,7 +45,8 @@ extern void __rpc_thread_key_cleanup (void) attribute_hidden;
extern void __rpc_thread_destroy (void) attribute_hidden;
-__libc_tsd_define (extern, struct rpc_thread_variables *, RPC_VARS)
+extern __thread struct rpc_thread_variables *__libc_tsd_RPC_VARS
+ attribute_hidden attribute_tls_model_ie;
#define RPC_THREAD_VARIABLE(x) (__rpc_thread_variables()->x)
diff --git a/include/stdio.h b/include/stdio.h
index e48d709..3d917db 100644
--- a/include/stdio.h
+++ b/include/stdio.h
@@ -173,6 +173,10 @@ libc_hidden_proto (__fortify_fail)
/* The maximum number of varargs allowed in a __libc_message format string */
#define LIBC_MESSAGE_MAX_ARGS 4
+#define IOVEC_MAX_ERR_MSG "Fatal glibc error: Internal " \
+ "__libc_message error. Too many arguments.\n"
+#define IOVEC_MAX_ERR_MSG_LEN (sizeof (IOVEC_MAX_ERR_MSG) - 1)
+
_Noreturn void __libc_message_impl (const char *__fnt, ...) attribute_hidden
__attribute__ ((__format__ (__printf__, 1, 2)));
diff --git a/include/termios.h b/include/termios.h
index e2c35eb..d466082 100644
--- a/include/termios.h
+++ b/include/termios.h
@@ -2,7 +2,18 @@
#include <termios/termios.h>
#ifndef _ISOMAC
-/* Now define the internal interfaces. */
+extern speed_t __cfgetospeed (const struct termios *__termios_p);
+extern speed_t __cfgetispeed (const struct termios *__termios_p);
+extern int __cfsetospeed (struct termios *__termios_p, speed_t __speed);
+extern int __cfsetispeed (struct termios *__termios_p, speed_t __speed);
+extern int __cfsetspeed (struct termios *__termios_p, speed_t __speed);
+
+extern baud_t __cfgetobaud (const struct termios *__termios_p);
+extern baud_t __cfgetibaud (const struct termios *__termios_p);
+extern int __cfsetobaud (struct termios *__termios_p, baud_t __baud);
+extern int __cfsetibaud (struct termios *__termios_p, baud_t __baud);
+extern int __cfsetbaud (struct termios *__termios_p, baud_t __baud);
+
extern int __tcgetattr (int __fd, struct termios *__termios_p);
extern int __tcsetattr (int __fd, int __optional_actions,
const struct termios *__termios_p);
@@ -10,9 +21,17 @@ extern int __tcsetattr (int __fd, int __optional_actions,
extern int __libc_tcdrain (int __fd);
libc_hidden_proto (__tcgetattr)
-libc_hidden_proto (tcsetattr)
-libc_hidden_proto (cfsetispeed)
-libc_hidden_proto (cfsetospeed)
+libc_hidden_proto (__tcsetattr)
+libc_hidden_proto (__cfgetispeed)
+libc_hidden_proto (__cfgetospeed)
+libc_hidden_proto (__cfsetispeed)
+libc_hidden_proto (__cfsetospeed)
+libc_hidden_proto (__cfsetspeed)
+libc_hidden_proto (__cfgetibaud)
+libc_hidden_proto (__cfgetobaud)
+libc_hidden_proto (__cfsetibaud)
+libc_hidden_proto (__cfsetobaud)
+libc_hidden_proto (__cfsetbaud)
#endif
#endif
diff --git a/include/unistd.h b/include/unistd.h
index e241603..376ab5a 100644
--- a/include/unistd.h
+++ b/include/unistd.h
@@ -152,6 +152,7 @@ libc_hidden_proto (__ttyname_r)
extern __pid_t _Fork (void);
libc_hidden_proto (_Fork);
extern int __isatty (int __fd) attribute_hidden;
+extern int __isatty_nostatus (int __fd) attribute_hidden;
extern int __link (const char *__from, const char *__to);
extern int __symlink (const char *__from, const char *__to);
extern int __symlinkat (const char *__from, int __fd, const char *__to);
diff --git a/inet/bits/inet-fortified.h b/inet/bits/inet-fortified.h
index 6738221..cc476eb 100644
--- a/inet/bits/inet-fortified.h
+++ b/inet/bits/inet-fortified.h
@@ -45,15 +45,15 @@ __NTH (inet_pton (int __af,
__fortify_clang_warning_only_if_bos0_lt
(4, __dst, "inet_pton called with destination buffer size less than 4")
{
- size_t sz = 0;
+ size_t __sz = 0;
if (__af == AF_INET)
- sz = sizeof (struct in_addr);
+ __sz = sizeof (struct in_addr);
else if (__af == AF_INET6)
- sz = sizeof (struct in6_addr);
+ __sz = sizeof (struct in6_addr);
else
return __inet_pton_alias (__af, __src, __dst);
- return __glibc_fortify (inet_pton, sz, sizeof (char),
+ return __glibc_fortify (inet_pton, __sz, sizeof (char),
__glibc_objsize (__dst),
__af, __src, __dst);
};
diff --git a/inet/inet_ntoa.c b/inet/inet_ntoa.c
index a4543f6..2efd24e 100644
--- a/inet/inet_ntoa.c
+++ b/inet/inet_ntoa.c
@@ -23,15 +23,12 @@
/* The interface of this function is completely stupid, it requires a
static buffer. We relax this a bit in that we allow one buffer for
each thread. */
-static __thread char buffer[18];
+static __thread char buffer[INET_ADDRSTRLEN];
char *
inet_ntoa (struct in_addr in)
{
- unsigned char *bytes = (unsigned char *) &in;
- __snprintf (buffer, sizeof (buffer), "%d.%d.%d.%d",
- bytes[0], bytes[1], bytes[2], bytes[3]);
-
+ __inet_ntop (AF_INET, &in, buffer, sizeof buffer);
return buffer;
}
diff --git a/io/Makefile b/io/Makefile
index e06f3cb..435f5a9 100644
--- a/io/Makefile
+++ b/io/Makefile
@@ -91,7 +91,6 @@ routines := \
getcwd \
getdirname \
getwd \
- isatty \
lchmod \
lchown \
link \
diff --git a/io/Versions b/io/Versions
index 4e19540..04d196e 100644
--- a/io/Versions
+++ b/io/Versions
@@ -26,9 +26,6 @@ libc {
# g*
get_current_dir_name; getcwd; getwd;
- # i*
- isatty;
-
# l*
lchown; link; lockf; lseek;
diff --git a/io/fcntl.h b/io/fcntl.h
index 59dc7d4..132d83a 100644
--- a/io/fcntl.h
+++ b/io/fcntl.h
@@ -281,16 +281,17 @@ extern int creat64 (const char *__file, mode_t __mode) __nonnull ((1));
# define F_TEST 3 /* Test a region for other processes locks. */
# ifndef __USE_FILE_OFFSET64
-extern int lockf (int __fd, int __cmd, off_t __len);
+extern int lockf (int __fd, int __cmd, off_t __len) __wur;
# else
# ifdef __REDIRECT
-extern int __REDIRECT (lockf, (int __fd, int __cmd, __off64_t __len), lockf64);
+extern int __REDIRECT (lockf, (int __fd, int __cmd, __off64_t __len),
+ lockf64) __wur;
# else
# define lockf lockf64
# endif
# endif
# ifdef __USE_LARGEFILE64
-extern int lockf64 (int __fd, int __cmd, off64_t __len);
+extern int lockf64 (int __fd, int __cmd, off64_t __len) __wur;
# endif
#endif
diff --git a/io/tst-stat-time64.c b/io/tst-stat-time64.c
index a20265c..4415765 100644
--- a/io/tst-stat-time64.c
+++ b/io/tst-stat-time64.c
@@ -52,6 +52,12 @@ fstat_check (int fd, const char *path, struct stat *st)
static void
fstatat_check (int fd, const char *path, struct stat *st)
{
+ TEST_COMPARE (fstatat (fd, "", st, 0), -1);
+ TEST_COMPARE (errno, ENOENT);
+
+ TEST_COMPARE (fstatat (AT_FDCWD, "_non_existing_file", st, 0), -1);
+ TEST_COMPARE (errno, ENOENT);
+
TEST_COMPARE (fstatat (fd, path, st, 0), 0);
}
diff --git a/io/tst-stat.c b/io/tst-stat.c
index cc57aec..5e0bfcc 100644
--- a/io/tst-stat.c
+++ b/io/tst-stat.c
@@ -27,6 +27,7 @@
#include <sys/sysmacros.h>
#include <stdio.h>
#include <unistd.h>
+#include <stdlib.h>
static void
stat_check (int fd, const char *path, struct stat *st)
@@ -56,15 +57,30 @@ fstatat_check (int fd, const char *path, struct stat *st)
TEST_COMPARE (fstatat (fd, "", st, 0), -1);
TEST_COMPARE (errno, ENOENT);
+ TEST_COMPARE (fstatat (AT_FDCWD, "_non_existing_file", st, 0), -1);
+ TEST_COMPARE (errno, ENOENT);
+
TEST_COMPARE (fstatat (fd, path, st, 0), 0);
}
+static void
+fstatat_link (const char *path, struct stat *st)
+{
+ TEST_COMPARE (fstatat (AT_FDCWD, path, st, 0), -1);
+ TEST_COMPARE (errno, ENOENT);
+
+ TEST_COMPARE (fstatat (AT_FDCWD, path, st, AT_SYMLINK_NOFOLLOW), 0);
+ TEST_COMPARE (!S_ISLNK(st->st_mode), 0);
+}
+
typedef void (*test_t)(int, const char *path, struct stat *);
static int
do_test (void)
{
char *path;
+ char *tempdir = support_create_temp_directory ("tst-stat-");
+ char *linkname = xasprintf ("%s/tst-fstat.linkname", tempdir);
int fd = create_temp_file ("tst-fstat.", &path);
TEST_VERIFY_EXIT (fd >= 0);
support_write_file_string (path, "abc");
@@ -78,13 +94,13 @@ do_test (void)
printf ("warning: timestamp with nanoseconds not supported\n");
struct statx stx;
+ struct stat st;
TEST_COMPARE (statx (fd, path, 0, STATX_BASIC_STATS, &stx), 0);
test_t tests[] = { stat_check, lstat_check, fstat_check, fstatat_check };
for (int i = 0; i < array_length (tests); i++)
{
- struct stat st;
tests[i](fd, path, &st);
TEST_COMPARE (stx.stx_dev_major, major (st.st_dev));
@@ -108,6 +124,13 @@ do_test (void)
}
}
+ TEST_COMPARE (symlink ("tst-fstat.target", linkname), 0);
+ add_temp_file (linkname);
+ fstatat_link (linkname, &st);
+
+ free (linkname);
+ free (tempdir);
+
return 0;
}
diff --git a/libio/Makefile b/libio/Makefile
index e143ccd..f020f8e 100644
--- a/libio/Makefile
+++ b/libio/Makefile
@@ -101,6 +101,8 @@ tests = \
tst-fclose-unopened \
tst-fclose-unopened2 \
tst-fdopen-seek-failure \
+ tst-fflush \
+ tst-fflush-NULL \
tst-fgetc-after-eof \
tst-fgetwc \
tst-fgetws \
diff --git a/libio/filedoalloc.c b/libio/filedoalloc.c
index 9ddd75b..f360d96 100644
--- a/libio/filedoalloc.c
+++ b/libio/filedoalloc.c
@@ -61,16 +61,6 @@
#include <stdlib.h>
#include <unistd.h>
-/* Return the result of isatty, without changing errno. */
-static int
-local_isatty (int fd)
-{
- int save_errno = errno;
- int res = __isatty (fd);
- __set_errno (save_errno);
- return res;
-}
-
/* Allocate a file buffer, or switch to unbuffered I/O. Streams for
TTY devices default to line buffered. */
int
@@ -90,7 +80,7 @@ _IO_file_doallocate (FILE *fp)
#ifdef DEV_TTY_P
DEV_TTY_P (&st) ||
#endif
- local_isatty (fp->_fileno))
+ __isatty_nostatus (fp->_fileno))
fp->_flags |= _IO_LINE_BUF;
}
#if defined _STATBUF_ST_BLKSIZE
diff --git a/libio/fileops.c b/libio/fileops.c
index a59e248..0cce828 100644
--- a/libio/fileops.c
+++ b/libio/fileops.c
@@ -928,6 +928,16 @@ do_ftell (FILE *fp)
if (result == EOF)
return result;
+ if (result == 0 && offset < 0)
+ {
+ /* This happens for some character devices that always report
+ file offset 0 even after some data has been read (instead of
+ failing with ESPIPE). The fclose path ignores this
+ error. */
+ __set_errno (ESPIPE);
+ return EOF;
+ }
+
result += offset;
if (result < 0)
diff --git a/libio/stdio.h b/libio/stdio.h
index 4436525..d042b36 100644
--- a/libio/stdio.h
+++ b/libio/stdio.h
@@ -168,8 +168,11 @@ extern int renameat (int __oldfd, const char *__old, int __newfd,
#ifdef __USE_GNU
/* Flags for renameat2. */
# define RENAME_NOREPLACE (1 << 0)
+# define AT_RENAME_NOREPLACE RENAME_NOREPLACE
# define RENAME_EXCHANGE (1 << 1)
+# define AT_RENAME_EXCHANGE RENAME_EXCHANGE
# define RENAME_WHITEOUT (1 << 2)
+# define AT_RENAME_WHITEOUT RENAME_WHITEOUT
/* Rename file OLD relative to OLDFD to NEW relative to NEWFD, with
additional flags. */
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strncmp-power10.S b/libio/tst-fflush-NULL.c
index 4387908..4c8fe7c 100644
--- a/sysdeps/powerpc/powerpc64/multiarch/strncmp-power10.S
+++ b/libio/tst-fflush-NULL.c
@@ -1,4 +1,7 @@
-/* Copyright (C) 2024-2025 Free Software Foundation, Inc.
+/* Test that fflush (FILE) and fflush (NULL) are semantically equivalent.
+ This is the `fflush (NULL)` part.
+
+ Copyright (C) 2024 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -15,11 +18,7 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
-#if defined __LITTLE_ENDIAN__ && IS_IN (libc)
-#define STRNCMP __strncmp_power10
-
-#undef libc_hidden_builtin_def
-#define libc_hidden_builtin_def(name)
+#define FILE_FLUSH_TYPE 0
+#define S_FLUSH_TYPE "NULL"
-#include <sysdeps/powerpc/powerpc64/le/power10/strncmp.S>
-#endif
+#include "tst-fflush-skeleton.c"
diff --git a/libio/tst-fflush-skeleton.c b/libio/tst-fflush-skeleton.c
new file mode 100644
index 0000000..6341d3d
--- /dev/null
+++ b/libio/tst-fflush-skeleton.c
@@ -0,0 +1,158 @@
+/* Test that fflush (FILE) and fflush (NULL) are semantically equivalent.
+
+ Copyright (C) 2024 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+/* A success on this test doesn't imply the effectiveness of fflush as
+ we can't ensure that the file wasn't already in the expected state
+ before the call of the function. It only ensures that, if the test
+ fails, fflush is broken. */
+
+#include <assert.h>
+#include <fcntl.h>
+#include <stdbool.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+
+#include <sys/stat.h>
+#include <sys/mman.h>
+
+#include <support/check.h>
+#include <support/support.h>
+#include <support/temp_file.h>
+#include <support/test-driver.h>
+#include <support/xstdio.h>
+#include <support/xunistd.h>
+
+#define CONTENT_SZ_MAX 32
+#define TEST_FILE_COUNT 10
+
+struct file_tracking
+{
+ FILE *file;
+ char *name;
+ int fd;
+ char *mfile;
+} files[TEST_FILE_COUNT];
+
+static void
+file_init (int file)
+{
+ int fd = -1;
+
+ assert (file < TEST_FILE_COUNT);
+
+ files[file] = (struct file_tracking) { .fd = -1, };
+
+ xclose (create_temp_file ("tst-fflush", &files[file].name));
+
+ fd = xopen (files[file].name, O_RDONLY, 0);
+ files[file].mfile = xmmap (NULL, CONTENT_SZ_MAX, PROT_READ, MAP_SHARED, fd);
+ xclose (fd);
+}
+
+static void
+file_cleanup (int file)
+{
+ free (files[file].name);
+ xmunmap (files[file].mfile, CONTENT_SZ_MAX);
+ files[file] = (struct file_tracking) { .fd = -1, };
+}
+
+static void
+file_changed (int to_check, const char *mode)
+{
+ struct stat stats = { };
+ char expected[CONTENT_SZ_MAX] = { };
+
+ verbose_printf ("Check that %s (%d) exactly contains the data we put in\n",
+ files[to_check].name, to_check);
+
+ /* File should contain "N:M" where both N and M are one digit exactly. */
+ snprintf (expected, sizeof (expected), "%d:%d", FILE_FLUSH_TYPE, to_check);
+ TEST_COMPARE_BLOB (files[to_check].mfile, sizeof (expected),
+ expected, sizeof (expected));
+
+ TEST_VERIFY (fstat (files[to_check].fd, &stats) >= 0);
+ TEST_VERIFY (stats.st_size == 3);
+ /* In read mode we expect to be at position 1, in write mode at position 3 */
+ TEST_COMPARE (lseek (files[to_check].fd, 0, SEEK_CUR),
+ mode[0] == 'r' ? 1 : 3);
+
+ if (support_record_failure_is_failed ())
+ FAIL_EXIT1 ("exiting due to previous failure");
+
+ /* Not reached if the data doesn't match. */
+}
+
+static void
+file_flush (const char *mode)
+{
+ for (int i = 0; i < TEST_FILE_COUNT; i++)
+ {
+ files[i].file = xfopen (files[i].name, mode);
+ files[i].fd = fileno (files[i].file);
+ }
+
+ /* Print a unique identifier in each file, that is not too long nor contain
+ new line to not trigger _IO_OVERFLOW/_IO_SYNC. */
+ for (int i = 0; i < TEST_FILE_COUNT; i++)
+ {
+ if (mode[0] == 'r')
+ fgetc (files[i].file);
+ else
+ fprintf (files[i].file, "%d:%d", FILE_FLUSH_TYPE, i);
+ }
+
+ if (!FILE_FLUSH_TYPE)
+ TEST_VERIFY (fflush (NULL) == 0);
+ else
+ for (int i = 0; i < TEST_FILE_COUNT; i++)
+ TEST_VERIFY (fflush (files[i].file) == 0);
+
+ for (int i = 0; i < TEST_FILE_COUNT; i++)
+ {
+ verbose_printf ("Check that file %s has been modified after fflush\n",
+ files[i].name);
+ file_changed (i, mode);
+ }
+
+ for (int i = 0; i < TEST_FILE_COUNT; i++)
+ xfclose (files[i].file);
+}
+
+static int
+do_test (void)
+{
+ for (int i = 0; i < TEST_FILE_COUNT; i++)
+ file_init (i);
+
+ verbose_printf ("Checking fflush(" S_FLUSH_TYPE "), WRITE mode\n");
+ file_flush ("w");
+
+ verbose_printf ("Checking fflush(" S_FLUSH_TYPE "), READWRITE mode\n");
+ file_flush ("r+");
+
+ for (int i = 0; i < TEST_FILE_COUNT; i++)
+ file_cleanup (i);
+
+ return 0;
+}
+
+#include <support/test-driver.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strncase-power7.c b/libio/tst-fflush.c
index 5b45ed5..d3a4b78 100644
--- a/sysdeps/powerpc/powerpc32/power4/multiarch/strncase-power7.c
+++ b/libio/tst-fflush.c
@@ -1,5 +1,7 @@
-/* Optimized strcasecmp_l implementation for POWER7.
- Copyright (C) 2013-2025 Free Software Foundation, Inc.
+/* Test that fflush (FILE) and fflush (NULL) are semantically equivalent.
+ This is the `fflush (FILE)` part.
+
+ Copyright (C) 2024 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -16,11 +18,7 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
+#define FILE_FLUSH_TYPE 1
+#define S_FLUSH_TYPE "FILE"
-#include <string.h>
-
-#define __strncasecmp __strncasecmp_power7
-
-extern __typeof (strncasecmp) __strncasecmp_power7 attribute_hidden;
-
-#include <string/strncase.c>
+#include "tst-fflush-skeleton.c"
diff --git a/locale/iso-3166.def b/locale/iso-3166.def
index 3f3c82d..de62d20 100644
--- a/locale/iso-3166.def
+++ b/locale/iso-3166.def
@@ -76,6 +76,7 @@ DEFINE_COUNTRY_CODE ("EL SALVADOR", SV, SLV, 222)
DEFINE_COUNTRY_CODE ("EQUATORIAL GUINEA", GQ, GNQ, 226)
DEFINE_COUNTRY_CODE ("ERITREA", ER, ERI, 232)
DEFINE_COUNTRY_CODE ("ESTONIA", EE, EST, 233)
+DEFINE_COUNTRY_CODE ("ESWATINI", SZ, SWZ, 748)
DEFINE_COUNTRY_CODE ("ETHIOPIA", ET, ETH, 231)
DEFINE_COUNTRY_CODE ("FALKLAND ISLANDS (MALVINAS)", FK, FLK, 238)
DEFINE_COUNTRY_CODE ("FAROE ISLANDS", FO, FRO, 234)
@@ -137,7 +138,6 @@ DEFINE_COUNTRY_CODE ("LIECHTENSTEIN", LI, LIE, 438)
DEFINE_COUNTRY_CODE ("LITHUANIA", LT, LTU, 440)
DEFINE_COUNTRY_CODE ("LUXEMBOURG", LU, LUX, 442)
DEFINE_COUNTRY_CODE ("MACAU", MO, MAC, 446)
-DEFINE_COUNTRY_CODE ("MACEDONIA, THE FORMER YUGOSLAV REPUBLIC OF", MK, MKD, 807)
DEFINE_COUNTRY_CODE ("MADAGASCAR", MG, MDG, 450)
DEFINE_COUNTRY_CODE ("MALAWI", MW, MWI, 454)
DEFINE_COUNTRY_CODE ("MALAYSIA", MY, MYS, 458)
@@ -171,6 +171,7 @@ DEFINE_COUNTRY_CODE ("NIGER", NE, NER, 562)
DEFINE_COUNTRY_CODE ("NIGERIA", NG, NGA, 566)
DEFINE_COUNTRY_CODE ("NIUE", NU, NIU, 570)
DEFINE_COUNTRY_CODE ("NORFOLK ISLAND", NF, NFK, 574)
+DEFINE_COUNTRY_CODE ("NORTH MACEDONIA", MK, MKD, 807)
DEFINE_COUNTRY_CODE ("NORTHERN MARIANA ISLANDS", MP, MNP, 580)
DEFINE_COUNTRY_CODE ("NORWAY", NO, NOR, 578)
DEFINE_COUNTRY_CODE ("OMAN", OM, OMN, 512)
@@ -220,7 +221,6 @@ DEFINE_COUNTRY_CODE ("SRI LANKA", LK, LKA, 144)
DEFINE_COUNTRY_CODE ("SUDAN", SD, SDN, 729)
DEFINE_COUNTRY_CODE ("SURINAME", SR, SUR, 740)
DEFINE_COUNTRY_CODE ("SVALBARD AND JAN MAYEN", SJ, SJM, 744)
-DEFINE_COUNTRY_CODE ("SWAZILAND", SZ, SWZ, 748)
DEFINE_COUNTRY_CODE ("SWEDEN", SE, SWE, 752)
DEFINE_COUNTRY_CODE ("SWITZERLAND", CH, CHE, 756)
DEFINE_COUNTRY_CODE ("SYRIAN ARAB REPUBLIC", SY, SYR, 760)
diff --git a/locale/iso-4217.def b/locale/iso-4217.def
index 6b24e57..4248962 100644
--- a/locale/iso-4217.def
+++ b/locale/iso-4217.def
@@ -142,7 +142,7 @@ DEFINE_INT_CURR("SSP") /* South Sudanese Pound */
DEFINE_INT_CURR("STD") /* Sao Tome and Principe Dobra */
DEFINE_INT_CURR("SVC") /* El Salvador Colon */
DEFINE_INT_CURR("SYP") /* Syrian Arab Republic Pound */
-DEFINE_INT_CURR("SZL") /* Swaziland Lilangeni */
+DEFINE_INT_CURR("SZL") /* Eswatini Lilangeni */
DEFINE_INT_CURR("THB") /* Thai Baht */
DEFINE_INT_CURR("TJS") /* Tajikistani Somoni */
DEFINE_INT_CURR("TMM") /* Turkmenistan Manet */
diff --git a/locale/lc-ctype.c b/locale/lc-ctype.c
index 867f829..47be1c9 100644
--- a/locale/lc-ctype.c
+++ b/locale/lc-ctype.c
@@ -64,12 +64,9 @@ _nl_postload_ctype (void)
in fact using the global locale. */
if (_NL_CURRENT_LOCALE == &_nl_global_locale)
{
- __libc_tsd_set (const uint16_t *, CTYPE_B,
- (void *) _nl_global_locale.__ctype_b);
- __libc_tsd_set (const int32_t *, CTYPE_TOUPPER,
- (void *) _nl_global_locale.__ctype_toupper);
- __libc_tsd_set (const int32_t *, CTYPE_TOLOWER,
- (void *) _nl_global_locale.__ctype_tolower);
+ __libc_tsd_CTYPE_B = _nl_global_locale.__ctype_b;
+ __libc_tsd_CTYPE_TOUPPER = _nl_global_locale.__ctype_toupper;
+ __libc_tsd_CTYPE_TOLOWER = _nl_global_locale.__ctype_tolower;
}
#include <shlib-compat.h>
diff --git a/locale/localeinfo.h b/locale/localeinfo.h
index ab1b5e5..f503792 100644
--- a/locale/localeinfo.h
+++ b/locale/localeinfo.h
@@ -236,10 +236,9 @@ extern struct __locale_struct _nl_global_locale attribute_hidden;
/* This fetches the thread-local locale_t pointer, either one set with
uselocale or &_nl_global_locale. */
-#define _NL_CURRENT_LOCALE (__libc_tsd_get (locale_t, LOCALE))
-#include <libc-tsd.h>
-__libc_tsd_define (extern, locale_t, LOCALE)
-
+#define _NL_CURRENT_LOCALE __libc_tsd_LOCALE
+extern __thread locale_t __libc_tsd_LOCALE
+ attribute_hidden attribute_tls_model_ie;
/* For static linking it is desireable to avoid always linking in the code
and data for every category when we can tell at link time that they are
diff --git a/locale/programs/locarchive.c b/locale/programs/locarchive.c
index 2c19f4f..ad025a8 100644
--- a/locale/programs/locarchive.c
+++ b/locale/programs/locarchive.c
@@ -638,7 +638,8 @@ open_archive (struct locarhandle *ah, bool readonly)
|| st.st_dev != st2.st_dev
|| st.st_ino != st2.st_ino)
{
- (void) lockf64 (fd, F_ULOCK, sizeof (struct locarhead));
+ if (lockf64 (fd, F_ULOCK, sizeof (struct locarhead)) != 0)
+ error (EXIT_FAILURE, errno, _("cannot unlock archive header"));
close (fd);
continue;
}
@@ -650,14 +651,17 @@ open_archive (struct locarhandle *ah, bool readonly)
/* Read the header. */
if (TEMP_FAILURE_RETRY (read (fd, &head, sizeof (head))) != sizeof (head))
{
- (void) lockf64 (fd, F_ULOCK, sizeof (struct locarhead));
- error (EXIT_FAILURE, errno, _("cannot read archive header"));
+ int errval = errno;
+ if (lockf64 (fd, F_ULOCK, sizeof (struct locarhead)) != 0)
+ error (EXIT_FAILURE, errno, _("cannot unlock archive header"));
+ error (EXIT_FAILURE, errval, _("cannot read archive header"));
}
/* Check the magic value */
if (GET (head.magic) != AR_MAGIC)
{
- (void) lockf64 (fd, F_ULOCK, sizeof (struct locarhead));
+ if (lockf64 (fd, F_ULOCK, sizeof (struct locarhead)) != 0)
+ error (EXIT_FAILURE, errno, _("cannot unlock archive header"));
error (EXIT_FAILURE, 0, _("bad magic value in archive header"));
}
@@ -676,8 +680,10 @@ open_archive (struct locarhandle *ah, bool readonly)
MAP_SHARED | xflags, fd, 0);
if (ah->addr == MAP_FAILED)
{
- (void) lockf64 (fd, F_ULOCK, sizeof (struct locarhead));
- error (EXIT_FAILURE, errno, _("cannot map archive header"));
+ int errval = errno;
+ if (lockf64 (fd, F_ULOCK, sizeof (struct locarhead)) != 0)
+ error (EXIT_FAILURE, errno, _("cannot unlock archive header"));
+ error (EXIT_FAILURE, errval, _("cannot map archive header"));
}
ah->reserved = reserved;
ah->mmap_base = mmap_base;
diff --git a/locale/uselocale.c b/locale/uselocale.c
index 606d043..5df87a2 100644
--- a/locale/uselocale.c
+++ b/locale/uselocale.c
@@ -34,7 +34,7 @@ __uselocale (locale_t newloc)
{
const locale_t locobj
= newloc == LC_GLOBAL_LOCALE ? &_nl_global_locale : newloc;
- __libc_tsd_set (locale_t, LOCALE, locobj);
+ __libc_tsd_LOCALE = locobj;
#ifdef NL_CURRENT_INDIRECT
/* Now we must update all the per-category thread-local variables to
@@ -62,11 +62,9 @@ __uselocale (locale_t newloc)
#endif
/* Update the special tsd cache of some locale data. */
- __libc_tsd_set (const uint16_t *, CTYPE_B, (void *) locobj->__ctype_b);
- __libc_tsd_set (const int32_t *, CTYPE_TOLOWER,
- (void *) locobj->__ctype_tolower);
- __libc_tsd_set (const int32_t *, CTYPE_TOUPPER,
- (void *) locobj->__ctype_toupper);
+ __libc_tsd_CTYPE_B = locobj->__ctype_b;
+ __libc_tsd_CTYPE_TOLOWER = locobj->__ctype_tolower;
+ __libc_tsd_CTYPE_TOUPPER = locobj->__ctype_toupper;
}
return oldloc == &_nl_global_locale ? LC_GLOBAL_LOCALE : oldloc;
diff --git a/locale/xlocale.c b/locale/xlocale.c
index 30c094d..5e25c0e 100644
--- a/locale/xlocale.c
+++ b/locale/xlocale.c
@@ -18,18 +18,13 @@
#include <locale.h>
#include "localeinfo.h"
+#include <ctype.h>
#define DEFINE_CATEGORY(category, category_name, items, a) \
extern struct __locale_data _nl_C_##category;
#include "categories.def"
#undef DEFINE_CATEGORY
-/* Defined in locale/C-ctype.c. */
-extern const char _nl_C_LC_CTYPE_class[] attribute_hidden;
-extern const char _nl_C_LC_CTYPE_toupper[] attribute_hidden;
-extern const char _nl_C_LC_CTYPE_tolower[] attribute_hidden;
-
-
const struct __locale_struct _nl_C_locobj attribute_hidden =
{
.__locales =
diff --git a/localedata/locales/fa_IR b/localedata/locales/fa_IR
index aa0dd18..ab7f459 100644
--- a/localedata/locales/fa_IR
+++ b/localedata/locales/fa_IR
@@ -84,7 +84,7 @@ END LC_CTYPE
LC_COLLATE
copy "iso14651_t1"
-% CLDR collation rules for Ukrainian:
+% CLDR collation rules for Persian:
% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/fa.xml)
%
% <collation type="standard">
diff --git a/localedata/tst-locale.sh b/localedata/tst-locale.sh
index bdc7969..2460602 100755
--- a/localedata/tst-locale.sh
+++ b/localedata/tst-locale.sh
@@ -50,7 +50,7 @@ test_locale ()
"Outputdir: \"${out}\" failed"
exit 1
else
- echo -n "locale $out generated succesfully"
+ echo -n "locale $out generated successfully"
if [ $ret -eq 1 ]; then
echo " (with warnings)"
else
diff --git a/login/openpty.c b/login/openpty.c
index fc45add..f7fd6b7 100644
--- a/login/openpty.c
+++ b/login/openpty.c
@@ -124,7 +124,7 @@ __openpty (int *pptmx, int *pterminal, char *name,
/* XXX Should we ignore errors here? */
if (termp)
- tcsetattr (terminal, TCSAFLUSH, termp);
+ __tcsetattr (terminal, TCSAFLUSH, termp);
#ifdef TIOCSWINSZ
if (winp)
__ioctl (terminal, TIOCSWINSZ, winp);
diff --git a/mach/mach_init.c b/mach/mach_init.c
index 9b05e4e..6237e9c 100644
--- a/mach/mach_init.c
+++ b/mach/mach_init.c
@@ -35,6 +35,10 @@ __mach_init (void)
{
kern_return_t err;
+ if (__mach_host_self_)
+ /* Already initialized. */
+ return;
+
__mach_task_self_ = (__mach_task_self) ();
__mach_host_self_ = (__mach_host_self) ();
__mig_init (0);
diff --git a/malloc/Makefile b/malloc/Makefile
index e2b2c1a..83f6c87 100644
--- a/malloc/Makefile
+++ b/malloc/Makefile
@@ -63,7 +63,7 @@ tests := \
tst-realloc \
tst-reallocarray \
tst-safe-linking \
- tst-tcfree1 tst-tcfree2 tst-tcfree3 \
+ tst-tcfree1 tst-tcfree2 tst-tcfree3 tst-tcfree4 \
tst-trim1 \
tst-valloc \
# tests
@@ -147,6 +147,22 @@ tests-malloc-hugetlb1 = \
tests-malloc-hugetlb2 = \
$(filter-out $(tests-exclude-hugetlb2), $(tests))
+tests-exclude-largetcache = \
+ tst-compathooks-off \
+ tst-compathooks-on \
+ tst-interpose-nothread \
+ tst-interpose-static-nothread \
+ tst-interpose-static-thread \
+ tst-interpose-thread \
+ tst-malloc-backtrace \
+ tst-malloc-usable \
+ tst-malloc-usable-tunables \
+ tst-mallocstate \
+# tests-exclude-largetcache
+
+tests-malloc-largetcache = \
+ $(filter-out $(tests-exclude-largetcache), $(tests))
+
# -lmcheck needs __malloc_initialize_hook, which was deprecated in 2.24.
ifeq ($(have-GLIBC_2.23)$(build-shared),yesyes)
# Tests that don't play well with mcheck. They are either bugs in mcheck or
@@ -219,32 +235,61 @@ libmemusage-inhibit-o = $(filter-out .os,$(object-suffixes))
libc_malloc_debug-routines = malloc-debug $(sysdep_malloc_debug_routines)
libc_malloc_debug-inhibit-o = $(filter-out .os,$(object-suffixes))
-$(objpfx)tst-malloc-backtrace: $(shared-thread-library)
-$(objpfx)tst-malloc-thread-exit: $(shared-thread-library)
-$(objpfx)tst-malloc-thread-fail: $(shared-thread-library)
-$(objpfx)tst-mallocfork3: $(shared-thread-library)
-$(objpfx)tst-mallocfork3-mcheck: $(shared-thread-library)
-$(objpfx)tst-malloc-fork-deadlock: $(shared-thread-library)
-$(objpfx)tst-malloc-stats-cancellation: $(shared-thread-library)
-$(objpfx)tst-malloc-backtrace-mcheck: $(shared-thread-library)
-$(objpfx)tst-malloc-thread-exit-mcheck: $(shared-thread-library)
-$(objpfx)tst-malloc-thread-fail-mcheck: $(shared-thread-library)
-$(objpfx)tst-malloc-fork-deadlock-mcheck: $(shared-thread-library)
-$(objpfx)tst-malloc-stats-cancellation-mcheck: $(shared-thread-library)
-$(objpfx)tst-mallocfork3-malloc-check: $(shared-thread-library)
-$(objpfx)tst-malloc-backtrace-malloc-check: $(shared-thread-library)
-$(objpfx)tst-malloc-thread-exit-malloc-check: $(shared-thread-library)
-$(objpfx)tst-malloc-thread-fail-malloc-check: $(shared-thread-library)
-$(objpfx)tst-malloc-fork-deadlock-malloc-check: $(shared-thread-library)
-$(objpfx)tst-malloc-stats-cancellation-malloc-check: $(shared-thread-library)
-$(objpfx)tst-malloc-thread-exit-malloc-hugetlb1: $(shared-thread-library)
-$(objpfx)tst-malloc-thread-fail-malloc-hugetlb1: $(shared-thread-library)
-$(objpfx)tst-malloc-fork-deadlock-malloc-hugetlb1: $(shared-thread-library)
-$(objpfx)tst-malloc-stats-cancellation-malloc-hugetlb1: $(shared-thread-library)
-$(objpfx)tst-malloc-thread-exit-malloc-hugetlb2: $(shared-thread-library)
-$(objpfx)tst-malloc-thread-fail-malloc-hugetlb2: $(shared-thread-library)
-$(objpfx)tst-malloc-fork-deadlock-malloc-hugetlb2: $(shared-thread-library)
-$(objpfx)tst-malloc-stats-cancellation-malloc-hugetlb2: $(shared-thread-library)
+tests-link-with-libpthread = \
+ tst-aligned-alloc-random-thread \
+ tst-aligned-alloc-random-thread-cross \
+ tst-aligned-alloc-random-thread-cross-malloc-check \
+ tst-aligned-alloc-random-thread-cross-malloc-hugetlb1 \
+ tst-aligned-alloc-random-thread-cross-malloc-hugetlb2 \
+ tst-aligned-alloc-random-thread-malloc-check \
+ tst-aligned-alloc-random-thread-malloc-hugetlb1 \
+ tst-aligned-alloc-random-thread-malloc-hugetlb2 \
+ tst-interpose-thread \
+ tst-interpose-thread-malloc-check \
+ tst-interpose-thread-mcheck \
+ tst-malloc-backtrace \
+ tst-malloc-backtrace-malloc-check \
+ tst-malloc-backtrace-mcheck \
+ tst-malloc-fork-deadlock \
+ tst-malloc-fork-deadlock-malloc-check \
+ tst-malloc-fork-deadlock-malloc-hugetlb1 \
+ tst-malloc-fork-deadlock-malloc-hugetlb2 \
+ tst-malloc-fork-deadlock-mcheck \
+ tst-malloc-stats-cancellation \
+ tst-malloc-stats-cancellation-malloc-check \
+ tst-malloc-stats-cancellation-malloc-hugetlb1 \
+ tst-malloc-stats-cancellation-malloc-hugetlb2 \
+ tst-malloc-stats-cancellation-mcheck \
+ tst-malloc-tcache-leak \
+ tst-malloc-thread-exit \
+ tst-malloc-thread-exit-malloc-check \
+ tst-malloc-thread-exit-malloc-hugetlb1 \
+ tst-malloc-thread-exit-malloc-hugetlb2 \
+ tst-malloc-thread-exit-mcheck \
+ tst-malloc-thread-fail \
+ tst-malloc-thread-fail-malloc-check \
+ tst-malloc-thread-fail-malloc-hugetlb1 \
+ tst-malloc-thread-fail-malloc-hugetlb2 \
+ tst-malloc-thread-fail-mcheck \
+ tst-malloc_info \
+ tst-malloc_info-malloc-check \
+ tst-malloc_info-malloc-hugetlb1 \
+ tst-malloc_info-malloc-hugetlb2 \
+ tst-malloc_info-mcheck \
+ tst-mallocfork2 \
+ tst-mallocfork2-malloc-check \
+ tst-mallocfork3 \
+ tst-mallocfork3-malloc-check \
+ tst-mallocfork3-mcheck \
+ tst-memalign-3 \
+ tst-memalign-3-malloc-hugetlb1 \
+ tst-memalign-3-malloc-hugetlb2 \
+# tests-link-with-libpthread
+
+$(addprefix $(objpfx), $(tests-link-with-libpthread)): $(shared-thread-library)
+# Not all these tests are actually built, see tests-exclude-largetcache.
+$(tests-link-with-libpthread:%=$(objpfx)%-malloc-largetcache): \
+ $(shared-thread-library)
# These should be removed by `make clean'.
extra-objs = mcheck-init.o libmcheck.a
@@ -372,12 +417,9 @@ $(objpfx)tst-interpose-nothread: $(objpfx)tst-interpose-aux-nothread.o
$(objpfx)tst-interpose-nothread-mcheck: $(objpfx)tst-interpose-aux-nothread.o
$(objpfx)tst-interpose-nothread-malloc-check: \
$(objpfx)tst-interpose-aux-nothread.o
-$(objpfx)tst-interpose-thread: \
- $(objpfx)tst-interpose-aux-thread.o $(shared-thread-library)
-$(objpfx)tst-interpose-thread-mcheck: \
- $(objpfx)tst-interpose-aux-thread.o $(shared-thread-library)
-$(objpfx)tst-interpose-thread-malloc-check: \
- $(objpfx)tst-interpose-aux-thread.o $(shared-thread-library)
+$(objpfx)tst-interpose-thread: $(objpfx)tst-interpose-aux-thread.o
+$(objpfx)tst-interpose-thread-mcheck: $(objpfx)tst-interpose-aux-thread.o
+$(objpfx)tst-interpose-thread-malloc-check: $(objpfx)tst-interpose-aux-thread.o
$(objpfx)tst-interpose-static-nothread: $(objpfx)tst-interpose-aux-nothread.o
$(objpfx)tst-interpose-static-thread: \
$(objpfx)tst-interpose-aux-thread.o $(static-thread-library)
@@ -394,18 +436,6 @@ $(objpfx)tst-dynarray-fail-mem.out: $(objpfx)tst-dynarray-fail.out
$(common-objpfx)malloc/mtrace $(objpfx)tst-dynarray-fail.mtrace > $@; \
$(evaluate-test)
-$(objpfx)tst-malloc-tcache-leak: $(shared-thread-library)
-$(objpfx)tst-malloc_info: $(shared-thread-library)
-$(objpfx)tst-mallocfork2: $(shared-thread-library)
-$(objpfx)tst-malloc_info-mcheck: $(shared-thread-library)
-$(objpfx)tst-malloc_info-malloc-check: $(shared-thread-library)
-$(objpfx)tst-mallocfork2-malloc-check: $(shared-thread-library)
-$(objpfx)tst-malloc_info-malloc-hugetlb1: $(shared-thread-library)
-$(objpfx)tst-malloc_info-malloc-hugetlb2: $(shared-thread-library)
-$(objpfx)tst-memalign-3: $(shared-thread-library)
-$(objpfx)tst-memalign-3-malloc-hugetlb1: $(shared-thread-library)
-$(objpfx)tst-memalign-3-malloc-hugetlb2: $(shared-thread-library)
-
tst-compathooks-on-ENV = LD_PRELOAD=$(objpfx)libc_malloc_debug.so
tst-compathooks-on-mcheck-ENV = LD_PRELOAD=$(objpfx)libc_malloc_debug.so
tst-compathooks-on-malloc-check-ENV = \
@@ -419,15 +449,7 @@ $(objpfx)tst-mallocstate: $(objpfx)libc_malloc_debug.so
$(objpfx)tst-mallocstate-malloc-check: $(objpfx)libc_malloc_debug.so
$(objpfx)tst-aligned-alloc-random.out: $(objpfx)tst-aligned_alloc-lib.so
-$(objpfx)tst-aligned-alloc-random-thread: $(shared-thread-library)
-$(objpfx)tst-aligned-alloc-random-thread-malloc-check: $(shared-thread-library)
-$(objpfx)tst-aligned-alloc-random-thread-malloc-hugetlb1: $(shared-thread-library)
-$(objpfx)tst-aligned-alloc-random-thread-malloc-hugetlb2: $(shared-thread-library)
$(objpfx)tst-aligned-alloc-random-thread.out: $(objpfx)tst-aligned_alloc-lib.so
-$(objpfx)tst-aligned-alloc-random-thread-cross: $(shared-thread-library)
-$(objpfx)tst-aligned-alloc-random-thread-cross-malloc-check: $(shared-thread-library)
-$(objpfx)tst-aligned-alloc-random-thread-cross-malloc-hugetlb1: $(shared-thread-library)
-$(objpfx)tst-aligned-alloc-random-thread-cross-malloc-hugetlb2: $(shared-thread-library)
$(objpfx)tst-aligned-alloc-random-thread-cross.out: $(objpfx)tst-aligned_alloc-lib.so
$(objpfx)tst-malloc-random.out: $(objpfx)tst-aligned_alloc-lib.so
diff --git a/malloc/arena.c b/malloc/arena.c
index 5672c69..90c526f 100644
--- a/malloc/arena.c
+++ b/malloc/arena.c
@@ -113,9 +113,6 @@ static mstate free_list;
acquired. */
__libc_lock_define_initialized (static, list_lock);
-/* Already initialized? */
-static bool __malloc_initialized = false;
-
/**************************************************************************/
@@ -168,9 +165,6 @@ arena_for_chunk (mchunkptr ptr)
void
__malloc_fork_lock_parent (void)
{
- if (!__malloc_initialized)
- return;
-
/* We do not acquire free_list_lock here because we completely
reconstruct free_list in __malloc_fork_unlock_child. */
@@ -188,9 +182,6 @@ __malloc_fork_lock_parent (void)
void
__malloc_fork_unlock_parent (void)
{
- if (!__malloc_initialized)
- return;
-
for (mstate ar_ptr = &main_arena;; )
{
__libc_lock_unlock (ar_ptr->mutex);
@@ -204,9 +195,6 @@ __malloc_fork_unlock_parent (void)
void
__malloc_fork_unlock_child (void)
{
- if (!__malloc_initialized)
- return;
-
/* Push all arenas to the free list, except thread_arena, which is
attached to the current thread. */
__libc_lock_init (free_list_lock);
@@ -259,14 +247,9 @@ TUNABLE_CALLBACK_FNDECL (set_hugetlb, size_t)
static void tcache_key_initialize (void);
#endif
-static void
-ptmalloc_init (void)
+void
+__ptmalloc_init (void)
{
- if (__malloc_initialized)
- return;
-
- __malloc_initialized = true;
-
#if USE_TCACHE
tcache_key_initialize ();
#endif
diff --git a/malloc/malloc-check.c b/malloc/malloc-check.c
index 814a916..9532316 100644
--- a/malloc/malloc-check.c
+++ b/malloc/malloc-check.c
@@ -111,7 +111,7 @@ mem2chunk_check (void *mem, unsigned char **magic_p)
INTERNAL_SIZE_T sz, c;
unsigned char magic;
- if (!aligned_OK (mem))
+ if (misaligned_mem (mem))
return NULL;
p = mem2chunk (mem);
@@ -235,7 +235,7 @@ free_check (void *mem)
{
/* Mark the chunk as belonging to the library again. */
(void)tag_region (chunk2mem (p), memsize (p));
- _int_free (&main_arena, p, 1);
+ _int_free_chunk (&main_arena, p, chunksize (p), 1);
__libc_lock_unlock (main_arena.mutex);
}
__set_errno (err);
@@ -275,12 +275,12 @@ realloc_check (void *oldmem, size_t bytes)
malloc_printerr ("realloc(): invalid pointer");
const INTERNAL_SIZE_T oldsize = chunksize (oldp);
- chnb = checked_request2size (rb);
- if (chnb == 0)
+ if (rb > PTRDIFF_MAX)
{
__set_errno (ENOMEM);
goto invert;
}
+ chnb = checked_request2size (rb);
__libc_lock_lock (main_arena.mutex);
@@ -389,7 +389,7 @@ initialize_malloc_check (void)
{
/* This is the copy of the malloc initializer that we pulled in along with
malloc-check. This does not affect any of the libc malloc structures. */
- ptmalloc_init ();
+ __ptmalloc_init ();
TUNABLE_GET (check, int32_t, TUNABLE_CALLBACK (set_mallopt_check));
return __is_malloc_debug_enabled (MALLOC_CHECK_HOOK);
}
diff --git a/malloc/malloc-debug.c b/malloc/malloc-debug.c
index d208aa3..8bcb565 100644
--- a/malloc/malloc-debug.c
+++ b/malloc/malloc-debug.c
@@ -169,7 +169,7 @@ static void *
__debug_malloc (size_t bytes)
{
void *(*hook) (size_t, const void *) = atomic_forced_read (__malloc_hook);
- if (__builtin_expect (hook != NULL, 0))
+ if (__glibc_unlikely (hook != NULL))
return (*hook)(bytes, RETURN_ADDRESS (0));
void *victim = NULL;
@@ -193,7 +193,7 @@ static void
__debug_free (void *mem)
{
void (*hook) (void *, const void *) = atomic_forced_read (__free_hook);
- if (__builtin_expect (hook != NULL, 0))
+ if (__glibc_unlikely (hook != NULL))
{
(*hook)(mem, RETURN_ADDRESS (0));
return;
@@ -218,7 +218,7 @@ __debug_realloc (void *oldmem, size_t bytes)
{
void *(*hook) (void *, size_t, const void *) =
atomic_forced_read (__realloc_hook);
- if (__builtin_expect (hook != NULL, 0))
+ if (__glibc_unlikely (hook != NULL))
return (*hook)(oldmem, bytes, RETURN_ADDRESS (0));
size_t orig_bytes = bytes, oldsize = 0;
@@ -272,7 +272,7 @@ _debug_mid_memalign (size_t alignment, size_t bytes, const void *address)
{
void *(*hook) (size_t, size_t, const void *) =
atomic_forced_read (__memalign_hook);
- if (__builtin_expect (hook != NULL, 0))
+ if (__glibc_unlikely (hook != NULL))
return (*hook)(alignment, bytes, address);
void *victim = NULL;
@@ -371,7 +371,7 @@ __debug_calloc (size_t nmemb, size_t size)
}
void *(*hook) (size_t, const void *) = atomic_forced_read (__malloc_hook);
- if (__builtin_expect (hook != NULL, 0))
+ if (__glibc_unlikely (hook != NULL))
{
void *mem = (*hook)(bytes, RETURN_ADDRESS (0));
diff --git a/malloc/malloc-internal.h b/malloc/malloc-internal.h
index d88ed20..0f1b3a1 100644
--- a/malloc/malloc-internal.h
+++ b/malloc/malloc-internal.h
@@ -40,4 +40,7 @@ void __malloc_arena_thread_freeres (void) attribute_hidden;
/* Activate a standard set of debugging hooks. */
void __malloc_check_init (void) attribute_hidden;
+/* Initialize malloc. */
+void __ptmalloc_init (void) attribute_hidden;
+
#endif /* _MALLOC_INTERNAL_H */
diff --git a/malloc/malloc.c b/malloc/malloc.c
index a0bc733..9d646ab 100644
--- a/malloc/malloc.c
+++ b/malloc/malloc.c
@@ -291,16 +291,18 @@
#if USE_TCACHE
/* We want 64 entries. This is an arbitrary limit, which tunables can reduce. */
-# define TCACHE_MAX_BINS 64
-# define MAX_TCACHE_SIZE tidx2usize (TCACHE_MAX_BINS-1)
+# define TCACHE_SMALL_BINS 64
+# define TCACHE_LARGE_BINS 12 /* Up to 4M chunks */
+# define TCACHE_MAX_BINS (TCACHE_SMALL_BINS + TCACHE_LARGE_BINS)
+# define MAX_TCACHE_SMALL_SIZE tidx2csize (TCACHE_SMALL_BINS-1)
-/* Only used to pre-fill the tunables. */
+# define tidx2csize(idx) (((size_t) idx) * MALLOC_ALIGNMENT + MINSIZE)
# define tidx2usize(idx) (((size_t) idx) * MALLOC_ALIGNMENT + MINSIZE - SIZE_SZ)
/* When "x" is from chunksize(). */
# define csize2tidx(x) (((x) - MINSIZE) / MALLOC_ALIGNMENT)
/* When "x" is a user-provided size. */
-# define usize2tidx(x) csize2tidx (request2size (x))
+# define usize2tidx(x) csize2tidx (checked_request2size (x))
/* With rounding and alignment, the bins are...
idx 0 bytes 0..24 (64-bit) or 0..12 (32-bit)
@@ -313,7 +315,7 @@
# define TCACHE_FILL_COUNT 7
/* Maximum chunks in tcache bins for tunables. This value must fit the range
- of tcache->counts[] entries, else they may overflow. */
+ of tcache->num_slots[] entries, else they may overflow. */
# define MAX_TCACHE_COUNT UINT16_MAX
#endif
@@ -588,9 +590,12 @@ tag_at (void *ptr)
differs across systems, but is in all cases less than the maximum
representable value of a size_t.
*/
-void* __libc_malloc(size_t);
+void *__libc_malloc (size_t);
libc_hidden_proto (__libc_malloc)
+static void *__libc_calloc2 (size_t);
+static void *__libc_malloc2 (size_t);
+
/*
free(void* p)
Releases the chunk of memory pointed to by p, that had been previously
@@ -1086,8 +1091,6 @@ typedef struct malloc_chunk* mchunkptr;
/* Internal routines. */
static void* _int_malloc(mstate, size_t);
-static void _int_free (mstate, mchunkptr, int);
-static void _int_free_check (mstate, mchunkptr, INTERNAL_SIZE_T);
static void _int_free_chunk (mstate, mchunkptr, INTERNAL_SIZE_T, int);
static void _int_free_merge_chunk (mstate, mchunkptr, INTERNAL_SIZE_T);
static INTERNAL_SIZE_T _int_free_create_chunk (mstate,
@@ -1098,9 +1101,12 @@ static void* _int_realloc(mstate, mchunkptr, INTERNAL_SIZE_T,
INTERNAL_SIZE_T);
static void* _int_memalign(mstate, size_t, size_t);
#if IS_IN (libc)
-static void* _mid_memalign(size_t, size_t, void *);
+static void* _mid_memalign(size_t, size_t);
#endif
+#if USE_TCACHE
+static void malloc_printerr_tail(const char *str);
+#endif
static void malloc_printerr(const char *str) __attribute__ ((noreturn));
static void munmap_chunk(mchunkptr p);
@@ -1273,7 +1279,6 @@ nextchunk-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
sysmalloc: Returns untagged memory.
_int_malloc: Returns untagged memory.
- _int_free: Takes untagged memory.
_int_memalign: Returns untagged memory.
_int_memalign: Returns untagged memory.
_mid_memalign: Returns tagged memory.
@@ -1304,11 +1309,9 @@ nextchunk-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
/* Check if m has acceptable alignment */
-#define aligned_OK(m) (((unsigned long)(m) & MALLOC_ALIGN_MASK) == 0)
+#define misaligned_mem(m) ((uintptr_t)(m) & MALLOC_ALIGN_MASK)
-#define misaligned_chunk(p) \
- ((uintptr_t)(MALLOC_ALIGNMENT == CHUNK_HDR_SZ ? (p) : chunk2mem (p)) \
- & MALLOC_ALIGN_MASK)
+#define misaligned_chunk(p) (misaligned_mem( chunk2mem (p)))
/* pad request bytes into a usable size -- internal version */
/* Note: This must be a macro that evaluates to a compile time constant
@@ -1320,8 +1323,8 @@ nextchunk-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
/* Check if REQ overflows when padded and aligned and if the resulting
value is less than PTRDIFF_T. Returns the requested size or
- MINSIZE in case the value is less than MINSIZE, or 0 if any of the
- previous checks fail. */
+ MINSIZE in case the value is less than MINSIZE, or SIZE_MAX if any
+ of the previous checks fail. */
static __always_inline size_t
checked_request2size (size_t req) __nonnull (1)
{
@@ -1329,7 +1332,7 @@ checked_request2size (size_t req) __nonnull (1)
"PTRDIFF_MAX is not more than half of SIZE_MAX");
if (__glibc_unlikely (req > PTRDIFF_MAX))
- return 0;
+ return SIZE_MAX;
/* When using tagged memory, we cannot share the end of the user
block with the header for the next chunk, so ensure that we
@@ -1618,7 +1621,7 @@ unlink_chunk (mstate av, mchunkptr p)
mchunkptr fd = p->fd;
mchunkptr bk = p->bk;
- if (__builtin_expect (fd->bk != p || bk->fd != p, 0))
+ if (__glibc_unlikely (fd->bk != p || bk->fd != p))
malloc_printerr ("corrupted double-linked list");
fd->bk = bk;
@@ -1868,6 +1871,7 @@ struct malloc_par
INTERNAL_SIZE_T arena_max;
/* Transparent Large Page support. */
+ enum malloc_thp_mode_t thp_mode;
INTERNAL_SIZE_T thp_pagesize;
/* A value different than 0 means to align mmap allocation to hp_pagesize
add hp_flags on flags. */
@@ -1891,8 +1895,8 @@ struct malloc_par
char *sbrk_base;
#if USE_TCACHE
- /* Maximum number of buckets to use. */
- size_t tcache_bins;
+ /* Maximum number of small buckets to use. */
+ size_t tcache_small_bins;
size_t tcache_max_bytes;
/* Maximum number of chunks in each bucket. */
size_t tcache_count;
@@ -1924,12 +1928,13 @@ static struct malloc_par mp_ =
.mmap_threshold = DEFAULT_MMAP_THRESHOLD,
.trim_threshold = DEFAULT_TRIM_THRESHOLD,
#define NARENAS_FROM_NCORES(n) ((n) * (sizeof (long) == 4 ? 2 : 8))
- .arena_test = NARENAS_FROM_NCORES (1)
+ .arena_test = NARENAS_FROM_NCORES (1),
+ .thp_mode = malloc_thp_mode_not_supported
#if USE_TCACHE
,
.tcache_count = TCACHE_FILL_COUNT,
- .tcache_bins = TCACHE_MAX_BINS,
- .tcache_max_bytes = tidx2usize (TCACHE_MAX_BINS-1),
+ .tcache_small_bins = TCACHE_SMALL_BINS,
+ .tcache_max_bytes = MAX_TCACHE_SMALL_SIZE + 1,
.tcache_unsorted_limit = 0 /* No limit. */
#endif
};
@@ -1937,7 +1942,7 @@ static struct malloc_par mp_ =
/*
Initialize a malloc_state struct.
- This is called from ptmalloc_init () or from _int_new_arena ()
+ This is called from __ptmalloc_init () or from _int_new_arena ()
when creating a new arena.
*/
@@ -2008,6 +2013,11 @@ static inline void
madvise_thp (void *p, INTERNAL_SIZE_T size)
{
#ifdef MADV_HUGEPAGE
+ /* Only use __madvise if the system is using 'madvise' mode.
+ Otherwise the call is wasteful. */
+ if (mp_.thp_mode != malloc_thp_mode_madvise)
+ return;
+
/* Do not consider areas smaller than a huge page or if the tunable is
not active. */
if (mp_.thp_pagesize == 0 || size < mp_.thp_pagesize)
@@ -2065,12 +2075,13 @@ static void
do_check_chunk (mstate av, mchunkptr p)
{
unsigned long sz = chunksize (p);
- /* min and max possible addresses assuming contiguous allocation */
- char *max_address = (char *) (av->top) + chunksize (av->top);
- char *min_address = max_address - av->system_mem;
if (!chunk_is_mmapped (p))
{
+ /* min and max possible addresses assuming contiguous allocation */
+ char *max_address = (char *) (av->top) + chunksize (av->top);
+ char *min_address = max_address - av->system_mem;
+
/* Has legal address ... */
if (p != av->top)
{
@@ -2090,15 +2101,10 @@ do_check_chunk (mstate av, mchunkptr p)
}
else
{
- /* address is outside main heap */
- if (contiguous (av) && av->top != initial_top (av))
- {
- assert (((char *) p) < min_address || ((char *) p) >= max_address);
- }
/* chunk is page-aligned */
assert (((prev_size (p) + sz) & (GLRO (dl_pagesize) - 1)) == 0);
/* mem is aligned */
- assert (aligned_OK (chunk2mem (p)));
+ assert (!misaligned_chunk (p));
}
}
@@ -2122,7 +2128,7 @@ do_check_free_chunk (mstate av, mchunkptr p)
if ((unsigned long) (sz) >= MINSIZE)
{
assert ((sz & MALLOC_ALIGN_MASK) == 0);
- assert (aligned_OK (chunk2mem (p)));
+ assert (!misaligned_chunk (p));
/* ... matching footer field */
assert (prev_size (next_chunk (p)) == sz);
/* ... and is fully consolidated */
@@ -2201,7 +2207,7 @@ do_check_remalloced_chunk (mstate av, mchunkptr p, INTERNAL_SIZE_T s)
assert ((sz & MALLOC_ALIGN_MASK) == 0);
assert ((unsigned long) (sz) >= MINSIZE);
/* ... and alignment */
- assert (aligned_OK (chunk2mem (p)));
+ assert (!misaligned_chunk (p));
/* chunk is less than MINSIZE more than request */
assert ((long) (sz) - (long) (s) >= 0);
assert ((long) (sz) - (long) (s + MINSIZE) < 0);
@@ -2394,83 +2400,31 @@ do_check_malloc_state (mstate av)
/* ----------- Routines dealing with system allocation -------------- */
-/*
- sysmalloc handles malloc cases requiring more memory from the system.
- On entry, it is assumed that av->top does not have enough
- space to service request for nb bytes, thus requiring that av->top
- be extended or replaced.
- */
+/* Allocate a mmap chunk - used for large block sizes or as a fallback.
+ Round up size to nearest page. Add padding if MALLOC_ALIGNMENT is
+ larger than CHUNK_HDR_SZ. Add SIZE_SZ at the end since there is no
+ following chunk whose prev_size field could be used. */
static void *
-sysmalloc_mmap (INTERNAL_SIZE_T nb, size_t pagesize, int extra_flags, mstate av)
+sysmalloc_mmap (INTERNAL_SIZE_T nb, size_t pagesize, int extra_flags)
{
- long int size;
-
- /*
- Round up size to nearest page. For mmapped chunks, the overhead is one
- SIZE_SZ unit larger than for normal chunks, because there is no
- following chunk whose prev_size field could be used.
-
- See the front_misalign handling below, for glibc there is no need for
- further alignments unless we have have high alignment.
- */
- if (MALLOC_ALIGNMENT == CHUNK_HDR_SZ)
- size = ALIGN_UP (nb + SIZE_SZ, pagesize);
- else
- size = ALIGN_UP (nb + SIZE_SZ + MALLOC_ALIGN_MASK, pagesize);
-
- /* Don't try if size wraps around 0. */
- if ((unsigned long) (size) <= (unsigned long) (nb))
- return MAP_FAILED;
+ size_t padding = MALLOC_ALIGNMENT - CHUNK_HDR_SZ;
+ size_t size = ALIGN_UP (nb + padding + SIZE_SZ, pagesize);
char *mm = (char *) MMAP (NULL, size,
mtag_mmap_flags | PROT_READ | PROT_WRITE,
extra_flags);
if (mm == MAP_FAILED)
return mm;
-
-#ifdef MAP_HUGETLB
- if (!(extra_flags & MAP_HUGETLB))
+ if (extra_flags == 0)
madvise_thp (mm, size);
-#endif
__set_vma_name (mm, size, " glibc: malloc");
- /*
- The offset to the start of the mmapped region is stored in the prev_size
- field of the chunk. This allows us to adjust returned start address to
- meet alignment requirements here and in memalign(), and still be able to
- compute proper address argument for later munmap in free() and realloc().
- */
-
- INTERNAL_SIZE_T front_misalign; /* unusable bytes at front of new space */
-
- if (MALLOC_ALIGNMENT == CHUNK_HDR_SZ)
- {
- /* For glibc, chunk2mem increases the address by CHUNK_HDR_SZ and
- MALLOC_ALIGN_MASK is CHUNK_HDR_SZ-1. Each mmap'ed area is page
- aligned and therefore definitely MALLOC_ALIGN_MASK-aligned. */
- assert (((INTERNAL_SIZE_T) chunk2mem (mm) & MALLOC_ALIGN_MASK) == 0);
- front_misalign = 0;
- }
- else
- front_misalign = (INTERNAL_SIZE_T) chunk2mem (mm) & MALLOC_ALIGN_MASK;
-
- mchunkptr p; /* the allocated/returned chunk */
-
- if (front_misalign > 0)
- {
- ptrdiff_t correction = MALLOC_ALIGNMENT - front_misalign;
- p = (mchunkptr) (mm + correction);
- set_prev_size (p, correction);
- set_head (p, (size - correction) | IS_MMAPPED);
- }
- else
- {
- p = (mchunkptr) mm;
- set_prev_size (p, 0);
- set_head (p, size | IS_MMAPPED);
- }
+ /* Store offset to start of mmap in prev_size. */
+ mchunkptr p = (mchunkptr) (mm + padding);
+ set_prev_size (p, padding);
+ set_head (p, (size - padding) | IS_MMAPPED);
/* update statistics */
int new = atomic_fetch_add_relaxed (&mp_.n_mmaps, 1) + 1;
@@ -2480,7 +2434,7 @@ sysmalloc_mmap (INTERNAL_SIZE_T nb, size_t pagesize, int extra_flags, mstate av)
sum = atomic_fetch_add_relaxed (&mp_.mmapped_mem, size) + size;
atomic_max (&mp_.max_mmapped_mem, sum);
- check_chunk (av, p);
+ check_chunk (NULL, p);
return chunk2mem (p);
}
@@ -2516,10 +2470,8 @@ sysmalloc_mmap_fallback (long int *s, INTERNAL_SIZE_T nb,
if (mbrk == MAP_FAILED)
return MAP_FAILED;
-#ifdef MAP_HUGETLB
- if (!(extra_flags & MAP_HUGETLB))
+ if (extra_flags == 0)
madvise_thp (mbrk, size);
-#endif
__set_vma_name (mbrk, size, " glibc: malloc");
@@ -2574,11 +2526,11 @@ sysmalloc (INTERNAL_SIZE_T nb, mstate av)
{
/* There is no need to issue the THP madvise call if Huge Pages are
used directly. */
- mm = sysmalloc_mmap (nb, mp_.hp_pagesize, mp_.hp_flags, av);
+ mm = sysmalloc_mmap (nb, mp_.hp_pagesize, mp_.hp_flags);
if (mm != MAP_FAILED)
return mm;
}
- mm = sysmalloc_mmap (nb, pagesize, 0, av);
+ mm = sysmalloc_mmap (nb, pagesize, 0);
if (mm != MAP_FAILED)
return mm;
tried_mmap = true;
@@ -2662,7 +2614,7 @@ sysmalloc (INTERNAL_SIZE_T nb, mstate av)
/* We can at least try to use to mmap memory. If new_heap fails
it is unlikely that trying to allocate huge pages will
succeed. */
- char *mm = sysmalloc_mmap (nb, pagesize, 0, av);
+ char *mm = sysmalloc_mmap (nb, pagesize, 0);
if (mm != MAP_FAILED)
return mm;
}
@@ -2690,7 +2642,6 @@ sysmalloc (INTERNAL_SIZE_T nb, mstate av)
previous calls. Otherwise, we correct to page-align below.
*/
-#ifdef MADV_HUGEPAGE
/* Defined in brk.c. */
extern void *__curbrk;
if (__glibc_unlikely (mp_.thp_pagesize != 0))
@@ -2700,7 +2651,6 @@ sysmalloc (INTERNAL_SIZE_T nb, mstate av)
size = top - (uintptr_t) __curbrk;
}
else
-#endif
size = ALIGN_UP (size, GLRO(dl_pagesize));
/*
@@ -2975,11 +2925,9 @@ systrim (size_t pad, mstate av)
return 0;
/* Release in pagesize units and round down to the nearest page. */
-#ifdef MADV_HUGEPAGE
if (__glibc_unlikely (mp_.thp_pagesize != 0))
extra = ALIGN_DOWN (top_area - pad, mp_.thp_pagesize);
else
-#endif
extra = ALIGN_DOWN (top_area - pad, GLRO(dl_pagesize));
if (extra == 0)
@@ -3089,7 +3037,7 @@ mremap_chunk (mchunkptr p, size_t new_size)
p = (mchunkptr) (cp + offset);
- assert (aligned_OK (chunk2mem (p)));
+ assert (!misaligned_chunk (p));
assert (prev_size (p) == offset);
set_head (p, (new_size - offset) | IS_MMAPPED);
@@ -3117,12 +3065,13 @@ typedef struct tcache_entry
/* There is one of these for each thread, which contains the
per-thread cache (hence "tcache_perthread_struct"). Keeping
- overall size low is mildly important. Note that COUNTS and ENTRIES
- are redundant (we could have just counted the linked list each
- time), this is for performance reasons. */
+ overall size low is mildly important. The 'entries' field is linked list of
+ free blocks, while 'num_slots' contains the number of free blocks that can
+ be added. Each bin may allow a different maximum number of free blocks,
+ and can be disabled by initializing 'num_slots' to zero. */
typedef struct tcache_perthread_struct
{
- uint16_t counts[TCACHE_MAX_BINS];
+ uint16_t num_slots[TCACHE_MAX_BINS];
tcache_entry *entries[TCACHE_MAX_BINS];
} tcache_perthread_struct;
@@ -3156,122 +3105,185 @@ tcache_key_initialize (void)
}
}
+static __always_inline size_t
+large_csize2tidx(size_t nb)
+{
+ size_t idx = TCACHE_SMALL_BINS
+ + __builtin_clz (MAX_TCACHE_SMALL_SIZE)
+ - __builtin_clz (nb);
+ return idx;
+}
+
/* Caller must ensure that we know tc_idx is valid and there's room
for more chunks. */
static __always_inline void
-tcache_put (mchunkptr chunk, size_t tc_idx)
+tcache_put_n (mchunkptr chunk, size_t tc_idx, tcache_entry **ep, bool mangled)
{
tcache_entry *e = (tcache_entry *) chunk2mem (chunk);
- /* Mark this chunk as "in the tcache" so the test in _int_free will
+ /* Mark this chunk as "in the tcache" so the test in __libc_free will
detect a double free. */
e->key = tcache_key;
- e->next = PROTECT_PTR (&e->next, tcache->entries[tc_idx]);
- tcache->entries[tc_idx] = e;
- ++(tcache->counts[tc_idx]);
+ if (!mangled)
+ {
+ e->next = PROTECT_PTR (&e->next, *ep);
+ *ep = e;
+ }
+ else
+ {
+ e->next = PROTECT_PTR (&e->next, REVEAL_PTR (*ep));
+ *ep = PROTECT_PTR (ep, e);
+ }
+ --(tcache->num_slots[tc_idx]);
}
/* Caller must ensure that we know tc_idx is valid and there's
available chunks to remove. Removes chunk from the middle of the
list. */
static __always_inline void *
-tcache_get_n (size_t tc_idx, tcache_entry **ep)
+tcache_get_n (size_t tc_idx, tcache_entry **ep, bool mangled)
{
tcache_entry *e;
- if (ep == &(tcache->entries[tc_idx]))
+ if (!mangled)
e = *ep;
else
e = REVEAL_PTR (*ep);
- if (__glibc_unlikely (!aligned_OK (e)))
+ if (__glibc_unlikely (misaligned_mem (e)))
malloc_printerr ("malloc(): unaligned tcache chunk detected");
- if (ep == &(tcache->entries[tc_idx]))
- *ep = REVEAL_PTR (e->next);
+ if (!mangled)
+ *ep = REVEAL_PTR (e->next);
else
*ep = PROTECT_PTR (ep, REVEAL_PTR (e->next));
- --(tcache->counts[tc_idx]);
+ ++(tcache->num_slots[tc_idx]);
e->key = 0;
return (void *) e;
}
+static __always_inline void
+tcache_put (mchunkptr chunk, size_t tc_idx)
+{
+ tcache_put_n (chunk, tc_idx, &tcache->entries[tc_idx], false);
+}
+
/* Like the above, but removes from the head of the list. */
static __always_inline void *
tcache_get (size_t tc_idx)
{
- return tcache_get_n (tc_idx, & tcache->entries[tc_idx]);
+ return tcache_get_n (tc_idx, &tcache->entries[tc_idx], false);
}
-/* Iterates through the tcache linked list. */
-static __always_inline tcache_entry *
-tcache_next (tcache_entry *e)
+static __always_inline tcache_entry **
+tcache_location_large (size_t nb, size_t tc_idx, bool *mangled)
{
- return (tcache_entry *) REVEAL_PTR (e->next);
+ tcache_entry **tep = &(tcache->entries[tc_idx]);
+ tcache_entry *te = *tep;
+ while (te != NULL
+ && __glibc_unlikely (chunksize (mem2chunk (te)) < nb))
+ {
+ tep = & (te->next);
+ te = REVEAL_PTR (te->next);
+ *mangled = true;
+ }
+
+ return tep;
}
-/* Check if tcache is available for alloc by corresponding tc_idx. */
-static __always_inline bool
-tcache_available (size_t tc_idx)
+static __always_inline void
+tcache_put_large (mchunkptr chunk, size_t tc_idx)
{
- if (tc_idx < mp_.tcache_bins
- && tcache != NULL
- && tcache->counts[tc_idx] > 0)
- return true;
- else
- return false;
+ tcache_entry **entry;
+ bool mangled = false;
+ entry = tcache_location_large (chunksize (chunk), tc_idx, &mangled);
+
+ return tcache_put_n (chunk, tc_idx, entry, mangled);
}
-/* Verify if the suspicious tcache_entry is double free.
- It's not expected to execute very often, mark it as noinline. */
-static __attribute__ ((noinline)) void
-tcache_double_free_verify (tcache_entry *e, size_t tc_idx)
+static __always_inline void *
+tcache_get_large (size_t tc_idx, size_t nb)
{
- tcache_entry *tmp;
- size_t cnt = 0;
- LIBC_PROBE (memory_tcache_double_free, 2, e, tc_idx);
- for (tmp = tcache->entries[tc_idx];
- tmp;
- tmp = REVEAL_PTR (tmp->next), ++cnt)
- {
- if (cnt >= mp_.tcache_count)
- malloc_printerr ("free(): too many chunks detected in tcache");
- if (__glibc_unlikely (!aligned_OK (tmp)))
- malloc_printerr ("free(): unaligned chunk detected in tcache 2");
- if (tmp == e)
- malloc_printerr ("free(): double free detected in tcache 2");
- /* If we get here, it was a coincidence. We've wasted a
- few cycles, but don't abort. */
- }
+ tcache_entry **entry;
+ bool mangled = false;
+ entry = tcache_location_large (nb, tc_idx, &mangled);
+
+ if ((mangled && REVEAL_PTR (*entry) == NULL)
+ || (!mangled && *entry == NULL))
+ return NULL;
+
+ return tcache_get_n (tc_idx, entry, mangled);
}
-/* Try to free chunk to the tcache, if success return true.
- Caller must ensure that chunk and size are valid. */
-static __always_inline bool
-tcache_free (mchunkptr p, INTERNAL_SIZE_T size)
+static void tcache_init (void);
+
+static __always_inline void *
+tcache_get_align (size_t nb, size_t alignment)
{
- bool done = false;
- size_t tc_idx = csize2tidx (size);
- if (tcache != NULL && tc_idx < mp_.tcache_bins)
+ if (nb < mp_.tcache_max_bytes)
{
- /* Check to see if it's already in the tcache. */
- tcache_entry *e = (tcache_entry *) chunk2mem (p);
+ if (__glibc_unlikely (tcache == NULL))
+ {
+ tcache_init ();
+ return NULL;
+ }
- /* This test succeeds on double free. However, we don't 100%
- trust it (it also matches random payload data at a 1 in
- 2^<size_t> chance), so verify it's not an unlikely
- coincidence before aborting. */
- if (__glibc_unlikely (e->key == tcache_key))
- tcache_double_free_verify (e, tc_idx);
+ size_t tc_idx = csize2tidx (nb);
+ if (__glibc_unlikely (tc_idx >= TCACHE_SMALL_BINS))
+ tc_idx = large_csize2tidx (nb);
+
+ /* The tcache itself isn't encoded, but the chain is. */
+ tcache_entry **tep = & tcache->entries[tc_idx];
+ tcache_entry *te = *tep;
+ bool mangled = false;
+ size_t csize;
+
+ while (te != NULL
+ && ((csize = chunksize (mem2chunk (te))) < nb
+ || (csize == nb
+ && !PTR_IS_ALIGNED (te, alignment))))
+ {
+ tep = & (te->next);
+ te = REVEAL_PTR (te->next);
+ mangled = true;
+ }
+
+ if (te != NULL
+ && csize == nb
+ && PTR_IS_ALIGNED (te, alignment))
+ return tag_new_usable (tcache_get_n (tc_idx, tep, mangled));
+ }
+ return NULL;
+}
- if (tcache->counts[tc_idx] < mp_.tcache_count)
+/* Verify if the suspicious tcache_entry is double free.
+ It's not expected to execute very often, mark it as noinline. */
+static __attribute__ ((noinline)) void
+tcache_double_free_verify (tcache_entry *e)
+{
+ tcache_entry *tmp;
+ for (size_t tc_idx = 0; tc_idx < TCACHE_MAX_BINS; ++tc_idx)
+ {
+ size_t cnt = 0;
+ LIBC_PROBE (memory_tcache_double_free, 2, e, tc_idx);
+ for (tmp = tcache->entries[tc_idx];
+ tmp;
+ tmp = REVEAL_PTR (tmp->next), ++cnt)
{
- tcache_put (p, tc_idx);
- done = true;
+ if (cnt >= mp_.tcache_count)
+ malloc_printerr ("free(): too many chunks detected in tcache");
+ if (__glibc_unlikely (misaligned_mem (tmp)))
+ malloc_printerr ("free(): unaligned chunk detected in tcache 2");
+ if (tmp == e)
+ malloc_printerr ("free(): double free detected in tcache 2");
}
}
- return done;
+ /* No double free detected - it might be in a tcache of another thread,
+ or user data that happens to match the key. Since we are not sure,
+ clear the key and retry freeing it. */
+ e->key = 0;
+ __libc_free (e);
}
static void
@@ -3295,7 +3307,7 @@ tcache_thread_shutdown (void)
while (tcache_tmp->entries[i])
{
tcache_entry *e = tcache_tmp->entries[i];
- if (__glibc_unlikely (!aligned_OK (e)))
+ if (__glibc_unlikely (misaligned_mem (e)))
malloc_printerr ("tcache_thread_shutdown(): "
"unaligned tcache chunk detected");
tcache_tmp->entries[i] = REVEAL_PTR (e->next);
@@ -3306,73 +3318,45 @@ tcache_thread_shutdown (void)
__libc_free (tcache_tmp);
}
+/* Initialize tcache. In the rare case there isn't any memory available,
+ later calls will retry initialization. */
static void
-tcache_init(void)
+tcache_init (void)
{
- mstate ar_ptr;
- void *victim = NULL;
- const size_t bytes = sizeof (tcache_perthread_struct);
-
if (tcache_shutting_down)
return;
- arena_get (ar_ptr, bytes);
- victim = _int_malloc (ar_ptr, bytes);
- if (!victim && ar_ptr != NULL)
- {
- ar_ptr = arena_get_retry (ar_ptr, bytes);
- victim = _int_malloc (ar_ptr, bytes);
- }
-
+ /* Check minimum mmap chunk is larger than max tcache size. This means
+ mmap chunks with their different layout are never added to tcache. */
+ if (MAX_TCACHE_SMALL_SIZE >= GLRO (dl_pagesize) / 2)
+ malloc_printerr ("max tcache size too large");
- if (ar_ptr != NULL)
- __libc_lock_unlock (ar_ptr->mutex);
+ size_t bytes = sizeof (tcache_perthread_struct);
+ tcache = (tcache_perthread_struct *) __libc_malloc2 (bytes);
- /* In a low memory situation, we may not be able to allocate memory
- - in which case, we just keep trying later. However, we
- typically do this very early, so either there is sufficient
- memory, or there isn't enough memory to do non-trivial
- allocations anyway. */
- if (victim)
+ if (tcache != NULL)
{
- tcache = (tcache_perthread_struct *) victim;
- memset (tcache, 0, sizeof (tcache_perthread_struct));
+ memset (tcache, 0, bytes);
+ for (int i = 0; i < TCACHE_MAX_BINS; i++)
+ tcache->num_slots[i] = mp_.tcache_count;
}
-
}
-# define MAYBE_INIT_TCACHE() \
- if (__glibc_unlikely (tcache == NULL)) \
- tcache_init();
-
-/* Trying to alloc BYTES from tcache. If tcache is available, chunk
- is allocated and stored to MEMPTR, otherwise, MEMPTR is NULL.
- It returns true if error occurs, else false. */
-static __always_inline bool
-tcache_try_malloc (size_t bytes, void **memptr)
+static void * __attribute_noinline__
+tcache_calloc_init (size_t bytes)
{
- /* int_free also calls request2size, be careful to not pad twice. */
- size_t tbytes = checked_request2size (bytes);
- if (tbytes == 0)
- {
- __set_errno (ENOMEM);
- return true;
- }
-
- size_t tc_idx = csize2tidx (tbytes);
-
- MAYBE_INIT_TCACHE ();
-
- if (tcache_available (tc_idx))
- *memptr = tcache_get (tc_idx);
- else
- *memptr = NULL;
+ tcache_init ();
+ return __libc_calloc2 (bytes);
+}
- return false;
+static void * __attribute_noinline__
+tcache_malloc_init (size_t bytes)
+{
+ tcache_init ();
+ return __libc_malloc2 (bytes);
}
#else /* !USE_TCACHE */
-# define MAYBE_INIT_TCACHE()
static void
tcache_thread_shutdown (void)
@@ -3390,11 +3374,6 @@ __libc_malloc2 (size_t bytes)
mstate ar_ptr;
void *victim;
- if (!__malloc_initialized)
- ptmalloc_init ();
-
- MAYBE_INIT_TCACHE ();
-
if (SINGLE_THREAD_P)
{
victim = tag_new_usable (_int_malloc (&main_arena, bytes));
@@ -3429,10 +3408,27 @@ void *
__libc_malloc (size_t bytes)
{
#if USE_TCACHE
- size_t tc_idx = csize2tidx (checked_request2size (bytes));
+ size_t nb = checked_request2size (bytes);
+
+ if (nb < mp_.tcache_max_bytes)
+ {
+ size_t tc_idx = csize2tidx (nb);
+ if(__glibc_unlikely (tcache == NULL))
+ return tcache_malloc_init (bytes);
- if (tcache_available (tc_idx))
- return tag_new_usable (tcache_get (tc_idx));
+ if (__glibc_likely (tc_idx < TCACHE_SMALL_BINS))
+ {
+ if (tcache->entries[tc_idx] != NULL)
+ return tag_new_usable (tcache_get (tc_idx));
+ }
+ else
+ {
+ tc_idx = large_csize2tidx (nb);
+ void *victim = tcache_get_large (tc_idx, nb);
+ if (victim != NULL)
+ return tag_new_usable (victim);
+ }
+ }
#endif
return __libc_malloc2 (bytes);
@@ -3442,7 +3438,6 @@ libc_hidden_def (__libc_malloc)
void
__libc_free (void *mem)
{
- mstate ar_ptr;
mchunkptr p; /* chunk corresponding to mem */
if (mem == NULL) /* free(0) has no effect */
@@ -3453,37 +3448,51 @@ __libc_free (void *mem)
if (__glibc_unlikely (mtag_enabled))
*(volatile char *)mem;
- int err = errno;
-
p = mem2chunk (mem);
- if (chunk_is_mmapped (p)) /* release mmapped memory. */
- {
- /* See if the dynamic brk/mmap threshold needs adjusting.
- Dumped fake mmapped chunks do not affect the threshold. */
- if (!mp_.no_dyn_threshold
- && chunksize_nomask (p) > mp_.mmap_threshold
- && chunksize_nomask (p) <= DEFAULT_MMAP_THRESHOLD_MAX)
- {
- mp_.mmap_threshold = chunksize (p);
- mp_.trim_threshold = 2 * mp_.mmap_threshold;
- LIBC_PROBE (memory_mallopt_free_dyn_thresholds, 2,
- mp_.mmap_threshold, mp_.trim_threshold);
- }
- munmap_chunk (p);
- }
- else
+ /* Mark the chunk as belonging to the library again. */
+ tag_region (chunk2mem (p), memsize (p));
+
+ INTERNAL_SIZE_T size = chunksize (p);
+
+ if (__glibc_unlikely (misaligned_chunk (p)))
+ return malloc_printerr_tail ("free(): invalid pointer");
+
+ check_inuse_chunk (arena_for_chunk (p), p);
+
+#if USE_TCACHE
+ if (__glibc_likely (size < mp_.tcache_max_bytes && tcache != NULL))
{
- MAYBE_INIT_TCACHE ();
+ /* Check to see if it's already in the tcache. */
+ tcache_entry *e = (tcache_entry *) chunk2mem (p);
- /* Mark the chunk as belonging to the library again. */
- (void)tag_region (chunk2mem (p), memsize (p));
+ /* Check for double free - verify if the key matches. */
+ if (__glibc_unlikely (e->key == tcache_key))
+ return tcache_double_free_verify (e);
- ar_ptr = arena_for_chunk (p);
- _int_free (ar_ptr, p, 0);
+ size_t tc_idx = csize2tidx (size);
+ if (__glibc_likely (tc_idx < TCACHE_SMALL_BINS))
+ {
+ if (__glibc_likely (tcache->num_slots[tc_idx] != 0))
+ return tcache_put (p, tc_idx);
+ }
+ else
+ {
+ tc_idx = large_csize2tidx (size);
+ if (size >= MINSIZE
+ && !chunk_is_mmapped (p)
+ && __glibc_likely (tcache->num_slots[tc_idx] != 0))
+ return tcache_put_large (p, tc_idx);
+ }
}
+#endif
+
+ /* Check size >= MINSIZE and p + size does not overflow. */
+ if (__glibc_unlikely (__builtin_add_overflow_p ((uintptr_t) p, size - MINSIZE,
+ (uintptr_t) 0)))
+ return malloc_printerr_tail ("free(): invalid size");
- __set_errno (err);
+ _int_free_chunk (arena_for_chunk (p), p, size, 0);
}
libc_hidden_def (__libc_free)
@@ -3495,9 +3504,6 @@ __libc_realloc (void *oldmem, size_t bytes)
void *newp; /* chunk to return */
- if (!__malloc_initialized)
- ptmalloc_init ();
-
#if REALLOC_ZERO_BYTES_FREES
if (bytes == 0 && oldmem != NULL)
{
@@ -3543,16 +3549,16 @@ __libc_realloc (void *oldmem, size_t bytes)
never wraps around at the end of the address space. Therefore
we can exclude some size values which might appear here by
accident or by "design" from some intruder. */
- if ((__builtin_expect ((uintptr_t) oldp > (uintptr_t) -oldsize, 0)
- || __builtin_expect (misaligned_chunk (oldp), 0)))
+ if (__glibc_unlikely ((uintptr_t) oldp > (uintptr_t) -oldsize
+ || misaligned_chunk (oldp)))
malloc_printerr ("realloc(): invalid pointer");
- nb = checked_request2size (bytes);
- if (nb == 0)
+ if (bytes > PTRDIFF_MAX)
{
__set_errno (ENOMEM);
return NULL;
}
+ nb = checked_request2size (bytes);
if (chunk_is_mmapped (oldp))
{
@@ -3623,11 +3629,7 @@ libc_hidden_def (__libc_realloc)
void *
__libc_memalign (size_t alignment, size_t bytes)
{
- if (!__malloc_initialized)
- ptmalloc_init ();
-
- void *address = RETURN_ADDRESS (0);
- return _mid_memalign (alignment, bytes, address);
+ return _mid_memalign (alignment, bytes);
}
libc_hidden_def (__libc_memalign)
@@ -3636,9 +3638,6 @@ void *
weak_function
aligned_alloc (size_t alignment, size_t bytes)
{
- if (!__malloc_initialized)
- ptmalloc_init ();
-
/* Similar to memalign, but starting with ISO C17 the standard
requires an error for alignments that are not supported by the
implementation. Valid alignments for the current implementation
@@ -3649,12 +3648,11 @@ aligned_alloc (size_t alignment, size_t bytes)
return NULL;
}
- void *address = RETURN_ADDRESS (0);
- return _mid_memalign (alignment, bytes, address);
+ return _mid_memalign (alignment, bytes);
}
static void *
-_mid_memalign (size_t alignment, size_t bytes, void *address)
+_mid_memalign (size_t alignment, size_t bytes)
{
mstate ar_ptr;
void *p;
@@ -3686,35 +3684,9 @@ _mid_memalign (size_t alignment, size_t bytes, void *address)
}
#if USE_TCACHE
- {
- size_t tbytes;
- tbytes = checked_request2size (bytes);
- if (tbytes == 0)
- {
- __set_errno (ENOMEM);
- return NULL;
- }
- size_t tc_idx = csize2tidx (tbytes);
-
- MAYBE_INIT_TCACHE ();
-
- if (tcache_available (tc_idx))
- {
- /* The tcache itself isn't encoded, but the chain is. */
- tcache_entry **tep = & tcache->entries[tc_idx];
- tcache_entry *te = *tep;
- while (te != NULL && !PTR_IS_ALIGNED (te, alignment))
- {
- tep = & (te->next);
- te = tcache_next (te);
- }
- if (te != NULL)
- {
- void *victim = tcache_get_n (tc_idx, tep);
- return tag_new_usable (victim);
- }
- }
- }
+ void *victim = tcache_get_align (checked_request2size (bytes), alignment);
+ if (victim != NULL)
+ return tag_new_usable (victim);
#endif
if (SINGLE_THREAD_P)
@@ -3746,21 +3718,12 @@ _mid_memalign (size_t alignment, size_t bytes, void *address)
void *
__libc_valloc (size_t bytes)
{
- if (!__malloc_initialized)
- ptmalloc_init ();
-
- void *address = RETURN_ADDRESS (0);
- size_t pagesize = GLRO (dl_pagesize);
- return _mid_memalign (pagesize, bytes, address);
+ return _mid_memalign (GLRO (dl_pagesize), bytes);
}
void *
__libc_pvalloc (size_t bytes)
{
- if (!__malloc_initialized)
- ptmalloc_init ();
-
- void *address = RETURN_ADDRESS (0);
size_t pagesize = GLRO (dl_pagesize);
size_t rounded_bytes;
/* ALIGN_UP with overflow check. */
@@ -3771,49 +3734,18 @@ __libc_pvalloc (size_t bytes)
__set_errno (ENOMEM);
return NULL;
}
- rounded_bytes = rounded_bytes & -(pagesize - 1);
- return _mid_memalign (pagesize, rounded_bytes, address);
+ return _mid_memalign (pagesize, rounded_bytes & -pagesize);
}
-void *
-__libc_calloc (size_t n, size_t elem_size)
+static void * __attribute_noinline__
+__libc_calloc2 (size_t sz)
{
mstate av;
mchunkptr oldtop, p;
- INTERNAL_SIZE_T sz, oldtopsize, csz;
+ INTERNAL_SIZE_T oldtopsize, csz;
void *mem;
unsigned long clearsize;
- ptrdiff_t bytes;
-
- if (__glibc_unlikely (__builtin_mul_overflow (n, elem_size, &bytes)))
- {
- __set_errno (ENOMEM);
- return NULL;
- }
-
- sz = bytes;
-
- if (!__malloc_initialized)
- ptmalloc_init ();
-
-#if USE_TCACHE
- bool err = tcache_try_malloc (bytes, &mem);
-
- if (err)
- return NULL;
-
- if (mem)
- {
- p = mem2chunk (mem);
- if (__glibc_unlikely (mtag_enabled))
- return tag_new_zero_region (mem, memsize (p));
-
- csz = chunksize (p);
- clearsize = csz - SIZE_SZ;
- return clear_memory ((INTERNAL_SIZE_T *) mem, clearsize);
- }
-#endif
if (SINGLE_THREAD_P)
av = &main_arena;
@@ -3882,7 +3814,7 @@ __libc_calloc (size_t n, size_t elem_size)
/* Two optional cases in which clearing not necessary */
if (chunk_is_mmapped (p))
{
- if (__builtin_expect (perturb_byte, 0))
+ if (__glibc_unlikely (perturb_byte))
return memset (mem, 0, sz);
return mem;
@@ -3899,6 +3831,55 @@ __libc_calloc (size_t n, size_t elem_size)
clearsize = csz - SIZE_SZ;
return clear_memory ((INTERNAL_SIZE_T *) mem, clearsize);
}
+
+void *
+__libc_calloc (size_t n, size_t elem_size)
+{
+ size_t bytes;
+
+ if (__glibc_unlikely (__builtin_mul_overflow (n, elem_size, &bytes)))
+ {
+ __set_errno (ENOMEM);
+ return NULL;
+ }
+
+#if USE_TCACHE
+ size_t nb = checked_request2size (bytes);
+
+ if (nb < mp_.tcache_max_bytes)
+ {
+ if (__glibc_unlikely (tcache == NULL))
+ return tcache_calloc_init (bytes);
+
+ size_t tc_idx = csize2tidx (nb);
+
+ if (__glibc_unlikely (tc_idx < TCACHE_SMALL_BINS))
+ {
+ if (tcache->entries[tc_idx] != NULL)
+ {
+ void *mem = tcache_get (tc_idx);
+ if (__glibc_unlikely (mtag_enabled))
+ return tag_new_zero_region (mem, memsize (mem2chunk (mem)));
+
+ return clear_memory ((INTERNAL_SIZE_T *) mem, tidx2usize (tc_idx));
+ }
+ }
+ else
+ {
+ tc_idx = large_csize2tidx (nb);
+ void *mem = tcache_get_large (tc_idx, nb);
+ if (mem != NULL)
+ {
+ if (__glibc_unlikely (mtag_enabled))
+ return tag_new_zero_region (mem, memsize (mem2chunk (mem)));
+
+ return memset (mem, 0, memsize (mem2chunk (mem)));
+ }
+ }
+ }
+#endif
+ return __libc_calloc2 (bytes);
+}
#endif /* IS_IN (libc) */
/*
@@ -3939,12 +3920,12 @@ _int_malloc (mstate av, size_t bytes)
aligned.
*/
- nb = checked_request2size (bytes);
- if (nb == 0)
+ if (bytes > PTRDIFF_MAX)
{
__set_errno (ENOMEM);
return NULL;
}
+ nb = checked_request2size (bytes);
/* There are no usable arenas. Fall back to sysmalloc to get a chunk from
mmap. */
@@ -3994,20 +3975,19 @@ _int_malloc (mstate av, size_t bytes)
if (__glibc_likely (victim != NULL))
{
size_t victim_idx = fastbin_index (chunksize (victim));
- if (__builtin_expect (victim_idx != idx, 0))
+ if (__glibc_unlikely (victim_idx != idx))
malloc_printerr ("malloc(): memory corruption (fast)");
check_remalloced_chunk (av, victim, nb);
#if USE_TCACHE
/* While we're here, if we see other chunks of the same size,
stash them in the tcache. */
size_t tc_idx = csize2tidx (nb);
- if (tcache != NULL && tc_idx < mp_.tcache_bins)
+ if (tcache != NULL && tc_idx < mp_.tcache_small_bins)
{
mchunkptr tc_victim;
/* While bin not empty and tcache not full, copy chunks. */
- while (tcache->counts[tc_idx] < mp_.tcache_count
- && (tc_victim = *fb) != NULL)
+ while (tcache->num_slots[tc_idx] != 0 && (tc_victim = *fb) != NULL)
{
if (__glibc_unlikely (misaligned_chunk (tc_victim)))
malloc_printerr ("malloc(): unaligned fastbin chunk detected 3");
@@ -4062,12 +4042,12 @@ _int_malloc (mstate av, size_t bytes)
/* While we're here, if we see other chunks of the same size,
stash them in the tcache. */
size_t tc_idx = csize2tidx (nb);
- if (tcache != NULL && tc_idx < mp_.tcache_bins)
+ if (tcache != NULL && tc_idx < mp_.tcache_small_bins)
{
mchunkptr tc_victim;
/* While bin not empty and tcache not full, copy chunks over. */
- while (tcache->counts[tc_idx] < mp_.tcache_count
+ while (tcache->num_slots[tc_idx] != 0
&& (tc_victim = last (bin)) != bin)
{
if (tc_victim != NULL)
@@ -4124,7 +4104,7 @@ _int_malloc (mstate av, size_t bytes)
#if USE_TCACHE
INTERNAL_SIZE_T tcache_nb = 0;
size_t tc_idx = csize2tidx (nb);
- if (tcache != NULL && tc_idx < mp_.tcache_bins)
+ if (tcache != NULL && tc_idx < mp_.tcache_small_bins)
tcache_nb = nb;
int return_cached = 0;
@@ -4205,7 +4185,7 @@ _int_malloc (mstate av, size_t bytes)
/* Fill cache first, return to user only if cache fills.
We may return one of these chunks later. */
if (tcache_nb > 0
- && tcache->counts[tc_idx] < mp_.tcache_count)
+ && tcache->num_slots[tc_idx] != 0)
{
tcache_put (victim, tc_idx);
return_cached = 1;
@@ -4560,24 +4540,6 @@ _int_malloc (mstate av, size_t bytes)
------------------------------ free ------------------------------
*/
-static __always_inline void
-_int_free_check (mstate av, mchunkptr p, INTERNAL_SIZE_T size)
-{
- /* Little security check which won't hurt performance: the
- allocator never wraps around at the end of the address space.
- Therefore we can exclude some size values which might appear
- here by accident or by "design" from some intruder. */
- if (__builtin_expect ((uintptr_t) p > (uintptr_t) -size, 0)
- || __builtin_expect (misaligned_chunk (p), 0))
- malloc_printerr ("free(): invalid pointer");
- /* We know that each chunk is at least MINSIZE bytes in size or a
- multiple of MALLOC_ALIGNMENT. */
- if (__glibc_unlikely (size < MINSIZE || !aligned_OK (size)))
- malloc_printerr ("free(): invalid size");
-
- check_inuse_chunk (av, p);
-}
-
/* Free chunk P of SIZE bytes to the arena. HAVE_LOCK indicates where
the arena for P has already been locked. Caller must ensure chunk
and size are valid. */
@@ -4602,10 +4564,9 @@ _int_free_chunk (mstate av, mchunkptr p, INTERNAL_SIZE_T size, int have_lock)
#endif
) {
- if (__builtin_expect (chunksize_nomask (chunk_at_offset (p, size))
- <= CHUNK_HDR_SZ, 0)
- || __builtin_expect (chunksize (chunk_at_offset (p, size))
- >= av->system_mem, 0))
+ if (__glibc_unlikely (
+ chunksize_nomask (chunk_at_offset(p, size)) <= CHUNK_HDR_SZ
+ || chunksize (chunk_at_offset(p, size)) >= av->system_mem))
{
bool fail = true;
/* We might not have a lock at this point and concurrent modifications
@@ -4636,7 +4597,7 @@ _int_free_chunk (mstate av, mchunkptr p, INTERNAL_SIZE_T size, int have_lock)
{
/* Check that the top of the bin is not the record we are going to
add (i.e., double free). */
- if (__builtin_expect (old == p, 0))
+ if (__glibc_unlikely (old == p))
malloc_printerr ("double free or corruption (fasttop)");
p->fd = PROTECT_PTR (&p->fd, old);
*fb = p;
@@ -4646,7 +4607,7 @@ _int_free_chunk (mstate av, mchunkptr p, INTERNAL_SIZE_T size, int have_lock)
{
/* Check that the top of the bin is not the record we are going to
add (i.e., double free). */
- if (__builtin_expect (old == p, 0))
+ if (__glibc_unlikely (old == p))
malloc_printerr ("double free or corruption (fasttop)");
old2 = old;
p->fd = PROTECT_PTR (&p->fd, old);
@@ -4659,7 +4620,7 @@ _int_free_chunk (mstate av, mchunkptr p, INTERNAL_SIZE_T size, int have_lock)
only if we have the lock, otherwise it might have already been
allocated again. */
if (have_lock && old != NULL
- && __builtin_expect (fastbin_index (chunksize (old)) != idx, 0))
+ && __glibc_unlikely (fastbin_index (chunksize (old)) != idx))
malloc_printerr ("invalid fastbin entry (free)");
}
@@ -4669,6 +4630,9 @@ _int_free_chunk (mstate av, mchunkptr p, INTERNAL_SIZE_T size, int have_lock)
else if (!chunk_is_mmapped(p)) {
+ /* Preserve errno in case block merging results in munmap. */
+ int err = errno;
+
/* If we're single-threaded, don't lock the arena. */
if (SINGLE_THREAD_P)
have_lock = true;
@@ -4680,35 +4644,34 @@ _int_free_chunk (mstate av, mchunkptr p, INTERNAL_SIZE_T size, int have_lock)
if (!have_lock)
__libc_lock_unlock (av->mutex);
+
+ __set_errno (err);
}
/*
If the chunk was allocated via mmap, release via munmap().
*/
else {
- munmap_chunk (p);
- }
-}
-
-/* Free chunk P to its arena AV. HAVE_LOCK indicates where the arena for
- P has already been locked. It will perform sanity check, then try the
- fast path to free into tcache. If the attempt not success, free the
- chunk to arena. */
-static __always_inline void
-_int_free (mstate av, mchunkptr p, int have_lock)
-{
- INTERNAL_SIZE_T size; /* its size */
- size = chunksize (p);
+ /* Preserve errno in case munmap sets it. */
+ int err = errno;
- _int_free_check (av, p, size);
+ /* See if the dynamic brk/mmap threshold needs adjusting.
+ Dumped fake mmapped chunks do not affect the threshold. */
+ if (!mp_.no_dyn_threshold
+ && chunksize_nomask (p) > mp_.mmap_threshold
+ && chunksize_nomask (p) <= DEFAULT_MMAP_THRESHOLD_MAX)
+ {
+ mp_.mmap_threshold = chunksize (p);
+ mp_.trim_threshold = 2 * mp_.mmap_threshold;
+ LIBC_PROBE (memory_mallopt_free_dyn_thresholds, 2,
+ mp_.mmap_threshold, mp_.trim_threshold);
+ }
-#if USE_TCACHE
- if (tcache_free (p, size))
- return;
-#endif
+ munmap_chunk (p);
- _int_free_chunk (av, p, size, have_lock);
+ __set_errno (err);
+ }
}
/* Try to merge chunk P of SIZE bytes with its neighbors. Put the
@@ -4724,17 +4687,17 @@ _int_free_merge_chunk (mstate av, mchunkptr p, INTERNAL_SIZE_T size)
if (__glibc_unlikely (p == av->top))
malloc_printerr ("double free or corruption (top)");
/* Or whether the next chunk is beyond the boundaries of the arena. */
- if (__builtin_expect (contiguous (av)
+ if (__glibc_unlikely (contiguous (av)
&& (char *) nextchunk
- >= ((char *) av->top + chunksize(av->top)), 0))
+ >= ((char *) av->top + chunksize(av->top))))
malloc_printerr ("double free or corruption (out)");
/* Or whether the block is actually not marked used. */
if (__glibc_unlikely (!prev_inuse(nextchunk)))
malloc_printerr ("double free or corruption (!prev)");
INTERNAL_SIZE_T nextsize = chunksize(nextchunk);
- if (__builtin_expect (chunksize_nomask (nextchunk) <= CHUNK_HDR_SZ, 0)
- || __builtin_expect (nextsize >= av->system_mem, 0))
+ if (__glibc_unlikely (chunksize_nomask (nextchunk) <= CHUNK_HDR_SZ
+ || nextsize >= av->system_mem))
malloc_printerr ("free(): invalid next size (normal)");
free_perturb (chunk2mem(p), size - CHUNK_HDR_SZ);
@@ -4991,9 +4954,9 @@ _int_realloc (mstate av, mchunkptr oldp, INTERNAL_SIZE_T oldsize,
unsigned long remainder_size; /* its size */
/* oldmem size */
- if (__builtin_expect (chunksize_nomask (oldp) <= CHUNK_HDR_SZ, 0)
- || __builtin_expect (oldsize >= av->system_mem, 0)
- || __builtin_expect (oldsize != chunksize (oldp), 0))
+ if (__glibc_unlikely (chunksize_nomask (oldp) <= CHUNK_HDR_SZ
+ || oldsize >= av->system_mem
+ || oldsize != chunksize (oldp)))
malloc_printerr ("realloc(): invalid old size");
check_inuse_chunk (av, oldp);
@@ -5003,8 +4966,8 @@ _int_realloc (mstate av, mchunkptr oldp, INTERNAL_SIZE_T oldsize,
next = chunk_at_offset (oldp, oldsize);
INTERNAL_SIZE_T nextsize = chunksize (next);
- if (__builtin_expect (chunksize_nomask (next) <= CHUNK_HDR_SZ, 0)
- || __builtin_expect (nextsize >= av->system_mem, 0))
+ if (__glibc_unlikely (chunksize_nomask (next) <= CHUNK_HDR_SZ
+ || nextsize >= av->system_mem))
malloc_printerr ("realloc(): invalid next size");
if ((unsigned long) (oldsize) >= (unsigned long) (nb))
@@ -5117,12 +5080,12 @@ _int_memalign (mstate av, size_t alignment, size_t bytes)
unsigned long remainder_size; /* its size */
INTERNAL_SIZE_T size;
- nb = checked_request2size (bytes);
- if (nb == 0)
+ if (bytes > PTRDIFF_MAX)
{
__set_errno (ENOMEM);
return NULL;
}
+ nb = checked_request2size (bytes);
/* We can't check tcache here because we hold the arena lock, which
tcache doesn't expect. We expect it has been checked
@@ -5277,9 +5240,6 @@ __malloc_trim (size_t s)
{
int result = 0;
- if (!__malloc_initialized)
- ptmalloc_init ();
-
mstate ar_ptr = &main_arena;
do
{
@@ -5396,9 +5356,6 @@ __libc_mallinfo2 (void)
struct mallinfo2 m;
mstate ar_ptr;
- if (!__malloc_initialized)
- ptmalloc_init ();
-
memset (&m, 0, sizeof (m));
ar_ptr = &main_arena;
do
@@ -5447,8 +5404,6 @@ __malloc_stats (void)
mstate ar_ptr;
unsigned int in_use_b = mp_.mmapped_mem, system_b = in_use_b;
- if (!__malloc_initialized)
- ptmalloc_init ();
_IO_flockfile (stderr);
int old_flags2 = stderr->_flags2;
stderr->_flags2 |= _IO_FLAGS2_NOTCANCEL;
@@ -5561,13 +5516,25 @@ do_set_arena_max (size_t value)
static __always_inline int
do_set_tcache_max (size_t value)
{
- if (value <= MAX_TCACHE_SIZE)
+ if (value > PTRDIFF_MAX)
+ return 0;
+
+ size_t nb = request2size (value);
+ size_t tc_idx = csize2tidx (nb);
+
+ if (tc_idx >= TCACHE_SMALL_BINS)
+ tc_idx = large_csize2tidx (nb);
+
+ LIBC_PROBE (memory_tunable_tcache_max_bytes, 2, value, mp_.tcache_max_bytes);
+
+ if (tc_idx < TCACHE_MAX_BINS)
{
- LIBC_PROBE (memory_tunable_tcache_max_bytes, 2, value, mp_.tcache_max_bytes);
- mp_.tcache_max_bytes = value;
- mp_.tcache_bins = csize2tidx (request2size(value)) + 1;
+ if (tc_idx < TCACHE_SMALL_BINS)
+ mp_.tcache_small_bins = tc_idx + 1;
+ mp_.tcache_max_bytes = nb + 1;
return 1;
}
+
return 0;
}
@@ -5609,12 +5576,9 @@ do_set_hugetlb (size_t value)
{
if (value == 1)
{
- enum malloc_thp_mode_t thp_mode = __malloc_thp_mode ();
- /*
- Only enable THP madvise usage if system does support it and
- has 'madvise' mode. Otherwise the madvise() call is wasteful.
- */
- if (thp_mode == malloc_thp_mode_madvise)
+ mp_.thp_mode = __malloc_thp_mode ();
+ if (mp_.thp_mode == malloc_thp_mode_madvise
+ || mp_.thp_mode == malloc_thp_mode_always)
mp_.thp_pagesize = __malloc_default_thp_pagesize ();
}
else if (value >= 2)
@@ -5629,8 +5593,6 @@ __libc_mallopt (int param_number, int value)
mstate av = &main_arena;
int res = 1;
- if (!__malloc_initialized)
- ptmalloc_init ();
__libc_lock_lock (av->mutex);
LIBC_PROBE (memory_mallopt, 2, param_number, value);
@@ -5845,6 +5807,20 @@ malloc_printerr (const char *str)
__builtin_unreachable ();
}
+#if USE_TCACHE
+
+static volatile int dummy_var;
+
+static __attribute_noinline__ void
+malloc_printerr_tail (const char *str)
+{
+ /* Ensure this cannot be a no-return function. */
+ if (dummy_var)
+ return;
+ malloc_printerr (str);
+}
+#endif
+
#if IS_IN (libc)
/* We need a wrapper function for one of the additions of POSIX. */
int
@@ -5852,9 +5828,6 @@ __posix_memalign (void **memptr, size_t alignment, size_t size)
{
void *mem;
- if (!__malloc_initialized)
- ptmalloc_init ();
-
/* Test whether the SIZE argument is valid. It must be a power of
two multiple of sizeof (void *). */
if (alignment % sizeof (void *) != 0
@@ -5863,8 +5836,7 @@ __posix_memalign (void **memptr, size_t alignment, size_t size)
return EINVAL;
- void *address = RETURN_ADDRESS (0);
- mem = _mid_memalign (alignment, size, address);
+ mem = _mid_memalign (alignment, size);
if (mem != NULL)
{
@@ -5895,11 +5867,6 @@ __malloc_info (int options, FILE *fp)
size_t total_aspace = 0;
size_t total_aspace_mprotect = 0;
-
-
- if (!__malloc_initialized)
- ptmalloc_init ();
-
fputs ("<malloc version=\"1\">\n", fp);
/* Iterate over all arenas currently in use. */
diff --git a/malloc/tst-tcfree4.c b/malloc/tst-tcfree4.c
new file mode 100644
index 0000000..03850dd
--- /dev/null
+++ b/malloc/tst-tcfree4.c
@@ -0,0 +1,59 @@
+/* Test that malloc tcache catches double free.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <errno.h>
+#include <error.h>
+#include <limits.h>
+#include <malloc.h>
+#include <stdlib.h>
+#include <stdio.h>
+#include <string.h>
+#include <sys/signal.h>
+
+/* Test for a double free where the size information gets overwritten by a
+ * terminating null byte. */
+static int
+do_test (void)
+{
+ /* The payload is exactly 0x19 Bytes long:
+ * 0x18 bytes 'B' and one terminating null byte
+ */
+ const char *payload = "BBBBBBBBBBBBBBBBBBBBBBBB";
+
+ char *volatile first_chunk
+ = malloc (strlen (payload)); // <-- off by one error
+ char *volatile second_chunk = malloc (0x118);
+
+ // free the second chunk the first time now it is in the tcache with tc_idx =
+ free (second_chunk);
+
+ // change the the size of the second_chunk using the terminating null byte if
+ // the PAYLOAD
+ strcpy (first_chunk, payload);
+
+ // now the second_chunk has a new size
+ // calling free a second time will not trigger the double free detection
+ free (second_chunk);
+
+ printf ("FAIL: tcache double free not detected\n");
+ return 1;
+}
+
+#define TEST_FUNCTION do_test
+#define EXPECTED_SIGNAL SIGABRT
+#include <support/test-driver.c>
diff --git a/manual/arith.texi b/manual/arith.texi
index 034d9d2..d500dcf 100644
--- a/manual/arith.texi
+++ b/manual/arith.texi
@@ -1233,25 +1233,33 @@ whose imaginary part is @var{y}, the absolute value is @w{@code{sqrt
@pindex math.h
@pindex stdlib.h
-Prototypes for @code{abs}, @code{labs} and @code{llabs} are in @file{stdlib.h};
-@code{imaxabs} is declared in @file{inttypes.h};
+Prototypes for @code{abs}, @code{labs}, @code{llabs},
+@code{uabs}, @code{ulabs} and @code{ullabs} are in @file{stdlib.h};
+@code{imaxabs} and @code{uimaxabs} are declared in @file{inttypes.h};
the @code{fabs} functions are declared in @file{math.h};
the @code{cabs} functions are declared in @file{complex.h}.
@deftypefun int abs (int @var{number})
@deftypefunx {long int} labs (long int @var{number})
@deftypefunx {long long int} llabs (long long int @var{number})
+@deftypefunx {unsigned int} uabs (int @var{number})
+@deftypefunx {unsigned long int} ulabs (long int @var{number})
+@deftypefunx {unsigned long long int} ullabs (long long int @var{number})
@deftypefunx intmax_t imaxabs (intmax_t @var{number})
+@deftypefunx uintmax_t uimaxabs (intmax_t @var{number})
@standards{ISO, stdlib.h}
@standardsx{imaxabs, ISO, inttypes.h}
+@standardsx{uimaxabs, ISO, inttypes.h}
@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
These functions return the absolute value of @var{number}.
Most computers use a two's complement integer representation, in which
the absolute value of @code{INT_MIN} (the smallest possible @code{int})
cannot be represented; thus, @w{@code{abs (INT_MIN)}} is not defined.
+Using @code{uabs} avoids this.
@code{llabs} and @code{imaxdiv} are new to @w{ISO C99}.
+@code{uabs}, @code{ulabs}, @code{ullabs} and @code{uimaxabs} are new to @w{ISO C2Y}.
See @ref{Integers} for a description of the @code{intmax_t} type.
diff --git a/manual/contrib.texi b/manual/contrib.texi
index 3d1b170..30681fa 100644
--- a/manual/contrib.texi
+++ b/manual/contrib.texi
@@ -22,10 +22,13 @@ Rogerio Alves Cardoso for various fixes to PowerPC.
Amrita H. S. for contributions to the PowerPC port.
@item
-John David Anglin for various fixes and co-maintainership of the HPPA
+John David Anglin for many fixes and co-maintainership of the HPPA
port.
@item
+H. Peter Anvin for work on the termios code.
+
+@item
Albert ARIBAUD for Y2038 related fixes.
@item
@@ -139,14 +142,15 @@ Joana Cruz for contributions to the AArch64 port.
Palmer Dabbelt for contributing the port to Linux/RISC-V.
@item
-DJ Delorie for maintenance of Linux/RISC-V, and numerous fixes.
+DJ Delorie for maintenance of Linux/RISC-V, numerous fixes, and handbook
+contributions.
@item
Jianbo Deng for the work on the Loongson port.
@item
-Wilco Dijkstra for various fixes and many improvements of the AArch64
-port.
+Wilco Dijkstra for various fixes and many improvements as well as
+maintainership of the AArch64 port.
@item
Liubov Dmitrieva for optimized string and math functions on x86-64 and
@@ -206,6 +210,9 @@ Olaf Flebbe and Ralf B@"achle for contributing
@file{sysdeps/mips/fpu_control.h}.
@item
+Dylan Fleming for work on the AArch64 port.
+
+@item
Alistair Francis for Y2038 related fixes.
@item
@@ -213,6 +220,9 @@ Mike Frysinger for his maintaining of the IA64 architecture and for
testing and bug fixing.
@item
+Collin Funk for various fixes and manual improvements.
+
+@item
Martin Galvan for contributing gdb pretty printer support to glibc and adding
an initial set of pretty printers for structures in the POSIX Threads library.
@@ -309,6 +319,9 @@ his direction as part of @theglibc{} steering committee.
Simon Josefsson for the @code{libidn} add-on.
@item
+Ben Kallus for various fixes.
+
+@item
Geoffrey Keating for the port to Linux on PowerPC
(@code{powerpc-@var{anything}-linux}).
@@ -322,7 +335,8 @@ Mark Kettenis for implementing the @code{utmpx} interface and a utmp
daemon, and for a Hesiod NSS module.
@item
-Yury Khrustalev for work on the AArch64 port and various fixes.
+Yury Khrustalev for extensive work on the AArch64 port and its
+maintainership, and various fixes.
@item
Simon Kissane for gmon improvements.
@@ -353,7 +367,7 @@ for NSS (@file{nscd}).
Akhilesh Kumar for various fixes to locales.
@item
-Luna Lamb for contributions to the AArch64 port.
+Luna Lamb for various contributions to the AArch64 port.
@item
Jeff Law for various fixes.
@@ -384,6 +398,9 @@ implementations, for implementing Intel Control-Flow Enforcement
Technology, many x86-64 improvements, and many bug fixes.
@item
+Zhaoming Luo for work on the hurd port.
+
+@item
Rafa@l{} Lu@dotaccent{z}y@'nski
for contributing support for two grammatical forms of month
names, and for various fixes to locales.
@@ -449,6 +466,9 @@ Cupertino Miranda for various fixes.
Alan Modra for his improvements for Linux on PowerPC.
@item
+Lenard Mollenkopf for work on C2Y support.
+
+@item
Sachin Monga for various fixes and contributions to the PowerPC port.
@item
@@ -496,7 +516,7 @@ encryption support for ARM and various fixes.
@item
Carlos O'Donell for his maintainership of the HPPA architecture, for
maintaining @theglibc{} web pages and wiki, for his direction as FSF
-Project Steward for @theglibc{} and various bug fixes.
+Project Steward for @theglibc{} and numerous bug fixes.
@item
Alexandre Oliva for adding TLS descriptors for LD and GD on x86 and
@@ -506,7 +526,7 @@ safety documentation in the manual, for his direction as FSF Project
Maintainer and for various fixes.
@item
-Sunil K. Pandey for many fixes.
+Sunil K. Pandey for many fixes and x86-64 improvements.
@item
Ronan Pigott for various fixes.
@@ -525,8 +545,8 @@ Yat Long Poon for contributions to the Aarch64 port.
@item
Siddhesh Poyarekar for various fixes, an implementation of a framework for
-performance benchmarking of functions and implementing the tunables
-infrastructure.
+performance benchmarking of functions, implementing the tunables
+infrastructure, and handbook improvements.
@item
Tom Quinn for contributing the startup code to support SunOS shared
@@ -587,7 +607,7 @@ Andrew Senkevich for contributing vector math function implementations for x86.
Carlos Eduardo Seo for optimized functions on PowerPC.
@item
-Arjun Shankar for testing, bug fixing, and handbook contributions.
+Arjun Shankar for testing, bug fixing, and many handbook contributions.
@item
Marcus Shawcroft for contributing the AArch64 port.
@@ -658,8 +678,9 @@ function family.
Ulrich Weigand for various fixes to the PowerPC64 and Arm ports.
@item
-Florian Weimer for his maintainership of the network component, for handling
-of security issues, and for numerous fixes and contributions.
+Florian Weimer for his maintainership of the network and dynamic-link
+components, for handling of security issues, and for numerous fixes and
+contributions.
@item
Zack Weinberg for the @code{explicit_bzero} implementation and for various
@@ -686,7 +707,8 @@ YunQiang Su for work on the MIPS port.
@item
Adhemerval Zanella for optimized functions on PowerPC, ISO C threads support,
the work on tunables, fortify improvements, the CORE-MATH integration,
-thread safety, and numerous further contributions and fixes.
+thread safety, handling of security issues, and numerous further contributions
+and fixes.
@item
Xuelei Zhang for optimized functions on AArch64.
@@ -698,6 +720,9 @@ Junxian Zhu for work on the MIPS and RISC-V port.
Paul Zimmermann for the work on mathematical functions and their
testsuite.
+@item
+Claudiu Zissulescu for work on the SFrame support.
+
@end itemize
Some code in @theglibc{} comes from other projects and might be under
diff --git a/manual/creature.texi b/manual/creature.texi
index 09e1c96..59a6108 100644
--- a/manual/creature.texi
+++ b/manual/creature.texi
@@ -194,9 +194,9 @@ a fallback code is used with legacy (i.e. 32-bit) syscalls.
On such platforms, @theglibc{} will also define @code{__USE_TIME64_REDIRECTS}
to indicate whether the declarations are expanded to different ones
-(either by redefiniding the symbol name or using symbol aliais).
+(either by redefining the symbol name or using a symbol alias).
For instance, if the symbol @code{clock_gettime} expands to
-@code{__glock_gettime64}.
+@code{__clock_gettime64}.
@item
If @code{_TIME_BITS} is defined to be 32, @code{time_t} is defined to
diff --git a/manual/dynlink.texi b/manual/dynlink.texi
index 3a4864f..cd05107 100644
--- a/manual/dynlink.texi
+++ b/manual/dynlink.texi
@@ -545,7 +545,8 @@ result data to the caller.
@table @code
@item unsigned long long int dlfo_flags
-Currently unused and always 0.
+Bit zero signals if SFrame stack data is valid. See
+@code{DLFO_FLAG_SFRAME} below.
@item void *dlfo_map_start
The start address of the inspected mapping. This information comes from
@@ -562,6 +563,11 @@ This member contains a pointer to the link map of the object.
This member contains a pointer to the exception handling data of the
object. See @code{DLFO_EH_SEGMENT_TYPE} below.
+@item void *dlfo_sframe
+This member points to the SFrame stack trace data associated with the
+object. It is valid only when @code{DLFO_FLAG_SFRAME} is set in
+@code{dlfo_flags}; otherwise, it may be null or undefined.
+
@end table
This structure is a GNU extension.
@@ -639,6 +645,15 @@ information is processed.
This function is a GNU extension.
@end deftypefun
+The following flag masks are defined for use with @code{dlfo_flags}:
+
+@table @code
+@item DLFO_FLAG_SFRAME
+A bit mask used to signal that the object contains SFrame data. See
+@code{dlfo_sframe} above.
+
+@end table
+
@node Dynamic Linker Hardening
@section Avoiding Unexpected Issues With Dynamic Linking
diff --git a/manual/examples/memstrm.c b/manual/examples/memstrm.c
index 9ee6298..28be892 100644
--- a/manual/examples/memstrm.c
+++ b/manual/examples/memstrm.c
@@ -16,6 +16,7 @@
*/
#include <stdio.h>
+#include <stdlib.h>
int
main (void)
@@ -31,6 +32,7 @@ main (void)
fprintf (stream, ", world");
fclose (stream);
printf ("buf = `%s', size = %zu\n", bp, size);
+ free (bp);
return 0;
}
diff --git a/manual/filesys.texi b/manual/filesys.texi
index aabb683..f49d7d7 100644
--- a/manual/filesys.texi
+++ b/manual/filesys.texi
@@ -310,12 +310,17 @@ This is a GNU extension.
The flags argument in @code{@dots{}at} functions can be a combination of
the following flags, defined in @file{fcntl.h}. Not all such functions
support all flags, and some (such as @code{openat}) do not accept a
-flags argument at all.
-
-In the flag descriptions below, the @dfn{effective final path component}
-refers to the final component (basename) of the full path constructed
-from the descriptor and file name arguments, using file name lookup, as
-described above.
+flags argument at all. Although the flags specific to each function have
+distinct values from each other, some flags (relevant to different
+functions) might share the same value and therefore are not guaranteed to
+have unique values.
+
+A non-exhaustive list of common flags and their descriptions follows. Flags
+specific to a function are described alongside the function itself. In
+these flag descriptions, the @dfn{effective final path component} refers to
+the final component (basename) of the full path constructed from the
+descriptor and file name arguments, using file name lookup, as described
+above.
@vtable @code
@item AT_EMPTY_PATH
@@ -353,6 +358,28 @@ a non-final component of the file name are still followed.
argument to the @code{getauxval} function (with @code{AT_@dots{}}
constants defined in @file{elf.h}). @xref{Auxiliary Vector}.
+@cindex common errors in descriptor-relative functions
+@cindex common errors in @code{@dots{}at} functions
+
+The @code{@dots{}at} functions have some common error conditions due to the
+nature of descriptor-relative access. A list of common errors and their
+descriptions follows. Errors specific to a function are described alongside
+the function itself.
+
+@table @code
+@item EBADF
+The file name argument is a relative path but the descriptor argument
+is neither @code{AT_FDCWD} nor a valid file descriptor.
+
+@item EINVAL
+If the function accepts a @var{flags} argument, the flag combination passed
+is not valid for the function.
+
+@item ENOTDIR
+The file name argument is a relative file name but the descriptor
+argument is associated with a file that is not a directory.
+@end table
+
@node Accessing Directories
@section Accessing Directories
@cindex accessing directories
@@ -409,18 +436,41 @@ entries. It contains the following fields:
This is the null-terminated file name component. This is the only
field you can count on in all POSIX systems.
+While this field is defined with a specified length, functions such as
+@code{readdir} may return a pointer to a @code{struct dirent} where the
+@code{d_name} extends beyond the end of the struct.
+
@item ino_t d_fileno
This is the file serial number. For BSD compatibility, you can also
refer to this member as @code{d_ino}. On @gnulinuxhurdsystems{} and most POSIX
systems, for most files this the same as the @code{st_ino} member that
@code{stat} will return for the file. @xref{File Attributes}.
+@item off_t d_off
+This value contains the offset of the next directory entry (after this
+entry) in the directory stream. The value may not be compatible with
+@code{lseek} or @code{seekdir}, especially if the width of @code{d_off}
+is less than 64 bits. Directory entries are not ordered by offset, and
+the @code{d_off} and @code{d_reclen} values are unrelated. Seeking on
+directory streams is not recommended. The symbol
+@code{_DIRENT_HAVE_D_OFF} is defined if the @code{d_ino} member is
+available.
+
@item unsigned char d_namlen
This is the length of the file name, not including the terminating
null character. Its type is @code{unsigned char} because that is the
integer type of the appropriate size. This member is a BSD extension.
The symbol @code{_DIRENT_HAVE_D_NAMLEN} is defined if this member is
-available.
+available. (It is not available on Linux.)
+
+@item unsigned short int d_reclen
+This is the length of the entire directory record. When iterating
+through a buffer filled by @code{getdents64} (@pxref{Low-level Directory
+Access}), this value needs to be added to the offset of the current
+directory entry to obtain the offset of the next entry. When using
+@code{readdir} and related functions, the value of @code{d_reclen} is
+undefined and should not be accessed. The symbol
+@code{_DIRENT_HAVE_D_RECLEN} is defined if this member is available.
@item unsigned char d_type
This is the type of the file, possibly unknown. The following constants
@@ -457,7 +507,7 @@ This member is a BSD extension. The symbol @code{_DIRENT_HAVE_D_TYPE}
is defined if this member is available. On systems where it is used, it
corresponds to the file type bits in the @code{st_mode} member of
@code{struct stat}. If the value cannot be determined the member
-value is DT_UNKNOWN. These two macros convert between @code{d_type}
+value is @code{DT_UNKNOWN}. These two macros convert between @code{d_type}
values and @code{st_mode} values:
@deftypefun int IFTODT (mode_t @var{mode})
@@ -632,6 +682,20 @@ and can be rewritten by a subsequent call.
return entries for @file{.} and @file{..}, even though these are always
valid file names in any directory. @xref{File Name Resolution}.
+If a directory is modified between a call to @code{readdir} and after
+the directory stream was created or @code{rewinddir} was last called on
+it, it is unspecified according to POSIX whether newly created or
+removed entries appear among the entries returned by repeated
+@code{readdir} calls before the end of the directory is reached.
+However, due to practical implementation constraints, it is possible
+that entries (including unrelated, unmodified entries) appear multiple
+times or do not appear at all if the directory is modified while listing
+it. If the application intends to create files in the directory, it may
+be necessary to complete the iteration first and create a copy of the
+information obtained before creating any new files. (See below for
+instructions regarding copying of @code{d_name}.) The iteration can be
+restarted using @code{rewinddir}. @xref{Random Access Directory}.
+
If there are no more entries in the directory or an error is detected,
@code{readdir} returns a null pointer. The following @code{errno} error
conditions are defined for this function:
@@ -812,6 +876,10 @@ directory since it was opened with @code{opendir}. (Entries for these
files might or might not be returned by @code{readdir} if they were
added or removed since you last called @code{opendir} or
@code{rewinddir}.)
+
+For example, it is recommended to call @code{rewinddir} followed by
+@code{readdir} to check if a directory is empty after listing it with
+@code{readdir} and deleting all encountered files from it.
@end deftypefun
@deftypefun {long int} telldir (DIR *@var{dirstream})
@@ -823,6 +891,13 @@ added or removed since you last called @code{opendir} or
The @code{telldir} function returns the file position of the directory
stream @var{dirstream}. You can use this value with @code{seekdir} to
restore the directory stream to that position.
+
+Using the the @code{telldir} function is not recommended.
+
+The value returned by @code{telldir} may not be compatible with the
+@code{d_off} field in @code{struct dirent}, and cannot be used with the
+@code{lseek} function. The returned value may not unambiguously
+identify the position in the directory stream.
@end deftypefun
@deftypefun void seekdir (DIR *@var{dirstream}, long int @var{pos})
@@ -836,6 +911,9 @@ stream @var{dirstream} to @var{pos}. The value @var{pos} must be the
result of a previous call to @code{telldir} on this particular stream;
closing and reopening the directory can invalidate values returned by
@code{telldir}.
+
+Using the the @code{seekdir} function is not recommended. To seek to
+the beginning of the directory stream, use @code{rewinddir}.
@end deftypefun
@@ -1007,9 +1085,20 @@ Note that some file systems support file names longer than
@code{NAME_MAX} bytes (e.g., because they support up to 255 Unicode
characters), so a buffer size of at least 1024 is recommended.
+If the directory has been modified since the first call to
+@code{getdents64} on the directory (opening the descriptor or seeking to
+offset zero), it is possible that the buffer contains entries that have
+been encountered before. Likewise, it is possible that files that are
+still present are not reported before the end of the directory is
+encountered (and @code{getdents64} returns zero).
+
This function is specific to Linux.
@end deftypefun
+Systems that support @code{getdents64} support seeking on directory
+streams. @xref{File Position Primitive}. However, the only offset that
+works reliably is offset zero, indicating that reading the directory
+should start from the beginning.
@node Working with Directory Trees
@section Working with Directory Trees
@@ -1690,6 +1779,31 @@ file system and can't be modified.
@end table
@end deftypefun
+@deftypefun int unlinkat (int @var{filedes}, const char *@var{filename}, int @var{flags})
+@standards{POSIX.1-2008, unistd.h}
+@comment Unaudited and therefore marked AC-Unsafe and AS-Unsafe by default
+@safety{@mtsafe{}@asunsafe{@asucorrupt{}}@acunsafe{@acucorrupt{}}}
+This function is a descriptor-relative version of the @code{unlink}
+function above. @xref{Descriptor-Relative Access}. The @var{flags}
+argument may either be @code{0} or contain the flag @code{AT_REMOVEDIR}:
+
+@table @code
+@item AT_REMOVEDIR
+This flag causes @code{unlinkat} to perform an @code{rmdir} operation on
+@code{filename} instead of performing the equivalent of @code{unlink}.
+@end table
+
+Compared to @code{unlink}, some additional error conditions can occur due to
+descriptor-relative access. @xref{Descriptor-Relative Access}. In
+addition to this, the following other errors can also occur:
+
+@table @code
+@item EISDIR
+The effective final path derived from @var{filename} and @var{filedes} is a
+directory but @code{AT_REMOVEDIR} was not passed in @code{flags}.
+@end table
+@end deftypefun
+
@deftypefun int rmdir (const char *@var{filename})
@standards{POSIX.1, unistd.h}
@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
@@ -1821,6 +1935,20 @@ file systems.
@end table
@end deftypefun
+@deftypefun int renameat (int @var{oldfiledes}, const char *@var{oldname}, int @var{newfiledes}, const char *@var{newname})
+@standards{POSIX.1-2008, stdio.h}
+@comment Unaudited and therefore marked AC-Unsafe and AS-Unsafe by default
+@safety{@mtsafe{}@asunsafe{@asucorrupt{}}@acunsafe{@acucorrupt{}}}
+This function is a descriptor-relative version of the @code{rename}
+function above. @xref{Descriptor-Relative Access}. If @var{oldname} or
+@var{newname} is a relative path, it is interpreted relative to the
+directory associated with @var{oldfiledes} or @var{newfiledes},
+respectively. Absolute paths are interpreted in the usual way.
+
+Compared to @code{rename}, some additional error conditions can occur.
+@xref{Descriptor-Relative Access}.
+@end deftypefun
+
@node Creating Directories
@section Creating Directories
@cindex creating a directory
@@ -1875,6 +2003,17 @@ To use this function, your program should include the header file
@pindex sys/stat.h
@end deftypefun
+@deftypefun int mkdirat (int @var{filedes}, const char *@var{filename}, mode_t @var{mode})
+@standards{POSIX.1-2008, sys/stat.h}
+@comment Unaudited and therefore marked AC-Unsafe and AS-Unsafe by default
+@safety{@mtsafe{}@asunsafe{@asucorrupt{}}@acunsafe{@acucorrupt{}}}
+This function is a descriptor-relative version of the @code{mkdir}
+function above. @xref{Descriptor-Relative Access}.
+
+Compared to @code{mkdir}, some additional error conditions can occur.
+@xref{Descriptor-Relative Access}.
+@end deftypefun
+
@node File Attributes
@section File Attributes
@@ -2259,6 +2398,11 @@ The @var{flags} argument is not valid for this function.
@item ENOTDIR
The descriptor @var{filedes} is not associated with a directory, and
@var{filename} is a relative file name.
+
+@item ENOENT
+The file named by @var{filename} does not exist, it's a dangling symbolic link
+and @var{flags} does not contain @code{AT_SYMLINK_NOFOLLOW}, or @var{filename}
+is an empty string and @var{flags} does not contain @code{AT_EMPTY_PATH}.
@end table
When the sources are compiled with @code{_FILE_OFFSET_BITS == 64} this
@@ -2980,6 +3124,29 @@ Flag meaning test for execute/search permission.
Flag meaning test for existence of the file.
@end deftypevr
+@deftypefun int faccessat (int @var{filedes}, const char *@var{filename}, int @var{how}, int @var{flags})
+@standards{POSIX.1-2008, unistd.h}
+@comment Unaudited and therefore marked AC-Unsafe and AS-Unsafe by default
+@safety{@mtsafe{}@asunsafe{@asucorrupt{}}@acunsafe{@acucorrupt{}}}
+This function is a descriptor-relative version of the @code{access}
+function above. @xref{Descriptor-Relative Access}. The @var{flags}
+argument can contain a combination of the flags @code{AT_EACCESS} described
+below, @code{AT_EMPTY_PATH}, and @code{AT_SYMLINK_NOFOLLOW}.
+
+@vtable @code
+@item AT_EACCESS
+This flag when passed to the @code{faccessat} function causes it to perform
+access checks using effective user and group IDs instead of real IDs, which
+is the default and matches the @code{access} function.
+@end vtable
+
+Compared to @code{access}, some additional error conditions can occur.
+@xref{Descriptor-Relative Access}.
+
+This function may not work correctly on older kernels missing the
+@code{faccessat2} system call.
+@end deftypefun
+
@node File Times
@subsection File Times
@@ -3148,6 +3315,10 @@ permission for the file, or be a privileged user.
@item EBADF
The @var{filedes} argument is not a valid file descriptor.
+@item EINVAL
+At least one of the fields in the @code{tvp} array passed has an invalid
+value.
+
@item EPERM
If the @var{times} argument is not a null pointer, you must either be
the owner of the file or be a privileged user.
@@ -3157,6 +3328,64 @@ The file lives on a read-only file system.
@end table
@end deftypefun
+@deftypefun int futimens (int @var{filedes}, const struct timespec @var{tsp}@t{[2]})
+@standards{POSIX.1-2008, sys/stat.h}
+@comment Unaudited and therefore marked AC-Unsafe and AS-Unsafe by default
+@safety{@mtsafe{}@asunsafe{@asucorrupt{}}@acunsafe{@acucorrupt{}}}
+This function is like @code{futimes}, except that it sets the file access
+and modification timestamps with nanosecond precision. The argument
+@code{tsp} is used similarly to @code{futimes}' @code{tvp}, but has a
+@code{const struct timespec} type that can express calendar time with
+nanosecond precision. @xref{Time Types}.
+@end deftypefun
+
+@deftypefun int utimensat (int @var{filedes}, const char *@var{filename}, const struct timespec @var{tsp}@t{[2]}, int @var{flags})
+@standards{POSIX.1-2008, sys/stat.h}
+@comment Unaudited and therefore marked AC-Unsafe and AS-Unsafe by default
+@safety{@mtsafe{}@asunsafe{@asucorrupt{}}@acunsafe{@acucorrupt{}}}
+This function is a descriptor-relative version of the @code{futimens}
+function above. @xref{Descriptor-Relative Access}. The @var{flags}
+argument can contain a combination of the flags @code{AT_EMPTY_PATH}, and
+@code{AT_SYMLINK_NOFOLLOW}. The call:
+
+@smallexample
+futimens (@var{filedes}, @var{tsp})
+@end smallexample
+
+is equivalent to:
+
+@smallexample
+utimensat (@var{filedes}, @code{NULL}, @var{tsp}, 0)
+@end smallexample
+
+Compared to @code{futimens}, some additional error conditions can occur due
+to descriptor-relative access. @xref{Descriptor-Relative Access}. In
+addition to this, the following other errors can also occur:
+
+@table @code
+@item EINVAL
+The @var{filename} argument is NULL, @var{filedes} is not @code{AT_FDCWD},
+and @var{flags} is not @code{0}.
+
+@item ELOOP
+There are too many levels of indirection. This can be the result of
+circular symbolic links to directories.
+
+@item ENAMETOOLONG
+The resulting path is too long. This error only occurs on systems which
+have a limit on the file name length.
+
+@item ENOENT
+The @var{filename} argument is an empty string and @var{flags} does not
+contain @code{AT_EMPTY_PATH}, or @var{filename} does not refer to an
+existing file.
+
+@item ESRCH
+Search permission was denied for one of the prefix components of the the
+@var{filename} argument.
+@end table
+@end deftypefun
+
@node File Size
@subsection File Size
@@ -3760,22 +3989,17 @@ creation always works like @code{open} with @code{O_EXCL}.
The @code{mkdtemp} function comes from OpenBSD.
@c FIXME these are undocumented:
-@c faccessat
@c fchmodat
@c fchownat
@c futimesat
@c fstatat (there's a commented-out safety assessment for this one)
@c statx
-@c mkdirat
@c mkfifoat
@c name_to_handle_at
@c openat
@c open_by_handle_at
@c readlinkat
-@c renameat
@c renameat2
@c scandirat
@c symlinkat
-@c unlinkat
-@c utimensat
@c mknodat
diff --git a/manual/getopt.texi b/manual/getopt.texi
index b4c0b15..79a9423 100644
--- a/manual/getopt.texi
+++ b/manual/getopt.texi
@@ -301,7 +301,10 @@ application to pass long options with only @samp{-} instead of
@samp{--}. The @samp{--} prefix is still recognized but instead of
looking through the short options if a @samp{-} is seen it is first
tried whether this parameter names a long option. If not, it is parsed
-as a short option.
+as a short option. In case both short and long options could be
+matched (this can happen with single letter long options), the short
+option is preferred (with some caveats). For long options,
+abbreviations are detected as well.
Assuming @code{getopt_long_only} is used starting an application with
@@ -313,6 +316,32 @@ Assuming @code{getopt_long_only} is used starting an application with
the @code{getopt_long_only} will first look for a long option named
@samp{foo}. If this is not found, the short options @samp{f}, @samp{o},
and again @samp{o} are recognized.
+
+It gets more interesting with single letter long options. If we
+define options in the following way
+
+@smallexample
+ static struct option long_options[] = @{
+ @{"f", no_argument, 0, 0 @},
+ @{"foo", no_argument, 0, 0 @},
+ @{0, 0, 0, 0 @},
+ @};
+@end smallexample
+
+@noindent
+use @code{"f"} (as a C string) as an option string and start the
+application with @option{-f}, the short option will be matched.
+@option{--f} will match the long one. And both @option{-fo} and
+@option{-foo} will match the long option @code{"foo"}.
+
+Be aware that if the option string would be @code{"f:"} (thus the
+short option requires an argument), using just @option{-f} leads to an
+error. But using @option{-fo} results in the long option being
+matched. For passing an argument in this situation, you need to do it
+as two arguments (@option{-f}, @option{o}). Though any other value
+would work in a single argument (e.g., @option{-f1}), since it would
+not match a long option (or its abbreviation).
+
@end deftypefun
@node Getopt Long Option Example
diff --git a/manual/install.texi b/manual/install.texi
index 7fcdda9..8f8f0a1 100644
--- a/manual/install.texi
+++ b/manual/install.texi
@@ -320,6 +320,14 @@ If not provided, @option{LEVEL} defaults to highest possible value supported by
the build compiler.
Default is to disable fortification.
+
+@item --enable-sframe
+Experimental option supported by some architectures, where @theglibc{}
+is built with @option{-Wa,--gsframe} if @code{binutils} supports it.
+Currently this is only supported on x86_64 and aarch64. The option
+enables SFrame support on @code{backtrace}.
+
+Default is to disable SFrame support.
@end table
To build the library and related programs, type @code{make}. This will
@@ -535,7 +543,7 @@ GCC 12.1 or newer
GCC 12.1 or higher is required. In general it is recommended to use
the newest version of the compiler that is known to work for building
@theglibc{}, as newer compilers usually produce better code. As of
-release time, GCC 14.2.1 is the newest compiler verified to work to build
+release time, GCC 15.1.1 is the newest compiler verified to work to build
@theglibc{}.
For multi-arch support it is recommended to use a GCC which has been built with
@@ -552,19 +560,13 @@ You can use whatever compiler you like to compile programs that use
Check the FAQ for any special compiler issues on particular platforms.
@item
-GNU @code{binutils} 2.25 or later
+GNU @code{binutils} 2.39 or later
You must use GNU @code{binutils} (as and ld) to build @theglibc{}.
No other assembler or linker has the necessary functionality at the
-moment. As of release time, GNU @code{binutils} 2.43.1 is the newest
+moment. As of release time, GNU @code{binutils} 2.45 is the newest
verified to work to build @theglibc{}.
-For PowerPC 64-bits little-endian (powerpc64le), @command{objcopy} is required
-to support @option{--update-section}. This option requires binutils 2.26 or
-newer.
-
-ARC architecture needs @code{binutils} 2.32 or higher for TLS related fixes.
-
@item
GNU @code{texinfo} 4.7 or later
@@ -581,7 +583,7 @@ GNU @code{awk} 3.1.2, or higher
@code{awk} is used in several places to generate files.
Some @code{gawk} extensions are used, including the @code{asorti}
function, which was introduced in version 3.1.2 of @code{gawk}.
-As of release time, @code{gawk} version 5.3.1 is the newest verified
+As of release time, @code{gawk} version 5.3.2 is the newest verified
to work to build @theglibc{}.
Testing the GNU C Library requires @code{gawk} to be compiled with
@@ -600,7 +602,7 @@ Perl 5
Perl is not required, but if present it is used in some tests and the
@code{mtrace} program, to build the @glibcadj{} manual. As of release
-time @code{perl} version 5.40.0 is the newest verified to work to
+time @code{perl} version 5.42.0 is the newest verified to work to
build @theglibc{}.
@item
@@ -614,7 +616,7 @@ with any version of @code{sed}. As of release time, @code{sed} version
Python 3.4 or later
Python is required to build @theglibc{}. As of release time, Python
-3.12.8 is the newest verified to work for building and testing
+3.13.5 is the newest verified to work for building and testing
@theglibc{}.
@item PExpect 4.0
@@ -634,7 +636,7 @@ missing @code{abnf} module does not reduce the test coverage of the
library itself.
@item
-GDB 7.8 or later with support for Python 2.7/3.4 or later
+GDB 7.8 or later with support for Python 3.4 or later
GDB itself needs to be configured with Python support in order to use
the pretty printers. Notice that your system having Python available
@@ -663,7 +665,7 @@ and if you change any of the message translation files you will need
@item
GNU @code{gettext} 0.10.36 or later
-As of release time, GNU @code{gettext} version 0.23 is the newest
+As of release time, GNU @code{gettext} version 0.23.2 is the newest
version verified to work to build @theglibc{}.
@end itemize
diff --git a/manual/intro.texi b/manual/intro.texi
index d956484..3a45a51 100644
--- a/manual/intro.texi
+++ b/manual/intro.texi
@@ -1061,8 +1061,7 @@ put the @samp{#include} directives immediately afterwards, following the
feature test macro definition (@pxref{Feature Test Macros}).
For more information about the use of header files and @samp{#include}
-directives, @pxref{Header Files,,, cpp.info, The GNU C Preprocessor
-Manual}.
+directives, @pxref{Header Files,,, cpp, The GNU C Preprocessor Manual}.
@Theglibc{} provides several header files, each of which contains
the type and macro definitions and variable and function declarations
diff --git a/manual/libc.texinfo b/manual/libc.texinfo
index ff0beb1..870ed7a 100644
--- a/manual/libc.texinfo
+++ b/manual/libc.texinfo
@@ -29,7 +29,7 @@
@comment %**end of header (This is for running Texinfo on a region.)
@c Everything related to printed editions is disabled until we have
-@c resolved how to keep them in sync with the master sources of the
+@c resolved how to keep them in sync with the primary sources of the
@c manual.
@c sold 0.06/1.09, print run out 21may96
@c @set EDITION 0.13
diff --git a/manual/maint.texi b/manual/maint.texi
index b6ee5b6..58479ec 100644
--- a/manual/maint.texi
+++ b/manual/maint.texi
@@ -496,7 +496,7 @@ the symbol's name. For instance, the macro @code{__clock_gettime64}
expands to @code{clock_gettime}.
When @code{__TIMESIZE} is set to 64, @theglibc{} will also define
-the@code{__USE_TIME_BITS64} macro. It is used by the Linux kernel ABI
+the @code{__USE_TIME_BITS64} macro. It is used by the Linux kernel ABI
to set the expected @code{time_t} size used on some syscalls.
These macros are purely internal to @theglibc{} and exist only so that
@@ -725,8 +725,8 @@ just @w{@samp{--with-@var{package}}} (no argument), then it sets
@item configure.ac
This file is an Autoconf input fragment to be processed into the file
-@file{configure} in this subdirectory. @xref{Introduction,,,
-autoconf.info, Autoconf: Generating Automatic Configuration Scripts},
+@file{configure} in this subdirectory. @xref{Introduction,,, autoconf,
+Autoconf: Generating Automatic Configuration Scripts},
for a description of Autoconf. You should write either @file{configure}
or @file{configure.ac}, but not both. The first line of
@file{configure.ac} should invoke the @code{m4} macro
diff --git a/manual/math.texi b/manual/math.texi
index adbe271..fbabf37 100644
--- a/manual/math.texi
+++ b/manual/math.texi
@@ -803,6 +803,22 @@ The @code{pown} functions are from TS 18661-4:2015 (which used
@code{long long int} in C23).
@end deftypefun
+@deftypefun double compoundn (double @var{x}, long long int @var{power})
+@deftypefunx float compoundnf (float @var{x}, long long int @var{power})
+@deftypefunx {long double} compoundnl (long double @var{x}, long long int @var{power})
+@deftypefunx _FloatN compoundnfN (_Float@var{N} @var{x}, long long int @var{power})
+@deftypefunx _FloatNx compoundnfNx (_Float@var{N}x @var{x}, long long int @var{power})
+@standards{TS 18661-4:2015, math.h}
+@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
+These return @code{1 + @var{x}} raised to @var{power} (an integer).
+If @var{x} is less than @minus{}1, @code{compoundn} signals a domain
+error.
+
+The @code{compoundn} functions are from TS 18661-4:2015 (which used
+@code{intmax_t} as the type of @var{power}; the type changed to
+@code{long long int} in C23).
+@end deftypefun
+
@cindex square root function
@deftypefun double sqrt (double @var{x})
@deftypefunx float sqrtf (float @var{x})
@@ -867,6 +883,22 @@ instead of the direct formula is wise, since the error is
much smaller. See also the function @code{cabs} in @ref{Absolute Value}.
@end deftypefun
+@deftypefun double rootn (double @var{x}, long long int @var{n})
+@deftypefunx float rootnf (float @var{x}, long long int @var{n})
+@deftypefunx {long double} rootnl (long double @var{x}, long long int @var{n})
+@deftypefunx _FloatN rootnfN (_Float@var{N} @var{x}, long long int @var{n})
+@deftypefunx _FloatNx rootnfNx (_Float@var{N}x @var{x}, long long int @var{n})
+@standards{TS 18661-4:2015, math.h}
+@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
+These return the @var{n}th root of @var{x}. If @var{n} is zero, or if
+@var{x} is negative and @var{n} is even, @code{rootn} signals a domain
+error.
+
+The @code{rootn} functions are from TS 18661-4:2015 (which used
+@code{intmax_t} as the type of @var{n}; the type changed to
+@code{long long int} in C23).
+@end deftypefun
+
@deftypefun double expm1 (double @var{x})
@deftypefunx float expm1f (float @var{x})
@deftypefunx {long double} expm1l (long double @var{x})
diff --git a/manual/memory.texi b/manual/memory.texi
index 9a29c7d..46f76c1 100644
--- a/manual/memory.texi
+++ b/manual/memory.texi
@@ -3139,7 +3139,7 @@ used to temporarily acquire access to the memory region and relinquish
it again:
@smallexample
- if (key >= 0 && pkey_set (key, 0) < 0)
+ if (key >= 0 && pkey_set (key, PKEY_UNRESTRICTED) < 0)
...; /* Perform error checking (generally fatal). */
/* At this point, the current thread has read-write access to the
memory region. */
@@ -3256,9 +3256,9 @@ not @math{-1}.
@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
Change the access restrictions of the current thread for memory pages with
the protection key @var{key} to @var{access_restrictions}. If
-@var{access_restrictions} is zero, no additional access restrictions on top of
-the page protection flags are applied. Otherwise, @var{access_restrictions} is
-a combination of the following flags:
+@var{access_restrictions} is @code{PKEY_UNRESTRICTED} (zero), no additional
+access restrictions on top of the page protection flags are applied. Otherwise,
+@var{access_restrictions} is a combination of the following flags:
@vtable @code
@item PKEY_DISABLE_READ
diff --git a/manual/resource.texi b/manual/resource.texi
index acdb1f3..1fd0310 100644
--- a/manual/resource.texi
+++ b/manual/resource.texi
@@ -977,7 +977,7 @@ multiple parameters (not just priority and niceness).
It is expected that these interfaces will be compatible with all future
scheduling policies.
-For additional information about scheduling policies, consult consult
+For additional information about scheduling policies, consult
the manual pages @manpageurl{sched,7} and @manpageurl{sched_setattr,2}.
@strong{Note:} Calling the @code{sched_setattr} function is incompatible
@@ -1015,7 +1015,7 @@ For additional information, consult the manual page
@manpageurl{sched_setattr,2}.
@end deftp
-@deftypefun int sched_setaddr (pid_t @var{tid}, struct sched_attr *@var{attr}, unsigned int flags)
+@deftypefun int sched_setattr (pid_t @var{tid}, struct sched_attr *@var{attr}, unsigned int flags)
@standards{Linux, sched.h}
@safety{@mtsafe{}@assafe{}@acsafe{}}
This functions applies the scheduling policy described by
@@ -1058,7 +1058,7 @@ policy of the thread @var{tid}.
Other error codes depend on the scheduling policy.
@end deftypefun
-@deftypefun int sched_getaddr (pid_t @var{tid}, struct sched_attr *@var{attr}, unsigned int size, unsigned int flags)
+@deftypefun int sched_getattr (pid_t @var{tid}, struct sched_attr *@var{attr}, unsigned int size, unsigned int flags)
@standards{Linux, sched.h}
@safety{@mtsafe{}@assafe{}@acsafe{}}
This function obtains the scheduling policy of the thread @var{tid}
@@ -1362,26 +1362,73 @@ extent the Linux kernel interface.
@standards{GNU, sched.h}
This data set is a bitset where each bit represents a CPU. How the
system's CPUs are mapped to bits in the bitset is system dependent.
-The data type has a fixed size; in the unlikely case that the number
-of bits are not sufficient to describe the CPUs of the system a
-different interface has to be used.
+The data type has a fixed size; it is strongly recommended to allocate
+a dynamically sized set based on the actual number of CPUs detected,
+such as via @code{get_nprocs_conf()}, and use the @code{CPU_*_S}
+variants instead of the fixed-size ones.
This type is a GNU extension and is defined in @file{sched.h}.
@end deftp
-To manipulate the bitset, to set and reset bits, a number of macros are
-defined. Some of the macros take a CPU number as a parameter. Here
-it is important to never exceed the size of the bitset. The following
-macro specifies the number of bits in the @code{cpu_set_t} bitset.
+To manipulate the bitset, to set and reset bits, and thus add and
+remove CPUs from the sets, a number of macros are defined. Some of
+the macros take a CPU number as a parameter. Here it is important to
+never exceed the size of the bitset, either @code{CPU_SETSIZE} for
+fixed sets or the allocated size for dynamic sets. For each macro
+there is a fixed-size version (documented below) and a dynamic-sized
+version (with a @code{_S} suffix).
@deftypevr Macro int CPU_SETSIZE
@standards{GNU, sched.h}
The value of this macro is the maximum number of CPUs which can be
-handled with a @code{cpu_set_t} object.
+handled with a fixed @code{cpu_set_t} object.
@end deftypevr
+For applications that require CPU sets larger than the built-in size,
+a set of macros that support dynamically-sized sets are defined.
+
+@deftypefn Macro size_t CPU_ALLOC_SIZE (size_t @var{count})
+@standards{GNU, sched.h}
+@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
+@c CPU_ALLOC_SIZE ok
+@c __CPU_ALLOC_SIZE ok
+Given a count of CPUs to hold, returns the size of the set to
+allocate. This return value is appropriate to be used in the *_S macros.
+
+This macro is a GNU extension and is defined in @file{sched.h}.
+@end deftypefn
+
+@deftypefn Macro {cpu_set_t *} CPU_ALLOC (size_t @var{count})
+@standards{GNU, sched.h}
+@safety{@prelim{}@mtsafe{}@asunsafe{@asulock{}}@acunsafe{@aculock{} @acsfd{} @acsmem{}}}
+@c CPU_ALLOC
+@c __CPU_ALLOC
+@c __sched_cpualloc
+@c malloc
+Given the count of CPUs to hold, returns a set large enough to hold
+them; that is, the resulting set will be valid for CPUs numbered 0
+through @var{count}-1, inclusive. This set must be freed via
+@code{CPU_FREE} to avoid memory leaks. Warning: the argument is the
+CPU @emph{count} and not the size returned by @code{CPU_ALLOC_SIZE}.
+
+This macro is a GNU extension and is defined in @file{sched.h}.
+@end deftypefn
+
+@deftypefn Macro void CPU_FREE (cpu_set_t *@var{set})
+@standards{GNU, sched.h}
+@safety{@prelim{}@mtsafe{}@asunsafe{@asulock{}}@acunsafe{@aculock{} @acsfd{} @acsmem{}}}
+@c CPU_FREE
+@c __CPU_FREE
+@c __sched_cpufree
+@c free
+Frees a CPU set previously allocated by @code{CPU_ALLOC}.
+
+This macro is a GNU extension and is defined in @file{sched.h}.
+@end deftypefn
+
The type @code{cpu_set_t} should be considered opaque; all
-manipulation should happen via the next four macros.
+manipulation should happen via the @code{CPU_*} macros described
+below.
@deftypefn Macro void CPU_ZERO (cpu_set_t *@var{set})
@standards{GNU, sched.h}
@@ -1424,6 +1471,39 @@ evaluated more than once.
This macro is a GNU extension and is defined in @file{sched.h}.
@end deftypefn
+@deftypefn Macro {cpu_set_t *} CPU_AND (cpu_set_t *@var{dest}, cpu_set_t *@var{src1}, cpu_set_t *@var{src2})
+@standards{GNU, sched.h}
+@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
+@c CPU_AND ok
+@c __CPU_OP_S ok
+This macro populates @var{dest} with only those CPUs included in both
+@var{src1} and @var{src2}. Its value is @var{dest}.
+
+This macro is a GNU extension and is defined in @file{sched.h}.
+@end deftypefn
+
+@deftypefn Macro {cpu_set_t *} CPU_OR (cpu_set_t *@var{dest}, cpu_set_t *@var{src1}, cpu_set_t *@var{src2})
+@standards{GNU, sched.h}
+@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
+@c CPU_OR ok
+@c __CPU_OP_S ok
+This macro populates @var{dest} with those CPUs included in either
+@var{src1} or @var{src2}. Its value is @var{dest}.
+
+This macro is a GNU extension and is defined in @file{sched.h}.
+@end deftypefn
+
+@deftypefn Macro {cpu_set_t *} CPU_XOR (cpu_set_t *@var{dest}, cpu_set_t *@var{src1}, cpu_set_t *@var{src2})
+@standards{GNU, sched.h}
+@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
+@c CPU_XOR ok
+@c __CPU_OP_S ok
+This macro populates @var{dest} with those CPUs included in either
+@var{src1} or @var{src2}, but not both. Its value is @var{dest}.
+
+This macro is a GNU extension and is defined in @file{sched.h}.
+@end deftypefn
+
@deftypefn Macro int CPU_ISSET (int @var{cpu}, const cpu_set_t *@var{set})
@standards{GNU, sched.h}
@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
@@ -1440,6 +1520,54 @@ evaluated more than once.
This macro is a GNU extension and is defined in @file{sched.h}.
@end deftypefn
+@deftypefn Macro int CPU_COUNT (const cpu_set_t *@var{set})
+@standards{GNU, sched.h}
+@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
+@c CPU_COUNT ok
+@c __CPU_COUNT_S ok
+@c __sched_cpucount ok
+@c countbits ok
+This macro returns the count of CPUs (bits) set in @var{set}.
+
+This macro is a GNU extension and is defined in @file{sched.h}.
+@end deftypefn
+
+@deftypefn Macro int CPU_EQUAL (cpu_set_t *@var{src1}, cpu_set_t *@var{src2})
+@standards{GNU, sched.h}
+@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
+@c CPU_EQUAL ok
+@c __CPU_EQUAL_S ok
+@c memcmp ok
+This macro returns nonzero if the two sets @var{set1} and @var{set2}
+have the same contents; that is, the set of CPUs represented by both
+sets is identical.
+
+This macro is a GNU extension and is defined in @file{sched.h}.
+@end deftypefn
+
+@deftypefn Macro void CPU_ZERO_S (size_t @var{size}, cpu_set_t *@var{set})
+@end deftypefn
+@deftypefn Macro void CPU_SET_S (int @var{cpu}, size_t @var{size}, cpu_set_t *@var{set})
+@end deftypefn
+@deftypefn Macro void CPU_CLR_S (int @var{cpu}, size_t @var{size}, cpu_set_t *@var{set})
+@end deftypefn
+@deftypefn Macro {cpu_set_t *} CPU_AND_S (size_t @var{size}, cpu_set_t *@var{dest}, cpu_set_t *@var{src1}, cpu_set_t *@var{src2})
+@end deftypefn
+@deftypefn Macro {cpu_set_t *} CPU_OR_S (size_t @var{size}, cpu_set_t *@var{dest}, cpu_set_t *@var{src1}, cpu_set_t *@var{src2})
+@end deftypefn
+@deftypefn Macro {cpu_set_t *} CPU_XOR_S (size_t @var{size}, cpu_set_t *@var{dest}, cpu_set_t *@var{src1}, cpu_set_t *@var{src2})
+@end deftypefn
+@deftypefn Macro int CPU_ISSET_S (int @var{cpu}, size_t @var{size}, const cpu_set_t *@var{set})
+@end deftypefn
+@deftypefn Macro int CPU_COUNT_S (size_t @var{size}, const cpu_set_t *@var{set})
+@end deftypefn
+@deftypefn Macro int CPU_EQUAL_S (size_t @var{size}, cpu_set_t *@var{src1}, cpu_set_t *@var{src2})
+@end deftypefn
+
+Each of these macros performs the same action as its non-@code{_S} variant,
+but takes a @var{size} argument to specify the set size. This
+@var{size} argument is as returned by the @code{CPU_ALLOC_SIZE} macro,
+defined above.
CPU bitsets can be constructed from scratch or the currently installed
affinity mask can be retrieved from the system.
@@ -1525,6 +1653,53 @@ The operating system does not support this function.
This function is Linux-specific and is declared in @file{sched.h}.
@end deftypefun
+@deftypefun int sched_getcpu (void)
+@standards{Linux, <sched.h>}
+
+Similar to @code{getcpu} but with a simpler interface. On success,
+returns a nonnegative number identifying the CPU on which the current
+thread is running. Returns @code{-1} on failure. The following
+@code{errno} error condition is defined for this function:
+
+@table @code
+@item ENOSYS
+The operating system does not support this function.
+@end table
+
+This function is Linux-specific and is declared in @file{sched.h}.
+@end deftypefun
+
+Here's an example of how to use most of the above to limit the number
+of CPUs a process runs on, not including error handling or good logic
+on CPU choices:
+
+@example
+#define _GNU_SOURCE
+#include <sched.h>
+#include <sys/sysinfo.h>
+#include <unistd.h>
+void
+limit_cpus (void)
+@{
+ unsigned int mycpu;
+ size_t nproc, cssz, cpu;
+ cpu_set_t *cs;
+ getcpu (&mycpu, NULL);
+ nproc = get_nprocs_conf ();
+ cssz = CPU_ALLOC_SIZE (nproc);
+ cs = CPU_ALLOC (nproc);
+ sched_getaffinity (0, cssz, cs);
+ if (CPU_COUNT_S (cssz, cs) > nproc / 2)
+ @{
+ for (cpu = nproc / 2; cpu < nproc; cpu ++)
+ if (cpu != mycpu)
+ CPU_CLR_S (cpu, cssz, cs);
+ sched_setaffinity (0, cssz, cs);
+ @}
+ CPU_FREE (cs);
+@}
+@end example
+
@node Memory Resources
@section Querying memory available resources
diff --git a/manual/socket.texi b/manual/socket.texi
index 8708cbb..d804c7a 100644
--- a/manual/socket.texi
+++ b/manual/socket.texi
@@ -497,7 +497,20 @@ interface name, including its terminating zero byte.
@c takes a lock, which makes all callers AS- and AC-Unsafe.
@c opensock @asulock @aculock @acsfd
This function yields the interface index corresponding to a particular
-name. If no interface exists with the name given, it returns 0.
+name specified with @var{ifname}.
+
+The return value is the interface index on success. On failure, the
+function's return value is zero and @code{errno} is set accordingly.
+The following @code{errno} values are specific to this function:
+
+@table @code
+@item ENODEV
+There is no interface by the name requested.
+@end table
+
+Additionally, since @code{if_nametoindex} invokes @code{socket}
+internally, @code{errno} may also be set to a value listed for the
+@code{socket} function (@pxref{Creating a Socket}).
@end deftypefun
@deftypefun {char *} if_indextoname (unsigned int @var{ifindex}, char *@var{ifname})
@@ -505,11 +518,22 @@ name. If no interface exists with the name given, it returns 0.
@safety{@prelim{}@mtsafe{}@asunsafe{@asulock{}}@acunsafe{@aculock{} @acsfd{}}}
@c It opens a socket with opensock to use ioctl on the fd to get the
@c name from the index.
-This function maps an interface index to its corresponding name. The
-returned name is placed in the buffer pointed to by @code{ifname}, which
-must be at least @code{IFNAMSIZ} bytes in length. If the index was
-invalid, the function's return value is a null pointer, otherwise it is
-@code{ifname}.
+This function maps an interface index @var{ifindex} to its corresponding
+name. The returned name is placed in the buffer pointed to by @var{ifname},
+which must be at least @code{IFNAMSIZ} bytes in length.
+
+The return value is @var{ifname} on success. On failure, the function's
+return value is a null pointer and @code{errno} is set accordingly. The
+following @code{errno} values are specific to this function:
+
+@table @code
+@item ENXIO
+There is no interface at the index requested.
+@end table
+
+Additionally, since @code{if_indextoname} invokes @code{socket}
+internally, @code{errno} may also be set to a value listed for the
+@code{socket} function (@pxref{Creating a Socket}).
@end deftypefun
@deftp {Data Type} {struct if_nameindex}
@@ -1192,6 +1216,17 @@ either @code{AF_INET} or @code{AF_INET6}, as appropriate for the type of
address being converted. @var{cp} is a pointer to the input string, and
@var{buf} is a pointer to a buffer for the result. It is the caller's
responsibility to make sure the buffer is large enough.
+
+The return value is @code{1} on success and @code{0} if @var{cp} does not
+point to a valid address string for the address family @var{af} requested.
+On failure, the function's return value is @code{-1} and @code{errno} is
+set accordingly. The following @code{errno} values are specific to this
+function:
+
+@table @code
+@item EAFNOSUPPORT
+The address family requested is neither @code{AF_INET} nor @code{AF_INET6}.
+@end table
@end deftypefun
@deftypefun {const char *} inet_ntop (int @var{af}, const void *@var{cp}, char *@var{buf}, socklen_t @var{len})
@@ -1211,7 +1246,19 @@ network (binary) to presentation (textual) form. @var{af} should be
either @code{AF_INET} or @code{AF_INET6}, as appropriate. @var{cp} is a
pointer to the address to be converted. @var{buf} should be a pointer
to a buffer to hold the result, and @var{len} is the length of this
-buffer. The return value from the function will be this buffer address.
+buffer.
+
+The return value is @var{buf} on success. On failure, the function's
+return value is a null pointer and @code{errno} is set accordingly.
+The following @code{errno} values are specific to this function:
+
+@table @code
+@item EAFNOSUPPORT
+The address family requested is neither @code{AF_INET} nor @code{AF_INET6}.
+
+@item ENOSPC
+Insufficient space available for the result in the buffer provided.
+@end table
@end deftypefun
@node Host Names
@@ -2205,9 +2252,19 @@ socket, or @code{-1} in case of error. The following @code{errno} error
conditions are defined for this function:
@table @code
+@item EAFNOSUPPORT
+The @var{namespace} requested is not supported.
+
+@item ESOCKTNOSUPPORT
+@itemx EPROTONOSUPPORT
+@itemx EPROTOTYPE
+The @var{style} is not supported by the @var{namespace} specified.
+
@item EPROTONOSUPPORT
-The @var{protocol} or @var{style} is not supported by the
-@var{namespace} specified.
+The @var{protocol} is not supported by the @var{namespace} specified.
+
+@item EINVAL
+The @var{style} or @var{protocol} requested is not valid.
@item EMFILE
The process already has too many file descriptors open.
@@ -2216,11 +2273,13 @@ The process already has too many file descriptors open.
The system already has too many file descriptors open.
@item EACCES
+@itemx EPERM
The process does not have the privilege to create a socket of the specified
@var{style} or @var{protocol}.
@item ENOBUFS
-The system ran out of internal buffer space.
+@itemx ENOMEM
+Insufficient memory was available.
@end table
The file descriptor returned by the @code{socket} function supports both
diff --git a/manual/stdio.texi b/manual/stdio.texi
index 01b9f47..16d4594 100644
--- a/manual/stdio.texi
+++ b/manual/stdio.texi
@@ -1231,17 +1231,18 @@ convenient to have functions to read a line of text from a stream.
Standard C has functions to do this, but they aren't very safe: null
characters and even (for @code{gets}) long lines can confuse them. So
-@theglibc{} provides the nonstandard @code{getline} function that
-makes it easy to read lines reliably.
+@theglibc{} provides the @code{getline} function that makes it easy to
+read lines reliably.
-Another GNU extension, @code{getdelim}, generalizes @code{getline}. It
-reads a delimited record, defined as everything through the next
-occurrence of a specified delimiter character.
+The @code{getdelim} function is a generalized version of @code{getline}.
+It reads a delimited record, defined as everything through the next
+occurrence of a specified delimiter character. These functions were
+both GNU extensions until standardized by POSIX.1-2008.
All these functions are declared in @file{stdio.h}.
-@deftypefun ssize_t getline (char **@var{lineptr}, size_t *@var{n}, FILE *@var{stream})
-@standards{GNU, stdio.h}
+@deftypefun ssize_t getline (char **restrict @var{lineptr}, size_t *restrict @var{n}, FILE *restrict @var{stream})
+@standards{POSIX.1-2008, stdio.h}
@safety{@prelim{}@mtsafe{}@asunsafe{@asucorrupt{} @ascuheap{}}@acunsafe{@aculock{} @acucorrupt{} @acsmem{}}}
@c Besides the usual possibility of getting an inconsistent stream in a
@c signal handler or leaving it inconsistent in case of cancellation,
@@ -1274,15 +1275,15 @@ read (including the newline, but not including the terminating null).
This value enables you to distinguish null characters that are part of
the line from the null character inserted as a terminator.
-This function is a GNU extension, but it is the recommended way to read
-lines from a stream. The alternative standard functions are unreliable.
+This function was originally a GNU extension, but was added in
+POSIX.1-2008.
If an error occurs or end of file is reached without any bytes read,
@code{getline} returns @code{-1}.
@end deftypefun
-@deftypefun ssize_t getdelim (char **@var{lineptr}, size_t *@var{n}, int @var{delimiter}, FILE *@var{stream})
-@standards{GNU, stdio.h}
+@deftypefun ssize_t getdelim (char **restrict @var{lineptr}, size_t *restrict @var{n}, int @var{delimiter}, FILE *restrict @var{stream})
+@standards{POSIX.1-2008, stdio.h}
@safety{@prelim{}@mtsafe{}@asunsafe{@asucorrupt{} @ascuheap{}}@acunsafe{@aculock{} @acucorrupt{} @acsmem{}}}
@c See the getline @acucorrupt note.
This function is like @code{getline} except that the character which
@@ -1294,6 +1295,9 @@ The text is stored in @var{lineptr}, including the delimiter character
and a terminating null. Like @code{getline}, @code{getdelim} makes
@var{lineptr} bigger if it isn't big enough.
+This function was originally a GNU extension, but was added in
+POSIX.1-2008.
+
@code{getline} is in fact implemented in terms of @code{getdelim}, just
like this:
@@ -3514,8 +3518,8 @@ If you are trying to read input that doesn't match a single, fixed
pattern, you may be better off using a tool such as Flex to generate a
lexical scanner, or Bison to generate a parser, rather than using
@code{scanf}. For more information about these tools, see @ref{Top, , ,
-flex.info, Flex: The Lexical Scanner Generator}, and @ref{Top, , ,
-bison.info, The Bison Reference Manual}.
+flex, Flex: The Lexical Scanner Generator}, and @ref{Top, , , bison, The
+Bison Reference Manual}.
@node Input Conversion Syntax
@subsection Input Conversion Syntax
diff --git a/manual/terminal.texi b/manual/terminal.texi
index b437cb5..8f4bb84 100644
--- a/manual/terminal.texi
+++ b/manual/terminal.texi
@@ -13,6 +13,7 @@ Most of the functions in this chapter operate on file descriptors.
descriptor is and how to open a file descriptor for a terminal device.
@menu
+* Terminal Device Model:: The fundamental concepts of a terminal device
* Is It a Terminal:: How to determine if a file is a terminal
device, and what its name is.
* I/O Queues:: About flow control and typeahead.
@@ -28,6 +29,83 @@ descriptor is and how to open a file descriptor for a terminal device.
* Pseudo-Terminals:: How to open a pseudo-terminal.
@end menu
+@node Terminal Device Model
+@section Terminal Device Model
+@cindex terminal model
+
+A @dfn{terminal device}, abbreviated @code{tty} (for @dfn{teletype}), is
+a character device which implements a set of functionality appropriate
+for communications devices, and which can host an interactive login
+session. Conceptually, a terminal device implements an RS232
+asynchronous serial interface, but the actual hardware implementation
+may be entirely different, or it may be entirely virtual, notably
+@pxref{Pseudo-Terminals}.
+
+For a true conventional asynchronous serial port, such as RS232/V.24,
+RS422/V.11, RS423, or RS485, the functionality is generally as
+described, whereas for other devices, the meaning of serial port
+specific functionality such as modem control signals, BREAK, and line
+speed is device specific.
+
+The rest of this section is described in terms of a physical RS232
+interface.
+
+The RS232 specification assumes the host (Data Terminal Equipment, DTE)
+connects to a modem (Data Communications Equipment, DCE), regardless of
+if a physical modem is present or not.
+
+In addition to the serial data, the DTE provides a set of control
+signals to the DCE, and the DCE a set of status signals to the DTE. The
+full RS232 and V.24 specifications provide a large number of signals,
+but the ones that are typically implemented in contemporary hardware and
+are relevant to the terminal device interface are:
+
+@table @asis
+@item DTR - Data Terminal Ready (control)
+
+If asserted (true), the DTE is ready to accept/continue an incoming
+communications session. If deasserted (false), this is a
+@dfn{modem disconnect request} to the DCE. The DCE may, but is not
+required to, trigger a modem disconnect in response.
+@cindex modem disconnect request
+
+@item RTS - Request To Send (control)
+
+This signal is also referred to as Ready To Receive (RTR).
+
+If asserted, the DTE is ready to accept data. If deasserted, the DCE is
+requested to hold data temporarily without disconnecting. This is known
+as hardware or RTS/CTS @dfn{flow control} and can be handled
+automatically if the appropriate terminal mode flags are set.
+
+@item DSR - Data Set Ready (status)
+
+If asserted, the DCE is ready to communicate, but may or may not have a
+connection to a remote peer.
+
+@item DCD - Data Carrier Detect (status)
+
+If asserted, the DCE has a connection to the remote peer. If
+deasserted, this is a @dfn{modem disconnect} signal to the DTE. A modem
+disconnect may be triggered in response to the DTR control signal being
+deasserted, or it may be caused by an external event.
+@cindex modem disconnect
+
+@item CTS - Clear To Send (status)
+
+If asserted, the DCE is ready to accept data. If deasserted, the DTE is
+requested to hold data temporarily but should not interpret it as a
+disconnect. This is the DCE to DTE part of RTS/CTS flow
+control.
+
+@item RI - Ring Indicator (status)
+
+If asserted, this indicates that a remote peer is requesting to connect
+(``the phone is ringing''). Depending on how the DCE is configured, the
+DTE may need to assert the DTR control signal before the DCE will accept
+the incoming connection.
+@end table
+
@node Is It a Terminal
@section Identifying Terminals
@cindex terminal identification
@@ -685,8 +763,10 @@ clear the condition.
@deftypevr Macro tcflag_t HUPCL
@standards{POSIX.1, termios.h}
-If this bit is set, a modem disconnect is generated when all processes
-that have the terminal device open have either closed the file or exited.
+If this bit is set, a modem disconnect request is generated when all
+processes that have the terminal device open have either closed the file
+or exited.
+@cindex modem disconnect request
@end deftypevr
@deftypevr Macro tcflag_t CREAD
@@ -771,11 +851,11 @@ If this bit is set, it says to ignore the control modes and line speed
values entirely. This is only meaningful in a call to @code{tcsetattr}.
The @code{c_cflag} member and the line speed values returned by
-@code{cfgetispeed} and @code{cfgetospeed} will be unaffected by the
-call. @code{CIGNORE} is useful if you want to set all the software
-modes in the other members, but leave the hardware details in
-@code{c_cflag} unchanged. (This is how the @code{TCSASOFT} flag to
-@code{tcsettattr} works.)
+@code{cfgetispeed}, @code{cfgetospeed}, @code{cfgetibaud} and
+@code{cfsetibaud} will be unaffected by the call. @code{CIGNORE} is
+useful if you want to set all the software modes in the other members,
+but leave the hardware details in @code{c_cflag} unchanged. (This is
+how the @code{TCSASOFT} flag to @code{tcsetattr} works.)
This bit is never set in the structure filled in by @code{tcgetattr}.
@end deftypevr
@@ -965,106 +1045,82 @@ bit remains set until reprinting is finished. @xref{Editing Characters}.
The terminal line speed tells the computer how fast to read and write
data on the terminal.
-If the terminal is connected to a real serial line, the terminal speed
-you specify actually controls the line---if it doesn't match the
-terminal's own idea of the speed, communication does not work. Real
-serial ports accept only certain standard speeds. Also, particular
-hardware may not support even all the standard speeds. Specifying a
-speed of zero hangs up a dialup connection and turns off modem control
-signals.
-
-If the terminal is not a real serial line (for example, if it is a
-network connection), then the line speed won't really affect data
-transmission speed, but some programs will use it to determine the
-amount of padding needed. It's best to specify a line speed value that
-matches the actual speed of the actual terminal, but you can safely
-experiment with different values to vary the amount of padding.
+For standard asynchronous serial lines employing binary NRZ encoding
+such as RS232, RS422, RS423, or RS485, the terminal speed will equal the
+physical layer baud rate including asynchronous framing and parity bits.
+This needs to match the communication speed expected by the peer device,
+or communication will not work. Which particular speeds are supported
+by any particular interface is hardware specific.
+
+For other types of devices the meaning of the line speed is
+device-specific and may not even affect the actual data transmission
+speed at all (for example, if it is a pseudo-terminal or network
+connection), but some programs will use it to determine the amount of
+padding needed. It's best to specify a line speed value that matches
+the actual speed of the actual terminal, but you can safely experiment
+with different values to vary the amount of padding.
+
+As the terminal interface models an RS232 serial interface
+(@pxref{Terminal Device Model}), the term ``baud rate'' is frequently
+used as a direct alias for ``line speed''; this convention is followed
+in the following descriptions.
There are actually two line speeds for each terminal, one for input and
one for output. You can set them independently, but most often
-terminals use the same speed for both directions.
+terminals use the same speed for both directions. If the hardware does
+not support different speeds for each direction, the output speed will
+be used for both input and output.
-The speed values are stored in the @code{struct termios} structure, but
-don't try to access them in the @code{struct termios} structure
-directly. Instead, you should use the following functions to read and
-store them:
+Specifying an output speed of zero generates a modem disconnect request.
+For the @code{speed_t} interface, this is the constant @code{B0} which
+may or may not have the numeric value @math{0}.
-@deftypefun speed_t cfgetospeed (const struct termios *@var{termios-p})
-@standards{POSIX.1, termios.h}
-@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
-@c Direct access to a single termios field, except on Linux, where
-@c multiple accesses may take place. No worries either way, callers
-@c must ensure mutual exclusion on such non-opaque types.
-This function returns the output line speed stored in the structure
-@code{*@var{termios-p}}.
-@end deftypefun
-
-@deftypefun speed_t cfgetispeed (const struct termios *@var{termios-p})
-@standards{POSIX.1, termios.h}
-@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
-This function returns the input line speed stored in the structure
-@code{*@var{termios-p}}.
-@end deftypefun
-
-@deftypefun int cfsetospeed (struct termios *@var{termios-p}, speed_t @var{speed})
-@standards{POSIX.1, termios.h}
-@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
-This function stores @var{speed} in @code{*@var{termios-p}} as the output
-speed. The normal return value is @math{0}; a value of @math{-1}
-indicates an error. If @var{speed} is not a speed, @code{cfsetospeed}
-returns @math{-1}.
-@end deftypefun
+Specifying an input speed value of zero sets the input speed to equal
+the output speed. This is the numeric constant @math{0} (not
+necessarily the same as @code{B0}) for both the @code{speed_t} and
+@code{baud_t} interfaces. This use is deprecated.
-@deftypefun int cfsetispeed (struct termios *@var{termios-p}, speed_t @var{speed})
-@standards{POSIX.1, termios.h}
-@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
-This function stores @var{speed} in @code{*@var{termios-p}} as the input
-speed. The normal return value is @math{0}; a value of @math{-1}
-indicates an error. If @var{speed} is not a speed, @code{cfsetospeed}
-returns @math{-1}.
-@end deftypefun
-
-@deftypefun int cfsetspeed (struct termios *@var{termios-p}, speed_t @var{speed})
-@standards{BSD, termios.h}
-@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
-@c There's no guarantee that the two calls are atomic, but since this is
-@c not an opaque type, callers ought to ensure mutual exclusion to the
-@c termios object.
-
-@c cfsetspeed ok
-@c cfsetispeed ok
-@c cfsetospeed ok
-This function stores @var{speed} in @code{*@var{termios-p}} as both the
-input and output speeds. The normal return value is @math{0}; a value
-of @math{-1} indicates an error. If @var{speed} is not a speed,
-@code{cfsetspeed} returns @math{-1}. This function is an extension in
-4.4 BSD.
-@end deftypefun
+The line speed values are stored in the @code{struct termios} structure, but
+don't try to access them in the @code{struct termios} structure
+directly. Instead, you should use the functions defined by the
+interfaces below to access them.
+
+The line speed setting functions report errors only when attempting to
+set line rate values that the system simply cannot handle. If you
+specify a line speed value that is plausible for the system, then the
+functions will succeed. However, they do not check that a particular
+hardware device can actually support the specified value---in fact, they
+don't know which device you plan to set the line speed for until
+@code{tcsetattr} is called. If you use @code{tcsetattr} to set the
+speed of a particular device to a value that it cannot handle, either
+@code{tcsetattr} returns @math{-1} and sets @code{errno} to
+@code{EINVAL}, or the value is adjusted to the closest supported value,
+depending on the policy of the kernel driver. In the latter case, a
+subsequent call to @code{tcgetattr} may or may not reflect this
+adjustment.
+
+@Theglibc{} supports two interoperable interfaces for setting the line
+speed: the POSIX.1 @code{speed_t} interface, which requires the use of a
+set of enumerated constants, and the @code{baud_t} interface, a GNU
+extension, which is guaranteed to use plain numeric values.
+
+@subsubsection The @code{speed_t} interface
@deftp {Data Type} speed_t
@standards{POSIX.1, termios.h}
The @code{speed_t} type is an unsigned integer data type used to
represent line speeds.
-@end deftp
-The functions @code{cfsetospeed} and @code{cfsetispeed} report errors
-only for speed values that the system simply cannot handle. If you
-specify a speed value that is basically acceptable, then those functions
-will succeed. But they do not check that a particular hardware device
-can actually support the specified speeds---in fact, they don't know
-which device you plan to set the speed for. If you use @code{tcsetattr}
-to set the speed of a particular device to a value that it cannot
-handle, @code{tcsetattr} returns @math{-1}.
-
-@strong{Portability note:} In @theglibc{}, the functions above
-accept speeds measured in bits per second as input, and return speed
-values measured in bits per second. Other libraries require speeds to
-be indicated by special codes. For POSIX.1 portability, you must use
+@strong{Portability note:} In the current version of @theglibc{}, the
+@code{speed_t} type is numerically indentical to the line speed rate.
+Other libraries and older versions of @theglibc{} may require speeds to
+be indicated by enumerated constants, which may not be numerically
+identical to the requested line speed. For portability, you must use
one of the following symbols to represent the speed; their precise
numeric values are system-dependent, but each name has a fixed meaning:
@code{B110} stands for 110 bps, @code{B300} for 300 bps, and so on.
-There is no portable way to represent any speed but these, but these are
-the only speeds that typical serial lines can support.
+There is no portable way to represent any speed but these.
+@end deftp
@comment termios.h
@comment POSIX.1
@@ -1114,23 +1170,92 @@ the only speeds that typical serial lines can support.
@comment termios.h
@comment POSIX.1
@vindex B38400
+@smallexample
+B0 B50 B75 B110 B134 B150 B200 B300 B600 B1200
+B1800 B2400 B4800 B9600 B19200 B38400
+@end smallexample
+
+@Theglibc{} defines these additional constants:
+
+@comment termios.h
+@comment GNU
+@vindex B7200
+@comment termios.h
+@comment GNU
+@vindex B14400
+@comment termios.h
+@comment GNU
+@vindex B28800
+@comment termios.h
+@comment GNU
+@vindex B33600
@comment termios.h
@comment GNU
@vindex B57600
@comment termios.h
@comment GNU
+@vindex B76800
+@comment termios.h
+@comment GNU
@vindex B115200
@comment termios.h
@comment GNU
+@vindex B153600
+@comment termios.h
+@comment GNU
@vindex B230400
@comment termios.h
@comment GNU
+@vindex B307200
+@comment termios.h
+@comment GNU
@vindex B460800
+@comment termios.h
+@comment GNU
+@vindex B500000
+@comment termios.h
+@comment GNU
+@vindex B576000
+@comment termios.h
+@comment GNU
+@vindex B614400
+@comment termios.h
+@comment GNU
+@vindex B921600
+@comment termios.h
+@comment GNU
+@vindex B1000000
+@comment termios.h
+@comment GNU
+@vindex B1152000
+@comment termios.h
+@comment GNU
+@vindex B1500000
+@comment termios.h
+@comment GNU
+@vindex B2000000
+@comment termios.h
+@comment GNU
+@vindex B2500000
+@comment termios.h
+@comment GNU
+@vindex B3000000
+@comment termios.h
+@comment GNU
+@vindex B3500000
+@comment termios.h
+@comment GNU
+@vindex B4000000
+@comment termios.h
+@comment GNU
+@vindex B5000000
+@comment termios.h
+@comment GNU
+@vindex B10000000
@smallexample
-B0 B50 B75 B110 B134 B150 B200
-B300 B600 B1200 B1800 B2400 B4800
-B9600 B19200 B38400 B57600 B115200
-B230400 B460800
+B7200 B14400 B28800 B33600 B57600 B76800 B115200 B153600 B230400 B307200
+B460800 B500000 B576000 B614400 B921600 B1000000 B1152000 B1500000
+B2000000 B2500000 B3000000 B3500000 B4000000 B5000000 B10000000
@end smallexample
@vindex EXTA
@@ -1139,6 +1264,172 @@ BSD defines two additional speed symbols as aliases: @code{EXTA} is an
alias for @code{B19200} and @code{EXTB} is an alias for @code{B38400}.
These aliases are obsolete.
+@deftypevr Macro speed_t SPEED_MAX
+@standards{GNU, termios.h}
+
+@Theglibc{} defines the constant @code{SPEED_MAX} for the largest valid
+value of type @code{speed_t}. This value may be smaller than the
+underlying C type can store.
+
+For compatiblity with some other platforms the alias @code{__MAX_BAUD}
+is defined for this constant.
+@end deftypevr
+
+@deftypefun speed_t cfgetospeed (const struct termios *@var{termios-p})
+@standards{POSIX.1, termios.h}
+@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
+@c Direct access to a single termios field. However, this may not be
+@c true on other implementations; callers must ensure mutual exclusion
+@c on such non-opaque types.
+This function returns the output line speed stored in the structure
+@code{*@var{termios-p}}.
+@end deftypefun
+
+@deftypefun speed_t cfgetispeed (const struct termios *@var{termios-p})
+@standards{POSIX.1, termios.h}
+@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
+This function returns the input line speed stored in the structure
+@code{*@var{termios-p}}.
+@end deftypefun
+
+@deftypefun int cfsetospeed (struct termios *@var{termios-p}, speed_t @var{speed})
+@standards{POSIX.1, termios.h}
+@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
+@c Direct access to a single termios field, except on Linux, where two
+@c fields are accessed, one of which (c_cflag) is read-modify-write. No
+@c worries either way, callers must ensure mutual exclusion on such
+@c non-opaque types.
+This function stores @var{speed} in @code{*@var{termios-p}} as the
+output line speed. If @var{speed} is @code{B0}, generates a modem
+disconnect request.
+
+If @var{speed} is neither a plausible line speed nor @code{B0},
+@code{cfsetospeed} returns @math{-1} and sets @code{errno} to
+@code{EINVAL}.
+@end deftypefun
+
+@deftypefun int cfsetispeed (struct termios *@var{termios-p}, speed_t @var{speed})
+@standards{POSIX.1, termios.h}
+@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
+This function stores @var{speed} in @code{*@var{termios-p}} as the input
+speed. If @var{speed} is @math{0}, the input speed is set to equal the
+output speed; note that POSIX.1 specifies this as the numeric value
+@math{0} which is not required to equal the constant @code{B0}.
+
+If @var{speed} is not a plausible line speed or @math{0},
+@code{cfsetispeed} returns @math{-1} and sets @code{errno} to
+@code{EINVAL}.
+
+@strong{Portability note:} POSIX.1-2024 has deprecated setting of the
+input speed to @math{0} to set the input line speed to equal the output
+line speed. After calling @code{tcsetattr} followed by
+@code{tcgetattr}, @code{cfgetispeed} may report the input line speed
+either as @math{0} or the same as @code{cfgetospeed}.
+@end deftypefun
+
+@deftypefun int cfsetspeed (struct termios *@var{termios-p}, speed_t @var{speed})
+@standards{BSD, termios.h}
+@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
+@c There's no guarantee that the two calls are atomic, but since this is
+@c not an opaque type, callers ought to ensure mutual exclusion to the
+@c termios object.
+
+@c cfsetspeed ok
+@c cfsetispeed ok
+@c cfsetospeed ok
+This function stores @var{speed} in @code{*@var{termios-p}} as both the
+input and output speeds.
+
+If @var{baud} is not a plausible line speed, @code{cfsetbaud} returns
+@math{-1} and sets @code{errno} to @code{EINVAL}.
+
+This function is an extension which originated in 4.4 BSD.
+@end deftypefun
+
+@subsubsection The @code{baud_t} interface
+
+@deftp {Data Type} baud_t
+@standards{GNU, termios.h}
+The @code{baud_t} type is a numeric data type used to represent line
+baud rates. It will always represent the actual numeric value
+corresponding to the line speed, unlike @code{speed_t}. In the current
+version of @theglibc{} this is the same type as @code{speed_t}, but this
+may not be the case in future versions or on other implementations; it
+is specifically not guaranteed to be an integer type.
+@end deftp
+
+@deftypevr Macro baud_t BAUD_MAX
+@standards{GNU, termios.h}
+The constant @code{BAUD_MAX} is defined to the maximum valid value of
+type @code{baud_t}. This value may be smaller than the underlying C
+type can store.
+@end deftypevr
+
+@deftypefun baud_t cfgetobaud (const struct termios *@var{termios-p})
+@standards{GNU, termios.h}
+@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
+@c Direct access to a single termios field. However, this may not be
+@c true on other implementations; callers must ensure mutual exclusion
+@c on such non-opaque types.
+This function returns the output line speed stored in the structure
+@code{*@var{termios-p}} as a numeric value.
+@end deftypefun
+
+@deftypefun baud_t cfgetibaud (const struct termios *@var{termios-p})
+@standards{GNU, termios.h}
+@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
+This function returns the input line speed stored in the structure
+@code{*@var{termios-p}} as a numeric value.
+@end deftypefun
+
+@deftypefun int cfsetobaud (struct termios *@var{termios-p}, baud_t @var{baud})
+@standards{GNU, termios.h}
+@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
+@c Direct access to a single termios field, except on Linux, where two
+@c fields are accessed, one of which (c_cflag) is read-modify-write. No
+@c worries either way, callers must ensure mutual exclusion on such
+@c non-opaque types.
+This function stores @var{baud} in @code{*@var{termios-p}} as the output
+line speed. If @var{baud} is @math{0}, generates a modem disconnect.
+
+If @var{speed} is not a plausible line speed, @code{cfsetspeed} returns
+@math{-1} and sets @code{errno} to @code{EINVAL}.
+@end deftypefun
+
+@deftypefun int cfsetibaud (struct termios *@var{termios-p}, baud_t @var{baud})
+@standards{GNU, termios.h}
+@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
+This function stores @var{baud} in @code{*@var{termios-p}} as the input
+line speed.
+
+To simplify conversions from the @code{speed_t} interface, setting the
+input line speed to @math{0} is interpreted as setting the input line
+speed equal to the output line speed. The caveats described under
+@code{cfsetispeed} apply equally to @code{cfsetibaud}. As for
+@code{cfsetispeed}, this usage is deprecated.
+
+If @var{baud} is not a plausible line speed or @math{0},
+@code{cfsetibaud} returns @math{-1} and sets @code{errno} to
+@code{EINVAL}.
+@end deftypefun
+
+@deftypefun int cfsetbaud (struct termios *@var{termios-p}, baud_t @var{baud})
+@standards{GNU, termios.h}
+@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
+@c There's no guarantee that the two calls are atomic, but since this is
+@c not an opaque type, callers should ensure mutual exclusion to the
+@c termios object.
+
+@c cfsetbaud ok
+@c cfsetibaud ok
+@c cfsetobaud ok
+This function stores @var{baud} in @code{*@var{termios-p}} as both the
+input and output line speeds.
+
+If @var{baud} is not a plausible line speed, @code{cfsetbaud} returns
+@math{-1} and sets @code{errno} to @code{EINVAL}.
+@end deftypefun
+
@node Special Characters
@subsection Special Characters
diff --git a/manual/threads.texi b/manual/threads.texi
index 67955e1..eeefa9b 100644
--- a/manual/threads.texi
+++ b/manual/threads.texi
@@ -552,16 +552,99 @@ get different values identified by the same key. On failure,
This section describes the @glibcadj{} POSIX Threads implementation.
@menu
+* Creating and Destroying Threads::
* Thread-specific Data:: Support for creating and
managing thread-specific data
* Waiting with Explicit Clocks:: Functions for waiting with an
explicit clock specification.
* POSIX Semaphores:: Support for process and thread
synchronization using semaphores
+* POSIX Barriers:: Support for process and thread
+ synchronization using barriers
+* POSIX Spin Locks:: Support for process and thread
+ synchronization using spinlocks
+* POSIX Mutexes:: Support for mutual exclusion
+* POSIX Threads Other APIs:: Other Standard functions
* Non-POSIX Extensions:: Additional functions to extend
POSIX Thread functionality
@end menu
+@node Creating and Destroying Threads
+@subsection Creating and Destroying Threads
+
+@deftypefun int pthread_create (pthread_t *@var{newthread}, const pthread_attr_t *@var{attr}, void *(*@var{start_routine}) (void *), void *@var{arg})
+This function creates a new thread with attributes @var{attr}. This
+thread will call @var{start_routine} and pass it @var{arg}. If
+@var{start_routine} returns, the thread will exit and the return value
+will become the thread's exit value. The new thread's ID is stored in
+@var{newthread}. Returns 0 on success.
+@manpagefunctionstub{pthread_create, 3}
+@end deftypefun
+
+@deftypefun int pthread_detach (pthread_t @var{th})
+Indicates that thread @var{th} must clean up after itself
+automatically when it exits, as the parent thread will not call
+@code{pthread_join} on it.
+@manpagefunctionstub{pthread_detach, 3}
+@end deftypefun
+
+@deftypefun int pthread_join (pthread_t @var{th}, void **@var{thread_return})
+Waits for thread @var{th} to exit, and stores its return value in
+@var{thread_return}.
+@manpagefunctionstub{pthread_join, 3}
+@end deftypefun
+
+@deftypefun int pthread_kill (pthread_t @var{th}, int @var{signal})
+Sends signal @var{signal} to thread @var{th}.
+@manpagefunctionstub{pthread_kill, 3}
+@end deftypefun
+
+@deftypefun pthread_t pthread_self (void)
+Returns the ID of the thread which performed the call.
+@manpagefunctionstub{pthread_self, 3}
+@end deftypefun
+
+Each thread has a set of attributes which are passed to
+@code{pthread_create} via the @code{pthread_attr_t} type, which should
+be considered an opaque type.
+
+@deftypefun int pthread_attr_init (pthread_attr_t *@var{attr})
+Initializes @var{attr} to its default values and allocates any
+resources required. Once initialized, @var{attr} can be modified by
+other @code{pthread_attr_*} functions, or used by
+@code{pthread_create}.
+@manpagefunctionstub{pthread_attr_init, 3}
+@end deftypefun
+
+@deftypefun int pthread_attr_destroy (pthread_attr_t *@var{attr})
+When no longer needed, @var{attr} should be destroyed with this
+function, which releases any resources allocated. Note that
+@var{attr} is only needed for the @code{pthread_create} call, not for
+the running thread itself.
+@manpagefunctionstub{pthread_attr_destroy, 3}
+@end deftypefun
+
+@deftypefun int pthread_attr_setdetachstate (pthread_attr_t *@var{attr}, int @var{detachstate})
+Sets the detach state attribute for @var{attr}. This attribute may be one of the following:
+
+@table @code
+@item PTHREAD_CREATE_DETACHED
+Causes the created thread to be detached, that is, as if
+@code{pthread_detach} had been called on it.
+
+@item PTHREAD_CREATE_JOINABLE
+Causes the created thread to be joinable, that is, @code{pthread_join}
+must be called on it.
+@end table
+
+@manpagefunctionstub{pthread_attr_setdetachstate, 3}
+@end deftypefun
+
+@deftypefun int pthread_attr_getdetachstate (const pthread_attr_t *@var{attr}, int *@var{detachstate})
+Gets the detach state attribute from @var{attr}.
+@manpagefunctionstub{pthread_attr_getdetachstate, 3}
+@end deftypefun
+
@node Thread-specific Data
@subsection Thread-specific Data
@@ -769,6 +852,272 @@ against the clock specified by @var{clockid} rather than
@end deftypefun
+@node POSIX Barriers
+@subsection POSIX Barriers
+
+A POSIX barrier works as follows: a file-local or global
+@code{pthread_barrier_t} object is initialized via
+@code{pthread_barrier_init} to require @var{count} threads to wait on
+it. After that, up to @var{count}-1 threads will wait on the barrier
+via @code{pthread_barrier_wait}. None of these calls will return
+until @var{count} threads are waiting via the next call to
+@code{pthread_barrier_wait}, at which point, all of these calls will
+return. The net result is that @var{count} threads will be
+synchronized at that point. At some point after this, the barrier is
+destroyed via @code{pthread_barrier_destroy}. Note that a barrier
+must be destroyed before being re-initialized, to ensure that all
+threads are properly synchronized, but need not be destroyed and
+re-initialized before being reused.
+
+@deftypefun int pthread_barrier_init (pthread_barrier_t *@var{barrier}, const pthread_barrierattr_t *@var{attr}, unsigned int @var{count})
+@standards{POSIX, pthread.h}
+@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
+
+This function initializes a barrier to synchronize @var{count}
+threads. The barrier must be uninitialized or destroyed before it is
+initialized; attempting to initialize an in-use barrier results in
+undefined behavior.
+
+The @var{attr} argument to @code{pthread_barrier_init} is typically
+NULL for a process-private barrier, but may be used to share a barrier
+across processes (documentation TBD).
+
+On success, 0 is returned. On error, one of the following is returned:
+
+@table @code
+@item EINVAL
+Either @var{count} is zero, or is large enough to cause an internal
+overflow.
+@end table
+
+@end deftypefun
+
+@deftypefun int pthread_barrier_wait (pthread_barrier_t *@var{barrier})
+@standards{POSIX, pthread.h}
+@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
+
+This function synchronizes threads. The first @var{count}-1 threads
+that wait on @var{barrier} will just wait. The next thread that waits
+on @var{barrier} will cause all @var{count} threads' calls to return.
+The @var{barrier} must be initialized with @code{pthread_barrier_init}
+and not yet destroyed with @code{pthread_barrier_destroy}.
+
+The return value of this function is
+@code{PTHREAD_BARRIER_SERIAL_THREAD} for one thread (it is unspecified
+which thread) and 0 for the remainder, for each batch of @var{count}
+threads synchronized. After such a batch is synchronized, the
+@var{barrier} will begin synchronizing the next @var{count} threads.
+
+@end deftypefun
+
+
+@deftypefun int pthread_barrier_destroy (pthread_barrier_t *@var{barrier})
+@standards{POSIX, pthread.h}
+@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
+
+Destroys @var{barrier} and releases any resources it may have
+allocated. A barrier must not be destroyed if any thread is waiting
+on it, or if it was not initialized. This call always succeeds and
+returns 0.
+
+@end deftypefun
+
+@node POSIX Spin Locks
+@subsection POSIX Spin Locks
+
+A spinlock is a low overhead lock suitable for use in a realtime
+thread where it's known that the thread won't be paused by the
+scheduler. Non-realtime threads should use mutexes instead.
+
+@deftypefun int pthread_spin_init (pthread_spinlock_t *@var{lock}, int @var{pshared})
+Initializes a spinlock. @var{pshared} is one of:
+
+@table @code
+@item PTHREAD_PROCESS_PRIVATE
+This spinlock is private to the process which created it.
+
+@item PTHREAD_PROCESS_SHARED
+This spinlock is shared across any process that can access it, for
+example through shared memory.
+@end table
+
+@manpagefunctionstub{pthread_spin_init, 3}
+@end deftypefun
+
+@deftypefun int pthread_spin_destroy (pthread_spinlock_t *@var{lock})
+Destroys a spinlock and releases any resources it held.
+@manpagefunctionstub{pthread_spin_destroy, 3}
+@end deftypefun
+
+@deftypefun int pthread_spin_lock (pthread_spinlock_t *@var{lock})
+Locks a spinlock. Only one thread at a time can lock a spinlock. If
+another thread has locked this spinlock, the calling thread waits
+until it is unlocked, then attempts to lock it.
+@manpagefunctionstub{pthread_spin_lock, 3}
+@end deftypefun
+
+@deftypefun int pthread_spin_unlock (pthread_spinlock_t *@var{lock})
+Unlocks a spinlock. If one or more threads are waiting for the lock
+to be unlocked, one of them (unspecified which) will succeed in
+locking it, and will return from @code{pthread_spin_lock}).
+@manpagefunctionstub{pthread_spin_unlock, 3}
+@end deftypefun
+
+@deftypefun int pthread_spin_trylock (pthread_spinlock_t *@var{lock})
+Like @code{pthread_spin_unlock} but returns 0 if the lock was
+unlocked, or EBUSY if it was locked.
+@manpagefunctionstub{pthread_spin_trylock, 3}
+@end deftypefun
+
+@node POSIX Mutexes
+@subsection POSIX Mutexes
+
+A @emph{mutex}, or ``mutual exclusion'', is a way of guaranteeing that
+only one thread at a time is able to execute a protected bit of code
+(or access any other resource). Two or more threads trying to execute
+the same code at the same time, will instead take turns, according to
+the mutex.
+
+A mutex is much like a spinlock, but implemented in a way that is more
+appropriate for use in non-realtime threads, and is more
+resource-conserving.
+
+@deftypefun int pthread_mutex_init (pthread_mutex_t *@var{mutex}, const pthread_mutexattr_t *@var{mutexattr})
+Initiailizes a mutex.
+@manpagefunctionstub{pthread_mutex_init, 3}
+@end deftypefun
+
+@deftypefun int pthread_mutex_destroy (pthread_mutex_t *@var{mutex})
+Destroys a no-longer-needed mutex.
+@manpagefunctionstub{pthread_mutex_destroy, 3}
+@end deftypefun
+
+@deftypefun int pthread_mutex_lock (pthread_mutex_t *@var{mutex})
+Only one thread at a time may lock @var{mutex}, and must unlock it
+when appropriate. If a thread calls @code{pthread_mutex_lock} while
+@var{mutex} is locked by another thread, the calling thread will wait
+until @var{mutex} is unlocked, then attempt to lock it. Since there
+may be many threads waiting at the same time, the calling thread may
+need to repeat this wait-and-try many times before it successfully
+locks @var{mutex}, at which point the call to
+@code{pthread_mutex_locks} returns succesfully.
+
+This function may fail with the following:
+
+@table @code
+@item EAGAIN
+Too many locks were attempted.
+
+@item EDEADLK
+The calling thread already holds a lock on @var{mutex}.
+
+@item EINVAL
+@var{mutex} has an invalid kind, or an invalid priority was requested.
+
+@item ENOTRECOVERABLE
+The thread holding the lock died in a way that the system cannot recover from.
+
+@item EOWNERDEAD
+The thread holding the lock died in a way that the system can recover from.
+
+@end table
+
+@manpagefunctionstub{pthread_mutex_lock, 3}
+@end deftypefun
+
+@deftypefun int pthread_mutex_trylock (pthread_mutex_t *@var{mutex})
+Like @code{pthread_mutex_lock} but if the lock cannot be immediately
+obtained, returns EBUSY.
+@manpagefunctionstub{pthread_mutex_trylock, 3}
+@end deftypefun
+
+@deftypefun int pthread_mutex_unlock (pthread_mutex_t *@var{mutex})
+Unlocks @var{mutex}. Returns EPERM if the calling thread doesn't hold
+the lock on @var{mutex}.
+@manpagefunctionstub{pthread_mutex_unlock, 3}
+@end deftypefun
+
+@deftypefun int pthread_mutex_clocklock (pthread_mutex_t *@var{mutex}, clockid_t @var{clockid}, const struct timespec *@var{abstime})
+@end deftypefun
+
+@deftypefun int pthread_mutex_timedlock (pthread_mutex_t *@var{mutex}, const struct timespec *@var{abstime})
+
+These two functions act like @code{pthread_mutex_lock} with the
+exception that the call will not wait past time @var{abstime}, as
+reported by @var{clockid} or (for @code{pthread_mutex_timedlock})
+@code{CLOCK_REALTIME}. If @var{abstime} is reached and the mutex
+still cannot be locked, an @code{ETIMEDOUT} error is returned.
+If the time had already passed when these functions
+are called, and the mutex cannot be immediately locked, the function
+times out immediately.
+@end deftypefun
+
+@deftypefun int pthread_mutexattr_init (const pthread_mutexattr_t *@var{attr})
+Initializes @var{attr} with default values.
+@manpagefunctionstub{pthread_mutexattr_init, 3}
+@end deftypefun
+
+@deftypefun int pthread_mutexattr_destroy (pthread_mutexattr_t *@var{attr})
+Destroys @var{attr} and releases any resources it may have allocated.
+@manpagefunctionstub{pthread_mutexattr_destroy, 3}
+@end deftypefun
+
+@deftypefun int pthread_mutexattr_settype (pthread_mutexattr_t *@var{attr}, int @var{kind})
+This functions allow you to change what kind of mutex a mutex is, by
+changing the attributes used to initialize it. The values for
+@var{kind} are:
+
+@table @code
+@item PTHREAD_MUTEX_NORMAL
+No attempt to detect deadlock is performed; a thread will deadlock if
+it tries to lock this mutex yet already holds a lock to it.
+Attempting to unlock a mutex not locked by the calling thread results
+in undefined behavior.
+
+@item PTHREAD_MUTEX_ERRORCHECK
+Attemps to relock a mutex, or unlock a mutex not held, will result in an error.
+
+@item PTHREAD_MUTEX_RECURSIVE
+Attempts to relock a mutex already held succeed, but require a
+matching number of unlocks to release it. Attempts to unlock a mutex
+not held will result in an error.
+
+@item PTHREAD_MUTEX_DEFAULT
+Attemps to relock a mutex, or unlock a mutex not held, will result in
+undefined behavior. This is the default.
+
+@end table
+@end deftypefun
+
+@deftypefun int pthread_mutexattr_gettype (const pthread_mutexattr_t *@var{attr}, int *@var{kind})
+This function gets the kind of mutex @var{mutex} is.
+@end deftypefun
+
+@node POSIX Threads Other APIs
+@subsection POSIX Threads Other APIs
+
+@deftypefun int pthread_equal (pthread_t @var{thread1}, pthread_t @var{thread2})
+Compares two thread IDs. If they are the same, returns nonzero, else returns zero.
+@manpagefunctionstub{pthread_equal, 3}
+@end deftypefun
+
+@deftypefun int pthread_getcpuclockid (pthread_t @var{th}, __clockid_t *@var{clock_id})
+Get the clock associated with @var{th}.
+@manpagefunctionstub{pthread_getcpuclockid, 3}
+@end deftypefun
+
+@deftypefun int pthread_once (pthread_once_t *@var{once_control}, void (*@var{init_routine}) (void))
+Calls @var{init_routine} once for each @var{once_control}, which must
+be statically initalized to @code{PTHREAD_ONCE_INIT}. Subsequent
+calls to @code{pthread_once} with the same @var{once_control} do not
+call @var{init_routine}, even in multi-threaded environments.
+@manpagefunctionstub{pthread_once, 3}
+@end deftypefun
+
+@deftypefun int pthread_sigmask (int @var{how}, const __sigset_t *@var{newmask}, __sigset_t *@var{oldmask})
+@manpagefunctionstub{pthread_sigmask, 3}
+@end deftypefun
+
@node Non-POSIX Extensions
@subsection Non-POSIX Extensions
@@ -780,7 +1129,9 @@ the standard.
* Default Thread Attributes:: Setting default attributes for
threads in a process.
* Initial Thread Signal Mask:: Setting the initial mask of threads.
+* Thread CPU Affinity:: Limiting which CPUs can run a thread.
* Joining Threads:: Wait for a thread to terminate.
+* Thread Names:: Changing the name of a thread.
* Single-Threaded:: Detecting single-threaded execution.
* Restartable Sequences:: Linux-specific restartable sequences
integration.
@@ -899,6 +1250,36 @@ signal mask and use @code{pthread_sigmask} to apply it to the thread.
If the signal mask was copied to a heap allocation, the copy should be
freed.
+@node Thread CPU Affinity
+@subsubsection Thread CPU Affinity
+
+Processes and threads normally run on any available CPU. However,
+they can be given an @emph{affinity} to one or more CPUs, which limits
+them to the CPU set specified.
+
+@deftypefun int pthread_attr_setaffinity_np (pthread_attr_t *@var{attr}, size_t @var{cpusetsize}, const cpu_set_t *@var{cpuset})
+Sets the CPU affinity in @var{attr}. The CPU affinity
+controls which CPUs a thread may execute on. @xref{CPU Affinity}.
+@manpagefunctionstub{pthread_attr_setaffinity_np, 3}
+@end deftypefun
+
+@deftypefun int pthread_attr_getaffinity_np (const pthread_attr_t *@var{attr}, size_t @var{cpusetsize}, cpu_set_t *@var{cpuset})
+Gets the CPU affinity settings from @var{attr}.
+@manpagefunctionstub{pthread_attr_getaffinity_np, 3}
+@end deftypefun
+
+@deftypefun int pthread_setaffinity_np (pthread_t *@var{th}, size_t @var{cpusetsize}, const cpu_set_t *@var{cpuset})
+Sets the CPU affinity for thread @var{th}. The CPU affinity controls
+which CPUs a thread may execute on. @xref{CPU Affinity}.
+@manpagefunctionstub{pthread_setaffinity_np, 3}
+@end deftypefun
+
+@deftypefun int pthread_getaffinity_np (const pthread_t *@var{th}, size_t @var{cpusetsize}, cpu_set_t *@var{cpuset})
+Gets the CPU affinity for thread @var{th}. The CPU affinity controls
+which CPUs a thread may execute on. @xref{CPU Affinity}.
+@manpagefunctionstub{pthread_getaffinity_np, 3}
+@end deftypefun
+
@node Joining Threads
@subsubsection Wait for a thread to terminate
@@ -940,6 +1321,21 @@ Currently, @var{clockid} must be either @code{CLOCK_MONOTONIC} or
The @code{sem_clockwait} function also works using a @code{clockid_t}
argument. @xref{POSIX Semaphores}.
+@node Thread Names
+@subsubsection Thread Names
+
+@deftypefun int pthread_setname_np (pthread_t @var{th}, const char *@var{name})
+Gives thread @var{th} the name @var{name}. This name shows up in
+@code{ps} when it's listing individual threads. @var{name} is a
+NUL-terminated string of no more than 15 non-NUL characters.
+@manpagefunctionstub{pthread_setname_np, 3}
+@end deftypefun
+
+@deftypefun int pthread_getname_np (pthread_t @var{th}, char *@var{buf}, size_t @var{buflen})
+Retrieves the name of thread @var{th}.
+@manpagefunctionstub{pthread_getname_np, 3}
+@end deftypefun
+
@node Single-Threaded
@subsubsection Detecting Single-Threaded Execution
diff --git a/manual/time.texi b/manual/time.texi
index 04c97f5..d003ddb 100644
--- a/manual/time.texi
+++ b/manual/time.texi
@@ -148,7 +148,8 @@ and pass them to the functions that convert them to broken-down time
On POSIX-conformant systems, @code{time_t} is an integer type and its
values represent the number of seconds elapsed since the @dfn{POSIX Epoch},
which is January 1, 1970, at 00:00:00 Coordinated Universal Time (UTC)@.
-The count of seconds ignores leap seconds.
+The count of seconds ignores leap seconds. Additionally, POSIX.1-2024
+added the requirement that @code{time_t} be at least 64 bits wide.
@Theglibc{} additionally guarantees that @code{time_t} is a signed
type, and that all of its functions operate correctly on negative
@@ -528,7 +529,36 @@ Therefore, @code{CLOCK_MONOTONIC} cannot be used to measure
absolute time, only elapsed time.
@end deftypevr
-Systems may support more than just these two POSIX clocks.
+The following clocks are defined by POSIX, but may not be supported by
+all POSIX systems:
+
+@deftypevr Macro clockid_t CLOCK_PROCESS_CPUTIME_ID
+@standards{POSIX.1, time.h}
+This POSIX clock measures the amount of CPU time used by the calling
+process.
+@end deftypevr
+
+@deftypevr Macro clockid_t CLOCK_THREAD_CPUTIME_ID
+@standards{POSIX.1, time.h}
+This POSIX clock measures the amount of CPU time used by the calling
+thread.
+@end deftypevr
+
+The following clocks are Linux extensions:
+
+@deftypevr Macro clockid_t CLOCK_MONOTONIC_RAW
+@deftypevrx Macro clockid_t CLOCK_REALTIME_COARSE
+@deftypevrx Macro clockid_t CLOCK_MONOTONIC_COARSE
+@deftypevrx Macro clockid_t CLOCK_BOOTTIME
+@deftypevrx Macro clockid_t CLOCK_REALTIME_ALARM
+@deftypevrx Macro clockid_t CLOCK_BOOTTIME_ALARM
+@deftypevrx Macro clockid_t CLOCK_TAI
+@standards{Linux, time.h}
+For details of these clocks, see the manual page
+@manpageurl{clock_gettime,2}.
+@end deftypevr
+
+Systems may support additional clocks beyond those listed here.
@deftypefun int clock_gettime (clockid_t @var{clock}, struct timespec *@var{ts})
@standards{POSIX.1, time.h}
@@ -3150,12 +3180,12 @@ On @gnusystems{}, it is safe to use @code{sleep} and @code{SIGALRM} in
the same program, because @code{sleep} does not work by means of
@code{SIGALRM}.
-@deftypefun int nanosleep (const struct timespec *@var{requested_time}, struct timespec *@var{remaining})
+@deftypefun int nanosleep (const struct timespec *@var{requested_time}, struct timespec *@var{remaining_time})
@standards{POSIX.1, time.h}
@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
@c On Linux, it's a syscall. On Mach, it calls gettimeofday and uses
@c ports.
-If resolution to seconds is not enough the @code{nanosleep} function can
+If resolution to seconds is not enough, the @code{nanosleep} function can
be used. As the name suggests the sleep interval can be specified in
nanoseconds. The actual elapsed time of the sleep interval might be
longer since the system rounds the elapsed time you request up to the
@@ -3164,36 +3194,93 @@ next integer multiple of the actual resolution the system can deliver.
@code{*@var{requested_time}} is the elapsed time of the interval you
want to sleep.
-The function returns as @code{*@var{remaining}} the elapsed time left
-in the interval for which you requested to sleep. If the interval
-completed without getting interrupted by a signal, this is zero.
+If @var{remaining_time} is not the null pointer, the function returns as
+@code{*@var{remaining_time}} the elapsed time left in the interval for which
+you requested to sleep. If the interval completed without getting
+interrupted by a signal, this is zero.
@code{struct timespec} is described in @ref{Time Types}.
-If the function returns because the interval is over the return value is
-zero. If the function returns @math{-1} the global variable @code{errno}
-is set to the following values:
+If the function returns because the interval is over, it returns zero.
+Otherwise it returns @math{-1} and sets the global variable @code{errno} to
+one of the following values:
@table @code
@item EINTR
The call was interrupted because a signal was delivered to the thread.
-If the @var{remaining} parameter is not the null pointer the structure
-pointed to by @var{remaining} is updated to contain the remaining
+If the @var{remaining_time} parameter is not the null pointer, the structure
+pointed to by @var{remaining_time} is updated to contain the remaining
elapsed time.
@item EINVAL
The nanosecond value in the @var{requested_time} parameter contains an
-illegal value. Either the value is negative or greater than or equal to
+invalid value. Either the value is negative or greater than or equal to
1000 million.
@end table
This function is a cancellation point in multi-threaded programs. This
is a problem if the thread allocates some resources (like memory, file
descriptors, semaphores or whatever) at the time @code{nanosleep} is
-called. If the thread gets canceled these resources stay allocated
-until the program ends. To avoid this calls to @code{nanosleep} should
+called. If the thread gets canceled, these resources stay allocated
+until the program ends. To avoid this, calls to @code{nanosleep} should
be protected using cancellation handlers.
@c ref pthread_cleanup_push / pthread_cleanup_pop
The @code{nanosleep} function is declared in @file{time.h}.
@end deftypefun
+
+@deftypefun int clock_nanosleep (clockid_t @var{clock}, int @var{flags}, const struct timespec *@var{requested_time}, struct timespec *@var{remaining_time})
+@standards{POSIX.1-2001, time.h}
+@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
+This function is similar to @code{nanosleep} while additionally providing
+the caller with a way to specify the clock to be used to measure elapsed
+time and express the sleep interval in absolute or relative terms. It
+returns zero when returning because the interval is over, and a positive
+error number corresponding to the error encountered otherwise. This is
+different from @code{nanosleep}, which returns @math{-1} upon failure and
+sets the global variable @code{errno} according to the error encountered
+instead.
+
+Except for the return value convention and the way to communicate an error
+condition the call:
+
+@smallexample
+nanosleep (@var{requested_time}, @var{remaining_time})
+@end smallexample
+
+is analogous to:
+
+@smallexample
+clock_nanosleep (CLOCK_REALTIME, 0, @var{requested_time}, @var{remaining_time})
+@end smallexample
+
+The @var{clock} argument specifies the clock to use.
+@xref{Getting the Time}, for the @code{clockid_t} type and possible values
+of @var{clock}. Not all clocks listed are supported for use with
+@code{clock_nanosleep}. For details, see the manual page
+@manpageurl{clock_nanosleep,2}.
+
+The @var{flags} argument is either @code{0} or @code{TIMER_ABSTIME}. If
+@var{flags} is @code{0}, then @code{clock_nanosleep} interprets
+@var{requested_time} as an interval relative to the current time specified
+by @var{clock}. If it is @code{TIMER_ABSTIME} instead, @var{requested_time}
+specifies an absolute time measured by @var{clock}; if at the time of the
+call the value requested is less than or equal to the clock specified, then
+the function returns right away. When @var{flags} is @code{TIMER_ABSTIME},
+@var{remaining_time} is not updated.
+
+The @code{clock_nanosleep} function returns error codes as positive return
+values. The error conditions for @code{clock_nanosleep} are the same as for
+@code{nanosleep}, with the following conditions additionally defined:
+
+@table @code
+@item EINVAL
+The @var{clock} argument is not a valid clock.
+
+@item EOPNOTSUPP
+The @var{clock} argument is not supported by the kernel for
+@code{clock_nanosleep}.
+@end table
+
+The @code{clock_nanosleep} function is declared in @file{time.h}.
+@end deftypefun
diff --git a/manual/tunables.texi b/manual/tunables.texi
index 7f0246c..d11ca7e 100644
--- a/manual/tunables.texi
+++ b/manual/tunables.texi
@@ -365,8 +365,11 @@ change the main stack permission if kernel starts with a non-executable stack.
The @code{glibc.rtld.execstack} can be used to control whether an executable
stack is allowed from the main program. Setting the value to @code{0} disables
the ABI auto-negotiation (meaning no executable stacks even if the ABI or ELF
-header requires it), while @code{1} enables auto-negotiation (although the
-program might not need an executable stack).
+header requires it), @code{1} enables auto-negotiation (although the program
+might not need an executable stack), while @code{2} forces an executable
+stack at process start. This is provided for compatibility reasons, when
+the program dynamically loads modules with @code{dlopen} which require
+an executable stack.
When executable stacks are not allowed, and if the main program requires it,
the loader will fail with an error message.
@@ -380,7 +383,8 @@ of hardware capabilities and kernel configuration.
@strong{NB:} Trying to load a dynamic shared library with @code{dlopen} or
@code{dlmopen} that requires an executable stack will always fail if the
main program does not require an executable stack at loading time. This
-is enforced regardless of the tunable value.
+can be worked around by setting the tunable to @code{2}, where the stack is
+always executable.
@end deftp
@node Elision Tunables
diff --git a/math/Makefile b/math/Makefile
index 6b2331d..57f1e4a 100644
--- a/math/Makefile
+++ b/math/Makefile
@@ -110,6 +110,7 @@ gen-libm-calls = \
s_cexpF \
s_clog10F \
s_clogF \
+ s_compoundnF \
s_cospiF \
s_cpowF \
s_cprojF \
@@ -141,6 +142,7 @@ gen-libm-calls = \
s_nextdownF \
s_pownF \
s_powrF \
+ s_rootnF \
s_rsqrtF \
s_significandF \
s_sinpiF \
@@ -657,6 +659,7 @@ libm-test-funcs-auto = \
cexp \
clog \
clog10 \
+ compoundn \
cos \
cosh \
cospi \
@@ -689,6 +692,7 @@ libm-test-funcs-auto = \
pow \
pown \
powr \
+ rootn \
rsqrt \
sin \
sincos \
@@ -962,6 +966,7 @@ tgmath3-macros = \
cbrt \
ceil \
cimag \
+ compoundn \
conj \
copysign \
cos \
@@ -1025,6 +1030,7 @@ tgmath3-macros = \
remainder \
remquo \
rint \
+ rootn \
round \
roundeven \
rsqrt \
@@ -1359,6 +1365,7 @@ CFLAGS-s_cexp.c += -fno-builtin-cexpl
CFLAGS-s_cimag.c += -fno-builtin-cimagl
CFLAGS-s_clog.c += -fno-builtin-clogl
CFLAGS-s_clog10.c += -fno-builtin-clog10l
+CFLAGS-s_compoundn.c += -fno-builtin-compoundnl
CFLAGS-s_conj.c += -fno-builtin-conjl
CFLAGS-s_copysign.c += -fno-builtin-copysignl
CFLAGS-s_cos.c += -fno-builtin-cosl
@@ -1450,6 +1457,7 @@ CFLAGS-s_powr.c += -fno-builtin-powrl
CFLAGS-w_remainder.c += -fno-builtin-remainderl -fno-builtin-dreml
CFLAGS-s_remquo.c += -fno-builtin-remquol
CFLAGS-s_rint.c += -fno-builtin-rintl
+CFLAGS-s_rootn.c += -fno-builtin-rootnl
CFLAGS-s_round.c += -fno-builtin-roundl
CFLAGS-s_roundeven.c += -fno-builtin-roundevenl
CFLAGS-s_rsqrt.c += -fno-builtin-rsqrtl
@@ -1507,6 +1515,7 @@ CFLAGS-s_cexp.c += -fno-builtin-cexpf32x -fno-builtin-cexpf64
CFLAGS-s_cimag.c += -fno-builtin-cimagf32x -fno-builtin-cimagf64
CFLAGS-s_clog.c += -fno-builtin-clogf32x -fno-builtin-clogf64
CFLAGS-s_clog10.c += -fno-builtin-clog10f32x -fno-builtin-clog10f64
+CFLAGS-s_compoundn.c += -fno-builtin-compoundnf32x -fno-builtin-compoundnf64
CFLAGS-s_conj.c += -fno-builtin-conjf32x -fno-builtin-conjf64
CFLAGS-s_copysign.c += -fno-builtin-copysignf32x -fno-builtin-copysignf64
CFLAGS-s_cos.c += -fno-builtin-cosf32x -fno-builtin-cosf64
@@ -1587,6 +1596,7 @@ CFLAGS-s_powr.c += -fno-builtin-powrf32x -fno-builtin-powrf64
CFLAGS-w_remainder.c += -fno-builtin-remainderf32x -fno-builtin-remainderf64
CFLAGS-s_remquo.c += -fno-builtin-remquof32x -fno-builtin-remquof64
CFLAGS-s_rint.c += -fno-builtin-rintf32x -fno-builtin-rintf64
+CFLAGS-s_rootn.c += -fno-builtin-rootnf32x -fno-builtin-rootnf64
CFLAGS-s_round.c += -fno-builtin-roundf32x -fno-builtin-roundf64
CFLAGS-s_roundeven.c += -fno-builtin-roundevenf32x -fno-builtin-roundevenf64
CFLAGS-s_rsqrt.c += -fno-builtin-rsqrtf32x -fno-builtin-rsqrtf64
@@ -1641,6 +1651,7 @@ CFLAGS-s_cexpf.c += -fno-builtin-cexpf32
CFLAGS-s_cimagf.c += -fno-builtin-cimagf32
CFLAGS-s_clogf.c += -fno-builtin-clogf32
CFLAGS-s_clog10f.c += -fno-builtin-clog10f32
+CFLAGS-s_compoundnf.c += -fno-builtin-compoundnf32
CFLAGS-s_conjf.c += -fno-builtin-conjf32
CFLAGS-s_copysignf.c += -fno-builtin-copysignf32
CFLAGS-s_cosf.c += -fno-builtin-cosf32
@@ -1715,6 +1726,7 @@ CFLAGS-s_powrf.c += -fno-builtin-powrf32
CFLAGS-w_remainderf.c += -fno-builtin-remainderf32
CFLAGS-s_remquof.c += -fno-builtin-remquof32
CFLAGS-s_rintf.c += -fno-builtin-rintf32
+CFLAGS-s_rootnf.c += -fno-builtin-rootnf32
CFLAGS-s_roundf.c += -fno-builtin-roundf32
CFLAGS-s_roundevenf.c += -fno-builtin-roundevenf32
CFLAGS-s_rsqrtf.c += -fno-builtin-rsqrtf32
diff --git a/math/Versions b/math/Versions
index 36c0f23..666d6b3 100644
--- a/math/Versions
+++ b/math/Versions
@@ -673,12 +673,17 @@ libm {
}
GLIBC_2.42 {
# Functions not involving _Float64x or _Float128, for all configurations.
+ compoundn; compoundnf; compoundnl;
+ compoundnf32; compoundnf64; compoundnf32x;
pown; pownf; pownl; pownf32; pownf64; pownf32x;
powr; powrf; powrl; powrf32; powrf64; powrf32x;
+ rootn; rootnf; rootnl; rootnf32; rootnf64; rootnf32x;
rsqrt; rsqrtf; rsqrtl; rsqrtf32; rsqrtf64; rsqrtf32x;
# Functions involving _Float64x or _Float128, for some configurations.
+ compoundnf64x; compoundnf128;
pownf64x; pownf128;
powrf64x; powrf128;
+ rootnf64x; rootnf128;
rsqrtf64x; rsqrtf128;
}
}
diff --git a/math/auto-libm-test-in b/math/auto-libm-test-in
index 7cb8a89..198dac5 100644
--- a/math/auto-libm-test-in
+++ b/math/auto-libm-test-in
@@ -4724,6 +4724,221 @@ clog10 0xfd95243681c055c2632286921092p-113 0x1bccabcd29ca2152860ec29e34ef7p-113
clog10 0xdb85c467ee2aadd5f425fe0f4b8dp-114 0x3e83162a0f95f1dcbf97dddf410eap-114
clog10 0x1415bcaf2105940d49a636e98ae59p-115 0x7e6a150adfcd1b0921d44b31f40f4p-115
+compoundn -1 0
+compoundn -0.999 0
+compoundn -0.123 0
+compoundn -min 0
+compoundn -min_subnorm 0
+compoundn -0 0
+compoundn 0 0
+compoundn min_subnorm 0
+compoundn min 0
+compoundn 0.001 0
+compoundn 0.123456 0
+compoundn 1 0
+compoundn 2 0
+compoundn max 0
+
+compoundn -1 1
+compoundn -0.999 1
+compoundn -0.123 1
+compoundn -min 1
+compoundn -min_subnorm 1
+compoundn -0 1
+compoundn 0 1
+compoundn min_subnorm 1
+compoundn min 1
+compoundn 0.001 1
+compoundn 0.123456 1
+compoundn 1 1
+compoundn 2 1
+compoundn max 1 xfail:ibm128-libgcc
+
+compoundn -0.999 -1
+compoundn -0.123 -1
+compoundn -min -1
+compoundn -min_subnorm -1
+compoundn -0 -1
+compoundn 0 -1
+compoundn min_subnorm -1
+compoundn min -1
+compoundn 0.001 -1
+compoundn 0.123456 -1
+compoundn 1 -1
+compoundn 2 -1
+compoundn max -1
+
+compoundn -1 2
+compoundn -0.999 2
+compoundn -0.123 2
+compoundn -min 2
+compoundn -min_subnorm 2
+compoundn -0 2
+compoundn 0 2
+compoundn min_subnorm 2
+compoundn min 2
+compoundn 0.001 2
+compoundn 0.123456 2
+compoundn 1 2
+compoundn 2 2
+compoundn max 2
+
+compoundn -0.999 -2
+compoundn -0.123 -2
+compoundn -min -2
+compoundn -min_subnorm -2
+compoundn -0 -2
+compoundn 0 -2
+compoundn min_subnorm -2
+compoundn min -2
+compoundn 0.001 -2
+compoundn 0.123456 -2
+compoundn 1 -2
+compoundn 2 -2
+compoundn max -2
+
+compoundn -1 0x7fffffffffffffff
+compoundn -0.999 0x7fffffffffffffff
+compoundn -0.123 0x7fffffffffffffff
+compoundn -min 0x7fffffffffffffff
+compoundn -min_subnorm 0x7fffffffffffffff
+compoundn -0 0x7fffffffffffffff
+compoundn 0 0x7fffffffffffffff
+compoundn min_subnorm 0x7fffffffffffffff
+compoundn min 0x7fffffffffffffff
+compoundn 0.001 0x7fffffffffffffff
+compoundn 0.123456 0x7fffffffffffffff
+compoundn 1 0x7fffffffffffffff
+compoundn 2 0x7fffffffffffffff
+compoundn max 0x7fffffffffffffff
+
+compoundn -0.999 -0x8000000000000000
+compoundn -0.123 -0x8000000000000000
+compoundn -min -0x8000000000000000
+compoundn -min_subnorm -0x8000000000000000
+compoundn -0 -0x8000000000000000
+compoundn 0 -0x8000000000000000
+compoundn min_subnorm -0x8000000000000000
+compoundn min -0x8000000000000000
+compoundn 0.001 -0x8000000000000000
+compoundn 0.123456 -0x8000000000000000
+compoundn 1 -0x8000000000000000
+compoundn 2 -0x8000000000000000
+compoundn max -0x8000000000000000
+
+compoundn 12.3456 10
+compoundn 12.3456 -10
+
+compoundn 0x1p-64 0x7fffffffffffffff
+compoundn -0x1p-64 0x7fffffffffffffff
+compoundn 0x1p-64 -0x8000000000000000
+compoundn -0x1p-64 -0x8000000000000000
+compoundn 0x1.000002p-64 0x7fffffffffffffff
+compoundn -0x1.000002p-64 0x7fffffffffffffff
+compoundn 0x1.000002p-64 -0x8000000000000000
+compoundn -0x1.000002p-64 -0x8000000000000000
+
+compoundn 0x1p-58 0x7fffffffffffffff
+compoundn -0x1p-58 0x7fffffffffffffff
+compoundn 0x1p-58 -0x8000000000000000
+compoundn -0x1p-58 -0x8000000000000000
+compoundn 0x1.000002p-58 0x7fffffffffffffff
+compoundn -0x1.000002p-58 0x7fffffffffffffff
+compoundn 0x1.000002p-58 -0x8000000000000000
+compoundn -0x1.000002p-58 -0x8000000000000000
+
+compoundn 0x1p-57 0x7fffffffffffffff
+compoundn -0x1p-57 0x7fffffffffffffff
+compoundn 0x1p-57 -0x8000000000000000
+compoundn -0x1p-57 -0x8000000000000000
+compoundn 0x1.000002p-57 0x7fffffffffffffff
+compoundn -0x1.000002p-57 0x7fffffffffffffff
+compoundn 0x1.000002p-57 -0x8000000000000000
+compoundn -0x1.000002p-57 -0x8000000000000000
+
+compoundn 0x1p-56 0x7fffffffffffffff
+compoundn -0x1p-56 0x7fffffffffffffff
+compoundn 0x1p-56 -0x8000000000000000
+compoundn -0x1p-56 -0x8000000000000000
+compoundn 0x1.000002p-56 0x7fffffffffffffff
+compoundn -0x1.000002p-56 0x7fffffffffffffff
+compoundn 0x1.000002p-56 -0x8000000000000000
+compoundn -0x1.000002p-56 -0x8000000000000000
+
+compoundn 0x1p-55 0x7fffffffffffffff
+compoundn -0x1p-55 0x7fffffffffffffff
+compoundn 0x1p-55 -0x8000000000000000
+compoundn -0x1p-55 -0x8000000000000000
+compoundn 0x1.000002p-55 0x7fffffffffffffff
+compoundn -0x1.000002p-55 0x7fffffffffffffff
+compoundn 0x1.000002p-55 -0x8000000000000000
+compoundn -0x1.000002p-55 -0x8000000000000000
+
+compoundn 0x1p-54 0x7fffffffffffffff
+compoundn -0x1p-54 0x7fffffffffffffff
+compoundn 0x1p-54 -0x8000000000000000
+compoundn -0x1p-54 -0x8000000000000000
+compoundn 0x1.000002p-54 0x7fffffffffffffff
+compoundn -0x1.000002p-54 0x7fffffffffffffff
+compoundn 0x1.000002p-54 -0x8000000000000000
+compoundn -0x1.000002p-54 -0x8000000000000000
+
+compoundn 0x1p-53 0x7fffffffffffffff
+compoundn -0x1p-53 0x7fffffffffffffff
+compoundn 0x1p-53 -0x8000000000000000
+compoundn -0x1p-53 -0x8000000000000000
+compoundn 0x1.000002p-53 0x7fffffffffffffff
+compoundn -0x1.000002p-53 0x7fffffffffffffff
+compoundn 0x1.000002p-53 -0x8000000000000000
+compoundn -0x1.000002p-53 -0x8000000000000000
+
+compoundn 0x1p-52 0x7fffffffffffffff
+compoundn -0x1p-52 0x7fffffffffffffff
+compoundn 0x1p-52 -0x8000000000000000
+compoundn -0x1p-52 -0x8000000000000000
+compoundn 0x1.000002p-52 0x7fffffffffffffff
+compoundn -0x1.000002p-52 0x7fffffffffffffff
+compoundn 0x1.000002p-52 -0x8000000000000000
+compoundn -0x1.000002p-52 -0x8000000000000000
+
+compoundn 0x1p-51 0x7fffffffffffffff
+compoundn -0x1p-51 0x7fffffffffffffff
+compoundn 0x1p-51 -0x8000000000000000
+compoundn -0x1p-51 -0x8000000000000000
+compoundn 0x1.000002p-51 0x7fffffffffffffff
+compoundn -0x1.000002p-51 0x7fffffffffffffff
+compoundn 0x1.000002p-51 -0x8000000000000000
+compoundn -0x1.000002p-51 -0x8000000000000000
+
+compoundn 0x1p-50 0x7fffffffffffffff
+compoundn -0x1p-50 0x7fffffffffffffff
+compoundn 0x1p-50 -0x8000000000000000
+compoundn -0x1p-50 -0x8000000000000000
+compoundn 0x1.000002p-50 0x7fffffffffffffff
+compoundn -0x1.000002p-50 0x7fffffffffffffff
+compoundn 0x1.000002p-50 -0x8000000000000000
+compoundn -0x1.000002p-50 -0x8000000000000000
+
+compoundn 0x1.000002p-64 0x7654321076543210
+compoundn -0x1.000002p-64 0x7654321076543210
+compoundn 0x1.000002p-64 -0x7654321076543210
+compoundn -0x1.000002p-64 -0x7654321076543210
+
+compoundn 0x1.000002p-32 0x76543210
+compoundn -0x1.000002p-32 0x76543210
+compoundn 0x1.000002p-32 -0x76543210
+compoundn -0x1.000002p-32 -0x76543210
+
+compoundn 0x1.000002p-44 0x765432100123
+compoundn -0x1.000002p-44 0x765432100123
+compoundn 0x1.000002p-44 -0x765432100123
+compoundn -0x1.000002p-44 -0x765432100123
+
+compoundn 0x1.000002p-12 0x7654
+compoundn -0x1.000002p-12 0x7654
+compoundn 0x1.000002p-12 -0x7654
+compoundn -0x1.000002p-12 -0x7654
+
cos 0
cos -0
cos pi/3
@@ -8196,7 +8411,7 @@ pown -0 0xffffff
pown -0 0x1fffffe
pown -0 0x1fffffffffffff
pown -0 0x3ffffffffffffe
-pown -0 0x7fffffffffffffff
+pown -0 0x7fffffffffffffff xfail-rounding:ibm128-libgcc
# pown (+0, y) == +0 for y > 0 and not an odd integer.
pown 0.0 4
@@ -8213,13 +8428,13 @@ pown -1.0 -0xffffff
pown -1.0 -0x1fffffe
pown -1.0 -0x1fffffffffffff
pown -1.0 -0x3ffffffffffffe
-pown -1.0 -0x7fffffffffffffff
+pown -1.0 -0x7fffffffffffffff xfail-rounding:ibm128-libgcc
pown -1.0 0xffffff
pown -1.0 0x1fffffe
pown -1.0 0x1fffffffffffff
pown -1.0 0x3ffffffffffffe
-pown -1.0 0x7fffffffffffffff
+pown -1.0 0x7fffffffffffffff xfail-rounding:ibm128-libgcc
pown -2.0 126
pown -2.0 127
@@ -8835,6 +9050,224 @@ powr 0xd.73035p-4 -0x1.47bb8p+8
powr 0x1.059c76p+0 0x1.ff80bep+11
powr 0x1.7ac7cp+5 23
+rootn 0 1
+rootn 0 2
+rootn 0 3
+rootn 0 4
+rootn 0 5
+rootn 0 0x7fffffffffffffff
+rootn -0 1
+rootn -0 2
+rootn -0 3
+rootn -0 4
+rootn -0 5
+rootn -0 0x7fffffffffffffff
+
+rootn min 1
+rootn min 2
+rootn min 3
+rootn min 4
+rootn min 5
+rootn min 63
+rootn min 127
+rootn min 255
+rootn min 511
+rootn min 1023
+rootn min 16383
+rootn min 0x1000001
+rootn min 0x10000000000001
+rootn min 0x7fffffffffffffff
+rootn -min 1
+rootn -min 3
+rootn -min 5
+rootn -min 63
+rootn -min 127
+rootn -min 255
+rootn -min 511
+rootn -min 1023
+rootn -min 16383
+rootn -min 0x1000001
+rootn -min 0x10000000000001
+rootn -min 0x7fffffffffffffff
+
+rootn min -1
+rootn min -2
+rootn min -3
+rootn min -4
+rootn min -5
+rootn min -63
+rootn min -127
+rootn min -255
+rootn min -511
+rootn min -1023
+rootn min -16383
+rootn min -0x1000001
+rootn min -0x10000000000001
+rootn min -0x7fffffffffffffff
+rootn -min -1
+rootn -min -3
+rootn -min -5
+rootn -min -63
+rootn -min -127
+rootn -min -255
+rootn -min -511
+rootn -min -1023
+rootn -min -16383
+rootn -min -0x1000001
+rootn -min -0x10000000000001
+rootn -min -0x7fffffffffffffff
+
+rootn min_subnorm 1
+rootn min_subnorm 2
+rootn min_subnorm 3
+rootn min_subnorm 4
+rootn min_subnorm 5
+rootn min_subnorm 63
+rootn min_subnorm 127
+rootn min_subnorm 255
+rootn min_subnorm 511
+rootn min_subnorm 1023
+rootn min_subnorm 16383
+rootn min_subnorm 0x1000001
+rootn min_subnorm 0x10000000000001
+rootn min_subnorm 0x7fffffffffffffff
+rootn -min_subnorm 1
+rootn -min_subnorm 3
+rootn -min_subnorm 5
+rootn -min_subnorm 63
+rootn -min_subnorm 127
+rootn -min_subnorm 255
+rootn -min_subnorm 511
+rootn -min_subnorm 1023
+rootn -min_subnorm 16383
+rootn -min_subnorm 0x1000001
+rootn -min_subnorm 0x10000000000001
+rootn -min_subnorm 0x7fffffffffffffff
+
+rootn min_subnorm -1
+rootn min_subnorm -2
+rootn min_subnorm -3
+rootn min_subnorm -4
+rootn min_subnorm -5
+rootn min_subnorm -63
+rootn min_subnorm -127
+rootn min_subnorm -255
+rootn min_subnorm -511
+rootn min_subnorm -1023
+rootn min_subnorm -16383
+rootn min_subnorm -0x1000001
+rootn min_subnorm -0x10000000000001
+rootn min_subnorm -0x7fffffffffffffff
+rootn -min_subnorm -1
+rootn -min_subnorm -3
+rootn -min_subnorm -5
+rootn -min_subnorm -63
+rootn -min_subnorm -127
+rootn -min_subnorm -255
+rootn -min_subnorm -511
+rootn -min_subnorm -1023
+rootn -min_subnorm -16383
+rootn -min_subnorm -0x1000001
+rootn -min_subnorm -0x10000000000001
+rootn -min_subnorm -0x7fffffffffffffff
+
+rootn max 1
+rootn max 2
+rootn max 3
+rootn max 4
+rootn max 5
+rootn max 63
+rootn max 127
+rootn max 255
+rootn max 511
+rootn max 1023
+rootn max 16383
+rootn max 0x1000001
+rootn max 0x10000000000001
+rootn max 0x7fffffffffffffff
+rootn -max 1
+rootn -max 3
+rootn -max 5
+rootn -max 63
+rootn -max 127
+rootn -max 255
+rootn -max 511
+rootn -max 1023
+rootn -max 16383
+rootn -max 0x1000001
+rootn -max 0x10000000000001
+rootn -max 0x7fffffffffffffff
+
+rootn max -1
+rootn max -2
+rootn max -3
+rootn max -4
+rootn max -5
+rootn max -63
+rootn max -127
+rootn max -255
+rootn max -511
+rootn max -1023
+rootn max -16383
+rootn max -0x1000001
+rootn max -0x10000000000001
+rootn max -0x7fffffffffffffff
+rootn -max -1
+rootn -max -3
+rootn -max -5
+rootn -max -63
+rootn -max -127
+rootn -max -255
+rootn -max -511
+rootn -max -1023
+rootn -max -16383
+rootn -max -0x1000001
+rootn -max -0x10000000000001
+rootn -max -0x7fffffffffffffff
+
+rootn 1 123
+rootn 1 -123
+rootn 1 1234
+rootn 1 -1234
+rootn -1 123
+rootn -1 -123
+
+rootn 2 123
+rootn 2 -123
+rootn 2 1234
+rootn 2 -1234
+rootn -2 123
+rootn -2 -123
+
+rootn 0x1.234p50 123
+rootn 0x1.234p50 -123
+rootn 0x1.234p50 1234
+rootn 0x1.234p50 -1234
+rootn -0x1.234p50 123
+rootn -0x1.234p50 -123
+
+rootn 0x1.234p500 123
+rootn 0x1.234p500 -123
+rootn 0x1.234p500 1234
+rootn 0x1.234p500 -1234
+rootn -0x1.234p500 123
+rootn -0x1.234p500 -123
+
+rootn 0x9.8765p5000 123
+rootn 0x9.8765p5000 -123
+rootn 0x9.8765p5000 1234
+rootn 0x9.8765p5000 -1234
+rootn 0x9.8765p5000 12345
+rootn 0x9.8765p5000 -12345
+rootn 0x9.8765p5000 1234567
+rootn 0x9.8765p5000 -1234567
+rootn -0x9.8765p5000 123
+rootn -0x9.8765p5000 -123
+rootn -0x9.8765p5000 12345
+rootn -0x9.8765p5000 -12345
+rootn -0x9.8765p5000 1234567
+rootn -0x9.8765p5000 -1234567
+
rsqrt 2209
rsqrt 4
rsqrt 2
diff --git a/math/auto-libm-test-out-compoundn b/math/auto-libm-test-out-compoundn
new file mode 100644
index 0000000..62e8b1d
--- /dev/null
+++ b/math/auto-libm-test-out-compoundn
@@ -0,0 +1,10245 @@
+compoundn -1 0
+= compoundn downward binary32 -0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 -0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 -0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 -0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x1p+0 0LL : 0x1p+0 : inexact-ok
+compoundn -0.999 0
+= compoundn downward binary32 -0xf.fbe76p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 -0xf.fbe76p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 -0xf.fbe76p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 -0xf.fbe76p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0xf.fbe76p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0xf.fbe76p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0xf.fbe76p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0xf.fbe76p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0xf.fbe76p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe76p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe76p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0xf.fbe76p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe76p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe76p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe76p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe76p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary32 -0xf.fbe77p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 -0xf.fbe77p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 -0xf.fbe77p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 -0xf.fbe77p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0xf.fbe77p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0xf.fbe77p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0xf.fbe77p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0xf.fbe77p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0xf.fbe77p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe77p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe77p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0xf.fbe77p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe77p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe77p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe77p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe77p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0xf.fbe77p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe77p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe77p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0xf.fbe77p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe77p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe77p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe77p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe77p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0xf.fbe76c8b43958p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0xf.fbe76c8b43958p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0xf.fbe76c8b43958p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0xf.fbe76c8b43958p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0xf.fbe76c8b43958p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe76c8b43958p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe76c8b43958p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0xf.fbe76c8b43958p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe76c8b43958p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe76c8b43958p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe76c8b43958p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe76c8b43958p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b43958p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b43958p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b43958p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b43958p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b43958p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b43958p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b43958p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b43958p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0xf.fbe76c8b4396p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0xf.fbe76c8b4396p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0xf.fbe76c8b4396p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0xf.fbe76c8b4396p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0xf.fbe76c8b4396p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe76c8b4396p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe76c8b4396p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0xf.fbe76c8b4396p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe76c8b4396p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe76c8b4396p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe76c8b4396p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe76c8b4396p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4396p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4396p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4396p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4396p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b4396p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b4396p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b4396p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b4396p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0xf.fbe76c8b439581p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe76c8b439581p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe76c8b439581p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0xf.fbe76c8b439581p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe76c8b439581p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe76c8b439581p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe76c8b439581p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe76c8b439581p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b439581p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b439581p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b439581p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b439581p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b439581p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b439581p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b439581p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b439581p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0xf.fbe76c8b4395811p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe76c8b4395811p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe76c8b4395811p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0xf.fbe76c8b4395811p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe76c8b4395811p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe76c8b4395811p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe76c8b4395811p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe76c8b4395811p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395811p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395811p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4395811p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395811p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b4395811p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b4395811p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b4395811p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b4395811p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 0LL : 0x1p+0 : inexact-ok
+compoundn -0.123 0
+= compoundn downward binary32 -0x1.f7ced8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 -0x1.f7ced8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 -0x1.f7ced8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 -0x1.f7ced8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x1.f7ced8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x1.f7ced8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x1.f7ced8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x1.f7ced8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x1.f7ced8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7ced8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7ced8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x1.f7ced8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x1.f7ced8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7ced8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7ced8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x1.f7ced8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary32 -0x1.f7cedap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 -0x1.f7cedap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 -0x1.f7cedap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 -0x1.f7cedap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x1.f7cedap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x1.f7cedap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x1.f7cedap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x1.f7cedap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x1.f7cedap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7cedap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7cedap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x1.f7cedap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x1.f7cedap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7cedap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7cedap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x1.f7cedap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7cedap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7cedap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7cedap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7cedap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x1.f7cedap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7cedap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7cedap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x1.f7cedap-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x1.f7ced916872bp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x1.f7ced916872bp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x1.f7ced916872bp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x1.f7ced916872bp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x1.f7ced916872bp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7ced916872bp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7ced916872bp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x1.f7ced916872bp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x1.f7ced916872bp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7ced916872bp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7ced916872bp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x1.f7ced916872bp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872bp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872bp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872bp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872bp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872bp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872bp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872bp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872bp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x1.f7ced916872b1p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x1.f7ced916872b1p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x1.f7ced916872b1p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x1.f7ced916872b1p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x1.f7ced916872b1p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7ced916872b1p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7ced916872b1p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x1.f7ced916872b1p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x1.f7ced916872b1p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7ced916872b1p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7ced916872b1p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x1.f7ced916872b1p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b1p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b1p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b1p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b1p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872b1p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b1p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872b1p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872b1p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x1.f7ced916872b020cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7ced916872b020cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7ced916872b020cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x1.f7ced916872b020cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x1.f7ced916872b020cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7ced916872b020cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7ced916872b020cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x1.f7ced916872b020cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872b020cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b020cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872b020cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872b020cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x1.f7ced916872b020ep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7ced916872b020ep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7ced916872b020ep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x1.f7ced916872b020ep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x1.f7ced916872b020ep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7ced916872b020ep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7ced916872b020ep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x1.f7ced916872b020ep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020ep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020ep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020ep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020ep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872b020ep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b020ep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872b020ep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872b020ep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353fp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353fp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353fp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353fp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 0LL : 0x1p+0 : inexact-ok
+compoundn -min 0
+= compoundn downward binary32 -0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 -0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 -0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 -0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x4p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x4p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x4p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x4p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x4p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x4p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x2p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x2p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x2p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x2p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x2p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x2p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x2p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x2p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x2p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x2p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x2p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x2p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x8p-972 0LL : 0x1p+0 : inexact-ok
+compoundn -min_subnorm 0
+= compoundn downward binary32 -0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 -0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 -0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 -0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x8p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x8p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x8p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x8p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x8p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x8p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x8p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x8p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x8p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x8p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x8p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x8p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x4p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x4p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x4p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-16496 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x4p-16496 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-16496 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x4p-16496 0LL : 0x1p+0 : inexact-ok
+compoundn -0 0
+= compoundn downward binary32 -0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 -0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 -0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 -0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x0p+0 0LL : 0x1p+0 : inexact-ok
+compoundn 0 0
+= compoundn downward binary32 0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x0p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x0p+0 0LL : 0x1p+0 : inexact-ok
+compoundn min_subnorm 0
+= compoundn downward binary32 0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x8p-152 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x4p-1076 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x8p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x8p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x8p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x8p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x8p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x8p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x8p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x8p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x8p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x8p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x8p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x8p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x4p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4p-16448 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4p-16496 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4p-16496 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-16496 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4p-16496 0LL : 0x1p+0 : inexact-ok
+compoundn min 0
+= compoundn downward binary32 0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x4p-128 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x4p-1024 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x4p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x4p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x4p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x4p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x2p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x2p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x2p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x2p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x2p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x2p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x2p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x2p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x2p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x2p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x2p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x2p-16384 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x8p-972 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x8p-972 0LL : 0x1p+0 : inexact-ok
+compoundn 0.001 0
+= compoundn downward binary32 0x4.189378p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 0x4.189378p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0x4.189378p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 0x4.189378p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x4.189378p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x4.189378p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x4.189378p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x4.189378p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x4.189378p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x4.189378p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4.189378p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x4.189378p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x4.189378p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4.189378p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4.189378p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x4.189378p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4.189378p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4.189378p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4.189378p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4.189378p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x4.189378p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4.189378p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4.189378p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x4.189378p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary32 0x4.18937p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 0x4.18937p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0x4.18937p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 0x4.18937p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x4.18937p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x4.18937p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x4.18937p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x4.18937p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x4.18937p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x4.18937p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4.18937p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x4.18937p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x4.18937p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4.18937p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4.18937p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x4.18937p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4.18937p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4.18937p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4.18937p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4.18937p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x4.18937p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4.18937p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4.18937p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x4.18937p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x4.189374bc6a7fp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x4.189374bc6a7fp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x4.189374bc6a7fp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x4.189374bc6a7fp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x4.189374bc6a7fp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x4.189374bc6a7fp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4.189374bc6a7fp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x4.189374bc6a7fp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x4.189374bc6a7fp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4.189374bc6a7fp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4.189374bc6a7fp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x4.189374bc6a7fp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7fp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7fp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7fp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7fp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7fp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7fp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7fp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7fp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x4.189374bc6a7ecp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x4.189374bc6a7ecp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x4.189374bc6a7ecp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x4.189374bc6a7ecp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x4.189374bc6a7ecp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x4.189374bc6a7ecp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4.189374bc6a7ecp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x4.189374bc6a7ecp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x4.189374bc6a7ecp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4.189374bc6a7ecp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4.189374bc6a7ecp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x4.189374bc6a7ecp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ecp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ecp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ecp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ecp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7ecp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ecp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7ecp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7ecp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x4.189374bc6a7ef9ep-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x4.189374bc6a7ef9ep-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4.189374bc6a7ef9ep-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x4.189374bc6a7ef9ep-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x4.189374bc6a7ef9ep-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4.189374bc6a7ef9ep-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4.189374bc6a7ef9ep-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x4.189374bc6a7ef9ep-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9ep-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9ep-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9ep-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9ep-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7ef9ep-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9ep-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9ep-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7ef9ep-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x4.189374bc6a7ef9d8p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x4.189374bc6a7ef9d8p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4.189374bc6a7ef9d8p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x4.189374bc6a7ef9d8p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x4.189374bc6a7ef9d8p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4.189374bc6a7ef9d8p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4.189374bc6a7ef9d8p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x4.189374bc6a7ef9d8p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9d8p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9d8p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9d8p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9d8p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7ef9d8p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9d8p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9d8p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7ef9d8p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e56042p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e56042p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e56042p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e56042p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e5604p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e5604p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e5604p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e5604p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 0LL : 0x1p+0 : inexact-ok
+compoundn 0.123456 0
+= compoundn downward binary32 0x1.f9adp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 0x1.f9adp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0x1.f9adp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 0x1.f9adp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x1.f9adp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x1.f9adp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x1.f9adp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x1.f9adp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x1.f9adp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x1.f9adp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x1.f9adp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x1.f9adp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x1.f9adp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9adp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9adp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x1.f9adp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x1.f9adp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9adp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9adp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x1.f9adp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x1.f9adp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9adp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9adp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x1.f9adp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary32 0x1.f9acfep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 0x1.f9acfep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0x1.f9acfep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 0x1.f9acfep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x1.f9acfep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x1.f9acfep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x1.f9acfep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x1.f9acfep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x1.f9acfep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x1.f9acfep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x1.f9acfep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x1.f9acfep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x1.f9acfep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9acfep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9acfep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x1.f9acfep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x1.f9acfep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acfep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acfep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x1.f9acfep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x1.f9acfep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acfep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acfep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x1.f9acfep-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x1.f9acffa7eb6cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x1.f9acffa7eb6cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x1.f9acffa7eb6cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x1.f9acffa7eb6cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x1.f9acffa7eb6cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x1.f9acffa7eb6cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x1.f9acffa7eb6cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x1.f9acffa7eb6cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x1.f9acffa7eb6cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9acffa7eb6cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9acffa7eb6cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x1.f9acffa7eb6cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6cp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x1.f9acffa7eb6bfp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x1.f9acffa7eb6bfp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x1.f9acffa7eb6bfp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x1.f9acffa7eb6bfp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x1.f9acffa7eb6bfp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x1.f9acffa7eb6bfp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x1.f9acffa7eb6bfp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x1.f9acffa7eb6bfp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x1.f9acffa7eb6bfp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9acffa7eb6bfp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9acffa7eb6bfp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x1.f9acffa7eb6bfp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bfp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bfp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bfp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bfp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bfp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bfp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bfp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bfp-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x1.f9acffa7eb6bf446p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x1.f9acffa7eb6bf446p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x1.f9acffa7eb6bf446p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x1.f9acffa7eb6bf446p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x1.f9acffa7eb6bf446p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9acffa7eb6bf446p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9acffa7eb6bf446p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x1.f9acffa7eb6bf446p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf446p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf446p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf446p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf446p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bf446p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf446p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf446p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bf446p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x1.f9acffa7eb6bf444p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x1.f9acffa7eb6bf444p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x1.f9acffa7eb6bf444p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x1.f9acffa7eb6bf444p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x1.f9acffa7eb6bf444p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9acffa7eb6bf444p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9acffa7eb6bf444p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x1.f9acffa7eb6bf444p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bf444p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf444p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf444p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bf444p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 0LL : 0x1p+0 : inexact-ok
+compoundn 1 0
+= compoundn downward binary32 0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x1p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x1p+0 0LL : 0x1p+0 : inexact-ok
+compoundn 2 0
+= compoundn downward binary32 0x2p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 0x2p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0x2p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 0x2p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x2p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x2p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x2p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x2p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x2p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x2p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x2p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x2p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x2p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x2p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x2p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x2p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x2p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x2p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x2p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x2p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x2p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x2p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x2p+0 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x2p+0 0LL : 0x1p+0 : inexact-ok
+compoundn max 0
+= compoundn downward binary32 0xf.fffffp+124 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 0xf.fffffp+124 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0xf.fffffp+124 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 0xf.fffffp+124 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0xf.fffffp+124 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0xf.fffffp+124 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0xf.fffffp+124 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0xf.fffffp+124 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0xf.fffffp+124 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0xf.fffffp+124 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0xf.fffffp+124 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0xf.fffffp+124 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0xf.fffffp+124 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0xf.fffffp+124 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0xf.fffffp+124 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0xf.fffffp+124 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0xf.fffffp+124 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0xf.fffffp+124 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0xf.fffffp+124 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0xf.fffffp+124 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0xf.fffffp+124 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0xf.fffffp+124 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0xf.fffffp+124 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0xf.fffffp+124 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0xf.ffffffffffff8p+1020 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0xf.ffffffffffff8p+1020 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0xf.ffffffffffff8p+1020 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0xf.ffffffffffff8p+1020 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0xf.ffffffffffff8p+1020 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0xf.ffffffffffff8p+1020 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0xf.ffffffffffff8p+1020 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0xf.ffffffffffff8p+1020 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0xf.ffffffffffff8p+1020 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0xf.ffffffffffff8p+1020 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0xf.ffffffffffff8p+1020 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0xf.ffffffffffff8p+1020 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0xf.ffffffffffff8p+1020 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0xf.ffffffffffff8p+1020 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0xf.ffffffffffff8p+1020 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0xf.ffffffffffff8p+1020 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0xf.ffffffffffff8p+1020 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0xf.ffffffffffff8p+1020 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0xf.ffffffffffff8p+1020 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0xf.ffffffffffff8p+1020 0LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0xf.fffffffffffffffp+16380 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0xf.fffffffffffffffp+16380 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0xf.fffffffffffffffp+16380 0LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0xf.fffffffffffffffp+16380 0LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0xf.fffffffffffffffp+16380 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0xf.fffffffffffffffp+16380 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0xf.fffffffffffffffp+16380 0LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0xf.fffffffffffffffp+16380 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0xf.fffffffffffffffp+16380 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0xf.fffffffffffffffp+16380 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0xf.fffffffffffffffp+16380 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0xf.fffffffffffffffp+16380 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 0LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 0LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 0LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 0LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 0LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 0LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 0LL : 0x1p+0 : inexact-ok
+compoundn -1 1
+= compoundn downward binary32 -0x1p+0 1LL : 0x0p+0 : inexact-ok
+= compoundn tonearest binary32 -0x1p+0 1LL : 0x0p+0 : inexact-ok
+= compoundn towardzero binary32 -0x1p+0 1LL : 0x0p+0 : inexact-ok
+= compoundn upward binary32 -0x1p+0 1LL : 0x0p+0 : inexact-ok
+= compoundn downward binary64 -0x1p+0 1LL : 0x0p+0 : inexact-ok
+= compoundn tonearest binary64 -0x1p+0 1LL : 0x0p+0 : inexact-ok
+= compoundn towardzero binary64 -0x1p+0 1LL : 0x0p+0 : inexact-ok
+= compoundn upward binary64 -0x1p+0 1LL : 0x0p+0 : inexact-ok
+= compoundn downward intel96 -0x1p+0 1LL : 0x0p+0 : inexact-ok
+= compoundn tonearest intel96 -0x1p+0 1LL : 0x0p+0 : inexact-ok
+= compoundn towardzero intel96 -0x1p+0 1LL : 0x0p+0 : inexact-ok
+= compoundn upward intel96 -0x1p+0 1LL : 0x0p+0 : inexact-ok
+= compoundn downward m68k96 -0x1p+0 1LL : 0x0p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x1p+0 1LL : 0x0p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x1p+0 1LL : 0x0p+0 : inexact-ok
+= compoundn upward m68k96 -0x1p+0 1LL : 0x0p+0 : inexact-ok
+= compoundn downward binary128 -0x1p+0 1LL : 0x0p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1p+0 1LL : 0x0p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1p+0 1LL : 0x0p+0 : inexact-ok
+= compoundn upward binary128 -0x1p+0 1LL : 0x0p+0 : inexact-ok
+= compoundn downward ibm128 -0x1p+0 1LL : 0x0p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1p+0 1LL : 0x0p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1p+0 1LL : 0x0p+0 : inexact-ok
+= compoundn upward ibm128 -0x1p+0 1LL : 0x0p+0 : inexact-ok
+compoundn -0.999 1
+= compoundn downward binary32 -0xf.fbe76p-4 1LL : 0x4.18ap-12 : inexact-ok
+= compoundn tonearest binary32 -0xf.fbe76p-4 1LL : 0x4.18ap-12 : inexact-ok
+= compoundn towardzero binary32 -0xf.fbe76p-4 1LL : 0x4.18ap-12 : inexact-ok
+= compoundn upward binary32 -0xf.fbe76p-4 1LL : 0x4.18ap-12 : inexact-ok
+= compoundn downward binary64 -0xf.fbe76p-4 1LL : 0x4.18ap-12 : inexact-ok
+= compoundn tonearest binary64 -0xf.fbe76p-4 1LL : 0x4.18ap-12 : inexact-ok
+= compoundn towardzero binary64 -0xf.fbe76p-4 1LL : 0x4.18ap-12 : inexact-ok
+= compoundn upward binary64 -0xf.fbe76p-4 1LL : 0x4.18ap-12 : inexact-ok
+= compoundn downward intel96 -0xf.fbe76p-4 1LL : 0x4.18ap-12 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe76p-4 1LL : 0x4.18ap-12 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe76p-4 1LL : 0x4.18ap-12 : inexact-ok
+= compoundn upward intel96 -0xf.fbe76p-4 1LL : 0x4.18ap-12 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe76p-4 1LL : 0x4.18ap-12 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe76p-4 1LL : 0x4.18ap-12 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe76p-4 1LL : 0x4.18ap-12 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe76p-4 1LL : 0x4.18ap-12 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76p-4 1LL : 0x4.18ap-12 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76p-4 1LL : 0x4.18ap-12 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76p-4 1LL : 0x4.18ap-12 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76p-4 1LL : 0x4.18ap-12 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76p-4 1LL : 0x4.18ap-12 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76p-4 1LL : 0x4.18ap-12 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76p-4 1LL : 0x4.18ap-12 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76p-4 1LL : 0x4.18ap-12 : inexact-ok
+= compoundn downward binary32 -0xf.fbe77p-4 1LL : 0x4.189p-12 : inexact-ok
+= compoundn tonearest binary32 -0xf.fbe77p-4 1LL : 0x4.189p-12 : inexact-ok
+= compoundn towardzero binary32 -0xf.fbe77p-4 1LL : 0x4.189p-12 : inexact-ok
+= compoundn upward binary32 -0xf.fbe77p-4 1LL : 0x4.189p-12 : inexact-ok
+= compoundn downward binary64 -0xf.fbe77p-4 1LL : 0x4.189p-12 : inexact-ok
+= compoundn tonearest binary64 -0xf.fbe77p-4 1LL : 0x4.189p-12 : inexact-ok
+= compoundn towardzero binary64 -0xf.fbe77p-4 1LL : 0x4.189p-12 : inexact-ok
+= compoundn upward binary64 -0xf.fbe77p-4 1LL : 0x4.189p-12 : inexact-ok
+= compoundn downward intel96 -0xf.fbe77p-4 1LL : 0x4.189p-12 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe77p-4 1LL : 0x4.189p-12 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe77p-4 1LL : 0x4.189p-12 : inexact-ok
+= compoundn upward intel96 -0xf.fbe77p-4 1LL : 0x4.189p-12 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe77p-4 1LL : 0x4.189p-12 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe77p-4 1LL : 0x4.189p-12 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe77p-4 1LL : 0x4.189p-12 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe77p-4 1LL : 0x4.189p-12 : inexact-ok
+= compoundn downward binary128 -0xf.fbe77p-4 1LL : 0x4.189p-12 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe77p-4 1LL : 0x4.189p-12 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe77p-4 1LL : 0x4.189p-12 : inexact-ok
+= compoundn upward binary128 -0xf.fbe77p-4 1LL : 0x4.189p-12 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe77p-4 1LL : 0x4.189p-12 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe77p-4 1LL : 0x4.189p-12 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe77p-4 1LL : 0x4.189p-12 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe77p-4 1LL : 0x4.189p-12 : inexact-ok
+= compoundn downward binary64 -0xf.fbe76c8b43958p-4 1LL : 0x4.189374bc6a8p-12 : inexact-ok
+= compoundn tonearest binary64 -0xf.fbe76c8b43958p-4 1LL : 0x4.189374bc6a8p-12 : inexact-ok
+= compoundn towardzero binary64 -0xf.fbe76c8b43958p-4 1LL : 0x4.189374bc6a8p-12 : inexact-ok
+= compoundn upward binary64 -0xf.fbe76c8b43958p-4 1LL : 0x4.189374bc6a8p-12 : inexact-ok
+= compoundn downward intel96 -0xf.fbe76c8b43958p-4 1LL : 0x4.189374bc6a8p-12 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe76c8b43958p-4 1LL : 0x4.189374bc6a8p-12 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe76c8b43958p-4 1LL : 0x4.189374bc6a8p-12 : inexact-ok
+= compoundn upward intel96 -0xf.fbe76c8b43958p-4 1LL : 0x4.189374bc6a8p-12 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe76c8b43958p-4 1LL : 0x4.189374bc6a8p-12 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe76c8b43958p-4 1LL : 0x4.189374bc6a8p-12 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe76c8b43958p-4 1LL : 0x4.189374bc6a8p-12 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe76c8b43958p-4 1LL : 0x4.189374bc6a8p-12 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b43958p-4 1LL : 0x4.189374bc6a8p-12 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b43958p-4 1LL : 0x4.189374bc6a8p-12 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b43958p-4 1LL : 0x4.189374bc6a8p-12 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b43958p-4 1LL : 0x4.189374bc6a8p-12 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b43958p-4 1LL : 0x4.189374bc6a8p-12 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b43958p-4 1LL : 0x4.189374bc6a8p-12 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b43958p-4 1LL : 0x4.189374bc6a8p-12 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b43958p-4 1LL : 0x4.189374bc6a8p-12 : inexact-ok
+= compoundn downward binary64 -0xf.fbe76c8b4396p-4 1LL : 0x4.189374bc6ap-12 : inexact-ok
+= compoundn tonearest binary64 -0xf.fbe76c8b4396p-4 1LL : 0x4.189374bc6ap-12 : inexact-ok
+= compoundn towardzero binary64 -0xf.fbe76c8b4396p-4 1LL : 0x4.189374bc6ap-12 : inexact-ok
+= compoundn upward binary64 -0xf.fbe76c8b4396p-4 1LL : 0x4.189374bc6ap-12 : inexact-ok
+= compoundn downward intel96 -0xf.fbe76c8b4396p-4 1LL : 0x4.189374bc6ap-12 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe76c8b4396p-4 1LL : 0x4.189374bc6ap-12 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe76c8b4396p-4 1LL : 0x4.189374bc6ap-12 : inexact-ok
+= compoundn upward intel96 -0xf.fbe76c8b4396p-4 1LL : 0x4.189374bc6ap-12 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe76c8b4396p-4 1LL : 0x4.189374bc6ap-12 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe76c8b4396p-4 1LL : 0x4.189374bc6ap-12 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe76c8b4396p-4 1LL : 0x4.189374bc6ap-12 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe76c8b4396p-4 1LL : 0x4.189374bc6ap-12 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4396p-4 1LL : 0x4.189374bc6ap-12 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4396p-4 1LL : 0x4.189374bc6ap-12 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4396p-4 1LL : 0x4.189374bc6ap-12 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4396p-4 1LL : 0x4.189374bc6ap-12 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b4396p-4 1LL : 0x4.189374bc6ap-12 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b4396p-4 1LL : 0x4.189374bc6ap-12 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b4396p-4 1LL : 0x4.189374bc6ap-12 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b4396p-4 1LL : 0x4.189374bc6ap-12 : inexact-ok
+= compoundn downward intel96 -0xf.fbe76c8b439581p-4 1LL : 0x4.189374bc6a7fp-12 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe76c8b439581p-4 1LL : 0x4.189374bc6a7fp-12 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe76c8b439581p-4 1LL : 0x4.189374bc6a7fp-12 : inexact-ok
+= compoundn upward intel96 -0xf.fbe76c8b439581p-4 1LL : 0x4.189374bc6a7fp-12 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe76c8b439581p-4 1LL : 0x4.189374bc6a7fp-12 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe76c8b439581p-4 1LL : 0x4.189374bc6a7fp-12 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe76c8b439581p-4 1LL : 0x4.189374bc6a7fp-12 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe76c8b439581p-4 1LL : 0x4.189374bc6a7fp-12 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b439581p-4 1LL : 0x4.189374bc6a7fp-12 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b439581p-4 1LL : 0x4.189374bc6a7fp-12 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b439581p-4 1LL : 0x4.189374bc6a7fp-12 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b439581p-4 1LL : 0x4.189374bc6a7fp-12 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b439581p-4 1LL : 0x4.189374bc6a7fp-12 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b439581p-4 1LL : 0x4.189374bc6a7fp-12 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b439581p-4 1LL : 0x4.189374bc6a7fp-12 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b439581p-4 1LL : 0x4.189374bc6a7fp-12 : inexact-ok
+= compoundn downward intel96 -0xf.fbe76c8b4395811p-4 1LL : 0x4.189374bc6a7efp-12 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe76c8b4395811p-4 1LL : 0x4.189374bc6a7efp-12 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe76c8b4395811p-4 1LL : 0x4.189374bc6a7efp-12 : inexact-ok
+= compoundn upward intel96 -0xf.fbe76c8b4395811p-4 1LL : 0x4.189374bc6a7efp-12 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe76c8b4395811p-4 1LL : 0x4.189374bc6a7efp-12 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe76c8b4395811p-4 1LL : 0x4.189374bc6a7efp-12 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe76c8b4395811p-4 1LL : 0x4.189374bc6a7efp-12 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe76c8b4395811p-4 1LL : 0x4.189374bc6a7efp-12 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395811p-4 1LL : 0x4.189374bc6a7efp-12 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395811p-4 1LL : 0x4.189374bc6a7efp-12 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4395811p-4 1LL : 0x4.189374bc6a7efp-12 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395811p-4 1LL : 0x4.189374bc6a7efp-12 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b4395811p-4 1LL : 0x4.189374bc6a7efp-12 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b4395811p-4 1LL : 0x4.189374bc6a7efp-12 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b4395811p-4 1LL : 0x4.189374bc6a7efp-12 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b4395811p-4 1LL : 0x4.189374bc6a7efp-12 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 1LL : 0x4.189374bc6a7ef9db22d0e56048p-12 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 1LL : 0x4.189374bc6a7ef9db22d0e56048p-12 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 1LL : 0x4.189374bc6a7ef9db22d0e56048p-12 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 1LL : 0x4.189374bc6a7ef9db22d0e56048p-12 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 1LL : 0x4.189374bc6a7ef9db22d0e5604p-12 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 1LL : 0x4.189374bc6a7ef9db22d0e5604p-12 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 1LL : 0x4.189374bc6a7ef9db22d0e5604p-12 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 1LL : 0x4.189374bc6a7ef9db22d0e5604p-12 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 1LL : 0x4.189374bc6a7ef9db22d0e564p-12 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 1LL : 0x4.189374bc6a7ef9db22d0e564p-12 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 1LL : 0x4.189374bc6a7ef9db22d0e564p-12 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 1LL : 0x4.189374bc6a7ef9db22d0e564p-12 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 1LL : 0x4.189374bc6a7ef9db22d0e564p-12 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 1LL : 0x4.189374bc6a7ef9db22d0e564p-12 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 1LL : 0x4.189374bc6a7ef9db22d0e564p-12 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 1LL : 0x4.189374bc6a7ef9db22d0e564p-12 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 1LL : 0x4.189374bc6a7ef9db22d0e56p-12 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 1LL : 0x4.189374bc6a7ef9db22d0e56p-12 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 1LL : 0x4.189374bc6a7ef9db22d0e56p-12 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 1LL : 0x4.189374bc6a7ef9db22d0e56p-12 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 1LL : 0x4.189374bc6a7ef9db22d0e56p-12 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 1LL : 0x4.189374bc6a7ef9db22d0e56p-12 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 1LL : 0x4.189374bc6a7ef9db22d0e56p-12 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 1LL : 0x4.189374bc6a7ef9db22d0e56p-12 : inexact-ok
+compoundn -0.123 1
+= compoundn downward binary32 -0x1.f7ced8p-4 1LL : 0xe.08312p-4 : inexact-ok
+= compoundn tonearest binary32 -0x1.f7ced8p-4 1LL : 0xe.08312p-4 : inexact-ok
+= compoundn towardzero binary32 -0x1.f7ced8p-4 1LL : 0xe.08312p-4 : inexact-ok
+= compoundn upward binary32 -0x1.f7ced8p-4 1LL : 0xe.08313p-4 : inexact-ok
+= compoundn downward binary64 -0x1.f7ced8p-4 1LL : 0xe.083128p-4 : inexact-ok
+= compoundn tonearest binary64 -0x1.f7ced8p-4 1LL : 0xe.083128p-4 : inexact-ok
+= compoundn towardzero binary64 -0x1.f7ced8p-4 1LL : 0xe.083128p-4 : inexact-ok
+= compoundn upward binary64 -0x1.f7ced8p-4 1LL : 0xe.083128p-4 : inexact-ok
+= compoundn downward intel96 -0x1.f7ced8p-4 1LL : 0xe.083128p-4 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7ced8p-4 1LL : 0xe.083128p-4 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7ced8p-4 1LL : 0xe.083128p-4 : inexact-ok
+= compoundn upward intel96 -0x1.f7ced8p-4 1LL : 0xe.083128p-4 : inexact-ok
+= compoundn downward m68k96 -0x1.f7ced8p-4 1LL : 0xe.083128p-4 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7ced8p-4 1LL : 0xe.083128p-4 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7ced8p-4 1LL : 0xe.083128p-4 : inexact-ok
+= compoundn upward m68k96 -0x1.f7ced8p-4 1LL : 0xe.083128p-4 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced8p-4 1LL : 0xe.083128p-4 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced8p-4 1LL : 0xe.083128p-4 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced8p-4 1LL : 0xe.083128p-4 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced8p-4 1LL : 0xe.083128p-4 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced8p-4 1LL : 0xe.083128p-4 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced8p-4 1LL : 0xe.083128p-4 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced8p-4 1LL : 0xe.083128p-4 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced8p-4 1LL : 0xe.083128p-4 : inexact-ok
+= compoundn downward binary32 -0x1.f7cedap-4 1LL : 0xe.08312p-4 : inexact-ok
+= compoundn tonearest binary32 -0x1.f7cedap-4 1LL : 0xe.08312p-4 : inexact-ok
+= compoundn towardzero binary32 -0x1.f7cedap-4 1LL : 0xe.08312p-4 : inexact-ok
+= compoundn upward binary32 -0x1.f7cedap-4 1LL : 0xe.08313p-4 : inexact-ok
+= compoundn downward binary64 -0x1.f7cedap-4 1LL : 0xe.083126p-4 : inexact-ok
+= compoundn tonearest binary64 -0x1.f7cedap-4 1LL : 0xe.083126p-4 : inexact-ok
+= compoundn towardzero binary64 -0x1.f7cedap-4 1LL : 0xe.083126p-4 : inexact-ok
+= compoundn upward binary64 -0x1.f7cedap-4 1LL : 0xe.083126p-4 : inexact-ok
+= compoundn downward intel96 -0x1.f7cedap-4 1LL : 0xe.083126p-4 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7cedap-4 1LL : 0xe.083126p-4 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7cedap-4 1LL : 0xe.083126p-4 : inexact-ok
+= compoundn upward intel96 -0x1.f7cedap-4 1LL : 0xe.083126p-4 : inexact-ok
+= compoundn downward m68k96 -0x1.f7cedap-4 1LL : 0xe.083126p-4 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7cedap-4 1LL : 0xe.083126p-4 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7cedap-4 1LL : 0xe.083126p-4 : inexact-ok
+= compoundn upward m68k96 -0x1.f7cedap-4 1LL : 0xe.083126p-4 : inexact-ok
+= compoundn downward binary128 -0x1.f7cedap-4 1LL : 0xe.083126p-4 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7cedap-4 1LL : 0xe.083126p-4 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7cedap-4 1LL : 0xe.083126p-4 : inexact-ok
+= compoundn upward binary128 -0x1.f7cedap-4 1LL : 0xe.083126p-4 : inexact-ok
+= compoundn downward ibm128 -0x1.f7cedap-4 1LL : 0xe.083126p-4 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7cedap-4 1LL : 0xe.083126p-4 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7cedap-4 1LL : 0xe.083126p-4 : inexact-ok
+= compoundn upward ibm128 -0x1.f7cedap-4 1LL : 0xe.083126p-4 : inexact-ok
+= compoundn downward binary64 -0x1.f7ced916872bp-4 1LL : 0xe.083126e978d5p-4 : inexact-ok
+= compoundn tonearest binary64 -0x1.f7ced916872bp-4 1LL : 0xe.083126e978d5p-4 : inexact-ok
+= compoundn towardzero binary64 -0x1.f7ced916872bp-4 1LL : 0xe.083126e978d5p-4 : inexact-ok
+= compoundn upward binary64 -0x1.f7ced916872bp-4 1LL : 0xe.083126e978d5p-4 : inexact-ok
+= compoundn downward intel96 -0x1.f7ced916872bp-4 1LL : 0xe.083126e978d5p-4 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7ced916872bp-4 1LL : 0xe.083126e978d5p-4 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7ced916872bp-4 1LL : 0xe.083126e978d5p-4 : inexact-ok
+= compoundn upward intel96 -0x1.f7ced916872bp-4 1LL : 0xe.083126e978d5p-4 : inexact-ok
+= compoundn downward m68k96 -0x1.f7ced916872bp-4 1LL : 0xe.083126e978d5p-4 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7ced916872bp-4 1LL : 0xe.083126e978d5p-4 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7ced916872bp-4 1LL : 0xe.083126e978d5p-4 : inexact-ok
+= compoundn upward m68k96 -0x1.f7ced916872bp-4 1LL : 0xe.083126e978d5p-4 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872bp-4 1LL : 0xe.083126e978d5p-4 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872bp-4 1LL : 0xe.083126e978d5p-4 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872bp-4 1LL : 0xe.083126e978d5p-4 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872bp-4 1LL : 0xe.083126e978d5p-4 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872bp-4 1LL : 0xe.083126e978d5p-4 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872bp-4 1LL : 0xe.083126e978d5p-4 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872bp-4 1LL : 0xe.083126e978d5p-4 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872bp-4 1LL : 0xe.083126e978d5p-4 : inexact-ok
+= compoundn downward binary64 -0x1.f7ced916872b1p-4 1LL : 0xe.083126e978d48p-4 : inexact-ok
+= compoundn tonearest binary64 -0x1.f7ced916872b1p-4 1LL : 0xe.083126e978d5p-4 : inexact-ok
+= compoundn towardzero binary64 -0x1.f7ced916872b1p-4 1LL : 0xe.083126e978d48p-4 : inexact-ok
+= compoundn upward binary64 -0x1.f7ced916872b1p-4 1LL : 0xe.083126e978d5p-4 : inexact-ok
+= compoundn downward intel96 -0x1.f7ced916872b1p-4 1LL : 0xe.083126e978d4fp-4 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7ced916872b1p-4 1LL : 0xe.083126e978d4fp-4 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7ced916872b1p-4 1LL : 0xe.083126e978d4fp-4 : inexact-ok
+= compoundn upward intel96 -0x1.f7ced916872b1p-4 1LL : 0xe.083126e978d4fp-4 : inexact-ok
+= compoundn downward m68k96 -0x1.f7ced916872b1p-4 1LL : 0xe.083126e978d4fp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7ced916872b1p-4 1LL : 0xe.083126e978d4fp-4 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7ced916872b1p-4 1LL : 0xe.083126e978d4fp-4 : inexact-ok
+= compoundn upward m68k96 -0x1.f7ced916872b1p-4 1LL : 0xe.083126e978d4fp-4 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b1p-4 1LL : 0xe.083126e978d4fp-4 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b1p-4 1LL : 0xe.083126e978d4fp-4 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b1p-4 1LL : 0xe.083126e978d4fp-4 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b1p-4 1LL : 0xe.083126e978d4fp-4 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872b1p-4 1LL : 0xe.083126e978d4fp-4 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b1p-4 1LL : 0xe.083126e978d4fp-4 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872b1p-4 1LL : 0xe.083126e978d4fp-4 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872b1p-4 1LL : 0xe.083126e978d4fp-4 : inexact-ok
+= compoundn downward intel96 -0x1.f7ced916872b020cp-4 1LL : 0xe.083126e978d4fdfp-4 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7ced916872b020cp-4 1LL : 0xe.083126e978d4fdfp-4 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7ced916872b020cp-4 1LL : 0xe.083126e978d4fdfp-4 : inexact-ok
+= compoundn upward intel96 -0x1.f7ced916872b020cp-4 1LL : 0xe.083126e978d4fep-4 : inexact-ok
+= compoundn downward m68k96 -0x1.f7ced916872b020cp-4 1LL : 0xe.083126e978d4fdfp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7ced916872b020cp-4 1LL : 0xe.083126e978d4fdfp-4 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7ced916872b020cp-4 1LL : 0xe.083126e978d4fdfp-4 : inexact-ok
+= compoundn upward m68k96 -0x1.f7ced916872b020cp-4 1LL : 0xe.083126e978d4fep-4 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020cp-4 1LL : 0xe.083126e978d4fdf4p-4 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020cp-4 1LL : 0xe.083126e978d4fdf4p-4 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020cp-4 1LL : 0xe.083126e978d4fdf4p-4 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020cp-4 1LL : 0xe.083126e978d4fdf4p-4 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872b020cp-4 1LL : 0xe.083126e978d4fdf4p-4 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b020cp-4 1LL : 0xe.083126e978d4fdf4p-4 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872b020cp-4 1LL : 0xe.083126e978d4fdf4p-4 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872b020cp-4 1LL : 0xe.083126e978d4fdf4p-4 : inexact-ok
+= compoundn downward intel96 -0x1.f7ced916872b020ep-4 1LL : 0xe.083126e978d4fdfp-4 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7ced916872b020ep-4 1LL : 0xe.083126e978d4fdfp-4 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7ced916872b020ep-4 1LL : 0xe.083126e978d4fdfp-4 : inexact-ok
+= compoundn upward intel96 -0x1.f7ced916872b020ep-4 1LL : 0xe.083126e978d4fep-4 : inexact-ok
+= compoundn downward m68k96 -0x1.f7ced916872b020ep-4 1LL : 0xe.083126e978d4fdfp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7ced916872b020ep-4 1LL : 0xe.083126e978d4fdfp-4 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7ced916872b020ep-4 1LL : 0xe.083126e978d4fdfp-4 : inexact-ok
+= compoundn upward m68k96 -0x1.f7ced916872b020ep-4 1LL : 0xe.083126e978d4fep-4 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020ep-4 1LL : 0xe.083126e978d4fdf2p-4 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020ep-4 1LL : 0xe.083126e978d4fdf2p-4 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020ep-4 1LL : 0xe.083126e978d4fdf2p-4 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020ep-4 1LL : 0xe.083126e978d4fdf2p-4 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872b020ep-4 1LL : 0xe.083126e978d4fdf2p-4 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b020ep-4 1LL : 0xe.083126e978d4fdf2p-4 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872b020ep-4 1LL : 0xe.083126e978d4fdf2p-4 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872b020ep-4 1LL : 0xe.083126e978d4fdf2p-4 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 1LL : 0xe.083126e978d4fdf3b645a1cac08p-4 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 1LL : 0xe.083126e978d4fdf3b645a1cac08p-4 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 1LL : 0xe.083126e978d4fdf3b645a1cac08p-4 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 1LL : 0xe.083126e978d4fdf3b645a1cac088p-4 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 1LL : 0xe.083126e978d4fdf3b645a1cac08p-4 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 1LL : 0xe.083126e978d4fdf3b645a1cac08p-4 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 1LL : 0xe.083126e978d4fdf3b645a1cac08p-4 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 1LL : 0xe.083126e978d4fdf3b645a1cac088p-4 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353fp-4 1LL : 0xe.083126e978d4fdf3b645a1cac1p-4 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353fp-4 1LL : 0xe.083126e978d4fdf3b645a1cac1p-4 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353fp-4 1LL : 0xe.083126e978d4fdf3b645a1cac1p-4 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353fp-4 1LL : 0xe.083126e978d4fdf3b645a1cac1p-4 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 1LL : 0xe.083126e978d4fdf3b645a1cacp-4 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 1LL : 0xe.083126e978d4fdf3b645a1cacp-4 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 1LL : 0xe.083126e978d4fdf3b645a1cacp-4 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 1LL : 0xe.083126e978d4fdf3b645a1cac4p-4 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 1LL : 0xe.083126e978d4fdf3b645a1cac08p-4 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 1LL : 0xe.083126e978d4fdf3b645a1cac08p-4 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 1LL : 0xe.083126e978d4fdf3b645a1cac08p-4 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 1LL : 0xe.083126e978d4fdf3b645a1cac08p-4 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 1LL : 0xe.083126e978d4fdf3b645a1cacp-4 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 1LL : 0xe.083126e978d4fdf3b645a1cacp-4 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 1LL : 0xe.083126e978d4fdf3b645a1cacp-4 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 1LL : 0xe.083126e978d4fdf3b645a1cac4p-4 : inexact-ok
+compoundn -min 1
+= compoundn downward binary32 -0x4p-128 1LL : 0xf.fffffp-4 : inexact-ok
+= compoundn tonearest binary32 -0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 -0x4p-128 1LL : 0xf.fffffp-4 : inexact-ok
+= compoundn upward binary32 -0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x4p-128 1LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 -0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x4p-128 1LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 -0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-128 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 -0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x4p-128 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 -0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-128 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-128 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 -0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-128 1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-128 1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x4p-128 1LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 -0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x4p-128 1LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 -0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x4p-1024 1LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 -0x4p-1024 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x4p-1024 1LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 -0x4p-1024 1LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-1024 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 -0x4p-1024 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x4p-1024 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 -0x4p-1024 1LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-1024 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-1024 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-1024 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 -0x4p-1024 1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-1024 1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x4p-1024 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-1024 1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x4p-1024 1LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x4p-1024 1LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 -0x4p-1024 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x4p-1024 1LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 -0x4p-1024 1LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-16384 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 -0x4p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x4p-16384 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 -0x4p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-16384 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-16384 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 -0x4p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-16384 1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x4p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-16384 1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x4p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x2p-16384 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 -0x2p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x2p-16384 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 -0x2p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x2p-16384 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x2p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x2p-16384 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 -0x2p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x2p-16384 1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x2p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x2p-16384 1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x2p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x8p-972 1LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 -0x8p-972 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x8p-972 1LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 -0x8p-972 1LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x8p-972 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 -0x8p-972 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x8p-972 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 -0x8p-972 1LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x8p-972 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x8p-972 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x8p-972 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 -0x8p-972 1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x8p-972 1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x8p-972 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x8p-972 1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x8p-972 1LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x8p-972 1LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 -0x8p-972 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x8p-972 1LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 -0x8p-972 1LL : 0x1p+0 : inexact-ok
+compoundn -min_subnorm 1
+= compoundn downward binary32 -0x8p-152 1LL : 0xf.fffffp-4 : inexact-ok
+= compoundn tonearest binary32 -0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 -0x8p-152 1LL : 0xf.fffffp-4 : inexact-ok
+= compoundn upward binary32 -0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x8p-152 1LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 -0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x8p-152 1LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 -0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x8p-152 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 -0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x8p-152 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 -0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x8p-152 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x8p-152 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 -0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x8p-152 1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x8p-152 1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x8p-152 1LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 -0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x8p-152 1LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 -0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x4p-1076 1LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 -0x4p-1076 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x4p-1076 1LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 -0x4p-1076 1LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-1076 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 -0x4p-1076 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x4p-1076 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 -0x4p-1076 1LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-1076 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-1076 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-1076 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 -0x4p-1076 1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-1076 1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x4p-1076 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-1076 1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x4p-1076 1LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x4p-1076 1LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 -0x4p-1076 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x4p-1076 1LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 -0x4p-1076 1LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x8p-16448 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 -0x8p-16448 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x8p-16448 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 -0x8p-16448 1LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x8p-16448 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x8p-16448 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x8p-16448 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 -0x8p-16448 1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x8p-16448 1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x8p-16448 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x8p-16448 1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x8p-16448 1LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-16448 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-16448 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-16448 1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 -0x4p-16448 1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-16448 1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x4p-16448 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-16448 1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x4p-16448 1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-16496 1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x4p-16496 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-16496 1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x4p-16496 1LL : 0x1p+0 : inexact-ok
+compoundn -0 1
+= compoundn downward binary32 -0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 -0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 -0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 -0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x0p+0 1LL : 0x1p+0 : inexact-ok
+compoundn 0 1
+= compoundn downward binary32 0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x0p+0 1LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x0p+0 1LL : 0x1p+0 : inexact-ok
+compoundn min_subnorm 1
+= compoundn downward binary32 0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 0x8p-152 1LL : 0x1.000002p+0 : inexact-ok
+= compoundn downward binary64 0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x8p-152 1LL : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x8p-152 1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x8p-152 1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x8p-152 1LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward ibm128 0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x8p-152 1LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x8p-152 1LL : 0x1.000000000000000000000000008p+0 : inexact-ok
+= compoundn downward binary64 0x4p-1076 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x4p-1076 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x4p-1076 1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x4p-1076 1LL : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 0x4p-1076 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x4p-1076 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4p-1076 1LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x4p-1076 1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-1076 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4p-1076 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-1076 1LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x4p-1076 1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 0x4p-1076 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4p-1076 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-1076 1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4p-1076 1LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward ibm128 0x4p-1076 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4p-1076 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4p-1076 1LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x4p-1076 1LL : 0x1.000000000000000000000000008p+0 : inexact-ok
+= compoundn downward intel96 0x8p-16448 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x8p-16448 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x8p-16448 1LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x8p-16448 1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 0x8p-16448 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x8p-16448 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x8p-16448 1LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x8p-16448 1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 0x8p-16448 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x8p-16448 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x8p-16448 1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x8p-16448 1LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-16448 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4p-16448 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-16448 1LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x4p-16448 1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 0x4p-16448 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4p-16448 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-16448 1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4p-16448 1LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward binary128 0x4p-16496 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4p-16496 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-16496 1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4p-16496 1LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+compoundn min 1
+= compoundn downward binary32 0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 0x4p-128 1LL : 0x1.000002p+0 : inexact-ok
+= compoundn downward binary64 0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x4p-128 1LL : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x4p-128 1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x4p-128 1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4p-128 1LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward ibm128 0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4p-128 1LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x4p-128 1LL : 0x1.000000000000000000000000008p+0 : inexact-ok
+= compoundn downward binary64 0x4p-1024 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x4p-1024 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x4p-1024 1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x4p-1024 1LL : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 0x4p-1024 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x4p-1024 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4p-1024 1LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x4p-1024 1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-1024 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4p-1024 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-1024 1LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x4p-1024 1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 0x4p-1024 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4p-1024 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-1024 1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4p-1024 1LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward ibm128 0x4p-1024 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4p-1024 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4p-1024 1LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x4p-1024 1LL : 0x1.000000000000000000000000008p+0 : inexact-ok
+= compoundn downward intel96 0x4p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x4p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x4p-16384 1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x4p-16384 1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 0x4p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4p-16384 1LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward intel96 0x2p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x2p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x2p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x2p-16384 1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 0x2p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x2p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x2p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x2p-16384 1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 0x2p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x2p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x2p-16384 1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x2p-16384 1LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward binary64 0x8p-972 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x8p-972 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x8p-972 1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x8p-972 1LL : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 0x8p-972 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x8p-972 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x8p-972 1LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x8p-972 1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 0x8p-972 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x8p-972 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x8p-972 1LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x8p-972 1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 0x8p-972 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x8p-972 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x8p-972 1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x8p-972 1LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward ibm128 0x8p-972 1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x8p-972 1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x8p-972 1LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x8p-972 1LL : 0x1.000000000000000000000000008p+0 : inexact-ok
+compoundn 0.001 1
+= compoundn downward binary32 0x4.189378p-12 1LL : 0x1.004188p+0 : inexact-ok
+= compoundn tonearest binary32 0x4.189378p-12 1LL : 0x1.00418ap+0 : inexact-ok
+= compoundn towardzero binary32 0x4.189378p-12 1LL : 0x1.004188p+0 : inexact-ok
+= compoundn upward binary32 0x4.189378p-12 1LL : 0x1.00418ap+0 : inexact-ok
+= compoundn downward binary64 0x4.189378p-12 1LL : 0x1.004189378p+0 : inexact-ok
+= compoundn tonearest binary64 0x4.189378p-12 1LL : 0x1.004189378p+0 : inexact-ok
+= compoundn towardzero binary64 0x4.189378p-12 1LL : 0x1.004189378p+0 : inexact-ok
+= compoundn upward binary64 0x4.189378p-12 1LL : 0x1.004189378p+0 : inexact-ok
+= compoundn downward intel96 0x4.189378p-12 1LL : 0x1.004189378p+0 : inexact-ok
+= compoundn tonearest intel96 0x4.189378p-12 1LL : 0x1.004189378p+0 : inexact-ok
+= compoundn towardzero intel96 0x4.189378p-12 1LL : 0x1.004189378p+0 : inexact-ok
+= compoundn upward intel96 0x4.189378p-12 1LL : 0x1.004189378p+0 : inexact-ok
+= compoundn downward m68k96 0x4.189378p-12 1LL : 0x1.004189378p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4.189378p-12 1LL : 0x1.004189378p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4.189378p-12 1LL : 0x1.004189378p+0 : inexact-ok
+= compoundn upward m68k96 0x4.189378p-12 1LL : 0x1.004189378p+0 : inexact-ok
+= compoundn downward binary128 0x4.189378p-12 1LL : 0x1.004189378p+0 : inexact-ok
+= compoundn tonearest binary128 0x4.189378p-12 1LL : 0x1.004189378p+0 : inexact-ok
+= compoundn towardzero binary128 0x4.189378p-12 1LL : 0x1.004189378p+0 : inexact-ok
+= compoundn upward binary128 0x4.189378p-12 1LL : 0x1.004189378p+0 : inexact-ok
+= compoundn downward ibm128 0x4.189378p-12 1LL : 0x1.004189378p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4.189378p-12 1LL : 0x1.004189378p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4.189378p-12 1LL : 0x1.004189378p+0 : inexact-ok
+= compoundn upward ibm128 0x4.189378p-12 1LL : 0x1.004189378p+0 : inexact-ok
+= compoundn downward binary32 0x4.18937p-12 1LL : 0x1.004188p+0 : inexact-ok
+= compoundn tonearest binary32 0x4.18937p-12 1LL : 0x1.00418ap+0 : inexact-ok
+= compoundn towardzero binary32 0x4.18937p-12 1LL : 0x1.004188p+0 : inexact-ok
+= compoundn upward binary32 0x4.18937p-12 1LL : 0x1.00418ap+0 : inexact-ok
+= compoundn downward binary64 0x4.18937p-12 1LL : 0x1.00418937p+0 : inexact-ok
+= compoundn tonearest binary64 0x4.18937p-12 1LL : 0x1.00418937p+0 : inexact-ok
+= compoundn towardzero binary64 0x4.18937p-12 1LL : 0x1.00418937p+0 : inexact-ok
+= compoundn upward binary64 0x4.18937p-12 1LL : 0x1.00418937p+0 : inexact-ok
+= compoundn downward intel96 0x4.18937p-12 1LL : 0x1.00418937p+0 : inexact-ok
+= compoundn tonearest intel96 0x4.18937p-12 1LL : 0x1.00418937p+0 : inexact-ok
+= compoundn towardzero intel96 0x4.18937p-12 1LL : 0x1.00418937p+0 : inexact-ok
+= compoundn upward intel96 0x4.18937p-12 1LL : 0x1.00418937p+0 : inexact-ok
+= compoundn downward m68k96 0x4.18937p-12 1LL : 0x1.00418937p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4.18937p-12 1LL : 0x1.00418937p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4.18937p-12 1LL : 0x1.00418937p+0 : inexact-ok
+= compoundn upward m68k96 0x4.18937p-12 1LL : 0x1.00418937p+0 : inexact-ok
+= compoundn downward binary128 0x4.18937p-12 1LL : 0x1.00418937p+0 : inexact-ok
+= compoundn tonearest binary128 0x4.18937p-12 1LL : 0x1.00418937p+0 : inexact-ok
+= compoundn towardzero binary128 0x4.18937p-12 1LL : 0x1.00418937p+0 : inexact-ok
+= compoundn upward binary128 0x4.18937p-12 1LL : 0x1.00418937p+0 : inexact-ok
+= compoundn downward ibm128 0x4.18937p-12 1LL : 0x1.00418937p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4.18937p-12 1LL : 0x1.00418937p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4.18937p-12 1LL : 0x1.00418937p+0 : inexact-ok
+= compoundn upward ibm128 0x4.18937p-12 1LL : 0x1.00418937p+0 : inexact-ok
+= compoundn downward binary64 0x4.189374bc6a7fp-12 1LL : 0x1.004189374bc6ap+0 : inexact-ok
+= compoundn tonearest binary64 0x4.189374bc6a7fp-12 1LL : 0x1.004189374bc6ap+0 : inexact-ok
+= compoundn towardzero binary64 0x4.189374bc6a7fp-12 1LL : 0x1.004189374bc6ap+0 : inexact-ok
+= compoundn upward binary64 0x4.189374bc6a7fp-12 1LL : 0x1.004189374bc6bp+0 : inexact-ok
+= compoundn downward intel96 0x4.189374bc6a7fp-12 1LL : 0x1.004189374bc6a7fp+0 : inexact-ok
+= compoundn tonearest intel96 0x4.189374bc6a7fp-12 1LL : 0x1.004189374bc6a7fp+0 : inexact-ok
+= compoundn towardzero intel96 0x4.189374bc6a7fp-12 1LL : 0x1.004189374bc6a7fp+0 : inexact-ok
+= compoundn upward intel96 0x4.189374bc6a7fp-12 1LL : 0x1.004189374bc6a7fp+0 : inexact-ok
+= compoundn downward m68k96 0x4.189374bc6a7fp-12 1LL : 0x1.004189374bc6a7fp+0 : inexact-ok
+= compoundn tonearest m68k96 0x4.189374bc6a7fp-12 1LL : 0x1.004189374bc6a7fp+0 : inexact-ok
+= compoundn towardzero m68k96 0x4.189374bc6a7fp-12 1LL : 0x1.004189374bc6a7fp+0 : inexact-ok
+= compoundn upward m68k96 0x4.189374bc6a7fp-12 1LL : 0x1.004189374bc6a7fp+0 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7fp-12 1LL : 0x1.004189374bc6a7fp+0 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7fp-12 1LL : 0x1.004189374bc6a7fp+0 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7fp-12 1LL : 0x1.004189374bc6a7fp+0 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7fp-12 1LL : 0x1.004189374bc6a7fp+0 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7fp-12 1LL : 0x1.004189374bc6a7fp+0 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7fp-12 1LL : 0x1.004189374bc6a7fp+0 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7fp-12 1LL : 0x1.004189374bc6a7fp+0 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7fp-12 1LL : 0x1.004189374bc6a7fp+0 : inexact-ok
+= compoundn downward binary64 0x4.189374bc6a7ecp-12 1LL : 0x1.004189374bc6ap+0 : inexact-ok
+= compoundn tonearest binary64 0x4.189374bc6a7ecp-12 1LL : 0x1.004189374bc6ap+0 : inexact-ok
+= compoundn towardzero binary64 0x4.189374bc6a7ecp-12 1LL : 0x1.004189374bc6ap+0 : inexact-ok
+= compoundn upward binary64 0x4.189374bc6a7ecp-12 1LL : 0x1.004189374bc6bp+0 : inexact-ok
+= compoundn downward intel96 0x4.189374bc6a7ecp-12 1LL : 0x1.004189374bc6a7ecp+0 : inexact-ok
+= compoundn tonearest intel96 0x4.189374bc6a7ecp-12 1LL : 0x1.004189374bc6a7ecp+0 : inexact-ok
+= compoundn towardzero intel96 0x4.189374bc6a7ecp-12 1LL : 0x1.004189374bc6a7ecp+0 : inexact-ok
+= compoundn upward intel96 0x4.189374bc6a7ecp-12 1LL : 0x1.004189374bc6a7ecp+0 : inexact-ok
+= compoundn downward m68k96 0x4.189374bc6a7ecp-12 1LL : 0x1.004189374bc6a7ecp+0 : inexact-ok
+= compoundn tonearest m68k96 0x4.189374bc6a7ecp-12 1LL : 0x1.004189374bc6a7ecp+0 : inexact-ok
+= compoundn towardzero m68k96 0x4.189374bc6a7ecp-12 1LL : 0x1.004189374bc6a7ecp+0 : inexact-ok
+= compoundn upward m68k96 0x4.189374bc6a7ecp-12 1LL : 0x1.004189374bc6a7ecp+0 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ecp-12 1LL : 0x1.004189374bc6a7ecp+0 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ecp-12 1LL : 0x1.004189374bc6a7ecp+0 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ecp-12 1LL : 0x1.004189374bc6a7ecp+0 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ecp-12 1LL : 0x1.004189374bc6a7ecp+0 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7ecp-12 1LL : 0x1.004189374bc6a7ecp+0 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ecp-12 1LL : 0x1.004189374bc6a7ecp+0 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7ecp-12 1LL : 0x1.004189374bc6a7ecp+0 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7ecp-12 1LL : 0x1.004189374bc6a7ecp+0 : inexact-ok
+= compoundn downward intel96 0x4.189374bc6a7ef9ep-12 1LL : 0x1.004189374bc6a7eep+0 : inexact-ok
+= compoundn tonearest intel96 0x4.189374bc6a7ef9ep-12 1LL : 0x1.004189374bc6a7fp+0 : inexact-ok
+= compoundn towardzero intel96 0x4.189374bc6a7ef9ep-12 1LL : 0x1.004189374bc6a7eep+0 : inexact-ok
+= compoundn upward intel96 0x4.189374bc6a7ef9ep-12 1LL : 0x1.004189374bc6a7fp+0 : inexact-ok
+= compoundn downward m68k96 0x4.189374bc6a7ef9ep-12 1LL : 0x1.004189374bc6a7eep+0 : inexact-ok
+= compoundn tonearest m68k96 0x4.189374bc6a7ef9ep-12 1LL : 0x1.004189374bc6a7fp+0 : inexact-ok
+= compoundn towardzero m68k96 0x4.189374bc6a7ef9ep-12 1LL : 0x1.004189374bc6a7eep+0 : inexact-ok
+= compoundn upward m68k96 0x4.189374bc6a7ef9ep-12 1LL : 0x1.004189374bc6a7fp+0 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9ep-12 1LL : 0x1.004189374bc6a7ef9ep+0 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9ep-12 1LL : 0x1.004189374bc6a7ef9ep+0 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9ep-12 1LL : 0x1.004189374bc6a7ef9ep+0 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9ep-12 1LL : 0x1.004189374bc6a7ef9ep+0 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7ef9ep-12 1LL : 0x1.004189374bc6a7ef9ep+0 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9ep-12 1LL : 0x1.004189374bc6a7ef9ep+0 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9ep-12 1LL : 0x1.004189374bc6a7ef9ep+0 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7ef9ep-12 1LL : 0x1.004189374bc6a7ef9ep+0 : inexact-ok
+= compoundn downward intel96 0x4.189374bc6a7ef9d8p-12 1LL : 0x1.004189374bc6a7eep+0 : inexact-ok
+= compoundn tonearest intel96 0x4.189374bc6a7ef9d8p-12 1LL : 0x1.004189374bc6a7fp+0 : inexact-ok
+= compoundn towardzero intel96 0x4.189374bc6a7ef9d8p-12 1LL : 0x1.004189374bc6a7eep+0 : inexact-ok
+= compoundn upward intel96 0x4.189374bc6a7ef9d8p-12 1LL : 0x1.004189374bc6a7fp+0 : inexact-ok
+= compoundn downward m68k96 0x4.189374bc6a7ef9d8p-12 1LL : 0x1.004189374bc6a7eep+0 : inexact-ok
+= compoundn tonearest m68k96 0x4.189374bc6a7ef9d8p-12 1LL : 0x1.004189374bc6a7fp+0 : inexact-ok
+= compoundn towardzero m68k96 0x4.189374bc6a7ef9d8p-12 1LL : 0x1.004189374bc6a7eep+0 : inexact-ok
+= compoundn upward m68k96 0x4.189374bc6a7ef9d8p-12 1LL : 0x1.004189374bc6a7fp+0 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9d8p-12 1LL : 0x1.004189374bc6a7ef9d8p+0 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9d8p-12 1LL : 0x1.004189374bc6a7ef9d8p+0 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9d8p-12 1LL : 0x1.004189374bc6a7ef9d8p+0 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9d8p-12 1LL : 0x1.004189374bc6a7ef9d8p+0 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7ef9d8p-12 1LL : 0x1.004189374bc6a7ef9d8p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9d8p-12 1LL : 0x1.004189374bc6a7ef9d8p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9d8p-12 1LL : 0x1.004189374bc6a7ef9d8p+0 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7ef9d8p-12 1LL : 0x1.004189374bc6a7ef9d8p+0 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 1LL : 0x1.004189374bc6a7ef9db22d0e5604p+0 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 1LL : 0x1.004189374bc6a7ef9db22d0e5604p+0 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 1LL : 0x1.004189374bc6a7ef9db22d0e5604p+0 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 1LL : 0x1.004189374bc6a7ef9db22d0e5605p+0 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 1LL : 0x1.004189374bc6a7ef9db22d0e5604p+0 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 1LL : 0x1.004189374bc6a7ef9db22d0e5604p+0 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 1LL : 0x1.004189374bc6a7ef9db22d0e5604p+0 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 1LL : 0x1.004189374bc6a7ef9db22d0e5605p+0 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e56042p-12 1LL : 0x1.004189374bc6a7ef9db22d0e5604p+0 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e56042p-12 1LL : 0x1.004189374bc6a7ef9db22d0e5604p+0 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e56042p-12 1LL : 0x1.004189374bc6a7ef9db22d0e5604p+0 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e56042p-12 1LL : 0x1.004189374bc6a7ef9db22d0e5605p+0 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 1LL : 0x1.004189374bc6a7ef9db22d0e56p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 1LL : 0x1.004189374bc6a7ef9db22d0e56p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 1LL : 0x1.004189374bc6a7ef9db22d0e56p+0 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 1LL : 0x1.004189374bc6a7ef9db22d0e568p+0 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e5604p-12 1LL : 0x1.004189374bc6a7ef9db22d0e5604p+0 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e5604p-12 1LL : 0x1.004189374bc6a7ef9db22d0e5604p+0 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e5604p-12 1LL : 0x1.004189374bc6a7ef9db22d0e5604p+0 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e5604p-12 1LL : 0x1.004189374bc6a7ef9db22d0e5604p+0 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 1LL : 0x1.004189374bc6a7ef9db22d0e56p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 1LL : 0x1.004189374bc6a7ef9db22d0e56p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 1LL : 0x1.004189374bc6a7ef9db22d0e56p+0 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 1LL : 0x1.004189374bc6a7ef9db22d0e568p+0 : inexact-ok
+compoundn 0.123456 1
+= compoundn downward binary32 0x1.f9adp-4 1LL : 0x1.1f9adp+0 : inexact-ok
+= compoundn tonearest binary32 0x1.f9adp-4 1LL : 0x1.1f9adp+0 : inexact-ok
+= compoundn towardzero binary32 0x1.f9adp-4 1LL : 0x1.1f9adp+0 : inexact-ok
+= compoundn upward binary32 0x1.f9adp-4 1LL : 0x1.1f9adp+0 : inexact-ok
+= compoundn downward binary64 0x1.f9adp-4 1LL : 0x1.1f9adp+0 : inexact-ok
+= compoundn tonearest binary64 0x1.f9adp-4 1LL : 0x1.1f9adp+0 : inexact-ok
+= compoundn towardzero binary64 0x1.f9adp-4 1LL : 0x1.1f9adp+0 : inexact-ok
+= compoundn upward binary64 0x1.f9adp-4 1LL : 0x1.1f9adp+0 : inexact-ok
+= compoundn downward intel96 0x1.f9adp-4 1LL : 0x1.1f9adp+0 : inexact-ok
+= compoundn tonearest intel96 0x1.f9adp-4 1LL : 0x1.1f9adp+0 : inexact-ok
+= compoundn towardzero intel96 0x1.f9adp-4 1LL : 0x1.1f9adp+0 : inexact-ok
+= compoundn upward intel96 0x1.f9adp-4 1LL : 0x1.1f9adp+0 : inexact-ok
+= compoundn downward m68k96 0x1.f9adp-4 1LL : 0x1.1f9adp+0 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9adp-4 1LL : 0x1.1f9adp+0 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9adp-4 1LL : 0x1.1f9adp+0 : inexact-ok
+= compoundn upward m68k96 0x1.f9adp-4 1LL : 0x1.1f9adp+0 : inexact-ok
+= compoundn downward binary128 0x1.f9adp-4 1LL : 0x1.1f9adp+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9adp-4 1LL : 0x1.1f9adp+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9adp-4 1LL : 0x1.1f9adp+0 : inexact-ok
+= compoundn upward binary128 0x1.f9adp-4 1LL : 0x1.1f9adp+0 : inexact-ok
+= compoundn downward ibm128 0x1.f9adp-4 1LL : 0x1.1f9adp+0 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9adp-4 1LL : 0x1.1f9adp+0 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9adp-4 1LL : 0x1.1f9adp+0 : inexact-ok
+= compoundn upward ibm128 0x1.f9adp-4 1LL : 0x1.1f9adp+0 : inexact-ok
+= compoundn downward binary32 0x1.f9acfep-4 1LL : 0x1.1f9acep+0 : inexact-ok
+= compoundn tonearest binary32 0x1.f9acfep-4 1LL : 0x1.1f9adp+0 : inexact-ok
+= compoundn towardzero binary32 0x1.f9acfep-4 1LL : 0x1.1f9acep+0 : inexact-ok
+= compoundn upward binary32 0x1.f9acfep-4 1LL : 0x1.1f9adp+0 : inexact-ok
+= compoundn downward binary64 0x1.f9acfep-4 1LL : 0x1.1f9acfep+0 : inexact-ok
+= compoundn tonearest binary64 0x1.f9acfep-4 1LL : 0x1.1f9acfep+0 : inexact-ok
+= compoundn towardzero binary64 0x1.f9acfep-4 1LL : 0x1.1f9acfep+0 : inexact-ok
+= compoundn upward binary64 0x1.f9acfep-4 1LL : 0x1.1f9acfep+0 : inexact-ok
+= compoundn downward intel96 0x1.f9acfep-4 1LL : 0x1.1f9acfep+0 : inexact-ok
+= compoundn tonearest intel96 0x1.f9acfep-4 1LL : 0x1.1f9acfep+0 : inexact-ok
+= compoundn towardzero intel96 0x1.f9acfep-4 1LL : 0x1.1f9acfep+0 : inexact-ok
+= compoundn upward intel96 0x1.f9acfep-4 1LL : 0x1.1f9acfep+0 : inexact-ok
+= compoundn downward m68k96 0x1.f9acfep-4 1LL : 0x1.1f9acfep+0 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9acfep-4 1LL : 0x1.1f9acfep+0 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9acfep-4 1LL : 0x1.1f9acfep+0 : inexact-ok
+= compoundn upward m68k96 0x1.f9acfep-4 1LL : 0x1.1f9acfep+0 : inexact-ok
+= compoundn downward binary128 0x1.f9acfep-4 1LL : 0x1.1f9acfep+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acfep-4 1LL : 0x1.1f9acfep+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acfep-4 1LL : 0x1.1f9acfep+0 : inexact-ok
+= compoundn upward binary128 0x1.f9acfep-4 1LL : 0x1.1f9acfep+0 : inexact-ok
+= compoundn downward ibm128 0x1.f9acfep-4 1LL : 0x1.1f9acfep+0 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acfep-4 1LL : 0x1.1f9acfep+0 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acfep-4 1LL : 0x1.1f9acfep+0 : inexact-ok
+= compoundn upward ibm128 0x1.f9acfep-4 1LL : 0x1.1f9acfep+0 : inexact-ok
+= compoundn downward binary64 0x1.f9acffa7eb6cp-4 1LL : 0x1.1f9acffa7eb6cp+0 : inexact-ok
+= compoundn tonearest binary64 0x1.f9acffa7eb6cp-4 1LL : 0x1.1f9acffa7eb6cp+0 : inexact-ok
+= compoundn towardzero binary64 0x1.f9acffa7eb6cp-4 1LL : 0x1.1f9acffa7eb6cp+0 : inexact-ok
+= compoundn upward binary64 0x1.f9acffa7eb6cp-4 1LL : 0x1.1f9acffa7eb6cp+0 : inexact-ok
+= compoundn downward intel96 0x1.f9acffa7eb6cp-4 1LL : 0x1.1f9acffa7eb6cp+0 : inexact-ok
+= compoundn tonearest intel96 0x1.f9acffa7eb6cp-4 1LL : 0x1.1f9acffa7eb6cp+0 : inexact-ok
+= compoundn towardzero intel96 0x1.f9acffa7eb6cp-4 1LL : 0x1.1f9acffa7eb6cp+0 : inexact-ok
+= compoundn upward intel96 0x1.f9acffa7eb6cp-4 1LL : 0x1.1f9acffa7eb6cp+0 : inexact-ok
+= compoundn downward m68k96 0x1.f9acffa7eb6cp-4 1LL : 0x1.1f9acffa7eb6cp+0 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9acffa7eb6cp-4 1LL : 0x1.1f9acffa7eb6cp+0 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9acffa7eb6cp-4 1LL : 0x1.1f9acffa7eb6cp+0 : inexact-ok
+= compoundn upward m68k96 0x1.f9acffa7eb6cp-4 1LL : 0x1.1f9acffa7eb6cp+0 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6cp-4 1LL : 0x1.1f9acffa7eb6cp+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6cp-4 1LL : 0x1.1f9acffa7eb6cp+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6cp-4 1LL : 0x1.1f9acffa7eb6cp+0 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6cp-4 1LL : 0x1.1f9acffa7eb6cp+0 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6cp-4 1LL : 0x1.1f9acffa7eb6cp+0 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6cp-4 1LL : 0x1.1f9acffa7eb6cp+0 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6cp-4 1LL : 0x1.1f9acffa7eb6cp+0 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6cp-4 1LL : 0x1.1f9acffa7eb6cp+0 : inexact-ok
+= compoundn downward binary64 0x1.f9acffa7eb6bfp-4 1LL : 0x1.1f9acffa7eb6bp+0 : inexact-ok
+= compoundn tonearest binary64 0x1.f9acffa7eb6bfp-4 1LL : 0x1.1f9acffa7eb6cp+0 : inexact-ok
+= compoundn towardzero binary64 0x1.f9acffa7eb6bfp-4 1LL : 0x1.1f9acffa7eb6bp+0 : inexact-ok
+= compoundn upward binary64 0x1.f9acffa7eb6bfp-4 1LL : 0x1.1f9acffa7eb6cp+0 : inexact-ok
+= compoundn downward intel96 0x1.f9acffa7eb6bfp-4 1LL : 0x1.1f9acffa7eb6bfp+0 : inexact-ok
+= compoundn tonearest intel96 0x1.f9acffa7eb6bfp-4 1LL : 0x1.1f9acffa7eb6bfp+0 : inexact-ok
+= compoundn towardzero intel96 0x1.f9acffa7eb6bfp-4 1LL : 0x1.1f9acffa7eb6bfp+0 : inexact-ok
+= compoundn upward intel96 0x1.f9acffa7eb6bfp-4 1LL : 0x1.1f9acffa7eb6bfp+0 : inexact-ok
+= compoundn downward m68k96 0x1.f9acffa7eb6bfp-4 1LL : 0x1.1f9acffa7eb6bfp+0 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9acffa7eb6bfp-4 1LL : 0x1.1f9acffa7eb6bfp+0 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9acffa7eb6bfp-4 1LL : 0x1.1f9acffa7eb6bfp+0 : inexact-ok
+= compoundn upward m68k96 0x1.f9acffa7eb6bfp-4 1LL : 0x1.1f9acffa7eb6bfp+0 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bfp-4 1LL : 0x1.1f9acffa7eb6bfp+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bfp-4 1LL : 0x1.1f9acffa7eb6bfp+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bfp-4 1LL : 0x1.1f9acffa7eb6bfp+0 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bfp-4 1LL : 0x1.1f9acffa7eb6bfp+0 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bfp-4 1LL : 0x1.1f9acffa7eb6bfp+0 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bfp-4 1LL : 0x1.1f9acffa7eb6bfp+0 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bfp-4 1LL : 0x1.1f9acffa7eb6bfp+0 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bfp-4 1LL : 0x1.1f9acffa7eb6bfp+0 : inexact-ok
+= compoundn downward intel96 0x1.f9acffa7eb6bf446p-4 1LL : 0x1.1f9acffa7eb6bf44p+0 : inexact-ok
+= compoundn tonearest intel96 0x1.f9acffa7eb6bf446p-4 1LL : 0x1.1f9acffa7eb6bf44p+0 : inexact-ok
+= compoundn towardzero intel96 0x1.f9acffa7eb6bf446p-4 1LL : 0x1.1f9acffa7eb6bf44p+0 : inexact-ok
+= compoundn upward intel96 0x1.f9acffa7eb6bf446p-4 1LL : 0x1.1f9acffa7eb6bf46p+0 : inexact-ok
+= compoundn downward m68k96 0x1.f9acffa7eb6bf446p-4 1LL : 0x1.1f9acffa7eb6bf44p+0 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9acffa7eb6bf446p-4 1LL : 0x1.1f9acffa7eb6bf44p+0 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9acffa7eb6bf446p-4 1LL : 0x1.1f9acffa7eb6bf44p+0 : inexact-ok
+= compoundn upward m68k96 0x1.f9acffa7eb6bf446p-4 1LL : 0x1.1f9acffa7eb6bf46p+0 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf446p-4 1LL : 0x1.1f9acffa7eb6bf446p+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf446p-4 1LL : 0x1.1f9acffa7eb6bf446p+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf446p-4 1LL : 0x1.1f9acffa7eb6bf446p+0 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf446p-4 1LL : 0x1.1f9acffa7eb6bf446p+0 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bf446p-4 1LL : 0x1.1f9acffa7eb6bf446p+0 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf446p-4 1LL : 0x1.1f9acffa7eb6bf446p+0 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf446p-4 1LL : 0x1.1f9acffa7eb6bf446p+0 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bf446p-4 1LL : 0x1.1f9acffa7eb6bf446p+0 : inexact-ok
+= compoundn downward intel96 0x1.f9acffa7eb6bf444p-4 1LL : 0x1.1f9acffa7eb6bf44p+0 : inexact-ok
+= compoundn tonearest intel96 0x1.f9acffa7eb6bf444p-4 1LL : 0x1.1f9acffa7eb6bf44p+0 : inexact-ok
+= compoundn towardzero intel96 0x1.f9acffa7eb6bf444p-4 1LL : 0x1.1f9acffa7eb6bf44p+0 : inexact-ok
+= compoundn upward intel96 0x1.f9acffa7eb6bf444p-4 1LL : 0x1.1f9acffa7eb6bf46p+0 : inexact-ok
+= compoundn downward m68k96 0x1.f9acffa7eb6bf444p-4 1LL : 0x1.1f9acffa7eb6bf44p+0 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9acffa7eb6bf444p-4 1LL : 0x1.1f9acffa7eb6bf44p+0 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9acffa7eb6bf444p-4 1LL : 0x1.1f9acffa7eb6bf44p+0 : inexact-ok
+= compoundn upward m68k96 0x1.f9acffa7eb6bf444p-4 1LL : 0x1.1f9acffa7eb6bf46p+0 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444p-4 1LL : 0x1.1f9acffa7eb6bf444p+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444p-4 1LL : 0x1.1f9acffa7eb6bf444p+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444p-4 1LL : 0x1.1f9acffa7eb6bf444p+0 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444p-4 1LL : 0x1.1f9acffa7eb6bf444p+0 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bf444p-4 1LL : 0x1.1f9acffa7eb6bf444p+0 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf444p-4 1LL : 0x1.1f9acffa7eb6bf444p+0 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf444p-4 1LL : 0x1.1f9acffa7eb6bf444p+0 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bf444p-4 1LL : 0x1.1f9acffa7eb6bf444p+0 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 1LL : 0x1.1f9acffa7eb6bf444e0daa0cae64p+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 1LL : 0x1.1f9acffa7eb6bf444e0daa0cae64p+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 1LL : 0x1.1f9acffa7eb6bf444e0daa0cae64p+0 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 1LL : 0x1.1f9acffa7eb6bf444e0daa0cae65p+0 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 1LL : 0x1.1f9acffa7eb6bf444e0daa0cae64p+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 1LL : 0x1.1f9acffa7eb6bf444e0daa0cae64p+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 1LL : 0x1.1f9acffa7eb6bf444e0daa0cae64p+0 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 1LL : 0x1.1f9acffa7eb6bf444e0daa0cae65p+0 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 1LL : 0x1.1f9acffa7eb6bf444e0daa0cae68p+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 1LL : 0x1.1f9acffa7eb6bf444e0daa0cae68p+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 1LL : 0x1.1f9acffa7eb6bf444e0daa0cae68p+0 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 1LL : 0x1.1f9acffa7eb6bf444e0daa0cae68p+0 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 1LL : 0x1.1f9acffa7eb6bf444e0daa0caep+0 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 1LL : 0x1.1f9acffa7eb6bf444e0daa0cae8p+0 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 1LL : 0x1.1f9acffa7eb6bf444e0daa0caep+0 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 1LL : 0x1.1f9acffa7eb6bf444e0daa0cae8p+0 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 1LL : 0x1.1f9acffa7eb6bf444e0daa0cae6p+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 1LL : 0x1.1f9acffa7eb6bf444e0daa0cae6p+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 1LL : 0x1.1f9acffa7eb6bf444e0daa0cae6p+0 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 1LL : 0x1.1f9acffa7eb6bf444e0daa0cae6p+0 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 1LL : 0x1.1f9acffa7eb6bf444e0daa0caep+0 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 1LL : 0x1.1f9acffa7eb6bf444e0daa0cae8p+0 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 1LL : 0x1.1f9acffa7eb6bf444e0daa0caep+0 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 1LL : 0x1.1f9acffa7eb6bf444e0daa0cae8p+0 : inexact-ok
+compoundn 1 1
+= compoundn downward binary32 0x1p+0 1LL : 0x2p+0 : inexact-ok
+= compoundn tonearest binary32 0x1p+0 1LL : 0x2p+0 : inexact-ok
+= compoundn towardzero binary32 0x1p+0 1LL : 0x2p+0 : inexact-ok
+= compoundn upward binary32 0x1p+0 1LL : 0x2p+0 : inexact-ok
+= compoundn downward binary64 0x1p+0 1LL : 0x2p+0 : inexact-ok
+= compoundn tonearest binary64 0x1p+0 1LL : 0x2p+0 : inexact-ok
+= compoundn towardzero binary64 0x1p+0 1LL : 0x2p+0 : inexact-ok
+= compoundn upward binary64 0x1p+0 1LL : 0x2p+0 : inexact-ok
+= compoundn downward intel96 0x1p+0 1LL : 0x2p+0 : inexact-ok
+= compoundn tonearest intel96 0x1p+0 1LL : 0x2p+0 : inexact-ok
+= compoundn towardzero intel96 0x1p+0 1LL : 0x2p+0 : inexact-ok
+= compoundn upward intel96 0x1p+0 1LL : 0x2p+0 : inexact-ok
+= compoundn downward m68k96 0x1p+0 1LL : 0x2p+0 : inexact-ok
+= compoundn tonearest m68k96 0x1p+0 1LL : 0x2p+0 : inexact-ok
+= compoundn towardzero m68k96 0x1p+0 1LL : 0x2p+0 : inexact-ok
+= compoundn upward m68k96 0x1p+0 1LL : 0x2p+0 : inexact-ok
+= compoundn downward binary128 0x1p+0 1LL : 0x2p+0 : inexact-ok
+= compoundn tonearest binary128 0x1p+0 1LL : 0x2p+0 : inexact-ok
+= compoundn towardzero binary128 0x1p+0 1LL : 0x2p+0 : inexact-ok
+= compoundn upward binary128 0x1p+0 1LL : 0x2p+0 : inexact-ok
+= compoundn downward ibm128 0x1p+0 1LL : 0x2p+0 : inexact-ok
+= compoundn tonearest ibm128 0x1p+0 1LL : 0x2p+0 : inexact-ok
+= compoundn towardzero ibm128 0x1p+0 1LL : 0x2p+0 : inexact-ok
+= compoundn upward ibm128 0x1p+0 1LL : 0x2p+0 : inexact-ok
+compoundn 2 1
+= compoundn downward binary32 0x2p+0 1LL : 0x3p+0 : inexact-ok
+= compoundn tonearest binary32 0x2p+0 1LL : 0x3p+0 : inexact-ok
+= compoundn towardzero binary32 0x2p+0 1LL : 0x3p+0 : inexact-ok
+= compoundn upward binary32 0x2p+0 1LL : 0x3p+0 : inexact-ok
+= compoundn downward binary64 0x2p+0 1LL : 0x3p+0 : inexact-ok
+= compoundn tonearest binary64 0x2p+0 1LL : 0x3p+0 : inexact-ok
+= compoundn towardzero binary64 0x2p+0 1LL : 0x3p+0 : inexact-ok
+= compoundn upward binary64 0x2p+0 1LL : 0x3p+0 : inexact-ok
+= compoundn downward intel96 0x2p+0 1LL : 0x3p+0 : inexact-ok
+= compoundn tonearest intel96 0x2p+0 1LL : 0x3p+0 : inexact-ok
+= compoundn towardzero intel96 0x2p+0 1LL : 0x3p+0 : inexact-ok
+= compoundn upward intel96 0x2p+0 1LL : 0x3p+0 : inexact-ok
+= compoundn downward m68k96 0x2p+0 1LL : 0x3p+0 : inexact-ok
+= compoundn tonearest m68k96 0x2p+0 1LL : 0x3p+0 : inexact-ok
+= compoundn towardzero m68k96 0x2p+0 1LL : 0x3p+0 : inexact-ok
+= compoundn upward m68k96 0x2p+0 1LL : 0x3p+0 : inexact-ok
+= compoundn downward binary128 0x2p+0 1LL : 0x3p+0 : inexact-ok
+= compoundn tonearest binary128 0x2p+0 1LL : 0x3p+0 : inexact-ok
+= compoundn towardzero binary128 0x2p+0 1LL : 0x3p+0 : inexact-ok
+= compoundn upward binary128 0x2p+0 1LL : 0x3p+0 : inexact-ok
+= compoundn downward ibm128 0x2p+0 1LL : 0x3p+0 : inexact-ok
+= compoundn tonearest ibm128 0x2p+0 1LL : 0x3p+0 : inexact-ok
+= compoundn towardzero ibm128 0x2p+0 1LL : 0x3p+0 : inexact-ok
+= compoundn upward ibm128 0x2p+0 1LL : 0x3p+0 : inexact-ok
+compoundn max 1 xfail:ibm128-libgcc
+= compoundn downward binary32 0xf.fffffp+124 1LL : 0xf.fffffp+124 : xfail:ibm128-libgcc inexact-ok
+= compoundn tonearest binary32 0xf.fffffp+124 1LL : 0xf.fffffp+124 : xfail:ibm128-libgcc inexact-ok
+= compoundn towardzero binary32 0xf.fffffp+124 1LL : 0xf.fffffp+124 : xfail:ibm128-libgcc inexact-ok
+= compoundn upward binary32 0xf.fffffp+124 1LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward binary64 0xf.fffffp+124 1LL : 0xf.fffffp+124 : xfail:ibm128-libgcc inexact-ok
+= compoundn tonearest binary64 0xf.fffffp+124 1LL : 0xf.fffffp+124 : xfail:ibm128-libgcc inexact-ok
+= compoundn towardzero binary64 0xf.fffffp+124 1LL : 0xf.fffffp+124 : xfail:ibm128-libgcc inexact-ok
+= compoundn upward binary64 0xf.fffffp+124 1LL : 0xf.fffff00000008p+124 : xfail:ibm128-libgcc inexact-ok
+= compoundn downward intel96 0xf.fffffp+124 1LL : 0xf.fffffp+124 : xfail:ibm128-libgcc inexact-ok
+= compoundn tonearest intel96 0xf.fffffp+124 1LL : 0xf.fffffp+124 : xfail:ibm128-libgcc inexact-ok
+= compoundn towardzero intel96 0xf.fffffp+124 1LL : 0xf.fffffp+124 : xfail:ibm128-libgcc inexact-ok
+= compoundn upward intel96 0xf.fffffp+124 1LL : 0xf.fffff0000000001p+124 : xfail:ibm128-libgcc inexact-ok
+= compoundn downward m68k96 0xf.fffffp+124 1LL : 0xf.fffffp+124 : xfail:ibm128-libgcc inexact-ok
+= compoundn tonearest m68k96 0xf.fffffp+124 1LL : 0xf.fffffp+124 : xfail:ibm128-libgcc inexact-ok
+= compoundn towardzero m68k96 0xf.fffffp+124 1LL : 0xf.fffffp+124 : xfail:ibm128-libgcc inexact-ok
+= compoundn upward m68k96 0xf.fffffp+124 1LL : 0xf.fffff0000000001p+124 : xfail:ibm128-libgcc inexact-ok
+= compoundn downward binary128 0xf.fffffp+124 1LL : 0xf.fffffp+124 : xfail:ibm128-libgcc inexact-ok
+= compoundn tonearest binary128 0xf.fffffp+124 1LL : 0xf.fffffp+124 : xfail:ibm128-libgcc inexact-ok
+= compoundn towardzero binary128 0xf.fffffp+124 1LL : 0xf.fffffp+124 : xfail:ibm128-libgcc inexact-ok
+= compoundn upward binary128 0xf.fffffp+124 1LL : 0xf.fffff00000000000000000000008p+124 : xfail:ibm128-libgcc inexact-ok
+= compoundn downward ibm128 0xf.fffffp+124 1LL : 0xf.fffffp+124 : xfail:ibm128-libgcc inexact-ok
+= compoundn tonearest ibm128 0xf.fffffp+124 1LL : 0xf.fffffp+124 : xfail:ibm128-libgcc inexact-ok
+= compoundn towardzero ibm128 0xf.fffffp+124 1LL : 0xf.fffffp+124 : xfail:ibm128-libgcc inexact-ok
+= compoundn upward ibm128 0xf.fffffp+124 1LL : 0xf.fffff000000000000000000004p+124 : xfail:ibm128-libgcc inexact-ok
+= compoundn downward binary64 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : xfail:ibm128-libgcc inexact-ok
+= compoundn tonearest binary64 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : xfail:ibm128-libgcc inexact-ok
+= compoundn towardzero binary64 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : xfail:ibm128-libgcc inexact-ok
+= compoundn upward binary64 0xf.ffffffffffff8p+1020 1LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward intel96 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : xfail:ibm128-libgcc inexact-ok
+= compoundn tonearest intel96 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : xfail:ibm128-libgcc inexact-ok
+= compoundn towardzero intel96 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : xfail:ibm128-libgcc inexact-ok
+= compoundn upward intel96 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff801p+1020 : xfail:ibm128-libgcc inexact-ok
+= compoundn downward m68k96 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : xfail:ibm128-libgcc inexact-ok
+= compoundn tonearest m68k96 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : xfail:ibm128-libgcc inexact-ok
+= compoundn towardzero m68k96 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : xfail:ibm128-libgcc inexact-ok
+= compoundn upward m68k96 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff801p+1020 : xfail:ibm128-libgcc inexact-ok
+= compoundn downward binary128 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : xfail:ibm128-libgcc inexact-ok
+= compoundn tonearest binary128 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : xfail:ibm128-libgcc inexact-ok
+= compoundn towardzero binary128 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : xfail:ibm128-libgcc inexact-ok
+= compoundn upward binary128 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8000000000000008p+1020 : xfail:ibm128-libgcc inexact-ok
+= compoundn downward ibm128 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : xfail:ibm128-libgcc inexact-ok
+= compoundn tonearest ibm128 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : xfail:ibm128-libgcc inexact-ok
+= compoundn towardzero ibm128 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : xfail:ibm128-libgcc inexact-ok
+= compoundn upward ibm128 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff80000000000004p+1020 : xfail:ibm128-libgcc inexact-ok
+= compoundn downward intel96 0xf.fffffffffffffffp+16380 1LL : 0xf.fffffffffffffffp+16380 : xfail:ibm128-libgcc inexact-ok
+= compoundn tonearest intel96 0xf.fffffffffffffffp+16380 1LL : 0xf.fffffffffffffffp+16380 : xfail:ibm128-libgcc inexact-ok
+= compoundn towardzero intel96 0xf.fffffffffffffffp+16380 1LL : 0xf.fffffffffffffffp+16380 : xfail:ibm128-libgcc inexact-ok
+= compoundn upward intel96 0xf.fffffffffffffffp+16380 1LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward m68k96 0xf.fffffffffffffffp+16380 1LL : 0xf.fffffffffffffffp+16380 : xfail:ibm128-libgcc inexact-ok
+= compoundn tonearest m68k96 0xf.fffffffffffffffp+16380 1LL : 0xf.fffffffffffffffp+16380 : xfail:ibm128-libgcc inexact-ok
+= compoundn towardzero m68k96 0xf.fffffffffffffffp+16380 1LL : 0xf.fffffffffffffffp+16380 : xfail:ibm128-libgcc inexact-ok
+= compoundn upward m68k96 0xf.fffffffffffffffp+16380 1LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward binary128 0xf.fffffffffffffffp+16380 1LL : 0xf.fffffffffffffffp+16380 : xfail:ibm128-libgcc inexact-ok
+= compoundn tonearest binary128 0xf.fffffffffffffffp+16380 1LL : 0xf.fffffffffffffffp+16380 : xfail:ibm128-libgcc inexact-ok
+= compoundn towardzero binary128 0xf.fffffffffffffffp+16380 1LL : 0xf.fffffffffffffffp+16380 : xfail:ibm128-libgcc inexact-ok
+= compoundn upward binary128 0xf.fffffffffffffffp+16380 1LL : 0xf.fffffffffffffff0000000000008p+16380 : xfail:ibm128-libgcc inexact-ok
+= compoundn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 1LL : 0xf.fffffffffffffffffffffffffff8p+16380 : xfail:ibm128-libgcc inexact-ok
+= compoundn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 1LL : 0xf.fffffffffffffffffffffffffff8p+16380 : xfail:ibm128-libgcc inexact-ok
+= compoundn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 1LL : 0xf.fffffffffffffffffffffffffff8p+16380 : xfail:ibm128-libgcc inexact-ok
+= compoundn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 1LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 1LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok
+= compoundn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 1LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok
+= compoundn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 1LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok
+= compoundn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 1LL : 0xf.ffffffffffffbffffffffffffc08p+1020 : xfail:ibm128-libgcc inexact-ok
+= compoundn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 1LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok
+= compoundn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 1LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok
+= compoundn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 1LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok
+= compoundn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 1LL : plus_infty : xfail:ibm128-libgcc xfail:ibm128-libgcc inexact-ok overflow errno-erange
+compoundn -0.999 -1
+= compoundn downward binary32 -0xf.fbe76p-4 -1LL : 0x3.e7f408p+8 : inexact-ok
+= compoundn tonearest binary32 -0xf.fbe76p-4 -1LL : 0x3.e7f408p+8 : inexact-ok
+= compoundn towardzero binary32 -0xf.fbe76p-4 -1LL : 0x3.e7f408p+8 : inexact-ok
+= compoundn upward binary32 -0xf.fbe76p-4 -1LL : 0x3.e7f40cp+8 : inexact-ok
+= compoundn downward binary64 -0xf.fbe76p-4 -1LL : 0x3.e7f409a4a277cp+8 : inexact-ok
+= compoundn tonearest binary64 -0xf.fbe76p-4 -1LL : 0x3.e7f409a4a277cp+8 : inexact-ok
+= compoundn towardzero binary64 -0xf.fbe76p-4 -1LL : 0x3.e7f409a4a277cp+8 : inexact-ok
+= compoundn upward binary64 -0xf.fbe76p-4 -1LL : 0x3.e7f409a4a277ep+8 : inexact-ok
+= compoundn downward intel96 -0xf.fbe76p-4 -1LL : 0x3.e7f409a4a277ce7p+8 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe76p-4 -1LL : 0x3.e7f409a4a277ce7p+8 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe76p-4 -1LL : 0x3.e7f409a4a277ce7p+8 : inexact-ok
+= compoundn upward intel96 -0xf.fbe76p-4 -1LL : 0x3.e7f409a4a277ce74p+8 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe76p-4 -1LL : 0x3.e7f409a4a277ce7p+8 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe76p-4 -1LL : 0x3.e7f409a4a277ce7p+8 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe76p-4 -1LL : 0x3.e7f409a4a277ce7p+8 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe76p-4 -1LL : 0x3.e7f409a4a277ce74p+8 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76p-4 -1LL : 0x3.e7f409a4a277ce7117c5a732aff4p+8 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76p-4 -1LL : 0x3.e7f409a4a277ce7117c5a732aff4p+8 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76p-4 -1LL : 0x3.e7f409a4a277ce7117c5a732aff4p+8 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76p-4 -1LL : 0x3.e7f409a4a277ce7117c5a732aff6p+8 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76p-4 -1LL : 0x3.e7f409a4a277ce7117c5a732afp+8 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76p-4 -1LL : 0x3.e7f409a4a277ce7117c5a732bp+8 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76p-4 -1LL : 0x3.e7f409a4a277ce7117c5a732afp+8 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76p-4 -1LL : 0x3.e7f409a4a277ce7117c5a732bp+8 : inexact-ok
+= compoundn downward binary32 -0xf.fbe77p-4 -1LL : 0x3.e80348p+8 : inexact-ok
+= compoundn tonearest binary32 -0xf.fbe77p-4 -1LL : 0x3.e8034cp+8 : inexact-ok
+= compoundn towardzero binary32 -0xf.fbe77p-4 -1LL : 0x3.e80348p+8 : inexact-ok
+= compoundn upward binary32 -0xf.fbe77p-4 -1LL : 0x3.e8034cp+8 : inexact-ok
+= compoundn downward binary64 -0xf.fbe77p-4 -1LL : 0x3.e8034bc2c7ec4p+8 : inexact-ok
+= compoundn tonearest binary64 -0xf.fbe77p-4 -1LL : 0x3.e8034bc2c7ec6p+8 : inexact-ok
+= compoundn towardzero binary64 -0xf.fbe77p-4 -1LL : 0x3.e8034bc2c7ec4p+8 : inexact-ok
+= compoundn upward binary64 -0xf.fbe77p-4 -1LL : 0x3.e8034bc2c7ec6p+8 : inexact-ok
+= compoundn downward intel96 -0xf.fbe77p-4 -1LL : 0x3.e8034bc2c7ec58acp+8 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe77p-4 -1LL : 0x3.e8034bc2c7ec58bp+8 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe77p-4 -1LL : 0x3.e8034bc2c7ec58acp+8 : inexact-ok
+= compoundn upward intel96 -0xf.fbe77p-4 -1LL : 0x3.e8034bc2c7ec58bp+8 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe77p-4 -1LL : 0x3.e8034bc2c7ec58acp+8 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe77p-4 -1LL : 0x3.e8034bc2c7ec58bp+8 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe77p-4 -1LL : 0x3.e8034bc2c7ec58acp+8 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe77p-4 -1LL : 0x3.e8034bc2c7ec58bp+8 : inexact-ok
+= compoundn downward binary128 -0xf.fbe77p-4 -1LL : 0x3.e8034bc2c7ec58af6ad40222e1ccp+8 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe77p-4 -1LL : 0x3.e8034bc2c7ec58af6ad40222e1cep+8 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe77p-4 -1LL : 0x3.e8034bc2c7ec58af6ad40222e1ccp+8 : inexact-ok
+= compoundn upward binary128 -0xf.fbe77p-4 -1LL : 0x3.e8034bc2c7ec58af6ad40222e1cep+8 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe77p-4 -1LL : 0x3.e8034bc2c7ec58af6ad40222e1p+8 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe77p-4 -1LL : 0x3.e8034bc2c7ec58af6ad40222e2p+8 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe77p-4 -1LL : 0x3.e8034bc2c7ec58af6ad40222e1p+8 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe77p-4 -1LL : 0x3.e8034bc2c7ec58af6ad40222e2p+8 : inexact-ok
+= compoundn downward binary64 -0xf.fbe76c8b43958p-4 -1LL : 0x3.e7ffffffffffp+8 : inexact-ok
+= compoundn tonearest binary64 -0xf.fbe76c8b43958p-4 -1LL : 0x3.e7ffffffffffp+8 : inexact-ok
+= compoundn towardzero binary64 -0xf.fbe76c8b43958p-4 -1LL : 0x3.e7ffffffffffp+8 : inexact-ok
+= compoundn upward binary64 -0xf.fbe76c8b43958p-4 -1LL : 0x3.e7ffffffffff2p+8 : inexact-ok
+= compoundn downward intel96 -0xf.fbe76c8b43958p-4 -1LL : 0x3.e7ffffffffff06p+8 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe76c8b43958p-4 -1LL : 0x3.e7ffffffffff06p+8 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe76c8b43958p-4 -1LL : 0x3.e7ffffffffff06p+8 : inexact-ok
+= compoundn upward intel96 -0xf.fbe76c8b43958p-4 -1LL : 0x3.e7ffffffffff0604p+8 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe76c8b43958p-4 -1LL : 0x3.e7ffffffffff06p+8 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe76c8b43958p-4 -1LL : 0x3.e7ffffffffff06p+8 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe76c8b43958p-4 -1LL : 0x3.e7ffffffffff06p+8 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe76c8b43958p-4 -1LL : 0x3.e7ffffffffff0604p+8 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b43958p-4 -1LL : 0x3.e7ffffffffff0600000000003e7ep+8 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b43958p-4 -1LL : 0x3.e7ffffffffff0600000000003e8p+8 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b43958p-4 -1LL : 0x3.e7ffffffffff0600000000003e7ep+8 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b43958p-4 -1LL : 0x3.e7ffffffffff0600000000003e8p+8 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b43958p-4 -1LL : 0x3.e7ffffffffff0600000000003ep+8 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b43958p-4 -1LL : 0x3.e7ffffffffff0600000000003ep+8 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b43958p-4 -1LL : 0x3.e7ffffffffff0600000000003ep+8 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b43958p-4 -1LL : 0x3.e7ffffffffff0600000000003fp+8 : inexact-ok
+= compoundn downward binary64 -0xf.fbe76c8b4396p-4 -1LL : 0x3.e80000000079p+8 : inexact-ok
+= compoundn tonearest binary64 -0xf.fbe76c8b4396p-4 -1LL : 0x3.e800000000792p+8 : inexact-ok
+= compoundn towardzero binary64 -0xf.fbe76c8b4396p-4 -1LL : 0x3.e80000000079p+8 : inexact-ok
+= compoundn upward binary64 -0xf.fbe76c8b4396p-4 -1LL : 0x3.e800000000792p+8 : inexact-ok
+= compoundn downward intel96 -0xf.fbe76c8b4396p-4 -1LL : 0x3.e8000000007918p+8 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe76c8b4396p-4 -1LL : 0x3.e8000000007918p+8 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe76c8b4396p-4 -1LL : 0x3.e8000000007918p+8 : inexact-ok
+= compoundn upward intel96 -0xf.fbe76c8b4396p-4 -1LL : 0x3.e800000000791804p+8 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe76c8b4396p-4 -1LL : 0x3.e8000000007918p+8 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe76c8b4396p-4 -1LL : 0x3.e8000000007918p+8 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe76c8b4396p-4 -1LL : 0x3.e8000000007918p+8 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe76c8b4396p-4 -1LL : 0x3.e800000000791804p+8 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4396p-4 -1LL : 0x3.e80000000079180000000ea9e8p+8 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4396p-4 -1LL : 0x3.e80000000079180000000ea9e8p+8 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4396p-4 -1LL : 0x3.e80000000079180000000ea9e8p+8 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4396p-4 -1LL : 0x3.e80000000079180000000ea9e802p+8 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b4396p-4 -1LL : 0x3.e80000000079180000000ea9e8p+8 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b4396p-4 -1LL : 0x3.e80000000079180000000ea9e8p+8 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b4396p-4 -1LL : 0x3.e80000000079180000000ea9e8p+8 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b4396p-4 -1LL : 0x3.e80000000079180000000ea9e9p+8 : inexact-ok
+= compoundn downward intel96 -0xf.fbe76c8b439581p-4 -1LL : 0x3.e7fffffffffffa24p+8 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe76c8b439581p-4 -1LL : 0x3.e7fffffffffffa24p+8 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe76c8b439581p-4 -1LL : 0x3.e7fffffffffffa24p+8 : inexact-ok
+= compoundn upward intel96 -0xf.fbe76c8b439581p-4 -1LL : 0x3.e7fffffffffffa28p+8 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe76c8b439581p-4 -1LL : 0x3.e7fffffffffffa24p+8 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe76c8b439581p-4 -1LL : 0x3.e7fffffffffffa24p+8 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe76c8b439581p-4 -1LL : 0x3.e7fffffffffffa24p+8 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe76c8b439581p-4 -1LL : 0x3.e7fffffffffffa28p+8 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b439581p-4 -1LL : 0x3.e7fffffffffffa24000000000008p+8 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b439581p-4 -1LL : 0x3.e7fffffffffffa24000000000008p+8 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b439581p-4 -1LL : 0x3.e7fffffffffffa24000000000008p+8 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b439581p-4 -1LL : 0x3.e7fffffffffffa2400000000000ap+8 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b439581p-4 -1LL : 0x3.e7fffffffffffa24p+8 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b439581p-4 -1LL : 0x3.e7fffffffffffa24p+8 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b439581p-4 -1LL : 0x3.e7fffffffffffa24p+8 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b439581p-4 -1LL : 0x3.e7fffffffffffa240000000001p+8 : inexact-ok
+= compoundn downward intel96 -0xf.fbe76c8b4395811p-4 -1LL : 0x3.e800000000000964p+8 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe76c8b4395811p-4 -1LL : 0x3.e800000000000968p+8 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe76c8b4395811p-4 -1LL : 0x3.e800000000000964p+8 : inexact-ok
+= compoundn upward intel96 -0xf.fbe76c8b4395811p-4 -1LL : 0x3.e800000000000968p+8 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe76c8b4395811p-4 -1LL : 0x3.e800000000000964p+8 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe76c8b4395811p-4 -1LL : 0x3.e800000000000968p+8 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe76c8b4395811p-4 -1LL : 0x3.e800000000000964p+8 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe76c8b4395811p-4 -1LL : 0x3.e800000000000968p+8 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395811p-4 -1LL : 0x3.e800000000000966400000000016p+8 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395811p-4 -1LL : 0x3.e800000000000966400000000016p+8 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4395811p-4 -1LL : 0x3.e800000000000966400000000016p+8 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395811p-4 -1LL : 0x3.e800000000000966400000000018p+8 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b4395811p-4 -1LL : 0x3.e8000000000009664p+8 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b4395811p-4 -1LL : 0x3.e8000000000009664p+8 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b4395811p-4 -1LL : 0x3.e8000000000009664p+8 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b4395811p-4 -1LL : 0x3.e8000000000009664000000001p+8 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 -1LL : 0x3.e7fffffffffffffffffffffff9d4p+8 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 -1LL : 0x3.e7fffffffffffffffffffffff9d6p+8 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 -1LL : 0x3.e7fffffffffffffffffffffff9d4p+8 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 -1LL : 0x3.e7fffffffffffffffffffffff9d6p+8 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 -1LL : 0x3.e800000000000000000000000176p+8 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 -1LL : 0x3.e800000000000000000000000178p+8 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 -1LL : 0x3.e800000000000000000000000176p+8 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 -1LL : 0x3.e800000000000000000000000178p+8 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 -1LL : 0x3.e7fffffffffffffffffffffc6dfp+8 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 -1LL : 0x3.e7fffffffffffffffffffffc6dfp+8 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 -1LL : 0x3.e7fffffffffffffffffffffc6dfp+8 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 -1LL : 0x3.e7fffffffffffffffffffffc6df2p+8 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 -1LL : 0x3.e7fffffffffffffffffffffc6dp+8 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 -1LL : 0x3.e7fffffffffffffffffffffc6ep+8 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 -1LL : 0x3.e7fffffffffffffffffffffc6dp+8 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 -1LL : 0x3.e7fffffffffffffffffffffc6ep+8 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 -1LL : 0x3.e800000000000000000000003e8p+8 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 -1LL : 0x3.e800000000000000000000003e8p+8 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 -1LL : 0x3.e800000000000000000000003e8p+8 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 -1LL : 0x3.e800000000000000000000003e82p+8 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 -1LL : 0x3.e800000000000000000000003ep+8 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 -1LL : 0x3.e800000000000000000000003fp+8 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 -1LL : 0x3.e800000000000000000000003ep+8 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 -1LL : 0x3.e800000000000000000000003fp+8 : inexact-ok
+compoundn -0.123 -1
+= compoundn downward binary32 -0x1.f7ced8p-4 -1LL : 0x1.23e77ap+0 : inexact-ok
+= compoundn tonearest binary32 -0x1.f7ced8p-4 -1LL : 0x1.23e77ap+0 : inexact-ok
+= compoundn towardzero binary32 -0x1.f7ced8p-4 -1LL : 0x1.23e77ap+0 : inexact-ok
+= compoundn upward binary32 -0x1.f7ced8p-4 -1LL : 0x1.23e77cp+0 : inexact-ok
+= compoundn downward binary64 -0x1.f7ced8p-4 -1LL : 0x1.23e77acda2bd8p+0 : inexact-ok
+= compoundn tonearest binary64 -0x1.f7ced8p-4 -1LL : 0x1.23e77acda2bd9p+0 : inexact-ok
+= compoundn towardzero binary64 -0x1.f7ced8p-4 -1LL : 0x1.23e77acda2bd8p+0 : inexact-ok
+= compoundn upward binary64 -0x1.f7ced8p-4 -1LL : 0x1.23e77acda2bd9p+0 : inexact-ok
+= compoundn downward intel96 -0x1.f7ced8p-4 -1LL : 0x1.23e77acda2bd8e8ep+0 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7ced8p-4 -1LL : 0x1.23e77acda2bd8e9p+0 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7ced8p-4 -1LL : 0x1.23e77acda2bd8e8ep+0 : inexact-ok
+= compoundn upward intel96 -0x1.f7ced8p-4 -1LL : 0x1.23e77acda2bd8e9p+0 : inexact-ok
+= compoundn downward m68k96 -0x1.f7ced8p-4 -1LL : 0x1.23e77acda2bd8e8ep+0 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7ced8p-4 -1LL : 0x1.23e77acda2bd8e9p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7ced8p-4 -1LL : 0x1.23e77acda2bd8e8ep+0 : inexact-ok
+= compoundn upward m68k96 -0x1.f7ced8p-4 -1LL : 0x1.23e77acda2bd8e9p+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced8p-4 -1LL : 0x1.23e77acda2bd8e8f4228e7c1a82dp+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced8p-4 -1LL : 0x1.23e77acda2bd8e8f4228e7c1a82dp+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced8p-4 -1LL : 0x1.23e77acda2bd8e8f4228e7c1a82dp+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced8p-4 -1LL : 0x1.23e77acda2bd8e8f4228e7c1a82ep+0 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced8p-4 -1LL : 0x1.23e77acda2bd8e8f4228e7c1a8p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced8p-4 -1LL : 0x1.23e77acda2bd8e8f4228e7c1a8p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced8p-4 -1LL : 0x1.23e77acda2bd8e8f4228e7c1a8p+0 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced8p-4 -1LL : 0x1.23e77acda2bd8e8f4228e7c1a88p+0 : inexact-ok
+= compoundn downward binary32 -0x1.f7cedap-4 -1LL : 0x1.23e77ap+0 : inexact-ok
+= compoundn tonearest binary32 -0x1.f7cedap-4 -1LL : 0x1.23e77ap+0 : inexact-ok
+= compoundn towardzero binary32 -0x1.f7cedap-4 -1LL : 0x1.23e77ap+0 : inexact-ok
+= compoundn upward binary32 -0x1.f7cedap-4 -1LL : 0x1.23e77cp+0 : inexact-ok
+= compoundn downward binary64 -0x1.f7cedap-4 -1LL : 0x1.23e77af73dbfep+0 : inexact-ok
+= compoundn tonearest binary64 -0x1.f7cedap-4 -1LL : 0x1.23e77af73dbfep+0 : inexact-ok
+= compoundn towardzero binary64 -0x1.f7cedap-4 -1LL : 0x1.23e77af73dbfep+0 : inexact-ok
+= compoundn upward binary64 -0x1.f7cedap-4 -1LL : 0x1.23e77af73dbffp+0 : inexact-ok
+= compoundn downward intel96 -0x1.f7cedap-4 -1LL : 0x1.23e77af73dbfe448p+0 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7cedap-4 -1LL : 0x1.23e77af73dbfe448p+0 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7cedap-4 -1LL : 0x1.23e77af73dbfe448p+0 : inexact-ok
+= compoundn upward intel96 -0x1.f7cedap-4 -1LL : 0x1.23e77af73dbfe44ap+0 : inexact-ok
+= compoundn downward m68k96 -0x1.f7cedap-4 -1LL : 0x1.23e77af73dbfe448p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7cedap-4 -1LL : 0x1.23e77af73dbfe448p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7cedap-4 -1LL : 0x1.23e77af73dbfe448p+0 : inexact-ok
+= compoundn upward m68k96 -0x1.f7cedap-4 -1LL : 0x1.23e77af73dbfe44ap+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7cedap-4 -1LL : 0x1.23e77af73dbfe4489c61722ef19bp+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7cedap-4 -1LL : 0x1.23e77af73dbfe4489c61722ef19cp+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7cedap-4 -1LL : 0x1.23e77af73dbfe4489c61722ef19bp+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7cedap-4 -1LL : 0x1.23e77af73dbfe4489c61722ef19cp+0 : inexact-ok
+= compoundn downward ibm128 -0x1.f7cedap-4 -1LL : 0x1.23e77af73dbfe4489c61722ef18p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7cedap-4 -1LL : 0x1.23e77af73dbfe4489c61722ef18p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7cedap-4 -1LL : 0x1.23e77af73dbfe4489c61722ef18p+0 : inexact-ok
+= compoundn upward ibm128 -0x1.f7cedap-4 -1LL : 0x1.23e77af73dbfe4489c61722ef2p+0 : inexact-ok
+= compoundn downward binary64 -0x1.f7ced916872bp-4 -1LL : 0x1.23e77ae444e3ap+0 : inexact-ok
+= compoundn tonearest binary64 -0x1.f7ced916872bp-4 -1LL : 0x1.23e77ae444e3bp+0 : inexact-ok
+= compoundn towardzero binary64 -0x1.f7ced916872bp-4 -1LL : 0x1.23e77ae444e3ap+0 : inexact-ok
+= compoundn upward binary64 -0x1.f7ced916872bp-4 -1LL : 0x1.23e77ae444e3bp+0 : inexact-ok
+= compoundn downward intel96 -0x1.f7ced916872bp-4 -1LL : 0x1.23e77ae444e3af44p+0 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7ced916872bp-4 -1LL : 0x1.23e77ae444e3af44p+0 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7ced916872bp-4 -1LL : 0x1.23e77ae444e3af44p+0 : inexact-ok
+= compoundn upward intel96 -0x1.f7ced916872bp-4 -1LL : 0x1.23e77ae444e3af46p+0 : inexact-ok
+= compoundn downward m68k96 -0x1.f7ced916872bp-4 -1LL : 0x1.23e77ae444e3af44p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7ced916872bp-4 -1LL : 0x1.23e77ae444e3af44p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7ced916872bp-4 -1LL : 0x1.23e77ae444e3af44p+0 : inexact-ok
+= compoundn upward m68k96 -0x1.f7ced916872bp-4 -1LL : 0x1.23e77ae444e3af46p+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872bp-4 -1LL : 0x1.23e77ae444e3af449c895b53a58ep+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872bp-4 -1LL : 0x1.23e77ae444e3af449c895b53a58ep+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872bp-4 -1LL : 0x1.23e77ae444e3af449c895b53a58ep+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872bp-4 -1LL : 0x1.23e77ae444e3af449c895b53a58fp+0 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872bp-4 -1LL : 0x1.23e77ae444e3af449c895b53a58p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872bp-4 -1LL : 0x1.23e77ae444e3af449c895b53a58p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872bp-4 -1LL : 0x1.23e77ae444e3af449c895b53a58p+0 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872bp-4 -1LL : 0x1.23e77ae444e3af449c895b53a6p+0 : inexact-ok
+= compoundn downward binary64 -0x1.f7ced916872b1p-4 -1LL : 0x1.23e77ae444e3bp+0 : inexact-ok
+= compoundn tonearest binary64 -0x1.f7ced916872b1p-4 -1LL : 0x1.23e77ae444e3bp+0 : inexact-ok
+= compoundn towardzero binary64 -0x1.f7ced916872b1p-4 -1LL : 0x1.23e77ae444e3bp+0 : inexact-ok
+= compoundn upward binary64 -0x1.f7ced916872b1p-4 -1LL : 0x1.23e77ae444e3cp+0 : inexact-ok
+= compoundn downward intel96 -0x1.f7ced916872b1p-4 -1LL : 0x1.23e77ae444e3b09p+0 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7ced916872b1p-4 -1LL : 0x1.23e77ae444e3b092p+0 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7ced916872b1p-4 -1LL : 0x1.23e77ae444e3b09p+0 : inexact-ok
+= compoundn upward intel96 -0x1.f7ced916872b1p-4 -1LL : 0x1.23e77ae444e3b092p+0 : inexact-ok
+= compoundn downward m68k96 -0x1.f7ced916872b1p-4 -1LL : 0x1.23e77ae444e3b09p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7ced916872b1p-4 -1LL : 0x1.23e77ae444e3b092p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7ced916872b1p-4 -1LL : 0x1.23e77ae444e3b09p+0 : inexact-ok
+= compoundn upward m68k96 -0x1.f7ced916872b1p-4 -1LL : 0x1.23e77ae444e3b092p+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b1p-4 -1LL : 0x1.23e77ae444e3b091749c0d4b35ep+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b1p-4 -1LL : 0x1.23e77ae444e3b091749c0d4b35ep+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b1p-4 -1LL : 0x1.23e77ae444e3b091749c0d4b35ep+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b1p-4 -1LL : 0x1.23e77ae444e3b091749c0d4b35e1p+0 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872b1p-4 -1LL : 0x1.23e77ae444e3b091749c0d4b358p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b1p-4 -1LL : 0x1.23e77ae444e3b091749c0d4b36p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872b1p-4 -1LL : 0x1.23e77ae444e3b091749c0d4b358p+0 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872b1p-4 -1LL : 0x1.23e77ae444e3b091749c0d4b36p+0 : inexact-ok
+= compoundn downward intel96 -0x1.f7ced916872b020cp-4 -1LL : 0x1.23e77ae444e3af6ep+0 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7ced916872b020cp-4 -1LL : 0x1.23e77ae444e3af7p+0 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7ced916872b020cp-4 -1LL : 0x1.23e77ae444e3af6ep+0 : inexact-ok
+= compoundn upward intel96 -0x1.f7ced916872b020cp-4 -1LL : 0x1.23e77ae444e3af7p+0 : inexact-ok
+= compoundn downward m68k96 -0x1.f7ced916872b020cp-4 -1LL : 0x1.23e77ae444e3af6ep+0 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7ced916872b020cp-4 -1LL : 0x1.23e77ae444e3af7p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7ced916872b020cp-4 -1LL : 0x1.23e77ae444e3af6ep+0 : inexact-ok
+= compoundn upward m68k96 -0x1.f7ced916872b020cp-4 -1LL : 0x1.23e77ae444e3af7p+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020cp-4 -1LL : 0x1.23e77ae444e3af6f312dbf981144p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020cp-4 -1LL : 0x1.23e77ae444e3af6f312dbf981145p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020cp-4 -1LL : 0x1.23e77ae444e3af6f312dbf981144p+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020cp-4 -1LL : 0x1.23e77ae444e3af6f312dbf981145p+0 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872b020cp-4 -1LL : 0x1.23e77ae444e3af6f312dbf9811p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b020cp-4 -1LL : 0x1.23e77ae444e3af6f312dbf98118p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872b020cp-4 -1LL : 0x1.23e77ae444e3af6f312dbf9811p+0 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872b020cp-4 -1LL : 0x1.23e77ae444e3af6f312dbf98118p+0 : inexact-ok
+= compoundn downward intel96 -0x1.f7ced916872b020ep-4 -1LL : 0x1.23e77ae444e3af6ep+0 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7ced916872b020ep-4 -1LL : 0x1.23e77ae444e3af7p+0 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7ced916872b020ep-4 -1LL : 0x1.23e77ae444e3af6ep+0 : inexact-ok
+= compoundn upward intel96 -0x1.f7ced916872b020ep-4 -1LL : 0x1.23e77ae444e3af7p+0 : inexact-ok
+= compoundn downward m68k96 -0x1.f7ced916872b020ep-4 -1LL : 0x1.23e77ae444e3af6ep+0 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7ced916872b020ep-4 -1LL : 0x1.23e77ae444e3af7p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7ced916872b020ep-4 -1LL : 0x1.23e77ae444e3af6ep+0 : inexact-ok
+= compoundn upward m68k96 -0x1.f7ced916872b020ep-4 -1LL : 0x1.23e77ae444e3af7p+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020ep-4 -1LL : 0x1.23e77ae444e3af6f5ac8c1ee5036p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020ep-4 -1LL : 0x1.23e77ae444e3af6f5ac8c1ee5037p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020ep-4 -1LL : 0x1.23e77ae444e3af6f5ac8c1ee5036p+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020ep-4 -1LL : 0x1.23e77ae444e3af6f5ac8c1ee5037p+0 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872b020ep-4 -1LL : 0x1.23e77ae444e3af6f5ac8c1ee5p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b020ep-4 -1LL : 0x1.23e77ae444e3af6f5ac8c1ee5p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872b020ep-4 -1LL : 0x1.23e77ae444e3af6f5ac8c1ee5p+0 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872b020ep-4 -1LL : 0x1.23e77ae444e3af6f5ac8c1ee508p+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 -1LL : 0x1.23e77ae444e3af6f372b7e64ffb5p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 -1LL : 0x1.23e77ae444e3af6f372b7e64ffb5p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 -1LL : 0x1.23e77ae444e3af6f372b7e64ffb5p+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 -1LL : 0x1.23e77ae444e3af6f372b7e64ffb6p+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 -1LL : 0x1.23e77ae444e3af6f372b7e64ffb5p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 -1LL : 0x1.23e77ae444e3af6f372b7e64ffb5p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 -1LL : 0x1.23e77ae444e3af6f372b7e64ffb5p+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 -1LL : 0x1.23e77ae444e3af6f372b7e64ffb6p+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353fp-4 -1LL : 0x1.23e77ae444e3af6f372b7e64ffabp+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353fp-4 -1LL : 0x1.23e77ae444e3af6f372b7e64ffabp+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353fp-4 -1LL : 0x1.23e77ae444e3af6f372b7e64ffabp+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353fp-4 -1LL : 0x1.23e77ae444e3af6f372b7e64ffacp+0 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 -1LL : 0x1.23e77ae444e3af6f372b7e64ff8p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 -1LL : 0x1.23e77ae444e3af6f372b7e64ff8p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 -1LL : 0x1.23e77ae444e3af6f372b7e64ff8p+0 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 -1LL : 0x1.23e77ae444e3af6f372b7e65p+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 -1LL : 0x1.23e77ae444e3af6f372b7e64ffb5p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 -1LL : 0x1.23e77ae444e3af6f372b7e64ffb6p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 -1LL : 0x1.23e77ae444e3af6f372b7e64ffb5p+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 -1LL : 0x1.23e77ae444e3af6f372b7e64ffb6p+0 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 -1LL : 0x1.23e77ae444e3af6f372b7e64ff8p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 -1LL : 0x1.23e77ae444e3af6f372b7e64ff8p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 -1LL : 0x1.23e77ae444e3af6f372b7e64ff8p+0 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 -1LL : 0x1.23e77ae444e3af6f372b7e65p+0 : inexact-ok
+compoundn -min -1
+= compoundn downward binary32 -0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 -0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 -0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 -0x4p-128 -1LL : 0x1.000002p+0 : inexact-ok
+= compoundn downward binary64 -0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x4p-128 -1LL : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x4p-128 -1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x4p-128 -1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x4p-128 -1LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward ibm128 -0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x4p-128 -1LL : 0x1.000000000000000000000000008p+0 : inexact-ok
+= compoundn downward binary64 -0x4p-1024 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x4p-1024 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x4p-1024 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x4p-1024 -1LL : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-1024 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x4p-1024 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x4p-1024 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x4p-1024 -1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-1024 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-1024 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-1024 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x4p-1024 -1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-1024 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x4p-1024 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-1024 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x4p-1024 -1LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward ibm128 -0x4p-1024 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x4p-1024 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x4p-1024 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x4p-1024 -1LL : 0x1.000000000000000000000000008p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x4p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x4p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x4p-16384 -1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x4p-16384 -1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x4p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x4p-16384 -1LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward intel96 -0x2p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x2p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x2p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x2p-16384 -1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 -0x2p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x2p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x2p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x2p-16384 -1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 -0x2p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x2p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x2p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x2p-16384 -1LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward binary64 -0x8p-972 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x8p-972 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x8p-972 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x8p-972 -1LL : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 -0x8p-972 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x8p-972 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x8p-972 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x8p-972 -1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 -0x8p-972 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x8p-972 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x8p-972 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x8p-972 -1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 -0x8p-972 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x8p-972 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x8p-972 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x8p-972 -1LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward ibm128 -0x8p-972 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x8p-972 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x8p-972 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x8p-972 -1LL : 0x1.000000000000000000000000008p+0 : inexact-ok
+compoundn -min_subnorm -1
+= compoundn downward binary32 -0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 -0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 -0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 -0x8p-152 -1LL : 0x1.000002p+0 : inexact-ok
+= compoundn downward binary64 -0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x8p-152 -1LL : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 -0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x8p-152 -1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 -0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x8p-152 -1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 -0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x8p-152 -1LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward ibm128 -0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x8p-152 -1LL : 0x1.000000000000000000000000008p+0 : inexact-ok
+= compoundn downward binary64 -0x4p-1076 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x4p-1076 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x4p-1076 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x4p-1076 -1LL : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-1076 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x4p-1076 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x4p-1076 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x4p-1076 -1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-1076 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-1076 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-1076 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x4p-1076 -1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-1076 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x4p-1076 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-1076 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x4p-1076 -1LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward ibm128 -0x4p-1076 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x4p-1076 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x4p-1076 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x4p-1076 -1LL : 0x1.000000000000000000000000008p+0 : inexact-ok
+= compoundn downward intel96 -0x8p-16448 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x8p-16448 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x8p-16448 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x8p-16448 -1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 -0x8p-16448 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x8p-16448 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x8p-16448 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x8p-16448 -1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 -0x8p-16448 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x8p-16448 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x8p-16448 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x8p-16448 -1LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-16448 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-16448 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-16448 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x4p-16448 -1LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-16448 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x4p-16448 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-16448 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x4p-16448 -1LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-16496 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x4p-16496 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-16496 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x4p-16496 -1LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+compoundn -0 -1
+= compoundn downward binary32 -0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 -0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 -0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 -0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x0p+0 -1LL : 0x1p+0 : inexact-ok
+compoundn 0 -1
+= compoundn downward binary32 0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x0p+0 -1LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x0p+0 -1LL : 0x1p+0 : inexact-ok
+compoundn min_subnorm -1
+= compoundn downward binary32 0x8p-152 -1LL : 0xf.fffffp-4 : inexact-ok
+= compoundn tonearest binary32 0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0x8p-152 -1LL : 0xf.fffffp-4 : inexact-ok
+= compoundn upward binary32 0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x8p-152 -1LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x8p-152 -1LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x8p-152 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x8p-152 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x8p-152 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x8p-152 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x8p-152 -1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x8p-152 -1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x8p-152 -1LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x8p-152 -1LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 0x8p-152 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x4p-1076 -1LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 0x4p-1076 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x4p-1076 -1LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 0x4p-1076 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x4p-1076 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 0x4p-1076 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4p-1076 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 0x4p-1076 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-1076 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 0x4p-1076 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-1076 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 0x4p-1076 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4p-1076 -1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x4p-1076 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-1076 -1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x4p-1076 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x4p-1076 -1LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 0x4p-1076 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4p-1076 -1LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 0x4p-1076 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x8p-16448 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 0x8p-16448 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x8p-16448 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 0x8p-16448 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x8p-16448 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 0x8p-16448 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x8p-16448 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 0x8p-16448 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x8p-16448 -1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x8p-16448 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x8p-16448 -1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x8p-16448 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-16448 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 0x4p-16448 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-16448 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 0x4p-16448 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4p-16448 -1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x4p-16448 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-16448 -1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x4p-16448 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4p-16496 -1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x4p-16496 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-16496 -1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x4p-16496 -1LL : 0x1p+0 : inexact-ok
+compoundn min -1
+= compoundn downward binary32 0x4p-128 -1LL : 0xf.fffffp-4 : inexact-ok
+= compoundn tonearest binary32 0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0x4p-128 -1LL : 0xf.fffffp-4 : inexact-ok
+= compoundn upward binary32 0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x4p-128 -1LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x4p-128 -1LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x4p-128 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4p-128 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-128 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-128 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4p-128 -1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-128 -1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x4p-128 -1LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4p-128 -1LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 0x4p-128 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x4p-1024 -1LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 0x4p-1024 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x4p-1024 -1LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 0x4p-1024 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x4p-1024 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 0x4p-1024 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4p-1024 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 0x4p-1024 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-1024 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 0x4p-1024 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-1024 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 0x4p-1024 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4p-1024 -1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x4p-1024 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-1024 -1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x4p-1024 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x4p-1024 -1LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 0x4p-1024 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4p-1024 -1LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 0x4p-1024 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x4p-16384 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 0x4p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4p-16384 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 0x4p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-16384 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 0x4p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-16384 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 0x4p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4p-16384 -1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x4p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-16384 -1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x4p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x2p-16384 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 0x2p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x2p-16384 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 0x2p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x2p-16384 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 0x2p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x2p-16384 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 0x2p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x2p-16384 -1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x2p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x2p-16384 -1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x2p-16384 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x8p-972 -1LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 0x8p-972 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x8p-972 -1LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 0x8p-972 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x8p-972 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 0x8p-972 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x8p-972 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 0x8p-972 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x8p-972 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 0x8p-972 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x8p-972 -1LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 0x8p-972 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x8p-972 -1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x8p-972 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x8p-972 -1LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x8p-972 -1LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x8p-972 -1LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 0x8p-972 -1LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x8p-972 -1LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 0x8p-972 -1LL : 0x1p+0 : inexact-ok
+compoundn 0.001 -1
+= compoundn downward binary32 0x4.189378p-12 -1LL : 0xf.fbe87p-4 : inexact-ok
+= compoundn tonearest binary32 0x4.189378p-12 -1LL : 0xf.fbe88p-4 : inexact-ok
+= compoundn towardzero binary32 0x4.189378p-12 -1LL : 0xf.fbe87p-4 : inexact-ok
+= compoundn upward binary32 0x4.189378p-12 -1LL : 0xf.fbe88p-4 : inexact-ok
+= compoundn downward binary64 0x4.189378p-12 -1LL : 0xf.fbe878b2d51ap-4 : inexact-ok
+= compoundn tonearest binary64 0x4.189378p-12 -1LL : 0xf.fbe878b2d51ap-4 : inexact-ok
+= compoundn towardzero binary64 0x4.189378p-12 -1LL : 0xf.fbe878b2d51ap-4 : inexact-ok
+= compoundn upward binary64 0x4.189378p-12 -1LL : 0xf.fbe878b2d51a8p-4 : inexact-ok
+= compoundn downward intel96 0x4.189378p-12 -1LL : 0xf.fbe878b2d51a059p-4 : inexact-ok
+= compoundn tonearest intel96 0x4.189378p-12 -1LL : 0xf.fbe878b2d51a059p-4 : inexact-ok
+= compoundn towardzero intel96 0x4.189378p-12 -1LL : 0xf.fbe878b2d51a059p-4 : inexact-ok
+= compoundn upward intel96 0x4.189378p-12 -1LL : 0xf.fbe878b2d51a05ap-4 : inexact-ok
+= compoundn downward m68k96 0x4.189378p-12 -1LL : 0xf.fbe878b2d51a059p-4 : inexact-ok
+= compoundn tonearest m68k96 0x4.189378p-12 -1LL : 0xf.fbe878b2d51a059p-4 : inexact-ok
+= compoundn towardzero m68k96 0x4.189378p-12 -1LL : 0xf.fbe878b2d51a059p-4 : inexact-ok
+= compoundn upward m68k96 0x4.189378p-12 -1LL : 0xf.fbe878b2d51a05ap-4 : inexact-ok
+= compoundn downward binary128 0x4.189378p-12 -1LL : 0xf.fbe878b2d51a0594752d9707d9c8p-4 : inexact-ok
+= compoundn tonearest binary128 0x4.189378p-12 -1LL : 0xf.fbe878b2d51a0594752d9707d9dp-4 : inexact-ok
+= compoundn towardzero binary128 0x4.189378p-12 -1LL : 0xf.fbe878b2d51a0594752d9707d9c8p-4 : inexact-ok
+= compoundn upward binary128 0x4.189378p-12 -1LL : 0xf.fbe878b2d51a0594752d9707d9dp-4 : inexact-ok
+= compoundn downward ibm128 0x4.189378p-12 -1LL : 0xf.fbe878b2d51a0594752d9707d8p-4 : inexact-ok
+= compoundn tonearest ibm128 0x4.189378p-12 -1LL : 0xf.fbe878b2d51a0594752d9707d8p-4 : inexact-ok
+= compoundn towardzero ibm128 0x4.189378p-12 -1LL : 0xf.fbe878b2d51a0594752d9707d8p-4 : inexact-ok
+= compoundn upward ibm128 0x4.189378p-12 -1LL : 0xf.fbe878b2d51a0594752d9707dcp-4 : inexact-ok
+= compoundn downward binary32 0x4.18937p-12 -1LL : 0xf.fbe87p-4 : inexact-ok
+= compoundn tonearest binary32 0x4.18937p-12 -1LL : 0xf.fbe88p-4 : inexact-ok
+= compoundn towardzero binary32 0x4.18937p-12 -1LL : 0xf.fbe87p-4 : inexact-ok
+= compoundn upward binary32 0x4.18937p-12 -1LL : 0xf.fbe88p-4 : inexact-ok
+= compoundn downward binary64 0x4.18937p-12 -1LL : 0xf.fbe878bad103p-4 : inexact-ok
+= compoundn tonearest binary64 0x4.18937p-12 -1LL : 0xf.fbe878bad103p-4 : inexact-ok
+= compoundn towardzero binary64 0x4.18937p-12 -1LL : 0xf.fbe878bad103p-4 : inexact-ok
+= compoundn upward binary64 0x4.18937p-12 -1LL : 0xf.fbe878bad1038p-4 : inexact-ok
+= compoundn downward intel96 0x4.18937p-12 -1LL : 0xf.fbe878bad103043p-4 : inexact-ok
+= compoundn tonearest intel96 0x4.18937p-12 -1LL : 0xf.fbe878bad103044p-4 : inexact-ok
+= compoundn towardzero intel96 0x4.18937p-12 -1LL : 0xf.fbe878bad103043p-4 : inexact-ok
+= compoundn upward intel96 0x4.18937p-12 -1LL : 0xf.fbe878bad103044p-4 : inexact-ok
+= compoundn downward m68k96 0x4.18937p-12 -1LL : 0xf.fbe878bad103043p-4 : inexact-ok
+= compoundn tonearest m68k96 0x4.18937p-12 -1LL : 0xf.fbe878bad103044p-4 : inexact-ok
+= compoundn towardzero m68k96 0x4.18937p-12 -1LL : 0xf.fbe878bad103043p-4 : inexact-ok
+= compoundn upward m68k96 0x4.18937p-12 -1LL : 0xf.fbe878bad103044p-4 : inexact-ok
+= compoundn downward binary128 0x4.18937p-12 -1LL : 0xf.fbe878bad103043e673c7afd39ep-4 : inexact-ok
+= compoundn tonearest binary128 0x4.18937p-12 -1LL : 0xf.fbe878bad103043e673c7afd39e8p-4 : inexact-ok
+= compoundn towardzero binary128 0x4.18937p-12 -1LL : 0xf.fbe878bad103043e673c7afd39ep-4 : inexact-ok
+= compoundn upward binary128 0x4.18937p-12 -1LL : 0xf.fbe878bad103043e673c7afd39e8p-4 : inexact-ok
+= compoundn downward ibm128 0x4.18937p-12 -1LL : 0xf.fbe878bad103043e673c7afd38p-4 : inexact-ok
+= compoundn tonearest ibm128 0x4.18937p-12 -1LL : 0xf.fbe878bad103043e673c7afd38p-4 : inexact-ok
+= compoundn towardzero ibm128 0x4.18937p-12 -1LL : 0xf.fbe878bad103043e673c7afd38p-4 : inexact-ok
+= compoundn upward ibm128 0x4.18937p-12 -1LL : 0xf.fbe878bad103043e673c7afd3cp-4 : inexact-ok
+= compoundn downward binary64 0x4.189374bc6a7fp-12 -1LL : 0xf.fbe878b61704p-4 : inexact-ok
+= compoundn tonearest binary64 0x4.189374bc6a7fp-12 -1LL : 0xf.fbe878b617048p-4 : inexact-ok
+= compoundn towardzero binary64 0x4.189374bc6a7fp-12 -1LL : 0xf.fbe878b61704p-4 : inexact-ok
+= compoundn upward binary64 0x4.189374bc6a7fp-12 -1LL : 0xf.fbe878b617048p-4 : inexact-ok
+= compoundn downward intel96 0x4.189374bc6a7fp-12 -1LL : 0xf.fbe878b6170458fp-4 : inexact-ok
+= compoundn tonearest intel96 0x4.189374bc6a7fp-12 -1LL : 0xf.fbe878b6170459p-4 : inexact-ok
+= compoundn towardzero intel96 0x4.189374bc6a7fp-12 -1LL : 0xf.fbe878b6170458fp-4 : inexact-ok
+= compoundn upward intel96 0x4.189374bc6a7fp-12 -1LL : 0xf.fbe878b6170459p-4 : inexact-ok
+= compoundn downward m68k96 0x4.189374bc6a7fp-12 -1LL : 0xf.fbe878b6170458fp-4 : inexact-ok
+= compoundn tonearest m68k96 0x4.189374bc6a7fp-12 -1LL : 0xf.fbe878b6170459p-4 : inexact-ok
+= compoundn towardzero m68k96 0x4.189374bc6a7fp-12 -1LL : 0xf.fbe878b6170458fp-4 : inexact-ok
+= compoundn upward m68k96 0x4.189374bc6a7fp-12 -1LL : 0xf.fbe878b6170459p-4 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7fp-12 -1LL : 0xf.fbe878b6170458f99cce75e18828p-4 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7fp-12 -1LL : 0xf.fbe878b6170458f99cce75e1883p-4 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7fp-12 -1LL : 0xf.fbe878b6170458f99cce75e18828p-4 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7fp-12 -1LL : 0xf.fbe878b6170458f99cce75e1883p-4 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7fp-12 -1LL : 0xf.fbe878b6170458f99cce75e188p-4 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7fp-12 -1LL : 0xf.fbe878b6170458f99cce75e188p-4 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7fp-12 -1LL : 0xf.fbe878b6170458f99cce75e188p-4 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7fp-12 -1LL : 0xf.fbe878b6170458f99cce75e18cp-4 : inexact-ok
+= compoundn downward binary64 0x4.189374bc6a7ecp-12 -1LL : 0xf.fbe878b61704p-4 : inexact-ok
+= compoundn tonearest binary64 0x4.189374bc6a7ecp-12 -1LL : 0xf.fbe878b617048p-4 : inexact-ok
+= compoundn towardzero binary64 0x4.189374bc6a7ecp-12 -1LL : 0xf.fbe878b61704p-4 : inexact-ok
+= compoundn upward binary64 0x4.189374bc6a7ecp-12 -1LL : 0xf.fbe878b617048p-4 : inexact-ok
+= compoundn downward intel96 0x4.189374bc6a7ecp-12 -1LL : 0xf.fbe878b61704593p-4 : inexact-ok
+= compoundn tonearest intel96 0x4.189374bc6a7ecp-12 -1LL : 0xf.fbe878b61704594p-4 : inexact-ok
+= compoundn towardzero intel96 0x4.189374bc6a7ecp-12 -1LL : 0xf.fbe878b61704593p-4 : inexact-ok
+= compoundn upward intel96 0x4.189374bc6a7ecp-12 -1LL : 0xf.fbe878b61704594p-4 : inexact-ok
+= compoundn downward m68k96 0x4.189374bc6a7ecp-12 -1LL : 0xf.fbe878b61704593p-4 : inexact-ok
+= compoundn tonearest m68k96 0x4.189374bc6a7ecp-12 -1LL : 0xf.fbe878b61704594p-4 : inexact-ok
+= compoundn towardzero m68k96 0x4.189374bc6a7ecp-12 -1LL : 0xf.fbe878b61704593p-4 : inexact-ok
+= compoundn upward m68k96 0x4.189374bc6a7ecp-12 -1LL : 0xf.fbe878b61704594p-4 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ecp-12 -1LL : 0xf.fbe878b6170459397c166b2b39dp-4 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ecp-12 -1LL : 0xf.fbe878b6170459397c166b2b39dp-4 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ecp-12 -1LL : 0xf.fbe878b6170459397c166b2b39dp-4 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ecp-12 -1LL : 0xf.fbe878b6170459397c166b2b39d8p-4 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7ecp-12 -1LL : 0xf.fbe878b6170459397c166b2b38p-4 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ecp-12 -1LL : 0xf.fbe878b6170459397c166b2b38p-4 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7ecp-12 -1LL : 0xf.fbe878b6170459397c166b2b38p-4 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7ecp-12 -1LL : 0xf.fbe878b6170459397c166b2b3cp-4 : inexact-ok
+= compoundn downward intel96 0x4.189374bc6a7ef9ep-12 -1LL : 0xf.fbe878b6170458fp-4 : inexact-ok
+= compoundn tonearest intel96 0x4.189374bc6a7ef9ep-12 -1LL : 0xf.fbe878b6170459p-4 : inexact-ok
+= compoundn towardzero intel96 0x4.189374bc6a7ef9ep-12 -1LL : 0xf.fbe878b6170458fp-4 : inexact-ok
+= compoundn upward intel96 0x4.189374bc6a7ef9ep-12 -1LL : 0xf.fbe878b6170459p-4 : inexact-ok
+= compoundn downward m68k96 0x4.189374bc6a7ef9ep-12 -1LL : 0xf.fbe878b6170458fp-4 : inexact-ok
+= compoundn tonearest m68k96 0x4.189374bc6a7ef9ep-12 -1LL : 0xf.fbe878b6170459p-4 : inexact-ok
+= compoundn towardzero m68k96 0x4.189374bc6a7ef9ep-12 -1LL : 0xf.fbe878b6170458fp-4 : inexact-ok
+= compoundn upward m68k96 0x4.189374bc6a7ef9ep-12 -1LL : 0xf.fbe878b6170459p-4 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9ep-12 -1LL : 0xf.fbe878b6170458ffb9acd8db15a8p-4 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9ep-12 -1LL : 0xf.fbe878b6170458ffb9acd8db15bp-4 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9ep-12 -1LL : 0xf.fbe878b6170458ffb9acd8db15a8p-4 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9ep-12 -1LL : 0xf.fbe878b6170458ffb9acd8db15bp-4 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7ef9ep-12 -1LL : 0xf.fbe878b6170458ffb9acd8db14p-4 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9ep-12 -1LL : 0xf.fbe878b6170458ffb9acd8db14p-4 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9ep-12 -1LL : 0xf.fbe878b6170458ffb9acd8db14p-4 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7ef9ep-12 -1LL : 0xf.fbe878b6170458ffb9acd8db18p-4 : inexact-ok
+= compoundn downward intel96 0x4.189374bc6a7ef9d8p-12 -1LL : 0xf.fbe878b6170458fp-4 : inexact-ok
+= compoundn tonearest intel96 0x4.189374bc6a7ef9d8p-12 -1LL : 0xf.fbe878b6170459p-4 : inexact-ok
+= compoundn towardzero intel96 0x4.189374bc6a7ef9d8p-12 -1LL : 0xf.fbe878b6170458fp-4 : inexact-ok
+= compoundn upward intel96 0x4.189374bc6a7ef9d8p-12 -1LL : 0xf.fbe878b6170459p-4 : inexact-ok
+= compoundn downward m68k96 0x4.189374bc6a7ef9d8p-12 -1LL : 0xf.fbe878b6170458fp-4 : inexact-ok
+= compoundn tonearest m68k96 0x4.189374bc6a7ef9d8p-12 -1LL : 0xf.fbe878b6170459p-4 : inexact-ok
+= compoundn towardzero m68k96 0x4.189374bc6a7ef9d8p-12 -1LL : 0xf.fbe878b6170458fp-4 : inexact-ok
+= compoundn upward m68k96 0x4.189374bc6a7ef9d8p-12 -1LL : 0xf.fbe878b6170459p-4 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9d8p-12 -1LL : 0xf.fbe878b6170458ffc1a8c1d9beep-4 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9d8p-12 -1LL : 0xf.fbe878b6170458ffc1a8c1d9bee8p-4 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9d8p-12 -1LL : 0xf.fbe878b6170458ffc1a8c1d9beep-4 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9d8p-12 -1LL : 0xf.fbe878b6170458ffc1a8c1d9bee8p-4 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7ef9d8p-12 -1LL : 0xf.fbe878b6170458ffc1a8c1d9bcp-4 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9d8p-12 -1LL : 0xf.fbe878b6170458ffc1a8c1d9cp-4 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9d8p-12 -1LL : 0xf.fbe878b6170458ffc1a8c1d9bcp-4 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7ef9d8p-12 -1LL : 0xf.fbe878b6170458ffc1a8c1d9cp-4 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 -1LL : 0xf.fbe878b6170458ffbe878b61704p-4 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 -1LL : 0xf.fbe878b6170458ffbe878b617048p-4 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 -1LL : 0xf.fbe878b6170458ffbe878b61704p-4 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 -1LL : 0xf.fbe878b6170458ffbe878b617048p-4 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 -1LL : 0xf.fbe878b6170458ffbe878b61704p-4 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 -1LL : 0xf.fbe878b6170458ffbe878b617048p-4 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 -1LL : 0xf.fbe878b6170458ffbe878b61704p-4 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 -1LL : 0xf.fbe878b6170458ffbe878b617048p-4 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e56042p-12 -1LL : 0xf.fbe878b6170458ffbe878b61704p-4 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e56042p-12 -1LL : 0xf.fbe878b6170458ffbe878b617048p-4 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e56042p-12 -1LL : 0xf.fbe878b6170458ffbe878b61704p-4 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e56042p-12 -1LL : 0xf.fbe878b6170458ffbe878b617048p-4 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 -1LL : 0xf.fbe878b6170458ffbe878b617p-4 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 -1LL : 0xf.fbe878b6170458ffbe878b617p-4 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 -1LL : 0xf.fbe878b6170458ffbe878b617p-4 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 -1LL : 0xf.fbe878b6170458ffbe878b6174p-4 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e5604p-12 -1LL : 0xf.fbe878b6170458ffbe878b61704p-4 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e5604p-12 -1LL : 0xf.fbe878b6170458ffbe878b617048p-4 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e5604p-12 -1LL : 0xf.fbe878b6170458ffbe878b61704p-4 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e5604p-12 -1LL : 0xf.fbe878b6170458ffbe878b617048p-4 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 -1LL : 0xf.fbe878b6170458ffbe878b617p-4 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 -1LL : 0xf.fbe878b6170458ffbe878b617p-4 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 -1LL : 0xf.fbe878b6170458ffbe878b617p-4 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 -1LL : 0xf.fbe878b6170458ffbe878b6174p-4 : inexact-ok
+compoundn 0.123456 -1
+= compoundn downward binary32 0x1.f9adp-4 -1LL : 0xe.3de48p-4 : inexact-ok
+= compoundn tonearest binary32 0x1.f9adp-4 -1LL : 0xe.3de48p-4 : inexact-ok
+= compoundn towardzero binary32 0x1.f9adp-4 -1LL : 0xe.3de48p-4 : inexact-ok
+= compoundn upward binary32 0x1.f9adp-4 -1LL : 0xe.3de49p-4 : inexact-ok
+= compoundn downward binary64 0x1.f9adp-4 -1LL : 0xe.3de486034e9bp-4 : inexact-ok
+= compoundn tonearest binary64 0x1.f9adp-4 -1LL : 0xe.3de486034e9bp-4 : inexact-ok
+= compoundn towardzero binary64 0x1.f9adp-4 -1LL : 0xe.3de486034e9bp-4 : inexact-ok
+= compoundn upward binary64 0x1.f9adp-4 -1LL : 0xe.3de486034e9b8p-4 : inexact-ok
+= compoundn downward intel96 0x1.f9adp-4 -1LL : 0xe.3de486034e9b3aap-4 : inexact-ok
+= compoundn tonearest intel96 0x1.f9adp-4 -1LL : 0xe.3de486034e9b3aap-4 : inexact-ok
+= compoundn towardzero intel96 0x1.f9adp-4 -1LL : 0xe.3de486034e9b3aap-4 : inexact-ok
+= compoundn upward intel96 0x1.f9adp-4 -1LL : 0xe.3de486034e9b3abp-4 : inexact-ok
+= compoundn downward m68k96 0x1.f9adp-4 -1LL : 0xe.3de486034e9b3aap-4 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9adp-4 -1LL : 0xe.3de486034e9b3aap-4 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9adp-4 -1LL : 0xe.3de486034e9b3aap-4 : inexact-ok
+= compoundn upward m68k96 0x1.f9adp-4 -1LL : 0xe.3de486034e9b3abp-4 : inexact-ok
+= compoundn downward binary128 0x1.f9adp-4 -1LL : 0xe.3de486034e9b3aa67096c7a47a1p-4 : inexact-ok
+= compoundn tonearest binary128 0x1.f9adp-4 -1LL : 0xe.3de486034e9b3aa67096c7a47a1p-4 : inexact-ok
+= compoundn towardzero binary128 0x1.f9adp-4 -1LL : 0xe.3de486034e9b3aa67096c7a47a1p-4 : inexact-ok
+= compoundn upward binary128 0x1.f9adp-4 -1LL : 0xe.3de486034e9b3aa67096c7a47a18p-4 : inexact-ok
+= compoundn downward ibm128 0x1.f9adp-4 -1LL : 0xe.3de486034e9b3aa67096c7a478p-4 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9adp-4 -1LL : 0xe.3de486034e9b3aa67096c7a47cp-4 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9adp-4 -1LL : 0xe.3de486034e9b3aa67096c7a478p-4 : inexact-ok
+= compoundn upward ibm128 0x1.f9adp-4 -1LL : 0xe.3de486034e9b3aa67096c7a47cp-4 : inexact-ok
+= compoundn downward binary32 0x1.f9acfep-4 -1LL : 0xe.3de48p-4 : inexact-ok
+= compoundn tonearest binary32 0x1.f9acfep-4 -1LL : 0xe.3de48p-4 : inexact-ok
+= compoundn towardzero binary32 0x1.f9acfep-4 -1LL : 0xe.3de48p-4 : inexact-ok
+= compoundn upward binary32 0x1.f9acfep-4 -1LL : 0xe.3de49p-4 : inexact-ok
+= compoundn downward binary64 0x1.f9acfep-4 -1LL : 0xe.3de48798f686p-4 : inexact-ok
+= compoundn tonearest binary64 0x1.f9acfep-4 -1LL : 0xe.3de48798f686p-4 : inexact-ok
+= compoundn towardzero binary64 0x1.f9acfep-4 -1LL : 0xe.3de48798f686p-4 : inexact-ok
+= compoundn upward binary64 0x1.f9acfep-4 -1LL : 0xe.3de48798f6868p-4 : inexact-ok
+= compoundn downward intel96 0x1.f9acfep-4 -1LL : 0xe.3de48798f686203p-4 : inexact-ok
+= compoundn tonearest intel96 0x1.f9acfep-4 -1LL : 0xe.3de48798f686204p-4 : inexact-ok
+= compoundn towardzero intel96 0x1.f9acfep-4 -1LL : 0xe.3de48798f686203p-4 : inexact-ok
+= compoundn upward intel96 0x1.f9acfep-4 -1LL : 0xe.3de48798f686204p-4 : inexact-ok
+= compoundn downward m68k96 0x1.f9acfep-4 -1LL : 0xe.3de48798f686203p-4 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9acfep-4 -1LL : 0xe.3de48798f686204p-4 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9acfep-4 -1LL : 0xe.3de48798f686203p-4 : inexact-ok
+= compoundn upward m68k96 0x1.f9acfep-4 -1LL : 0xe.3de48798f686204p-4 : inexact-ok
+= compoundn downward binary128 0x1.f9acfep-4 -1LL : 0xe.3de48798f686203b458163fdbp-4 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acfep-4 -1LL : 0xe.3de48798f686203b458163fdbp-4 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acfep-4 -1LL : 0xe.3de48798f686203b458163fdbp-4 : inexact-ok
+= compoundn upward binary128 0x1.f9acfep-4 -1LL : 0xe.3de48798f686203b458163fdb008p-4 : inexact-ok
+= compoundn downward ibm128 0x1.f9acfep-4 -1LL : 0xe.3de48798f686203b458163fdbp-4 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acfep-4 -1LL : 0xe.3de48798f686203b458163fdbp-4 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acfep-4 -1LL : 0xe.3de48798f686203b458163fdbp-4 : inexact-ok
+= compoundn upward ibm128 0x1.f9acfep-4 -1LL : 0xe.3de48798f686203b458163fdb4p-4 : inexact-ok
+= compoundn downward binary64 0x1.f9acffa7eb6cp-4 -1LL : 0xe.3de4864917c5p-4 : inexact-ok
+= compoundn tonearest binary64 0x1.f9acffa7eb6cp-4 -1LL : 0xe.3de4864917c58p-4 : inexact-ok
+= compoundn towardzero binary64 0x1.f9acffa7eb6cp-4 -1LL : 0xe.3de4864917c5p-4 : inexact-ok
+= compoundn upward binary64 0x1.f9acffa7eb6cp-4 -1LL : 0xe.3de4864917c58p-4 : inexact-ok
+= compoundn downward intel96 0x1.f9acffa7eb6cp-4 -1LL : 0xe.3de4864917c5656p-4 : inexact-ok
+= compoundn tonearest intel96 0x1.f9acffa7eb6cp-4 -1LL : 0xe.3de4864917c5656p-4 : inexact-ok
+= compoundn towardzero intel96 0x1.f9acffa7eb6cp-4 -1LL : 0xe.3de4864917c5656p-4 : inexact-ok
+= compoundn upward intel96 0x1.f9acffa7eb6cp-4 -1LL : 0xe.3de4864917c5657p-4 : inexact-ok
+= compoundn downward m68k96 0x1.f9acffa7eb6cp-4 -1LL : 0xe.3de4864917c5656p-4 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9acffa7eb6cp-4 -1LL : 0xe.3de4864917c5656p-4 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9acffa7eb6cp-4 -1LL : 0xe.3de4864917c5656p-4 : inexact-ok
+= compoundn upward m68k96 0x1.f9acffa7eb6cp-4 -1LL : 0xe.3de4864917c5657p-4 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6cp-4 -1LL : 0xe.3de4864917c565651904bc51abe8p-4 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6cp-4 -1LL : 0xe.3de4864917c565651904bc51abe8p-4 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6cp-4 -1LL : 0xe.3de4864917c565651904bc51abe8p-4 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6cp-4 -1LL : 0xe.3de4864917c565651904bc51abfp-4 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6cp-4 -1LL : 0xe.3de4864917c565651904bc51a8p-4 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6cp-4 -1LL : 0xe.3de4864917c565651904bc51acp-4 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6cp-4 -1LL : 0xe.3de4864917c565651904bc51a8p-4 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6cp-4 -1LL : 0xe.3de4864917c565651904bc51acp-4 : inexact-ok
+= compoundn downward binary64 0x1.f9acffa7eb6bfp-4 -1LL : 0xe.3de4864917c5p-4 : inexact-ok
+= compoundn tonearest binary64 0x1.f9acffa7eb6bfp-4 -1LL : 0xe.3de4864917c58p-4 : inexact-ok
+= compoundn towardzero binary64 0x1.f9acffa7eb6bfp-4 -1LL : 0xe.3de4864917c5p-4 : inexact-ok
+= compoundn upward binary64 0x1.f9acffa7eb6bfp-4 -1LL : 0xe.3de4864917c58p-4 : inexact-ok
+= compoundn downward intel96 0x1.f9acffa7eb6bfp-4 -1LL : 0xe.3de4864917c5721p-4 : inexact-ok
+= compoundn tonearest intel96 0x1.f9acffa7eb6bfp-4 -1LL : 0xe.3de4864917c5721p-4 : inexact-ok
+= compoundn towardzero intel96 0x1.f9acffa7eb6bfp-4 -1LL : 0xe.3de4864917c5721p-4 : inexact-ok
+= compoundn upward intel96 0x1.f9acffa7eb6bfp-4 -1LL : 0xe.3de4864917c5722p-4 : inexact-ok
+= compoundn downward m68k96 0x1.f9acffa7eb6bfp-4 -1LL : 0xe.3de4864917c5721p-4 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9acffa7eb6bfp-4 -1LL : 0xe.3de4864917c5721p-4 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9acffa7eb6bfp-4 -1LL : 0xe.3de4864917c5721p-4 : inexact-ok
+= compoundn upward m68k96 0x1.f9acffa7eb6bfp-4 -1LL : 0xe.3de4864917c5722p-4 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bfp-4 -1LL : 0xe.3de4864917c57212585afc2024d8p-4 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bfp-4 -1LL : 0xe.3de4864917c57212585afc2024d8p-4 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bfp-4 -1LL : 0xe.3de4864917c57212585afc2024d8p-4 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bfp-4 -1LL : 0xe.3de4864917c57212585afc2024ep-4 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bfp-4 -1LL : 0xe.3de4864917c57212585afc2024p-4 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bfp-4 -1LL : 0xe.3de4864917c57212585afc2024p-4 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bfp-4 -1LL : 0xe.3de4864917c57212585afc2024p-4 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bfp-4 -1LL : 0xe.3de4864917c57212585afc2028p-4 : inexact-ok
+= compoundn downward intel96 0x1.f9acffa7eb6bf446p-4 -1LL : 0xe.3de4864917c56eap-4 : inexact-ok
+= compoundn tonearest intel96 0x1.f9acffa7eb6bf446p-4 -1LL : 0xe.3de4864917c56ebp-4 : inexact-ok
+= compoundn towardzero intel96 0x1.f9acffa7eb6bf446p-4 -1LL : 0xe.3de4864917c56eap-4 : inexact-ok
+= compoundn upward intel96 0x1.f9acffa7eb6bf446p-4 -1LL : 0xe.3de4864917c56ebp-4 : inexact-ok
+= compoundn downward m68k96 0x1.f9acffa7eb6bf446p-4 -1LL : 0xe.3de4864917c56eap-4 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9acffa7eb6bf446p-4 -1LL : 0xe.3de4864917c56ebp-4 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9acffa7eb6bf446p-4 -1LL : 0xe.3de4864917c56eap-4 : inexact-ok
+= compoundn upward m68k96 0x1.f9acffa7eb6bf446p-4 -1LL : 0xe.3de4864917c56ebp-4 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf446p-4 -1LL : 0xe.3de4864917c56eaf929052d55f48p-4 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf446p-4 -1LL : 0xe.3de4864917c56eaf929052d55f48p-4 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf446p-4 -1LL : 0xe.3de4864917c56eaf929052d55f48p-4 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf446p-4 -1LL : 0xe.3de4864917c56eaf929052d55f5p-4 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bf446p-4 -1LL : 0xe.3de4864917c56eaf929052d55cp-4 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf446p-4 -1LL : 0xe.3de4864917c56eaf929052d56p-4 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf446p-4 -1LL : 0xe.3de4864917c56eaf929052d55cp-4 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bf446p-4 -1LL : 0xe.3de4864917c56eaf929052d56p-4 : inexact-ok
+= compoundn downward intel96 0x1.f9acffa7eb6bf444p-4 -1LL : 0xe.3de4864917c56ebp-4 : inexact-ok
+= compoundn tonearest intel96 0x1.f9acffa7eb6bf444p-4 -1LL : 0xe.3de4864917c56ebp-4 : inexact-ok
+= compoundn towardzero intel96 0x1.f9acffa7eb6bf444p-4 -1LL : 0xe.3de4864917c56ebp-4 : inexact-ok
+= compoundn upward intel96 0x1.f9acffa7eb6bf444p-4 -1LL : 0xe.3de4864917c56ecp-4 : inexact-ok
+= compoundn downward m68k96 0x1.f9acffa7eb6bf444p-4 -1LL : 0xe.3de4864917c56ebp-4 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9acffa7eb6bf444p-4 -1LL : 0xe.3de4864917c56ebp-4 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9acffa7eb6bf444p-4 -1LL : 0xe.3de4864917c56ebp-4 : inexact-ok
+= compoundn upward m68k96 0x1.f9acffa7eb6bf444p-4 -1LL : 0xe.3de4864917c56ecp-4 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444p-4 -1LL : 0xe.3de4864917c56eb128383d9d5918p-4 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444p-4 -1LL : 0xe.3de4864917c56eb128383d9d5918p-4 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444p-4 -1LL : 0xe.3de4864917c56eb128383d9d5918p-4 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444p-4 -1LL : 0xe.3de4864917c56eb128383d9d592p-4 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bf444p-4 -1LL : 0xe.3de4864917c56eb128383d9d58p-4 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf444p-4 -1LL : 0xe.3de4864917c56eb128383d9d58p-4 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf444p-4 -1LL : 0xe.3de4864917c56eb128383d9d58p-4 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bf444p-4 -1LL : 0xe.3de4864917c56eb128383d9d5cp-4 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 -1LL : 0xe.3de4864917c56eb076118f01a998p-4 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 -1LL : 0xe.3de4864917c56eb076118f01a998p-4 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 -1LL : 0xe.3de4864917c56eb076118f01a998p-4 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 -1LL : 0xe.3de4864917c56eb076118f01a9ap-4 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 -1LL : 0xe.3de4864917c56eb076118f01a998p-4 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 -1LL : 0xe.3de4864917c56eb076118f01a998p-4 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 -1LL : 0xe.3de4864917c56eb076118f01a998p-4 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 -1LL : 0xe.3de4864917c56eb076118f01a9ap-4 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 -1LL : 0xe.3de4864917c56eb076118f01a968p-4 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 -1LL : 0xe.3de4864917c56eb076118f01a968p-4 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 -1LL : 0xe.3de4864917c56eb076118f01a968p-4 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 -1LL : 0xe.3de4864917c56eb076118f01a97p-4 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 -1LL : 0xe.3de4864917c56eb076118f01a8p-4 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 -1LL : 0xe.3de4864917c56eb076118f01a8p-4 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 -1LL : 0xe.3de4864917c56eb076118f01a8p-4 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 -1LL : 0xe.3de4864917c56eb076118f01acp-4 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 -1LL : 0xe.3de4864917c56eb076118f01a9dp-4 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 -1LL : 0xe.3de4864917c56eb076118f01a9dp-4 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 -1LL : 0xe.3de4864917c56eb076118f01a9dp-4 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 -1LL : 0xe.3de4864917c56eb076118f01a9d8p-4 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 -1LL : 0xe.3de4864917c56eb076118f01a8p-4 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 -1LL : 0xe.3de4864917c56eb076118f01a8p-4 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 -1LL : 0xe.3de4864917c56eb076118f01a8p-4 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 -1LL : 0xe.3de4864917c56eb076118f01acp-4 : inexact-ok
+compoundn 1 -1
+= compoundn downward binary32 0x1p+0 -1LL : 0x8p-4 : inexact-ok
+= compoundn tonearest binary32 0x1p+0 -1LL : 0x8p-4 : inexact-ok
+= compoundn towardzero binary32 0x1p+0 -1LL : 0x8p-4 : inexact-ok
+= compoundn upward binary32 0x1p+0 -1LL : 0x8p-4 : inexact-ok
+= compoundn downward binary64 0x1p+0 -1LL : 0x8p-4 : inexact-ok
+= compoundn tonearest binary64 0x1p+0 -1LL : 0x8p-4 : inexact-ok
+= compoundn towardzero binary64 0x1p+0 -1LL : 0x8p-4 : inexact-ok
+= compoundn upward binary64 0x1p+0 -1LL : 0x8p-4 : inexact-ok
+= compoundn downward intel96 0x1p+0 -1LL : 0x8p-4 : inexact-ok
+= compoundn tonearest intel96 0x1p+0 -1LL : 0x8p-4 : inexact-ok
+= compoundn towardzero intel96 0x1p+0 -1LL : 0x8p-4 : inexact-ok
+= compoundn upward intel96 0x1p+0 -1LL : 0x8p-4 : inexact-ok
+= compoundn downward m68k96 0x1p+0 -1LL : 0x8p-4 : inexact-ok
+= compoundn tonearest m68k96 0x1p+0 -1LL : 0x8p-4 : inexact-ok
+= compoundn towardzero m68k96 0x1p+0 -1LL : 0x8p-4 : inexact-ok
+= compoundn upward m68k96 0x1p+0 -1LL : 0x8p-4 : inexact-ok
+= compoundn downward binary128 0x1p+0 -1LL : 0x8p-4 : inexact-ok
+= compoundn tonearest binary128 0x1p+0 -1LL : 0x8p-4 : inexact-ok
+= compoundn towardzero binary128 0x1p+0 -1LL : 0x8p-4 : inexact-ok
+= compoundn upward binary128 0x1p+0 -1LL : 0x8p-4 : inexact-ok
+= compoundn downward ibm128 0x1p+0 -1LL : 0x8p-4 : inexact-ok
+= compoundn tonearest ibm128 0x1p+0 -1LL : 0x8p-4 : inexact-ok
+= compoundn towardzero ibm128 0x1p+0 -1LL : 0x8p-4 : inexact-ok
+= compoundn upward ibm128 0x1p+0 -1LL : 0x8p-4 : inexact-ok
+compoundn 2 -1
+= compoundn downward binary32 0x2p+0 -1LL : 0x5.55555p-4 : inexact-ok
+= compoundn tonearest binary32 0x2p+0 -1LL : 0x5.555558p-4 : inexact-ok
+= compoundn towardzero binary32 0x2p+0 -1LL : 0x5.55555p-4 : inexact-ok
+= compoundn upward binary32 0x2p+0 -1LL : 0x5.555558p-4 : inexact-ok
+= compoundn downward binary64 0x2p+0 -1LL : 0x5.5555555555554p-4 : inexact-ok
+= compoundn tonearest binary64 0x2p+0 -1LL : 0x5.5555555555554p-4 : inexact-ok
+= compoundn towardzero binary64 0x2p+0 -1LL : 0x5.5555555555554p-4 : inexact-ok
+= compoundn upward binary64 0x2p+0 -1LL : 0x5.5555555555558p-4 : inexact-ok
+= compoundn downward intel96 0x2p+0 -1LL : 0x5.555555555555555p-4 : inexact-ok
+= compoundn tonearest intel96 0x2p+0 -1LL : 0x5.5555555555555558p-4 : inexact-ok
+= compoundn towardzero intel96 0x2p+0 -1LL : 0x5.555555555555555p-4 : inexact-ok
+= compoundn upward intel96 0x2p+0 -1LL : 0x5.5555555555555558p-4 : inexact-ok
+= compoundn downward m68k96 0x2p+0 -1LL : 0x5.555555555555555p-4 : inexact-ok
+= compoundn tonearest m68k96 0x2p+0 -1LL : 0x5.5555555555555558p-4 : inexact-ok
+= compoundn towardzero m68k96 0x2p+0 -1LL : 0x5.555555555555555p-4 : inexact-ok
+= compoundn upward m68k96 0x2p+0 -1LL : 0x5.5555555555555558p-4 : inexact-ok
+= compoundn downward binary128 0x2p+0 -1LL : 0x5.5555555555555555555555555554p-4 : inexact-ok
+= compoundn tonearest binary128 0x2p+0 -1LL : 0x5.5555555555555555555555555554p-4 : inexact-ok
+= compoundn towardzero binary128 0x2p+0 -1LL : 0x5.5555555555555555555555555554p-4 : inexact-ok
+= compoundn upward binary128 0x2p+0 -1LL : 0x5.5555555555555555555555555558p-4 : inexact-ok
+= compoundn downward ibm128 0x2p+0 -1LL : 0x5.55555555555555555555555554p-4 : inexact-ok
+= compoundn tonearest ibm128 0x2p+0 -1LL : 0x5.55555555555555555555555556p-4 : inexact-ok
+= compoundn towardzero ibm128 0x2p+0 -1LL : 0x5.55555555555555555555555554p-4 : inexact-ok
+= compoundn upward ibm128 0x2p+0 -1LL : 0x5.55555555555555555555555556p-4 : inexact-ok
+compoundn max -1
+= compoundn downward binary32 0xf.fffffp+124 -1LL : 0x1p-128 : inexact-ok underflow errno-erange-ok
+= compoundn tonearest binary32 0xf.fffffp+124 -1LL : 0x1p-128 : inexact-ok underflow errno-erange-ok
+= compoundn towardzero binary32 0xf.fffffp+124 -1LL : 0x1p-128 : inexact-ok underflow errno-erange-ok
+= compoundn upward binary32 0xf.fffffp+124 -1LL : 0x1.000008p-128 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0xf.fffffp+124 -1LL : 0x1.000001000001p-128 : inexact-ok
+= compoundn tonearest binary64 0xf.fffffp+124 -1LL : 0x1.000001000001p-128 : inexact-ok
+= compoundn towardzero binary64 0xf.fffffp+124 -1LL : 0x1.000001000001p-128 : inexact-ok
+= compoundn upward binary64 0xf.fffffp+124 -1LL : 0x1.0000010000011p-128 : inexact-ok
+= compoundn downward intel96 0xf.fffffp+124 -1LL : 0x1.000001000001p-128 : inexact-ok
+= compoundn tonearest intel96 0xf.fffffp+124 -1LL : 0x1.000001000001p-128 : inexact-ok
+= compoundn towardzero intel96 0xf.fffffp+124 -1LL : 0x1.000001000001p-128 : inexact-ok
+= compoundn upward intel96 0xf.fffffp+124 -1LL : 0x1.0000010000010002p-128 : inexact-ok
+= compoundn downward m68k96 0xf.fffffp+124 -1LL : 0x1.000001000001p-128 : inexact-ok
+= compoundn tonearest m68k96 0xf.fffffp+124 -1LL : 0x1.000001000001p-128 : inexact-ok
+= compoundn towardzero m68k96 0xf.fffffp+124 -1LL : 0x1.000001000001p-128 : inexact-ok
+= compoundn upward m68k96 0xf.fffffp+124 -1LL : 0x1.0000010000010002p-128 : inexact-ok
+= compoundn downward binary128 0xf.fffffp+124 -1LL : 0x1.000001000001000001000001p-128 : inexact-ok
+= compoundn tonearest binary128 0xf.fffffp+124 -1LL : 0x1.000001000001000001000001p-128 : inexact-ok
+= compoundn towardzero binary128 0xf.fffffp+124 -1LL : 0x1.000001000001000001000001p-128 : inexact-ok
+= compoundn upward binary128 0xf.fffffp+124 -1LL : 0x1.0000010000010000010000010001p-128 : inexact-ok
+= compoundn downward ibm128 0xf.fffffp+124 -1LL : 0x1.000001000001000001000001p-128 : inexact-ok
+= compoundn tonearest ibm128 0xf.fffffp+124 -1LL : 0x1.000001000001000001000001p-128 : inexact-ok
+= compoundn towardzero ibm128 0xf.fffffp+124 -1LL : 0x1.000001000001000001000001p-128 : inexact-ok
+= compoundn upward ibm128 0xf.fffffp+124 -1LL : 0x1.000001000001000001000001008p-128 : inexact-ok
+= compoundn downward binary64 0xf.ffffffffffff8p+1020 -1LL : 0x1p-1024 : inexact-ok underflow errno-erange-ok
+= compoundn tonearest binary64 0xf.ffffffffffff8p+1020 -1LL : 0x1p-1024 : inexact-ok underflow errno-erange-ok
+= compoundn towardzero binary64 0xf.ffffffffffff8p+1020 -1LL : 0x1p-1024 : inexact-ok underflow errno-erange-ok
+= compoundn upward binary64 0xf.ffffffffffff8p+1020 -1LL : 0x1.0000000000004p-1024 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0xf.ffffffffffff8p+1020 -1LL : 0x1.00000000000008p-1024 : inexact-ok
+= compoundn tonearest intel96 0xf.ffffffffffff8p+1020 -1LL : 0x1.00000000000008p-1024 : inexact-ok
+= compoundn towardzero intel96 0xf.ffffffffffff8p+1020 -1LL : 0x1.00000000000008p-1024 : inexact-ok
+= compoundn upward intel96 0xf.ffffffffffff8p+1020 -1LL : 0x1.0000000000000802p-1024 : inexact-ok
+= compoundn downward m68k96 0xf.ffffffffffff8p+1020 -1LL : 0x1.00000000000008p-1024 : inexact-ok
+= compoundn tonearest m68k96 0xf.ffffffffffff8p+1020 -1LL : 0x1.00000000000008p-1024 : inexact-ok
+= compoundn towardzero m68k96 0xf.ffffffffffff8p+1020 -1LL : 0x1.00000000000008p-1024 : inexact-ok
+= compoundn upward m68k96 0xf.ffffffffffff8p+1020 -1LL : 0x1.0000000000000802p-1024 : inexact-ok
+= compoundn downward binary128 0xf.ffffffffffff8p+1020 -1LL : 0x1.000000000000080000000000004p-1024 : inexact-ok
+= compoundn tonearest binary128 0xf.ffffffffffff8p+1020 -1LL : 0x1.000000000000080000000000004p-1024 : inexact-ok
+= compoundn towardzero binary128 0xf.ffffffffffff8p+1020 -1LL : 0x1.000000000000080000000000004p-1024 : inexact-ok
+= compoundn upward binary128 0xf.ffffffffffff8p+1020 -1LL : 0x1.0000000000000800000000000041p-1024 : inexact-ok
+= compoundn downward ibm128 0xf.ffffffffffff8p+1020 -1LL : 0x1p-1024 : inexact-ok underflow errno-erange-ok
+= compoundn tonearest ibm128 0xf.ffffffffffff8p+1020 -1LL : 0x1p-1024 : inexact-ok underflow errno-erange-ok
+= compoundn towardzero ibm128 0xf.ffffffffffff8p+1020 -1LL : 0x1p-1024 : inexact-ok underflow errno-erange-ok
+= compoundn upward ibm128 0xf.ffffffffffff8p+1020 -1LL : 0x1.0000000000004p-1024 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0xf.fffffffffffffffp+16380 -1LL : 0x1p-16384 : inexact-ok underflow errno-erange-ok
+= compoundn tonearest intel96 0xf.fffffffffffffffp+16380 -1LL : 0x1p-16384 : inexact-ok underflow errno-erange-ok
+= compoundn towardzero intel96 0xf.fffffffffffffffp+16380 -1LL : 0x1p-16384 : inexact-ok underflow errno-erange-ok
+= compoundn upward intel96 0xf.fffffffffffffffp+16380 -1LL : 0x1.0000000000000008p-16384 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 0xf.fffffffffffffffp+16380 -1LL : 0x1p-16384 : inexact-ok underflow errno-erange-ok
+= compoundn tonearest m68k96 0xf.fffffffffffffffp+16380 -1LL : 0x1p-16384 : inexact-ok underflow errno-erange-ok
+= compoundn towardzero m68k96 0xf.fffffffffffffffp+16380 -1LL : 0x1p-16384 : inexact-ok underflow errno-erange-ok
+= compoundn upward m68k96 0xf.fffffffffffffffp+16380 -1LL : 0x1.0000000000000004p-16384 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0xf.fffffffffffffffp+16380 -1LL : 0x1.0000000000000001p-16384 : inexact-ok underflow errno-erange-ok
+= compoundn tonearest binary128 0xf.fffffffffffffffp+16380 -1LL : 0x1.0000000000000001p-16384 : inexact-ok underflow errno-erange-ok
+= compoundn towardzero binary128 0xf.fffffffffffffffp+16380 -1LL : 0x1.0000000000000001p-16384 : inexact-ok underflow errno-erange-ok
+= compoundn upward binary128 0xf.fffffffffffffffp+16380 -1LL : 0x1.0000000000000001000000000004p-16384 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -1LL : 0x1p-16384 : inexact-ok underflow errno-erange-ok
+= compoundn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 -1LL : 0x1p-16384 : inexact-ok underflow errno-erange-ok
+= compoundn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 -1LL : 0x1p-16384 : inexact-ok underflow errno-erange-ok
+= compoundn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -1LL : 0x1.0000000000000000000000000004p-16384 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -1LL : 0x1.000000000000040000000000005p-1024 : inexact-ok
+= compoundn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 -1LL : 0x1.000000000000040000000000005p-1024 : inexact-ok
+= compoundn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 -1LL : 0x1.000000000000040000000000005p-1024 : inexact-ok
+= compoundn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -1LL : 0x1.0000000000000400000000000051p-1024 : inexact-ok
+= compoundn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -1LL : 0x1p-1024 : inexact-ok underflow errno-erange-ok
+= compoundn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -1LL : 0x1p-1024 : inexact-ok underflow errno-erange-ok
+= compoundn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -1LL : 0x1p-1024 : inexact-ok underflow errno-erange-ok
+= compoundn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -1LL : 0x1.0000000000004p-1024 : inexact-ok underflow errno-erange-ok
+compoundn -1 2
+= compoundn downward binary32 -0x1p+0 2LL : 0x0p+0 : inexact-ok
+= compoundn tonearest binary32 -0x1p+0 2LL : 0x0p+0 : inexact-ok
+= compoundn towardzero binary32 -0x1p+0 2LL : 0x0p+0 : inexact-ok
+= compoundn upward binary32 -0x1p+0 2LL : 0x0p+0 : inexact-ok
+= compoundn downward binary64 -0x1p+0 2LL : 0x0p+0 : inexact-ok
+= compoundn tonearest binary64 -0x1p+0 2LL : 0x0p+0 : inexact-ok
+= compoundn towardzero binary64 -0x1p+0 2LL : 0x0p+0 : inexact-ok
+= compoundn upward binary64 -0x1p+0 2LL : 0x0p+0 : inexact-ok
+= compoundn downward intel96 -0x1p+0 2LL : 0x0p+0 : inexact-ok
+= compoundn tonearest intel96 -0x1p+0 2LL : 0x0p+0 : inexact-ok
+= compoundn towardzero intel96 -0x1p+0 2LL : 0x0p+0 : inexact-ok
+= compoundn upward intel96 -0x1p+0 2LL : 0x0p+0 : inexact-ok
+= compoundn downward m68k96 -0x1p+0 2LL : 0x0p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x1p+0 2LL : 0x0p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x1p+0 2LL : 0x0p+0 : inexact-ok
+= compoundn upward m68k96 -0x1p+0 2LL : 0x0p+0 : inexact-ok
+= compoundn downward binary128 -0x1p+0 2LL : 0x0p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1p+0 2LL : 0x0p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1p+0 2LL : 0x0p+0 : inexact-ok
+= compoundn upward binary128 -0x1p+0 2LL : 0x0p+0 : inexact-ok
+= compoundn downward ibm128 -0x1p+0 2LL : 0x0p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1p+0 2LL : 0x0p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1p+0 2LL : 0x0p+0 : inexact-ok
+= compoundn upward ibm128 -0x1p+0 2LL : 0x0p+0 : inexact-ok
+compoundn -0.999 2
+= compoundn downward binary32 -0xf.fbe76p-4 2LL : 0x1.0c75e6p-20 : inexact-ok
+= compoundn tonearest binary32 -0xf.fbe76p-4 2LL : 0x1.0c75e6p-20 : inexact-ok
+= compoundn towardzero binary32 -0xf.fbe76p-4 2LL : 0x1.0c75e6p-20 : inexact-ok
+= compoundn upward binary32 -0xf.fbe76p-4 2LL : 0x1.0c75e8p-20 : inexact-ok
+= compoundn downward binary64 -0xf.fbe76p-4 2LL : 0x1.0c75e64p-20 : inexact-ok
+= compoundn tonearest binary64 -0xf.fbe76p-4 2LL : 0x1.0c75e64p-20 : inexact-ok
+= compoundn towardzero binary64 -0xf.fbe76p-4 2LL : 0x1.0c75e64p-20 : inexact-ok
+= compoundn upward binary64 -0xf.fbe76p-4 2LL : 0x1.0c75e64p-20 : inexact-ok
+= compoundn downward intel96 -0xf.fbe76p-4 2LL : 0x1.0c75e64p-20 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe76p-4 2LL : 0x1.0c75e64p-20 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe76p-4 2LL : 0x1.0c75e64p-20 : inexact-ok
+= compoundn upward intel96 -0xf.fbe76p-4 2LL : 0x1.0c75e64p-20 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe76p-4 2LL : 0x1.0c75e64p-20 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe76p-4 2LL : 0x1.0c75e64p-20 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe76p-4 2LL : 0x1.0c75e64p-20 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe76p-4 2LL : 0x1.0c75e64p-20 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76p-4 2LL : 0x1.0c75e64p-20 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76p-4 2LL : 0x1.0c75e64p-20 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76p-4 2LL : 0x1.0c75e64p-20 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76p-4 2LL : 0x1.0c75e64p-20 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76p-4 2LL : 0x1.0c75e64p-20 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76p-4 2LL : 0x1.0c75e64p-20 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76p-4 2LL : 0x1.0c75e64p-20 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76p-4 2LL : 0x1.0c75e64p-20 : inexact-ok
+= compoundn downward binary32 -0xf.fbe77p-4 2LL : 0x1.0c6db4p-20 : inexact-ok
+= compoundn tonearest binary32 -0xf.fbe77p-4 2LL : 0x1.0c6db6p-20 : inexact-ok
+= compoundn towardzero binary32 -0xf.fbe77p-4 2LL : 0x1.0c6db4p-20 : inexact-ok
+= compoundn upward binary32 -0xf.fbe77p-4 2LL : 0x1.0c6db6p-20 : inexact-ok
+= compoundn downward binary64 -0xf.fbe77p-4 2LL : 0x1.0c6db51p-20 : inexact-ok
+= compoundn tonearest binary64 -0xf.fbe77p-4 2LL : 0x1.0c6db51p-20 : inexact-ok
+= compoundn towardzero binary64 -0xf.fbe77p-4 2LL : 0x1.0c6db51p-20 : inexact-ok
+= compoundn upward binary64 -0xf.fbe77p-4 2LL : 0x1.0c6db51p-20 : inexact-ok
+= compoundn downward intel96 -0xf.fbe77p-4 2LL : 0x1.0c6db51p-20 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe77p-4 2LL : 0x1.0c6db51p-20 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe77p-4 2LL : 0x1.0c6db51p-20 : inexact-ok
+= compoundn upward intel96 -0xf.fbe77p-4 2LL : 0x1.0c6db51p-20 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe77p-4 2LL : 0x1.0c6db51p-20 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe77p-4 2LL : 0x1.0c6db51p-20 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe77p-4 2LL : 0x1.0c6db51p-20 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe77p-4 2LL : 0x1.0c6db51p-20 : inexact-ok
+= compoundn downward binary128 -0xf.fbe77p-4 2LL : 0x1.0c6db51p-20 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe77p-4 2LL : 0x1.0c6db51p-20 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe77p-4 2LL : 0x1.0c6db51p-20 : inexact-ok
+= compoundn upward binary128 -0xf.fbe77p-4 2LL : 0x1.0c6db51p-20 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe77p-4 2LL : 0x1.0c6db51p-20 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe77p-4 2LL : 0x1.0c6db51p-20 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe77p-4 2LL : 0x1.0c6db51p-20 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe77p-4 2LL : 0x1.0c6db51p-20 : inexact-ok
+= compoundn downward binary64 -0xf.fbe76c8b43958p-4 2LL : 0x1.0c6f7a0b5ed95p-20 : inexact-ok
+= compoundn tonearest binary64 -0xf.fbe76c8b43958p-4 2LL : 0x1.0c6f7a0b5ed96p-20 : inexact-ok
+= compoundn towardzero binary64 -0xf.fbe76c8b43958p-4 2LL : 0x1.0c6f7a0b5ed95p-20 : inexact-ok
+= compoundn upward binary64 -0xf.fbe76c8b43958p-4 2LL : 0x1.0c6f7a0b5ed96p-20 : inexact-ok
+= compoundn downward intel96 -0xf.fbe76c8b43958p-4 2LL : 0x1.0c6f7a0b5ed959a2p-20 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe76c8b43958p-4 2LL : 0x1.0c6f7a0b5ed959a4p-20 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe76c8b43958p-4 2LL : 0x1.0c6f7a0b5ed959a2p-20 : inexact-ok
+= compoundn upward intel96 -0xf.fbe76c8b43958p-4 2LL : 0x1.0c6f7a0b5ed959a4p-20 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe76c8b43958p-4 2LL : 0x1.0c6f7a0b5ed959a2p-20 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe76c8b43958p-4 2LL : 0x1.0c6f7a0b5ed959a4p-20 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe76c8b43958p-4 2LL : 0x1.0c6f7a0b5ed959a2p-20 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe76c8b43958p-4 2LL : 0x1.0c6f7a0b5ed959a4p-20 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b43958p-4 2LL : 0x1.0c6f7a0b5ed959a30984e4p-20 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b43958p-4 2LL : 0x1.0c6f7a0b5ed959a30984e4p-20 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b43958p-4 2LL : 0x1.0c6f7a0b5ed959a30984e4p-20 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b43958p-4 2LL : 0x1.0c6f7a0b5ed959a30984e4p-20 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b43958p-4 2LL : 0x1.0c6f7a0b5ed959a30984e4p-20 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b43958p-4 2LL : 0x1.0c6f7a0b5ed959a30984e4p-20 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b43958p-4 2LL : 0x1.0c6f7a0b5ed959a30984e4p-20 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b43958p-4 2LL : 0x1.0c6f7a0b5ed959a30984e4p-20 : inexact-ok
+= compoundn downward binary64 -0xf.fbe76c8b4396p-4 2LL : 0x1.0c6f7a0b5e97dp-20 : inexact-ok
+= compoundn tonearest binary64 -0xf.fbe76c8b4396p-4 2LL : 0x1.0c6f7a0b5e97dp-20 : inexact-ok
+= compoundn towardzero binary64 -0xf.fbe76c8b4396p-4 2LL : 0x1.0c6f7a0b5e97dp-20 : inexact-ok
+= compoundn upward binary64 -0xf.fbe76c8b4396p-4 2LL : 0x1.0c6f7a0b5e97ep-20 : inexact-ok
+= compoundn downward intel96 -0xf.fbe76c8b4396p-4 2LL : 0x1.0c6f7a0b5e97d06ap-20 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe76c8b4396p-4 2LL : 0x1.0c6f7a0b5e97d06cp-20 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe76c8b4396p-4 2LL : 0x1.0c6f7a0b5e97d06ap-20 : inexact-ok
+= compoundn upward intel96 -0xf.fbe76c8b4396p-4 2LL : 0x1.0c6f7a0b5e97d06cp-20 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe76c8b4396p-4 2LL : 0x1.0c6f7a0b5e97d06ap-20 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe76c8b4396p-4 2LL : 0x1.0c6f7a0b5e97d06cp-20 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe76c8b4396p-4 2LL : 0x1.0c6f7a0b5e97d06ap-20 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe76c8b4396p-4 2LL : 0x1.0c6f7a0b5e97d06cp-20 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4396p-4 2LL : 0x1.0c6f7a0b5e97d06bbdbe4p-20 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4396p-4 2LL : 0x1.0c6f7a0b5e97d06bbdbe4p-20 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4396p-4 2LL : 0x1.0c6f7a0b5e97d06bbdbe4p-20 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4396p-4 2LL : 0x1.0c6f7a0b5e97d06bbdbe4p-20 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b4396p-4 2LL : 0x1.0c6f7a0b5e97d06bbdbe4p-20 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b4396p-4 2LL : 0x1.0c6f7a0b5e97d06bbdbe4p-20 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b4396p-4 2LL : 0x1.0c6f7a0b5e97d06bbdbe4p-20 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b4396p-4 2LL : 0x1.0c6f7a0b5e97d06bbdbe4p-20 : inexact-ok
+= compoundn downward intel96 -0xf.fbe76c8b439581p-4 2LL : 0x1.0c6f7a0b5ed8d69p-20 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe76c8b439581p-4 2LL : 0x1.0c6f7a0b5ed8d69p-20 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe76c8b439581p-4 2LL : 0x1.0c6f7a0b5ed8d69p-20 : inexact-ok
+= compoundn upward intel96 -0xf.fbe76c8b439581p-4 2LL : 0x1.0c6f7a0b5ed8d692p-20 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe76c8b439581p-4 2LL : 0x1.0c6f7a0b5ed8d69p-20 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe76c8b439581p-4 2LL : 0x1.0c6f7a0b5ed8d69p-20 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe76c8b439581p-4 2LL : 0x1.0c6f7a0b5ed8d69p-20 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe76c8b439581p-4 2LL : 0x1.0c6f7a0b5ed8d692p-20 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b439581p-4 2LL : 0x1.0c6f7a0b5ed8d6909aed56b01p-20 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b439581p-4 2LL : 0x1.0c6f7a0b5ed8d6909aed56b01p-20 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b439581p-4 2LL : 0x1.0c6f7a0b5ed8d6909aed56b01p-20 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b439581p-4 2LL : 0x1.0c6f7a0b5ed8d6909aed56b01p-20 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b439581p-4 2LL : 0x1.0c6f7a0b5ed8d6909aed56b01p-20 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b439581p-4 2LL : 0x1.0c6f7a0b5ed8d6909aed56b01p-20 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b439581p-4 2LL : 0x1.0c6f7a0b5ed8d6909aed56b01p-20 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b439581p-4 2LL : 0x1.0c6f7a0b5ed8d6909aed56b01p-20 : inexact-ok
+= compoundn downward intel96 -0xf.fbe76c8b4395811p-4 2LL : 0x1.0c6f7a0b5ed8ce5ep-20 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe76c8b4395811p-4 2LL : 0x1.0c6f7a0b5ed8ce6p-20 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe76c8b4395811p-4 2LL : 0x1.0c6f7a0b5ed8ce5ep-20 : inexact-ok
+= compoundn upward intel96 -0xf.fbe76c8b4395811p-4 2LL : 0x1.0c6f7a0b5ed8ce6p-20 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe76c8b4395811p-4 2LL : 0x1.0c6f7a0b5ed8ce5ep-20 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe76c8b4395811p-4 2LL : 0x1.0c6f7a0b5ed8ce6p-20 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe76c8b4395811p-4 2LL : 0x1.0c6f7a0b5ed8ce5ep-20 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe76c8b4395811p-4 2LL : 0x1.0c6f7a0b5ed8ce6p-20 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395811p-4 2LL : 0x1.0c6f7a0b5ed8ce5f7403dddb121p-20 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395811p-4 2LL : 0x1.0c6f7a0b5ed8ce5f7403dddb121p-20 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4395811p-4 2LL : 0x1.0c6f7a0b5ed8ce5f7403dddb121p-20 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395811p-4 2LL : 0x1.0c6f7a0b5ed8ce5f7403dddb121p-20 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b4395811p-4 2LL : 0x1.0c6f7a0b5ed8ce5f7403dddb12p-20 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b4395811p-4 2LL : 0x1.0c6f7a0b5ed8ce5f7403dddb12p-20 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b4395811p-4 2LL : 0x1.0c6f7a0b5ed8ce5f7403dddb12p-20 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b4395811p-4 2LL : 0x1.0c6f7a0b5ed8ce5f7403dddb128p-20 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 2LL : 0x1.0c6f7a0b5ed8d36b4c7f349388d2p-20 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 2LL : 0x1.0c6f7a0b5ed8d36b4c7f349388d3p-20 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 2LL : 0x1.0c6f7a0b5ed8d36b4c7f349388d2p-20 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 2LL : 0x1.0c6f7a0b5ed8d36b4c7f349388d3p-20 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 2LL : 0x1.0c6f7a0b5ed8d36b4c7f349384bap-20 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 2LL : 0x1.0c6f7a0b5ed8d36b4c7f349384bap-20 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 2LL : 0x1.0c6f7a0b5ed8d36b4c7f349384bap-20 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 2LL : 0x1.0c6f7a0b5ed8d36b4c7f349384bbp-20 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 2LL : 0x1.0c6f7a0b5ed8d36b4c7f3495703fp-20 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 2LL : 0x1.0c6f7a0b5ed8d36b4c7f3495703fp-20 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 2LL : 0x1.0c6f7a0b5ed8d36b4c7f3495703fp-20 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 2LL : 0x1.0c6f7a0b5ed8d36b4c7f3495704p-20 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 2LL : 0x1.0c6f7a0b5ed8d36b4c7f34957p-20 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 2LL : 0x1.0c6f7a0b5ed8d36b4c7f34957p-20 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 2LL : 0x1.0c6f7a0b5ed8d36b4c7f34957p-20 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 2LL : 0x1.0c6f7a0b5ed8d36b4c7f3495708p-20 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 2LL : 0x1.0c6f7a0b5ed8d36b4c7f349363f5p-20 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 2LL : 0x1.0c6f7a0b5ed8d36b4c7f349363f5p-20 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 2LL : 0x1.0c6f7a0b5ed8d36b4c7f349363f5p-20 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 2LL : 0x1.0c6f7a0b5ed8d36b4c7f349363f6p-20 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 2LL : 0x1.0c6f7a0b5ed8d36b4c7f3493638p-20 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 2LL : 0x1.0c6f7a0b5ed8d36b4c7f349364p-20 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 2LL : 0x1.0c6f7a0b5ed8d36b4c7f3493638p-20 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 2LL : 0x1.0c6f7a0b5ed8d36b4c7f349364p-20 : inexact-ok
+compoundn -0.123 2
+= compoundn downward binary32 -0x1.f7ced8p-4 2LL : 0xc.4e5a3p-4 : inexact-ok
+= compoundn tonearest binary32 -0x1.f7ced8p-4 2LL : 0xc.4e5a3p-4 : inexact-ok
+= compoundn towardzero binary32 -0x1.f7ced8p-4 2LL : 0xc.4e5a3p-4 : inexact-ok
+= compoundn upward binary32 -0x1.f7ced8p-4 2LL : 0xc.4e5a4p-4 : inexact-ok
+= compoundn downward binary64 -0x1.f7ced8p-4 2LL : 0xc.4e5a37bf0564p-4 : inexact-ok
+= compoundn tonearest binary64 -0x1.f7ced8p-4 2LL : 0xc.4e5a37bf0564p-4 : inexact-ok
+= compoundn towardzero binary64 -0x1.f7ced8p-4 2LL : 0xc.4e5a37bf0564p-4 : inexact-ok
+= compoundn upward binary64 -0x1.f7ced8p-4 2LL : 0xc.4e5a37bf0564p-4 : inexact-ok
+= compoundn downward intel96 -0x1.f7ced8p-4 2LL : 0xc.4e5a37bf0564p-4 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7ced8p-4 2LL : 0xc.4e5a37bf0564p-4 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7ced8p-4 2LL : 0xc.4e5a37bf0564p-4 : inexact-ok
+= compoundn upward intel96 -0x1.f7ced8p-4 2LL : 0xc.4e5a37bf0564p-4 : inexact-ok
+= compoundn downward m68k96 -0x1.f7ced8p-4 2LL : 0xc.4e5a37bf0564p-4 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7ced8p-4 2LL : 0xc.4e5a37bf0564p-4 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7ced8p-4 2LL : 0xc.4e5a37bf0564p-4 : inexact-ok
+= compoundn upward m68k96 -0x1.f7ced8p-4 2LL : 0xc.4e5a37bf0564p-4 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced8p-4 2LL : 0xc.4e5a37bf0564p-4 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced8p-4 2LL : 0xc.4e5a37bf0564p-4 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced8p-4 2LL : 0xc.4e5a37bf0564p-4 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced8p-4 2LL : 0xc.4e5a37bf0564p-4 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced8p-4 2LL : 0xc.4e5a37bf0564p-4 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced8p-4 2LL : 0xc.4e5a37bf0564p-4 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced8p-4 2LL : 0xc.4e5a37bf0564p-4 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced8p-4 2LL : 0xc.4e5a37bf0564p-4 : inexact-ok
+= compoundn downward binary32 -0x1.f7cedap-4 2LL : 0xc.4e5a3p-4 : inexact-ok
+= compoundn tonearest binary32 -0x1.f7cedap-4 2LL : 0xc.4e5a3p-4 : inexact-ok
+= compoundn towardzero binary32 -0x1.f7cedap-4 2LL : 0xc.4e5a3p-4 : inexact-ok
+= compoundn upward binary32 -0x1.f7cedap-4 2LL : 0xc.4e5a4p-4 : inexact-ok
+= compoundn downward binary64 -0x1.f7cedap-4 2LL : 0xc.4e5a343cf91ap-4 : inexact-ok
+= compoundn tonearest binary64 -0x1.f7cedap-4 2LL : 0xc.4e5a343cf91ap-4 : inexact-ok
+= compoundn towardzero binary64 -0x1.f7cedap-4 2LL : 0xc.4e5a343cf91ap-4 : inexact-ok
+= compoundn upward binary64 -0x1.f7cedap-4 2LL : 0xc.4e5a343cf91a8p-4 : inexact-ok
+= compoundn downward intel96 -0x1.f7cedap-4 2LL : 0xc.4e5a343cf91a4p-4 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7cedap-4 2LL : 0xc.4e5a343cf91a4p-4 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7cedap-4 2LL : 0xc.4e5a343cf91a4p-4 : inexact-ok
+= compoundn upward intel96 -0x1.f7cedap-4 2LL : 0xc.4e5a343cf91a4p-4 : inexact-ok
+= compoundn downward m68k96 -0x1.f7cedap-4 2LL : 0xc.4e5a343cf91a4p-4 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7cedap-4 2LL : 0xc.4e5a343cf91a4p-4 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7cedap-4 2LL : 0xc.4e5a343cf91a4p-4 : inexact-ok
+= compoundn upward m68k96 -0x1.f7cedap-4 2LL : 0xc.4e5a343cf91a4p-4 : inexact-ok
+= compoundn downward binary128 -0x1.f7cedap-4 2LL : 0xc.4e5a343cf91a4p-4 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7cedap-4 2LL : 0xc.4e5a343cf91a4p-4 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7cedap-4 2LL : 0xc.4e5a343cf91a4p-4 : inexact-ok
+= compoundn upward binary128 -0x1.f7cedap-4 2LL : 0xc.4e5a343cf91a4p-4 : inexact-ok
+= compoundn downward ibm128 -0x1.f7cedap-4 2LL : 0xc.4e5a343cf91a4p-4 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7cedap-4 2LL : 0xc.4e5a343cf91a4p-4 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7cedap-4 2LL : 0xc.4e5a343cf91a4p-4 : inexact-ok
+= compoundn upward ibm128 -0x1.f7cedap-4 2LL : 0xc.4e5a343cf91a4p-4 : inexact-ok
+= compoundn downward binary64 -0x1.f7ced916872bp-4 2LL : 0xc.4e5a35d67ba2p-4 : inexact-ok
+= compoundn tonearest binary64 -0x1.f7ced916872bp-4 2LL : 0xc.4e5a35d67ba2p-4 : inexact-ok
+= compoundn towardzero binary64 -0x1.f7ced916872bp-4 2LL : 0xc.4e5a35d67ba2p-4 : inexact-ok
+= compoundn upward binary64 -0x1.f7ced916872bp-4 2LL : 0xc.4e5a35d67ba28p-4 : inexact-ok
+= compoundn downward intel96 -0x1.f7ced916872bp-4 2LL : 0xc.4e5a35d67ba23b6p-4 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7ced916872bp-4 2LL : 0xc.4e5a35d67ba23b6p-4 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7ced916872bp-4 2LL : 0xc.4e5a35d67ba23b6p-4 : inexact-ok
+= compoundn upward intel96 -0x1.f7ced916872bp-4 2LL : 0xc.4e5a35d67ba23b7p-4 : inexact-ok
+= compoundn downward m68k96 -0x1.f7ced916872bp-4 2LL : 0xc.4e5a35d67ba23b6p-4 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7ced916872bp-4 2LL : 0xc.4e5a35d67ba23b6p-4 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7ced916872bp-4 2LL : 0xc.4e5a35d67ba23b6p-4 : inexact-ok
+= compoundn upward m68k96 -0x1.f7ced916872bp-4 2LL : 0xc.4e5a35d67ba23b7p-4 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872bp-4 2LL : 0xc.4e5a35d67ba23b65668c26139p-4 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872bp-4 2LL : 0xc.4e5a35d67ba23b65668c26139p-4 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872bp-4 2LL : 0xc.4e5a35d67ba23b65668c26139p-4 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872bp-4 2LL : 0xc.4e5a35d67ba23b65668c26139p-4 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872bp-4 2LL : 0xc.4e5a35d67ba23b65668c26139p-4 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872bp-4 2LL : 0xc.4e5a35d67ba23b65668c26139p-4 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872bp-4 2LL : 0xc.4e5a35d67ba23b65668c26139p-4 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872bp-4 2LL : 0xc.4e5a35d67ba23b65668c26139p-4 : inexact-ok
+= compoundn downward binary64 -0x1.f7ced916872b1p-4 2LL : 0xc.4e5a35d67ba2p-4 : inexact-ok
+= compoundn tonearest binary64 -0x1.f7ced916872b1p-4 2LL : 0xc.4e5a35d67ba2p-4 : inexact-ok
+= compoundn towardzero binary64 -0x1.f7ced916872b1p-4 2LL : 0xc.4e5a35d67ba2p-4 : inexact-ok
+= compoundn upward binary64 -0x1.f7ced916872b1p-4 2LL : 0xc.4e5a35d67ba28p-4 : inexact-ok
+= compoundn downward intel96 -0x1.f7ced916872b1p-4 2LL : 0xc.4e5a35d67ba21f5p-4 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7ced916872b1p-4 2LL : 0xc.4e5a35d67ba21f5p-4 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7ced916872b1p-4 2LL : 0xc.4e5a35d67ba21f5p-4 : inexact-ok
+= compoundn upward intel96 -0x1.f7ced916872b1p-4 2LL : 0xc.4e5a35d67ba21f6p-4 : inexact-ok
+= compoundn downward m68k96 -0x1.f7ced916872b1p-4 2LL : 0xc.4e5a35d67ba21f5p-4 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7ced916872b1p-4 2LL : 0xc.4e5a35d67ba21f5p-4 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7ced916872b1p-4 2LL : 0xc.4e5a35d67ba21f5p-4 : inexact-ok
+= compoundn upward m68k96 -0x1.f7ced916872b1p-4 2LL : 0xc.4e5a35d67ba21f6p-4 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b1p-4 2LL : 0xc.4e5a35d67ba21f55043e5321e61p-4 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b1p-4 2LL : 0xc.4e5a35d67ba21f55043e5321e61p-4 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b1p-4 2LL : 0xc.4e5a35d67ba21f55043e5321e61p-4 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b1p-4 2LL : 0xc.4e5a35d67ba21f55043e5321e61p-4 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872b1p-4 2LL : 0xc.4e5a35d67ba21f55043e5321e4p-4 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b1p-4 2LL : 0xc.4e5a35d67ba21f55043e5321e8p-4 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872b1p-4 2LL : 0xc.4e5a35d67ba21f55043e5321e4p-4 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872b1p-4 2LL : 0xc.4e5a35d67ba21f55043e5321e8p-4 : inexact-ok
+= compoundn downward intel96 -0x1.f7ced916872b020cp-4 2LL : 0xc.4e5a35d67ba237cp-4 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7ced916872b020cp-4 2LL : 0xc.4e5a35d67ba237dp-4 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7ced916872b020cp-4 2LL : 0xc.4e5a35d67ba237cp-4 : inexact-ok
+= compoundn upward intel96 -0x1.f7ced916872b020cp-4 2LL : 0xc.4e5a35d67ba237dp-4 : inexact-ok
+= compoundn downward m68k96 -0x1.f7ced916872b020cp-4 2LL : 0xc.4e5a35d67ba237cp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7ced916872b020cp-4 2LL : 0xc.4e5a35d67ba237dp-4 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7ced916872b020cp-4 2LL : 0xc.4e5a35d67ba237cp-4 : inexact-ok
+= compoundn upward m68k96 -0x1.f7ced916872b020cp-4 2LL : 0xc.4e5a35d67ba237dp-4 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020cp-4 2LL : 0xc.4e5a35d67ba237ce4df8b157258p-4 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020cp-4 2LL : 0xc.4e5a35d67ba237ce4df8b157258p-4 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020cp-4 2LL : 0xc.4e5a35d67ba237ce4df8b157258p-4 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020cp-4 2LL : 0xc.4e5a35d67ba237ce4df8b1572588p-4 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872b020cp-4 2LL : 0xc.4e5a35d67ba237ce4df8b15724p-4 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b020cp-4 2LL : 0xc.4e5a35d67ba237ce4df8b15724p-4 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872b020cp-4 2LL : 0xc.4e5a35d67ba237ce4df8b15724p-4 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872b020cp-4 2LL : 0xc.4e5a35d67ba237ce4df8b15728p-4 : inexact-ok
+= compoundn downward intel96 -0x1.f7ced916872b020ep-4 2LL : 0xc.4e5a35d67ba237cp-4 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7ced916872b020ep-4 2LL : 0xc.4e5a35d67ba237dp-4 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7ced916872b020ep-4 2LL : 0xc.4e5a35d67ba237cp-4 : inexact-ok
+= compoundn upward intel96 -0x1.f7ced916872b020ep-4 2LL : 0xc.4e5a35d67ba237dp-4 : inexact-ok
+= compoundn downward m68k96 -0x1.f7ced916872b020ep-4 2LL : 0xc.4e5a35d67ba237cp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7ced916872b020ep-4 2LL : 0xc.4e5a35d67ba237dp-4 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7ced916872b020ep-4 2LL : 0xc.4e5a35d67ba237cp-4 : inexact-ok
+= compoundn upward m68k96 -0x1.f7ced916872b020ep-4 2LL : 0xc.4e5a35d67ba237dp-4 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020ep-4 2LL : 0xc.4e5a35d67ba237cacbec679cc748p-4 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020ep-4 2LL : 0xc.4e5a35d67ba237cacbec679cc748p-4 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020ep-4 2LL : 0xc.4e5a35d67ba237cacbec679cc748p-4 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020ep-4 2LL : 0xc.4e5a35d67ba237cacbec679cc75p-4 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872b020ep-4 2LL : 0xc.4e5a35d67ba237cacbec679cc4p-4 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b020ep-4 2LL : 0xc.4e5a35d67ba237cacbec679cc8p-4 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872b020ep-4 2LL : 0xc.4e5a35d67ba237cacbec679cc4p-4 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872b020ep-4 2LL : 0xc.4e5a35d67ba237cacbec679cc8p-4 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 2LL : 0xc.4e5a35d67ba237cdcca70d1fa33p-4 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 2LL : 0xc.4e5a35d67ba237cdcca70d1fa338p-4 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 2LL : 0xc.4e5a35d67ba237cdcca70d1fa33p-4 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 2LL : 0xc.4e5a35d67ba237cdcca70d1fa338p-4 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 2LL : 0xc.4e5a35d67ba237cdcca70d1fa33p-4 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 2LL : 0xc.4e5a35d67ba237cdcca70d1fa33p-4 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 2LL : 0xc.4e5a35d67ba237cdcca70d1fa33p-4 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 2LL : 0xc.4e5a35d67ba237cdcca70d1fa338p-4 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353fp-4 2LL : 0xc.4e5a35d67ba237cdcca70d1fa408p-4 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353fp-4 2LL : 0xc.4e5a35d67ba237cdcca70d1fa41p-4 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353fp-4 2LL : 0xc.4e5a35d67ba237cdcca70d1fa408p-4 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353fp-4 2LL : 0xc.4e5a35d67ba237cdcca70d1fa41p-4 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 2LL : 0xc.4e5a35d67ba237cdcca70d1fa4p-4 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 2LL : 0xc.4e5a35d67ba237cdcca70d1fa4p-4 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 2LL : 0xc.4e5a35d67ba237cdcca70d1fa4p-4 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 2LL : 0xc.4e5a35d67ba237cdcca70d1fa8p-4 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 2LL : 0xc.4e5a35d67ba237cdcca70d1fa328p-4 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 2LL : 0xc.4e5a35d67ba237cdcca70d1fa33p-4 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 2LL : 0xc.4e5a35d67ba237cdcca70d1fa328p-4 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 2LL : 0xc.4e5a35d67ba237cdcca70d1fa33p-4 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 2LL : 0xc.4e5a35d67ba237cdcca70d1fap-4 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 2LL : 0xc.4e5a35d67ba237cdcca70d1fa4p-4 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 2LL : 0xc.4e5a35d67ba237cdcca70d1fap-4 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 2LL : 0xc.4e5a35d67ba237cdcca70d1fa4p-4 : inexact-ok
+compoundn -min 2
+= compoundn downward binary32 -0x4p-128 2LL : 0xf.fffffp-4 : inexact-ok
+= compoundn tonearest binary32 -0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 -0x4p-128 2LL : 0xf.fffffp-4 : inexact-ok
+= compoundn upward binary32 -0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x4p-128 2LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 -0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x4p-128 2LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 -0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-128 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 -0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x4p-128 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 -0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-128 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-128 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 -0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-128 2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-128 2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x4p-128 2LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 -0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x4p-128 2LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 -0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x4p-1024 2LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 -0x4p-1024 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x4p-1024 2LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 -0x4p-1024 2LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-1024 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 -0x4p-1024 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x4p-1024 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 -0x4p-1024 2LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-1024 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-1024 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-1024 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 -0x4p-1024 2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-1024 2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x4p-1024 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-1024 2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x4p-1024 2LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x4p-1024 2LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 -0x4p-1024 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x4p-1024 2LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 -0x4p-1024 2LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-16384 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 -0x4p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x4p-16384 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 -0x4p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-16384 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-16384 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 -0x4p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-16384 2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x4p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-16384 2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x4p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x2p-16384 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 -0x2p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x2p-16384 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 -0x2p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x2p-16384 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x2p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x2p-16384 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 -0x2p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x2p-16384 2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x2p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x2p-16384 2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x2p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x8p-972 2LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 -0x8p-972 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x8p-972 2LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 -0x8p-972 2LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x8p-972 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 -0x8p-972 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x8p-972 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 -0x8p-972 2LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x8p-972 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x8p-972 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x8p-972 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 -0x8p-972 2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x8p-972 2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x8p-972 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x8p-972 2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x8p-972 2LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x8p-972 2LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 -0x8p-972 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x8p-972 2LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 -0x8p-972 2LL : 0x1p+0 : inexact-ok
+compoundn -min_subnorm 2
+= compoundn downward binary32 -0x8p-152 2LL : 0xf.fffffp-4 : inexact-ok
+= compoundn tonearest binary32 -0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 -0x8p-152 2LL : 0xf.fffffp-4 : inexact-ok
+= compoundn upward binary32 -0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x8p-152 2LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 -0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x8p-152 2LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 -0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x8p-152 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 -0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x8p-152 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 -0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x8p-152 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x8p-152 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 -0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x8p-152 2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x8p-152 2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x8p-152 2LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 -0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x8p-152 2LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 -0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x4p-1076 2LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 -0x4p-1076 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x4p-1076 2LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 -0x4p-1076 2LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-1076 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 -0x4p-1076 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x4p-1076 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 -0x4p-1076 2LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-1076 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-1076 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-1076 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 -0x4p-1076 2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-1076 2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x4p-1076 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-1076 2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x4p-1076 2LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x4p-1076 2LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 -0x4p-1076 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x4p-1076 2LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 -0x4p-1076 2LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x8p-16448 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 -0x8p-16448 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x8p-16448 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 -0x8p-16448 2LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x8p-16448 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x8p-16448 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x8p-16448 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 -0x8p-16448 2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x8p-16448 2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x8p-16448 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x8p-16448 2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x8p-16448 2LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-16448 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-16448 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-16448 2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 -0x4p-16448 2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-16448 2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x4p-16448 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-16448 2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x4p-16448 2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-16496 2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x4p-16496 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-16496 2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x4p-16496 2LL : 0x1p+0 : inexact-ok
+compoundn -0 2
+= compoundn downward binary32 -0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 -0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 -0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 -0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x0p+0 2LL : 0x1p+0 : inexact-ok
+compoundn 0 2
+= compoundn downward binary32 0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x0p+0 2LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x0p+0 2LL : 0x1p+0 : inexact-ok
+compoundn min_subnorm 2
+= compoundn downward binary32 0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 0x8p-152 2LL : 0x1.000002p+0 : inexact-ok
+= compoundn downward binary64 0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x8p-152 2LL : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x8p-152 2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x8p-152 2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x8p-152 2LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward ibm128 0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x8p-152 2LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x8p-152 2LL : 0x1.000000000000000000000000008p+0 : inexact-ok
+= compoundn downward binary64 0x4p-1076 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x4p-1076 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x4p-1076 2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x4p-1076 2LL : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 0x4p-1076 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x4p-1076 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4p-1076 2LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x4p-1076 2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-1076 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4p-1076 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-1076 2LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x4p-1076 2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 0x4p-1076 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4p-1076 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-1076 2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4p-1076 2LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward ibm128 0x4p-1076 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4p-1076 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4p-1076 2LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x4p-1076 2LL : 0x1.000000000000000000000000008p+0 : inexact-ok
+= compoundn downward intel96 0x8p-16448 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x8p-16448 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x8p-16448 2LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x8p-16448 2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 0x8p-16448 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x8p-16448 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x8p-16448 2LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x8p-16448 2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 0x8p-16448 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x8p-16448 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x8p-16448 2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x8p-16448 2LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-16448 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4p-16448 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-16448 2LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x4p-16448 2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 0x4p-16448 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4p-16448 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-16448 2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4p-16448 2LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward binary128 0x4p-16496 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4p-16496 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-16496 2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4p-16496 2LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+compoundn min 2
+= compoundn downward binary32 0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 0x4p-128 2LL : 0x1.000002p+0 : inexact-ok
+= compoundn downward binary64 0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x4p-128 2LL : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x4p-128 2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x4p-128 2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4p-128 2LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward ibm128 0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4p-128 2LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x4p-128 2LL : 0x1.000000000000000000000000008p+0 : inexact-ok
+= compoundn downward binary64 0x4p-1024 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x4p-1024 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x4p-1024 2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x4p-1024 2LL : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 0x4p-1024 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x4p-1024 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4p-1024 2LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x4p-1024 2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-1024 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4p-1024 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-1024 2LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x4p-1024 2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 0x4p-1024 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4p-1024 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-1024 2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4p-1024 2LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward ibm128 0x4p-1024 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4p-1024 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4p-1024 2LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x4p-1024 2LL : 0x1.000000000000000000000000008p+0 : inexact-ok
+= compoundn downward intel96 0x4p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x4p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x4p-16384 2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x4p-16384 2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 0x4p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4p-16384 2LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward intel96 0x2p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x2p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x2p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x2p-16384 2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 0x2p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x2p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x2p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x2p-16384 2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 0x2p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x2p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x2p-16384 2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x2p-16384 2LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward binary64 0x8p-972 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x8p-972 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x8p-972 2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x8p-972 2LL : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 0x8p-972 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x8p-972 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x8p-972 2LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x8p-972 2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 0x8p-972 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x8p-972 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x8p-972 2LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x8p-972 2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 0x8p-972 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x8p-972 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x8p-972 2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x8p-972 2LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward ibm128 0x8p-972 2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x8p-972 2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x8p-972 2LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x8p-972 2LL : 0x1.000000000000000000000000008p+0 : inexact-ok
+compoundn 0.001 2
+= compoundn downward binary32 0x4.189378p-12 2LL : 0x1.008322p+0 : inexact-ok
+= compoundn tonearest binary32 0x4.189378p-12 2LL : 0x1.008324p+0 : inexact-ok
+= compoundn towardzero binary32 0x4.189378p-12 2LL : 0x1.008322p+0 : inexact-ok
+= compoundn upward binary32 0x4.189378p-12 2LL : 0x1.008324p+0 : inexact-ok
+= compoundn downward binary64 0x4.189378p-12 2LL : 0x1.00832335f7bb7p+0 : inexact-ok
+= compoundn tonearest binary64 0x4.189378p-12 2LL : 0x1.00832335f7bb7p+0 : inexact-ok
+= compoundn towardzero binary64 0x4.189378p-12 2LL : 0x1.00832335f7bb7p+0 : inexact-ok
+= compoundn upward binary64 0x4.189378p-12 2LL : 0x1.00832335f7bb8p+0 : inexact-ok
+= compoundn downward intel96 0x4.189378p-12 2LL : 0x1.00832335f7bb7308p+0 : inexact-ok
+= compoundn tonearest intel96 0x4.189378p-12 2LL : 0x1.00832335f7bb7308p+0 : inexact-ok
+= compoundn towardzero intel96 0x4.189378p-12 2LL : 0x1.00832335f7bb7308p+0 : inexact-ok
+= compoundn upward intel96 0x4.189378p-12 2LL : 0x1.00832335f7bb730ap+0 : inexact-ok
+= compoundn downward m68k96 0x4.189378p-12 2LL : 0x1.00832335f7bb7308p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4.189378p-12 2LL : 0x1.00832335f7bb7308p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4.189378p-12 2LL : 0x1.00832335f7bb7308p+0 : inexact-ok
+= compoundn upward m68k96 0x4.189378p-12 2LL : 0x1.00832335f7bb730ap+0 : inexact-ok
+= compoundn downward binary128 0x4.189378p-12 2LL : 0x1.00832335f7bb73084p+0 : inexact-ok
+= compoundn tonearest binary128 0x4.189378p-12 2LL : 0x1.00832335f7bb73084p+0 : inexact-ok
+= compoundn towardzero binary128 0x4.189378p-12 2LL : 0x1.00832335f7bb73084p+0 : inexact-ok
+= compoundn upward binary128 0x4.189378p-12 2LL : 0x1.00832335f7bb73084p+0 : inexact-ok
+= compoundn downward ibm128 0x4.189378p-12 2LL : 0x1.00832335f7bb73084p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4.189378p-12 2LL : 0x1.00832335f7bb73084p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4.189378p-12 2LL : 0x1.00832335f7bb73084p+0 : inexact-ok
+= compoundn upward ibm128 0x4.189378p-12 2LL : 0x1.00832335f7bb73084p+0 : inexact-ok
+= compoundn downward binary32 0x4.18937p-12 2LL : 0x1.008322p+0 : inexact-ok
+= compoundn tonearest binary32 0x4.18937p-12 2LL : 0x1.008324p+0 : inexact-ok
+= compoundn towardzero binary32 0x4.18937p-12 2LL : 0x1.008322p+0 : inexact-ok
+= compoundn upward binary32 0x4.18937p-12 2LL : 0x1.008324p+0 : inexact-ok
+= compoundn downward binary64 0x4.18937p-12 2LL : 0x1.00832334f779ep+0 : inexact-ok
+= compoundn tonearest binary64 0x4.18937p-12 2LL : 0x1.00832334f779fp+0 : inexact-ok
+= compoundn towardzero binary64 0x4.18937p-12 2LL : 0x1.00832334f779ep+0 : inexact-ok
+= compoundn upward binary64 0x4.18937p-12 2LL : 0x1.00832334f779fp+0 : inexact-ok
+= compoundn downward intel96 0x4.18937p-12 2LL : 0x1.00832334f779e9dp+0 : inexact-ok
+= compoundn tonearest intel96 0x4.18937p-12 2LL : 0x1.00832334f779e9dp+0 : inexact-ok
+= compoundn towardzero intel96 0x4.18937p-12 2LL : 0x1.00832334f779e9dp+0 : inexact-ok
+= compoundn upward intel96 0x4.18937p-12 2LL : 0x1.00832334f779e9d2p+0 : inexact-ok
+= compoundn downward m68k96 0x4.18937p-12 2LL : 0x1.00832334f779e9dp+0 : inexact-ok
+= compoundn tonearest m68k96 0x4.18937p-12 2LL : 0x1.00832334f779e9dp+0 : inexact-ok
+= compoundn towardzero m68k96 0x4.18937p-12 2LL : 0x1.00832334f779e9dp+0 : inexact-ok
+= compoundn upward m68k96 0x4.18937p-12 2LL : 0x1.00832334f779e9d2p+0 : inexact-ok
+= compoundn downward binary128 0x4.18937p-12 2LL : 0x1.00832334f779e9d1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4.18937p-12 2LL : 0x1.00832334f779e9d1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4.18937p-12 2LL : 0x1.00832334f779e9d1p+0 : inexact-ok
+= compoundn upward binary128 0x4.18937p-12 2LL : 0x1.00832334f779e9d1p+0 : inexact-ok
+= compoundn downward ibm128 0x4.18937p-12 2LL : 0x1.00832334f779e9d1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4.18937p-12 2LL : 0x1.00832334f779e9d1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4.18937p-12 2LL : 0x1.00832334f779e9d1p+0 : inexact-ok
+= compoundn upward ibm128 0x4.18937p-12 2LL : 0x1.00832334f779e9d1p+0 : inexact-ok
+= compoundn downward binary64 0x4.189374bc6a7fp-12 2LL : 0x1.008323358f2ep+0 : inexact-ok
+= compoundn tonearest binary64 0x4.189374bc6a7fp-12 2LL : 0x1.008323358f2ep+0 : inexact-ok
+= compoundn towardzero binary64 0x4.189374bc6a7fp-12 2LL : 0x1.008323358f2ep+0 : inexact-ok
+= compoundn upward binary64 0x4.189374bc6a7fp-12 2LL : 0x1.008323358f2e1p+0 : inexact-ok
+= compoundn downward intel96 0x4.189374bc6a7fp-12 2LL : 0x1.008323358f2e05ccp+0 : inexact-ok
+= compoundn tonearest intel96 0x4.189374bc6a7fp-12 2LL : 0x1.008323358f2e05cep+0 : inexact-ok
+= compoundn towardzero intel96 0x4.189374bc6a7fp-12 2LL : 0x1.008323358f2e05ccp+0 : inexact-ok
+= compoundn upward intel96 0x4.189374bc6a7fp-12 2LL : 0x1.008323358f2e05cep+0 : inexact-ok
+= compoundn downward m68k96 0x4.189374bc6a7fp-12 2LL : 0x1.008323358f2e05ccp+0 : inexact-ok
+= compoundn tonearest m68k96 0x4.189374bc6a7fp-12 2LL : 0x1.008323358f2e05cep+0 : inexact-ok
+= compoundn towardzero m68k96 0x4.189374bc6a7fp-12 2LL : 0x1.008323358f2e05ccp+0 : inexact-ok
+= compoundn upward m68k96 0x4.189374bc6a7fp-12 2LL : 0x1.008323358f2e05cep+0 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7fp-12 2LL : 0x1.008323358f2e05cd8d6909aed56bp+0 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7fp-12 2LL : 0x1.008323358f2e05cd8d6909aed56bp+0 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7fp-12 2LL : 0x1.008323358f2e05cd8d6909aed56bp+0 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7fp-12 2LL : 0x1.008323358f2e05cd8d6909aed56cp+0 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7fp-12 2LL : 0x1.008323358f2e05cd8d6909aed5p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7fp-12 2LL : 0x1.008323358f2e05cd8d6909aed58p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7fp-12 2LL : 0x1.008323358f2e05cd8d6909aed5p+0 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7fp-12 2LL : 0x1.008323358f2e05cd8d6909aed58p+0 : inexact-ok
+= compoundn downward binary64 0x4.189374bc6a7ecp-12 2LL : 0x1.008323358f2ep+0 : inexact-ok
+= compoundn tonearest binary64 0x4.189374bc6a7ecp-12 2LL : 0x1.008323358f2ep+0 : inexact-ok
+= compoundn towardzero binary64 0x4.189374bc6a7ecp-12 2LL : 0x1.008323358f2ep+0 : inexact-ok
+= compoundn upward binary64 0x4.189374bc6a7ecp-12 2LL : 0x1.008323358f2e1p+0 : inexact-ok
+= compoundn downward intel96 0x4.189374bc6a7ecp-12 2LL : 0x1.008323358f2e05c4p+0 : inexact-ok
+= compoundn tonearest intel96 0x4.189374bc6a7ecp-12 2LL : 0x1.008323358f2e05c6p+0 : inexact-ok
+= compoundn towardzero intel96 0x4.189374bc6a7ecp-12 2LL : 0x1.008323358f2e05c4p+0 : inexact-ok
+= compoundn upward intel96 0x4.189374bc6a7ecp-12 2LL : 0x1.008323358f2e05c6p+0 : inexact-ok
+= compoundn downward m68k96 0x4.189374bc6a7ecp-12 2LL : 0x1.008323358f2e05c4p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4.189374bc6a7ecp-12 2LL : 0x1.008323358f2e05c6p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4.189374bc6a7ecp-12 2LL : 0x1.008323358f2e05c4p+0 : inexact-ok
+= compoundn upward m68k96 0x4.189374bc6a7ecp-12 2LL : 0x1.008323358f2e05c6p+0 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ecp-12 2LL : 0x1.008323358f2e05c58b5cbff47735p+0 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ecp-12 2LL : 0x1.008323358f2e05c58b5cbff47736p+0 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ecp-12 2LL : 0x1.008323358f2e05c58b5cbff47735p+0 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ecp-12 2LL : 0x1.008323358f2e05c58b5cbff47736p+0 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7ecp-12 2LL : 0x1.008323358f2e05c58b5cbff477p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ecp-12 2LL : 0x1.008323358f2e05c58b5cbff477p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7ecp-12 2LL : 0x1.008323358f2e05c58b5cbff477p+0 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7ecp-12 2LL : 0x1.008323358f2e05c58b5cbff4778p+0 : inexact-ok
+= compoundn downward intel96 0x4.189374bc6a7ef9ep-12 2LL : 0x1.008323358f2e05ccp+0 : inexact-ok
+= compoundn tonearest intel96 0x4.189374bc6a7ef9ep-12 2LL : 0x1.008323358f2e05ccp+0 : inexact-ok
+= compoundn towardzero intel96 0x4.189374bc6a7ef9ep-12 2LL : 0x1.008323358f2e05ccp+0 : inexact-ok
+= compoundn upward intel96 0x4.189374bc6a7ef9ep-12 2LL : 0x1.008323358f2e05cep+0 : inexact-ok
+= compoundn downward m68k96 0x4.189374bc6a7ef9ep-12 2LL : 0x1.008323358f2e05ccp+0 : inexact-ok
+= compoundn tonearest m68k96 0x4.189374bc6a7ef9ep-12 2LL : 0x1.008323358f2e05ccp+0 : inexact-ok
+= compoundn towardzero m68k96 0x4.189374bc6a7ef9ep-12 2LL : 0x1.008323358f2e05ccp+0 : inexact-ok
+= compoundn upward m68k96 0x4.189374bc6a7ef9ep-12 2LL : 0x1.008323358f2e05cep+0 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9ep-12 2LL : 0x1.008323358f2e05ccc936dca07f66p+0 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9ep-12 2LL : 0x1.008323358f2e05ccc936dca07f67p+0 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9ep-12 2LL : 0x1.008323358f2e05ccc936dca07f66p+0 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9ep-12 2LL : 0x1.008323358f2e05ccc936dca07f67p+0 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7ef9ep-12 2LL : 0x1.008323358f2e05ccc936dca07fp+0 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9ep-12 2LL : 0x1.008323358f2e05ccc936dca07f8p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9ep-12 2LL : 0x1.008323358f2e05ccc936dca07fp+0 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7ef9ep-12 2LL : 0x1.008323358f2e05ccc936dca07f8p+0 : inexact-ok
+= compoundn downward intel96 0x4.189374bc6a7ef9d8p-12 2LL : 0x1.008323358f2e05ccp+0 : inexact-ok
+= compoundn tonearest intel96 0x4.189374bc6a7ef9d8p-12 2LL : 0x1.008323358f2e05ccp+0 : inexact-ok
+= compoundn towardzero intel96 0x4.189374bc6a7ef9d8p-12 2LL : 0x1.008323358f2e05ccp+0 : inexact-ok
+= compoundn upward intel96 0x4.189374bc6a7ef9d8p-12 2LL : 0x1.008323358f2e05cep+0 : inexact-ok
+= compoundn downward m68k96 0x4.189374bc6a7ef9d8p-12 2LL : 0x1.008323358f2e05ccp+0 : inexact-ok
+= compoundn tonearest m68k96 0x4.189374bc6a7ef9d8p-12 2LL : 0x1.008323358f2e05ccp+0 : inexact-ok
+= compoundn towardzero m68k96 0x4.189374bc6a7ef9d8p-12 2LL : 0x1.008323358f2e05ccp+0 : inexact-ok
+= compoundn upward m68k96 0x4.189374bc6a7ef9d8p-12 2LL : 0x1.008323358f2e05cep+0 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9d8p-12 2LL : 0x1.008323358f2e05ccc8369b17481bp+0 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9d8p-12 2LL : 0x1.008323358f2e05ccc8369b17481bp+0 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9d8p-12 2LL : 0x1.008323358f2e05ccc8369b17481bp+0 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9d8p-12 2LL : 0x1.008323358f2e05ccc8369b17481cp+0 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7ef9d8p-12 2LL : 0x1.008323358f2e05ccc8369b1748p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9d8p-12 2LL : 0x1.008323358f2e05ccc8369b1748p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9d8p-12 2LL : 0x1.008323358f2e05ccc8369b1748p+0 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7ef9d8p-12 2LL : 0x1.008323358f2e05ccc8369b17488p+0 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 2LL : 0x1.008323358f2e05ccc89b0ee49f51p+0 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 2LL : 0x1.008323358f2e05ccc89b0ee49f51p+0 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 2LL : 0x1.008323358f2e05ccc89b0ee49f51p+0 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 2LL : 0x1.008323358f2e05ccc89b0ee49f52p+0 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 2LL : 0x1.008323358f2e05ccc89b0ee49f51p+0 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 2LL : 0x1.008323358f2e05ccc89b0ee49f51p+0 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 2LL : 0x1.008323358f2e05ccc89b0ee49f51p+0 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 2LL : 0x1.008323358f2e05ccc89b0ee49f52p+0 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e56042p-12 2LL : 0x1.008323358f2e05ccc89b0ee49f51p+0 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e56042p-12 2LL : 0x1.008323358f2e05ccc89b0ee49f51p+0 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e56042p-12 2LL : 0x1.008323358f2e05ccc89b0ee49f51p+0 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e56042p-12 2LL : 0x1.008323358f2e05ccc89b0ee49f52p+0 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 2LL : 0x1.008323358f2e05ccc89b0ee49fp+0 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 2LL : 0x1.008323358f2e05ccc89b0ee49f8p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 2LL : 0x1.008323358f2e05ccc89b0ee49fp+0 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 2LL : 0x1.008323358f2e05ccc89b0ee49f8p+0 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e5604p-12 2LL : 0x1.008323358f2e05ccc89b0ee49f51p+0 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e5604p-12 2LL : 0x1.008323358f2e05ccc89b0ee49f51p+0 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e5604p-12 2LL : 0x1.008323358f2e05ccc89b0ee49f51p+0 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e5604p-12 2LL : 0x1.008323358f2e05ccc89b0ee49f52p+0 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 2LL : 0x1.008323358f2e05ccc89b0ee49fp+0 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 2LL : 0x1.008323358f2e05ccc89b0ee49f8p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 2LL : 0x1.008323358f2e05ccc89b0ee49fp+0 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 2LL : 0x1.008323358f2e05ccc89b0ee49f8p+0 : inexact-ok
+compoundn 0.123456 2
+= compoundn downward binary32 0x1.f9adp-4 2LL : 0x1.431c7ap+0 : inexact-ok
+= compoundn tonearest binary32 0x1.f9adp-4 2LL : 0x1.431c7cp+0 : inexact-ok
+= compoundn towardzero binary32 0x1.f9adp-4 2LL : 0x1.431c7ap+0 : inexact-ok
+= compoundn upward binary32 0x1.f9adp-4 2LL : 0x1.431c7cp+0 : inexact-ok
+= compoundn downward binary64 0x1.f9adp-4 2LL : 0x1.431c7bfee9p+0 : inexact-ok
+= compoundn tonearest binary64 0x1.f9adp-4 2LL : 0x1.431c7bfee9p+0 : inexact-ok
+= compoundn towardzero binary64 0x1.f9adp-4 2LL : 0x1.431c7bfee9p+0 : inexact-ok
+= compoundn upward binary64 0x1.f9adp-4 2LL : 0x1.431c7bfee9p+0 : inexact-ok
+= compoundn downward intel96 0x1.f9adp-4 2LL : 0x1.431c7bfee9p+0 : inexact-ok
+= compoundn tonearest intel96 0x1.f9adp-4 2LL : 0x1.431c7bfee9p+0 : inexact-ok
+= compoundn towardzero intel96 0x1.f9adp-4 2LL : 0x1.431c7bfee9p+0 : inexact-ok
+= compoundn upward intel96 0x1.f9adp-4 2LL : 0x1.431c7bfee9p+0 : inexact-ok
+= compoundn downward m68k96 0x1.f9adp-4 2LL : 0x1.431c7bfee9p+0 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9adp-4 2LL : 0x1.431c7bfee9p+0 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9adp-4 2LL : 0x1.431c7bfee9p+0 : inexact-ok
+= compoundn upward m68k96 0x1.f9adp-4 2LL : 0x1.431c7bfee9p+0 : inexact-ok
+= compoundn downward binary128 0x1.f9adp-4 2LL : 0x1.431c7bfee9p+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9adp-4 2LL : 0x1.431c7bfee9p+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9adp-4 2LL : 0x1.431c7bfee9p+0 : inexact-ok
+= compoundn upward binary128 0x1.f9adp-4 2LL : 0x1.431c7bfee9p+0 : inexact-ok
+= compoundn downward ibm128 0x1.f9adp-4 2LL : 0x1.431c7bfee9p+0 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9adp-4 2LL : 0x1.431c7bfee9p+0 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9adp-4 2LL : 0x1.431c7bfee9p+0 : inexact-ok
+= compoundn upward ibm128 0x1.f9adp-4 2LL : 0x1.431c7bfee9p+0 : inexact-ok
+= compoundn downward binary32 0x1.f9acfep-4 2LL : 0x1.431c7ap+0 : inexact-ok
+= compoundn tonearest binary32 0x1.f9acfep-4 2LL : 0x1.431c7cp+0 : inexact-ok
+= compoundn towardzero binary32 0x1.f9acfep-4 2LL : 0x1.431c7ap+0 : inexact-ok
+= compoundn upward binary32 0x1.f9acfep-4 2LL : 0x1.431c7cp+0 : inexact-ok
+= compoundn downward binary64 0x1.f9acfep-4 2LL : 0x1.431c7bb7024cp+0 : inexact-ok
+= compoundn tonearest binary64 0x1.f9acfep-4 2LL : 0x1.431c7bb7024cp+0 : inexact-ok
+= compoundn towardzero binary64 0x1.f9acfep-4 2LL : 0x1.431c7bb7024cp+0 : inexact-ok
+= compoundn upward binary64 0x1.f9acfep-4 2LL : 0x1.431c7bb7024c1p+0 : inexact-ok
+= compoundn downward intel96 0x1.f9acfep-4 2LL : 0x1.431c7bb7024c04p+0 : inexact-ok
+= compoundn tonearest intel96 0x1.f9acfep-4 2LL : 0x1.431c7bb7024c04p+0 : inexact-ok
+= compoundn towardzero intel96 0x1.f9acfep-4 2LL : 0x1.431c7bb7024c04p+0 : inexact-ok
+= compoundn upward intel96 0x1.f9acfep-4 2LL : 0x1.431c7bb7024c04p+0 : inexact-ok
+= compoundn downward m68k96 0x1.f9acfep-4 2LL : 0x1.431c7bb7024c04p+0 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9acfep-4 2LL : 0x1.431c7bb7024c04p+0 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9acfep-4 2LL : 0x1.431c7bb7024c04p+0 : inexact-ok
+= compoundn upward m68k96 0x1.f9acfep-4 2LL : 0x1.431c7bb7024c04p+0 : inexact-ok
+= compoundn downward binary128 0x1.f9acfep-4 2LL : 0x1.431c7bb7024c04p+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acfep-4 2LL : 0x1.431c7bb7024c04p+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acfep-4 2LL : 0x1.431c7bb7024c04p+0 : inexact-ok
+= compoundn upward binary128 0x1.f9acfep-4 2LL : 0x1.431c7bb7024c04p+0 : inexact-ok
+= compoundn downward ibm128 0x1.f9acfep-4 2LL : 0x1.431c7bb7024c04p+0 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acfep-4 2LL : 0x1.431c7bb7024c04p+0 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acfep-4 2LL : 0x1.431c7bb7024c04p+0 : inexact-ok
+= compoundn upward ibm128 0x1.f9acfep-4 2LL : 0x1.431c7bb7024c04p+0 : inexact-ok
+= compoundn downward binary64 0x1.f9acffa7eb6cp-4 2LL : 0x1.431c7bf28a754p+0 : inexact-ok
+= compoundn tonearest binary64 0x1.f9acffa7eb6cp-4 2LL : 0x1.431c7bf28a754p+0 : inexact-ok
+= compoundn towardzero binary64 0x1.f9acffa7eb6cp-4 2LL : 0x1.431c7bf28a754p+0 : inexact-ok
+= compoundn upward binary64 0x1.f9acffa7eb6cp-4 2LL : 0x1.431c7bf28a755p+0 : inexact-ok
+= compoundn downward intel96 0x1.f9acffa7eb6cp-4 2LL : 0x1.431c7bf28a754466p+0 : inexact-ok
+= compoundn tonearest intel96 0x1.f9acffa7eb6cp-4 2LL : 0x1.431c7bf28a754466p+0 : inexact-ok
+= compoundn towardzero intel96 0x1.f9acffa7eb6cp-4 2LL : 0x1.431c7bf28a754466p+0 : inexact-ok
+= compoundn upward intel96 0x1.f9acffa7eb6cp-4 2LL : 0x1.431c7bf28a754468p+0 : inexact-ok
+= compoundn downward m68k96 0x1.f9acffa7eb6cp-4 2LL : 0x1.431c7bf28a754466p+0 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9acffa7eb6cp-4 2LL : 0x1.431c7bf28a754466p+0 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9acffa7eb6cp-4 2LL : 0x1.431c7bf28a754466p+0 : inexact-ok
+= compoundn upward m68k96 0x1.f9acffa7eb6cp-4 2LL : 0x1.431c7bf28a754468p+0 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6cp-4 2LL : 0x1.431c7bf28a754466462767759p+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6cp-4 2LL : 0x1.431c7bf28a754466462767759p+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6cp-4 2LL : 0x1.431c7bf28a754466462767759p+0 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6cp-4 2LL : 0x1.431c7bf28a754466462767759p+0 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6cp-4 2LL : 0x1.431c7bf28a754466462767759p+0 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6cp-4 2LL : 0x1.431c7bf28a754466462767759p+0 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6cp-4 2LL : 0x1.431c7bf28a754466462767759p+0 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6cp-4 2LL : 0x1.431c7bf28a754466462767759p+0 : inexact-ok
+= compoundn downward binary64 0x1.f9acffa7eb6bfp-4 2LL : 0x1.431c7bf28a754p+0 : inexact-ok
+= compoundn tonearest binary64 0x1.f9acffa7eb6bfp-4 2LL : 0x1.431c7bf28a754p+0 : inexact-ok
+= compoundn towardzero binary64 0x1.f9acffa7eb6bfp-4 2LL : 0x1.431c7bf28a754p+0 : inexact-ok
+= compoundn upward binary64 0x1.f9acffa7eb6bfp-4 2LL : 0x1.431c7bf28a755p+0 : inexact-ok
+= compoundn downward intel96 0x1.f9acffa7eb6bfp-4 2LL : 0x1.431c7bf28a754226p+0 : inexact-ok
+= compoundn tonearest intel96 0x1.f9acffa7eb6bfp-4 2LL : 0x1.431c7bf28a754228p+0 : inexact-ok
+= compoundn towardzero intel96 0x1.f9acffa7eb6bfp-4 2LL : 0x1.431c7bf28a754226p+0 : inexact-ok
+= compoundn upward intel96 0x1.f9acffa7eb6bfp-4 2LL : 0x1.431c7bf28a754228p+0 : inexact-ok
+= compoundn downward m68k96 0x1.f9acffa7eb6bfp-4 2LL : 0x1.431c7bf28a754226p+0 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9acffa7eb6bfp-4 2LL : 0x1.431c7bf28a754228p+0 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9acffa7eb6bfp-4 2LL : 0x1.431c7bf28a754226p+0 : inexact-ok
+= compoundn upward m68k96 0x1.f9acffa7eb6bfp-4 2LL : 0x1.431c7bf28a754228p+0 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bfp-4 2LL : 0x1.431c7bf28a754227108772782281p+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bfp-4 2LL : 0x1.431c7bf28a754227108772782281p+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bfp-4 2LL : 0x1.431c7bf28a754227108772782281p+0 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bfp-4 2LL : 0x1.431c7bf28a754227108772782281p+0 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bfp-4 2LL : 0x1.431c7bf28a75422710877278228p+0 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bfp-4 2LL : 0x1.431c7bf28a75422710877278228p+0 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bfp-4 2LL : 0x1.431c7bf28a75422710877278228p+0 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bfp-4 2LL : 0x1.431c7bf28a7542271087727823p+0 : inexact-ok
+= compoundn downward intel96 0x1.f9acffa7eb6bf446p-4 2LL : 0x1.431c7bf28a7542cp+0 : inexact-ok
+= compoundn tonearest intel96 0x1.f9acffa7eb6bf446p-4 2LL : 0x1.431c7bf28a7542cp+0 : inexact-ok
+= compoundn towardzero intel96 0x1.f9acffa7eb6bf446p-4 2LL : 0x1.431c7bf28a7542cp+0 : inexact-ok
+= compoundn upward intel96 0x1.f9acffa7eb6bf446p-4 2LL : 0x1.431c7bf28a7542c2p+0 : inexact-ok
+= compoundn downward m68k96 0x1.f9acffa7eb6bf446p-4 2LL : 0x1.431c7bf28a7542cp+0 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9acffa7eb6bf446p-4 2LL : 0x1.431c7bf28a7542cp+0 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9acffa7eb6bf446p-4 2LL : 0x1.431c7bf28a7542cp+0 : inexact-ok
+= compoundn upward m68k96 0x1.f9acffa7eb6bf446p-4 2LL : 0x1.431c7bf28a7542c2p+0 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf446p-4 2LL : 0x1.431c7bf28a7542c0b27a0b87529fp+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf446p-4 2LL : 0x1.431c7bf28a7542c0b27a0b8752ap+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf446p-4 2LL : 0x1.431c7bf28a7542c0b27a0b87529fp+0 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf446p-4 2LL : 0x1.431c7bf28a7542c0b27a0b8752ap+0 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bf446p-4 2LL : 0x1.431c7bf28a7542c0b27a0b87528p+0 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf446p-4 2LL : 0x1.431c7bf28a7542c0b27a0b87528p+0 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf446p-4 2LL : 0x1.431c7bf28a7542c0b27a0b87528p+0 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bf446p-4 2LL : 0x1.431c7bf28a7542c0b27a0b8753p+0 : inexact-ok
+= compoundn downward intel96 0x1.f9acffa7eb6bf444p-4 2LL : 0x1.431c7bf28a7542cp+0 : inexact-ok
+= compoundn tonearest intel96 0x1.f9acffa7eb6bf444p-4 2LL : 0x1.431c7bf28a7542cp+0 : inexact-ok
+= compoundn towardzero intel96 0x1.f9acffa7eb6bf444p-4 2LL : 0x1.431c7bf28a7542cp+0 : inexact-ok
+= compoundn upward intel96 0x1.f9acffa7eb6bf444p-4 2LL : 0x1.431c7bf28a7542c2p+0 : inexact-ok
+= compoundn downward m68k96 0x1.f9acffa7eb6bf444p-4 2LL : 0x1.431c7bf28a7542cp+0 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9acffa7eb6bf444p-4 2LL : 0x1.431c7bf28a7542cp+0 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9acffa7eb6bf444p-4 2LL : 0x1.431c7bf28a7542cp+0 : inexact-ok
+= compoundn upward m68k96 0x1.f9acffa7eb6bf444p-4 2LL : 0x1.431c7bf28a7542c2p+0 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444p-4 2LL : 0x1.431c7bf28a7542c06a935788b2f1p+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444p-4 2LL : 0x1.431c7bf28a7542c06a935788b2f2p+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444p-4 2LL : 0x1.431c7bf28a7542c06a935788b2f1p+0 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444p-4 2LL : 0x1.431c7bf28a7542c06a935788b2f2p+0 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bf444p-4 2LL : 0x1.431c7bf28a7542c06a935788b28p+0 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf444p-4 2LL : 0x1.431c7bf28a7542c06a935788b3p+0 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf444p-4 2LL : 0x1.431c7bf28a7542c06a935788b28p+0 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bf444p-4 2LL : 0x1.431c7bf28a7542c06a935788b3p+0 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 2LL : 0x1.431c7bf28a7542c08a26fa1752d2p+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 2LL : 0x1.431c7bf28a7542c08a26fa1752d3p+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 2LL : 0x1.431c7bf28a7542c08a26fa1752d2p+0 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 2LL : 0x1.431c7bf28a7542c08a26fa1752d3p+0 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 2LL : 0x1.431c7bf28a7542c08a26fa1752d2p+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 2LL : 0x1.431c7bf28a7542c08a26fa1752d2p+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 2LL : 0x1.431c7bf28a7542c08a26fa1752d2p+0 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 2LL : 0x1.431c7bf28a7542c08a26fa1752d3p+0 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 2LL : 0x1.431c7bf28a7542c08a26fa1752dbp+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 2LL : 0x1.431c7bf28a7542c08a26fa1752dbp+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 2LL : 0x1.431c7bf28a7542c08a26fa1752dbp+0 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 2LL : 0x1.431c7bf28a7542c08a26fa1752dcp+0 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 2LL : 0x1.431c7bf28a7542c08a26fa17528p+0 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 2LL : 0x1.431c7bf28a7542c08a26fa1753p+0 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 2LL : 0x1.431c7bf28a7542c08a26fa17528p+0 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 2LL : 0x1.431c7bf28a7542c08a26fa1753p+0 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 2LL : 0x1.431c7bf28a7542c08a26fa1752c9p+0 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 2LL : 0x1.431c7bf28a7542c08a26fa1752c9p+0 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 2LL : 0x1.431c7bf28a7542c08a26fa1752c9p+0 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 2LL : 0x1.431c7bf28a7542c08a26fa1752cap+0 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 2LL : 0x1.431c7bf28a7542c08a26fa17528p+0 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 2LL : 0x1.431c7bf28a7542c08a26fa1753p+0 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 2LL : 0x1.431c7bf28a7542c08a26fa17528p+0 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 2LL : 0x1.431c7bf28a7542c08a26fa1753p+0 : inexact-ok
+compoundn 1 2
+= compoundn downward binary32 0x1p+0 2LL : 0x4p+0 : inexact-ok
+= compoundn tonearest binary32 0x1p+0 2LL : 0x4p+0 : inexact-ok
+= compoundn towardzero binary32 0x1p+0 2LL : 0x4p+0 : inexact-ok
+= compoundn upward binary32 0x1p+0 2LL : 0x4p+0 : inexact-ok
+= compoundn downward binary64 0x1p+0 2LL : 0x4p+0 : inexact-ok
+= compoundn tonearest binary64 0x1p+0 2LL : 0x4p+0 : inexact-ok
+= compoundn towardzero binary64 0x1p+0 2LL : 0x4p+0 : inexact-ok
+= compoundn upward binary64 0x1p+0 2LL : 0x4p+0 : inexact-ok
+= compoundn downward intel96 0x1p+0 2LL : 0x4p+0 : inexact-ok
+= compoundn tonearest intel96 0x1p+0 2LL : 0x4p+0 : inexact-ok
+= compoundn towardzero intel96 0x1p+0 2LL : 0x4p+0 : inexact-ok
+= compoundn upward intel96 0x1p+0 2LL : 0x4p+0 : inexact-ok
+= compoundn downward m68k96 0x1p+0 2LL : 0x4p+0 : inexact-ok
+= compoundn tonearest m68k96 0x1p+0 2LL : 0x4p+0 : inexact-ok
+= compoundn towardzero m68k96 0x1p+0 2LL : 0x4p+0 : inexact-ok
+= compoundn upward m68k96 0x1p+0 2LL : 0x4p+0 : inexact-ok
+= compoundn downward binary128 0x1p+0 2LL : 0x4p+0 : inexact-ok
+= compoundn tonearest binary128 0x1p+0 2LL : 0x4p+0 : inexact-ok
+= compoundn towardzero binary128 0x1p+0 2LL : 0x4p+0 : inexact-ok
+= compoundn upward binary128 0x1p+0 2LL : 0x4p+0 : inexact-ok
+= compoundn downward ibm128 0x1p+0 2LL : 0x4p+0 : inexact-ok
+= compoundn tonearest ibm128 0x1p+0 2LL : 0x4p+0 : inexact-ok
+= compoundn towardzero ibm128 0x1p+0 2LL : 0x4p+0 : inexact-ok
+= compoundn upward ibm128 0x1p+0 2LL : 0x4p+0 : inexact-ok
+compoundn 2 2
+= compoundn downward binary32 0x2p+0 2LL : 0x9p+0 : inexact-ok
+= compoundn tonearest binary32 0x2p+0 2LL : 0x9p+0 : inexact-ok
+= compoundn towardzero binary32 0x2p+0 2LL : 0x9p+0 : inexact-ok
+= compoundn upward binary32 0x2p+0 2LL : 0x9p+0 : inexact-ok
+= compoundn downward binary64 0x2p+0 2LL : 0x9p+0 : inexact-ok
+= compoundn tonearest binary64 0x2p+0 2LL : 0x9p+0 : inexact-ok
+= compoundn towardzero binary64 0x2p+0 2LL : 0x9p+0 : inexact-ok
+= compoundn upward binary64 0x2p+0 2LL : 0x9p+0 : inexact-ok
+= compoundn downward intel96 0x2p+0 2LL : 0x9p+0 : inexact-ok
+= compoundn tonearest intel96 0x2p+0 2LL : 0x9p+0 : inexact-ok
+= compoundn towardzero intel96 0x2p+0 2LL : 0x9p+0 : inexact-ok
+= compoundn upward intel96 0x2p+0 2LL : 0x9p+0 : inexact-ok
+= compoundn downward m68k96 0x2p+0 2LL : 0x9p+0 : inexact-ok
+= compoundn tonearest m68k96 0x2p+0 2LL : 0x9p+0 : inexact-ok
+= compoundn towardzero m68k96 0x2p+0 2LL : 0x9p+0 : inexact-ok
+= compoundn upward m68k96 0x2p+0 2LL : 0x9p+0 : inexact-ok
+= compoundn downward binary128 0x2p+0 2LL : 0x9p+0 : inexact-ok
+= compoundn tonearest binary128 0x2p+0 2LL : 0x9p+0 : inexact-ok
+= compoundn towardzero binary128 0x2p+0 2LL : 0x9p+0 : inexact-ok
+= compoundn upward binary128 0x2p+0 2LL : 0x9p+0 : inexact-ok
+= compoundn downward ibm128 0x2p+0 2LL : 0x9p+0 : inexact-ok
+= compoundn tonearest ibm128 0x2p+0 2LL : 0x9p+0 : inexact-ok
+= compoundn towardzero ibm128 0x2p+0 2LL : 0x9p+0 : inexact-ok
+= compoundn upward ibm128 0x2p+0 2LL : 0x9p+0 : inexact-ok
+compoundn max 2
+= compoundn downward binary32 0xf.fffffp+124 2LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 0xf.fffffp+124 2LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 0xf.fffffp+124 2LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 0xf.fffffp+124 2LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 0xf.fffffp+124 2LL : 0xf.ffffe000001p+252 : inexact-ok
+= compoundn tonearest binary64 0xf.fffffp+124 2LL : 0xf.ffffe000001p+252 : inexact-ok
+= compoundn towardzero binary64 0xf.fffffp+124 2LL : 0xf.ffffe000001p+252 : inexact-ok
+= compoundn upward binary64 0xf.fffffp+124 2LL : 0xf.ffffe00000108p+252 : inexact-ok
+= compoundn downward intel96 0xf.fffffp+124 2LL : 0xf.ffffe000001p+252 : inexact-ok
+= compoundn tonearest intel96 0xf.fffffp+124 2LL : 0xf.ffffe000001p+252 : inexact-ok
+= compoundn towardzero intel96 0xf.fffffp+124 2LL : 0xf.ffffe000001p+252 : inexact-ok
+= compoundn upward intel96 0xf.fffffp+124 2LL : 0xf.ffffe0000010001p+252 : inexact-ok
+= compoundn downward m68k96 0xf.fffffp+124 2LL : 0xf.ffffe000001p+252 : inexact-ok
+= compoundn tonearest m68k96 0xf.fffffp+124 2LL : 0xf.ffffe000001p+252 : inexact-ok
+= compoundn towardzero m68k96 0xf.fffffp+124 2LL : 0xf.ffffe000001p+252 : inexact-ok
+= compoundn upward m68k96 0xf.fffffp+124 2LL : 0xf.ffffe0000010001p+252 : inexact-ok
+= compoundn downward binary128 0xf.fffffp+124 2LL : 0xf.ffffe000001p+252 : inexact-ok
+= compoundn tonearest binary128 0xf.fffffp+124 2LL : 0xf.ffffe000001p+252 : inexact-ok
+= compoundn towardzero binary128 0xf.fffffp+124 2LL : 0xf.ffffe000001p+252 : inexact-ok
+= compoundn upward binary128 0xf.fffffp+124 2LL : 0xf.ffffe00000100000000000000008p+252 : inexact-ok
+= compoundn downward ibm128 0xf.fffffp+124 2LL : 0xf.ffffe000001p+252 : inexact-ok
+= compoundn tonearest ibm128 0xf.fffffp+124 2LL : 0xf.ffffe000001p+252 : inexact-ok
+= compoundn towardzero ibm128 0xf.fffffp+124 2LL : 0xf.ffffe000001p+252 : inexact-ok
+= compoundn upward ibm128 0xf.fffffp+124 2LL : 0xf.ffffe000001000000000000004p+252 : inexact-ok
+= compoundn downward binary64 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 0xf.ffffffffffff8p+1020 2LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 0xf.ffffffffffff8p+1020 2LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffffp+2044 : inexact-ok
+= compoundn tonearest intel96 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffffp+2044 : inexact-ok
+= compoundn towardzero intel96 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffffp+2044 : inexact-ok
+= compoundn upward intel96 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffff001p+2044 : inexact-ok
+= compoundn downward m68k96 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffffp+2044 : inexact-ok
+= compoundn tonearest m68k96 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffffp+2044 : inexact-ok
+= compoundn towardzero m68k96 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffffp+2044 : inexact-ok
+= compoundn upward m68k96 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffff001p+2044 : inexact-ok
+= compoundn downward binary128 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffff00000000000004p+2044 : inexact-ok
+= compoundn tonearest binary128 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffff00000000000004p+2044 : inexact-ok
+= compoundn towardzero binary128 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffff00000000000004p+2044 : inexact-ok
+= compoundn upward binary128 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffff0000000000000408p+2044 : inexact-ok
+= compoundn downward ibm128 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0xf.ffffffffffff8p+1020 2LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0xf.ffffffffffff8p+1020 2LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward intel96 0xf.fffffffffffffffp+16380 2LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 0xf.fffffffffffffffp+16380 2LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 0xf.fffffffffffffffp+16380 2LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 0xf.fffffffffffffffp+16380 2LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 0xf.fffffffffffffffp+16380 2LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 0xf.fffffffffffffffp+16380 2LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 0xf.fffffffffffffffp+16380 2LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 0xf.fffffffffffffffp+16380 2LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 0xf.fffffffffffffffp+16380 2LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0xf.fffffffffffffffp+16380 2LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0xf.fffffffffffffffp+16380 2LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0xf.fffffffffffffffp+16380 2LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 2LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 2LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 2LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 2LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 2LL : 0xf.ffffffffffff7ffffffffffff9p+2044 : inexact-ok
+= compoundn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 2LL : 0xf.ffffffffffff7ffffffffffff9p+2044 : inexact-ok
+= compoundn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 2LL : 0xf.ffffffffffff7ffffffffffff9p+2044 : inexact-ok
+= compoundn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 2LL : 0xf.ffffffffffff7ffffffffffff908p+2044 : inexact-ok
+= compoundn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 2LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 2LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 2LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 2LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+compoundn -0.999 -2
+= compoundn downward binary32 -0xf.fbe76p-4 -2LL : 0xf.41e28p+16 : inexact-ok
+= compoundn tonearest binary32 -0xf.fbe76p-4 -2LL : 0xf.41e29p+16 : inexact-ok
+= compoundn towardzero binary32 -0xf.fbe76p-4 -2LL : 0xf.41e28p+16 : inexact-ok
+= compoundn upward binary32 -0xf.fbe76p-4 -2LL : 0xf.41e29p+16 : inexact-ok
+= compoundn downward binary64 -0xf.fbe76p-4 -2LL : 0xf.41e28be54e358p+16 : inexact-ok
+= compoundn tonearest binary64 -0xf.fbe76p-4 -2LL : 0xf.41e28be54e358p+16 : inexact-ok
+= compoundn towardzero binary64 -0xf.fbe76p-4 -2LL : 0xf.41e28be54e358p+16 : inexact-ok
+= compoundn upward binary64 -0xf.fbe76p-4 -2LL : 0xf.41e28be54e36p+16 : inexact-ok
+= compoundn downward intel96 -0xf.fbe76p-4 -2LL : 0xf.41e28be54e35beep+16 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe76p-4 -2LL : 0xf.41e28be54e35beep+16 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe76p-4 -2LL : 0xf.41e28be54e35beep+16 : inexact-ok
+= compoundn upward intel96 -0xf.fbe76p-4 -2LL : 0xf.41e28be54e35befp+16 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe76p-4 -2LL : 0xf.41e28be54e35beep+16 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe76p-4 -2LL : 0xf.41e28be54e35beep+16 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe76p-4 -2LL : 0xf.41e28be54e35beep+16 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe76p-4 -2LL : 0xf.41e28be54e35befp+16 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76p-4 -2LL : 0xf.41e28be54e35bee52c3e3d9f6298p+16 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76p-4 -2LL : 0xf.41e28be54e35bee52c3e3d9f62ap+16 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76p-4 -2LL : 0xf.41e28be54e35bee52c3e3d9f6298p+16 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76p-4 -2LL : 0xf.41e28be54e35bee52c3e3d9f62ap+16 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76p-4 -2LL : 0xf.41e28be54e35bee52c3e3d9f6p+16 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76p-4 -2LL : 0xf.41e28be54e35bee52c3e3d9f64p+16 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76p-4 -2LL : 0xf.41e28be54e35bee52c3e3d9f6p+16 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76p-4 -2LL : 0xf.41e28be54e35bee52c3e3d9f64p+16 : inexact-ok
+= compoundn downward binary32 -0xf.fbe77p-4 -2LL : 0xf.4259bp+16 : inexact-ok
+= compoundn tonearest binary32 -0xf.fbe77p-4 -2LL : 0xf.4259cp+16 : inexact-ok
+= compoundn towardzero binary32 -0xf.fbe77p-4 -2LL : 0xf.4259bp+16 : inexact-ok
+= compoundn upward binary32 -0xf.fbe77p-4 -2LL : 0xf.4259cp+16 : inexact-ok
+= compoundn downward binary64 -0xf.fbe77p-4 -2LL : 0xf.4259bfec96e28p+16 : inexact-ok
+= compoundn tonearest binary64 -0xf.fbe77p-4 -2LL : 0xf.4259bfec96e3p+16 : inexact-ok
+= compoundn towardzero binary64 -0xf.fbe77p-4 -2LL : 0xf.4259bfec96e28p+16 : inexact-ok
+= compoundn upward binary64 -0xf.fbe77p-4 -2LL : 0xf.4259bfec96e3p+16 : inexact-ok
+= compoundn downward intel96 -0xf.fbe77p-4 -2LL : 0xf.4259bfec96e2d9bp+16 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe77p-4 -2LL : 0xf.4259bfec96e2d9cp+16 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe77p-4 -2LL : 0xf.4259bfec96e2d9bp+16 : inexact-ok
+= compoundn upward intel96 -0xf.fbe77p-4 -2LL : 0xf.4259bfec96e2d9cp+16 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe77p-4 -2LL : 0xf.4259bfec96e2d9bp+16 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe77p-4 -2LL : 0xf.4259bfec96e2d9cp+16 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe77p-4 -2LL : 0xf.4259bfec96e2d9bp+16 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe77p-4 -2LL : 0xf.4259bfec96e2d9cp+16 : inexact-ok
+= compoundn downward binary128 -0xf.fbe77p-4 -2LL : 0xf.4259bfec96e2d9bca10350330dbp+16 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe77p-4 -2LL : 0xf.4259bfec96e2d9bca10350330db8p+16 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe77p-4 -2LL : 0xf.4259bfec96e2d9bca10350330dbp+16 : inexact-ok
+= compoundn upward binary128 -0xf.fbe77p-4 -2LL : 0xf.4259bfec96e2d9bca10350330db8p+16 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe77p-4 -2LL : 0xf.4259bfec96e2d9bca10350330cp+16 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe77p-4 -2LL : 0xf.4259bfec96e2d9bca10350330cp+16 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe77p-4 -2LL : 0xf.4259bfec96e2d9bca10350330cp+16 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe77p-4 -2LL : 0xf.4259bfec96e2d9bca10350331p+16 : inexact-ok
+= compoundn downward binary64 -0xf.fbe76c8b43958p-4 -2LL : 0xf.423ffffffff8p+16 : inexact-ok
+= compoundn tonearest binary64 -0xf.fbe76c8b43958p-4 -2LL : 0xf.423ffffffff88p+16 : inexact-ok
+= compoundn towardzero binary64 -0xf.fbe76c8b43958p-4 -2LL : 0xf.423ffffffff8p+16 : inexact-ok
+= compoundn upward binary64 -0xf.fbe76c8b43958p-4 -2LL : 0xf.423ffffffff88p+16 : inexact-ok
+= compoundn downward intel96 -0xf.fbe76c8b43958p-4 -2LL : 0xf.423ffffffff85eep+16 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe76c8b43958p-4 -2LL : 0xf.423ffffffff85eep+16 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe76c8b43958p-4 -2LL : 0xf.423ffffffff85eep+16 : inexact-ok
+= compoundn upward intel96 -0xf.fbe76c8b43958p-4 -2LL : 0xf.423ffffffff85efp+16 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe76c8b43958p-4 -2LL : 0xf.423ffffffff85eep+16 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe76c8b43958p-4 -2LL : 0xf.423ffffffff85eep+16 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe76c8b43958p-4 -2LL : 0xf.423ffffffff85eep+16 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe76c8b43958p-4 -2LL : 0xf.423ffffffff85efp+16 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b43958p-4 -2LL : 0xf.423ffffffff85ee000000002dc68p+16 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b43958p-4 -2LL : 0xf.423ffffffff85ee000000002dc68p+16 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b43958p-4 -2LL : 0xf.423ffffffff85ee000000002dc68p+16 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b43958p-4 -2LL : 0xf.423ffffffff85ee000000002dc7p+16 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b43958p-4 -2LL : 0xf.423ffffffff85ee000000002dcp+16 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b43958p-4 -2LL : 0xf.423ffffffff85ee000000002dcp+16 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b43958p-4 -2LL : 0xf.423ffffffff85ee000000002dcp+16 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b43958p-4 -2LL : 0xf.423ffffffff85ee000000002ep+16 : inexact-ok
+= compoundn downward binary64 -0xf.fbe76c8b4396p-4 -2LL : 0xf.4240000003b2p+16 : inexact-ok
+= compoundn tonearest binary64 -0xf.fbe76c8b4396p-4 -2LL : 0xf.4240000003b2p+16 : inexact-ok
+= compoundn towardzero binary64 -0xf.fbe76c8b4396p-4 -2LL : 0xf.4240000003b2p+16 : inexact-ok
+= compoundn upward binary64 -0xf.fbe76c8b4396p-4 -2LL : 0xf.4240000003b28p+16 : inexact-ok
+= compoundn downward intel96 -0xf.fbe76c8b4396p-4 -2LL : 0xf.4240000003b20b8p+16 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe76c8b4396p-4 -2LL : 0xf.4240000003b20b8p+16 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe76c8b4396p-4 -2LL : 0xf.4240000003b20b8p+16 : inexact-ok
+= compoundn upward intel96 -0xf.fbe76c8b4396p-4 -2LL : 0xf.4240000003b20b9p+16 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe76c8b4396p-4 -2LL : 0xf.4240000003b20b8p+16 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe76c8b4396p-4 -2LL : 0xf.4240000003b20b8p+16 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe76c8b4396p-4 -2LL : 0xf.4240000003b20b8p+16 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe76c8b4396p-4 -2LL : 0xf.4240000003b20b9p+16 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4396p-4 -2LL : 0xf.4240000003b20b800000abd716cp+16 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4396p-4 -2LL : 0xf.4240000003b20b800000abd716cp+16 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4396p-4 -2LL : 0xf.4240000003b20b800000abd716cp+16 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4396p-4 -2LL : 0xf.4240000003b20b800000abd716c8p+16 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b4396p-4 -2LL : 0xf.4240000003b20b800000abd714p+16 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b4396p-4 -2LL : 0xf.4240000003b20b800000abd718p+16 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b4396p-4 -2LL : 0xf.4240000003b20b800000abd714p+16 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b4396p-4 -2LL : 0xf.4240000003b20b800000abd718p+16 : inexact-ok
+= compoundn downward intel96 -0xf.fbe76c8b439581p-4 -2LL : 0xf.423fffffffffd23p+16 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe76c8b439581p-4 -2LL : 0xf.423fffffffffd24p+16 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe76c8b439581p-4 -2LL : 0xf.423fffffffffd23p+16 : inexact-ok
+= compoundn upward intel96 -0xf.fbe76c8b439581p-4 -2LL : 0xf.423fffffffffd24p+16 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe76c8b439581p-4 -2LL : 0xf.423fffffffffd23p+16 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe76c8b439581p-4 -2LL : 0xf.423fffffffffd24p+16 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe76c8b439581p-4 -2LL : 0xf.423fffffffffd23p+16 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe76c8b439581p-4 -2LL : 0xf.423fffffffffd24p+16 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b439581p-4 -2LL : 0xf.423fffffffffd23940000000006p+16 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b439581p-4 -2LL : 0xf.423fffffffffd239400000000068p+16 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b439581p-4 -2LL : 0xf.423fffffffffd23940000000006p+16 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b439581p-4 -2LL : 0xf.423fffffffffd239400000000068p+16 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b439581p-4 -2LL : 0xf.423fffffffffd2394p+16 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b439581p-4 -2LL : 0xf.423fffffffffd2394p+16 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b439581p-4 -2LL : 0xf.423fffffffffd2394p+16 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b439581p-4 -2LL : 0xf.423fffffffffd2394000000004p+16 : inexact-ok
+= compoundn downward intel96 -0xf.fbe76c8b4395811p-4 -2LL : 0xf.424000000000496p+16 : inexact-ok
+= compoundn tonearest intel96 -0xf.fbe76c8b4395811p-4 -2LL : 0xf.424000000000497p+16 : inexact-ok
+= compoundn towardzero intel96 -0xf.fbe76c8b4395811p-4 -2LL : 0xf.424000000000496p+16 : inexact-ok
+= compoundn upward intel96 -0xf.fbe76c8b4395811p-4 -2LL : 0xf.424000000000497p+16 : inexact-ok
+= compoundn downward m68k96 -0xf.fbe76c8b4395811p-4 -2LL : 0xf.424000000000496p+16 : inexact-ok
+= compoundn tonearest m68k96 -0xf.fbe76c8b4395811p-4 -2LL : 0xf.424000000000497p+16 : inexact-ok
+= compoundn towardzero m68k96 -0xf.fbe76c8b4395811p-4 -2LL : 0xf.424000000000496p+16 : inexact-ok
+= compoundn upward m68k96 -0xf.fbe76c8b4395811p-4 -2LL : 0xf.424000000000497p+16 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395811p-4 -2LL : 0xf.424000000000496ed40000000108p+16 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395811p-4 -2LL : 0xf.424000000000496ed40000000108p+16 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4395811p-4 -2LL : 0xf.424000000000496ed40000000108p+16 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395811p-4 -2LL : 0xf.424000000000496ed4000000011p+16 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b4395811p-4 -2LL : 0xf.424000000000496ed4p+16 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b4395811p-4 -2LL : 0xf.424000000000496ed4p+16 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b4395811p-4 -2LL : 0xf.424000000000496ed4p+16 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b4395811p-4 -2LL : 0xf.424000000000496ed400000004p+16 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 -2LL : 0xf.423fffffffffffffffffffffcfdp+16 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 -2LL : 0xf.423fffffffffffffffffffffcfd8p+16 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 -2LL : 0xf.423fffffffffffffffffffffcfdp+16 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 -2LL : 0xf.423fffffffffffffffffffffcfd8p+16 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 -2LL : 0xf.4240000000000000000000000b7p+16 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 -2LL : 0xf.4240000000000000000000000b7p+16 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 -2LL : 0xf.4240000000000000000000000b7p+16 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 -2LL : 0xf.4240000000000000000000000b78p+16 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 -2LL : 0xf.423fffffffffffffffffffe41aep+16 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 -2LL : 0xf.423fffffffffffffffffffe41aep+16 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 -2LL : 0xf.423fffffffffffffffffffe41aep+16 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 -2LL : 0xf.423fffffffffffffffffffe41ae8p+16 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 -2LL : 0xf.423fffffffffffffffffffe418p+16 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 -2LL : 0xf.423fffffffffffffffffffe41cp+16 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 -2LL : 0xf.423fffffffffffffffffffe418p+16 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 -2LL : 0xf.423fffffffffffffffffffe41cp+16 : inexact-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 -2LL : 0xf.424000000000000000000001e848p+16 : inexact-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 -2LL : 0xf.424000000000000000000001e848p+16 : inexact-ok
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 -2LL : 0xf.424000000000000000000001e848p+16 : inexact-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 -2LL : 0xf.424000000000000000000001e85p+16 : inexact-ok
+= compoundn downward ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 -2LL : 0xf.424000000000000000000001e8p+16 : inexact-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 -2LL : 0xf.424000000000000000000001e8p+16 : inexact-ok
+= compoundn towardzero ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 -2LL : 0xf.424000000000000000000001e8p+16 : inexact-ok
+= compoundn upward ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 -2LL : 0xf.424000000000000000000001ecp+16 : inexact-ok
+compoundn -0.123 -2
+= compoundn downward binary32 -0x1.f7ced8p-4 -2LL : 0x1.4cd812p+0 : inexact-ok
+= compoundn tonearest binary32 -0x1.f7ced8p-4 -2LL : 0x1.4cd812p+0 : inexact-ok
+= compoundn towardzero binary32 -0x1.f7ced8p-4 -2LL : 0x1.4cd812p+0 : inexact-ok
+= compoundn upward binary32 -0x1.f7ced8p-4 -2LL : 0x1.4cd814p+0 : inexact-ok
+= compoundn downward binary64 -0x1.f7ced8p-4 -2LL : 0x1.4cd8127e59ff4p+0 : inexact-ok
+= compoundn tonearest binary64 -0x1.f7ced8p-4 -2LL : 0x1.4cd8127e59ff5p+0 : inexact-ok
+= compoundn towardzero binary64 -0x1.f7ced8p-4 -2LL : 0x1.4cd8127e59ff4p+0 : inexact-ok
+= compoundn upward binary64 -0x1.f7ced8p-4 -2LL : 0x1.4cd8127e59ff5p+0 : inexact-ok
+= compoundn downward intel96 -0x1.f7ced8p-4 -2LL : 0x1.4cd8127e59ff487ap+0 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7ced8p-4 -2LL : 0x1.4cd8127e59ff487cp+0 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7ced8p-4 -2LL : 0x1.4cd8127e59ff487ap+0 : inexact-ok
+= compoundn upward intel96 -0x1.f7ced8p-4 -2LL : 0x1.4cd8127e59ff487cp+0 : inexact-ok
+= compoundn downward m68k96 -0x1.f7ced8p-4 -2LL : 0x1.4cd8127e59ff487ap+0 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7ced8p-4 -2LL : 0x1.4cd8127e59ff487cp+0 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7ced8p-4 -2LL : 0x1.4cd8127e59ff487ap+0 : inexact-ok
+= compoundn upward m68k96 -0x1.f7ced8p-4 -2LL : 0x1.4cd8127e59ff487cp+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced8p-4 -2LL : 0x1.4cd8127e59ff487badddb5fc94e2p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced8p-4 -2LL : 0x1.4cd8127e59ff487badddb5fc94e2p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced8p-4 -2LL : 0x1.4cd8127e59ff487badddb5fc94e2p+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced8p-4 -2LL : 0x1.4cd8127e59ff487badddb5fc94e3p+0 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced8p-4 -2LL : 0x1.4cd8127e59ff487badddb5fc948p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced8p-4 -2LL : 0x1.4cd8127e59ff487badddb5fc95p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced8p-4 -2LL : 0x1.4cd8127e59ff487badddb5fc948p+0 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced8p-4 -2LL : 0x1.4cd8127e59ff487badddb5fc95p+0 : inexact-ok
+= compoundn downward binary32 -0x1.f7cedap-4 -2LL : 0x1.4cd812p+0 : inexact-ok
+= compoundn tonearest binary32 -0x1.f7cedap-4 -2LL : 0x1.4cd812p+0 : inexact-ok
+= compoundn towardzero binary32 -0x1.f7cedap-4 -2LL : 0x1.4cd812p+0 : inexact-ok
+= compoundn upward binary32 -0x1.f7cedap-4 -2LL : 0x1.4cd814p+0 : inexact-ok
+= compoundn downward binary64 -0x1.f7cedap-4 -2LL : 0x1.4cd812dd3ba44p+0 : inexact-ok
+= compoundn tonearest binary64 -0x1.f7cedap-4 -2LL : 0x1.4cd812dd3ba44p+0 : inexact-ok
+= compoundn towardzero binary64 -0x1.f7cedap-4 -2LL : 0x1.4cd812dd3ba44p+0 : inexact-ok
+= compoundn upward binary64 -0x1.f7cedap-4 -2LL : 0x1.4cd812dd3ba45p+0 : inexact-ok
+= compoundn downward intel96 -0x1.f7cedap-4 -2LL : 0x1.4cd812dd3ba446eep+0 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7cedap-4 -2LL : 0x1.4cd812dd3ba446eep+0 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7cedap-4 -2LL : 0x1.4cd812dd3ba446eep+0 : inexact-ok
+= compoundn upward intel96 -0x1.f7cedap-4 -2LL : 0x1.4cd812dd3ba446fp+0 : inexact-ok
+= compoundn downward m68k96 -0x1.f7cedap-4 -2LL : 0x1.4cd812dd3ba446eep+0 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7cedap-4 -2LL : 0x1.4cd812dd3ba446eep+0 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7cedap-4 -2LL : 0x1.4cd812dd3ba446eep+0 : inexact-ok
+= compoundn upward m68k96 -0x1.f7cedap-4 -2LL : 0x1.4cd812dd3ba446fp+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7cedap-4 -2LL : 0x1.4cd812dd3ba446ee2b547d3e795p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7cedap-4 -2LL : 0x1.4cd812dd3ba446ee2b547d3e795p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7cedap-4 -2LL : 0x1.4cd812dd3ba446ee2b547d3e795p+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7cedap-4 -2LL : 0x1.4cd812dd3ba446ee2b547d3e7951p+0 : inexact-ok
+= compoundn downward ibm128 -0x1.f7cedap-4 -2LL : 0x1.4cd812dd3ba446ee2b547d3e79p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7cedap-4 -2LL : 0x1.4cd812dd3ba446ee2b547d3e798p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7cedap-4 -2LL : 0x1.4cd812dd3ba446ee2b547d3e79p+0 : inexact-ok
+= compoundn upward ibm128 -0x1.f7cedap-4 -2LL : 0x1.4cd812dd3ba446ee2b547d3e798p+0 : inexact-ok
+= compoundn downward binary64 -0x1.f7ced916872bp-4 -2LL : 0x1.4cd812b1f7905p+0 : inexact-ok
+= compoundn tonearest binary64 -0x1.f7ced916872bp-4 -2LL : 0x1.4cd812b1f7905p+0 : inexact-ok
+= compoundn towardzero binary64 -0x1.f7ced916872bp-4 -2LL : 0x1.4cd812b1f7905p+0 : inexact-ok
+= compoundn upward binary64 -0x1.f7ced916872bp-4 -2LL : 0x1.4cd812b1f7906p+0 : inexact-ok
+= compoundn downward intel96 -0x1.f7ced916872bp-4 -2LL : 0x1.4cd812b1f790509p+0 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7ced916872bp-4 -2LL : 0x1.4cd812b1f790509p+0 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7ced916872bp-4 -2LL : 0x1.4cd812b1f790509p+0 : inexact-ok
+= compoundn upward intel96 -0x1.f7ced916872bp-4 -2LL : 0x1.4cd812b1f7905092p+0 : inexact-ok
+= compoundn downward m68k96 -0x1.f7ced916872bp-4 -2LL : 0x1.4cd812b1f790509p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7ced916872bp-4 -2LL : 0x1.4cd812b1f790509p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7ced916872bp-4 -2LL : 0x1.4cd812b1f790509p+0 : inexact-ok
+= compoundn upward m68k96 -0x1.f7ced916872bp-4 -2LL : 0x1.4cd812b1f7905092p+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872bp-4 -2LL : 0x1.4cd812b1f790509014da1c8979e2p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872bp-4 -2LL : 0x1.4cd812b1f790509014da1c8979e2p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872bp-4 -2LL : 0x1.4cd812b1f790509014da1c8979e2p+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872bp-4 -2LL : 0x1.4cd812b1f790509014da1c8979e3p+0 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872bp-4 -2LL : 0x1.4cd812b1f790509014da1c89798p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872bp-4 -2LL : 0x1.4cd812b1f790509014da1c897ap+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872bp-4 -2LL : 0x1.4cd812b1f790509014da1c89798p+0 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872bp-4 -2LL : 0x1.4cd812b1f790509014da1c897ap+0 : inexact-ok
+= compoundn downward binary64 -0x1.f7ced916872b1p-4 -2LL : 0x1.4cd812b1f7905p+0 : inexact-ok
+= compoundn tonearest binary64 -0x1.f7ced916872b1p-4 -2LL : 0x1.4cd812b1f7905p+0 : inexact-ok
+= compoundn towardzero binary64 -0x1.f7ced916872b1p-4 -2LL : 0x1.4cd812b1f7905p+0 : inexact-ok
+= compoundn upward binary64 -0x1.f7ced916872b1p-4 -2LL : 0x1.4cd812b1f7906p+0 : inexact-ok
+= compoundn downward intel96 -0x1.f7ced916872b1p-4 -2LL : 0x1.4cd812b1f7905386p+0 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7ced916872b1p-4 -2LL : 0x1.4cd812b1f7905388p+0 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7ced916872b1p-4 -2LL : 0x1.4cd812b1f7905386p+0 : inexact-ok
+= compoundn upward intel96 -0x1.f7ced916872b1p-4 -2LL : 0x1.4cd812b1f7905388p+0 : inexact-ok
+= compoundn downward m68k96 -0x1.f7ced916872b1p-4 -2LL : 0x1.4cd812b1f7905386p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7ced916872b1p-4 -2LL : 0x1.4cd812b1f7905388p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7ced916872b1p-4 -2LL : 0x1.4cd812b1f7905386p+0 : inexact-ok
+= compoundn upward m68k96 -0x1.f7ced916872b1p-4 -2LL : 0x1.4cd812b1f7905388p+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b1p-4 -2LL : 0x1.4cd812b1f790538722021e654e8ap+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b1p-4 -2LL : 0x1.4cd812b1f790538722021e654e8bp+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b1p-4 -2LL : 0x1.4cd812b1f790538722021e654e8ap+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b1p-4 -2LL : 0x1.4cd812b1f790538722021e654e8bp+0 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872b1p-4 -2LL : 0x1.4cd812b1f790538722021e654e8p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b1p-4 -2LL : 0x1.4cd812b1f790538722021e654e8p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872b1p-4 -2LL : 0x1.4cd812b1f790538722021e654e8p+0 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872b1p-4 -2LL : 0x1.4cd812b1f790538722021e654fp+0 : inexact-ok
+= compoundn downward intel96 -0x1.f7ced916872b020cp-4 -2LL : 0x1.4cd812b1f79050fp+0 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7ced916872b020cp-4 -2LL : 0x1.4cd812b1f79050f2p+0 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7ced916872b020cp-4 -2LL : 0x1.4cd812b1f79050fp+0 : inexact-ok
+= compoundn upward intel96 -0x1.f7ced916872b020cp-4 -2LL : 0x1.4cd812b1f79050f2p+0 : inexact-ok
+= compoundn downward m68k96 -0x1.f7ced916872b020cp-4 -2LL : 0x1.4cd812b1f79050fp+0 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7ced916872b020cp-4 -2LL : 0x1.4cd812b1f79050f2p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7ced916872b020cp-4 -2LL : 0x1.4cd812b1f79050fp+0 : inexact-ok
+= compoundn upward m68k96 -0x1.f7ced916872b020cp-4 -2LL : 0x1.4cd812b1f79050f2p+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020cp-4 -2LL : 0x1.4cd812b1f79050f12fc8fac65956p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020cp-4 -2LL : 0x1.4cd812b1f79050f12fc8fac65956p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020cp-4 -2LL : 0x1.4cd812b1f79050f12fc8fac65956p+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020cp-4 -2LL : 0x1.4cd812b1f79050f12fc8fac65957p+0 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872b020cp-4 -2LL : 0x1.4cd812b1f79050f12fc8fac659p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b020cp-4 -2LL : 0x1.4cd812b1f79050f12fc8fac6598p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872b020cp-4 -2LL : 0x1.4cd812b1f79050f12fc8fac659p+0 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872b020cp-4 -2LL : 0x1.4cd812b1f79050f12fc8fac6598p+0 : inexact-ok
+= compoundn downward intel96 -0x1.f7ced916872b020ep-4 -2LL : 0x1.4cd812b1f79050fp+0 : inexact-ok
+= compoundn tonearest intel96 -0x1.f7ced916872b020ep-4 -2LL : 0x1.4cd812b1f79050f2p+0 : inexact-ok
+= compoundn towardzero intel96 -0x1.f7ced916872b020ep-4 -2LL : 0x1.4cd812b1f79050fp+0 : inexact-ok
+= compoundn upward intel96 -0x1.f7ced916872b020ep-4 -2LL : 0x1.4cd812b1f79050f2p+0 : inexact-ok
+= compoundn downward m68k96 -0x1.f7ced916872b020ep-4 -2LL : 0x1.4cd812b1f79050fp+0 : inexact-ok
+= compoundn tonearest m68k96 -0x1.f7ced916872b020ep-4 -2LL : 0x1.4cd812b1f79050f2p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x1.f7ced916872b020ep-4 -2LL : 0x1.4cd812b1f79050fp+0 : inexact-ok
+= compoundn upward m68k96 -0x1.f7ced916872b020ep-4 -2LL : 0x1.4cd812b1f79050f2p+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020ep-4 -2LL : 0x1.4cd812b1f79050f18eaa9fc694dp+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020ep-4 -2LL : 0x1.4cd812b1f79050f18eaa9fc694d1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020ep-4 -2LL : 0x1.4cd812b1f79050f18eaa9fc694dp+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020ep-4 -2LL : 0x1.4cd812b1f79050f18eaa9fc694d1p+0 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872b020ep-4 -2LL : 0x1.4cd812b1f79050f18eaa9fc6948p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b020ep-4 -2LL : 0x1.4cd812b1f79050f18eaa9fc695p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872b020ep-4 -2LL : 0x1.4cd812b1f79050f18eaa9fc6948p+0 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872b020ep-4 -2LL : 0x1.4cd812b1f79050f18eaa9fc695p+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 -2LL : 0x1.4cd812b1f79050f13d72b03b1e51p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 -2LL : 0x1.4cd812b1f79050f13d72b03b1e51p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 -2LL : 0x1.4cd812b1f79050f13d72b03b1e51p+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 -2LL : 0x1.4cd812b1f79050f13d72b03b1e52p+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 -2LL : 0x1.4cd812b1f79050f13d72b03b1e51p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 -2LL : 0x1.4cd812b1f79050f13d72b03b1e51p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 -2LL : 0x1.4cd812b1f79050f13d72b03b1e51p+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 -2LL : 0x1.4cd812b1f79050f13d72b03b1e52p+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353fp-4 -2LL : 0x1.4cd812b1f79050f13d72b03b1e3ap+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353fp-4 -2LL : 0x1.4cd812b1f79050f13d72b03b1e3ap+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353fp-4 -2LL : 0x1.4cd812b1f79050f13d72b03b1e3ap+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353fp-4 -2LL : 0x1.4cd812b1f79050f13d72b03b1e3bp+0 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 -2LL : 0x1.4cd812b1f79050f13d72b03b1ep+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 -2LL : 0x1.4cd812b1f79050f13d72b03b1ep+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 -2LL : 0x1.4cd812b1f79050f13d72b03b1ep+0 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 -2LL : 0x1.4cd812b1f79050f13d72b03b1e8p+0 : inexact-ok
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 -2LL : 0x1.4cd812b1f79050f13d72b03b1e51p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 -2LL : 0x1.4cd812b1f79050f13d72b03b1e52p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 -2LL : 0x1.4cd812b1f79050f13d72b03b1e51p+0 : inexact-ok
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 -2LL : 0x1.4cd812b1f79050f13d72b03b1e52p+0 : inexact-ok
+= compoundn downward ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 -2LL : 0x1.4cd812b1f79050f13d72b03b1ep+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 -2LL : 0x1.4cd812b1f79050f13d72b03b1e8p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 -2LL : 0x1.4cd812b1f79050f13d72b03b1ep+0 : inexact-ok
+= compoundn upward ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 -2LL : 0x1.4cd812b1f79050f13d72b03b1e8p+0 : inexact-ok
+compoundn -min -2
+= compoundn downward binary32 -0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 -0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 -0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 -0x4p-128 -2LL : 0x1.000002p+0 : inexact-ok
+= compoundn downward binary64 -0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x4p-128 -2LL : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x4p-128 -2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x4p-128 -2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x4p-128 -2LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward ibm128 -0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x4p-128 -2LL : 0x1.000000000000000000000000008p+0 : inexact-ok
+= compoundn downward binary64 -0x4p-1024 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x4p-1024 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x4p-1024 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x4p-1024 -2LL : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-1024 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x4p-1024 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x4p-1024 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x4p-1024 -2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-1024 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-1024 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-1024 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x4p-1024 -2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-1024 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x4p-1024 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-1024 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x4p-1024 -2LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward ibm128 -0x4p-1024 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x4p-1024 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x4p-1024 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x4p-1024 -2LL : 0x1.000000000000000000000000008p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x4p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x4p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x4p-16384 -2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x4p-16384 -2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x4p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x4p-16384 -2LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward intel96 -0x2p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x2p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x2p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x2p-16384 -2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 -0x2p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x2p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x2p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x2p-16384 -2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 -0x2p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x2p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x2p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x2p-16384 -2LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward binary64 -0x8p-972 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x8p-972 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x8p-972 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x8p-972 -2LL : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 -0x8p-972 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x8p-972 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x8p-972 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x8p-972 -2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 -0x8p-972 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x8p-972 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x8p-972 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x8p-972 -2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 -0x8p-972 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x8p-972 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x8p-972 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x8p-972 -2LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward ibm128 -0x8p-972 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x8p-972 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x8p-972 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x8p-972 -2LL : 0x1.000000000000000000000000008p+0 : inexact-ok
+compoundn -min_subnorm -2
+= compoundn downward binary32 -0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 -0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 -0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 -0x8p-152 -2LL : 0x1.000002p+0 : inexact-ok
+= compoundn downward binary64 -0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x8p-152 -2LL : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 -0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x8p-152 -2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 -0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x8p-152 -2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 -0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x8p-152 -2LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward ibm128 -0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x8p-152 -2LL : 0x1.000000000000000000000000008p+0 : inexact-ok
+= compoundn downward binary64 -0x4p-1076 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x4p-1076 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x4p-1076 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x4p-1076 -2LL : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-1076 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x4p-1076 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x4p-1076 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x4p-1076 -2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-1076 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-1076 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-1076 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x4p-1076 -2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-1076 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x4p-1076 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-1076 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x4p-1076 -2LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward ibm128 -0x4p-1076 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x4p-1076 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x4p-1076 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x4p-1076 -2LL : 0x1.000000000000000000000000008p+0 : inexact-ok
+= compoundn downward intel96 -0x8p-16448 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x8p-16448 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x8p-16448 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x8p-16448 -2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 -0x8p-16448 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x8p-16448 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x8p-16448 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x8p-16448 -2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 -0x8p-16448 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x8p-16448 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x8p-16448 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x8p-16448 -2LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-16448 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-16448 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-16448 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x4p-16448 -2LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-16448 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x4p-16448 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-16448 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x4p-16448 -2LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-16496 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x4p-16496 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-16496 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x4p-16496 -2LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+compoundn -0 -2
+= compoundn downward binary32 -0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 -0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 -0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 -0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x0p+0 -2LL : 0x1p+0 : inexact-ok
+compoundn 0 -2
+= compoundn downward binary32 0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x0p+0 -2LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x0p+0 -2LL : 0x1p+0 : inexact-ok
+compoundn min_subnorm -2
+= compoundn downward binary32 0x8p-152 -2LL : 0xf.fffffp-4 : inexact-ok
+= compoundn tonearest binary32 0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0x8p-152 -2LL : 0xf.fffffp-4 : inexact-ok
+= compoundn upward binary32 0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x8p-152 -2LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x8p-152 -2LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x8p-152 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x8p-152 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x8p-152 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x8p-152 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x8p-152 -2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x8p-152 -2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x8p-152 -2LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x8p-152 -2LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 0x8p-152 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x4p-1076 -2LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 0x4p-1076 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x4p-1076 -2LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 0x4p-1076 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x4p-1076 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 0x4p-1076 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4p-1076 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 0x4p-1076 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-1076 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 0x4p-1076 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-1076 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 0x4p-1076 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4p-1076 -2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x4p-1076 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-1076 -2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x4p-1076 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x4p-1076 -2LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 0x4p-1076 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4p-1076 -2LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 0x4p-1076 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x8p-16448 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 0x8p-16448 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x8p-16448 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 0x8p-16448 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x8p-16448 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 0x8p-16448 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x8p-16448 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 0x8p-16448 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x8p-16448 -2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x8p-16448 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x8p-16448 -2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x8p-16448 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-16448 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 0x4p-16448 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-16448 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 0x4p-16448 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4p-16448 -2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x4p-16448 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-16448 -2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x4p-16448 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4p-16496 -2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x4p-16496 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-16496 -2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x4p-16496 -2LL : 0x1p+0 : inexact-ok
+compoundn min -2
+= compoundn downward binary32 0x4p-128 -2LL : 0xf.fffffp-4 : inexact-ok
+= compoundn tonearest binary32 0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0x4p-128 -2LL : 0xf.fffffp-4 : inexact-ok
+= compoundn upward binary32 0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x4p-128 -2LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x4p-128 -2LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x4p-128 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4p-128 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-128 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-128 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4p-128 -2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-128 -2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x4p-128 -2LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4p-128 -2LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 0x4p-128 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x4p-1024 -2LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 0x4p-1024 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x4p-1024 -2LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 0x4p-1024 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x4p-1024 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 0x4p-1024 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4p-1024 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 0x4p-1024 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-1024 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 0x4p-1024 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-1024 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 0x4p-1024 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4p-1024 -2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x4p-1024 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-1024 -2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x4p-1024 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x4p-1024 -2LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 0x4p-1024 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4p-1024 -2LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 0x4p-1024 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x4p-16384 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 0x4p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4p-16384 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 0x4p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-16384 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 0x4p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-16384 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 0x4p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4p-16384 -2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x4p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-16384 -2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x4p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x2p-16384 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 0x2p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x2p-16384 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 0x2p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x2p-16384 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 0x2p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x2p-16384 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 0x2p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x2p-16384 -2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x2p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x2p-16384 -2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x2p-16384 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x8p-972 -2LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 0x8p-972 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x8p-972 -2LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 0x8p-972 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x8p-972 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 0x8p-972 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x8p-972 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 0x8p-972 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x8p-972 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 0x8p-972 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x8p-972 -2LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 0x8p-972 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x8p-972 -2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x8p-972 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x8p-972 -2LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x8p-972 -2LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x8p-972 -2LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 0x8p-972 -2LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x8p-972 -2LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 0x8p-972 -2LL : 0x1p+0 : inexact-ok
+compoundn 0.001 -2
+= compoundn downward binary32 0x4.189378p-12 -2LL : 0xf.f7d1fp-4 : inexact-ok
+= compoundn tonearest binary32 0x4.189378p-12 -2LL : 0xf.f7d2p-4 : inexact-ok
+= compoundn towardzero binary32 0x4.189378p-12 -2LL : 0xf.f7d1fp-4 : inexact-ok
+= compoundn upward binary32 0x4.189378p-12 -2LL : 0xf.f7d2p-4 : inexact-ok
+= compoundn downward binary64 0x4.189378p-12 -2LL : 0xf.f7d1fd4bea3f8p-4 : inexact-ok
+= compoundn tonearest binary64 0x4.189378p-12 -2LL : 0xf.f7d1fd4bea3f8p-4 : inexact-ok
+= compoundn towardzero binary64 0x4.189378p-12 -2LL : 0xf.f7d1fd4bea3f8p-4 : inexact-ok
+= compoundn upward binary64 0x4.189378p-12 -2LL : 0xf.f7d1fd4bea4p-4 : inexact-ok
+= compoundn downward intel96 0x4.189378p-12 -2LL : 0xf.f7d1fd4bea3f812p-4 : inexact-ok
+= compoundn tonearest intel96 0x4.189378p-12 -2LL : 0xf.f7d1fd4bea3f812p-4 : inexact-ok
+= compoundn towardzero intel96 0x4.189378p-12 -2LL : 0xf.f7d1fd4bea3f812p-4 : inexact-ok
+= compoundn upward intel96 0x4.189378p-12 -2LL : 0xf.f7d1fd4bea3f813p-4 : inexact-ok
+= compoundn downward m68k96 0x4.189378p-12 -2LL : 0xf.f7d1fd4bea3f812p-4 : inexact-ok
+= compoundn tonearest m68k96 0x4.189378p-12 -2LL : 0xf.f7d1fd4bea3f812p-4 : inexact-ok
+= compoundn towardzero m68k96 0x4.189378p-12 -2LL : 0xf.f7d1fd4bea3f812p-4 : inexact-ok
+= compoundn upward m68k96 0x4.189378p-12 -2LL : 0xf.f7d1fd4bea3f813p-4 : inexact-ok
+= compoundn downward binary128 0x4.189378p-12 -2LL : 0xf.f7d1fd4bea3f812366502bbf2878p-4 : inexact-ok
+= compoundn tonearest binary128 0x4.189378p-12 -2LL : 0xf.f7d1fd4bea3f812366502bbf2878p-4 : inexact-ok
+= compoundn towardzero binary128 0x4.189378p-12 -2LL : 0xf.f7d1fd4bea3f812366502bbf2878p-4 : inexact-ok
+= compoundn upward binary128 0x4.189378p-12 -2LL : 0xf.f7d1fd4bea3f812366502bbf288p-4 : inexact-ok
+= compoundn downward ibm128 0x4.189378p-12 -2LL : 0xf.f7d1fd4bea3f812366502bbf28p-4 : inexact-ok
+= compoundn tonearest ibm128 0x4.189378p-12 -2LL : 0xf.f7d1fd4bea3f812366502bbf28p-4 : inexact-ok
+= compoundn towardzero ibm128 0x4.189378p-12 -2LL : 0xf.f7d1fd4bea3f812366502bbf28p-4 : inexact-ok
+= compoundn upward ibm128 0x4.189378p-12 -2LL : 0xf.f7d1fd4bea3f812366502bbf2cp-4 : inexact-ok
+= compoundn downward binary32 0x4.18937p-12 -2LL : 0xf.f7d1fp-4 : inexact-ok
+= compoundn tonearest binary32 0x4.18937p-12 -2LL : 0xf.f7d2p-4 : inexact-ok
+= compoundn towardzero binary32 0x4.18937p-12 -2LL : 0xf.f7d1fp-4 : inexact-ok
+= compoundn upward binary32 0x4.18937p-12 -2LL : 0xf.f7d2p-4 : inexact-ok
+= compoundn downward binary64 0x4.18937p-12 -2LL : 0xf.f7d1fd5bddfcp-4 : inexact-ok
+= compoundn tonearest binary64 0x4.18937p-12 -2LL : 0xf.f7d1fd5bddfcp-4 : inexact-ok
+= compoundn towardzero binary64 0x4.18937p-12 -2LL : 0xf.f7d1fd5bddfcp-4 : inexact-ok
+= compoundn upward binary64 0x4.18937p-12 -2LL : 0xf.f7d1fd5bddfc8p-4 : inexact-ok
+= compoundn downward intel96 0x4.18937p-12 -2LL : 0xf.f7d1fd5bddfc0ebp-4 : inexact-ok
+= compoundn tonearest intel96 0x4.18937p-12 -2LL : 0xf.f7d1fd5bddfc0ebp-4 : inexact-ok
+= compoundn towardzero intel96 0x4.18937p-12 -2LL : 0xf.f7d1fd5bddfc0ebp-4 : inexact-ok
+= compoundn upward intel96 0x4.18937p-12 -2LL : 0xf.f7d1fd5bddfc0ecp-4 : inexact-ok
+= compoundn downward m68k96 0x4.18937p-12 -2LL : 0xf.f7d1fd5bddfc0ebp-4 : inexact-ok
+= compoundn tonearest m68k96 0x4.18937p-12 -2LL : 0xf.f7d1fd5bddfc0ebp-4 : inexact-ok
+= compoundn towardzero m68k96 0x4.18937p-12 -2LL : 0xf.f7d1fd5bddfc0ebp-4 : inexact-ok
+= compoundn upward m68k96 0x4.18937p-12 -2LL : 0xf.f7d1fd5bddfc0ecp-4 : inexact-ok
+= compoundn downward binary128 0x4.18937p-12 -2LL : 0xf.f7d1fd5bddfc0eb615fa4b8e5f88p-4 : inexact-ok
+= compoundn tonearest binary128 0x4.18937p-12 -2LL : 0xf.f7d1fd5bddfc0eb615fa4b8e5f88p-4 : inexact-ok
+= compoundn towardzero binary128 0x4.18937p-12 -2LL : 0xf.f7d1fd5bddfc0eb615fa4b8e5f88p-4 : inexact-ok
+= compoundn upward binary128 0x4.18937p-12 -2LL : 0xf.f7d1fd5bddfc0eb615fa4b8e5f9p-4 : inexact-ok
+= compoundn downward ibm128 0x4.18937p-12 -2LL : 0xf.f7d1fd5bddfc0eb615fa4b8e5cp-4 : inexact-ok
+= compoundn tonearest ibm128 0x4.18937p-12 -2LL : 0xf.f7d1fd5bddfc0eb615fa4b8e6p-4 : inexact-ok
+= compoundn towardzero ibm128 0x4.18937p-12 -2LL : 0xf.f7d1fd5bddfc0eb615fa4b8e5cp-4 : inexact-ok
+= compoundn upward ibm128 0x4.18937p-12 -2LL : 0xf.f7d1fd5bddfc0eb615fa4b8e6p-4 : inexact-ok
+= compoundn downward binary64 0x4.189374bc6a7fp-12 -2LL : 0xf.f7d1fd526c698p-4 : inexact-ok
+= compoundn tonearest binary64 0x4.189374bc6a7fp-12 -2LL : 0xf.f7d1fd526c698p-4 : inexact-ok
+= compoundn towardzero binary64 0x4.189374bc6a7fp-12 -2LL : 0xf.f7d1fd526c698p-4 : inexact-ok
+= compoundn upward binary64 0x4.189374bc6a7fp-12 -2LL : 0xf.f7d1fd526c6ap-4 : inexact-ok
+= compoundn downward intel96 0x4.189374bc6a7fp-12 -2LL : 0xf.f7d1fd526c699e2p-4 : inexact-ok
+= compoundn tonearest intel96 0x4.189374bc6a7fp-12 -2LL : 0xf.f7d1fd526c699e3p-4 : inexact-ok
+= compoundn towardzero intel96 0x4.189374bc6a7fp-12 -2LL : 0xf.f7d1fd526c699e2p-4 : inexact-ok
+= compoundn upward intel96 0x4.189374bc6a7fp-12 -2LL : 0xf.f7d1fd526c699e3p-4 : inexact-ok
+= compoundn downward m68k96 0x4.189374bc6a7fp-12 -2LL : 0xf.f7d1fd526c699e2p-4 : inexact-ok
+= compoundn tonearest m68k96 0x4.189374bc6a7fp-12 -2LL : 0xf.f7d1fd526c699e3p-4 : inexact-ok
+= compoundn towardzero m68k96 0x4.189374bc6a7fp-12 -2LL : 0xf.f7d1fd526c699e2p-4 : inexact-ok
+= compoundn upward m68k96 0x4.189374bc6a7fp-12 -2LL : 0xf.f7d1fd526c699e3p-4 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7fp-12 -2LL : 0xf.f7d1fd526c699e2b3edc52fc824p-4 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7fp-12 -2LL : 0xf.f7d1fd526c699e2b3edc52fc824p-4 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7fp-12 -2LL : 0xf.f7d1fd526c699e2b3edc52fc824p-4 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7fp-12 -2LL : 0xf.f7d1fd526c699e2b3edc52fc8248p-4 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7fp-12 -2LL : 0xf.f7d1fd526c699e2b3edc52fc8p-4 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7fp-12 -2LL : 0xf.f7d1fd526c699e2b3edc52fc84p-4 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7fp-12 -2LL : 0xf.f7d1fd526c699e2b3edc52fc8p-4 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7fp-12 -2LL : 0xf.f7d1fd526c699e2b3edc52fc84p-4 : inexact-ok
+= compoundn downward binary64 0x4.189374bc6a7ecp-12 -2LL : 0xf.f7d1fd526c698p-4 : inexact-ok
+= compoundn tonearest binary64 0x4.189374bc6a7ecp-12 -2LL : 0xf.f7d1fd526c698p-4 : inexact-ok
+= compoundn towardzero binary64 0x4.189374bc6a7ecp-12 -2LL : 0xf.f7d1fd526c698p-4 : inexact-ok
+= compoundn upward binary64 0x4.189374bc6a7ecp-12 -2LL : 0xf.f7d1fd526c6ap-4 : inexact-ok
+= compoundn downward intel96 0x4.189374bc6a7ecp-12 -2LL : 0xf.f7d1fd526c699eap-4 : inexact-ok
+= compoundn tonearest intel96 0x4.189374bc6a7ecp-12 -2LL : 0xf.f7d1fd526c699ebp-4 : inexact-ok
+= compoundn towardzero intel96 0x4.189374bc6a7ecp-12 -2LL : 0xf.f7d1fd526c699eap-4 : inexact-ok
+= compoundn upward intel96 0x4.189374bc6a7ecp-12 -2LL : 0xf.f7d1fd526c699ebp-4 : inexact-ok
+= compoundn downward m68k96 0x4.189374bc6a7ecp-12 -2LL : 0xf.f7d1fd526c699eap-4 : inexact-ok
+= compoundn tonearest m68k96 0x4.189374bc6a7ecp-12 -2LL : 0xf.f7d1fd526c699ebp-4 : inexact-ok
+= compoundn towardzero m68k96 0x4.189374bc6a7ecp-12 -2LL : 0xf.f7d1fd526c699eap-4 : inexact-ok
+= compoundn upward m68k96 0x4.189374bc6a7ecp-12 -2LL : 0xf.f7d1fd526c699ebp-4 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ecp-12 -2LL : 0xf.f7d1fd526c699eaadcc0bf8067ap-4 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ecp-12 -2LL : 0xf.f7d1fd526c699eaadcc0bf8067ap-4 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ecp-12 -2LL : 0xf.f7d1fd526c699eaadcc0bf8067ap-4 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ecp-12 -2LL : 0xf.f7d1fd526c699eaadcc0bf8067a8p-4 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7ecp-12 -2LL : 0xf.f7d1fd526c699eaadcc0bf8064p-4 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ecp-12 -2LL : 0xf.f7d1fd526c699eaadcc0bf8068p-4 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7ecp-12 -2LL : 0xf.f7d1fd526c699eaadcc0bf8064p-4 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7ecp-12 -2LL : 0xf.f7d1fd526c699eaadcc0bf8068p-4 : inexact-ok
+= compoundn downward intel96 0x4.189374bc6a7ef9ep-12 -2LL : 0xf.f7d1fd526c699e3p-4 : inexact-ok
+= compoundn tonearest intel96 0x4.189374bc6a7ef9ep-12 -2LL : 0xf.f7d1fd526c699e3p-4 : inexact-ok
+= compoundn towardzero intel96 0x4.189374bc6a7ef9ep-12 -2LL : 0xf.f7d1fd526c699e3p-4 : inexact-ok
+= compoundn upward intel96 0x4.189374bc6a7ef9ep-12 -2LL : 0xf.f7d1fd526c699e4p-4 : inexact-ok
+= compoundn downward m68k96 0x4.189374bc6a7ef9ep-12 -2LL : 0xf.f7d1fd526c699e3p-4 : inexact-ok
+= compoundn tonearest m68k96 0x4.189374bc6a7ef9ep-12 -2LL : 0xf.f7d1fd526c699e3p-4 : inexact-ok
+= compoundn towardzero m68k96 0x4.189374bc6a7ef9ep-12 -2LL : 0xf.f7d1fd526c699e3p-4 : inexact-ok
+= compoundn upward m68k96 0x4.189374bc6a7ef9ep-12 -2LL : 0xf.f7d1fd526c699e4p-4 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9ep-12 -2LL : 0xf.f7d1fd526c699e377578af5f21bp-4 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9ep-12 -2LL : 0xf.f7d1fd526c699e377578af5f21b8p-4 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9ep-12 -2LL : 0xf.f7d1fd526c699e377578af5f21bp-4 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9ep-12 -2LL : 0xf.f7d1fd526c699e377578af5f21b8p-4 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7ef9ep-12 -2LL : 0xf.f7d1fd526c699e377578af5f2p-4 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9ep-12 -2LL : 0xf.f7d1fd526c699e377578af5f2p-4 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9ep-12 -2LL : 0xf.f7d1fd526c699e377578af5f2p-4 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7ef9ep-12 -2LL : 0xf.f7d1fd526c699e377578af5f24p-4 : inexact-ok
+= compoundn downward intel96 0x4.189374bc6a7ef9d8p-12 -2LL : 0xf.f7d1fd526c699e3p-4 : inexact-ok
+= compoundn tonearest intel96 0x4.189374bc6a7ef9d8p-12 -2LL : 0xf.f7d1fd526c699e3p-4 : inexact-ok
+= compoundn towardzero intel96 0x4.189374bc6a7ef9d8p-12 -2LL : 0xf.f7d1fd526c699e3p-4 : inexact-ok
+= compoundn upward intel96 0x4.189374bc6a7ef9d8p-12 -2LL : 0xf.f7d1fd526c699e4p-4 : inexact-ok
+= compoundn downward m68k96 0x4.189374bc6a7ef9d8p-12 -2LL : 0xf.f7d1fd526c699e3p-4 : inexact-ok
+= compoundn tonearest m68k96 0x4.189374bc6a7ef9d8p-12 -2LL : 0xf.f7d1fd526c699e3p-4 : inexact-ok
+= compoundn towardzero m68k96 0x4.189374bc6a7ef9d8p-12 -2LL : 0xf.f7d1fd526c699e3p-4 : inexact-ok
+= compoundn upward m68k96 0x4.189374bc6a7ef9d8p-12 -2LL : 0xf.f7d1fd526c699e4p-4 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9d8p-12 -2LL : 0xf.f7d1fd526c699e37856c6becb23p-4 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9d8p-12 -2LL : 0xf.f7d1fd526c699e37856c6becb23p-4 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9d8p-12 -2LL : 0xf.f7d1fd526c699e37856c6becb23p-4 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9d8p-12 -2LL : 0xf.f7d1fd526c699e37856c6becb238p-4 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7ef9d8p-12 -2LL : 0xf.f7d1fd526c699e37856c6becbp-4 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9d8p-12 -2LL : 0xf.f7d1fd526c699e37856c6becb4p-4 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9d8p-12 -2LL : 0xf.f7d1fd526c699e37856c6becbp-4 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7ef9d8p-12 -2LL : 0xf.f7d1fd526c699e37856c6becb4p-4 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 -2LL : 0xf.f7d1fd526c699e377f2b98cbbb1p-4 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 -2LL : 0xf.f7d1fd526c699e377f2b98cbbb18p-4 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 -2LL : 0xf.f7d1fd526c699e377f2b98cbbb1p-4 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 -2LL : 0xf.f7d1fd526c699e377f2b98cbbb18p-4 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 -2LL : 0xf.f7d1fd526c699e377f2b98cbbb1p-4 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 -2LL : 0xf.f7d1fd526c699e377f2b98cbbb18p-4 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 -2LL : 0xf.f7d1fd526c699e377f2b98cbbb1p-4 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 -2LL : 0xf.f7d1fd526c699e377f2b98cbbb18p-4 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e56042p-12 -2LL : 0xf.f7d1fd526c699e377f2b98cbbb1p-4 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e56042p-12 -2LL : 0xf.f7d1fd526c699e377f2b98cbbb18p-4 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e56042p-12 -2LL : 0xf.f7d1fd526c699e377f2b98cbbb1p-4 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e56042p-12 -2LL : 0xf.f7d1fd526c699e377f2b98cbbb18p-4 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 -2LL : 0xf.f7d1fd526c699e377f2b98cbb8p-4 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 -2LL : 0xf.f7d1fd526c699e377f2b98cbbcp-4 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 -2LL : 0xf.f7d1fd526c699e377f2b98cbb8p-4 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 -2LL : 0xf.f7d1fd526c699e377f2b98cbbcp-4 : inexact-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e5604p-12 -2LL : 0xf.f7d1fd526c699e377f2b98cbbb18p-4 : inexact-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e5604p-12 -2LL : 0xf.f7d1fd526c699e377f2b98cbbb18p-4 : inexact-ok
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e5604p-12 -2LL : 0xf.f7d1fd526c699e377f2b98cbbb18p-4 : inexact-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e5604p-12 -2LL : 0xf.f7d1fd526c699e377f2b98cbbb2p-4 : inexact-ok
+= compoundn downward ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 -2LL : 0xf.f7d1fd526c699e377f2b98cbb8p-4 : inexact-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 -2LL : 0xf.f7d1fd526c699e377f2b98cbbcp-4 : inexact-ok
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 -2LL : 0xf.f7d1fd526c699e377f2b98cbb8p-4 : inexact-ok
+= compoundn upward ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 -2LL : 0xf.f7d1fd526c699e377f2b98cbbcp-4 : inexact-ok
+compoundn 0.123456 -2
+= compoundn downward binary32 0x1.f9adp-4 -2LL : 0xc.ad3f5p-4 : inexact-ok
+= compoundn tonearest binary32 0x1.f9adp-4 -2LL : 0xc.ad3f5p-4 : inexact-ok
+= compoundn towardzero binary32 0x1.f9adp-4 -2LL : 0xc.ad3f5p-4 : inexact-ok
+= compoundn upward binary32 0x1.f9adp-4 -2LL : 0xc.ad3f6p-4 : inexact-ok
+= compoundn downward binary64 0x1.f9adp-4 -2LL : 0xc.ad3f55c392878p-4 : inexact-ok
+= compoundn tonearest binary64 0x1.f9adp-4 -2LL : 0xc.ad3f55c392878p-4 : inexact-ok
+= compoundn towardzero binary64 0x1.f9adp-4 -2LL : 0xc.ad3f55c392878p-4 : inexact-ok
+= compoundn upward binary64 0x1.f9adp-4 -2LL : 0xc.ad3f55c39288p-4 : inexact-ok
+= compoundn downward intel96 0x1.f9adp-4 -2LL : 0xc.ad3f55c39287bdep-4 : inexact-ok
+= compoundn tonearest intel96 0x1.f9adp-4 -2LL : 0xc.ad3f55c39287bdfp-4 : inexact-ok
+= compoundn towardzero intel96 0x1.f9adp-4 -2LL : 0xc.ad3f55c39287bdep-4 : inexact-ok
+= compoundn upward intel96 0x1.f9adp-4 -2LL : 0xc.ad3f55c39287bdfp-4 : inexact-ok
+= compoundn downward m68k96 0x1.f9adp-4 -2LL : 0xc.ad3f55c39287bdep-4 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9adp-4 -2LL : 0xc.ad3f55c39287bdfp-4 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9adp-4 -2LL : 0xc.ad3f55c39287bdep-4 : inexact-ok
+= compoundn upward m68k96 0x1.f9adp-4 -2LL : 0xc.ad3f55c39287bdfp-4 : inexact-ok
+= compoundn downward binary128 0x1.f9adp-4 -2LL : 0xc.ad3f55c39287bdefd8bcad15755p-4 : inexact-ok
+= compoundn tonearest binary128 0x1.f9adp-4 -2LL : 0xc.ad3f55c39287bdefd8bcad15755p-4 : inexact-ok
+= compoundn towardzero binary128 0x1.f9adp-4 -2LL : 0xc.ad3f55c39287bdefd8bcad15755p-4 : inexact-ok
+= compoundn upward binary128 0x1.f9adp-4 -2LL : 0xc.ad3f55c39287bdefd8bcad157558p-4 : inexact-ok
+= compoundn downward ibm128 0x1.f9adp-4 -2LL : 0xc.ad3f55c39287bdefd8bcad1574p-4 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9adp-4 -2LL : 0xc.ad3f55c39287bdefd8bcad1574p-4 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9adp-4 -2LL : 0xc.ad3f55c39287bdefd8bcad1574p-4 : inexact-ok
+= compoundn upward ibm128 0x1.f9adp-4 -2LL : 0xc.ad3f55c39287bdefd8bcad1578p-4 : inexact-ok
+= compoundn downward binary32 0x1.f9acfep-4 -2LL : 0xc.ad3f5p-4 : inexact-ok
+= compoundn tonearest binary32 0x1.f9acfep-4 -2LL : 0xc.ad3f6p-4 : inexact-ok
+= compoundn towardzero binary32 0x1.f9acfep-4 -2LL : 0xc.ad3f5p-4 : inexact-ok
+= compoundn upward binary32 0x1.f9acfep-4 -2LL : 0xc.ad3f6p-4 : inexact-ok
+= compoundn downward binary64 0x1.f9acfep-4 -2LL : 0xc.ad3f5895bac7p-4 : inexact-ok
+= compoundn tonearest binary64 0x1.f9acfep-4 -2LL : 0xc.ad3f5895bac7p-4 : inexact-ok
+= compoundn towardzero binary64 0x1.f9acfep-4 -2LL : 0xc.ad3f5895bac7p-4 : inexact-ok
+= compoundn upward binary64 0x1.f9acfep-4 -2LL : 0xc.ad3f5895bac78p-4 : inexact-ok
+= compoundn downward intel96 0x1.f9acfep-4 -2LL : 0xc.ad3f5895bac714p-4 : inexact-ok
+= compoundn tonearest intel96 0x1.f9acfep-4 -2LL : 0xc.ad3f5895bac714p-4 : inexact-ok
+= compoundn towardzero intel96 0x1.f9acfep-4 -2LL : 0xc.ad3f5895bac714p-4 : inexact-ok
+= compoundn upward intel96 0x1.f9acfep-4 -2LL : 0xc.ad3f5895bac7141p-4 : inexact-ok
+= compoundn downward m68k96 0x1.f9acfep-4 -2LL : 0xc.ad3f5895bac714p-4 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9acfep-4 -2LL : 0xc.ad3f5895bac714p-4 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9acfep-4 -2LL : 0xc.ad3f5895bac714p-4 : inexact-ok
+= compoundn upward m68k96 0x1.f9acfep-4 -2LL : 0xc.ad3f5895bac7141p-4 : inexact-ok
+= compoundn downward binary128 0x1.f9acfep-4 -2LL : 0xc.ad3f5895bac71402865853dc8ee8p-4 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acfep-4 -2LL : 0xc.ad3f5895bac71402865853dc8efp-4 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acfep-4 -2LL : 0xc.ad3f5895bac71402865853dc8ee8p-4 : inexact-ok
+= compoundn upward binary128 0x1.f9acfep-4 -2LL : 0xc.ad3f5895bac71402865853dc8efp-4 : inexact-ok
+= compoundn downward ibm128 0x1.f9acfep-4 -2LL : 0xc.ad3f5895bac71402865853dc8cp-4 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acfep-4 -2LL : 0xc.ad3f5895bac71402865853dc9p-4 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acfep-4 -2LL : 0xc.ad3f5895bac71402865853dc8cp-4 : inexact-ok
+= compoundn upward ibm128 0x1.f9acfep-4 -2LL : 0xc.ad3f5895bac71402865853dc9p-4 : inexact-ok
+= compoundn downward binary64 0x1.f9acffa7eb6cp-4 -2LL : 0xc.ad3f563fce788p-4 : inexact-ok
+= compoundn tonearest binary64 0x1.f9acffa7eb6cp-4 -2LL : 0xc.ad3f563fce79p-4 : inexact-ok
+= compoundn towardzero binary64 0x1.f9acffa7eb6cp-4 -2LL : 0xc.ad3f563fce788p-4 : inexact-ok
+= compoundn upward binary64 0x1.f9acffa7eb6cp-4 -2LL : 0xc.ad3f563fce79p-4 : inexact-ok
+= compoundn downward intel96 0x1.f9acffa7eb6cp-4 -2LL : 0xc.ad3f563fce78e1ap-4 : inexact-ok
+= compoundn tonearest intel96 0x1.f9acffa7eb6cp-4 -2LL : 0xc.ad3f563fce78e1bp-4 : inexact-ok
+= compoundn towardzero intel96 0x1.f9acffa7eb6cp-4 -2LL : 0xc.ad3f563fce78e1ap-4 : inexact-ok
+= compoundn upward intel96 0x1.f9acffa7eb6cp-4 -2LL : 0xc.ad3f563fce78e1bp-4 : inexact-ok
+= compoundn downward m68k96 0x1.f9acffa7eb6cp-4 -2LL : 0xc.ad3f563fce78e1ap-4 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9acffa7eb6cp-4 -2LL : 0xc.ad3f563fce78e1bp-4 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9acffa7eb6cp-4 -2LL : 0xc.ad3f563fce78e1ap-4 : inexact-ok
+= compoundn upward m68k96 0x1.f9acffa7eb6cp-4 -2LL : 0xc.ad3f563fce78e1bp-4 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6cp-4 -2LL : 0xc.ad3f563fce78e1abebd742563c5p-4 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6cp-4 -2LL : 0xc.ad3f563fce78e1abebd742563c5p-4 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6cp-4 -2LL : 0xc.ad3f563fce78e1abebd742563c5p-4 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6cp-4 -2LL : 0xc.ad3f563fce78e1abebd742563c58p-4 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6cp-4 -2LL : 0xc.ad3f563fce78e1abebd742563cp-4 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6cp-4 -2LL : 0xc.ad3f563fce78e1abebd742563cp-4 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6cp-4 -2LL : 0xc.ad3f563fce78e1abebd742563cp-4 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6cp-4 -2LL : 0xc.ad3f563fce78e1abebd742564p-4 : inexact-ok
+= compoundn downward binary64 0x1.f9acffa7eb6bfp-4 -2LL : 0xc.ad3f563fce788p-4 : inexact-ok
+= compoundn tonearest binary64 0x1.f9acffa7eb6bfp-4 -2LL : 0xc.ad3f563fce79p-4 : inexact-ok
+= compoundn towardzero binary64 0x1.f9acffa7eb6bfp-4 -2LL : 0xc.ad3f563fce788p-4 : inexact-ok
+= compoundn upward binary64 0x1.f9acffa7eb6bfp-4 -2LL : 0xc.ad3f563fce79p-4 : inexact-ok
+= compoundn downward intel96 0x1.f9acffa7eb6bfp-4 -2LL : 0xc.ad3f563fce78f83p-4 : inexact-ok
+= compoundn tonearest intel96 0x1.f9acffa7eb6bfp-4 -2LL : 0xc.ad3f563fce78f84p-4 : inexact-ok
+= compoundn towardzero intel96 0x1.f9acffa7eb6bfp-4 -2LL : 0xc.ad3f563fce78f83p-4 : inexact-ok
+= compoundn upward intel96 0x1.f9acffa7eb6bfp-4 -2LL : 0xc.ad3f563fce78f84p-4 : inexact-ok
+= compoundn downward m68k96 0x1.f9acffa7eb6bfp-4 -2LL : 0xc.ad3f563fce78f83p-4 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9acffa7eb6bfp-4 -2LL : 0xc.ad3f563fce78f84p-4 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9acffa7eb6bfp-4 -2LL : 0xc.ad3f563fce78f83p-4 : inexact-ok
+= compoundn upward m68k96 0x1.f9acffa7eb6bfp-4 -2LL : 0xc.ad3f563fce78f84p-4 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bfp-4 -2LL : 0xc.ad3f563fce78f83d2dcf7a77a25p-4 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bfp-4 -2LL : 0xc.ad3f563fce78f83d2dcf7a77a25p-4 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bfp-4 -2LL : 0xc.ad3f563fce78f83d2dcf7a77a25p-4 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bfp-4 -2LL : 0xc.ad3f563fce78f83d2dcf7a77a258p-4 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bfp-4 -2LL : 0xc.ad3f563fce78f83d2dcf7a77ap-4 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bfp-4 -2LL : 0xc.ad3f563fce78f83d2dcf7a77a4p-4 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bfp-4 -2LL : 0xc.ad3f563fce78f83d2dcf7a77ap-4 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bfp-4 -2LL : 0xc.ad3f563fce78f83d2dcf7a77a4p-4 : inexact-ok
+= compoundn downward intel96 0x1.f9acffa7eb6bf446p-4 -2LL : 0xc.ad3f563fce78f23p-4 : inexact-ok
+= compoundn tonearest intel96 0x1.f9acffa7eb6bf446p-4 -2LL : 0xc.ad3f563fce78f23p-4 : inexact-ok
+= compoundn towardzero intel96 0x1.f9acffa7eb6bf446p-4 -2LL : 0xc.ad3f563fce78f23p-4 : inexact-ok
+= compoundn upward intel96 0x1.f9acffa7eb6bf446p-4 -2LL : 0xc.ad3f563fce78f24p-4 : inexact-ok
+= compoundn downward m68k96 0x1.f9acffa7eb6bf446p-4 -2LL : 0xc.ad3f563fce78f23p-4 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9acffa7eb6bf446p-4 -2LL : 0xc.ad3f563fce78f23p-4 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9acffa7eb6bf446p-4 -2LL : 0xc.ad3f563fce78f23p-4 : inexact-ok
+= compoundn upward m68k96 0x1.f9acffa7eb6bf446p-4 -2LL : 0xc.ad3f563fce78f24p-4 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf446p-4 -2LL : 0xc.ad3f563fce78f23621d0ce79b6a8p-4 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf446p-4 -2LL : 0xc.ad3f563fce78f23621d0ce79b6bp-4 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf446p-4 -2LL : 0xc.ad3f563fce78f23621d0ce79b6a8p-4 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf446p-4 -2LL : 0xc.ad3f563fce78f23621d0ce79b6bp-4 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bf446p-4 -2LL : 0xc.ad3f563fce78f23621d0ce79b4p-4 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf446p-4 -2LL : 0xc.ad3f563fce78f23621d0ce79b8p-4 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf446p-4 -2LL : 0xc.ad3f563fce78f23621d0ce79b4p-4 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bf446p-4 -2LL : 0xc.ad3f563fce78f23621d0ce79b8p-4 : inexact-ok
+= compoundn downward intel96 0x1.f9acffa7eb6bf444p-4 -2LL : 0xc.ad3f563fce78f23p-4 : inexact-ok
+= compoundn tonearest intel96 0x1.f9acffa7eb6bf444p-4 -2LL : 0xc.ad3f563fce78f24p-4 : inexact-ok
+= compoundn towardzero intel96 0x1.f9acffa7eb6bf444p-4 -2LL : 0xc.ad3f563fce78f23p-4 : inexact-ok
+= compoundn upward intel96 0x1.f9acffa7eb6bf444p-4 -2LL : 0xc.ad3f563fce78f24p-4 : inexact-ok
+= compoundn downward m68k96 0x1.f9acffa7eb6bf444p-4 -2LL : 0xc.ad3f563fce78f23p-4 : inexact-ok
+= compoundn tonearest m68k96 0x1.f9acffa7eb6bf444p-4 -2LL : 0xc.ad3f563fce78f24p-4 : inexact-ok
+= compoundn towardzero m68k96 0x1.f9acffa7eb6bf444p-4 -2LL : 0xc.ad3f563fce78f23p-4 : inexact-ok
+= compoundn upward m68k96 0x1.f9acffa7eb6bf444p-4 -2LL : 0xc.ad3f563fce78f24p-4 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444p-4 -2LL : 0xc.ad3f563fce78f238f3f90d80bad8p-4 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444p-4 -2LL : 0xc.ad3f563fce78f238f3f90d80baep-4 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444p-4 -2LL : 0xc.ad3f563fce78f238f3f90d80bad8p-4 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444p-4 -2LL : 0xc.ad3f563fce78f238f3f90d80baep-4 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bf444p-4 -2LL : 0xc.ad3f563fce78f238f3f90d80b8p-4 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf444p-4 -2LL : 0xc.ad3f563fce78f238f3f90d80bcp-4 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf444p-4 -2LL : 0xc.ad3f563fce78f238f3f90d80b8p-4 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bf444p-4 -2LL : 0xc.ad3f563fce78f238f3f90d80bcp-4 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 -2LL : 0xc.ad3f563fce78f237b6d3140010bp-4 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 -2LL : 0xc.ad3f563fce78f237b6d3140010bp-4 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 -2LL : 0xc.ad3f563fce78f237b6d3140010bp-4 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 -2LL : 0xc.ad3f563fce78f237b6d3140010b8p-4 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 -2LL : 0xc.ad3f563fce78f237b6d3140010bp-4 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 -2LL : 0xc.ad3f563fce78f237b6d3140010bp-4 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 -2LL : 0xc.ad3f563fce78f237b6d3140010bp-4 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 -2LL : 0xc.ad3f563fce78f237b6d3140010b8p-4 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 -2LL : 0xc.ad3f563fce78f237b6d314001058p-4 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 -2LL : 0xc.ad3f563fce78f237b6d31400106p-4 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 -2LL : 0xc.ad3f563fce78f237b6d314001058p-4 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 -2LL : 0xc.ad3f563fce78f237b6d31400106p-4 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 -2LL : 0xc.ad3f563fce78f237b6d314001p-4 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 -2LL : 0xc.ad3f563fce78f237b6d314001p-4 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 -2LL : 0xc.ad3f563fce78f237b6d314001p-4 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 -2LL : 0xc.ad3f563fce78f237b6d3140014p-4 : inexact-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 -2LL : 0xc.ad3f563fce78f237b6d31400111p-4 : inexact-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 -2LL : 0xc.ad3f563fce78f237b6d31400111p-4 : inexact-ok
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 -2LL : 0xc.ad3f563fce78f237b6d31400111p-4 : inexact-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 -2LL : 0xc.ad3f563fce78f237b6d314001118p-4 : inexact-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 -2LL : 0xc.ad3f563fce78f237b6d314001p-4 : inexact-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 -2LL : 0xc.ad3f563fce78f237b6d314001p-4 : inexact-ok
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 -2LL : 0xc.ad3f563fce78f237b6d314001p-4 : inexact-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 -2LL : 0xc.ad3f563fce78f237b6d3140014p-4 : inexact-ok
+compoundn 1 -2
+= compoundn downward binary32 0x1p+0 -2LL : 0x4p-4 : inexact-ok
+= compoundn tonearest binary32 0x1p+0 -2LL : 0x4p-4 : inexact-ok
+= compoundn towardzero binary32 0x1p+0 -2LL : 0x4p-4 : inexact-ok
+= compoundn upward binary32 0x1p+0 -2LL : 0x4p-4 : inexact-ok
+= compoundn downward binary64 0x1p+0 -2LL : 0x4p-4 : inexact-ok
+= compoundn tonearest binary64 0x1p+0 -2LL : 0x4p-4 : inexact-ok
+= compoundn towardzero binary64 0x1p+0 -2LL : 0x4p-4 : inexact-ok
+= compoundn upward binary64 0x1p+0 -2LL : 0x4p-4 : inexact-ok
+= compoundn downward intel96 0x1p+0 -2LL : 0x4p-4 : inexact-ok
+= compoundn tonearest intel96 0x1p+0 -2LL : 0x4p-4 : inexact-ok
+= compoundn towardzero intel96 0x1p+0 -2LL : 0x4p-4 : inexact-ok
+= compoundn upward intel96 0x1p+0 -2LL : 0x4p-4 : inexact-ok
+= compoundn downward m68k96 0x1p+0 -2LL : 0x4p-4 : inexact-ok
+= compoundn tonearest m68k96 0x1p+0 -2LL : 0x4p-4 : inexact-ok
+= compoundn towardzero m68k96 0x1p+0 -2LL : 0x4p-4 : inexact-ok
+= compoundn upward m68k96 0x1p+0 -2LL : 0x4p-4 : inexact-ok
+= compoundn downward binary128 0x1p+0 -2LL : 0x4p-4 : inexact-ok
+= compoundn tonearest binary128 0x1p+0 -2LL : 0x4p-4 : inexact-ok
+= compoundn towardzero binary128 0x1p+0 -2LL : 0x4p-4 : inexact-ok
+= compoundn upward binary128 0x1p+0 -2LL : 0x4p-4 : inexact-ok
+= compoundn downward ibm128 0x1p+0 -2LL : 0x4p-4 : inexact-ok
+= compoundn tonearest ibm128 0x1p+0 -2LL : 0x4p-4 : inexact-ok
+= compoundn towardzero ibm128 0x1p+0 -2LL : 0x4p-4 : inexact-ok
+= compoundn upward ibm128 0x1p+0 -2LL : 0x4p-4 : inexact-ok
+compoundn 2 -2
+= compoundn downward binary32 0x2p+0 -2LL : 0x1.c71c7p-4 : inexact-ok
+= compoundn tonearest binary32 0x2p+0 -2LL : 0x1.c71c72p-4 : inexact-ok
+= compoundn towardzero binary32 0x2p+0 -2LL : 0x1.c71c7p-4 : inexact-ok
+= compoundn upward binary32 0x2p+0 -2LL : 0x1.c71c72p-4 : inexact-ok
+= compoundn downward binary64 0x2p+0 -2LL : 0x1.c71c71c71c71cp-4 : inexact-ok
+= compoundn tonearest binary64 0x2p+0 -2LL : 0x1.c71c71c71c71cp-4 : inexact-ok
+= compoundn towardzero binary64 0x2p+0 -2LL : 0x1.c71c71c71c71cp-4 : inexact-ok
+= compoundn upward binary64 0x2p+0 -2LL : 0x1.c71c71c71c71dp-4 : inexact-ok
+= compoundn downward intel96 0x2p+0 -2LL : 0x1.c71c71c71c71c71cp-4 : inexact-ok
+= compoundn tonearest intel96 0x2p+0 -2LL : 0x1.c71c71c71c71c71cp-4 : inexact-ok
+= compoundn towardzero intel96 0x2p+0 -2LL : 0x1.c71c71c71c71c71cp-4 : inexact-ok
+= compoundn upward intel96 0x2p+0 -2LL : 0x1.c71c71c71c71c71ep-4 : inexact-ok
+= compoundn downward m68k96 0x2p+0 -2LL : 0x1.c71c71c71c71c71cp-4 : inexact-ok
+= compoundn tonearest m68k96 0x2p+0 -2LL : 0x1.c71c71c71c71c71cp-4 : inexact-ok
+= compoundn towardzero m68k96 0x2p+0 -2LL : 0x1.c71c71c71c71c71cp-4 : inexact-ok
+= compoundn upward m68k96 0x2p+0 -2LL : 0x1.c71c71c71c71c71ep-4 : inexact-ok
+= compoundn downward binary128 0x2p+0 -2LL : 0x1.c71c71c71c71c71c71c71c71c71cp-4 : inexact-ok
+= compoundn tonearest binary128 0x2p+0 -2LL : 0x1.c71c71c71c71c71c71c71c71c71cp-4 : inexact-ok
+= compoundn towardzero binary128 0x2p+0 -2LL : 0x1.c71c71c71c71c71c71c71c71c71cp-4 : inexact-ok
+= compoundn upward binary128 0x2p+0 -2LL : 0x1.c71c71c71c71c71c71c71c71c71dp-4 : inexact-ok
+= compoundn downward ibm128 0x2p+0 -2LL : 0x1.c71c71c71c71c71c71c71c71c7p-4 : inexact-ok
+= compoundn tonearest ibm128 0x2p+0 -2LL : 0x1.c71c71c71c71c71c71c71c71c7p-4 : inexact-ok
+= compoundn towardzero ibm128 0x2p+0 -2LL : 0x1.c71c71c71c71c71c71c71c71c7p-4 : inexact-ok
+= compoundn upward ibm128 0x2p+0 -2LL : 0x1.c71c71c71c71c71c71c71c71c78p-4 : inexact-ok
+compoundn max -2
+= compoundn downward binary32 0xf.fffffp+124 -2LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 0xf.fffffp+124 -2LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 0xf.fffffp+124 -2LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 0xf.fffffp+124 -2LL : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0xf.fffffp+124 -2LL : 0x1.000002000003p-256 : inexact-ok
+= compoundn tonearest binary64 0xf.fffffp+124 -2LL : 0x1.000002000003p-256 : inexact-ok
+= compoundn towardzero binary64 0xf.fffffp+124 -2LL : 0x1.000002000003p-256 : inexact-ok
+= compoundn upward binary64 0xf.fffffp+124 -2LL : 0x1.0000020000031p-256 : inexact-ok
+= compoundn downward intel96 0xf.fffffp+124 -2LL : 0x1.000002000003p-256 : inexact-ok
+= compoundn tonearest intel96 0xf.fffffp+124 -2LL : 0x1.000002000003p-256 : inexact-ok
+= compoundn towardzero intel96 0xf.fffffp+124 -2LL : 0x1.000002000003p-256 : inexact-ok
+= compoundn upward intel96 0xf.fffffp+124 -2LL : 0x1.0000020000030002p-256 : inexact-ok
+= compoundn downward m68k96 0xf.fffffp+124 -2LL : 0x1.000002000003p-256 : inexact-ok
+= compoundn tonearest m68k96 0xf.fffffp+124 -2LL : 0x1.000002000003p-256 : inexact-ok
+= compoundn towardzero m68k96 0xf.fffffp+124 -2LL : 0x1.000002000003p-256 : inexact-ok
+= compoundn upward m68k96 0xf.fffffp+124 -2LL : 0x1.0000020000030002p-256 : inexact-ok
+= compoundn downward binary128 0xf.fffffp+124 -2LL : 0x1.000002000003000004000005p-256 : inexact-ok
+= compoundn tonearest binary128 0xf.fffffp+124 -2LL : 0x1.000002000003000004000005p-256 : inexact-ok
+= compoundn towardzero binary128 0xf.fffffp+124 -2LL : 0x1.000002000003000004000005p-256 : inexact-ok
+= compoundn upward binary128 0xf.fffffp+124 -2LL : 0x1.0000020000030000040000050001p-256 : inexact-ok
+= compoundn downward ibm128 0xf.fffffp+124 -2LL : 0x1.000002000003000004000005p-256 : inexact-ok
+= compoundn tonearest ibm128 0xf.fffffp+124 -2LL : 0x1.000002000003000004000005p-256 : inexact-ok
+= compoundn towardzero ibm128 0xf.fffffp+124 -2LL : 0x1.000002000003000004000005p-256 : inexact-ok
+= compoundn upward ibm128 0xf.fffffp+124 -2LL : 0x1.000002000003000004000005008p-256 : inexact-ok
+= compoundn downward binary64 0xf.ffffffffffff8p+1020 -2LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 0xf.ffffffffffff8p+1020 -2LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 0xf.ffffffffffff8p+1020 -2LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 0xf.ffffffffffff8p+1020 -2LL : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0xf.ffffffffffff8p+1020 -2LL : 0x1.0000000000001p-2048 : inexact-ok
+= compoundn tonearest intel96 0xf.ffffffffffff8p+1020 -2LL : 0x1.0000000000001p-2048 : inexact-ok
+= compoundn towardzero intel96 0xf.ffffffffffff8p+1020 -2LL : 0x1.0000000000001p-2048 : inexact-ok
+= compoundn upward intel96 0xf.ffffffffffff8p+1020 -2LL : 0x1.0000000000001002p-2048 : inexact-ok
+= compoundn downward m68k96 0xf.ffffffffffff8p+1020 -2LL : 0x1.0000000000001p-2048 : inexact-ok
+= compoundn tonearest m68k96 0xf.ffffffffffff8p+1020 -2LL : 0x1.0000000000001p-2048 : inexact-ok
+= compoundn towardzero m68k96 0xf.ffffffffffff8p+1020 -2LL : 0x1.0000000000001p-2048 : inexact-ok
+= compoundn upward m68k96 0xf.ffffffffffff8p+1020 -2LL : 0x1.0000000000001002p-2048 : inexact-ok
+= compoundn downward binary128 0xf.ffffffffffff8p+1020 -2LL : 0x1.00000000000010000000000000cp-2048 : inexact-ok
+= compoundn tonearest binary128 0xf.ffffffffffff8p+1020 -2LL : 0x1.00000000000010000000000000cp-2048 : inexact-ok
+= compoundn towardzero binary128 0xf.ffffffffffff8p+1020 -2LL : 0x1.00000000000010000000000000cp-2048 : inexact-ok
+= compoundn upward binary128 0xf.ffffffffffff8p+1020 -2LL : 0x1.00000000000010000000000000c1p-2048 : inexact-ok
+= compoundn downward ibm128 0xf.ffffffffffff8p+1020 -2LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0xf.ffffffffffff8p+1020 -2LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0xf.ffffffffffff8p+1020 -2LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0xf.ffffffffffff8p+1020 -2LL : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0xf.fffffffffffffffp+16380 -2LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 0xf.fffffffffffffffp+16380 -2LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 0xf.fffffffffffffffp+16380 -2LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 0xf.fffffffffffffffp+16380 -2LL : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 0xf.fffffffffffffffp+16380 -2LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 0xf.fffffffffffffffp+16380 -2LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 0xf.fffffffffffffffp+16380 -2LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 0xf.fffffffffffffffp+16380 -2LL : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0xf.fffffffffffffffp+16380 -2LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0xf.fffffffffffffffp+16380 -2LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0xf.fffffffffffffffp+16380 -2LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0xf.fffffffffffffffp+16380 -2LL : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -2LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 -2LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 -2LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -2LL : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -2LL : 0x1.00000000000008000000000000bp-2048 : inexact-ok
+= compoundn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 -2LL : 0x1.00000000000008000000000000bp-2048 : inexact-ok
+= compoundn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 -2LL : 0x1.00000000000008000000000000bp-2048 : inexact-ok
+= compoundn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -2LL : 0x1.00000000000008000000000000b1p-2048 : inexact-ok
+= compoundn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -2LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -2LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -2LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -2LL : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+compoundn -1 0x7fffffffffffffff
+= compoundn downward binary32 -0x1p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= compoundn tonearest binary32 -0x1p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= compoundn towardzero binary32 -0x1p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= compoundn upward binary32 -0x1p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= compoundn downward binary64 -0x1p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= compoundn tonearest binary64 -0x1p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= compoundn towardzero binary64 -0x1p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= compoundn upward binary64 -0x1p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= compoundn downward intel96 -0x1p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= compoundn tonearest intel96 -0x1p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= compoundn towardzero intel96 -0x1p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= compoundn upward intel96 -0x1p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= compoundn downward m68k96 -0x1p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x1p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x1p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= compoundn upward m68k96 -0x1p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= compoundn downward binary128 -0x1p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= compoundn upward binary128 -0x1p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= compoundn downward ibm128 -0x1p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= compoundn upward ibm128 -0x1p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+compoundn -0.999 0x7fffffffffffffff
+= compoundn downward binary32 -0xf.fbe76p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 -0xf.fbe76p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 -0xf.fbe76p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 -0xf.fbe76p-4 9223372036854775807LL : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 -0xf.fbe76p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 -0xf.fbe76p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 -0xf.fbe76p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 -0xf.fbe76p-4 9223372036854775807LL : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 -0xf.fbe76p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 -0xf.fbe76p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 -0xf.fbe76p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 -0xf.fbe76p-4 9223372036854775807LL : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 -0xf.fbe76p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 -0xf.fbe76p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 -0xf.fbe76p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 -0xf.fbe76p-4 9223372036854775807LL : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 -0xf.fbe76p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 -0xf.fbe76p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 -0xf.fbe76p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 -0xf.fbe76p-4 9223372036854775807LL : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 -0xf.fbe76p-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 -0xf.fbe76p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 -0xf.fbe76p-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 -0xf.fbe76p-4 9223372036854775807LL : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward binary32 -0xf.fbe77p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 -0xf.fbe77p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 -0xf.fbe77p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 -0xf.fbe77p-4 9223372036854775807LL : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 -0xf.fbe77p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 -0xf.fbe77p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 -0xf.fbe77p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 -0xf.fbe77p-4 9223372036854775807LL : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 -0xf.fbe77p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 -0xf.fbe77p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 -0xf.fbe77p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 -0xf.fbe77p-4 9223372036854775807LL : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 -0xf.fbe77p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 -0xf.fbe77p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 -0xf.fbe77p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 -0xf.fbe77p-4 9223372036854775807LL : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 -0xf.fbe77p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 -0xf.fbe77p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 -0xf.fbe77p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 -0xf.fbe77p-4 9223372036854775807LL : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 -0xf.fbe77p-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 -0xf.fbe77p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 -0xf.fbe77p-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 -0xf.fbe77p-4 9223372036854775807LL : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 -0xf.fbe76c8b43958p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 -0xf.fbe76c8b43958p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 -0xf.fbe76c8b43958p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 -0xf.fbe76c8b43958p-4 9223372036854775807LL : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 -0xf.fbe76c8b43958p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 -0xf.fbe76c8b43958p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 -0xf.fbe76c8b43958p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 -0xf.fbe76c8b43958p-4 9223372036854775807LL : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 -0xf.fbe76c8b43958p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 -0xf.fbe76c8b43958p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 -0xf.fbe76c8b43958p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 -0xf.fbe76c8b43958p-4 9223372036854775807LL : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 -0xf.fbe76c8b43958p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 -0xf.fbe76c8b43958p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 -0xf.fbe76c8b43958p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 -0xf.fbe76c8b43958p-4 9223372036854775807LL : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 -0xf.fbe76c8b43958p-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 -0xf.fbe76c8b43958p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 -0xf.fbe76c8b43958p-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 -0xf.fbe76c8b43958p-4 9223372036854775807LL : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 -0xf.fbe76c8b4396p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 -0xf.fbe76c8b4396p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 -0xf.fbe76c8b4396p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 -0xf.fbe76c8b4396p-4 9223372036854775807LL : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 -0xf.fbe76c8b4396p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 -0xf.fbe76c8b4396p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 -0xf.fbe76c8b4396p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 -0xf.fbe76c8b4396p-4 9223372036854775807LL : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 -0xf.fbe76c8b4396p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 -0xf.fbe76c8b4396p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 -0xf.fbe76c8b4396p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 -0xf.fbe76c8b4396p-4 9223372036854775807LL : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 -0xf.fbe76c8b4396p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 -0xf.fbe76c8b4396p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 -0xf.fbe76c8b4396p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 -0xf.fbe76c8b4396p-4 9223372036854775807LL : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 -0xf.fbe76c8b4396p-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 -0xf.fbe76c8b4396p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 -0xf.fbe76c8b4396p-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 -0xf.fbe76c8b4396p-4 9223372036854775807LL : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 -0xf.fbe76c8b439581p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 -0xf.fbe76c8b439581p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 -0xf.fbe76c8b439581p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 -0xf.fbe76c8b439581p-4 9223372036854775807LL : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 -0xf.fbe76c8b439581p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 -0xf.fbe76c8b439581p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 -0xf.fbe76c8b439581p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 -0xf.fbe76c8b439581p-4 9223372036854775807LL : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 -0xf.fbe76c8b439581p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 -0xf.fbe76c8b439581p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 -0xf.fbe76c8b439581p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 -0xf.fbe76c8b439581p-4 9223372036854775807LL : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 -0xf.fbe76c8b439581p-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 -0xf.fbe76c8b439581p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 -0xf.fbe76c8b439581p-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 -0xf.fbe76c8b439581p-4 9223372036854775807LL : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 -0xf.fbe76c8b4395811p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 -0xf.fbe76c8b4395811p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 -0xf.fbe76c8b4395811p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 -0xf.fbe76c8b4395811p-4 9223372036854775807LL : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 -0xf.fbe76c8b4395811p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 -0xf.fbe76c8b4395811p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 -0xf.fbe76c8b4395811p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 -0xf.fbe76c8b4395811p-4 9223372036854775807LL : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395811p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 -0xf.fbe76c8b4395811p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 -0xf.fbe76c8b4395811p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 -0xf.fbe76c8b4395811p-4 9223372036854775807LL : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 -0xf.fbe76c8b4395811p-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 -0xf.fbe76c8b4395811p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 -0xf.fbe76c8b4395811p-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 -0xf.fbe76c8b4395811p-4 9223372036854775807LL : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 9223372036854775807LL : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 9223372036854775807LL : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 9223372036854775807LL : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 9223372036854775807LL : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 9223372036854775807LL : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 9223372036854775807LL : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+compoundn -0.123 0x7fffffffffffffff
+= compoundn downward binary32 -0x1.f7ced8p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 -0x1.f7ced8p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 -0x1.f7ced8p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 -0x1.f7ced8p-4 9223372036854775807LL : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 -0x1.f7ced8p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 -0x1.f7ced8p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 -0x1.f7ced8p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 -0x1.f7ced8p-4 9223372036854775807LL : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 -0x1.f7ced8p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 -0x1.f7ced8p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 -0x1.f7ced8p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 -0x1.f7ced8p-4 9223372036854775807LL : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 -0x1.f7ced8p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 -0x1.f7ced8p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 -0x1.f7ced8p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 -0x1.f7ced8p-4 9223372036854775807LL : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 -0x1.f7ced8p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 -0x1.f7ced8p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 -0x1.f7ced8p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 -0x1.f7ced8p-4 9223372036854775807LL : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 -0x1.f7ced8p-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 -0x1.f7ced8p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 -0x1.f7ced8p-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 -0x1.f7ced8p-4 9223372036854775807LL : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward binary32 -0x1.f7cedap-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 -0x1.f7cedap-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 -0x1.f7cedap-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 -0x1.f7cedap-4 9223372036854775807LL : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 -0x1.f7cedap-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 -0x1.f7cedap-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 -0x1.f7cedap-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 -0x1.f7cedap-4 9223372036854775807LL : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 -0x1.f7cedap-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 -0x1.f7cedap-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 -0x1.f7cedap-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 -0x1.f7cedap-4 9223372036854775807LL : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 -0x1.f7cedap-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 -0x1.f7cedap-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 -0x1.f7cedap-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 -0x1.f7cedap-4 9223372036854775807LL : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 -0x1.f7cedap-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 -0x1.f7cedap-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 -0x1.f7cedap-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 -0x1.f7cedap-4 9223372036854775807LL : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 -0x1.f7cedap-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 -0x1.f7cedap-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 -0x1.f7cedap-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 -0x1.f7cedap-4 9223372036854775807LL : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 -0x1.f7ced916872bp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 -0x1.f7ced916872bp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 -0x1.f7ced916872bp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 -0x1.f7ced916872bp-4 9223372036854775807LL : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 -0x1.f7ced916872bp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 -0x1.f7ced916872bp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 -0x1.f7ced916872bp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 -0x1.f7ced916872bp-4 9223372036854775807LL : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 -0x1.f7ced916872bp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 -0x1.f7ced916872bp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 -0x1.f7ced916872bp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 -0x1.f7ced916872bp-4 9223372036854775807LL : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 -0x1.f7ced916872bp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 -0x1.f7ced916872bp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 -0x1.f7ced916872bp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 -0x1.f7ced916872bp-4 9223372036854775807LL : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 -0x1.f7ced916872bp-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 -0x1.f7ced916872bp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 -0x1.f7ced916872bp-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 -0x1.f7ced916872bp-4 9223372036854775807LL : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 -0x1.f7ced916872b1p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 -0x1.f7ced916872b1p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 -0x1.f7ced916872b1p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 -0x1.f7ced916872b1p-4 9223372036854775807LL : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 -0x1.f7ced916872b1p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 -0x1.f7ced916872b1p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 -0x1.f7ced916872b1p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 -0x1.f7ced916872b1p-4 9223372036854775807LL : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 -0x1.f7ced916872b1p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 -0x1.f7ced916872b1p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 -0x1.f7ced916872b1p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 -0x1.f7ced916872b1p-4 9223372036854775807LL : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 -0x1.f7ced916872b1p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 -0x1.f7ced916872b1p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 -0x1.f7ced916872b1p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 -0x1.f7ced916872b1p-4 9223372036854775807LL : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 -0x1.f7ced916872b1p-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 -0x1.f7ced916872b1p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 -0x1.f7ced916872b1p-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 -0x1.f7ced916872b1p-4 9223372036854775807LL : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 -0x1.f7ced916872b020cp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 -0x1.f7ced916872b020cp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 -0x1.f7ced916872b020cp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 -0x1.f7ced916872b020cp-4 9223372036854775807LL : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 -0x1.f7ced916872b020cp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 -0x1.f7ced916872b020cp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 -0x1.f7ced916872b020cp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 -0x1.f7ced916872b020cp-4 9223372036854775807LL : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 -0x1.f7ced916872b020cp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 -0x1.f7ced916872b020cp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 -0x1.f7ced916872b020cp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 -0x1.f7ced916872b020cp-4 9223372036854775807LL : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 -0x1.f7ced916872b020cp-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 -0x1.f7ced916872b020cp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 -0x1.f7ced916872b020cp-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 -0x1.f7ced916872b020cp-4 9223372036854775807LL : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 -0x1.f7ced916872b020ep-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 -0x1.f7ced916872b020ep-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 -0x1.f7ced916872b020ep-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 -0x1.f7ced916872b020ep-4 9223372036854775807LL : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 -0x1.f7ced916872b020ep-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 -0x1.f7ced916872b020ep-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 -0x1.f7ced916872b020ep-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 -0x1.f7ced916872b020ep-4 9223372036854775807LL : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 -0x1.f7ced916872b020ep-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 -0x1.f7ced916872b020ep-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 -0x1.f7ced916872b020ep-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 -0x1.f7ced916872b020ep-4 9223372036854775807LL : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 -0x1.f7ced916872b020ep-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 -0x1.f7ced916872b020ep-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 -0x1.f7ced916872b020ep-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 -0x1.f7ced916872b020ep-4 9223372036854775807LL : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 9223372036854775807LL : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 9223372036854775807LL : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353fp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353fp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353fp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353fp-4 9223372036854775807LL : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 9223372036854775807LL : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 9223372036854775807LL : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 9223372036854775807LL : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+compoundn -min 0x7fffffffffffffff
+= compoundn downward binary32 -0x4p-128 9223372036854775807LL : 0xf.fffffp-4 : inexact-ok
+= compoundn tonearest binary32 -0x4p-128 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 -0x4p-128 9223372036854775807LL : 0xf.fffffp-4 : inexact-ok
+= compoundn upward binary32 -0x4p-128 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x4p-128 9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 -0x4p-128 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x4p-128 9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 -0x4p-128 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-128 9223372036854775807LL : 0xf.ffffffffffffffep-4 : inexact-ok
+= compoundn tonearest intel96 -0x4p-128 9223372036854775807LL : 0xf.ffffffffffffffep-4 : inexact-ok
+= compoundn towardzero intel96 -0x4p-128 9223372036854775807LL : 0xf.ffffffffffffffep-4 : inexact-ok
+= compoundn upward intel96 -0x4p-128 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn downward m68k96 -0x4p-128 9223372036854775807LL : 0xf.ffffffffffffffep-4 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-128 9223372036854775807LL : 0xf.ffffffffffffffep-4 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-128 9223372036854775807LL : 0xf.ffffffffffffffep-4 : inexact-ok
+= compoundn upward m68k96 -0x4p-128 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn downward binary128 -0x4p-128 9223372036854775807LL : 0xf.ffffffffffffffep-4 : inexact-ok
+= compoundn tonearest binary128 -0x4p-128 9223372036854775807LL : 0xf.ffffffffffffffep-4 : inexact-ok
+= compoundn towardzero binary128 -0x4p-128 9223372036854775807LL : 0xf.ffffffffffffffep-4 : inexact-ok
+= compoundn upward binary128 -0x4p-128 9223372036854775807LL : 0xf.ffffffffffffffe0000000000008p-4 : inexact-ok
+= compoundn downward ibm128 -0x4p-128 9223372036854775807LL : 0xf.ffffffffffffffep-4 : inexact-ok
+= compoundn tonearest ibm128 -0x4p-128 9223372036854775807LL : 0xf.ffffffffffffffep-4 : inexact-ok
+= compoundn towardzero ibm128 -0x4p-128 9223372036854775807LL : 0xf.ffffffffffffffep-4 : inexact-ok
+= compoundn upward ibm128 -0x4p-128 9223372036854775807LL : 0xf.ffffffffffffffe00000000004p-4 : inexact-ok
+= compoundn downward binary64 -0x4p-1024 9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 -0x4p-1024 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x4p-1024 9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 -0x4p-1024 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-1024 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 -0x4p-1024 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x4p-1024 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 -0x4p-1024 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-1024 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-1024 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-1024 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 -0x4p-1024 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-1024 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x4p-1024 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-1024 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x4p-1024 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x4p-1024 9223372036854775807LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 -0x4p-1024 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x4p-1024 9223372036854775807LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 -0x4p-1024 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-16384 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 -0x4p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x4p-16384 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 -0x4p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-16384 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-16384 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 -0x4p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-16384 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x4p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-16384 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x4p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x2p-16384 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 -0x2p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x2p-16384 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 -0x2p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x2p-16384 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x2p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x2p-16384 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 -0x2p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x2p-16384 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x2p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x2p-16384 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x2p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x8p-972 9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 -0x8p-972 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x8p-972 9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 -0x8p-972 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x8p-972 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 -0x8p-972 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x8p-972 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 -0x8p-972 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x8p-972 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x8p-972 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x8p-972 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 -0x8p-972 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x8p-972 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x8p-972 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x8p-972 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x8p-972 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x8p-972 9223372036854775807LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 -0x8p-972 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x8p-972 9223372036854775807LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 -0x8p-972 9223372036854775807LL : 0x1p+0 : inexact-ok
+compoundn -min_subnorm 0x7fffffffffffffff
+= compoundn downward binary32 -0x8p-152 9223372036854775807LL : 0xf.fffffp-4 : inexact-ok
+= compoundn tonearest binary32 -0x8p-152 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 -0x8p-152 9223372036854775807LL : 0xf.fffffp-4 : inexact-ok
+= compoundn upward binary32 -0x8p-152 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x8p-152 9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 -0x8p-152 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x8p-152 9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 -0x8p-152 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x8p-152 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 -0x8p-152 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x8p-152 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 -0x8p-152 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x8p-152 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x8p-152 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x8p-152 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 -0x8p-152 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x8p-152 9223372036854775807LL : 0xf.ffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest binary128 -0x8p-152 9223372036854775807LL : 0xf.ffffffffffffffffffffcp-4 : inexact-ok
+= compoundn towardzero binary128 -0x8p-152 9223372036854775807LL : 0xf.ffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward binary128 -0x8p-152 9223372036854775807LL : 0xf.ffffffffffffffffffffc0000008p-4 : inexact-ok
+= compoundn downward ibm128 -0x8p-152 9223372036854775807LL : 0xf.ffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 -0x8p-152 9223372036854775807LL : 0xf.ffffffffffffffffffffcp-4 : inexact-ok
+= compoundn towardzero ibm128 -0x8p-152 9223372036854775807LL : 0xf.ffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 -0x8p-152 9223372036854775807LL : 0xf.ffffffffffffffffffffc00004p-4 : inexact-ok
+= compoundn downward binary64 -0x4p-1076 9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 -0x4p-1076 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x4p-1076 9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 -0x4p-1076 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-1076 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 -0x4p-1076 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x4p-1076 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 -0x4p-1076 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-1076 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-1076 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-1076 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 -0x4p-1076 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-1076 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x4p-1076 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-1076 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x4p-1076 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x4p-1076 9223372036854775807LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 -0x4p-1076 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x4p-1076 9223372036854775807LL : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 -0x4p-1076 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x8p-16448 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 -0x8p-16448 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x8p-16448 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 -0x8p-16448 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x8p-16448 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x8p-16448 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x8p-16448 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 -0x8p-16448 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x8p-16448 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x8p-16448 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x8p-16448 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x8p-16448 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-16448 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-16448 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-16448 9223372036854775807LL : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 -0x4p-16448 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-16448 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x4p-16448 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-16448 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x4p-16448 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-16496 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x4p-16496 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-16496 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 -0x4p-16496 9223372036854775807LL : 0x1p+0 : inexact-ok
+compoundn -0 0x7fffffffffffffff
+= compoundn downward binary32 -0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 -0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 -0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 -0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+compoundn 0 0x7fffffffffffffff
+= compoundn downward binary32 0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x0p+0 9223372036854775807LL : 0x1p+0 : inexact-ok
+compoundn min_subnorm 0x7fffffffffffffff
+= compoundn downward binary32 0x8p-152 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 0x8p-152 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0x8p-152 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 0x8p-152 9223372036854775807LL : 0x1.000002p+0 : inexact-ok
+= compoundn downward binary64 0x8p-152 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x8p-152 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x8p-152 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x8p-152 9223372036854775807LL : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 0x8p-152 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x8p-152 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x8p-152 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x8p-152 9223372036854775807LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 0x8p-152 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x8p-152 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x8p-152 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x8p-152 9223372036854775807LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 0x8p-152 9223372036854775807LL : 0x1.0000000000000000000003ffffffp+0 : inexact-ok
+= compoundn tonearest binary128 0x8p-152 9223372036854775807LL : 0x1.0000000000000000000004p+0 : inexact-ok
+= compoundn towardzero binary128 0x8p-152 9223372036854775807LL : 0x1.0000000000000000000003ffffffp+0 : inexact-ok
+= compoundn upward binary128 0x8p-152 9223372036854775807LL : 0x1.0000000000000000000004p+0 : inexact-ok
+= compoundn downward ibm128 0x8p-152 9223372036854775807LL : 0x1.0000000000000000000003ffff8p+0 : inexact-ok
+= compoundn tonearest ibm128 0x8p-152 9223372036854775807LL : 0x1.0000000000000000000004p+0 : inexact-ok
+= compoundn towardzero ibm128 0x8p-152 9223372036854775807LL : 0x1.0000000000000000000003ffff8p+0 : inexact-ok
+= compoundn upward ibm128 0x8p-152 9223372036854775807LL : 0x1.0000000000000000000004p+0 : inexact-ok
+= compoundn downward binary64 0x4p-1076 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x4p-1076 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x4p-1076 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x4p-1076 9223372036854775807LL : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 0x4p-1076 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x4p-1076 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4p-1076 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x4p-1076 9223372036854775807LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-1076 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4p-1076 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-1076 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x4p-1076 9223372036854775807LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 0x4p-1076 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4p-1076 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-1076 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4p-1076 9223372036854775807LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward ibm128 0x4p-1076 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4p-1076 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4p-1076 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x4p-1076 9223372036854775807LL : 0x1.000000000000000000000000008p+0 : inexact-ok
+= compoundn downward intel96 0x8p-16448 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x8p-16448 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x8p-16448 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x8p-16448 9223372036854775807LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 0x8p-16448 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x8p-16448 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x8p-16448 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x8p-16448 9223372036854775807LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 0x8p-16448 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x8p-16448 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x8p-16448 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x8p-16448 9223372036854775807LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-16448 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4p-16448 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-16448 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x4p-16448 9223372036854775807LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 0x4p-16448 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4p-16448 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-16448 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4p-16448 9223372036854775807LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward binary128 0x4p-16496 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4p-16496 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-16496 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4p-16496 9223372036854775807LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+compoundn min 0x7fffffffffffffff
+= compoundn downward binary32 0x4p-128 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 0x4p-128 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0x4p-128 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward binary32 0x4p-128 9223372036854775807LL : 0x1.000002p+0 : inexact-ok
+= compoundn downward binary64 0x4p-128 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x4p-128 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x4p-128 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x4p-128 9223372036854775807LL : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 0x4p-128 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x4p-128 9223372036854775807LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn towardzero intel96 0x4p-128 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x4p-128 9223372036854775807LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-128 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4p-128 9223372036854775807LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-128 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x4p-128 9223372036854775807LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 0x4p-128 9223372036854775807LL : 0x1.0000000000000001ffffffffffffp+0 : inexact-ok
+= compoundn tonearest binary128 0x4p-128 9223372036854775807LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-128 9223372036854775807LL : 0x1.0000000000000001ffffffffffffp+0 : inexact-ok
+= compoundn upward binary128 0x4p-128 9223372036854775807LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward ibm128 0x4p-128 9223372036854775807LL : 0x1.0000000000000001ffffffffff8p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4p-128 9223372036854775807LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4p-128 9223372036854775807LL : 0x1.0000000000000001ffffffffff8p+0 : inexact-ok
+= compoundn upward ibm128 0x4p-128 9223372036854775807LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary64 0x4p-1024 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x4p-1024 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x4p-1024 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x4p-1024 9223372036854775807LL : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 0x4p-1024 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x4p-1024 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4p-1024 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x4p-1024 9223372036854775807LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-1024 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4p-1024 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-1024 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x4p-1024 9223372036854775807LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 0x4p-1024 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4p-1024 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-1024 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4p-1024 9223372036854775807LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward ibm128 0x4p-1024 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x4p-1024 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4p-1024 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x4p-1024 9223372036854775807LL : 0x1.000000000000000000000000008p+0 : inexact-ok
+= compoundn downward intel96 0x4p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x4p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x4p-16384 9223372036854775807LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x4p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x4p-16384 9223372036854775807LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 0x4p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x4p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x4p-16384 9223372036854775807LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward intel96 0x2p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x2p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x2p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x2p-16384 9223372036854775807LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 0x2p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x2p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x2p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x2p-16384 9223372036854775807LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 0x2p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x2p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x2p-16384 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x2p-16384 9223372036854775807LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward binary64 0x8p-972 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x8p-972 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x8p-972 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x8p-972 9223372036854775807LL : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 0x8p-972 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x8p-972 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x8p-972 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x8p-972 9223372036854775807LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 0x8p-972 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x8p-972 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x8p-972 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x8p-972 9223372036854775807LL : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 0x8p-972 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x8p-972 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x8p-972 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x8p-972 9223372036854775807LL : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward ibm128 0x8p-972 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x8p-972 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x8p-972 9223372036854775807LL : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x8p-972 9223372036854775807LL : 0x1.000000000000000000000000008p+0 : inexact-ok
+compoundn 0.001 0x7fffffffffffffff
+= compoundn downward binary32 0x4.189378p-12 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 0x4.189378p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 0x4.189378p-12 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 0x4.189378p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 0x4.189378p-12 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 0x4.189378p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 0x4.189378p-12 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 0x4.189378p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 0x4.189378p-12 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 0x4.189378p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 0x4.189378p-12 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 0x4.189378p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 0x4.189378p-12 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 0x4.189378p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 0x4.189378p-12 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 0x4.189378p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 0x4.189378p-12 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0x4.189378p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0x4.189378p-12 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0x4.189378p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 0x4.189378p-12 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0x4.189378p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0x4.189378p-12 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0x4.189378p-12 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward binary32 0x4.18937p-12 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 0x4.18937p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 0x4.18937p-12 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 0x4.18937p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 0x4.18937p-12 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 0x4.18937p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 0x4.18937p-12 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 0x4.18937p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 0x4.18937p-12 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 0x4.18937p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 0x4.18937p-12 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 0x4.18937p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 0x4.18937p-12 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 0x4.18937p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 0x4.18937p-12 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 0x4.18937p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 0x4.18937p-12 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0x4.18937p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0x4.18937p-12 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0x4.18937p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 0x4.18937p-12 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0x4.18937p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0x4.18937p-12 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0x4.18937p-12 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward binary64 0x4.189374bc6a7fp-12 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 0x4.189374bc6a7fp-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 0x4.189374bc6a7fp-12 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 0x4.189374bc6a7fp-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 0x4.189374bc6a7fp-12 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 0x4.189374bc6a7fp-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 0x4.189374bc6a7fp-12 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 0x4.189374bc6a7fp-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 0x4.189374bc6a7fp-12 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 0x4.189374bc6a7fp-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 0x4.189374bc6a7fp-12 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 0x4.189374bc6a7fp-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 0x4.189374bc6a7fp-12 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0x4.189374bc6a7fp-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0x4.189374bc6a7fp-12 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0x4.189374bc6a7fp-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 0x4.189374bc6a7fp-12 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7fp-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0x4.189374bc6a7fp-12 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0x4.189374bc6a7fp-12 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward binary64 0x4.189374bc6a7ecp-12 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 0x4.189374bc6a7ecp-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 0x4.189374bc6a7ecp-12 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 0x4.189374bc6a7ecp-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 0x4.189374bc6a7ecp-12 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 0x4.189374bc6a7ecp-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 0x4.189374bc6a7ecp-12 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 0x4.189374bc6a7ecp-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 0x4.189374bc6a7ecp-12 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 0x4.189374bc6a7ecp-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 0x4.189374bc6a7ecp-12 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 0x4.189374bc6a7ecp-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 0x4.189374bc6a7ecp-12 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ecp-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0x4.189374bc6a7ecp-12 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0x4.189374bc6a7ecp-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 0x4.189374bc6a7ecp-12 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ecp-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0x4.189374bc6a7ecp-12 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0x4.189374bc6a7ecp-12 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward intel96 0x4.189374bc6a7ef9ep-12 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 0x4.189374bc6a7ef9ep-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 0x4.189374bc6a7ef9ep-12 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 0x4.189374bc6a7ef9ep-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 0x4.189374bc6a7ef9ep-12 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 0x4.189374bc6a7ef9ep-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 0x4.189374bc6a7ef9ep-12 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 0x4.189374bc6a7ef9ep-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 0x4.189374bc6a7ef9ep-12 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9ep-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0x4.189374bc6a7ef9ep-12 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9ep-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 0x4.189374bc6a7ef9ep-12 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9ep-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9ep-12 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0x4.189374bc6a7ef9ep-12 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward intel96 0x4.189374bc6a7ef9d8p-12 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 0x4.189374bc6a7ef9d8p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 0x4.189374bc6a7ef9d8p-12 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 0x4.189374bc6a7ef9d8p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 0x4.189374bc6a7ef9d8p-12 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 0x4.189374bc6a7ef9d8p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 0x4.189374bc6a7ef9d8p-12 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 0x4.189374bc6a7ef9d8p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 0x4.189374bc6a7ef9d8p-12 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9d8p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0x4.189374bc6a7ef9d8p-12 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9d8p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 0x4.189374bc6a7ef9d8p-12 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9d8p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9d8p-12 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0x4.189374bc6a7ef9d8p-12 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e56042p-12 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e56042p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e56042p-12 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e56042p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e5604p-12 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e5604p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e5604p-12 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e5604p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+compoundn 0.123456 0x7fffffffffffffff
+= compoundn downward binary32 0x1.f9adp-4 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 0x1.f9adp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 0x1.f9adp-4 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 0x1.f9adp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 0x1.f9adp-4 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 0x1.f9adp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 0x1.f9adp-4 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 0x1.f9adp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 0x1.f9adp-4 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 0x1.f9adp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 0x1.f9adp-4 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 0x1.f9adp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 0x1.f9adp-4 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 0x1.f9adp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 0x1.f9adp-4 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 0x1.f9adp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 0x1.f9adp-4 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0x1.f9adp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0x1.f9adp-4 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0x1.f9adp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 0x1.f9adp-4 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0x1.f9adp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0x1.f9adp-4 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0x1.f9adp-4 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward binary32 0x1.f9acfep-4 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 0x1.f9acfep-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 0x1.f9acfep-4 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 0x1.f9acfep-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 0x1.f9acfep-4 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 0x1.f9acfep-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 0x1.f9acfep-4 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 0x1.f9acfep-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 0x1.f9acfep-4 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 0x1.f9acfep-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 0x1.f9acfep-4 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 0x1.f9acfep-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 0x1.f9acfep-4 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 0x1.f9acfep-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 0x1.f9acfep-4 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 0x1.f9acfep-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 0x1.f9acfep-4 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0x1.f9acfep-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0x1.f9acfep-4 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0x1.f9acfep-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 0x1.f9acfep-4 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0x1.f9acfep-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0x1.f9acfep-4 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0x1.f9acfep-4 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward binary64 0x1.f9acffa7eb6cp-4 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 0x1.f9acffa7eb6cp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 0x1.f9acffa7eb6cp-4 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 0x1.f9acffa7eb6cp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 0x1.f9acffa7eb6cp-4 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 0x1.f9acffa7eb6cp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 0x1.f9acffa7eb6cp-4 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 0x1.f9acffa7eb6cp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 0x1.f9acffa7eb6cp-4 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 0x1.f9acffa7eb6cp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 0x1.f9acffa7eb6cp-4 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 0x1.f9acffa7eb6cp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 0x1.f9acffa7eb6cp-4 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6cp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0x1.f9acffa7eb6cp-4 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0x1.f9acffa7eb6cp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 0x1.f9acffa7eb6cp-4 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6cp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0x1.f9acffa7eb6cp-4 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6cp-4 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward binary64 0x1.f9acffa7eb6bfp-4 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 0x1.f9acffa7eb6bfp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 0x1.f9acffa7eb6bfp-4 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 0x1.f9acffa7eb6bfp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 0x1.f9acffa7eb6bfp-4 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 0x1.f9acffa7eb6bfp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 0x1.f9acffa7eb6bfp-4 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 0x1.f9acffa7eb6bfp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 0x1.f9acffa7eb6bfp-4 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 0x1.f9acffa7eb6bfp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 0x1.f9acffa7eb6bfp-4 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 0x1.f9acffa7eb6bfp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 0x1.f9acffa7eb6bfp-4 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bfp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0x1.f9acffa7eb6bfp-4 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bfp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 0x1.f9acffa7eb6bfp-4 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bfp-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bfp-4 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bfp-4 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward intel96 0x1.f9acffa7eb6bf446p-4 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 0x1.f9acffa7eb6bf446p-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 0x1.f9acffa7eb6bf446p-4 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 0x1.f9acffa7eb6bf446p-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 0x1.f9acffa7eb6bf446p-4 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 0x1.f9acffa7eb6bf446p-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 0x1.f9acffa7eb6bf446p-4 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 0x1.f9acffa7eb6bf446p-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 0x1.f9acffa7eb6bf446p-4 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf446p-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf446p-4 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf446p-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 0x1.f9acffa7eb6bf446p-4 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf446p-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf446p-4 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bf446p-4 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward intel96 0x1.f9acffa7eb6bf444p-4 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 0x1.f9acffa7eb6bf444p-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 0x1.f9acffa7eb6bf444p-4 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 0x1.f9acffa7eb6bf444p-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 0x1.f9acffa7eb6bf444p-4 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 0x1.f9acffa7eb6bf444p-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 0x1.f9acffa7eb6bf444p-4 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 0x1.f9acffa7eb6bf444p-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 0x1.f9acffa7eb6bf444p-4 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444p-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444p-4 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444p-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 0x1.f9acffa7eb6bf444p-4 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf444p-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf444p-4 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bf444p-4 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+compoundn 1 0x7fffffffffffffff
+= compoundn downward binary32 0x1p+0 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 0x1p+0 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 0x1p+0 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 0x1p+0 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 0x1p+0 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 0x1p+0 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 0x1p+0 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 0x1p+0 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 0x1p+0 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 0x1p+0 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 0x1p+0 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 0x1p+0 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 0x1p+0 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 0x1p+0 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 0x1p+0 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 0x1p+0 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 0x1p+0 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0x1p+0 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0x1p+0 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0x1p+0 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 0x1p+0 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0x1p+0 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0x1p+0 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0x1p+0 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+compoundn 2 0x7fffffffffffffff
+= compoundn downward binary32 0x2p+0 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 0x2p+0 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 0x2p+0 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 0x2p+0 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 0x2p+0 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 0x2p+0 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 0x2p+0 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 0x2p+0 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 0x2p+0 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 0x2p+0 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 0x2p+0 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 0x2p+0 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 0x2p+0 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 0x2p+0 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 0x2p+0 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 0x2p+0 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 0x2p+0 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0x2p+0 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0x2p+0 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0x2p+0 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 0x2p+0 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0x2p+0 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0x2p+0 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0x2p+0 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+compoundn max 0x7fffffffffffffff
+= compoundn downward binary32 0xf.fffffp+124 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 0xf.fffffp+124 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 0xf.fffffp+124 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 0xf.fffffp+124 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 0xf.fffffp+124 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 0xf.fffffp+124 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 0xf.fffffp+124 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 0xf.fffffp+124 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 0xf.fffffp+124 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 0xf.fffffp+124 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 0xf.fffffp+124 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 0xf.fffffp+124 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 0xf.fffffp+124 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 0xf.fffffp+124 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 0xf.fffffp+124 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 0xf.fffffp+124 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 0xf.fffffp+124 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0xf.fffffp+124 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0xf.fffffp+124 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0xf.fffffp+124 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 0xf.fffffp+124 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0xf.fffffp+124 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0xf.fffffp+124 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0xf.fffffp+124 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward binary64 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 0xf.ffffffffffff8p+1020 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 0xf.ffffffffffff8p+1020 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 0xf.ffffffffffff8p+1020 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 0xf.ffffffffffff8p+1020 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 0xf.ffffffffffff8p+1020 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 0xf.ffffffffffff8p+1020 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0xf.ffffffffffff8p+1020 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0xf.ffffffffffff8p+1020 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0xf.ffffffffffff8p+1020 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0xf.ffffffffffff8p+1020 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward intel96 0xf.fffffffffffffffp+16380 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 0xf.fffffffffffffffp+16380 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 0xf.fffffffffffffffp+16380 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 0xf.fffffffffffffffp+16380 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 0xf.fffffffffffffffp+16380 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 0xf.fffffffffffffffp+16380 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 0xf.fffffffffffffffp+16380 9223372036854775807LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 0xf.fffffffffffffffp+16380 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 0xf.fffffffffffffffp+16380 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0xf.fffffffffffffffp+16380 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0xf.fffffffffffffffp+16380 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0xf.fffffffffffffffp+16380 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 9223372036854775807LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+compoundn -0.999 -0x8000000000000000
+= compoundn downward binary32 -0xf.fbe76p-4 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 -0xf.fbe76p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 -0xf.fbe76p-4 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 -0xf.fbe76p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 -0xf.fbe76p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 -0xf.fbe76p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 -0xf.fbe76p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 -0xf.fbe76p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 -0xf.fbe76p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 -0xf.fbe76p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 -0xf.fbe76p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 -0xf.fbe76p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 -0xf.fbe76p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 -0xf.fbe76p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 -0xf.fbe76p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 -0xf.fbe76p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 -0xf.fbe76p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 -0xf.fbe76p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 -0xf.fbe76p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 -0xf.fbe76p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 -0xf.fbe76p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 -0xf.fbe76p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 -0xf.fbe76p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 -0xf.fbe76p-4 (-9223372036854775807LL-1) : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward binary32 -0xf.fbe77p-4 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 -0xf.fbe77p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 -0xf.fbe77p-4 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 -0xf.fbe77p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 -0xf.fbe77p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 -0xf.fbe77p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 -0xf.fbe77p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 -0xf.fbe77p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 -0xf.fbe77p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 -0xf.fbe77p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 -0xf.fbe77p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 -0xf.fbe77p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 -0xf.fbe77p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 -0xf.fbe77p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 -0xf.fbe77p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 -0xf.fbe77p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 -0xf.fbe77p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 -0xf.fbe77p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 -0xf.fbe77p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 -0xf.fbe77p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 -0xf.fbe77p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 -0xf.fbe77p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 -0xf.fbe77p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 -0xf.fbe77p-4 (-9223372036854775807LL-1) : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward binary64 -0xf.fbe76c8b43958p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 -0xf.fbe76c8b43958p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 -0xf.fbe76c8b43958p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 -0xf.fbe76c8b43958p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 -0xf.fbe76c8b43958p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 -0xf.fbe76c8b43958p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 -0xf.fbe76c8b43958p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 -0xf.fbe76c8b43958p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 -0xf.fbe76c8b43958p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 -0xf.fbe76c8b43958p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 -0xf.fbe76c8b43958p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 -0xf.fbe76c8b43958p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 -0xf.fbe76c8b43958p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b43958p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 -0xf.fbe76c8b43958p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 -0xf.fbe76c8b43958p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 -0xf.fbe76c8b43958p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b43958p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 -0xf.fbe76c8b43958p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 -0xf.fbe76c8b43958p-4 (-9223372036854775807LL-1) : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward binary64 -0xf.fbe76c8b4396p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 -0xf.fbe76c8b4396p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 -0xf.fbe76c8b4396p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 -0xf.fbe76c8b4396p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 -0xf.fbe76c8b4396p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 -0xf.fbe76c8b4396p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 -0xf.fbe76c8b4396p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 -0xf.fbe76c8b4396p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 -0xf.fbe76c8b4396p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 -0xf.fbe76c8b4396p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 -0xf.fbe76c8b4396p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 -0xf.fbe76c8b4396p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 -0xf.fbe76c8b4396p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4396p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 -0xf.fbe76c8b4396p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 -0xf.fbe76c8b4396p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 -0xf.fbe76c8b4396p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b4396p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 -0xf.fbe76c8b4396p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 -0xf.fbe76c8b4396p-4 (-9223372036854775807LL-1) : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward intel96 -0xf.fbe76c8b439581p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 -0xf.fbe76c8b439581p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 -0xf.fbe76c8b439581p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 -0xf.fbe76c8b439581p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 -0xf.fbe76c8b439581p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 -0xf.fbe76c8b439581p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 -0xf.fbe76c8b439581p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 -0xf.fbe76c8b439581p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 -0xf.fbe76c8b439581p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b439581p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 -0xf.fbe76c8b439581p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 -0xf.fbe76c8b439581p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 -0xf.fbe76c8b439581p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b439581p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 -0xf.fbe76c8b439581p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 -0xf.fbe76c8b439581p-4 (-9223372036854775807LL-1) : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward intel96 -0xf.fbe76c8b4395811p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 -0xf.fbe76c8b4395811p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 -0xf.fbe76c8b4395811p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 -0xf.fbe76c8b4395811p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 -0xf.fbe76c8b4395811p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 -0xf.fbe76c8b4395811p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 -0xf.fbe76c8b4395811p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 -0xf.fbe76c8b4395811p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 -0xf.fbe76c8b4395811p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395811p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 -0xf.fbe76c8b4395811p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395811p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 -0xf.fbe76c8b4395811p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b4395811p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 -0xf.fbe76c8b4395811p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 -0xf.fbe76c8b4395811p-4 (-9223372036854775807LL-1) : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1a9fb8p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1a9fcp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 -0xf.fbe76c8b4395810624dd2f1a9cp-4 (-9223372036854775807LL-1) : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 -0xf.fbe76c8b4395810624dd2f1aap-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 -0xf.fbe76c8b4395810624dd2f1aap-4 (-9223372036854775807LL-1) : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+compoundn -0.123 -0x8000000000000000
+= compoundn downward binary32 -0x1.f7ced8p-4 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 -0x1.f7ced8p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 -0x1.f7ced8p-4 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 -0x1.f7ced8p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 -0x1.f7ced8p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 -0x1.f7ced8p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 -0x1.f7ced8p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 -0x1.f7ced8p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 -0x1.f7ced8p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 -0x1.f7ced8p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 -0x1.f7ced8p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 -0x1.f7ced8p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 -0x1.f7ced8p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 -0x1.f7ced8p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 -0x1.f7ced8p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 -0x1.f7ced8p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 -0x1.f7ced8p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 -0x1.f7ced8p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 -0x1.f7ced8p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 -0x1.f7ced8p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 -0x1.f7ced8p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 -0x1.f7ced8p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 -0x1.f7ced8p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 -0x1.f7ced8p-4 (-9223372036854775807LL-1) : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward binary32 -0x1.f7cedap-4 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 -0x1.f7cedap-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 -0x1.f7cedap-4 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 -0x1.f7cedap-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 -0x1.f7cedap-4 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 -0x1.f7cedap-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 -0x1.f7cedap-4 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 -0x1.f7cedap-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 -0x1.f7cedap-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 -0x1.f7cedap-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 -0x1.f7cedap-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 -0x1.f7cedap-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 -0x1.f7cedap-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 -0x1.f7cedap-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 -0x1.f7cedap-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 -0x1.f7cedap-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 -0x1.f7cedap-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 -0x1.f7cedap-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 -0x1.f7cedap-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 -0x1.f7cedap-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 -0x1.f7cedap-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 -0x1.f7cedap-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 -0x1.f7cedap-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 -0x1.f7cedap-4 (-9223372036854775807LL-1) : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward binary64 -0x1.f7ced916872bp-4 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 -0x1.f7ced916872bp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 -0x1.f7ced916872bp-4 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 -0x1.f7ced916872bp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 -0x1.f7ced916872bp-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 -0x1.f7ced916872bp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 -0x1.f7ced916872bp-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 -0x1.f7ced916872bp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 -0x1.f7ced916872bp-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 -0x1.f7ced916872bp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 -0x1.f7ced916872bp-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 -0x1.f7ced916872bp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 -0x1.f7ced916872bp-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 -0x1.f7ced916872bp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 -0x1.f7ced916872bp-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 -0x1.f7ced916872bp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 -0x1.f7ced916872bp-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872bp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 -0x1.f7ced916872bp-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 -0x1.f7ced916872bp-4 (-9223372036854775807LL-1) : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward binary64 -0x1.f7ced916872b1p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 -0x1.f7ced916872b1p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 -0x1.f7ced916872b1p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 -0x1.f7ced916872b1p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 -0x1.f7ced916872b1p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 -0x1.f7ced916872b1p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 -0x1.f7ced916872b1p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 -0x1.f7ced916872b1p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 -0x1.f7ced916872b1p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 -0x1.f7ced916872b1p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 -0x1.f7ced916872b1p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 -0x1.f7ced916872b1p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 -0x1.f7ced916872b1p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b1p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 -0x1.f7ced916872b1p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 -0x1.f7ced916872b1p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 -0x1.f7ced916872b1p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b1p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 -0x1.f7ced916872b1p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 -0x1.f7ced916872b1p-4 (-9223372036854775807LL-1) : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward intel96 -0x1.f7ced916872b020cp-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 -0x1.f7ced916872b020cp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 -0x1.f7ced916872b020cp-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 -0x1.f7ced916872b020cp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 -0x1.f7ced916872b020cp-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 -0x1.f7ced916872b020cp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 -0x1.f7ced916872b020cp-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 -0x1.f7ced916872b020cp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 -0x1.f7ced916872b020cp-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020cp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 -0x1.f7ced916872b020cp-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 -0x1.f7ced916872b020cp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 -0x1.f7ced916872b020cp-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b020cp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 -0x1.f7ced916872b020cp-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 -0x1.f7ced916872b020cp-4 (-9223372036854775807LL-1) : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward intel96 -0x1.f7ced916872b020ep-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest intel96 -0x1.f7ced916872b020ep-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero intel96 -0x1.f7ced916872b020ep-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward intel96 -0x1.f7ced916872b020ep-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward m68k96 -0x1.f7ced916872b020ep-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest m68k96 -0x1.f7ced916872b020ep-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero m68k96 -0x1.f7ced916872b020ep-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward m68k96 -0x1.f7ced916872b020ep-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 -0x1.f7ced916872b020ep-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020ep-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 -0x1.f7ced916872b020ep-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 -0x1.f7ced916872b020ep-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 -0x1.f7ced916872b020ep-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b020ep-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 -0x1.f7ced916872b020ep-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 -0x1.f7ced916872b020ep-4 (-9223372036854775807LL-1) : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353f7cp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353f7dp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353fp-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353fp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353fp-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353fp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 -0x1.f7ced916872b020c49ba5e353fp-4 (-9223372036854775807LL-1) : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= compoundn downward binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary128 -0x1.f7ced916872b020c49ba5e353f8p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 -0x1.f7ced916872b020c49ba5e353f8p-4 (-9223372036854775807LL-1) : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+compoundn -min -0x8000000000000000
+= compoundn downward binary32 -0x4p-128 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 -0x4p-128 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 -0x4p-128 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward binary32 -0x4p-128 (-9223372036854775807LL-1) : 0x1.000002p+0 : inexact-ok
+= compoundn downward binary64 -0x4p-128 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x4p-128 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x4p-128 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x4p-128 (-9223372036854775807LL-1) : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-128 (-9223372036854775807LL-1) : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn tonearest intel96 -0x4p-128 (-9223372036854775807LL-1) : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn towardzero intel96 -0x4p-128 (-9223372036854775807LL-1) : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn upward intel96 -0x4p-128 (-9223372036854775807LL-1) : 0x1.0000000000000004p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-128 (-9223372036854775807LL-1) : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-128 (-9223372036854775807LL-1) : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-128 (-9223372036854775807LL-1) : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn upward m68k96 -0x4p-128 (-9223372036854775807LL-1) : 0x1.0000000000000004p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-128 (-9223372036854775807LL-1) : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn tonearest binary128 -0x4p-128 (-9223372036854775807LL-1) : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-128 (-9223372036854775807LL-1) : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn upward binary128 -0x4p-128 (-9223372036854775807LL-1) : 0x1.0000000000000002000000000001p+0 : inexact-ok
+= compoundn downward ibm128 -0x4p-128 (-9223372036854775807LL-1) : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x4p-128 (-9223372036854775807LL-1) : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x4p-128 (-9223372036854775807LL-1) : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn upward ibm128 -0x4p-128 (-9223372036854775807LL-1) : 0x1.000000000000000200000000008p+0 : inexact-ok
+= compoundn downward binary64 -0x4p-1024 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x4p-1024 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x4p-1024 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x4p-1024 (-9223372036854775807LL-1) : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-1024 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x4p-1024 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x4p-1024 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x4p-1024 (-9223372036854775807LL-1) : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-1024 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-1024 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-1024 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x4p-1024 (-9223372036854775807LL-1) : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-1024 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x4p-1024 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-1024 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x4p-1024 (-9223372036854775807LL-1) : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward ibm128 -0x4p-1024 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x4p-1024 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x4p-1024 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x4p-1024 (-9223372036854775807LL-1) : 0x1.000000000000000000000000008p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x4p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x4p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x4p-16384 (-9223372036854775807LL-1) : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x4p-16384 (-9223372036854775807LL-1) : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x4p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x4p-16384 (-9223372036854775807LL-1) : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward intel96 -0x2p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x2p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x2p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x2p-16384 (-9223372036854775807LL-1) : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 -0x2p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x2p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x2p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x2p-16384 (-9223372036854775807LL-1) : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 -0x2p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x2p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x2p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x2p-16384 (-9223372036854775807LL-1) : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward binary64 -0x8p-972 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x8p-972 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x8p-972 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x8p-972 (-9223372036854775807LL-1) : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 -0x8p-972 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x8p-972 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x8p-972 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x8p-972 (-9223372036854775807LL-1) : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 -0x8p-972 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x8p-972 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x8p-972 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x8p-972 (-9223372036854775807LL-1) : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 -0x8p-972 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x8p-972 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x8p-972 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x8p-972 (-9223372036854775807LL-1) : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward ibm128 -0x8p-972 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x8p-972 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x8p-972 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x8p-972 (-9223372036854775807LL-1) : 0x1.000000000000000000000000008p+0 : inexact-ok
+compoundn -min_subnorm -0x8000000000000000
+= compoundn downward binary32 -0x8p-152 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 -0x8p-152 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 -0x8p-152 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward binary32 -0x8p-152 (-9223372036854775807LL-1) : 0x1.000002p+0 : inexact-ok
+= compoundn downward binary64 -0x8p-152 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x8p-152 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x8p-152 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x8p-152 (-9223372036854775807LL-1) : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 -0x8p-152 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x8p-152 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x8p-152 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x8p-152 (-9223372036854775807LL-1) : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 -0x8p-152 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x8p-152 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x8p-152 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x8p-152 (-9223372036854775807LL-1) : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 -0x8p-152 (-9223372036854775807LL-1) : 0x1.0000000000000000000004p+0 : inexact-ok
+= compoundn tonearest binary128 -0x8p-152 (-9223372036854775807LL-1) : 0x1.0000000000000000000004p+0 : inexact-ok
+= compoundn towardzero binary128 -0x8p-152 (-9223372036854775807LL-1) : 0x1.0000000000000000000004p+0 : inexact-ok
+= compoundn upward binary128 -0x8p-152 (-9223372036854775807LL-1) : 0x1.0000000000000000000004000001p+0 : inexact-ok
+= compoundn downward ibm128 -0x8p-152 (-9223372036854775807LL-1) : 0x1.0000000000000000000004p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x8p-152 (-9223372036854775807LL-1) : 0x1.0000000000000000000004p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x8p-152 (-9223372036854775807LL-1) : 0x1.0000000000000000000004p+0 : inexact-ok
+= compoundn upward ibm128 -0x8p-152 (-9223372036854775807LL-1) : 0x1.000000000000000000000400008p+0 : inexact-ok
+= compoundn downward binary64 -0x4p-1076 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x4p-1076 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x4p-1076 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x4p-1076 (-9223372036854775807LL-1) : 0x1.0000000000001p+0 : inexact-ok
+= compoundn downward intel96 -0x4p-1076 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x4p-1076 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x4p-1076 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x4p-1076 (-9223372036854775807LL-1) : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-1076 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-1076 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-1076 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x4p-1076 (-9223372036854775807LL-1) : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-1076 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x4p-1076 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-1076 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x4p-1076 (-9223372036854775807LL-1) : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward ibm128 -0x4p-1076 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x4p-1076 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x4p-1076 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x4p-1076 (-9223372036854775807LL-1) : 0x1.000000000000000000000000008p+0 : inexact-ok
+= compoundn downward intel96 -0x8p-16448 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x8p-16448 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x8p-16448 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x8p-16448 (-9223372036854775807LL-1) : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward m68k96 -0x8p-16448 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x8p-16448 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x8p-16448 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x8p-16448 (-9223372036854775807LL-1) : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 -0x8p-16448 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x8p-16448 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x8p-16448 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x8p-16448 (-9223372036854775807LL-1) : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward m68k96 -0x4p-16448 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-16448 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-16448 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x4p-16448 (-9223372036854775807LL-1) : 0x1.0000000000000002p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-16448 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x4p-16448 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-16448 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x4p-16448 (-9223372036854775807LL-1) : 0x1.0000000000000000000000000001p+0 : inexact-ok
+= compoundn downward binary128 -0x4p-16496 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x4p-16496 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x4p-16496 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x4p-16496 (-9223372036854775807LL-1) : 0x1.0000000000000000000000000001p+0 : inexact-ok
+compoundn -0 -0x8000000000000000
+= compoundn downward binary32 -0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 -0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 -0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward binary32 -0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward binary64 -0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 -0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 -0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward binary64 -0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward intel96 -0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 -0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 -0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward intel96 -0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 -0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 -0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward binary128 -0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 -0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 -0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward binary128 -0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 -0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 -0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+compoundn 0 -0x8000000000000000
+= compoundn downward binary32 0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest binary32 0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward binary32 0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest binary64 0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward binary64 0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest intel96 0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward intel96 0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest m68k96 0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward m68k96 0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest binary128 0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward binary128 0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn tonearest ibm128 0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn upward ibm128 0x0p+0 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+compoundn min_subnorm -0x8000000000000000
+= compoundn downward binary32 0x8p-152 (-9223372036854775807LL-1) : 0xf.fffffp-4 : inexact-ok
+= compoundn tonearest binary32 0x8p-152 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0x8p-152 (-9223372036854775807LL-1) : 0xf.fffffp-4 : inexact-ok
+= compoundn upward binary32 0x8p-152 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x8p-152 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 0x8p-152 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x8p-152 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 0x8p-152 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x8p-152 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 0x8p-152 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x8p-152 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 0x8p-152 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x8p-152 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 0x8p-152 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x8p-152 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 0x8p-152 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x8p-152 (-9223372036854775807LL-1) : 0xf.ffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest binary128 0x8p-152 (-9223372036854775807LL-1) : 0xf.ffffffffffffffffffffcp-4 : inexact-ok
+= compoundn towardzero binary128 0x8p-152 (-9223372036854775807LL-1) : 0xf.ffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward binary128 0x8p-152 (-9223372036854775807LL-1) : 0xf.ffffffffffffffffffffc0000008p-4 : inexact-ok
+= compoundn downward ibm128 0x8p-152 (-9223372036854775807LL-1) : 0xf.ffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 0x8p-152 (-9223372036854775807LL-1) : 0xf.ffffffffffffffffffffcp-4 : inexact-ok
+= compoundn towardzero ibm128 0x8p-152 (-9223372036854775807LL-1) : 0xf.ffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 0x8p-152 (-9223372036854775807LL-1) : 0xf.ffffffffffffffffffffc00004p-4 : inexact-ok
+= compoundn downward binary64 0x4p-1076 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 0x4p-1076 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x4p-1076 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 0x4p-1076 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x4p-1076 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 0x4p-1076 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4p-1076 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 0x4p-1076 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-1076 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 0x4p-1076 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-1076 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 0x4p-1076 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4p-1076 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x4p-1076 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-1076 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x4p-1076 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x4p-1076 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 0x4p-1076 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4p-1076 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 0x4p-1076 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x8p-16448 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 0x8p-16448 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x8p-16448 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 0x8p-16448 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x8p-16448 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 0x8p-16448 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x8p-16448 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 0x8p-16448 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x8p-16448 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x8p-16448 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x8p-16448 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x8p-16448 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-16448 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 0x4p-16448 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-16448 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 0x4p-16448 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4p-16448 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x4p-16448 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-16448 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x4p-16448 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4p-16496 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x4p-16496 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-16496 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x4p-16496 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+compoundn min -0x8000000000000000
+= compoundn downward binary32 0x4p-128 (-9223372036854775807LL-1) : 0xf.fffffp-4 : inexact-ok
+= compoundn tonearest binary32 0x4p-128 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary32 0x4p-128 (-9223372036854775807LL-1) : 0xf.fffffp-4 : inexact-ok
+= compoundn upward binary32 0x4p-128 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x4p-128 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 0x4p-128 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x4p-128 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 0x4p-128 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x4p-128 (-9223372036854775807LL-1) : 0xf.ffffffffffffffep-4 : inexact-ok
+= compoundn tonearest intel96 0x4p-128 (-9223372036854775807LL-1) : 0xf.ffffffffffffffep-4 : inexact-ok
+= compoundn towardzero intel96 0x4p-128 (-9223372036854775807LL-1) : 0xf.ffffffffffffffep-4 : inexact-ok
+= compoundn upward intel96 0x4p-128 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn downward m68k96 0x4p-128 (-9223372036854775807LL-1) : 0xf.ffffffffffffffep-4 : inexact-ok
+= compoundn tonearest m68k96 0x4p-128 (-9223372036854775807LL-1) : 0xf.ffffffffffffffep-4 : inexact-ok
+= compoundn towardzero m68k96 0x4p-128 (-9223372036854775807LL-1) : 0xf.ffffffffffffffep-4 : inexact-ok
+= compoundn upward m68k96 0x4p-128 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn downward binary128 0x4p-128 (-9223372036854775807LL-1) : 0xf.ffffffffffffffep-4 : inexact-ok
+= compoundn tonearest binary128 0x4p-128 (-9223372036854775807LL-1) : 0xf.ffffffffffffffep-4 : inexact-ok
+= compoundn towardzero binary128 0x4p-128 (-9223372036854775807LL-1) : 0xf.ffffffffffffffep-4 : inexact-ok
+= compoundn upward binary128 0x4p-128 (-9223372036854775807LL-1) : 0xf.ffffffffffffffe0000000000008p-4 : inexact-ok
+= compoundn downward ibm128 0x4p-128 (-9223372036854775807LL-1) : 0xf.ffffffffffffffep-4 : inexact-ok
+= compoundn tonearest ibm128 0x4p-128 (-9223372036854775807LL-1) : 0xf.ffffffffffffffep-4 : inexact-ok
+= compoundn towardzero ibm128 0x4p-128 (-9223372036854775807LL-1) : 0xf.ffffffffffffffep-4 : inexact-ok
+= compoundn upward ibm128 0x4p-128 (-9223372036854775807LL-1) : 0xf.ffffffffffffffe00000000004p-4 : inexact-ok
+= compoundn downward binary64 0x4p-1024 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 0x4p-1024 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x4p-1024 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 0x4p-1024 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x4p-1024 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 0x4p-1024 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4p-1024 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 0x4p-1024 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-1024 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 0x4p-1024 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-1024 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 0x4p-1024 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4p-1024 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x4p-1024 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-1024 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x4p-1024 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x4p-1024 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 0x4p-1024 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x4p-1024 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 0x4p-1024 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x4p-16384 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 0x4p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x4p-16384 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 0x4p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x4p-16384 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 0x4p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x4p-16384 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 0x4p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x4p-16384 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x4p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x4p-16384 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x4p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x2p-16384 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 0x2p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x2p-16384 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 0x2p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x2p-16384 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 0x2p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x2p-16384 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 0x2p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x2p-16384 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x2p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x2p-16384 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x2p-16384 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward binary64 0x8p-972 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary64 0x8p-972 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary64 0x8p-972 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p-4 : inexact-ok
+= compoundn upward binary64 0x8p-972 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward intel96 0x8p-972 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest intel96 0x8p-972 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero intel96 0x8p-972 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward intel96 0x8p-972 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward m68k96 0x8p-972 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn tonearest m68k96 0x8p-972 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero m68k96 0x8p-972 (-9223372036854775807LL-1) : 0xf.fffffffffffffffp-4 : inexact-ok
+= compoundn upward m68k96 0x8p-972 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward binary128 0x8p-972 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn tonearest binary128 0x8p-972 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero binary128 0x8p-972 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffff8p-4 : inexact-ok
+= compoundn upward binary128 0x8p-972 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn downward ibm128 0x8p-972 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn tonearest ibm128 0x8p-972 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+= compoundn towardzero ibm128 0x8p-972 (-9223372036854775807LL-1) : 0xf.fffffffffffffffffffffffffcp-4 : inexact-ok
+= compoundn upward ibm128 0x8p-972 (-9223372036854775807LL-1) : 0x1p+0 : inexact-ok
+compoundn 0.001 -0x8000000000000000
+= compoundn downward binary32 0x4.189378p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 0x4.189378p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 0x4.189378p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 0x4.189378p-12 (-9223372036854775807LL-1) : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0x4.189378p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 0x4.189378p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 0x4.189378p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 0x4.189378p-12 (-9223372036854775807LL-1) : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0x4.189378p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 0x4.189378p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 0x4.189378p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 0x4.189378p-12 (-9223372036854775807LL-1) : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 0x4.189378p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 0x4.189378p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 0x4.189378p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 0x4.189378p-12 (-9223372036854775807LL-1) : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0x4.189378p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0x4.189378p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0x4.189378p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0x4.189378p-12 (-9223372036854775807LL-1) : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 0x4.189378p-12 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0x4.189378p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0x4.189378p-12 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0x4.189378p-12 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward binary32 0x4.18937p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 0x4.18937p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 0x4.18937p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 0x4.18937p-12 (-9223372036854775807LL-1) : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0x4.18937p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 0x4.18937p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 0x4.18937p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 0x4.18937p-12 (-9223372036854775807LL-1) : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0x4.18937p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 0x4.18937p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 0x4.18937p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 0x4.18937p-12 (-9223372036854775807LL-1) : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 0x4.18937p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 0x4.18937p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 0x4.18937p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 0x4.18937p-12 (-9223372036854775807LL-1) : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0x4.18937p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0x4.18937p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0x4.18937p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0x4.18937p-12 (-9223372036854775807LL-1) : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 0x4.18937p-12 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0x4.18937p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0x4.18937p-12 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0x4.18937p-12 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0x4.189374bc6a7fp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 0x4.189374bc6a7fp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 0x4.189374bc6a7fp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 0x4.189374bc6a7fp-12 (-9223372036854775807LL-1) : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0x4.189374bc6a7fp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 0x4.189374bc6a7fp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 0x4.189374bc6a7fp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 0x4.189374bc6a7fp-12 (-9223372036854775807LL-1) : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 0x4.189374bc6a7fp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 0x4.189374bc6a7fp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 0x4.189374bc6a7fp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 0x4.189374bc6a7fp-12 (-9223372036854775807LL-1) : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0x4.189374bc6a7fp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0x4.189374bc6a7fp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0x4.189374bc6a7fp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0x4.189374bc6a7fp-12 (-9223372036854775807LL-1) : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 0x4.189374bc6a7fp-12 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0x4.189374bc6a7fp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0x4.189374bc6a7fp-12 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0x4.189374bc6a7fp-12 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0x4.189374bc6a7ecp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 0x4.189374bc6a7ecp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 0x4.189374bc6a7ecp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 0x4.189374bc6a7ecp-12 (-9223372036854775807LL-1) : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0x4.189374bc6a7ecp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 0x4.189374bc6a7ecp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 0x4.189374bc6a7ecp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 0x4.189374bc6a7ecp-12 (-9223372036854775807LL-1) : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 0x4.189374bc6a7ecp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 0x4.189374bc6a7ecp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 0x4.189374bc6a7ecp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 0x4.189374bc6a7ecp-12 (-9223372036854775807LL-1) : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0x4.189374bc6a7ecp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0x4.189374bc6a7ecp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0x4.189374bc6a7ecp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0x4.189374bc6a7ecp-12 (-9223372036854775807LL-1) : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 0x4.189374bc6a7ecp-12 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0x4.189374bc6a7ecp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0x4.189374bc6a7ecp-12 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0x4.189374bc6a7ecp-12 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0x4.189374bc6a7ef9ep-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 0x4.189374bc6a7ef9ep-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 0x4.189374bc6a7ef9ep-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 0x4.189374bc6a7ef9ep-12 (-9223372036854775807LL-1) : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 0x4.189374bc6a7ef9ep-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 0x4.189374bc6a7ef9ep-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 0x4.189374bc6a7ef9ep-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 0x4.189374bc6a7ef9ep-12 (-9223372036854775807LL-1) : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9ep-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0x4.189374bc6a7ef9ep-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0x4.189374bc6a7ef9ep-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0x4.189374bc6a7ef9ep-12 (-9223372036854775807LL-1) : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 0x4.189374bc6a7ef9ep-12 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9ep-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9ep-12 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0x4.189374bc6a7ef9ep-12 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0x4.189374bc6a7ef9d8p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 0x4.189374bc6a7ef9d8p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 0x4.189374bc6a7ef9d8p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 0x4.189374bc6a7ef9d8p-12 (-9223372036854775807LL-1) : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 0x4.189374bc6a7ef9d8p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 0x4.189374bc6a7ef9d8p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 0x4.189374bc6a7ef9d8p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 0x4.189374bc6a7ef9d8p-12 (-9223372036854775807LL-1) : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9d8p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0x4.189374bc6a7ef9d8p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0x4.189374bc6a7ef9d8p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0x4.189374bc6a7ef9d8p-12 (-9223372036854775807LL-1) : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 0x4.189374bc6a7ef9d8p-12 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9d8p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9d8p-12 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0x4.189374bc6a7ef9d8p-12 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e560418cp-12 (-9223372036854775807LL-1) : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e5604188p-12 (-9223372036854775807LL-1) : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e56042p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e56042p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e56042p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e56042p-12 (-9223372036854775807LL-1) : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0x4.189374bc6a7ef9db22d0e56042p-12 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0x4.189374bc6a7ef9db22d0e5604p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0x4.189374bc6a7ef9db22d0e5604p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0x4.189374bc6a7ef9db22d0e5604p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0x4.189374bc6a7ef9db22d0e5604p-12 (-9223372036854775807LL-1) : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0x4.189374bc6a7ef9db22d0e5604p-12 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+compoundn 0.123456 -0x8000000000000000
+= compoundn downward binary32 0x1.f9adp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 0x1.f9adp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 0x1.f9adp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 0x1.f9adp-4 (-9223372036854775807LL-1) : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0x1.f9adp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 0x1.f9adp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 0x1.f9adp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 0x1.f9adp-4 (-9223372036854775807LL-1) : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0x1.f9adp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 0x1.f9adp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 0x1.f9adp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 0x1.f9adp-4 (-9223372036854775807LL-1) : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 0x1.f9adp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 0x1.f9adp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 0x1.f9adp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 0x1.f9adp-4 (-9223372036854775807LL-1) : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0x1.f9adp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0x1.f9adp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0x1.f9adp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0x1.f9adp-4 (-9223372036854775807LL-1) : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 0x1.f9adp-4 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0x1.f9adp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0x1.f9adp-4 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0x1.f9adp-4 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward binary32 0x1.f9acfep-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 0x1.f9acfep-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 0x1.f9acfep-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 0x1.f9acfep-4 (-9223372036854775807LL-1) : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0x1.f9acfep-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 0x1.f9acfep-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 0x1.f9acfep-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 0x1.f9acfep-4 (-9223372036854775807LL-1) : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0x1.f9acfep-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 0x1.f9acfep-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 0x1.f9acfep-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 0x1.f9acfep-4 (-9223372036854775807LL-1) : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 0x1.f9acfep-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 0x1.f9acfep-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 0x1.f9acfep-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 0x1.f9acfep-4 (-9223372036854775807LL-1) : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0x1.f9acfep-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0x1.f9acfep-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0x1.f9acfep-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0x1.f9acfep-4 (-9223372036854775807LL-1) : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 0x1.f9acfep-4 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0x1.f9acfep-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0x1.f9acfep-4 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0x1.f9acfep-4 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0x1.f9acffa7eb6cp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 0x1.f9acffa7eb6cp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 0x1.f9acffa7eb6cp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 0x1.f9acffa7eb6cp-4 (-9223372036854775807LL-1) : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0x1.f9acffa7eb6cp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 0x1.f9acffa7eb6cp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 0x1.f9acffa7eb6cp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 0x1.f9acffa7eb6cp-4 (-9223372036854775807LL-1) : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 0x1.f9acffa7eb6cp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 0x1.f9acffa7eb6cp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 0x1.f9acffa7eb6cp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 0x1.f9acffa7eb6cp-4 (-9223372036854775807LL-1) : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0x1.f9acffa7eb6cp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0x1.f9acffa7eb6cp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0x1.f9acffa7eb6cp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0x1.f9acffa7eb6cp-4 (-9223372036854775807LL-1) : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6cp-4 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0x1.f9acffa7eb6cp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0x1.f9acffa7eb6cp-4 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0x1.f9acffa7eb6cp-4 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0x1.f9acffa7eb6bfp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 0x1.f9acffa7eb6bfp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 0x1.f9acffa7eb6bfp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 0x1.f9acffa7eb6bfp-4 (-9223372036854775807LL-1) : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0x1.f9acffa7eb6bfp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 0x1.f9acffa7eb6bfp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 0x1.f9acffa7eb6bfp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 0x1.f9acffa7eb6bfp-4 (-9223372036854775807LL-1) : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 0x1.f9acffa7eb6bfp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 0x1.f9acffa7eb6bfp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 0x1.f9acffa7eb6bfp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 0x1.f9acffa7eb6bfp-4 (-9223372036854775807LL-1) : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bfp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0x1.f9acffa7eb6bfp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0x1.f9acffa7eb6bfp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0x1.f9acffa7eb6bfp-4 (-9223372036854775807LL-1) : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bfp-4 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bfp-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bfp-4 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0x1.f9acffa7eb6bfp-4 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0x1.f9acffa7eb6bf446p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 0x1.f9acffa7eb6bf446p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 0x1.f9acffa7eb6bf446p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 0x1.f9acffa7eb6bf446p-4 (-9223372036854775807LL-1) : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 0x1.f9acffa7eb6bf446p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 0x1.f9acffa7eb6bf446p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 0x1.f9acffa7eb6bf446p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 0x1.f9acffa7eb6bf446p-4 (-9223372036854775807LL-1) : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf446p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf446p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf446p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0x1.f9acffa7eb6bf446p-4 (-9223372036854775807LL-1) : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bf446p-4 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf446p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf446p-4 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0x1.f9acffa7eb6bf446p-4 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0x1.f9acffa7eb6bf444p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 0x1.f9acffa7eb6bf444p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 0x1.f9acffa7eb6bf444p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 0x1.f9acffa7eb6bf444p-4 (-9223372036854775807LL-1) : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 0x1.f9acffa7eb6bf444p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 0x1.f9acffa7eb6bf444p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 0x1.f9acffa7eb6bf444p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 0x1.f9acffa7eb6bf444p-4 (-9223372036854775807LL-1) : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0x1.f9acffa7eb6bf444p-4 (-9223372036854775807LL-1) : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bf444p-4 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf444p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf444p-4 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0x1.f9acffa7eb6bf444p-4 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae643p-4 (-9223372036854775807LL-1) : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae642p-4 (-9223372036854775807LL-1) : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 (-9223372036854775807LL-1) : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0x1.f9acffa7eb6bf444e0daa0cae68p-4 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 (-9223372036854775807LL-1) : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0x1.f9acffa7eb6bf444e0daa0cae6p-4 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+compoundn 1 -0x8000000000000000
+= compoundn downward binary32 0x1p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 0x1p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 0x1p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 0x1p+0 (-9223372036854775807LL-1) : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0x1p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 0x1p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 0x1p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 0x1p+0 (-9223372036854775807LL-1) : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0x1p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 0x1p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 0x1p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 0x1p+0 (-9223372036854775807LL-1) : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 0x1p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 0x1p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 0x1p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 0x1p+0 (-9223372036854775807LL-1) : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0x1p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0x1p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0x1p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0x1p+0 (-9223372036854775807LL-1) : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 0x1p+0 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0x1p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0x1p+0 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0x1p+0 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+compoundn 2 -0x8000000000000000
+= compoundn downward binary32 0x2p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 0x2p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 0x2p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 0x2p+0 (-9223372036854775807LL-1) : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0x2p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 0x2p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 0x2p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 0x2p+0 (-9223372036854775807LL-1) : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0x2p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 0x2p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 0x2p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 0x2p+0 (-9223372036854775807LL-1) : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 0x2p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 0x2p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 0x2p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 0x2p+0 (-9223372036854775807LL-1) : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0x2p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0x2p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0x2p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0x2p+0 (-9223372036854775807LL-1) : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 0x2p+0 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0x2p+0 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0x2p+0 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0x2p+0 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+compoundn max -0x8000000000000000
+= compoundn downward binary32 0xf.fffffp+124 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 0xf.fffffp+124 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 0xf.fffffp+124 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 0xf.fffffp+124 (-9223372036854775807LL-1) : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0xf.fffffp+124 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 0xf.fffffp+124 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 0xf.fffffp+124 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 0xf.fffffp+124 (-9223372036854775807LL-1) : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0xf.fffffp+124 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 0xf.fffffp+124 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 0xf.fffffp+124 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 0xf.fffffp+124 (-9223372036854775807LL-1) : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 0xf.fffffp+124 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 0xf.fffffp+124 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 0xf.fffffp+124 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 0xf.fffffp+124 (-9223372036854775807LL-1) : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0xf.fffffp+124 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0xf.fffffp+124 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0xf.fffffp+124 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0xf.fffffp+124 (-9223372036854775807LL-1) : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 0xf.fffffp+124 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0xf.fffffp+124 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0xf.fffffp+124 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0xf.fffffp+124 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0xf.ffffffffffff8p+1020 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 0xf.ffffffffffff8p+1020 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 0xf.ffffffffffff8p+1020 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 0xf.ffffffffffff8p+1020 (-9223372036854775807LL-1) : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0xf.ffffffffffff8p+1020 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 0xf.ffffffffffff8p+1020 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 0xf.ffffffffffff8p+1020 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 0xf.ffffffffffff8p+1020 (-9223372036854775807LL-1) : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 0xf.ffffffffffff8p+1020 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 0xf.ffffffffffff8p+1020 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 0xf.ffffffffffff8p+1020 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 0xf.ffffffffffff8p+1020 (-9223372036854775807LL-1) : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0xf.ffffffffffff8p+1020 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0xf.ffffffffffff8p+1020 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0xf.ffffffffffff8p+1020 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0xf.ffffffffffff8p+1020 (-9223372036854775807LL-1) : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 0xf.ffffffffffff8p+1020 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0xf.ffffffffffff8p+1020 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0xf.ffffffffffff8p+1020 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0xf.ffffffffffff8p+1020 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0xf.fffffffffffffffp+16380 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest intel96 0xf.fffffffffffffffp+16380 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero intel96 0xf.fffffffffffffffp+16380 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward intel96 0xf.fffffffffffffffp+16380 (-9223372036854775807LL-1) : 0x8p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward m68k96 0xf.fffffffffffffffp+16380 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest m68k96 0xf.fffffffffffffffp+16380 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero m68k96 0xf.fffffffffffffffp+16380 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward m68k96 0xf.fffffffffffffffp+16380 (-9223372036854775807LL-1) : 0x4p-16448 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0xf.fffffffffffffffp+16380 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0xf.fffffffffffffffp+16380 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0xf.fffffffffffffffp+16380 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0xf.fffffffffffffffp+16380 (-9223372036854775807LL-1) : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 (-9223372036854775807LL-1) : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 (-9223372036854775807LL-1) : 0x4p-16496 : inexact-ok underflow errno-erange-ok
+= compoundn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+compoundn 12.3456 10
+= compoundn downward binary32 0xc.58794p+0 10LL : 0x2.9ba36p+36 : inexact-ok
+= compoundn tonearest binary32 0xc.58794p+0 10LL : 0x2.9ba364p+36 : inexact-ok
+= compoundn towardzero binary32 0xc.58794p+0 10LL : 0x2.9ba36p+36 : inexact-ok
+= compoundn upward binary32 0xc.58794p+0 10LL : 0x2.9ba364p+36 : inexact-ok
+= compoundn downward binary64 0xc.58794p+0 10LL : 0x2.9ba3637f7cf96p+36 : inexact-ok
+= compoundn tonearest binary64 0xc.58794p+0 10LL : 0x2.9ba3637f7cf96p+36 : inexact-ok
+= compoundn towardzero binary64 0xc.58794p+0 10LL : 0x2.9ba3637f7cf96p+36 : inexact-ok
+= compoundn upward binary64 0xc.58794p+0 10LL : 0x2.9ba3637f7cf98p+36 : inexact-ok
+= compoundn downward intel96 0xc.58794p+0 10LL : 0x2.9ba3637f7cf965dcp+36 : inexact-ok
+= compoundn tonearest intel96 0xc.58794p+0 10LL : 0x2.9ba3637f7cf965ep+36 : inexact-ok
+= compoundn towardzero intel96 0xc.58794p+0 10LL : 0x2.9ba3637f7cf965dcp+36 : inexact-ok
+= compoundn upward intel96 0xc.58794p+0 10LL : 0x2.9ba3637f7cf965ep+36 : inexact-ok
+= compoundn downward m68k96 0xc.58794p+0 10LL : 0x2.9ba3637f7cf965dcp+36 : inexact-ok
+= compoundn tonearest m68k96 0xc.58794p+0 10LL : 0x2.9ba3637f7cf965ep+36 : inexact-ok
+= compoundn towardzero m68k96 0xc.58794p+0 10LL : 0x2.9ba3637f7cf965dcp+36 : inexact-ok
+= compoundn upward m68k96 0xc.58794p+0 10LL : 0x2.9ba3637f7cf965ep+36 : inexact-ok
+= compoundn downward binary128 0xc.58794p+0 10LL : 0x2.9ba3637f7cf965df37e1cb1e01bep+36 : inexact-ok
+= compoundn tonearest binary128 0xc.58794p+0 10LL : 0x2.9ba3637f7cf965df37e1cb1e01cp+36 : inexact-ok
+= compoundn towardzero binary128 0xc.58794p+0 10LL : 0x2.9ba3637f7cf965df37e1cb1e01bep+36 : inexact-ok
+= compoundn upward binary128 0xc.58794p+0 10LL : 0x2.9ba3637f7cf965df37e1cb1e01cp+36 : inexact-ok
+= compoundn downward ibm128 0xc.58794p+0 10LL : 0x2.9ba3637f7cf965df37e1cb1e01p+36 : inexact-ok
+= compoundn tonearest ibm128 0xc.58794p+0 10LL : 0x2.9ba3637f7cf965df37e1cb1e02p+36 : inexact-ok
+= compoundn towardzero ibm128 0xc.58794p+0 10LL : 0x2.9ba3637f7cf965df37e1cb1e01p+36 : inexact-ok
+= compoundn upward ibm128 0xc.58794p+0 10LL : 0x2.9ba3637f7cf965df37e1cb1e02p+36 : inexact-ok
+= compoundn downward binary32 0xc.58793p+0 10LL : 0x2.9ba344p+36 : inexact-ok
+= compoundn tonearest binary32 0xc.58793p+0 10LL : 0x2.9ba344p+36 : inexact-ok
+= compoundn towardzero binary32 0xc.58793p+0 10LL : 0x2.9ba344p+36 : inexact-ok
+= compoundn upward binary32 0xc.58793p+0 10LL : 0x2.9ba348p+36 : inexact-ok
+= compoundn downward binary64 0xc.58793p+0 10LL : 0x2.9ba3443b3229p+36 : inexact-ok
+= compoundn tonearest binary64 0xc.58793p+0 10LL : 0x2.9ba3443b3229p+36 : inexact-ok
+= compoundn towardzero binary64 0xc.58793p+0 10LL : 0x2.9ba3443b3229p+36 : inexact-ok
+= compoundn upward binary64 0xc.58793p+0 10LL : 0x2.9ba3443b32292p+36 : inexact-ok
+= compoundn downward intel96 0xc.58793p+0 10LL : 0x2.9ba3443b32290eccp+36 : inexact-ok
+= compoundn tonearest intel96 0xc.58793p+0 10LL : 0x2.9ba3443b32290eccp+36 : inexact-ok
+= compoundn towardzero intel96 0xc.58793p+0 10LL : 0x2.9ba3443b32290eccp+36 : inexact-ok
+= compoundn upward intel96 0xc.58793p+0 10LL : 0x2.9ba3443b32290edp+36 : inexact-ok
+= compoundn downward m68k96 0xc.58793p+0 10LL : 0x2.9ba3443b32290eccp+36 : inexact-ok
+= compoundn tonearest m68k96 0xc.58793p+0 10LL : 0x2.9ba3443b32290eccp+36 : inexact-ok
+= compoundn towardzero m68k96 0xc.58793p+0 10LL : 0x2.9ba3443b32290eccp+36 : inexact-ok
+= compoundn upward m68k96 0xc.58793p+0 10LL : 0x2.9ba3443b32290edp+36 : inexact-ok
+= compoundn downward binary128 0xc.58793p+0 10LL : 0x2.9ba3443b32290ecdc7509844accep+36 : inexact-ok
+= compoundn tonearest binary128 0xc.58793p+0 10LL : 0x2.9ba3443b32290ecdc7509844acdp+36 : inexact-ok
+= compoundn towardzero binary128 0xc.58793p+0 10LL : 0x2.9ba3443b32290ecdc7509844accep+36 : inexact-ok
+= compoundn upward binary128 0xc.58793p+0 10LL : 0x2.9ba3443b32290ecdc7509844acdp+36 : inexact-ok
+= compoundn downward ibm128 0xc.58793p+0 10LL : 0x2.9ba3443b32290ecdc7509844acp+36 : inexact-ok
+= compoundn tonearest ibm128 0xc.58793p+0 10LL : 0x2.9ba3443b32290ecdc7509844adp+36 : inexact-ok
+= compoundn towardzero ibm128 0xc.58793p+0 10LL : 0x2.9ba3443b32290ecdc7509844acp+36 : inexact-ok
+= compoundn upward ibm128 0xc.58793p+0 10LL : 0x2.9ba3443b32290ecdc7509844adp+36 : inexact-ok
+= compoundn downward binary64 0xc.58793dd97f63p+0 10LL : 0x2.9ba35f4bb604ep+36 : inexact-ok
+= compoundn tonearest binary64 0xc.58793dd97f63p+0 10LL : 0x2.9ba35f4bb604ep+36 : inexact-ok
+= compoundn towardzero binary64 0xc.58793dd97f63p+0 10LL : 0x2.9ba35f4bb604ep+36 : inexact-ok
+= compoundn upward binary64 0xc.58793dd97f63p+0 10LL : 0x2.9ba35f4bb605p+36 : inexact-ok
+= compoundn downward intel96 0xc.58793dd97f63p+0 10LL : 0x2.9ba35f4bb604e7bcp+36 : inexact-ok
+= compoundn tonearest intel96 0xc.58793dd97f63p+0 10LL : 0x2.9ba35f4bb604e7bcp+36 : inexact-ok
+= compoundn towardzero intel96 0xc.58793dd97f63p+0 10LL : 0x2.9ba35f4bb604e7bcp+36 : inexact-ok
+= compoundn upward intel96 0xc.58793dd97f63p+0 10LL : 0x2.9ba35f4bb604e7cp+36 : inexact-ok
+= compoundn downward m68k96 0xc.58793dd97f63p+0 10LL : 0x2.9ba35f4bb604e7bcp+36 : inexact-ok
+= compoundn tonearest m68k96 0xc.58793dd97f63p+0 10LL : 0x2.9ba35f4bb604e7bcp+36 : inexact-ok
+= compoundn towardzero m68k96 0xc.58793dd97f63p+0 10LL : 0x2.9ba35f4bb604e7bcp+36 : inexact-ok
+= compoundn upward m68k96 0xc.58793dd97f63p+0 10LL : 0x2.9ba35f4bb604e7cp+36 : inexact-ok
+= compoundn downward binary128 0xc.58793dd97f63p+0 10LL : 0x2.9ba35f4bb604e7bc0d220a7a380ep+36 : inexact-ok
+= compoundn tonearest binary128 0xc.58793dd97f63p+0 10LL : 0x2.9ba35f4bb604e7bc0d220a7a380ep+36 : inexact-ok
+= compoundn towardzero binary128 0xc.58793dd97f63p+0 10LL : 0x2.9ba35f4bb604e7bc0d220a7a380ep+36 : inexact-ok
+= compoundn upward binary128 0xc.58793dd97f63p+0 10LL : 0x2.9ba35f4bb604e7bc0d220a7a381p+36 : inexact-ok
+= compoundn downward ibm128 0xc.58793dd97f63p+0 10LL : 0x2.9ba35f4bb604e7bc0d220a7a38p+36 : inexact-ok
+= compoundn tonearest ibm128 0xc.58793dd97f63p+0 10LL : 0x2.9ba35f4bb604e7bc0d220a7a38p+36 : inexact-ok
+= compoundn towardzero ibm128 0xc.58793dd97f63p+0 10LL : 0x2.9ba35f4bb604e7bc0d220a7a38p+36 : inexact-ok
+= compoundn upward ibm128 0xc.58793dd97f63p+0 10LL : 0x2.9ba35f4bb604e7bc0d220a7a39p+36 : inexact-ok
+= compoundn downward binary64 0xc.58793dd97f628p+0 10LL : 0x2.9ba35f4bb603ep+36 : inexact-ok
+= compoundn tonearest binary64 0xc.58793dd97f628p+0 10LL : 0x2.9ba35f4bb603ep+36 : inexact-ok
+= compoundn towardzero binary64 0xc.58793dd97f628p+0 10LL : 0x2.9ba35f4bb603ep+36 : inexact-ok
+= compoundn upward binary64 0xc.58793dd97f628p+0 10LL : 0x2.9ba35f4bb604p+36 : inexact-ok
+= compoundn downward intel96 0xc.58793dd97f628p+0 10LL : 0x2.9ba35f4bb603ed98p+36 : inexact-ok
+= compoundn tonearest intel96 0xc.58793dd97f628p+0 10LL : 0x2.9ba35f4bb603ed98p+36 : inexact-ok
+= compoundn towardzero intel96 0xc.58793dd97f628p+0 10LL : 0x2.9ba35f4bb603ed98p+36 : inexact-ok
+= compoundn upward intel96 0xc.58793dd97f628p+0 10LL : 0x2.9ba35f4bb603ed9cp+36 : inexact-ok
+= compoundn downward m68k96 0xc.58793dd97f628p+0 10LL : 0x2.9ba35f4bb603ed98p+36 : inexact-ok
+= compoundn tonearest m68k96 0xc.58793dd97f628p+0 10LL : 0x2.9ba35f4bb603ed98p+36 : inexact-ok
+= compoundn towardzero m68k96 0xc.58793dd97f628p+0 10LL : 0x2.9ba35f4bb603ed98p+36 : inexact-ok
+= compoundn upward m68k96 0xc.58793dd97f628p+0 10LL : 0x2.9ba35f4bb603ed9cp+36 : inexact-ok
+= compoundn downward binary128 0xc.58793dd97f628p+0 10LL : 0x2.9ba35f4bb603ed99b2c49402b5e4p+36 : inexact-ok
+= compoundn tonearest binary128 0xc.58793dd97f628p+0 10LL : 0x2.9ba35f4bb603ed99b2c49402b5e6p+36 : inexact-ok
+= compoundn towardzero binary128 0xc.58793dd97f628p+0 10LL : 0x2.9ba35f4bb603ed99b2c49402b5e4p+36 : inexact-ok
+= compoundn upward binary128 0xc.58793dd97f628p+0 10LL : 0x2.9ba35f4bb603ed99b2c49402b5e6p+36 : inexact-ok
+= compoundn downward ibm128 0xc.58793dd97f628p+0 10LL : 0x2.9ba35f4bb603ed99b2c49402b5p+36 : inexact-ok
+= compoundn tonearest ibm128 0xc.58793dd97f628p+0 10LL : 0x2.9ba35f4bb603ed99b2c49402b6p+36 : inexact-ok
+= compoundn towardzero ibm128 0xc.58793dd97f628p+0 10LL : 0x2.9ba35f4bb603ed99b2c49402b5p+36 : inexact-ok
+= compoundn upward ibm128 0xc.58793dd97f628p+0 10LL : 0x2.9ba35f4bb603ed99b2c49402b6p+36 : inexact-ok
+= compoundn downward intel96 0xc.58793dd97f62b6bp+0 10LL : 0x2.9ba35f4bb6045878p+36 : inexact-ok
+= compoundn tonearest intel96 0xc.58793dd97f62b6bp+0 10LL : 0x2.9ba35f4bb6045878p+36 : inexact-ok
+= compoundn towardzero intel96 0xc.58793dd97f62b6bp+0 10LL : 0x2.9ba35f4bb6045878p+36 : inexact-ok
+= compoundn upward intel96 0xc.58793dd97f62b6bp+0 10LL : 0x2.9ba35f4bb604587cp+36 : inexact-ok
+= compoundn downward m68k96 0xc.58793dd97f62b6bp+0 10LL : 0x2.9ba35f4bb6045878p+36 : inexact-ok
+= compoundn tonearest m68k96 0xc.58793dd97f62b6bp+0 10LL : 0x2.9ba35f4bb6045878p+36 : inexact-ok
+= compoundn towardzero m68k96 0xc.58793dd97f62b6bp+0 10LL : 0x2.9ba35f4bb6045878p+36 : inexact-ok
+= compoundn upward m68k96 0xc.58793dd97f62b6bp+0 10LL : 0x2.9ba35f4bb604587cp+36 : inexact-ok
+= compoundn downward binary128 0xc.58793dd97f62b6bp+0 10LL : 0x2.9ba35f4bb60458782020427ffacep+36 : inexact-ok
+= compoundn tonearest binary128 0xc.58793dd97f62b6bp+0 10LL : 0x2.9ba35f4bb60458782020427ffadp+36 : inexact-ok
+= compoundn towardzero binary128 0xc.58793dd97f62b6bp+0 10LL : 0x2.9ba35f4bb60458782020427ffacep+36 : inexact-ok
+= compoundn upward binary128 0xc.58793dd97f62b6bp+0 10LL : 0x2.9ba35f4bb60458782020427ffadp+36 : inexact-ok
+= compoundn downward ibm128 0xc.58793dd97f62b6bp+0 10LL : 0x2.9ba35f4bb60458782020427ffap+36 : inexact-ok
+= compoundn tonearest ibm128 0xc.58793dd97f62b6bp+0 10LL : 0x2.9ba35f4bb60458782020427ffbp+36 : inexact-ok
+= compoundn towardzero ibm128 0xc.58793dd97f62b6bp+0 10LL : 0x2.9ba35f4bb60458782020427ffap+36 : inexact-ok
+= compoundn upward ibm128 0xc.58793dd97f62b6bp+0 10LL : 0x2.9ba35f4bb60458782020427ffbp+36 : inexact-ok
+= compoundn downward intel96 0xc.58793dd97f62b6ap+0 10LL : 0x2.9ba35f4bb6045858p+36 : inexact-ok
+= compoundn tonearest intel96 0xc.58793dd97f62b6ap+0 10LL : 0x2.9ba35f4bb6045858p+36 : inexact-ok
+= compoundn towardzero intel96 0xc.58793dd97f62b6ap+0 10LL : 0x2.9ba35f4bb6045858p+36 : inexact-ok
+= compoundn upward intel96 0xc.58793dd97f62b6ap+0 10LL : 0x2.9ba35f4bb604585cp+36 : inexact-ok
+= compoundn downward m68k96 0xc.58793dd97f62b6ap+0 10LL : 0x2.9ba35f4bb6045858p+36 : inexact-ok
+= compoundn tonearest m68k96 0xc.58793dd97f62b6ap+0 10LL : 0x2.9ba35f4bb6045858p+36 : inexact-ok
+= compoundn towardzero m68k96 0xc.58793dd97f62b6ap+0 10LL : 0x2.9ba35f4bb6045858p+36 : inexact-ok
+= compoundn upward m68k96 0xc.58793dd97f62b6ap+0 10LL : 0x2.9ba35f4bb604585cp+36 : inexact-ok
+= compoundn downward binary128 0xc.58793dd97f62b6ap+0 10LL : 0x2.9ba35f4bb6045858dbd4f6d12bep+36 : inexact-ok
+= compoundn tonearest binary128 0xc.58793dd97f62b6ap+0 10LL : 0x2.9ba35f4bb6045858dbd4f6d12bep+36 : inexact-ok
+= compoundn towardzero binary128 0xc.58793dd97f62b6ap+0 10LL : 0x2.9ba35f4bb6045858dbd4f6d12bep+36 : inexact-ok
+= compoundn upward binary128 0xc.58793dd97f62b6ap+0 10LL : 0x2.9ba35f4bb6045858dbd4f6d12be2p+36 : inexact-ok
+= compoundn downward ibm128 0xc.58793dd97f62b6ap+0 10LL : 0x2.9ba35f4bb6045858dbd4f6d12bp+36 : inexact-ok
+= compoundn tonearest ibm128 0xc.58793dd97f62b6ap+0 10LL : 0x2.9ba35f4bb6045858dbd4f6d12cp+36 : inexact-ok
+= compoundn towardzero ibm128 0xc.58793dd97f62b6ap+0 10LL : 0x2.9ba35f4bb6045858dbd4f6d12bp+36 : inexact-ok
+= compoundn upward ibm128 0xc.58793dd97f62b6ap+0 10LL : 0x2.9ba35f4bb6045858dbd4f6d12cp+36 : inexact-ok
+= compoundn downward binary128 0xc.58793dd97f62b6ae7d566cf41f28p+0 10LL : 0x2.9ba35f4bb60458752c854948280ap+36 : inexact-ok
+= compoundn tonearest binary128 0xc.58793dd97f62b6ae7d566cf41f28p+0 10LL : 0x2.9ba35f4bb60458752c854948280cp+36 : inexact-ok
+= compoundn towardzero binary128 0xc.58793dd97f62b6ae7d566cf41f28p+0 10LL : 0x2.9ba35f4bb60458752c854948280ap+36 : inexact-ok
+= compoundn upward binary128 0xc.58793dd97f62b6ae7d566cf41f28p+0 10LL : 0x2.9ba35f4bb60458752c854948280cp+36 : inexact-ok
+= compoundn downward binary128 0xc.58793dd97f62b6ae7d566cf41f2p+0 10LL : 0x2.9ba35f4bb60458752c85494827fcp+36 : inexact-ok
+= compoundn tonearest binary128 0xc.58793dd97f62b6ae7d566cf41f2p+0 10LL : 0x2.9ba35f4bb60458752c85494827fcp+36 : inexact-ok
+= compoundn towardzero binary128 0xc.58793dd97f62b6ae7d566cf41f2p+0 10LL : 0x2.9ba35f4bb60458752c85494827fcp+36 : inexact-ok
+= compoundn upward binary128 0xc.58793dd97f62b6ae7d566cf41f2p+0 10LL : 0x2.9ba35f4bb60458752c85494827fep+36 : inexact-ok
+= compoundn downward binary128 0xc.58793dd97f62b6ae7d566cf42p+0 10LL : 0x2.9ba35f4bb60458752c85494829bp+36 : inexact-ok
+= compoundn tonearest binary128 0xc.58793dd97f62b6ae7d566cf42p+0 10LL : 0x2.9ba35f4bb60458752c85494829b2p+36 : inexact-ok
+= compoundn towardzero binary128 0xc.58793dd97f62b6ae7d566cf42p+0 10LL : 0x2.9ba35f4bb60458752c85494829bp+36 : inexact-ok
+= compoundn upward binary128 0xc.58793dd97f62b6ae7d566cf42p+0 10LL : 0x2.9ba35f4bb60458752c85494829b2p+36 : inexact-ok
+= compoundn downward ibm128 0xc.58793dd97f62b6ae7d566cf42p+0 10LL : 0x2.9ba35f4bb60458752c85494829p+36 : inexact-ok
+= compoundn tonearest ibm128 0xc.58793dd97f62b6ae7d566cf42p+0 10LL : 0x2.9ba35f4bb60458752c8549482ap+36 : inexact-ok
+= compoundn towardzero ibm128 0xc.58793dd97f62b6ae7d566cf42p+0 10LL : 0x2.9ba35f4bb60458752c85494829p+36 : inexact-ok
+= compoundn upward ibm128 0xc.58793dd97f62b6ae7d566cf42p+0 10LL : 0x2.9ba35f4bb60458752c8549482ap+36 : inexact-ok
+= compoundn downward binary128 0xc.58793dd97f62b6ae7d566cf41cp+0 10LL : 0x2.9ba35f4bb60458752c85494821ep+36 : inexact-ok
+= compoundn tonearest binary128 0xc.58793dd97f62b6ae7d566cf41cp+0 10LL : 0x2.9ba35f4bb60458752c85494821ep+36 : inexact-ok
+= compoundn towardzero binary128 0xc.58793dd97f62b6ae7d566cf41cp+0 10LL : 0x2.9ba35f4bb60458752c85494821ep+36 : inexact-ok
+= compoundn upward binary128 0xc.58793dd97f62b6ae7d566cf41cp+0 10LL : 0x2.9ba35f4bb60458752c85494821e2p+36 : inexact-ok
+= compoundn downward ibm128 0xc.58793dd97f62b6ae7d566cf41cp+0 10LL : 0x2.9ba35f4bb60458752c85494821p+36 : inexact-ok
+= compoundn tonearest ibm128 0xc.58793dd97f62b6ae7d566cf41cp+0 10LL : 0x2.9ba35f4bb60458752c85494822p+36 : inexact-ok
+= compoundn towardzero ibm128 0xc.58793dd97f62b6ae7d566cf41cp+0 10LL : 0x2.9ba35f4bb60458752c85494821p+36 : inexact-ok
+= compoundn upward ibm128 0xc.58793dd97f62b6ae7d566cf41cp+0 10LL : 0x2.9ba35f4bb60458752c85494822p+36 : inexact-ok
+compoundn 12.3456 -10
+= compoundn downward binary32 0xc.58794p+0 -10LL : 0x6.229338p-40 : inexact-ok
+= compoundn tonearest binary32 0xc.58794p+0 -10LL : 0x6.229338p-40 : inexact-ok
+= compoundn towardzero binary32 0xc.58794p+0 -10LL : 0x6.229338p-40 : inexact-ok
+= compoundn upward binary32 0xc.58794p+0 -10LL : 0x6.22934p-40 : inexact-ok
+= compoundn downward binary64 0xc.58794p+0 -10LL : 0x6.22933aa8536e4p-40 : inexact-ok
+= compoundn tonearest binary64 0xc.58794p+0 -10LL : 0x6.22933aa8536e4p-40 : inexact-ok
+= compoundn towardzero binary64 0xc.58794p+0 -10LL : 0x6.22933aa8536e4p-40 : inexact-ok
+= compoundn upward binary64 0xc.58794p+0 -10LL : 0x6.22933aa8536e8p-40 : inexact-ok
+= compoundn downward intel96 0xc.58794p+0 -10LL : 0x6.22933aa8536e4478p-40 : inexact-ok
+= compoundn tonearest intel96 0xc.58794p+0 -10LL : 0x6.22933aa8536e4478p-40 : inexact-ok
+= compoundn towardzero intel96 0xc.58794p+0 -10LL : 0x6.22933aa8536e4478p-40 : inexact-ok
+= compoundn upward intel96 0xc.58794p+0 -10LL : 0x6.22933aa8536e448p-40 : inexact-ok
+= compoundn downward m68k96 0xc.58794p+0 -10LL : 0x6.22933aa8536e4478p-40 : inexact-ok
+= compoundn tonearest m68k96 0xc.58794p+0 -10LL : 0x6.22933aa8536e4478p-40 : inexact-ok
+= compoundn towardzero m68k96 0xc.58794p+0 -10LL : 0x6.22933aa8536e4478p-40 : inexact-ok
+= compoundn upward m68k96 0xc.58794p+0 -10LL : 0x6.22933aa8536e448p-40 : inexact-ok
+= compoundn downward binary128 0xc.58794p+0 -10LL : 0x6.22933aa8536e447a2456a077ab28p-40 : inexact-ok
+= compoundn tonearest binary128 0xc.58794p+0 -10LL : 0x6.22933aa8536e447a2456a077ab28p-40 : inexact-ok
+= compoundn towardzero binary128 0xc.58794p+0 -10LL : 0x6.22933aa8536e447a2456a077ab28p-40 : inexact-ok
+= compoundn upward binary128 0xc.58794p+0 -10LL : 0x6.22933aa8536e447a2456a077ab2cp-40 : inexact-ok
+= compoundn downward ibm128 0xc.58794p+0 -10LL : 0x6.22933aa8536e447a2456a077aap-40 : inexact-ok
+= compoundn tonearest ibm128 0xc.58794p+0 -10LL : 0x6.22933aa8536e447a2456a077acp-40 : inexact-ok
+= compoundn towardzero ibm128 0xc.58794p+0 -10LL : 0x6.22933aa8536e447a2456a077aap-40 : inexact-ok
+= compoundn upward ibm128 0xc.58794p+0 -10LL : 0x6.22933aa8536e447a2456a077acp-40 : inexact-ok
+= compoundn downward binary32 0xc.58793p+0 -10LL : 0x6.22938p-40 : inexact-ok
+= compoundn tonearest binary32 0xc.58793p+0 -10LL : 0x6.229388p-40 : inexact-ok
+= compoundn towardzero binary32 0xc.58793p+0 -10LL : 0x6.22938p-40 : inexact-ok
+= compoundn upward binary32 0xc.58793p+0 -10LL : 0x6.229388p-40 : inexact-ok
+= compoundn downward binary64 0xc.58793p+0 -10LL : 0x6.22938435e9494p-40 : inexact-ok
+= compoundn tonearest binary64 0xc.58793p+0 -10LL : 0x6.22938435e9494p-40 : inexact-ok
+= compoundn towardzero binary64 0xc.58793p+0 -10LL : 0x6.22938435e9494p-40 : inexact-ok
+= compoundn upward binary64 0xc.58793p+0 -10LL : 0x6.22938435e9498p-40 : inexact-ok
+= compoundn downward intel96 0xc.58793p+0 -10LL : 0x6.22938435e9494b78p-40 : inexact-ok
+= compoundn tonearest intel96 0xc.58793p+0 -10LL : 0x6.22938435e9494b78p-40 : inexact-ok
+= compoundn towardzero intel96 0xc.58793p+0 -10LL : 0x6.22938435e9494b78p-40 : inexact-ok
+= compoundn upward intel96 0xc.58793p+0 -10LL : 0x6.22938435e9494b8p-40 : inexact-ok
+= compoundn downward m68k96 0xc.58793p+0 -10LL : 0x6.22938435e9494b78p-40 : inexact-ok
+= compoundn tonearest m68k96 0xc.58793p+0 -10LL : 0x6.22938435e9494b78p-40 : inexact-ok
+= compoundn towardzero m68k96 0xc.58793p+0 -10LL : 0x6.22938435e9494b78p-40 : inexact-ok
+= compoundn upward m68k96 0xc.58793p+0 -10LL : 0x6.22938435e9494b8p-40 : inexact-ok
+= compoundn downward binary128 0xc.58793p+0 -10LL : 0x6.22938435e9494b7bc415352170b8p-40 : inexact-ok
+= compoundn tonearest binary128 0xc.58793p+0 -10LL : 0x6.22938435e9494b7bc415352170b8p-40 : inexact-ok
+= compoundn towardzero binary128 0xc.58793p+0 -10LL : 0x6.22938435e9494b7bc415352170b8p-40 : inexact-ok
+= compoundn upward binary128 0xc.58793p+0 -10LL : 0x6.22938435e9494b7bc415352170bcp-40 : inexact-ok
+= compoundn downward ibm128 0xc.58793p+0 -10LL : 0x6.22938435e9494b7bc41535217p-40 : inexact-ok
+= compoundn tonearest ibm128 0xc.58793p+0 -10LL : 0x6.22938435e9494b7bc41535217p-40 : inexact-ok
+= compoundn towardzero ibm128 0xc.58793p+0 -10LL : 0x6.22938435e9494b7bc41535217p-40 : inexact-ok
+= compoundn upward ibm128 0xc.58793p+0 -10LL : 0x6.22938435e9494b7bc415352172p-40 : inexact-ok
+= compoundn downward binary64 0xc.58793dd97f63p+0 -10LL : 0x6.2293448b05738p-40 : inexact-ok
+= compoundn tonearest binary64 0xc.58793dd97f63p+0 -10LL : 0x6.2293448b05738p-40 : inexact-ok
+= compoundn towardzero binary64 0xc.58793dd97f63p+0 -10LL : 0x6.2293448b05738p-40 : inexact-ok
+= compoundn upward binary64 0xc.58793dd97f63p+0 -10LL : 0x6.2293448b0573cp-40 : inexact-ok
+= compoundn downward intel96 0xc.58793dd97f63p+0 -10LL : 0x6.2293448b05738d3p-40 : inexact-ok
+= compoundn tonearest intel96 0xc.58793dd97f63p+0 -10LL : 0x6.2293448b05738d38p-40 : inexact-ok
+= compoundn towardzero intel96 0xc.58793dd97f63p+0 -10LL : 0x6.2293448b05738d3p-40 : inexact-ok
+= compoundn upward intel96 0xc.58793dd97f63p+0 -10LL : 0x6.2293448b05738d38p-40 : inexact-ok
+= compoundn downward m68k96 0xc.58793dd97f63p+0 -10LL : 0x6.2293448b05738d3p-40 : inexact-ok
+= compoundn tonearest m68k96 0xc.58793dd97f63p+0 -10LL : 0x6.2293448b05738d38p-40 : inexact-ok
+= compoundn towardzero m68k96 0xc.58793dd97f63p+0 -10LL : 0x6.2293448b05738d3p-40 : inexact-ok
+= compoundn upward m68k96 0xc.58793dd97f63p+0 -10LL : 0x6.2293448b05738d38p-40 : inexact-ok
+= compoundn downward binary128 0xc.58793dd97f63p+0 -10LL : 0x6.2293448b05738d37b192d427c2fcp-40 : inexact-ok
+= compoundn tonearest binary128 0xc.58793dd97f63p+0 -10LL : 0x6.2293448b05738d37b192d427c2fcp-40 : inexact-ok
+= compoundn towardzero binary128 0xc.58793dd97f63p+0 -10LL : 0x6.2293448b05738d37b192d427c2fcp-40 : inexact-ok
+= compoundn upward binary128 0xc.58793dd97f63p+0 -10LL : 0x6.2293448b05738d37b192d427c3p-40 : inexact-ok
+= compoundn downward ibm128 0xc.58793dd97f63p+0 -10LL : 0x6.2293448b05738d37b192d427c2p-40 : inexact-ok
+= compoundn tonearest ibm128 0xc.58793dd97f63p+0 -10LL : 0x6.2293448b05738d37b192d427c2p-40 : inexact-ok
+= compoundn towardzero ibm128 0xc.58793dd97f63p+0 -10LL : 0x6.2293448b05738d37b192d427c2p-40 : inexact-ok
+= compoundn upward ibm128 0xc.58793dd97f63p+0 -10LL : 0x6.2293448b05738d37b192d427c4p-40 : inexact-ok
+= compoundn downward binary64 0xc.58793dd97f628p+0 -10LL : 0x6.2293448b0575cp-40 : inexact-ok
+= compoundn tonearest binary64 0xc.58793dd97f628p+0 -10LL : 0x6.2293448b0575cp-40 : inexact-ok
+= compoundn towardzero binary64 0xc.58793dd97f628p+0 -10LL : 0x6.2293448b0575cp-40 : inexact-ok
+= compoundn upward binary64 0xc.58793dd97f628p+0 -10LL : 0x6.2293448b0576p-40 : inexact-ok
+= compoundn downward intel96 0xc.58793dd97f628p+0 -10LL : 0x6.2293448b0575d9ap-40 : inexact-ok
+= compoundn tonearest intel96 0xc.58793dd97f628p+0 -10LL : 0x6.2293448b0575d9a8p-40 : inexact-ok
+= compoundn towardzero intel96 0xc.58793dd97f628p+0 -10LL : 0x6.2293448b0575d9ap-40 : inexact-ok
+= compoundn upward intel96 0xc.58793dd97f628p+0 -10LL : 0x6.2293448b0575d9a8p-40 : inexact-ok
+= compoundn downward m68k96 0xc.58793dd97f628p+0 -10LL : 0x6.2293448b0575d9ap-40 : inexact-ok
+= compoundn tonearest m68k96 0xc.58793dd97f628p+0 -10LL : 0x6.2293448b0575d9a8p-40 : inexact-ok
+= compoundn towardzero m68k96 0xc.58793dd97f628p+0 -10LL : 0x6.2293448b0575d9ap-40 : inexact-ok
+= compoundn upward m68k96 0xc.58793dd97f628p+0 -10LL : 0x6.2293448b0575d9a8p-40 : inexact-ok
+= compoundn downward binary128 0xc.58793dd97f628p+0 -10LL : 0x6.2293448b0575d9a45555f7d668b8p-40 : inexact-ok
+= compoundn tonearest binary128 0xc.58793dd97f628p+0 -10LL : 0x6.2293448b0575d9a45555f7d668b8p-40 : inexact-ok
+= compoundn towardzero binary128 0xc.58793dd97f628p+0 -10LL : 0x6.2293448b0575d9a45555f7d668b8p-40 : inexact-ok
+= compoundn upward binary128 0xc.58793dd97f628p+0 -10LL : 0x6.2293448b0575d9a45555f7d668bcp-40 : inexact-ok
+= compoundn downward ibm128 0xc.58793dd97f628p+0 -10LL : 0x6.2293448b0575d9a45555f7d668p-40 : inexact-ok
+= compoundn tonearest ibm128 0xc.58793dd97f628p+0 -10LL : 0x6.2293448b0575d9a45555f7d668p-40 : inexact-ok
+= compoundn towardzero ibm128 0xc.58793dd97f628p+0 -10LL : 0x6.2293448b0575d9a45555f7d668p-40 : inexact-ok
+= compoundn upward ibm128 0xc.58793dd97f628p+0 -10LL : 0x6.2293448b0575d9a45555f7d66ap-40 : inexact-ok
+= compoundn downward intel96 0xc.58793dd97f62b6bp+0 -10LL : 0x6.2293448b0574de38p-40 : inexact-ok
+= compoundn tonearest intel96 0xc.58793dd97f62b6bp+0 -10LL : 0x6.2293448b0574de4p-40 : inexact-ok
+= compoundn towardzero intel96 0xc.58793dd97f62b6bp+0 -10LL : 0x6.2293448b0574de38p-40 : inexact-ok
+= compoundn upward intel96 0xc.58793dd97f62b6bp+0 -10LL : 0x6.2293448b0574de4p-40 : inexact-ok
+= compoundn downward m68k96 0xc.58793dd97f62b6bp+0 -10LL : 0x6.2293448b0574de38p-40 : inexact-ok
+= compoundn tonearest m68k96 0xc.58793dd97f62b6bp+0 -10LL : 0x6.2293448b0574de4p-40 : inexact-ok
+= compoundn towardzero m68k96 0xc.58793dd97f62b6bp+0 -10LL : 0x6.2293448b0574de38p-40 : inexact-ok
+= compoundn upward m68k96 0xc.58793dd97f62b6bp+0 -10LL : 0x6.2293448b0574de4p-40 : inexact-ok
+= compoundn downward binary128 0xc.58793dd97f62b6bp+0 -10LL : 0x6.2293448b0574de3d6ade78778cfcp-40 : inexact-ok
+= compoundn tonearest binary128 0xc.58793dd97f62b6bp+0 -10LL : 0x6.2293448b0574de3d6ade78778dp-40 : inexact-ok
+= compoundn towardzero binary128 0xc.58793dd97f62b6bp+0 -10LL : 0x6.2293448b0574de3d6ade78778cfcp-40 : inexact-ok
+= compoundn upward binary128 0xc.58793dd97f62b6bp+0 -10LL : 0x6.2293448b0574de3d6ade78778dp-40 : inexact-ok
+= compoundn downward ibm128 0xc.58793dd97f62b6bp+0 -10LL : 0x6.2293448b0574de3d6ade78778cp-40 : inexact-ok
+= compoundn tonearest ibm128 0xc.58793dd97f62b6bp+0 -10LL : 0x6.2293448b0574de3d6ade78778cp-40 : inexact-ok
+= compoundn towardzero ibm128 0xc.58793dd97f62b6bp+0 -10LL : 0x6.2293448b0574de3d6ade78778cp-40 : inexact-ok
+= compoundn upward ibm128 0xc.58793dd97f62b6bp+0 -10LL : 0x6.2293448b0574de3d6ade78778ep-40 : inexact-ok
+= compoundn downward intel96 0xc.58793dd97f62b6ap+0 -10LL : 0x6.2293448b0574de8p-40 : inexact-ok
+= compoundn tonearest intel96 0xc.58793dd97f62b6ap+0 -10LL : 0x6.2293448b0574de88p-40 : inexact-ok
+= compoundn towardzero intel96 0xc.58793dd97f62b6ap+0 -10LL : 0x6.2293448b0574de8p-40 : inexact-ok
+= compoundn upward intel96 0xc.58793dd97f62b6ap+0 -10LL : 0x6.2293448b0574de88p-40 : inexact-ok
+= compoundn downward m68k96 0xc.58793dd97f62b6ap+0 -10LL : 0x6.2293448b0574de8p-40 : inexact-ok
+= compoundn tonearest m68k96 0xc.58793dd97f62b6ap+0 -10LL : 0x6.2293448b0574de88p-40 : inexact-ok
+= compoundn towardzero m68k96 0xc.58793dd97f62b6ap+0 -10LL : 0x6.2293448b0574de8p-40 : inexact-ok
+= compoundn upward m68k96 0xc.58793dd97f62b6ap+0 -10LL : 0x6.2293448b0574de88p-40 : inexact-ok
+= compoundn downward binary128 0xc.58793dd97f62b6ap+0 -10LL : 0x6.2293448b0574de86f872f0dc02d4p-40 : inexact-ok
+= compoundn tonearest binary128 0xc.58793dd97f62b6ap+0 -10LL : 0x6.2293448b0574de86f872f0dc02d4p-40 : inexact-ok
+= compoundn towardzero binary128 0xc.58793dd97f62b6ap+0 -10LL : 0x6.2293448b0574de86f872f0dc02d4p-40 : inexact-ok
+= compoundn upward binary128 0xc.58793dd97f62b6ap+0 -10LL : 0x6.2293448b0574de86f872f0dc02d8p-40 : inexact-ok
+= compoundn downward ibm128 0xc.58793dd97f62b6ap+0 -10LL : 0x6.2293448b0574de86f872f0dc02p-40 : inexact-ok
+= compoundn tonearest ibm128 0xc.58793dd97f62b6ap+0 -10LL : 0x6.2293448b0574de86f872f0dc02p-40 : inexact-ok
+= compoundn towardzero ibm128 0xc.58793dd97f62b6ap+0 -10LL : 0x6.2293448b0574de86f872f0dc02p-40 : inexact-ok
+= compoundn upward ibm128 0xc.58793dd97f62b6ap+0 -10LL : 0x6.2293448b0574de86f872f0dc04p-40 : inexact-ok
+= compoundn downward binary128 0xc.58793dd97f62b6ae7d566cf41f28p+0 -10LL : 0x6.2293448b0574de445c61a1bb9b44p-40 : inexact-ok
+= compoundn tonearest binary128 0xc.58793dd97f62b6ae7d566cf41f28p+0 -10LL : 0x6.2293448b0574de445c61a1bb9b44p-40 : inexact-ok
+= compoundn towardzero binary128 0xc.58793dd97f62b6ae7d566cf41f28p+0 -10LL : 0x6.2293448b0574de445c61a1bb9b44p-40 : inexact-ok
+= compoundn upward binary128 0xc.58793dd97f62b6ae7d566cf41f28p+0 -10LL : 0x6.2293448b0574de445c61a1bb9b48p-40 : inexact-ok
+= compoundn downward binary128 0xc.58793dd97f62b6ae7d566cf41f2p+0 -10LL : 0x6.2293448b0574de445c61a1bb9b68p-40 : inexact-ok
+= compoundn tonearest binary128 0xc.58793dd97f62b6ae7d566cf41f2p+0 -10LL : 0x6.2293448b0574de445c61a1bb9b6cp-40 : inexact-ok
+= compoundn towardzero binary128 0xc.58793dd97f62b6ae7d566cf41f2p+0 -10LL : 0x6.2293448b0574de445c61a1bb9b68p-40 : inexact-ok
+= compoundn upward binary128 0xc.58793dd97f62b6ae7d566cf41f2p+0 -10LL : 0x6.2293448b0574de445c61a1bb9b6cp-40 : inexact-ok
+= compoundn downward binary128 0xc.58793dd97f62b6ae7d566cf42p+0 -10LL : 0x6.2293448b0574de445c61a1bb9764p-40 : inexact-ok
+= compoundn tonearest binary128 0xc.58793dd97f62b6ae7d566cf42p+0 -10LL : 0x6.2293448b0574de445c61a1bb9764p-40 : inexact-ok
+= compoundn towardzero binary128 0xc.58793dd97f62b6ae7d566cf42p+0 -10LL : 0x6.2293448b0574de445c61a1bb9764p-40 : inexact-ok
+= compoundn upward binary128 0xc.58793dd97f62b6ae7d566cf42p+0 -10LL : 0x6.2293448b0574de445c61a1bb9768p-40 : inexact-ok
+= compoundn downward ibm128 0xc.58793dd97f62b6ae7d566cf42p+0 -10LL : 0x6.2293448b0574de445c61a1bb96p-40 : inexact-ok
+= compoundn tonearest ibm128 0xc.58793dd97f62b6ae7d566cf42p+0 -10LL : 0x6.2293448b0574de445c61a1bb98p-40 : inexact-ok
+= compoundn towardzero ibm128 0xc.58793dd97f62b6ae7d566cf42p+0 -10LL : 0x6.2293448b0574de445c61a1bb96p-40 : inexact-ok
+= compoundn upward ibm128 0xc.58793dd97f62b6ae7d566cf42p+0 -10LL : 0x6.2293448b0574de445c61a1bb98p-40 : inexact-ok
+= compoundn downward binary128 0xc.58793dd97f62b6ae7d566cf41cp+0 -10LL : 0x6.2293448b0574de445c61a1bba9c4p-40 : inexact-ok
+= compoundn tonearest binary128 0xc.58793dd97f62b6ae7d566cf41cp+0 -10LL : 0x6.2293448b0574de445c61a1bba9c8p-40 : inexact-ok
+= compoundn towardzero binary128 0xc.58793dd97f62b6ae7d566cf41cp+0 -10LL : 0x6.2293448b0574de445c61a1bba9c4p-40 : inexact-ok
+= compoundn upward binary128 0xc.58793dd97f62b6ae7d566cf41cp+0 -10LL : 0x6.2293448b0574de445c61a1bba9c8p-40 : inexact-ok
+= compoundn downward ibm128 0xc.58793dd97f62b6ae7d566cf41cp+0 -10LL : 0x6.2293448b0574de445c61a1bba8p-40 : inexact-ok
+= compoundn tonearest ibm128 0xc.58793dd97f62b6ae7d566cf41cp+0 -10LL : 0x6.2293448b0574de445c61a1bbaap-40 : inexact-ok
+= compoundn towardzero ibm128 0xc.58793dd97f62b6ae7d566cf41cp+0 -10LL : 0x6.2293448b0574de445c61a1bba8p-40 : inexact-ok
+= compoundn upward ibm128 0xc.58793dd97f62b6ae7d566cf41cp+0 -10LL : 0x6.2293448b0574de445c61a1bbaap-40 : inexact-ok
+compoundn 0x1p-64 0x7fffffffffffffff
+= compoundn downward binary32 0x1p-64 9223372036854775807LL : 0x1.a61298p+0 : inexact-ok
+= compoundn tonearest binary32 0x1p-64 9223372036854775807LL : 0x1.a61298p+0 : inexact-ok
+= compoundn towardzero binary32 0x1p-64 9223372036854775807LL : 0x1.a61298p+0 : inexact-ok
+= compoundn upward binary32 0x1p-64 9223372036854775807LL : 0x1.a6129ap+0 : inexact-ok
+= compoundn downward binary64 0x1p-64 9223372036854775807LL : 0x1.a61298e1e069bp+0 : inexact-ok
+= compoundn tonearest binary64 0x1p-64 9223372036854775807LL : 0x1.a61298e1e069cp+0 : inexact-ok
+= compoundn towardzero binary64 0x1p-64 9223372036854775807LL : 0x1.a61298e1e069bp+0 : inexact-ok
+= compoundn upward binary64 0x1p-64 9223372036854775807LL : 0x1.a61298e1e069cp+0 : inexact-ok
+= compoundn downward intel96 0x1p-64 9223372036854775807LL : 0x1.a61298e1e069bc94p+0 : inexact-ok
+= compoundn tonearest intel96 0x1p-64 9223372036854775807LL : 0x1.a61298e1e069bc96p+0 : inexact-ok
+= compoundn towardzero intel96 0x1p-64 9223372036854775807LL : 0x1.a61298e1e069bc94p+0 : inexact-ok
+= compoundn upward intel96 0x1p-64 9223372036854775807LL : 0x1.a61298e1e069bc96p+0 : inexact-ok
+= compoundn downward m68k96 0x1p-64 9223372036854775807LL : 0x1.a61298e1e069bc94p+0 : inexact-ok
+= compoundn tonearest m68k96 0x1p-64 9223372036854775807LL : 0x1.a61298e1e069bc96p+0 : inexact-ok
+= compoundn towardzero m68k96 0x1p-64 9223372036854775807LL : 0x1.a61298e1e069bc94p+0 : inexact-ok
+= compoundn upward m68k96 0x1p-64 9223372036854775807LL : 0x1.a61298e1e069bc96p+0 : inexact-ok
+= compoundn downward binary128 0x1p-64 9223372036854775807LL : 0x1.a61298e1e069bc951e67bb9c86afp+0 : inexact-ok
+= compoundn tonearest binary128 0x1p-64 9223372036854775807LL : 0x1.a61298e1e069bc951e67bb9c86bp+0 : inexact-ok
+= compoundn towardzero binary128 0x1p-64 9223372036854775807LL : 0x1.a61298e1e069bc951e67bb9c86afp+0 : inexact-ok
+= compoundn upward binary128 0x1p-64 9223372036854775807LL : 0x1.a61298e1e069bc951e67bb9c86bp+0 : inexact-ok
+= compoundn downward ibm128 0x1p-64 9223372036854775807LL : 0x1.a61298e1e069bc951e67bb9c868p+0 : inexact-ok
+= compoundn tonearest ibm128 0x1p-64 9223372036854775807LL : 0x1.a61298e1e069bc951e67bb9c868p+0 : inexact-ok
+= compoundn towardzero ibm128 0x1p-64 9223372036854775807LL : 0x1.a61298e1e069bc951e67bb9c868p+0 : inexact-ok
+= compoundn upward ibm128 0x1p-64 9223372036854775807LL : 0x1.a61298e1e069bc951e67bb9c87p+0 : inexact-ok
+compoundn -0x1p-64 0x7fffffffffffffff
+= compoundn downward binary32 -0x1p-64 9223372036854775807LL : 0x9.b4597p-4 : inexact-ok
+= compoundn tonearest binary32 -0x1p-64 9223372036854775807LL : 0x9.b4598p-4 : inexact-ok
+= compoundn towardzero binary32 -0x1p-64 9223372036854775807LL : 0x9.b4597p-4 : inexact-ok
+= compoundn upward binary32 -0x1p-64 9223372036854775807LL : 0x9.b4598p-4 : inexact-ok
+= compoundn downward binary64 -0x1p-64 9223372036854775807LL : 0x9.b4597e37cb048p-4 : inexact-ok
+= compoundn tonearest binary64 -0x1p-64 9223372036854775807LL : 0x9.b4597e37cb05p-4 : inexact-ok
+= compoundn towardzero binary64 -0x1p-64 9223372036854775807LL : 0x9.b4597e37cb048p-4 : inexact-ok
+= compoundn upward binary64 -0x1p-64 9223372036854775807LL : 0x9.b4597e37cb05p-4 : inexact-ok
+= compoundn downward intel96 -0x1p-64 9223372036854775807LL : 0x9.b4597e37cb04ff4p-4 : inexact-ok
+= compoundn tonearest intel96 -0x1p-64 9223372036854775807LL : 0x9.b4597e37cb04ff4p-4 : inexact-ok
+= compoundn towardzero intel96 -0x1p-64 9223372036854775807LL : 0x9.b4597e37cb04ff4p-4 : inexact-ok
+= compoundn upward intel96 -0x1p-64 9223372036854775807LL : 0x9.b4597e37cb04ff5p-4 : inexact-ok
+= compoundn downward m68k96 -0x1p-64 9223372036854775807LL : 0x9.b4597e37cb04ff4p-4 : inexact-ok
+= compoundn tonearest m68k96 -0x1p-64 9223372036854775807LL : 0x9.b4597e37cb04ff4p-4 : inexact-ok
+= compoundn towardzero m68k96 -0x1p-64 9223372036854775807LL : 0x9.b4597e37cb04ff4p-4 : inexact-ok
+= compoundn upward m68k96 -0x1p-64 9223372036854775807LL : 0x9.b4597e37cb04ff5p-4 : inexact-ok
+= compoundn downward binary128 -0x1p-64 9223372036854775807LL : 0x9.b4597e37cb04ff44ae9d53fce52p-4 : inexact-ok
+= compoundn tonearest binary128 -0x1p-64 9223372036854775807LL : 0x9.b4597e37cb04ff44ae9d53fce52p-4 : inexact-ok
+= compoundn towardzero binary128 -0x1p-64 9223372036854775807LL : 0x9.b4597e37cb04ff44ae9d53fce52p-4 : inexact-ok
+= compoundn upward binary128 -0x1p-64 9223372036854775807LL : 0x9.b4597e37cb04ff44ae9d53fce528p-4 : inexact-ok
+= compoundn downward ibm128 -0x1p-64 9223372036854775807LL : 0x9.b4597e37cb04ff44ae9d53fce4p-4 : inexact-ok
+= compoundn tonearest ibm128 -0x1p-64 9223372036854775807LL : 0x9.b4597e37cb04ff44ae9d53fce4p-4 : inexact-ok
+= compoundn towardzero ibm128 -0x1p-64 9223372036854775807LL : 0x9.b4597e37cb04ff44ae9d53fce4p-4 : inexact-ok
+= compoundn upward ibm128 -0x1p-64 9223372036854775807LL : 0x9.b4597e37cb04ff44ae9d53fce8p-4 : inexact-ok
+compoundn 0x1p-64 -0x8000000000000000
+= compoundn downward binary32 0x1p-64 (-9223372036854775807LL-1) : 0x9.b4597p-4 : inexact-ok
+= compoundn tonearest binary32 0x1p-64 (-9223372036854775807LL-1) : 0x9.b4598p-4 : inexact-ok
+= compoundn towardzero binary32 0x1p-64 (-9223372036854775807LL-1) : 0x9.b4597p-4 : inexact-ok
+= compoundn upward binary32 0x1p-64 (-9223372036854775807LL-1) : 0x9.b4598p-4 : inexact-ok
+= compoundn downward binary64 0x1p-64 (-9223372036854775807LL-1) : 0x9.b4597e37cb048p-4 : inexact-ok
+= compoundn tonearest binary64 0x1p-64 (-9223372036854775807LL-1) : 0x9.b4597e37cb05p-4 : inexact-ok
+= compoundn towardzero binary64 0x1p-64 (-9223372036854775807LL-1) : 0x9.b4597e37cb048p-4 : inexact-ok
+= compoundn upward binary64 0x1p-64 (-9223372036854775807LL-1) : 0x9.b4597e37cb05p-4 : inexact-ok
+= compoundn downward intel96 0x1p-64 (-9223372036854775807LL-1) : 0x9.b4597e37cb04ff3p-4 : inexact-ok
+= compoundn tonearest intel96 0x1p-64 (-9223372036854775807LL-1) : 0x9.b4597e37cb04ff4p-4 : inexact-ok
+= compoundn towardzero intel96 0x1p-64 (-9223372036854775807LL-1) : 0x9.b4597e37cb04ff3p-4 : inexact-ok
+= compoundn upward intel96 0x1p-64 (-9223372036854775807LL-1) : 0x9.b4597e37cb04ff4p-4 : inexact-ok
+= compoundn downward m68k96 0x1p-64 (-9223372036854775807LL-1) : 0x9.b4597e37cb04ff3p-4 : inexact-ok
+= compoundn tonearest m68k96 0x1p-64 (-9223372036854775807LL-1) : 0x9.b4597e37cb04ff4p-4 : inexact-ok
+= compoundn towardzero m68k96 0x1p-64 (-9223372036854775807LL-1) : 0x9.b4597e37cb04ff3p-4 : inexact-ok
+= compoundn upward m68k96 0x1p-64 (-9223372036854775807LL-1) : 0x9.b4597e37cb04ff4p-4 : inexact-ok
+= compoundn downward binary128 0x1p-64 (-9223372036854775807LL-1) : 0x9.b4597e37cb04ff3fd47094e0ff98p-4 : inexact-ok
+= compoundn tonearest binary128 0x1p-64 (-9223372036854775807LL-1) : 0x9.b4597e37cb04ff3fd47094e0ffap-4 : inexact-ok
+= compoundn towardzero binary128 0x1p-64 (-9223372036854775807LL-1) : 0x9.b4597e37cb04ff3fd47094e0ff98p-4 : inexact-ok
+= compoundn upward binary128 0x1p-64 (-9223372036854775807LL-1) : 0x9.b4597e37cb04ff3fd47094e0ffap-4 : inexact-ok
+= compoundn downward ibm128 0x1p-64 (-9223372036854775807LL-1) : 0x9.b4597e37cb04ff3fd47094e0fcp-4 : inexact-ok
+= compoundn tonearest ibm128 0x1p-64 (-9223372036854775807LL-1) : 0x9.b4597e37cb04ff3fd47094e1p-4 : inexact-ok
+= compoundn towardzero ibm128 0x1p-64 (-9223372036854775807LL-1) : 0x9.b4597e37cb04ff3fd47094e0fcp-4 : inexact-ok
+= compoundn upward ibm128 0x1p-64 (-9223372036854775807LL-1) : 0x9.b4597e37cb04ff3fd47094e1p-4 : inexact-ok
+compoundn -0x1p-64 -0x8000000000000000
+= compoundn downward binary32 -0x1p-64 (-9223372036854775807LL-1) : 0x1.a61298p+0 : inexact-ok
+= compoundn tonearest binary32 -0x1p-64 (-9223372036854775807LL-1) : 0x1.a61298p+0 : inexact-ok
+= compoundn towardzero binary32 -0x1p-64 (-9223372036854775807LL-1) : 0x1.a61298p+0 : inexact-ok
+= compoundn upward binary32 -0x1p-64 (-9223372036854775807LL-1) : 0x1.a6129ap+0 : inexact-ok
+= compoundn downward binary64 -0x1p-64 (-9223372036854775807LL-1) : 0x1.a61298e1e069bp+0 : inexact-ok
+= compoundn tonearest binary64 -0x1p-64 (-9223372036854775807LL-1) : 0x1.a61298e1e069cp+0 : inexact-ok
+= compoundn towardzero binary64 -0x1p-64 (-9223372036854775807LL-1) : 0x1.a61298e1e069bp+0 : inexact-ok
+= compoundn upward binary64 -0x1p-64 (-9223372036854775807LL-1) : 0x1.a61298e1e069cp+0 : inexact-ok
+= compoundn downward intel96 -0x1p-64 (-9223372036854775807LL-1) : 0x1.a61298e1e069bc96p+0 : inexact-ok
+= compoundn tonearest intel96 -0x1p-64 (-9223372036854775807LL-1) : 0x1.a61298e1e069bc98p+0 : inexact-ok
+= compoundn towardzero intel96 -0x1p-64 (-9223372036854775807LL-1) : 0x1.a61298e1e069bc96p+0 : inexact-ok
+= compoundn upward intel96 -0x1p-64 (-9223372036854775807LL-1) : 0x1.a61298e1e069bc98p+0 : inexact-ok
+= compoundn downward m68k96 -0x1p-64 (-9223372036854775807LL-1) : 0x1.a61298e1e069bc96p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x1p-64 (-9223372036854775807LL-1) : 0x1.a61298e1e069bc98p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x1p-64 (-9223372036854775807LL-1) : 0x1.a61298e1e069bc96p+0 : inexact-ok
+= compoundn upward m68k96 -0x1p-64 (-9223372036854775807LL-1) : 0x1.a61298e1e069bc98p+0 : inexact-ok
+= compoundn downward binary128 -0x1p-64 (-9223372036854775807LL-1) : 0x1.a61298e1e069bc979783a0ef574ep+0 : inexact-ok
+= compoundn tonearest binary128 -0x1p-64 (-9223372036854775807LL-1) : 0x1.a61298e1e069bc979783a0ef574ep+0 : inexact-ok
+= compoundn towardzero binary128 -0x1p-64 (-9223372036854775807LL-1) : 0x1.a61298e1e069bc979783a0ef574ep+0 : inexact-ok
+= compoundn upward binary128 -0x1p-64 (-9223372036854775807LL-1) : 0x1.a61298e1e069bc979783a0ef574fp+0 : inexact-ok
+= compoundn downward ibm128 -0x1p-64 (-9223372036854775807LL-1) : 0x1.a61298e1e069bc979783a0ef57p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1p-64 (-9223372036854775807LL-1) : 0x1.a61298e1e069bc979783a0ef578p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1p-64 (-9223372036854775807LL-1) : 0x1.a61298e1e069bc979783a0ef57p+0 : inexact-ok
+= compoundn upward ibm128 -0x1p-64 (-9223372036854775807LL-1) : 0x1.a61298e1e069bc979783a0ef578p+0 : inexact-ok
+compoundn 0x1.000002p-64 0x7fffffffffffffff
+= compoundn downward binary32 0x1.000002p-64 9223372036854775807LL : 0x1.a6129ap+0 : inexact-ok
+= compoundn tonearest binary32 0x1.000002p-64 9223372036854775807LL : 0x1.a6129ap+0 : inexact-ok
+= compoundn towardzero binary32 0x1.000002p-64 9223372036854775807LL : 0x1.a6129ap+0 : inexact-ok
+= compoundn upward binary32 0x1.000002p-64 9223372036854775807LL : 0x1.a6129cp+0 : inexact-ok
+= compoundn downward binary64 0x1.000002p-64 9223372036854775807LL : 0x1.a6129a87f3037p+0 : inexact-ok
+= compoundn tonearest binary64 0x1.000002p-64 9223372036854775807LL : 0x1.a6129a87f3037p+0 : inexact-ok
+= compoundn towardzero binary64 0x1.000002p-64 9223372036854775807LL : 0x1.a6129a87f3037p+0 : inexact-ok
+= compoundn upward binary64 0x1.000002p-64 9223372036854775807LL : 0x1.a6129a87f3038p+0 : inexact-ok
+= compoundn downward intel96 0x1.000002p-64 9223372036854775807LL : 0x1.a6129a87f303717ep+0 : inexact-ok
+= compoundn tonearest intel96 0x1.000002p-64 9223372036854775807LL : 0x1.a6129a87f303717ep+0 : inexact-ok
+= compoundn towardzero intel96 0x1.000002p-64 9223372036854775807LL : 0x1.a6129a87f303717ep+0 : inexact-ok
+= compoundn upward intel96 0x1.000002p-64 9223372036854775807LL : 0x1.a6129a87f303718p+0 : inexact-ok
+= compoundn downward m68k96 0x1.000002p-64 9223372036854775807LL : 0x1.a6129a87f303717ep+0 : inexact-ok
+= compoundn tonearest m68k96 0x1.000002p-64 9223372036854775807LL : 0x1.a6129a87f303717ep+0 : inexact-ok
+= compoundn towardzero m68k96 0x1.000002p-64 9223372036854775807LL : 0x1.a6129a87f303717ep+0 : inexact-ok
+= compoundn upward m68k96 0x1.000002p-64 9223372036854775807LL : 0x1.a6129a87f303718p+0 : inexact-ok
+= compoundn downward binary128 0x1.000002p-64 9223372036854775807LL : 0x1.a6129a87f303717ed4db946c76cap+0 : inexact-ok
+= compoundn tonearest binary128 0x1.000002p-64 9223372036854775807LL : 0x1.a6129a87f303717ed4db946c76cbp+0 : inexact-ok
+= compoundn towardzero binary128 0x1.000002p-64 9223372036854775807LL : 0x1.a6129a87f303717ed4db946c76cap+0 : inexact-ok
+= compoundn upward binary128 0x1.000002p-64 9223372036854775807LL : 0x1.a6129a87f303717ed4db946c76cbp+0 : inexact-ok
+= compoundn downward ibm128 0x1.000002p-64 9223372036854775807LL : 0x1.a6129a87f303717ed4db946c768p+0 : inexact-ok
+= compoundn tonearest ibm128 0x1.000002p-64 9223372036854775807LL : 0x1.a6129a87f303717ed4db946c77p+0 : inexact-ok
+= compoundn towardzero ibm128 0x1.000002p-64 9223372036854775807LL : 0x1.a6129a87f303717ed4db946c768p+0 : inexact-ok
+= compoundn upward ibm128 0x1.000002p-64 9223372036854775807LL : 0x1.a6129a87f303717ed4db946c77p+0 : inexact-ok
+compoundn -0x1.000002p-64 0x7fffffffffffffff
+= compoundn downward binary32 -0x1.000002p-64 9223372036854775807LL : 0x9.b4597p-4 : inexact-ok
+= compoundn tonearest binary32 -0x1.000002p-64 9223372036854775807LL : 0x9.b4597p-4 : inexact-ok
+= compoundn towardzero binary32 -0x1.000002p-64 9223372036854775807LL : 0x9.b4597p-4 : inexact-ok
+= compoundn upward binary32 -0x1.000002p-64 9223372036854775807LL : 0x9.b4598p-4 : inexact-ok
+= compoundn downward binary64 -0x1.000002p-64 9223372036854775807LL : 0x9.b4597483718b8p-4 : inexact-ok
+= compoundn tonearest binary64 -0x1.000002p-64 9223372036854775807LL : 0x9.b4597483718b8p-4 : inexact-ok
+= compoundn towardzero binary64 -0x1.000002p-64 9223372036854775807LL : 0x9.b4597483718b8p-4 : inexact-ok
+= compoundn upward binary64 -0x1.000002p-64 9223372036854775807LL : 0x9.b4597483718cp-4 : inexact-ok
+= compoundn downward intel96 -0x1.000002p-64 9223372036854775807LL : 0x9.b4597483718ba1ap-4 : inexact-ok
+= compoundn tonearest intel96 -0x1.000002p-64 9223372036854775807LL : 0x9.b4597483718ba1ap-4 : inexact-ok
+= compoundn towardzero intel96 -0x1.000002p-64 9223372036854775807LL : 0x9.b4597483718ba1ap-4 : inexact-ok
+= compoundn upward intel96 -0x1.000002p-64 9223372036854775807LL : 0x9.b4597483718ba1bp-4 : inexact-ok
+= compoundn downward m68k96 -0x1.000002p-64 9223372036854775807LL : 0x9.b4597483718ba1ap-4 : inexact-ok
+= compoundn tonearest m68k96 -0x1.000002p-64 9223372036854775807LL : 0x9.b4597483718ba1ap-4 : inexact-ok
+= compoundn towardzero m68k96 -0x1.000002p-64 9223372036854775807LL : 0x9.b4597483718ba1ap-4 : inexact-ok
+= compoundn upward m68k96 -0x1.000002p-64 9223372036854775807LL : 0x9.b4597483718ba1bp-4 : inexact-ok
+= compoundn downward binary128 -0x1.000002p-64 9223372036854775807LL : 0x9.b4597483718ba1a6671bef9b29b8p-4 : inexact-ok
+= compoundn tonearest binary128 -0x1.000002p-64 9223372036854775807LL : 0x9.b4597483718ba1a6671bef9b29cp-4 : inexact-ok
+= compoundn towardzero binary128 -0x1.000002p-64 9223372036854775807LL : 0x9.b4597483718ba1a6671bef9b29b8p-4 : inexact-ok
+= compoundn upward binary128 -0x1.000002p-64 9223372036854775807LL : 0x9.b4597483718ba1a6671bef9b29cp-4 : inexact-ok
+= compoundn downward ibm128 -0x1.000002p-64 9223372036854775807LL : 0x9.b4597483718ba1a6671bef9b28p-4 : inexact-ok
+= compoundn tonearest ibm128 -0x1.000002p-64 9223372036854775807LL : 0x9.b4597483718ba1a6671bef9b28p-4 : inexact-ok
+= compoundn towardzero ibm128 -0x1.000002p-64 9223372036854775807LL : 0x9.b4597483718ba1a6671bef9b28p-4 : inexact-ok
+= compoundn upward ibm128 -0x1.000002p-64 9223372036854775807LL : 0x9.b4597483718ba1a6671bef9b2cp-4 : inexact-ok
+compoundn 0x1.000002p-64 -0x8000000000000000
+= compoundn downward binary32 0x1.000002p-64 (-9223372036854775807LL-1) : 0x9.b4597p-4 : inexact-ok
+= compoundn tonearest binary32 0x1.000002p-64 (-9223372036854775807LL-1) : 0x9.b4597p-4 : inexact-ok
+= compoundn towardzero binary32 0x1.000002p-64 (-9223372036854775807LL-1) : 0x9.b4597p-4 : inexact-ok
+= compoundn upward binary32 0x1.000002p-64 (-9223372036854775807LL-1) : 0x9.b4598p-4 : inexact-ok
+= compoundn downward binary64 0x1.000002p-64 (-9223372036854775807LL-1) : 0x9.b4597483718b8p-4 : inexact-ok
+= compoundn tonearest binary64 0x1.000002p-64 (-9223372036854775807LL-1) : 0x9.b4597483718b8p-4 : inexact-ok
+= compoundn towardzero binary64 0x1.000002p-64 (-9223372036854775807LL-1) : 0x9.b4597483718b8p-4 : inexact-ok
+= compoundn upward binary64 0x1.000002p-64 (-9223372036854775807LL-1) : 0x9.b4597483718cp-4 : inexact-ok
+= compoundn downward intel96 0x1.000002p-64 (-9223372036854775807LL-1) : 0x9.b4597483718ba1ap-4 : inexact-ok
+= compoundn tonearest intel96 0x1.000002p-64 (-9223372036854775807LL-1) : 0x9.b4597483718ba1ap-4 : inexact-ok
+= compoundn towardzero intel96 0x1.000002p-64 (-9223372036854775807LL-1) : 0x9.b4597483718ba1ap-4 : inexact-ok
+= compoundn upward intel96 0x1.000002p-64 (-9223372036854775807LL-1) : 0x9.b4597483718ba1bp-4 : inexact-ok
+= compoundn downward m68k96 0x1.000002p-64 (-9223372036854775807LL-1) : 0x9.b4597483718ba1ap-4 : inexact-ok
+= compoundn tonearest m68k96 0x1.000002p-64 (-9223372036854775807LL-1) : 0x9.b4597483718ba1ap-4 : inexact-ok
+= compoundn towardzero m68k96 0x1.000002p-64 (-9223372036854775807LL-1) : 0x9.b4597483718ba1ap-4 : inexact-ok
+= compoundn upward m68k96 0x1.000002p-64 (-9223372036854775807LL-1) : 0x9.b4597483718ba1bp-4 : inexact-ok
+= compoundn downward binary128 0x1.000002p-64 (-9223372036854775807LL-1) : 0x9.b4597483718ba1a18cef35597108p-4 : inexact-ok
+= compoundn tonearest binary128 0x1.000002p-64 (-9223372036854775807LL-1) : 0x9.b4597483718ba1a18cef35597108p-4 : inexact-ok
+= compoundn towardzero binary128 0x1.000002p-64 (-9223372036854775807LL-1) : 0x9.b4597483718ba1a18cef35597108p-4 : inexact-ok
+= compoundn upward binary128 0x1.000002p-64 (-9223372036854775807LL-1) : 0x9.b4597483718ba1a18cef3559711p-4 : inexact-ok
+= compoundn downward ibm128 0x1.000002p-64 (-9223372036854775807LL-1) : 0x9.b4597483718ba1a18cef35597p-4 : inexact-ok
+= compoundn tonearest ibm128 0x1.000002p-64 (-9223372036854775807LL-1) : 0x9.b4597483718ba1a18cef35597p-4 : inexact-ok
+= compoundn towardzero ibm128 0x1.000002p-64 (-9223372036854775807LL-1) : 0x9.b4597483718ba1a18cef35597p-4 : inexact-ok
+= compoundn upward ibm128 0x1.000002p-64 (-9223372036854775807LL-1) : 0x9.b4597483718ba1a18cef355974p-4 : inexact-ok
+compoundn -0x1.000002p-64 -0x8000000000000000
+= compoundn downward binary32 -0x1.000002p-64 (-9223372036854775807LL-1) : 0x1.a6129ap+0 : inexact-ok
+= compoundn tonearest binary32 -0x1.000002p-64 (-9223372036854775807LL-1) : 0x1.a6129ap+0 : inexact-ok
+= compoundn towardzero binary32 -0x1.000002p-64 (-9223372036854775807LL-1) : 0x1.a6129ap+0 : inexact-ok
+= compoundn upward binary32 -0x1.000002p-64 (-9223372036854775807LL-1) : 0x1.a6129cp+0 : inexact-ok
+= compoundn downward binary64 -0x1.000002p-64 (-9223372036854775807LL-1) : 0x1.a6129a87f3037p+0 : inexact-ok
+= compoundn tonearest binary64 -0x1.000002p-64 (-9223372036854775807LL-1) : 0x1.a6129a87f3037p+0 : inexact-ok
+= compoundn towardzero binary64 -0x1.000002p-64 (-9223372036854775807LL-1) : 0x1.a6129a87f3037p+0 : inexact-ok
+= compoundn upward binary64 -0x1.000002p-64 (-9223372036854775807LL-1) : 0x1.a6129a87f3038p+0 : inexact-ok
+= compoundn downward intel96 -0x1.000002p-64 (-9223372036854775807LL-1) : 0x1.a6129a87f303718p+0 : inexact-ok
+= compoundn tonearest intel96 -0x1.000002p-64 (-9223372036854775807LL-1) : 0x1.a6129a87f3037182p+0 : inexact-ok
+= compoundn towardzero intel96 -0x1.000002p-64 (-9223372036854775807LL-1) : 0x1.a6129a87f303718p+0 : inexact-ok
+= compoundn upward intel96 -0x1.000002p-64 (-9223372036854775807LL-1) : 0x1.a6129a87f3037182p+0 : inexact-ok
+= compoundn downward m68k96 -0x1.000002p-64 (-9223372036854775807LL-1) : 0x1.a6129a87f303718p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x1.000002p-64 (-9223372036854775807LL-1) : 0x1.a6129a87f3037182p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x1.000002p-64 (-9223372036854775807LL-1) : 0x1.a6129a87f303718p+0 : inexact-ok
+= compoundn upward m68k96 -0x1.000002p-64 (-9223372036854775807LL-1) : 0x1.a6129a87f3037182p+0 : inexact-ok
+= compoundn downward binary128 -0x1.000002p-64 (-9223372036854775807LL-1) : 0x1.a6129a87f30371814df782d0adbdp+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.000002p-64 (-9223372036854775807LL-1) : 0x1.a6129a87f30371814df782d0adbdp+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.000002p-64 (-9223372036854775807LL-1) : 0x1.a6129a87f30371814df782d0adbdp+0 : inexact-ok
+= compoundn upward binary128 -0x1.000002p-64 (-9223372036854775807LL-1) : 0x1.a6129a87f30371814df782d0adbep+0 : inexact-ok
+= compoundn downward ibm128 -0x1.000002p-64 (-9223372036854775807LL-1) : 0x1.a6129a87f30371814df782d0ad8p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1.000002p-64 (-9223372036854775807LL-1) : 0x1.a6129a87f30371814df782d0ad8p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1.000002p-64 (-9223372036854775807LL-1) : 0x1.a6129a87f30371814df782d0ad8p+0 : inexact-ok
+= compoundn upward ibm128 -0x1.000002p-64 (-9223372036854775807LL-1) : 0x1.a6129a87f30371814df782d0aep+0 : inexact-ok
+compoundn 0x1p-58 0x7fffffffffffffff
+= compoundn downward binary32 0x4p-60 9223372036854775807LL : 0x4.7d0ffp+44 : inexact-ok
+= compoundn tonearest binary32 0x4p-60 9223372036854775807LL : 0x4.7d0ffp+44 : inexact-ok
+= compoundn towardzero binary32 0x4p-60 9223372036854775807LL : 0x4.7d0ffp+44 : inexact-ok
+= compoundn upward binary32 0x4p-60 9223372036854775807LL : 0x4.7d0ff8p+44 : inexact-ok
+= compoundn downward binary64 0x4p-60 9223372036854775807LL : 0x4.7d0ff312d98bp+44 : inexact-ok
+= compoundn tonearest binary64 0x4p-60 9223372036854775807LL : 0x4.7d0ff312d98bp+44 : inexact-ok
+= compoundn towardzero binary64 0x4p-60 9223372036854775807LL : 0x4.7d0ff312d98bp+44 : inexact-ok
+= compoundn upward binary64 0x4p-60 9223372036854775807LL : 0x4.7d0ff312d98b4p+44 : inexact-ok
+= compoundn downward intel96 0x4p-60 9223372036854775807LL : 0x4.7d0ff312d98b0c48p+44 : inexact-ok
+= compoundn tonearest intel96 0x4p-60 9223372036854775807LL : 0x4.7d0ff312d98b0c5p+44 : inexact-ok
+= compoundn towardzero intel96 0x4p-60 9223372036854775807LL : 0x4.7d0ff312d98b0c48p+44 : inexact-ok
+= compoundn upward intel96 0x4p-60 9223372036854775807LL : 0x4.7d0ff312d98b0c5p+44 : inexact-ok
+= compoundn downward m68k96 0x4p-60 9223372036854775807LL : 0x4.7d0ff312d98b0c48p+44 : inexact-ok
+= compoundn tonearest m68k96 0x4p-60 9223372036854775807LL : 0x4.7d0ff312d98b0c5p+44 : inexact-ok
+= compoundn towardzero m68k96 0x4p-60 9223372036854775807LL : 0x4.7d0ff312d98b0c48p+44 : inexact-ok
+= compoundn upward m68k96 0x4p-60 9223372036854775807LL : 0x4.7d0ff312d98b0c5p+44 : inexact-ok
+= compoundn downward binary128 0x4p-60 9223372036854775807LL : 0x4.7d0ff312d98b0c4d9a57f044794p+44 : inexact-ok
+= compoundn tonearest binary128 0x4p-60 9223372036854775807LL : 0x4.7d0ff312d98b0c4d9a57f0447944p+44 : inexact-ok
+= compoundn towardzero binary128 0x4p-60 9223372036854775807LL : 0x4.7d0ff312d98b0c4d9a57f044794p+44 : inexact-ok
+= compoundn upward binary128 0x4p-60 9223372036854775807LL : 0x4.7d0ff312d98b0c4d9a57f0447944p+44 : inexact-ok
+= compoundn downward ibm128 0x4p-60 9223372036854775807LL : 0x4.7d0ff312d98b0c4d9a57f04478p+44 : inexact-ok
+= compoundn tonearest ibm128 0x4p-60 9223372036854775807LL : 0x4.7d0ff312d98b0c4d9a57f0447ap+44 : inexact-ok
+= compoundn towardzero ibm128 0x4p-60 9223372036854775807LL : 0x4.7d0ff312d98b0c4d9a57f04478p+44 : inexact-ok
+= compoundn upward ibm128 0x4p-60 9223372036854775807LL : 0x4.7d0ff312d98b0c4d9a57f0447ap+44 : inexact-ok
+compoundn -0x1p-58 0x7fffffffffffffff
+= compoundn downward binary32 -0x4p-60 9223372036854775807LL : 0x3.908c9cp-48 : inexact-ok
+= compoundn tonearest binary32 -0x4p-60 9223372036854775807LL : 0x3.908cap-48 : inexact-ok
+= compoundn towardzero binary32 -0x4p-60 9223372036854775807LL : 0x3.908c9cp-48 : inexact-ok
+= compoundn upward binary32 -0x4p-60 9223372036854775807LL : 0x3.908cap-48 : inexact-ok
+= compoundn downward binary64 -0x4p-60 9223372036854775807LL : 0x3.908c9eec2c8cep-48 : inexact-ok
+= compoundn tonearest binary64 -0x4p-60 9223372036854775807LL : 0x3.908c9eec2c8dp-48 : inexact-ok
+= compoundn towardzero binary64 -0x4p-60 9223372036854775807LL : 0x3.908c9eec2c8cep-48 : inexact-ok
+= compoundn upward binary64 -0x4p-60 9223372036854775807LL : 0x3.908c9eec2c8dp-48 : inexact-ok
+= compoundn downward intel96 -0x4p-60 9223372036854775807LL : 0x3.908c9eec2c8cf664p-48 : inexact-ok
+= compoundn tonearest intel96 -0x4p-60 9223372036854775807LL : 0x3.908c9eec2c8cf668p-48 : inexact-ok
+= compoundn towardzero intel96 -0x4p-60 9223372036854775807LL : 0x3.908c9eec2c8cf664p-48 : inexact-ok
+= compoundn upward intel96 -0x4p-60 9223372036854775807LL : 0x3.908c9eec2c8cf668p-48 : inexact-ok
+= compoundn downward m68k96 -0x4p-60 9223372036854775807LL : 0x3.908c9eec2c8cf664p-48 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-60 9223372036854775807LL : 0x3.908c9eec2c8cf668p-48 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-60 9223372036854775807LL : 0x3.908c9eec2c8cf664p-48 : inexact-ok
+= compoundn upward m68k96 -0x4p-60 9223372036854775807LL : 0x3.908c9eec2c8cf668p-48 : inexact-ok
+= compoundn downward binary128 -0x4p-60 9223372036854775807LL : 0x3.908c9eec2c8cf66723ec2ee1fe58p-48 : inexact-ok
+= compoundn tonearest binary128 -0x4p-60 9223372036854775807LL : 0x3.908c9eec2c8cf66723ec2ee1fe5ap-48 : inexact-ok
+= compoundn towardzero binary128 -0x4p-60 9223372036854775807LL : 0x3.908c9eec2c8cf66723ec2ee1fe58p-48 : inexact-ok
+= compoundn upward binary128 -0x4p-60 9223372036854775807LL : 0x3.908c9eec2c8cf66723ec2ee1fe5ap-48 : inexact-ok
+= compoundn downward ibm128 -0x4p-60 9223372036854775807LL : 0x3.908c9eec2c8cf66723ec2ee1fep-48 : inexact-ok
+= compoundn tonearest ibm128 -0x4p-60 9223372036854775807LL : 0x3.908c9eec2c8cf66723ec2ee1fep-48 : inexact-ok
+= compoundn towardzero ibm128 -0x4p-60 9223372036854775807LL : 0x3.908c9eec2c8cf66723ec2ee1fep-48 : inexact-ok
+= compoundn upward ibm128 -0x4p-60 9223372036854775807LL : 0x3.908c9eec2c8cf66723ec2ee1ffp-48 : inexact-ok
+compoundn 0x1p-58 -0x8000000000000000
+= compoundn downward binary32 0x4p-60 (-9223372036854775807LL-1) : 0x3.908c9cp-48 : inexact-ok
+= compoundn tonearest binary32 0x4p-60 (-9223372036854775807LL-1) : 0x3.908cap-48 : inexact-ok
+= compoundn towardzero binary32 0x4p-60 (-9223372036854775807LL-1) : 0x3.908c9cp-48 : inexact-ok
+= compoundn upward binary32 0x4p-60 (-9223372036854775807LL-1) : 0x3.908cap-48 : inexact-ok
+= compoundn downward binary64 0x4p-60 (-9223372036854775807LL-1) : 0x3.908c9eec2c8dp-48 : inexact-ok
+= compoundn tonearest binary64 0x4p-60 (-9223372036854775807LL-1) : 0x3.908c9eec2c8d2p-48 : inexact-ok
+= compoundn towardzero binary64 0x4p-60 (-9223372036854775807LL-1) : 0x3.908c9eec2c8dp-48 : inexact-ok
+= compoundn upward binary64 0x4p-60 (-9223372036854775807LL-1) : 0x3.908c9eec2c8d2p-48 : inexact-ok
+= compoundn downward intel96 0x4p-60 (-9223372036854775807LL-1) : 0x3.908c9eec2c8d1204p-48 : inexact-ok
+= compoundn tonearest intel96 0x4p-60 (-9223372036854775807LL-1) : 0x3.908c9eec2c8d1208p-48 : inexact-ok
+= compoundn towardzero intel96 0x4p-60 (-9223372036854775807LL-1) : 0x3.908c9eec2c8d1204p-48 : inexact-ok
+= compoundn upward intel96 0x4p-60 (-9223372036854775807LL-1) : 0x3.908c9eec2c8d1208p-48 : inexact-ok
+= compoundn downward m68k96 0x4p-60 (-9223372036854775807LL-1) : 0x3.908c9eec2c8d1204p-48 : inexact-ok
+= compoundn tonearest m68k96 0x4p-60 (-9223372036854775807LL-1) : 0x3.908c9eec2c8d1208p-48 : inexact-ok
+= compoundn towardzero m68k96 0x4p-60 (-9223372036854775807LL-1) : 0x3.908c9eec2c8d1204p-48 : inexact-ok
+= compoundn upward m68k96 0x4p-60 (-9223372036854775807LL-1) : 0x3.908c9eec2c8d1208p-48 : inexact-ok
+= compoundn downward binary128 0x4p-60 (-9223372036854775807LL-1) : 0x3.908c9eec2c8d120765bbd53b4338p-48 : inexact-ok
+= compoundn tonearest binary128 0x4p-60 (-9223372036854775807LL-1) : 0x3.908c9eec2c8d120765bbd53b433ap-48 : inexact-ok
+= compoundn towardzero binary128 0x4p-60 (-9223372036854775807LL-1) : 0x3.908c9eec2c8d120765bbd53b4338p-48 : inexact-ok
+= compoundn upward binary128 0x4p-60 (-9223372036854775807LL-1) : 0x3.908c9eec2c8d120765bbd53b433ap-48 : inexact-ok
+= compoundn downward ibm128 0x4p-60 (-9223372036854775807LL-1) : 0x3.908c9eec2c8d120765bbd53b43p-48 : inexact-ok
+= compoundn tonearest ibm128 0x4p-60 (-9223372036854775807LL-1) : 0x3.908c9eec2c8d120765bbd53b43p-48 : inexact-ok
+= compoundn towardzero ibm128 0x4p-60 (-9223372036854775807LL-1) : 0x3.908c9eec2c8d120765bbd53b43p-48 : inexact-ok
+= compoundn upward ibm128 0x4p-60 (-9223372036854775807LL-1) : 0x3.908c9eec2c8d120765bbd53b44p-48 : inexact-ok
+compoundn -0x1p-58 -0x8000000000000000
+= compoundn downward binary32 -0x4p-60 (-9223372036854775807LL-1) : 0x4.7d0ffp+44 : inexact-ok
+= compoundn tonearest binary32 -0x4p-60 (-9223372036854775807LL-1) : 0x4.7d0ffp+44 : inexact-ok
+= compoundn towardzero binary32 -0x4p-60 (-9223372036854775807LL-1) : 0x4.7d0ffp+44 : inexact-ok
+= compoundn upward binary32 -0x4p-60 (-9223372036854775807LL-1) : 0x4.7d0ff8p+44 : inexact-ok
+= compoundn downward binary64 -0x4p-60 (-9223372036854775807LL-1) : 0x4.7d0ff312d98bp+44 : inexact-ok
+= compoundn tonearest binary64 -0x4p-60 (-9223372036854775807LL-1) : 0x4.7d0ff312d98b4p+44 : inexact-ok
+= compoundn towardzero binary64 -0x4p-60 (-9223372036854775807LL-1) : 0x4.7d0ff312d98bp+44 : inexact-ok
+= compoundn upward binary64 -0x4p-60 (-9223372036854775807LL-1) : 0x4.7d0ff312d98b4p+44 : inexact-ok
+= compoundn downward intel96 -0x4p-60 (-9223372036854775807LL-1) : 0x4.7d0ff312d98b315p+44 : inexact-ok
+= compoundn tonearest intel96 -0x4p-60 (-9223372036854775807LL-1) : 0x4.7d0ff312d98b3158p+44 : inexact-ok
+= compoundn towardzero intel96 -0x4p-60 (-9223372036854775807LL-1) : 0x4.7d0ff312d98b315p+44 : inexact-ok
+= compoundn upward intel96 -0x4p-60 (-9223372036854775807LL-1) : 0x4.7d0ff312d98b3158p+44 : inexact-ok
+= compoundn downward m68k96 -0x4p-60 (-9223372036854775807LL-1) : 0x4.7d0ff312d98b315p+44 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-60 (-9223372036854775807LL-1) : 0x4.7d0ff312d98b3158p+44 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-60 (-9223372036854775807LL-1) : 0x4.7d0ff312d98b315p+44 : inexact-ok
+= compoundn upward m68k96 -0x4p-60 (-9223372036854775807LL-1) : 0x4.7d0ff312d98b3158p+44 : inexact-ok
+= compoundn downward binary128 -0x4p-60 (-9223372036854775807LL-1) : 0x4.7d0ff312d98b31555ded4bc735p+44 : inexact-ok
+= compoundn tonearest binary128 -0x4p-60 (-9223372036854775807LL-1) : 0x4.7d0ff312d98b31555ded4bc735p+44 : inexact-ok
+= compoundn towardzero binary128 -0x4p-60 (-9223372036854775807LL-1) : 0x4.7d0ff312d98b31555ded4bc735p+44 : inexact-ok
+= compoundn upward binary128 -0x4p-60 (-9223372036854775807LL-1) : 0x4.7d0ff312d98b31555ded4bc73504p+44 : inexact-ok
+= compoundn downward ibm128 -0x4p-60 (-9223372036854775807LL-1) : 0x4.7d0ff312d98b31555ded4bc734p+44 : inexact-ok
+= compoundn tonearest ibm128 -0x4p-60 (-9223372036854775807LL-1) : 0x4.7d0ff312d98b31555ded4bc736p+44 : inexact-ok
+= compoundn towardzero ibm128 -0x4p-60 (-9223372036854775807LL-1) : 0x4.7d0ff312d98b31555ded4bc734p+44 : inexact-ok
+= compoundn upward ibm128 -0x4p-60 (-9223372036854775807LL-1) : 0x4.7d0ff312d98b31555ded4bc736p+44 : inexact-ok
+compoundn 0x1.000002p-58 0x7fffffffffffffff
+= compoundn downward binary32 0x4.000008p-60 9223372036854775807LL : 0x4.7d111p+44 : inexact-ok
+= compoundn tonearest binary32 0x4.000008p-60 9223372036854775807LL : 0x4.7d111p+44 : inexact-ok
+= compoundn towardzero binary32 0x4.000008p-60 9223372036854775807LL : 0x4.7d111p+44 : inexact-ok
+= compoundn upward binary32 0x4.000008p-60 9223372036854775807LL : 0x4.7d1118p+44 : inexact-ok
+= compoundn downward binary64 0x4.000008p-60 9223372036854775807LL : 0x4.7d111256fa384p+44 : inexact-ok
+= compoundn tonearest binary64 0x4.000008p-60 9223372036854775807LL : 0x4.7d111256fa384p+44 : inexact-ok
+= compoundn towardzero binary64 0x4.000008p-60 9223372036854775807LL : 0x4.7d111256fa384p+44 : inexact-ok
+= compoundn upward binary64 0x4.000008p-60 9223372036854775807LL : 0x4.7d111256fa388p+44 : inexact-ok
+= compoundn downward intel96 0x4.000008p-60 9223372036854775807LL : 0x4.7d111256fa38454p+44 : inexact-ok
+= compoundn tonearest intel96 0x4.000008p-60 9223372036854775807LL : 0x4.7d111256fa384548p+44 : inexact-ok
+= compoundn towardzero intel96 0x4.000008p-60 9223372036854775807LL : 0x4.7d111256fa38454p+44 : inexact-ok
+= compoundn upward intel96 0x4.000008p-60 9223372036854775807LL : 0x4.7d111256fa384548p+44 : inexact-ok
+= compoundn downward m68k96 0x4.000008p-60 9223372036854775807LL : 0x4.7d111256fa38454p+44 : inexact-ok
+= compoundn tonearest m68k96 0x4.000008p-60 9223372036854775807LL : 0x4.7d111256fa384548p+44 : inexact-ok
+= compoundn towardzero m68k96 0x4.000008p-60 9223372036854775807LL : 0x4.7d111256fa38454p+44 : inexact-ok
+= compoundn upward m68k96 0x4.000008p-60 9223372036854775807LL : 0x4.7d111256fa384548p+44 : inexact-ok
+= compoundn downward binary128 0x4.000008p-60 9223372036854775807LL : 0x4.7d111256fa384546febf8ce078b4p+44 : inexact-ok
+= compoundn tonearest binary128 0x4.000008p-60 9223372036854775807LL : 0x4.7d111256fa384546febf8ce078b8p+44 : inexact-ok
+= compoundn towardzero binary128 0x4.000008p-60 9223372036854775807LL : 0x4.7d111256fa384546febf8ce078b4p+44 : inexact-ok
+= compoundn upward binary128 0x4.000008p-60 9223372036854775807LL : 0x4.7d111256fa384546febf8ce078b8p+44 : inexact-ok
+= compoundn downward ibm128 0x4.000008p-60 9223372036854775807LL : 0x4.7d111256fa384546febf8ce078p+44 : inexact-ok
+= compoundn tonearest ibm128 0x4.000008p-60 9223372036854775807LL : 0x4.7d111256fa384546febf8ce078p+44 : inexact-ok
+= compoundn towardzero ibm128 0x4.000008p-60 9223372036854775807LL : 0x4.7d111256fa384546febf8ce078p+44 : inexact-ok
+= compoundn upward ibm128 0x4.000008p-60 9223372036854775807LL : 0x4.7d111256fa384546febf8ce07ap+44 : inexact-ok
+compoundn -0x1.000002p-58 0x7fffffffffffffff
+= compoundn downward binary32 -0x4.000008p-60 9223372036854775807LL : 0x3.908bb8p-48 : inexact-ok
+= compoundn tonearest binary32 -0x4.000008p-60 9223372036854775807LL : 0x3.908bbcp-48 : inexact-ok
+= compoundn towardzero binary32 -0x4.000008p-60 9223372036854775807LL : 0x3.908bb8p-48 : inexact-ok
+= compoundn upward binary32 -0x4.000008p-60 9223372036854775807LL : 0x3.908bbcp-48 : inexact-ok
+= compoundn downward binary64 -0x4.000008p-60 9223372036854775807LL : 0x3.908bbac921564p-48 : inexact-ok
+= compoundn tonearest binary64 -0x4.000008p-60 9223372036854775807LL : 0x3.908bbac921564p-48 : inexact-ok
+= compoundn towardzero binary64 -0x4.000008p-60 9223372036854775807LL : 0x3.908bbac921564p-48 : inexact-ok
+= compoundn upward binary64 -0x4.000008p-60 9223372036854775807LL : 0x3.908bbac921566p-48 : inexact-ok
+= compoundn downward intel96 -0x4.000008p-60 9223372036854775807LL : 0x3.908bbac921564dd8p-48 : inexact-ok
+= compoundn tonearest intel96 -0x4.000008p-60 9223372036854775807LL : 0x3.908bbac921564ddcp-48 : inexact-ok
+= compoundn towardzero intel96 -0x4.000008p-60 9223372036854775807LL : 0x3.908bbac921564dd8p-48 : inexact-ok
+= compoundn upward intel96 -0x4.000008p-60 9223372036854775807LL : 0x3.908bbac921564ddcp-48 : inexact-ok
+= compoundn downward m68k96 -0x4.000008p-60 9223372036854775807LL : 0x3.908bbac921564dd8p-48 : inexact-ok
+= compoundn tonearest m68k96 -0x4.000008p-60 9223372036854775807LL : 0x3.908bbac921564ddcp-48 : inexact-ok
+= compoundn towardzero m68k96 -0x4.000008p-60 9223372036854775807LL : 0x3.908bbac921564dd8p-48 : inexact-ok
+= compoundn upward m68k96 -0x4.000008p-60 9223372036854775807LL : 0x3.908bbac921564ddcp-48 : inexact-ok
+= compoundn downward binary128 -0x4.000008p-60 9223372036854775807LL : 0x3.908bbac921564ddae9e64ae07e0ap-48 : inexact-ok
+= compoundn tonearest binary128 -0x4.000008p-60 9223372036854775807LL : 0x3.908bbac921564ddae9e64ae07e0cp-48 : inexact-ok
+= compoundn towardzero binary128 -0x4.000008p-60 9223372036854775807LL : 0x3.908bbac921564ddae9e64ae07e0ap-48 : inexact-ok
+= compoundn upward binary128 -0x4.000008p-60 9223372036854775807LL : 0x3.908bbac921564ddae9e64ae07e0cp-48 : inexact-ok
+= compoundn downward ibm128 -0x4.000008p-60 9223372036854775807LL : 0x3.908bbac921564ddae9e64ae07ep-48 : inexact-ok
+= compoundn tonearest ibm128 -0x4.000008p-60 9223372036854775807LL : 0x3.908bbac921564ddae9e64ae07ep-48 : inexact-ok
+= compoundn towardzero ibm128 -0x4.000008p-60 9223372036854775807LL : 0x3.908bbac921564ddae9e64ae07ep-48 : inexact-ok
+= compoundn upward ibm128 -0x4.000008p-60 9223372036854775807LL : 0x3.908bbac921564ddae9e64ae07fp-48 : inexact-ok
+compoundn 0x1.000002p-58 -0x8000000000000000
+= compoundn downward binary32 0x4.000008p-60 (-9223372036854775807LL-1) : 0x3.908bb8p-48 : inexact-ok
+= compoundn tonearest binary32 0x4.000008p-60 (-9223372036854775807LL-1) : 0x3.908bbcp-48 : inexact-ok
+= compoundn towardzero binary32 0x4.000008p-60 (-9223372036854775807LL-1) : 0x3.908bb8p-48 : inexact-ok
+= compoundn upward binary32 0x4.000008p-60 (-9223372036854775807LL-1) : 0x3.908bbcp-48 : inexact-ok
+= compoundn downward binary64 0x4.000008p-60 (-9223372036854775807LL-1) : 0x3.908bbac921566p-48 : inexact-ok
+= compoundn tonearest binary64 0x4.000008p-60 (-9223372036854775807LL-1) : 0x3.908bbac921566p-48 : inexact-ok
+= compoundn towardzero binary64 0x4.000008p-60 (-9223372036854775807LL-1) : 0x3.908bbac921566p-48 : inexact-ok
+= compoundn upward binary64 0x4.000008p-60 (-9223372036854775807LL-1) : 0x3.908bbac921568p-48 : inexact-ok
+= compoundn downward intel96 0x4.000008p-60 (-9223372036854775807LL-1) : 0x3.908bbac921566978p-48 : inexact-ok
+= compoundn tonearest intel96 0x4.000008p-60 (-9223372036854775807LL-1) : 0x3.908bbac92156697cp-48 : inexact-ok
+= compoundn towardzero intel96 0x4.000008p-60 (-9223372036854775807LL-1) : 0x3.908bbac921566978p-48 : inexact-ok
+= compoundn upward intel96 0x4.000008p-60 (-9223372036854775807LL-1) : 0x3.908bbac92156697cp-48 : inexact-ok
+= compoundn downward m68k96 0x4.000008p-60 (-9223372036854775807LL-1) : 0x3.908bbac921566978p-48 : inexact-ok
+= compoundn tonearest m68k96 0x4.000008p-60 (-9223372036854775807LL-1) : 0x3.908bbac92156697cp-48 : inexact-ok
+= compoundn towardzero m68k96 0x4.000008p-60 (-9223372036854775807LL-1) : 0x3.908bbac921566978p-48 : inexact-ok
+= compoundn upward m68k96 0x4.000008p-60 (-9223372036854775807LL-1) : 0x3.908bbac92156697cp-48 : inexact-ok
+= compoundn downward binary128 0x4.000008p-60 (-9223372036854775807LL-1) : 0x3.908bbac92156697b253e2ad4c922p-48 : inexact-ok
+= compoundn tonearest binary128 0x4.000008p-60 (-9223372036854775807LL-1) : 0x3.908bbac92156697b253e2ad4c922p-48 : inexact-ok
+= compoundn towardzero binary128 0x4.000008p-60 (-9223372036854775807LL-1) : 0x3.908bbac92156697b253e2ad4c922p-48 : inexact-ok
+= compoundn upward binary128 0x4.000008p-60 (-9223372036854775807LL-1) : 0x3.908bbac92156697b253e2ad4c924p-48 : inexact-ok
+= compoundn downward ibm128 0x4.000008p-60 (-9223372036854775807LL-1) : 0x3.908bbac92156697b253e2ad4c9p-48 : inexact-ok
+= compoundn tonearest ibm128 0x4.000008p-60 (-9223372036854775807LL-1) : 0x3.908bbac92156697b253e2ad4c9p-48 : inexact-ok
+= compoundn towardzero ibm128 0x4.000008p-60 (-9223372036854775807LL-1) : 0x3.908bbac92156697b253e2ad4c9p-48 : inexact-ok
+= compoundn upward ibm128 0x4.000008p-60 (-9223372036854775807LL-1) : 0x3.908bbac92156697b253e2ad4cap-48 : inexact-ok
+compoundn -0x1.000002p-58 -0x8000000000000000
+= compoundn downward binary32 -0x4.000008p-60 (-9223372036854775807LL-1) : 0x4.7d111p+44 : inexact-ok
+= compoundn tonearest binary32 -0x4.000008p-60 (-9223372036854775807LL-1) : 0x4.7d111p+44 : inexact-ok
+= compoundn towardzero binary32 -0x4.000008p-60 (-9223372036854775807LL-1) : 0x4.7d111p+44 : inexact-ok
+= compoundn upward binary32 -0x4.000008p-60 (-9223372036854775807LL-1) : 0x4.7d1118p+44 : inexact-ok
+= compoundn downward binary64 -0x4.000008p-60 (-9223372036854775807LL-1) : 0x4.7d111256fa384p+44 : inexact-ok
+= compoundn tonearest binary64 -0x4.000008p-60 (-9223372036854775807LL-1) : 0x4.7d111256fa388p+44 : inexact-ok
+= compoundn towardzero binary64 -0x4.000008p-60 (-9223372036854775807LL-1) : 0x4.7d111256fa384p+44 : inexact-ok
+= compoundn upward binary64 -0x4.000008p-60 (-9223372036854775807LL-1) : 0x4.7d111256fa388p+44 : inexact-ok
+= compoundn downward intel96 -0x4.000008p-60 (-9223372036854775807LL-1) : 0x4.7d111256fa386a48p+44 : inexact-ok
+= compoundn tonearest intel96 -0x4.000008p-60 (-9223372036854775807LL-1) : 0x4.7d111256fa386a5p+44 : inexact-ok
+= compoundn towardzero intel96 -0x4.000008p-60 (-9223372036854775807LL-1) : 0x4.7d111256fa386a48p+44 : inexact-ok
+= compoundn upward intel96 -0x4.000008p-60 (-9223372036854775807LL-1) : 0x4.7d111256fa386a5p+44 : inexact-ok
+= compoundn downward m68k96 -0x4.000008p-60 (-9223372036854775807LL-1) : 0x4.7d111256fa386a48p+44 : inexact-ok
+= compoundn tonearest m68k96 -0x4.000008p-60 (-9223372036854775807LL-1) : 0x4.7d111256fa386a5p+44 : inexact-ok
+= compoundn towardzero m68k96 -0x4.000008p-60 (-9223372036854775807LL-1) : 0x4.7d111256fa386a48p+44 : inexact-ok
+= compoundn upward m68k96 -0x4.000008p-60 (-9223372036854775807LL-1) : 0x4.7d111256fa386a5p+44 : inexact-ok
+= compoundn downward binary128 -0x4.000008p-60 (-9223372036854775807LL-1) : 0x4.7d111256fa386a4ecc28bb1c2d38p+44 : inexact-ok
+= compoundn tonearest binary128 -0x4.000008p-60 (-9223372036854775807LL-1) : 0x4.7d111256fa386a4ecc28bb1c2d38p+44 : inexact-ok
+= compoundn towardzero binary128 -0x4.000008p-60 (-9223372036854775807LL-1) : 0x4.7d111256fa386a4ecc28bb1c2d38p+44 : inexact-ok
+= compoundn upward binary128 -0x4.000008p-60 (-9223372036854775807LL-1) : 0x4.7d111256fa386a4ecc28bb1c2d3cp+44 : inexact-ok
+= compoundn downward ibm128 -0x4.000008p-60 (-9223372036854775807LL-1) : 0x4.7d111256fa386a4ecc28bb1c2cp+44 : inexact-ok
+= compoundn tonearest ibm128 -0x4.000008p-60 (-9223372036854775807LL-1) : 0x4.7d111256fa386a4ecc28bb1c2ep+44 : inexact-ok
+= compoundn towardzero ibm128 -0x4.000008p-60 (-9223372036854775807LL-1) : 0x4.7d111256fa386a4ecc28bb1c2cp+44 : inexact-ok
+= compoundn upward ibm128 -0x4.000008p-60 (-9223372036854775807LL-1) : 0x4.7d111256fa386a4ecc28bb1c2ep+44 : inexact-ok
+compoundn 0x1p-57 0x7fffffffffffffff
+= compoundn downward binary32 0x8p-60 9223372036854775807LL : 0x1.425982p+92 : inexact-ok
+= compoundn tonearest binary32 0x8p-60 9223372036854775807LL : 0x1.425982p+92 : inexact-ok
+= compoundn towardzero binary32 0x8p-60 9223372036854775807LL : 0x1.425982p+92 : inexact-ok
+= compoundn upward binary32 0x8p-60 9223372036854775807LL : 0x1.425984p+92 : inexact-ok
+= compoundn downward binary64 0x8p-60 9223372036854775807LL : 0x1.425982cf597cbp+92 : inexact-ok
+= compoundn tonearest binary64 0x8p-60 9223372036854775807LL : 0x1.425982cf597ccp+92 : inexact-ok
+= compoundn towardzero binary64 0x8p-60 9223372036854775807LL : 0x1.425982cf597cbp+92 : inexact-ok
+= compoundn upward binary64 0x8p-60 9223372036854775807LL : 0x1.425982cf597ccp+92 : inexact-ok
+= compoundn downward intel96 0x8p-60 9223372036854775807LL : 0x1.425982cf597cbd3ep+92 : inexact-ok
+= compoundn tonearest intel96 0x8p-60 9223372036854775807LL : 0x1.425982cf597cbd4p+92 : inexact-ok
+= compoundn towardzero intel96 0x8p-60 9223372036854775807LL : 0x1.425982cf597cbd3ep+92 : inexact-ok
+= compoundn upward intel96 0x8p-60 9223372036854775807LL : 0x1.425982cf597cbd4p+92 : inexact-ok
+= compoundn downward m68k96 0x8p-60 9223372036854775807LL : 0x1.425982cf597cbd3ep+92 : inexact-ok
+= compoundn tonearest m68k96 0x8p-60 9223372036854775807LL : 0x1.425982cf597cbd4p+92 : inexact-ok
+= compoundn towardzero m68k96 0x8p-60 9223372036854775807LL : 0x1.425982cf597cbd3ep+92 : inexact-ok
+= compoundn upward m68k96 0x8p-60 9223372036854775807LL : 0x1.425982cf597cbd4p+92 : inexact-ok
+= compoundn downward binary128 0x8p-60 9223372036854775807LL : 0x1.425982cf597cbd3f094efe0a502bp+92 : inexact-ok
+= compoundn tonearest binary128 0x8p-60 9223372036854775807LL : 0x1.425982cf597cbd3f094efe0a502cp+92 : inexact-ok
+= compoundn towardzero binary128 0x8p-60 9223372036854775807LL : 0x1.425982cf597cbd3f094efe0a502bp+92 : inexact-ok
+= compoundn upward binary128 0x8p-60 9223372036854775807LL : 0x1.425982cf597cbd3f094efe0a502cp+92 : inexact-ok
+= compoundn downward ibm128 0x8p-60 9223372036854775807LL : 0x1.425982cf597cbd3f094efe0a5p+92 : inexact-ok
+= compoundn tonearest ibm128 0x8p-60 9223372036854775807LL : 0x1.425982cf597cbd3f094efe0a5p+92 : inexact-ok
+= compoundn towardzero ibm128 0x8p-60 9223372036854775807LL : 0x1.425982cf597cbd3f094efe0a5p+92 : inexact-ok
+= compoundn upward ibm128 0x8p-60 9223372036854775807LL : 0x1.425982cf597cbd3f094efe0a508p+92 : inexact-ok
+compoundn -0x1p-57 0x7fffffffffffffff
+= compoundn downward binary32 -0x8p-60 9223372036854775807LL : 0xc.b4ea3p-96 : inexact-ok
+= compoundn tonearest binary32 -0x8p-60 9223372036854775807LL : 0xc.b4ea4p-96 : inexact-ok
+= compoundn towardzero binary32 -0x8p-60 9223372036854775807LL : 0xc.b4ea3p-96 : inexact-ok
+= compoundn upward binary32 -0x8p-60 9223372036854775807LL : 0xc.b4ea4p-96 : inexact-ok
+= compoundn downward binary64 -0x8p-60 9223372036854775807LL : 0xc.b4ea3990f265p-96 : inexact-ok
+= compoundn tonearest binary64 -0x8p-60 9223372036854775807LL : 0xc.b4ea3990f265p-96 : inexact-ok
+= compoundn towardzero binary64 -0x8p-60 9223372036854775807LL : 0xc.b4ea3990f265p-96 : inexact-ok
+= compoundn upward binary64 -0x8p-60 9223372036854775807LL : 0xc.b4ea3990f2658p-96 : inexact-ok
+= compoundn downward intel96 -0x8p-60 9223372036854775807LL : 0xc.b4ea3990f26511p-96 : inexact-ok
+= compoundn tonearest intel96 -0x8p-60 9223372036854775807LL : 0xc.b4ea3990f26511p-96 : inexact-ok
+= compoundn towardzero intel96 -0x8p-60 9223372036854775807LL : 0xc.b4ea3990f26511p-96 : inexact-ok
+= compoundn upward intel96 -0x8p-60 9223372036854775807LL : 0xc.b4ea3990f265111p-96 : inexact-ok
+= compoundn downward m68k96 -0x8p-60 9223372036854775807LL : 0xc.b4ea3990f26511p-96 : inexact-ok
+= compoundn tonearest m68k96 -0x8p-60 9223372036854775807LL : 0xc.b4ea3990f26511p-96 : inexact-ok
+= compoundn towardzero m68k96 -0x8p-60 9223372036854775807LL : 0xc.b4ea3990f26511p-96 : inexact-ok
+= compoundn upward m68k96 -0x8p-60 9223372036854775807LL : 0xc.b4ea3990f265111p-96 : inexact-ok
+= compoundn downward binary128 -0x8p-60 9223372036854775807LL : 0xc.b4ea3990f26511053ac3f19df8cp-96 : inexact-ok
+= compoundn tonearest binary128 -0x8p-60 9223372036854775807LL : 0xc.b4ea3990f26511053ac3f19df8cp-96 : inexact-ok
+= compoundn towardzero binary128 -0x8p-60 9223372036854775807LL : 0xc.b4ea3990f26511053ac3f19df8cp-96 : inexact-ok
+= compoundn upward binary128 -0x8p-60 9223372036854775807LL : 0xc.b4ea3990f26511053ac3f19df8c8p-96 : inexact-ok
+= compoundn downward ibm128 -0x8p-60 9223372036854775807LL : 0xc.b4ea3990f26511053ac3f19df8p-96 : inexact-ok
+= compoundn tonearest ibm128 -0x8p-60 9223372036854775807LL : 0xc.b4ea3990f26511053ac3f19df8p-96 : inexact-ok
+= compoundn towardzero ibm128 -0x8p-60 9223372036854775807LL : 0xc.b4ea3990f26511053ac3f19df8p-96 : inexact-ok
+= compoundn upward ibm128 -0x8p-60 9223372036854775807LL : 0xc.b4ea3990f26511053ac3f19dfcp-96 : inexact-ok
+compoundn 0x1p-57 -0x8000000000000000
+= compoundn downward binary32 0x8p-60 (-9223372036854775807LL-1) : 0xc.b4ea3p-96 : inexact-ok
+= compoundn tonearest binary32 0x8p-60 (-9223372036854775807LL-1) : 0xc.b4ea4p-96 : inexact-ok
+= compoundn towardzero binary32 0x8p-60 (-9223372036854775807LL-1) : 0xc.b4ea3p-96 : inexact-ok
+= compoundn upward binary32 0x8p-60 (-9223372036854775807LL-1) : 0xc.b4ea4p-96 : inexact-ok
+= compoundn downward binary64 0x8p-60 (-9223372036854775807LL-1) : 0xc.b4ea3990f2668p-96 : inexact-ok
+= compoundn tonearest binary64 0x8p-60 (-9223372036854775807LL-1) : 0xc.b4ea3990f2668p-96 : inexact-ok
+= compoundn towardzero binary64 0x8p-60 (-9223372036854775807LL-1) : 0xc.b4ea3990f2668p-96 : inexact-ok
+= compoundn upward binary64 0x8p-60 (-9223372036854775807LL-1) : 0xc.b4ea3990f267p-96 : inexact-ok
+= compoundn downward intel96 0x8p-60 (-9223372036854775807LL-1) : 0xc.b4ea3990f266a14p-96 : inexact-ok
+= compoundn tonearest intel96 0x8p-60 (-9223372036854775807LL-1) : 0xc.b4ea3990f266a15p-96 : inexact-ok
+= compoundn towardzero intel96 0x8p-60 (-9223372036854775807LL-1) : 0xc.b4ea3990f266a14p-96 : inexact-ok
+= compoundn upward intel96 0x8p-60 (-9223372036854775807LL-1) : 0xc.b4ea3990f266a15p-96 : inexact-ok
+= compoundn downward m68k96 0x8p-60 (-9223372036854775807LL-1) : 0xc.b4ea3990f266a14p-96 : inexact-ok
+= compoundn tonearest m68k96 0x8p-60 (-9223372036854775807LL-1) : 0xc.b4ea3990f266a15p-96 : inexact-ok
+= compoundn towardzero m68k96 0x8p-60 (-9223372036854775807LL-1) : 0xc.b4ea3990f266a14p-96 : inexact-ok
+= compoundn upward m68k96 0x8p-60 (-9223372036854775807LL-1) : 0xc.b4ea3990f266a15p-96 : inexact-ok
+= compoundn downward binary128 0x8p-60 (-9223372036854775807LL-1) : 0xc.b4ea3990f266a1480cd9477180f8p-96 : inexact-ok
+= compoundn tonearest binary128 0x8p-60 (-9223372036854775807LL-1) : 0xc.b4ea3990f266a1480cd9477180f8p-96 : inexact-ok
+= compoundn towardzero binary128 0x8p-60 (-9223372036854775807LL-1) : 0xc.b4ea3990f266a1480cd9477180f8p-96 : inexact-ok
+= compoundn upward binary128 0x8p-60 (-9223372036854775807LL-1) : 0xc.b4ea3990f266a1480cd9477181p-96 : inexact-ok
+= compoundn downward ibm128 0x8p-60 (-9223372036854775807LL-1) : 0xc.b4ea3990f266a1480cd947718p-96 : inexact-ok
+= compoundn tonearest ibm128 0x8p-60 (-9223372036854775807LL-1) : 0xc.b4ea3990f266a1480cd947718p-96 : inexact-ok
+= compoundn towardzero ibm128 0x8p-60 (-9223372036854775807LL-1) : 0xc.b4ea3990f266a1480cd947718p-96 : inexact-ok
+= compoundn upward ibm128 0x8p-60 (-9223372036854775807LL-1) : 0xc.b4ea3990f266a1480cd9477184p-96 : inexact-ok
+compoundn -0x1p-57 -0x8000000000000000
+= compoundn downward binary32 -0x8p-60 (-9223372036854775807LL-1) : 0x1.425982p+92 : inexact-ok
+= compoundn tonearest binary32 -0x8p-60 (-9223372036854775807LL-1) : 0x1.425982p+92 : inexact-ok
+= compoundn towardzero binary32 -0x8p-60 (-9223372036854775807LL-1) : 0x1.425982p+92 : inexact-ok
+= compoundn upward binary32 -0x8p-60 (-9223372036854775807LL-1) : 0x1.425984p+92 : inexact-ok
+= compoundn downward binary64 -0x8p-60 (-9223372036854775807LL-1) : 0x1.425982cf597cep+92 : inexact-ok
+= compoundn tonearest binary64 -0x8p-60 (-9223372036854775807LL-1) : 0x1.425982cf597cep+92 : inexact-ok
+= compoundn towardzero binary64 -0x8p-60 (-9223372036854775807LL-1) : 0x1.425982cf597cep+92 : inexact-ok
+= compoundn upward binary64 -0x8p-60 (-9223372036854775807LL-1) : 0x1.425982cf597cfp+92 : inexact-ok
+= compoundn downward intel96 -0x8p-60 (-9223372036854775807LL-1) : 0x1.425982cf597ce62ap+92 : inexact-ok
+= compoundn tonearest intel96 -0x8p-60 (-9223372036854775807LL-1) : 0x1.425982cf597ce62cp+92 : inexact-ok
+= compoundn towardzero intel96 -0x8p-60 (-9223372036854775807LL-1) : 0x1.425982cf597ce62ap+92 : inexact-ok
+= compoundn upward intel96 -0x8p-60 (-9223372036854775807LL-1) : 0x1.425982cf597ce62cp+92 : inexact-ok
+= compoundn downward m68k96 -0x8p-60 (-9223372036854775807LL-1) : 0x1.425982cf597ce62ap+92 : inexact-ok
+= compoundn tonearest m68k96 -0x8p-60 (-9223372036854775807LL-1) : 0x1.425982cf597ce62cp+92 : inexact-ok
+= compoundn towardzero m68k96 -0x8p-60 (-9223372036854775807LL-1) : 0x1.425982cf597ce62ap+92 : inexact-ok
+= compoundn upward m68k96 -0x8p-60 (-9223372036854775807LL-1) : 0x1.425982cf597ce62cp+92 : inexact-ok
+= compoundn downward binary128 -0x8p-60 (-9223372036854775807LL-1) : 0x1.425982cf597ce62b666a50e6a8cbp+92 : inexact-ok
+= compoundn tonearest binary128 -0x8p-60 (-9223372036854775807LL-1) : 0x1.425982cf597ce62b666a50e6a8cbp+92 : inexact-ok
+= compoundn towardzero binary128 -0x8p-60 (-9223372036854775807LL-1) : 0x1.425982cf597ce62b666a50e6a8cbp+92 : inexact-ok
+= compoundn upward binary128 -0x8p-60 (-9223372036854775807LL-1) : 0x1.425982cf597ce62b666a50e6a8ccp+92 : inexact-ok
+= compoundn downward ibm128 -0x8p-60 (-9223372036854775807LL-1) : 0x1.425982cf597ce62b666a50e6a88p+92 : inexact-ok
+= compoundn tonearest ibm128 -0x8p-60 (-9223372036854775807LL-1) : 0x1.425982cf597ce62b666a50e6a9p+92 : inexact-ok
+= compoundn towardzero ibm128 -0x8p-60 (-9223372036854775807LL-1) : 0x1.425982cf597ce62b666a50e6a88p+92 : inexact-ok
+= compoundn upward ibm128 -0x8p-60 (-9223372036854775807LL-1) : 0x1.425982cf597ce62b666a50e6a9p+92 : inexact-ok
+compoundn 0x1.000002p-57 0x7fffffffffffffff
+= compoundn downward binary32 0x8.00001p-60 9223372036854775807LL : 0x1.425a22p+92 : inexact-ok
+= compoundn tonearest binary32 0x8.00001p-60 9223372036854775807LL : 0x1.425a24p+92 : inexact-ok
+= compoundn towardzero binary32 0x8.00001p-60 9223372036854775807LL : 0x1.425a22p+92 : inexact-ok
+= compoundn upward binary32 0x8.00001p-60 9223372036854775807LL : 0x1.425a24p+92 : inexact-ok
+= compoundn downward binary64 0x8.00001p-60 9223372036854775807LL : 0x1.425a23fc432fap+92 : inexact-ok
+= compoundn tonearest binary64 0x8.00001p-60 9223372036854775807LL : 0x1.425a23fc432fap+92 : inexact-ok
+= compoundn towardzero binary64 0x8.00001p-60 9223372036854775807LL : 0x1.425a23fc432fap+92 : inexact-ok
+= compoundn upward binary64 0x8.00001p-60 9223372036854775807LL : 0x1.425a23fc432fbp+92 : inexact-ok
+= compoundn downward intel96 0x8.00001p-60 9223372036854775807LL : 0x1.425a23fc432fa10ep+92 : inexact-ok
+= compoundn tonearest intel96 0x8.00001p-60 9223372036854775807LL : 0x1.425a23fc432fa10ep+92 : inexact-ok
+= compoundn towardzero intel96 0x8.00001p-60 9223372036854775807LL : 0x1.425a23fc432fa10ep+92 : inexact-ok
+= compoundn upward intel96 0x8.00001p-60 9223372036854775807LL : 0x1.425a23fc432fa11p+92 : inexact-ok
+= compoundn downward m68k96 0x8.00001p-60 9223372036854775807LL : 0x1.425a23fc432fa10ep+92 : inexact-ok
+= compoundn tonearest m68k96 0x8.00001p-60 9223372036854775807LL : 0x1.425a23fc432fa10ep+92 : inexact-ok
+= compoundn towardzero m68k96 0x8.00001p-60 9223372036854775807LL : 0x1.425a23fc432fa10ep+92 : inexact-ok
+= compoundn upward m68k96 0x8.00001p-60 9223372036854775807LL : 0x1.425a23fc432fa11p+92 : inexact-ok
+= compoundn downward binary128 0x8.00001p-60 9223372036854775807LL : 0x1.425a23fc432fa10e865ccf158855p+92 : inexact-ok
+= compoundn tonearest binary128 0x8.00001p-60 9223372036854775807LL : 0x1.425a23fc432fa10e865ccf158855p+92 : inexact-ok
+= compoundn towardzero binary128 0x8.00001p-60 9223372036854775807LL : 0x1.425a23fc432fa10e865ccf158855p+92 : inexact-ok
+= compoundn upward binary128 0x8.00001p-60 9223372036854775807LL : 0x1.425a23fc432fa10e865ccf158856p+92 : inexact-ok
+= compoundn downward ibm128 0x8.00001p-60 9223372036854775807LL : 0x1.425a23fc432fa10e865ccf1588p+92 : inexact-ok
+= compoundn tonearest ibm128 0x8.00001p-60 9223372036854775807LL : 0x1.425a23fc432fa10e865ccf15888p+92 : inexact-ok
+= compoundn towardzero ibm128 0x8.00001p-60 9223372036854775807LL : 0x1.425a23fc432fa10e865ccf1588p+92 : inexact-ok
+= compoundn upward ibm128 0x8.00001p-60 9223372036854775807LL : 0x1.425a23fc432fa10e865ccf15888p+92 : inexact-ok
+compoundn -0x1.000002p-57 0x7fffffffffffffff
+= compoundn downward binary32 -0x8.00001p-60 9223372036854775807LL : 0xc.b4e3dp-96 : inexact-ok
+= compoundn tonearest binary32 -0x8.00001p-60 9223372036854775807LL : 0xc.b4e3ep-96 : inexact-ok
+= compoundn towardzero binary32 -0x8.00001p-60 9223372036854775807LL : 0xc.b4e3dp-96 : inexact-ok
+= compoundn upward binary32 -0x8.00001p-60 9223372036854775807LL : 0xc.b4e3ep-96 : inexact-ok
+= compoundn downward binary64 -0x8.00001p-60 9223372036854775807LL : 0xc.b4e3df1d6c398p-96 : inexact-ok
+= compoundn tonearest binary64 -0x8.00001p-60 9223372036854775807LL : 0xc.b4e3df1d6c398p-96 : inexact-ok
+= compoundn towardzero binary64 -0x8.00001p-60 9223372036854775807LL : 0xc.b4e3df1d6c398p-96 : inexact-ok
+= compoundn upward binary64 -0x8.00001p-60 9223372036854775807LL : 0xc.b4e3df1d6c3ap-96 : inexact-ok
+= compoundn downward intel96 -0x8.00001p-60 9223372036854775807LL : 0xc.b4e3df1d6c399b3p-96 : inexact-ok
+= compoundn tonearest intel96 -0x8.00001p-60 9223372036854775807LL : 0xc.b4e3df1d6c399b4p-96 : inexact-ok
+= compoundn towardzero intel96 -0x8.00001p-60 9223372036854775807LL : 0xc.b4e3df1d6c399b3p-96 : inexact-ok
+= compoundn upward intel96 -0x8.00001p-60 9223372036854775807LL : 0xc.b4e3df1d6c399b4p-96 : inexact-ok
+= compoundn downward m68k96 -0x8.00001p-60 9223372036854775807LL : 0xc.b4e3df1d6c399b3p-96 : inexact-ok
+= compoundn tonearest m68k96 -0x8.00001p-60 9223372036854775807LL : 0xc.b4e3df1d6c399b4p-96 : inexact-ok
+= compoundn towardzero m68k96 -0x8.00001p-60 9223372036854775807LL : 0xc.b4e3df1d6c399b3p-96 : inexact-ok
+= compoundn upward m68k96 -0x8.00001p-60 9223372036854775807LL : 0xc.b4e3df1d6c399b4p-96 : inexact-ok
+= compoundn downward binary128 -0x8.00001p-60 9223372036854775807LL : 0xc.b4e3df1d6c399b3ff4b308865068p-96 : inexact-ok
+= compoundn tonearest binary128 -0x8.00001p-60 9223372036854775807LL : 0xc.b4e3df1d6c399b3ff4b30886507p-96 : inexact-ok
+= compoundn towardzero binary128 -0x8.00001p-60 9223372036854775807LL : 0xc.b4e3df1d6c399b3ff4b308865068p-96 : inexact-ok
+= compoundn upward binary128 -0x8.00001p-60 9223372036854775807LL : 0xc.b4e3df1d6c399b3ff4b30886507p-96 : inexact-ok
+= compoundn downward ibm128 -0x8.00001p-60 9223372036854775807LL : 0xc.b4e3df1d6c399b3ff4b308865p-96 : inexact-ok
+= compoundn tonearest ibm128 -0x8.00001p-60 9223372036854775807LL : 0xc.b4e3df1d6c399b3ff4b308865p-96 : inexact-ok
+= compoundn towardzero ibm128 -0x8.00001p-60 9223372036854775807LL : 0xc.b4e3df1d6c399b3ff4b308865p-96 : inexact-ok
+= compoundn upward ibm128 -0x8.00001p-60 9223372036854775807LL : 0xc.b4e3df1d6c399b3ff4b3088654p-96 : inexact-ok
+compoundn 0x1.000002p-57 -0x8000000000000000
+= compoundn downward binary32 0x8.00001p-60 (-9223372036854775807LL-1) : 0xc.b4e3dp-96 : inexact-ok
+= compoundn tonearest binary32 0x8.00001p-60 (-9223372036854775807LL-1) : 0xc.b4e3ep-96 : inexact-ok
+= compoundn towardzero binary32 0x8.00001p-60 (-9223372036854775807LL-1) : 0xc.b4e3dp-96 : inexact-ok
+= compoundn upward binary32 0x8.00001p-60 (-9223372036854775807LL-1) : 0xc.b4e3ep-96 : inexact-ok
+= compoundn downward binary64 0x8.00001p-60 (-9223372036854775807LL-1) : 0xc.b4e3df1d6c3bp-96 : inexact-ok
+= compoundn tonearest binary64 0x8.00001p-60 (-9223372036854775807LL-1) : 0xc.b4e3df1d6c3bp-96 : inexact-ok
+= compoundn towardzero binary64 0x8.00001p-60 (-9223372036854775807LL-1) : 0xc.b4e3df1d6c3bp-96 : inexact-ok
+= compoundn upward binary64 0x8.00001p-60 (-9223372036854775807LL-1) : 0xc.b4e3df1d6c3b8p-96 : inexact-ok
+= compoundn downward intel96 0x8.00001p-60 (-9223372036854775807LL-1) : 0xc.b4e3df1d6c3b2b8p-96 : inexact-ok
+= compoundn tonearest intel96 0x8.00001p-60 (-9223372036854775807LL-1) : 0xc.b4e3df1d6c3b2b8p-96 : inexact-ok
+= compoundn towardzero intel96 0x8.00001p-60 (-9223372036854775807LL-1) : 0xc.b4e3df1d6c3b2b8p-96 : inexact-ok
+= compoundn upward intel96 0x8.00001p-60 (-9223372036854775807LL-1) : 0xc.b4e3df1d6c3b2b9p-96 : inexact-ok
+= compoundn downward m68k96 0x8.00001p-60 (-9223372036854775807LL-1) : 0xc.b4e3df1d6c3b2b8p-96 : inexact-ok
+= compoundn tonearest m68k96 0x8.00001p-60 (-9223372036854775807LL-1) : 0xc.b4e3df1d6c3b2b8p-96 : inexact-ok
+= compoundn towardzero m68k96 0x8.00001p-60 (-9223372036854775807LL-1) : 0xc.b4e3df1d6c3b2b8p-96 : inexact-ok
+= compoundn upward m68k96 0x8.00001p-60 (-9223372036854775807LL-1) : 0xc.b4e3df1d6c3b2b9p-96 : inexact-ok
+= compoundn downward binary128 0x8.00001p-60 (-9223372036854775807LL-1) : 0xc.b4e3df1d6c3b2b8204f4e46989bp-96 : inexact-ok
+= compoundn tonearest binary128 0x8.00001p-60 (-9223372036854775807LL-1) : 0xc.b4e3df1d6c3b2b8204f4e46989bp-96 : inexact-ok
+= compoundn towardzero binary128 0x8.00001p-60 (-9223372036854775807LL-1) : 0xc.b4e3df1d6c3b2b8204f4e46989bp-96 : inexact-ok
+= compoundn upward binary128 0x8.00001p-60 (-9223372036854775807LL-1) : 0xc.b4e3df1d6c3b2b8204f4e46989b8p-96 : inexact-ok
+= compoundn downward ibm128 0x8.00001p-60 (-9223372036854775807LL-1) : 0xc.b4e3df1d6c3b2b8204f4e46988p-96 : inexact-ok
+= compoundn tonearest ibm128 0x8.00001p-60 (-9223372036854775807LL-1) : 0xc.b4e3df1d6c3b2b8204f4e46988p-96 : inexact-ok
+= compoundn towardzero ibm128 0x8.00001p-60 (-9223372036854775807LL-1) : 0xc.b4e3df1d6c3b2b8204f4e46988p-96 : inexact-ok
+= compoundn upward ibm128 0x8.00001p-60 (-9223372036854775807LL-1) : 0xc.b4e3df1d6c3b2b8204f4e4698cp-96 : inexact-ok
+compoundn -0x1.000002p-57 -0x8000000000000000
+= compoundn downward binary32 -0x8.00001p-60 (-9223372036854775807LL-1) : 0x1.425a22p+92 : inexact-ok
+= compoundn tonearest binary32 -0x8.00001p-60 (-9223372036854775807LL-1) : 0x1.425a24p+92 : inexact-ok
+= compoundn towardzero binary32 -0x8.00001p-60 (-9223372036854775807LL-1) : 0x1.425a22p+92 : inexact-ok
+= compoundn upward binary32 -0x8.00001p-60 (-9223372036854775807LL-1) : 0x1.425a24p+92 : inexact-ok
+= compoundn downward binary64 -0x8.00001p-60 (-9223372036854775807LL-1) : 0x1.425a23fc432fcp+92 : inexact-ok
+= compoundn tonearest binary64 -0x8.00001p-60 (-9223372036854775807LL-1) : 0x1.425a23fc432fdp+92 : inexact-ok
+= compoundn towardzero binary64 -0x8.00001p-60 (-9223372036854775807LL-1) : 0x1.425a23fc432fcp+92 : inexact-ok
+= compoundn upward binary64 -0x8.00001p-60 (-9223372036854775807LL-1) : 0x1.425a23fc432fdp+92 : inexact-ok
+= compoundn downward intel96 -0x8.00001p-60 (-9223372036854775807LL-1) : 0x1.425a23fc432fc9fap+92 : inexact-ok
+= compoundn tonearest intel96 -0x8.00001p-60 (-9223372036854775807LL-1) : 0x1.425a23fc432fc9fap+92 : inexact-ok
+= compoundn towardzero intel96 -0x8.00001p-60 (-9223372036854775807LL-1) : 0x1.425a23fc432fc9fap+92 : inexact-ok
+= compoundn upward intel96 -0x8.00001p-60 (-9223372036854775807LL-1) : 0x1.425a23fc432fc9fcp+92 : inexact-ok
+= compoundn downward m68k96 -0x8.00001p-60 (-9223372036854775807LL-1) : 0x1.425a23fc432fc9fap+92 : inexact-ok
+= compoundn tonearest m68k96 -0x8.00001p-60 (-9223372036854775807LL-1) : 0x1.425a23fc432fc9fap+92 : inexact-ok
+= compoundn towardzero m68k96 -0x8.00001p-60 (-9223372036854775807LL-1) : 0x1.425a23fc432fc9fap+92 : inexact-ok
+= compoundn upward m68k96 -0x8.00001p-60 (-9223372036854775807LL-1) : 0x1.425a23fc432fc9fcp+92 : inexact-ok
+= compoundn downward binary128 -0x8.00001p-60 (-9223372036854775807LL-1) : 0x1.425a23fc432fc9faf890c509da2bp+92 : inexact-ok
+= compoundn tonearest binary128 -0x8.00001p-60 (-9223372036854775807LL-1) : 0x1.425a23fc432fc9faf890c509da2bp+92 : inexact-ok
+= compoundn towardzero binary128 -0x8.00001p-60 (-9223372036854775807LL-1) : 0x1.425a23fc432fc9faf890c509da2bp+92 : inexact-ok
+= compoundn upward binary128 -0x8.00001p-60 (-9223372036854775807LL-1) : 0x1.425a23fc432fc9faf890c509da2cp+92 : inexact-ok
+= compoundn downward ibm128 -0x8.00001p-60 (-9223372036854775807LL-1) : 0x1.425a23fc432fc9faf890c509dap+92 : inexact-ok
+= compoundn tonearest ibm128 -0x8.00001p-60 (-9223372036854775807LL-1) : 0x1.425a23fc432fc9faf890c509dap+92 : inexact-ok
+= compoundn towardzero ibm128 -0x8.00001p-60 (-9223372036854775807LL-1) : 0x1.425a23fc432fc9faf890c509dap+92 : inexact-ok
+= compoundn upward ibm128 -0x8.00001p-60 (-9223372036854775807LL-1) : 0x1.425a23fc432fc9faf890c509da8p+92 : inexact-ok
+compoundn 0x1p-56 0x7fffffffffffffff
+= compoundn downward binary32 0x1p-56 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 0x1p-56 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 0x1p-56 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 0x1p-56 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 0x1p-56 9223372036854775807LL : 0x1.95e54c5dd4211p+184 : inexact-ok
+= compoundn tonearest binary64 0x1p-56 9223372036854775807LL : 0x1.95e54c5dd4211p+184 : inexact-ok
+= compoundn towardzero binary64 0x1p-56 9223372036854775807LL : 0x1.95e54c5dd4211p+184 : inexact-ok
+= compoundn upward binary64 0x1p-56 9223372036854775807LL : 0x1.95e54c5dd4212p+184 : inexact-ok
+= compoundn downward intel96 0x1p-56 9223372036854775807LL : 0x1.95e54c5dd42110e6p+184 : inexact-ok
+= compoundn tonearest intel96 0x1p-56 9223372036854775807LL : 0x1.95e54c5dd42110e6p+184 : inexact-ok
+= compoundn towardzero intel96 0x1p-56 9223372036854775807LL : 0x1.95e54c5dd42110e6p+184 : inexact-ok
+= compoundn upward intel96 0x1p-56 9223372036854775807LL : 0x1.95e54c5dd42110e8p+184 : inexact-ok
+= compoundn downward m68k96 0x1p-56 9223372036854775807LL : 0x1.95e54c5dd42110e6p+184 : inexact-ok
+= compoundn tonearest m68k96 0x1p-56 9223372036854775807LL : 0x1.95e54c5dd42110e6p+184 : inexact-ok
+= compoundn towardzero m68k96 0x1p-56 9223372036854775807LL : 0x1.95e54c5dd42110e6p+184 : inexact-ok
+= compoundn upward m68k96 0x1p-56 9223372036854775807LL : 0x1.95e54c5dd42110e8p+184 : inexact-ok
+= compoundn downward binary128 0x1p-56 9223372036854775807LL : 0x1.95e54c5dd42110e606e97f3d6cf6p+184 : inexact-ok
+= compoundn tonearest binary128 0x1p-56 9223372036854775807LL : 0x1.95e54c5dd42110e606e97f3d6cf6p+184 : inexact-ok
+= compoundn towardzero binary128 0x1p-56 9223372036854775807LL : 0x1.95e54c5dd42110e606e97f3d6cf6p+184 : inexact-ok
+= compoundn upward binary128 0x1p-56 9223372036854775807LL : 0x1.95e54c5dd42110e606e97f3d6cf7p+184 : inexact-ok
+= compoundn downward ibm128 0x1p-56 9223372036854775807LL : 0x1.95e54c5dd42110e606e97f3d6c8p+184 : inexact-ok
+= compoundn tonearest ibm128 0x1p-56 9223372036854775807LL : 0x1.95e54c5dd42110e606e97f3d6dp+184 : inexact-ok
+= compoundn towardzero ibm128 0x1p-56 9223372036854775807LL : 0x1.95e54c5dd42110e606e97f3d6c8p+184 : inexact-ok
+= compoundn upward ibm128 0x1p-56 9223372036854775807LL : 0x1.95e54c5dd42110e606e97f3d6dp+184 : inexact-ok
+compoundn -0x1p-56 0x7fffffffffffffff
+= compoundn downward binary32 -0x1p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 -0x1p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 -0x1p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 -0x1p-56 9223372036854775807LL : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 -0x1p-56 9223372036854775807LL : 0xa.175cf9cd7d83p-188 : inexact-ok
+= compoundn tonearest binary64 -0x1p-56 9223372036854775807LL : 0xa.175cf9cd7d83p-188 : inexact-ok
+= compoundn towardzero binary64 -0x1p-56 9223372036854775807LL : 0xa.175cf9cd7d83p-188 : inexact-ok
+= compoundn upward binary64 -0x1p-56 9223372036854775807LL : 0xa.175cf9cd7d838p-188 : inexact-ok
+= compoundn downward intel96 -0x1p-56 9223372036854775807LL : 0xa.175cf9cd7d83088p-188 : inexact-ok
+= compoundn tonearest intel96 -0x1p-56 9223372036854775807LL : 0xa.175cf9cd7d83088p-188 : inexact-ok
+= compoundn towardzero intel96 -0x1p-56 9223372036854775807LL : 0xa.175cf9cd7d83088p-188 : inexact-ok
+= compoundn upward intel96 -0x1p-56 9223372036854775807LL : 0xa.175cf9cd7d83089p-188 : inexact-ok
+= compoundn downward m68k96 -0x1p-56 9223372036854775807LL : 0xa.175cf9cd7d83088p-188 : inexact-ok
+= compoundn tonearest m68k96 -0x1p-56 9223372036854775807LL : 0xa.175cf9cd7d83088p-188 : inexact-ok
+= compoundn towardzero m68k96 -0x1p-56 9223372036854775807LL : 0xa.175cf9cd7d83088p-188 : inexact-ok
+= compoundn upward m68k96 -0x1p-56 9223372036854775807LL : 0xa.175cf9cd7d83089p-188 : inexact-ok
+= compoundn downward binary128 -0x1p-56 9223372036854775807LL : 0xa.175cf9cd7d83088789fc15be575p-188 : inexact-ok
+= compoundn tonearest binary128 -0x1p-56 9223372036854775807LL : 0xa.175cf9cd7d83088789fc15be575p-188 : inexact-ok
+= compoundn towardzero binary128 -0x1p-56 9223372036854775807LL : 0xa.175cf9cd7d83088789fc15be575p-188 : inexact-ok
+= compoundn upward binary128 -0x1p-56 9223372036854775807LL : 0xa.175cf9cd7d83088789fc15be5758p-188 : inexact-ok
+= compoundn downward ibm128 -0x1p-56 9223372036854775807LL : 0xa.175cf9cd7d83088789fc15be54p-188 : inexact-ok
+= compoundn tonearest ibm128 -0x1p-56 9223372036854775807LL : 0xa.175cf9cd7d83088789fc15be58p-188 : inexact-ok
+= compoundn towardzero ibm128 -0x1p-56 9223372036854775807LL : 0xa.175cf9cd7d83088789fc15be54p-188 : inexact-ok
+= compoundn upward ibm128 -0x1p-56 9223372036854775807LL : 0xa.175cf9cd7d83088789fc15be58p-188 : inexact-ok
+compoundn 0x1p-56 -0x8000000000000000
+= compoundn downward binary32 0x1p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 0x1p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 0x1p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 0x1p-56 (-9223372036854775807LL-1) : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0x1p-56 (-9223372036854775807LL-1) : 0xa.175cf9cd7d88p-188 : inexact-ok
+= compoundn tonearest binary64 0x1p-56 (-9223372036854775807LL-1) : 0xa.175cf9cd7d88p-188 : inexact-ok
+= compoundn towardzero binary64 0x1p-56 (-9223372036854775807LL-1) : 0xa.175cf9cd7d88p-188 : inexact-ok
+= compoundn upward binary64 0x1p-56 (-9223372036854775807LL-1) : 0xa.175cf9cd7d888p-188 : inexact-ok
+= compoundn downward intel96 0x1p-56 (-9223372036854775807LL-1) : 0xa.175cf9cd7d880a1p-188 : inexact-ok
+= compoundn tonearest intel96 0x1p-56 (-9223372036854775807LL-1) : 0xa.175cf9cd7d880a2p-188 : inexact-ok
+= compoundn towardzero intel96 0x1p-56 (-9223372036854775807LL-1) : 0xa.175cf9cd7d880a1p-188 : inexact-ok
+= compoundn upward intel96 0x1p-56 (-9223372036854775807LL-1) : 0xa.175cf9cd7d880a2p-188 : inexact-ok
+= compoundn downward m68k96 0x1p-56 (-9223372036854775807LL-1) : 0xa.175cf9cd7d880a1p-188 : inexact-ok
+= compoundn tonearest m68k96 0x1p-56 (-9223372036854775807LL-1) : 0xa.175cf9cd7d880a2p-188 : inexact-ok
+= compoundn towardzero m68k96 0x1p-56 (-9223372036854775807LL-1) : 0xa.175cf9cd7d880a1p-188 : inexact-ok
+= compoundn upward m68k96 0x1p-56 (-9223372036854775807LL-1) : 0xa.175cf9cd7d880a2p-188 : inexact-ok
+= compoundn downward binary128 0x1p-56 (-9223372036854775807LL-1) : 0xa.175cf9cd7d880a1ea9e907039668p-188 : inexact-ok
+= compoundn tonearest binary128 0x1p-56 (-9223372036854775807LL-1) : 0xa.175cf9cd7d880a1ea9e90703967p-188 : inexact-ok
+= compoundn towardzero binary128 0x1p-56 (-9223372036854775807LL-1) : 0xa.175cf9cd7d880a1ea9e907039668p-188 : inexact-ok
+= compoundn upward binary128 0x1p-56 (-9223372036854775807LL-1) : 0xa.175cf9cd7d880a1ea9e90703967p-188 : inexact-ok
+= compoundn downward ibm128 0x1p-56 (-9223372036854775807LL-1) : 0xa.175cf9cd7d880a1ea9e9070394p-188 : inexact-ok
+= compoundn tonearest ibm128 0x1p-56 (-9223372036854775807LL-1) : 0xa.175cf9cd7d880a1ea9e9070398p-188 : inexact-ok
+= compoundn towardzero ibm128 0x1p-56 (-9223372036854775807LL-1) : 0xa.175cf9cd7d880a1ea9e9070394p-188 : inexact-ok
+= compoundn upward ibm128 0x1p-56 (-9223372036854775807LL-1) : 0xa.175cf9cd7d880a1ea9e9070398p-188 : inexact-ok
+compoundn -0x1p-56 -0x8000000000000000
+= compoundn downward binary32 -0x1p-56 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 -0x1p-56 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 -0x1p-56 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 -0x1p-56 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 -0x1p-56 (-9223372036854775807LL-1) : 0x1.95e54c5dd421dp+184 : inexact-ok
+= compoundn tonearest binary64 -0x1p-56 (-9223372036854775807LL-1) : 0x1.95e54c5dd421ep+184 : inexact-ok
+= compoundn towardzero binary64 -0x1p-56 (-9223372036854775807LL-1) : 0x1.95e54c5dd421dp+184 : inexact-ok
+= compoundn upward binary64 -0x1p-56 (-9223372036854775807LL-1) : 0x1.95e54c5dd421ep+184 : inexact-ok
+= compoundn downward intel96 -0x1p-56 (-9223372036854775807LL-1) : 0x1.95e54c5dd421dd6ep+184 : inexact-ok
+= compoundn tonearest intel96 -0x1p-56 (-9223372036854775807LL-1) : 0x1.95e54c5dd421dd6ep+184 : inexact-ok
+= compoundn towardzero intel96 -0x1p-56 (-9223372036854775807LL-1) : 0x1.95e54c5dd421dd6ep+184 : inexact-ok
+= compoundn upward intel96 -0x1p-56 (-9223372036854775807LL-1) : 0x1.95e54c5dd421dd7p+184 : inexact-ok
+= compoundn downward m68k96 -0x1p-56 (-9223372036854775807LL-1) : 0x1.95e54c5dd421dd6ep+184 : inexact-ok
+= compoundn tonearest m68k96 -0x1p-56 (-9223372036854775807LL-1) : 0x1.95e54c5dd421dd6ep+184 : inexact-ok
+= compoundn towardzero m68k96 -0x1p-56 (-9223372036854775807LL-1) : 0x1.95e54c5dd421dd6ep+184 : inexact-ok
+= compoundn upward m68k96 -0x1p-56 (-9223372036854775807LL-1) : 0x1.95e54c5dd421dd7p+184 : inexact-ok
+= compoundn downward binary128 -0x1p-56 (-9223372036854775807LL-1) : 0x1.95e54c5dd421dd6e9264c7224a01p+184 : inexact-ok
+= compoundn tonearest binary128 -0x1p-56 (-9223372036854775807LL-1) : 0x1.95e54c5dd421dd6e9264c7224a02p+184 : inexact-ok
+= compoundn towardzero binary128 -0x1p-56 (-9223372036854775807LL-1) : 0x1.95e54c5dd421dd6e9264c7224a01p+184 : inexact-ok
+= compoundn upward binary128 -0x1p-56 (-9223372036854775807LL-1) : 0x1.95e54c5dd421dd6e9264c7224a02p+184 : inexact-ok
+= compoundn downward ibm128 -0x1p-56 (-9223372036854775807LL-1) : 0x1.95e54c5dd421dd6e9264c7224ap+184 : inexact-ok
+= compoundn tonearest ibm128 -0x1p-56 (-9223372036854775807LL-1) : 0x1.95e54c5dd421dd6e9264c7224ap+184 : inexact-ok
+= compoundn towardzero ibm128 -0x1p-56 (-9223372036854775807LL-1) : 0x1.95e54c5dd421dd6e9264c7224ap+184 : inexact-ok
+= compoundn upward ibm128 -0x1p-56 (-9223372036854775807LL-1) : 0x1.95e54c5dd421dd6e9264c7224a8p+184 : inexact-ok
+compoundn 0x1.000002p-56 0x7fffffffffffffff
+= compoundn downward binary32 0x1.000002p-56 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 0x1.000002p-56 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 0x1.000002p-56 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 0x1.000002p-56 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 0x1.000002p-56 9223372036854775807LL : 0x1.95e6e243eb71cp+184 : inexact-ok
+= compoundn tonearest binary64 0x1.000002p-56 9223372036854775807LL : 0x1.95e6e243eb71dp+184 : inexact-ok
+= compoundn towardzero binary64 0x1.000002p-56 9223372036854775807LL : 0x1.95e6e243eb71cp+184 : inexact-ok
+= compoundn upward binary64 0x1.000002p-56 9223372036854775807LL : 0x1.95e6e243eb71dp+184 : inexact-ok
+= compoundn downward intel96 0x1.000002p-56 9223372036854775807LL : 0x1.95e6e243eb71cedcp+184 : inexact-ok
+= compoundn tonearest intel96 0x1.000002p-56 9223372036854775807LL : 0x1.95e6e243eb71cedcp+184 : inexact-ok
+= compoundn towardzero intel96 0x1.000002p-56 9223372036854775807LL : 0x1.95e6e243eb71cedcp+184 : inexact-ok
+= compoundn upward intel96 0x1.000002p-56 9223372036854775807LL : 0x1.95e6e243eb71cedep+184 : inexact-ok
+= compoundn downward m68k96 0x1.000002p-56 9223372036854775807LL : 0x1.95e6e243eb71cedcp+184 : inexact-ok
+= compoundn tonearest m68k96 0x1.000002p-56 9223372036854775807LL : 0x1.95e6e243eb71cedcp+184 : inexact-ok
+= compoundn towardzero m68k96 0x1.000002p-56 9223372036854775807LL : 0x1.95e6e243eb71cedcp+184 : inexact-ok
+= compoundn upward m68k96 0x1.000002p-56 9223372036854775807LL : 0x1.95e6e243eb71cedep+184 : inexact-ok
+= compoundn downward binary128 0x1.000002p-56 9223372036854775807LL : 0x1.95e6e243eb71cedc489585d3a6b1p+184 : inexact-ok
+= compoundn tonearest binary128 0x1.000002p-56 9223372036854775807LL : 0x1.95e6e243eb71cedc489585d3a6b2p+184 : inexact-ok
+= compoundn towardzero binary128 0x1.000002p-56 9223372036854775807LL : 0x1.95e6e243eb71cedc489585d3a6b1p+184 : inexact-ok
+= compoundn upward binary128 0x1.000002p-56 9223372036854775807LL : 0x1.95e6e243eb71cedc489585d3a6b2p+184 : inexact-ok
+= compoundn downward ibm128 0x1.000002p-56 9223372036854775807LL : 0x1.95e6e243eb71cedc489585d3a68p+184 : inexact-ok
+= compoundn tonearest ibm128 0x1.000002p-56 9223372036854775807LL : 0x1.95e6e243eb71cedc489585d3a68p+184 : inexact-ok
+= compoundn towardzero ibm128 0x1.000002p-56 9223372036854775807LL : 0x1.95e6e243eb71cedc489585d3a68p+184 : inexact-ok
+= compoundn upward ibm128 0x1.000002p-56 9223372036854775807LL : 0x1.95e6e243eb71cedc489585d3a7p+184 : inexact-ok
+compoundn -0x1.000002p-56 0x7fffffffffffffff
+= compoundn downward binary32 -0x1.000002p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 -0x1.000002p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 -0x1.000002p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 -0x1.000002p-56 9223372036854775807LL : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 -0x1.000002p-56 9223372036854775807LL : 0xa.1752e2758f62p-188 : inexact-ok
+= compoundn tonearest binary64 -0x1.000002p-56 9223372036854775807LL : 0xa.1752e2758f628p-188 : inexact-ok
+= compoundn towardzero binary64 -0x1.000002p-56 9223372036854775807LL : 0xa.1752e2758f62p-188 : inexact-ok
+= compoundn upward binary64 -0x1.000002p-56 9223372036854775807LL : 0xa.1752e2758f628p-188 : inexact-ok
+= compoundn downward intel96 -0x1.000002p-56 9223372036854775807LL : 0xa.1752e2758f62595p-188 : inexact-ok
+= compoundn tonearest intel96 -0x1.000002p-56 9223372036854775807LL : 0xa.1752e2758f62596p-188 : inexact-ok
+= compoundn towardzero intel96 -0x1.000002p-56 9223372036854775807LL : 0xa.1752e2758f62595p-188 : inexact-ok
+= compoundn upward intel96 -0x1.000002p-56 9223372036854775807LL : 0xa.1752e2758f62596p-188 : inexact-ok
+= compoundn downward m68k96 -0x1.000002p-56 9223372036854775807LL : 0xa.1752e2758f62595p-188 : inexact-ok
+= compoundn tonearest m68k96 -0x1.000002p-56 9223372036854775807LL : 0xa.1752e2758f62596p-188 : inexact-ok
+= compoundn towardzero m68k96 -0x1.000002p-56 9223372036854775807LL : 0xa.1752e2758f62595p-188 : inexact-ok
+= compoundn upward m68k96 -0x1.000002p-56 9223372036854775807LL : 0xa.1752e2758f62596p-188 : inexact-ok
+= compoundn downward binary128 -0x1.000002p-56 9223372036854775807LL : 0xa.1752e2758f62595c22df210ace9p-188 : inexact-ok
+= compoundn tonearest binary128 -0x1.000002p-56 9223372036854775807LL : 0xa.1752e2758f62595c22df210ace98p-188 : inexact-ok
+= compoundn towardzero binary128 -0x1.000002p-56 9223372036854775807LL : 0xa.1752e2758f62595c22df210ace9p-188 : inexact-ok
+= compoundn upward binary128 -0x1.000002p-56 9223372036854775807LL : 0xa.1752e2758f62595c22df210ace98p-188 : inexact-ok
+= compoundn downward ibm128 -0x1.000002p-56 9223372036854775807LL : 0xa.1752e2758f62595c22df210accp-188 : inexact-ok
+= compoundn tonearest ibm128 -0x1.000002p-56 9223372036854775807LL : 0xa.1752e2758f62595c22df210adp-188 : inexact-ok
+= compoundn towardzero ibm128 -0x1.000002p-56 9223372036854775807LL : 0xa.1752e2758f62595c22df210accp-188 : inexact-ok
+= compoundn upward ibm128 -0x1.000002p-56 9223372036854775807LL : 0xa.1752e2758f62595c22df210adp-188 : inexact-ok
+compoundn 0x1.000002p-56 -0x8000000000000000
+= compoundn downward binary32 0x1.000002p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 0x1.000002p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 0x1.000002p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 0x1.000002p-56 (-9223372036854775807LL-1) : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0x1.000002p-56 (-9223372036854775807LL-1) : 0xa.1752e2758f67p-188 : inexact-ok
+= compoundn tonearest binary64 0x1.000002p-56 (-9223372036854775807LL-1) : 0xa.1752e2758f678p-188 : inexact-ok
+= compoundn towardzero binary64 0x1.000002p-56 (-9223372036854775807LL-1) : 0xa.1752e2758f67p-188 : inexact-ok
+= compoundn upward binary64 0x1.000002p-56 (-9223372036854775807LL-1) : 0xa.1752e2758f678p-188 : inexact-ok
+= compoundn downward intel96 0x1.000002p-56 (-9223372036854775807LL-1) : 0xa.1752e2758f675aep-188 : inexact-ok
+= compoundn tonearest intel96 0x1.000002p-56 (-9223372036854775807LL-1) : 0xa.1752e2758f675afp-188 : inexact-ok
+= compoundn towardzero intel96 0x1.000002p-56 (-9223372036854775807LL-1) : 0xa.1752e2758f675aep-188 : inexact-ok
+= compoundn upward intel96 0x1.000002p-56 (-9223372036854775807LL-1) : 0xa.1752e2758f675afp-188 : inexact-ok
+= compoundn downward m68k96 0x1.000002p-56 (-9223372036854775807LL-1) : 0xa.1752e2758f675aep-188 : inexact-ok
+= compoundn tonearest m68k96 0x1.000002p-56 (-9223372036854775807LL-1) : 0xa.1752e2758f675afp-188 : inexact-ok
+= compoundn towardzero m68k96 0x1.000002p-56 (-9223372036854775807LL-1) : 0xa.1752e2758f675aep-188 : inexact-ok
+= compoundn upward m68k96 0x1.000002p-56 (-9223372036854775807LL-1) : 0xa.1752e2758f675afp-188 : inexact-ok
+= compoundn downward binary128 0x1.000002p-56 (-9223372036854775807LL-1) : 0xa.1752e2758f675aee5551ea612bap-188 : inexact-ok
+= compoundn tonearest binary128 0x1.000002p-56 (-9223372036854775807LL-1) : 0xa.1752e2758f675aee5551ea612bap-188 : inexact-ok
+= compoundn towardzero binary128 0x1.000002p-56 (-9223372036854775807LL-1) : 0xa.1752e2758f675aee5551ea612bap-188 : inexact-ok
+= compoundn upward binary128 0x1.000002p-56 (-9223372036854775807LL-1) : 0xa.1752e2758f675aee5551ea612ba8p-188 : inexact-ok
+= compoundn downward ibm128 0x1.000002p-56 (-9223372036854775807LL-1) : 0xa.1752e2758f675aee5551ea6128p-188 : inexact-ok
+= compoundn tonearest ibm128 0x1.000002p-56 (-9223372036854775807LL-1) : 0xa.1752e2758f675aee5551ea612cp-188 : inexact-ok
+= compoundn towardzero ibm128 0x1.000002p-56 (-9223372036854775807LL-1) : 0xa.1752e2758f675aee5551ea6128p-188 : inexact-ok
+= compoundn upward ibm128 0x1.000002p-56 (-9223372036854775807LL-1) : 0xa.1752e2758f675aee5551ea612cp-188 : inexact-ok
+compoundn -0x1.000002p-56 -0x8000000000000000
+= compoundn downward binary32 -0x1.000002p-56 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 -0x1.000002p-56 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 -0x1.000002p-56 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 -0x1.000002p-56 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 -0x1.000002p-56 (-9223372036854775807LL-1) : 0x1.95e6e243eb729p+184 : inexact-ok
+= compoundn tonearest binary64 -0x1.000002p-56 (-9223372036854775807LL-1) : 0x1.95e6e243eb72ap+184 : inexact-ok
+= compoundn towardzero binary64 -0x1.000002p-56 (-9223372036854775807LL-1) : 0x1.95e6e243eb729p+184 : inexact-ok
+= compoundn upward binary64 -0x1.000002p-56 (-9223372036854775807LL-1) : 0x1.95e6e243eb72ap+184 : inexact-ok
+= compoundn downward intel96 -0x1.000002p-56 (-9223372036854775807LL-1) : 0x1.95e6e243eb729b64p+184 : inexact-ok
+= compoundn tonearest intel96 -0x1.000002p-56 (-9223372036854775807LL-1) : 0x1.95e6e243eb729b66p+184 : inexact-ok
+= compoundn towardzero intel96 -0x1.000002p-56 (-9223372036854775807LL-1) : 0x1.95e6e243eb729b64p+184 : inexact-ok
+= compoundn upward intel96 -0x1.000002p-56 (-9223372036854775807LL-1) : 0x1.95e6e243eb729b66p+184 : inexact-ok
+= compoundn downward m68k96 -0x1.000002p-56 (-9223372036854775807LL-1) : 0x1.95e6e243eb729b64p+184 : inexact-ok
+= compoundn tonearest m68k96 -0x1.000002p-56 (-9223372036854775807LL-1) : 0x1.95e6e243eb729b66p+184 : inexact-ok
+= compoundn towardzero m68k96 -0x1.000002p-56 (-9223372036854775807LL-1) : 0x1.95e6e243eb729b64p+184 : inexact-ok
+= compoundn upward m68k96 -0x1.000002p-56 (-9223372036854775807LL-1) : 0x1.95e6e243eb729b66p+184 : inexact-ok
+= compoundn downward binary128 -0x1.000002p-56 (-9223372036854775807LL-1) : 0x1.95e6e243eb729b65a3c8b90daba3p+184 : inexact-ok
+= compoundn tonearest binary128 -0x1.000002p-56 (-9223372036854775807LL-1) : 0x1.95e6e243eb729b65a3c8b90daba3p+184 : inexact-ok
+= compoundn towardzero binary128 -0x1.000002p-56 (-9223372036854775807LL-1) : 0x1.95e6e243eb729b65a3c8b90daba3p+184 : inexact-ok
+= compoundn upward binary128 -0x1.000002p-56 (-9223372036854775807LL-1) : 0x1.95e6e243eb729b65a3c8b90daba4p+184 : inexact-ok
+= compoundn downward ibm128 -0x1.000002p-56 (-9223372036854775807LL-1) : 0x1.95e6e243eb729b65a3c8b90dab8p+184 : inexact-ok
+= compoundn tonearest ibm128 -0x1.000002p-56 (-9223372036854775807LL-1) : 0x1.95e6e243eb729b65a3c8b90dab8p+184 : inexact-ok
+= compoundn towardzero ibm128 -0x1.000002p-56 (-9223372036854775807LL-1) : 0x1.95e6e243eb729b65a3c8b90dab8p+184 : inexact-ok
+= compoundn upward ibm128 -0x1.000002p-56 (-9223372036854775807LL-1) : 0x1.95e6e243eb729b65a3c8b90dacp+184 : inexact-ok
+compoundn 0x1p-55 0x7fffffffffffffff
+= compoundn downward binary32 0x2p-56 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 0x2p-56 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 0x2p-56 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 0x2p-56 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 0x2p-56 9223372036854775807LL : 0x2.838f510297d4ap+368 : inexact-ok
+= compoundn tonearest binary64 0x2p-56 9223372036854775807LL : 0x2.838f510297d4cp+368 : inexact-ok
+= compoundn towardzero binary64 0x2p-56 9223372036854775807LL : 0x2.838f510297d4ap+368 : inexact-ok
+= compoundn upward binary64 0x2p-56 9223372036854775807LL : 0x2.838f510297d4cp+368 : inexact-ok
+= compoundn downward intel96 0x2p-56 9223372036854775807LL : 0x2.838f510297d4b92cp+368 : inexact-ok
+= compoundn tonearest intel96 0x2p-56 9223372036854775807LL : 0x2.838f510297d4b93p+368 : inexact-ok
+= compoundn towardzero intel96 0x2p-56 9223372036854775807LL : 0x2.838f510297d4b92cp+368 : inexact-ok
+= compoundn upward intel96 0x2p-56 9223372036854775807LL : 0x2.838f510297d4b93p+368 : inexact-ok
+= compoundn downward m68k96 0x2p-56 9223372036854775807LL : 0x2.838f510297d4b92cp+368 : inexact-ok
+= compoundn tonearest m68k96 0x2p-56 9223372036854775807LL : 0x2.838f510297d4b93p+368 : inexact-ok
+= compoundn towardzero m68k96 0x2p-56 9223372036854775807LL : 0x2.838f510297d4b92cp+368 : inexact-ok
+= compoundn upward m68k96 0x2p-56 9223372036854775807LL : 0x2.838f510297d4b93p+368 : inexact-ok
+= compoundn downward binary128 0x2p-56 9223372036854775807LL : 0x2.838f510297d4b92fd6bb81e95534p+368 : inexact-ok
+= compoundn tonearest binary128 0x2p-56 9223372036854775807LL : 0x2.838f510297d4b92fd6bb81e95536p+368 : inexact-ok
+= compoundn towardzero binary128 0x2p-56 9223372036854775807LL : 0x2.838f510297d4b92fd6bb81e95534p+368 : inexact-ok
+= compoundn upward binary128 0x2p-56 9223372036854775807LL : 0x2.838f510297d4b92fd6bb81e95536p+368 : inexact-ok
+= compoundn downward ibm128 0x2p-56 9223372036854775807LL : 0x2.838f510297d4b92fd6bb81e955p+368 : inexact-ok
+= compoundn tonearest ibm128 0x2p-56 9223372036854775807LL : 0x2.838f510297d4b92fd6bb81e955p+368 : inexact-ok
+= compoundn towardzero ibm128 0x2p-56 9223372036854775807LL : 0x2.838f510297d4b92fd6bb81e955p+368 : inexact-ok
+= compoundn upward ibm128 0x2p-56 9223372036854775807LL : 0x2.838f510297d4b92fd6bb81e956p+368 : inexact-ok
+compoundn -0x1p-55 0x7fffffffffffffff
+= compoundn downward binary32 -0x2p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 -0x2p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 -0x2p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 -0x2p-56 9223372036854775807LL : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 -0x2p-56 9223372036854775807LL : 0x6.5d5655ab53a08p-372 : inexact-ok
+= compoundn tonearest binary64 -0x2p-56 9223372036854775807LL : 0x6.5d5655ab53a0cp-372 : inexact-ok
+= compoundn towardzero binary64 -0x2p-56 9223372036854775807LL : 0x6.5d5655ab53a08p-372 : inexact-ok
+= compoundn upward binary64 -0x2p-56 9223372036854775807LL : 0x6.5d5655ab53a0cp-372 : inexact-ok
+= compoundn downward intel96 -0x2p-56 9223372036854775807LL : 0x6.5d5655ab53a0ae48p-372 : inexact-ok
+= compoundn tonearest intel96 -0x2p-56 9223372036854775807LL : 0x6.5d5655ab53a0ae48p-372 : inexact-ok
+= compoundn towardzero intel96 -0x2p-56 9223372036854775807LL : 0x6.5d5655ab53a0ae48p-372 : inexact-ok
+= compoundn upward intel96 -0x2p-56 9223372036854775807LL : 0x6.5d5655ab53a0ae5p-372 : inexact-ok
+= compoundn downward m68k96 -0x2p-56 9223372036854775807LL : 0x6.5d5655ab53a0ae48p-372 : inexact-ok
+= compoundn tonearest m68k96 -0x2p-56 9223372036854775807LL : 0x6.5d5655ab53a0ae48p-372 : inexact-ok
+= compoundn towardzero m68k96 -0x2p-56 9223372036854775807LL : 0x6.5d5655ab53a0ae48p-372 : inexact-ok
+= compoundn upward m68k96 -0x2p-56 9223372036854775807LL : 0x6.5d5655ab53a0ae5p-372 : inexact-ok
+= compoundn downward binary128 -0x2p-56 9223372036854775807LL : 0x6.5d5655ab53a0ae4b5be8a1bc98cp-372 : inexact-ok
+= compoundn tonearest binary128 -0x2p-56 9223372036854775807LL : 0x6.5d5655ab53a0ae4b5be8a1bc98c4p-372 : inexact-ok
+= compoundn towardzero binary128 -0x2p-56 9223372036854775807LL : 0x6.5d5655ab53a0ae4b5be8a1bc98cp-372 : inexact-ok
+= compoundn upward binary128 -0x2p-56 9223372036854775807LL : 0x6.5d5655ab53a0ae4b5be8a1bc98c4p-372 : inexact-ok
+= compoundn downward ibm128 -0x2p-56 9223372036854775807LL : 0x6.5d5655ab53a0ae4b5be8a1bc98p-372 : inexact-ok
+= compoundn tonearest ibm128 -0x2p-56 9223372036854775807LL : 0x6.5d5655ab53a0ae4b5be8a1bc98p-372 : inexact-ok
+= compoundn towardzero ibm128 -0x2p-56 9223372036854775807LL : 0x6.5d5655ab53a0ae4b5be8a1bc98p-372 : inexact-ok
+= compoundn upward ibm128 -0x2p-56 9223372036854775807LL : 0x6.5d5655ab53a0ae4b5be8a1bc9ap-372 : inexact-ok
+compoundn 0x1p-55 -0x8000000000000000
+= compoundn downward binary32 0x2p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 0x2p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 0x2p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 0x2p-56 (-9223372036854775807LL-1) : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0x2p-56 (-9223372036854775807LL-1) : 0x6.5d5655ab53ad4p-372 : inexact-ok
+= compoundn tonearest binary64 0x2p-56 (-9223372036854775807LL-1) : 0x6.5d5655ab53ad4p-372 : inexact-ok
+= compoundn towardzero binary64 0x2p-56 (-9223372036854775807LL-1) : 0x6.5d5655ab53ad4p-372 : inexact-ok
+= compoundn upward binary64 0x2p-56 (-9223372036854775807LL-1) : 0x6.5d5655ab53ad8p-372 : inexact-ok
+= compoundn downward intel96 0x2p-56 (-9223372036854775807LL-1) : 0x6.5d5655ab53ad5c38p-372 : inexact-ok
+= compoundn tonearest intel96 0x2p-56 (-9223372036854775807LL-1) : 0x6.5d5655ab53ad5c4p-372 : inexact-ok
+= compoundn towardzero intel96 0x2p-56 (-9223372036854775807LL-1) : 0x6.5d5655ab53ad5c38p-372 : inexact-ok
+= compoundn upward intel96 0x2p-56 (-9223372036854775807LL-1) : 0x6.5d5655ab53ad5c4p-372 : inexact-ok
+= compoundn downward m68k96 0x2p-56 (-9223372036854775807LL-1) : 0x6.5d5655ab53ad5c38p-372 : inexact-ok
+= compoundn tonearest m68k96 0x2p-56 (-9223372036854775807LL-1) : 0x6.5d5655ab53ad5c4p-372 : inexact-ok
+= compoundn towardzero m68k96 0x2p-56 (-9223372036854775807LL-1) : 0x6.5d5655ab53ad5c38p-372 : inexact-ok
+= compoundn upward m68k96 0x2p-56 (-9223372036854775807LL-1) : 0x6.5d5655ab53ad5c4p-372 : inexact-ok
+= compoundn downward binary128 0x2p-56 (-9223372036854775807LL-1) : 0x6.5d5655ab53ad5c3d5a93f2635534p-372 : inexact-ok
+= compoundn tonearest binary128 0x2p-56 (-9223372036854775807LL-1) : 0x6.5d5655ab53ad5c3d5a93f2635534p-372 : inexact-ok
+= compoundn towardzero binary128 0x2p-56 (-9223372036854775807LL-1) : 0x6.5d5655ab53ad5c3d5a93f2635534p-372 : inexact-ok
+= compoundn upward binary128 0x2p-56 (-9223372036854775807LL-1) : 0x6.5d5655ab53ad5c3d5a93f2635538p-372 : inexact-ok
+= compoundn downward ibm128 0x2p-56 (-9223372036854775807LL-1) : 0x6.5d5655ab53ad5c3d5a93f26354p-372 : inexact-ok
+= compoundn tonearest ibm128 0x2p-56 (-9223372036854775807LL-1) : 0x6.5d5655ab53ad5c3d5a93f26356p-372 : inexact-ok
+= compoundn towardzero ibm128 0x2p-56 (-9223372036854775807LL-1) : 0x6.5d5655ab53ad5c3d5a93f26354p-372 : inexact-ok
+= compoundn upward ibm128 0x2p-56 (-9223372036854775807LL-1) : 0x6.5d5655ab53ad5c3d5a93f26356p-372 : inexact-ok
+compoundn -0x1p-55 -0x8000000000000000
+= compoundn downward binary32 -0x2p-56 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 -0x2p-56 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 -0x2p-56 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 -0x2p-56 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 -0x2p-56 (-9223372036854775807LL-1) : 0x2.838f510297d9cp+368 : inexact-ok
+= compoundn tonearest binary64 -0x2p-56 (-9223372036854775807LL-1) : 0x2.838f510297d9cp+368 : inexact-ok
+= compoundn towardzero binary64 -0x2p-56 (-9223372036854775807LL-1) : 0x2.838f510297d9cp+368 : inexact-ok
+= compoundn upward binary64 -0x2p-56 (-9223372036854775807LL-1) : 0x2.838f510297d9ep+368 : inexact-ok
+= compoundn downward intel96 -0x2p-56 (-9223372036854775807LL-1) : 0x2.838f510297d9c554p+368 : inexact-ok
+= compoundn tonearest intel96 -0x2p-56 (-9223372036854775807LL-1) : 0x2.838f510297d9c554p+368 : inexact-ok
+= compoundn towardzero intel96 -0x2p-56 (-9223372036854775807LL-1) : 0x2.838f510297d9c554p+368 : inexact-ok
+= compoundn upward intel96 -0x2p-56 (-9223372036854775807LL-1) : 0x2.838f510297d9c558p+368 : inexact-ok
+= compoundn downward m68k96 -0x2p-56 (-9223372036854775807LL-1) : 0x2.838f510297d9c554p+368 : inexact-ok
+= compoundn tonearest m68k96 -0x2p-56 (-9223372036854775807LL-1) : 0x2.838f510297d9c554p+368 : inexact-ok
+= compoundn towardzero m68k96 -0x2p-56 (-9223372036854775807LL-1) : 0x2.838f510297d9c554p+368 : inexact-ok
+= compoundn upward m68k96 -0x2p-56 (-9223372036854775807LL-1) : 0x2.838f510297d9c558p+368 : inexact-ok
+= compoundn downward binary128 -0x2p-56 (-9223372036854775807LL-1) : 0x2.838f510297d9c5559762b6c78234p+368 : inexact-ok
+= compoundn tonearest binary128 -0x2p-56 (-9223372036854775807LL-1) : 0x2.838f510297d9c5559762b6c78234p+368 : inexact-ok
+= compoundn towardzero binary128 -0x2p-56 (-9223372036854775807LL-1) : 0x2.838f510297d9c5559762b6c78234p+368 : inexact-ok
+= compoundn upward binary128 -0x2p-56 (-9223372036854775807LL-1) : 0x2.838f510297d9c5559762b6c78236p+368 : inexact-ok
+= compoundn downward ibm128 -0x2p-56 (-9223372036854775807LL-1) : 0x2.838f510297d9c5559762b6c782p+368 : inexact-ok
+= compoundn tonearest ibm128 -0x2p-56 (-9223372036854775807LL-1) : 0x2.838f510297d9c5559762b6c782p+368 : inexact-ok
+= compoundn towardzero ibm128 -0x2p-56 (-9223372036854775807LL-1) : 0x2.838f510297d9c5559762b6c782p+368 : inexact-ok
+= compoundn upward ibm128 -0x2p-56 (-9223372036854775807LL-1) : 0x2.838f510297d9c5559762b6c783p+368 : inexact-ok
+compoundn 0x1.000002p-55 0x7fffffffffffffff
+= compoundn downward binary32 0x2.000004p-56 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 0x2.000004p-56 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 0x2.000004p-56 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 0x2.000004p-56 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 0x2.000004p-56 9223372036854775807LL : 0x2.8394582640fbep+368 : inexact-ok
+= compoundn tonearest binary64 0x2.000004p-56 9223372036854775807LL : 0x2.8394582640fbep+368 : inexact-ok
+= compoundn towardzero binary64 0x2.000004p-56 9223372036854775807LL : 0x2.8394582640fbep+368 : inexact-ok
+= compoundn upward binary64 0x2.000004p-56 9223372036854775807LL : 0x2.8394582640fcp+368 : inexact-ok
+= compoundn downward intel96 0x2.000004p-56 9223372036854775807LL : 0x2.8394582640fbe4f4p+368 : inexact-ok
+= compoundn tonearest intel96 0x2.000004p-56 9223372036854775807LL : 0x2.8394582640fbe4f4p+368 : inexact-ok
+= compoundn towardzero intel96 0x2.000004p-56 9223372036854775807LL : 0x2.8394582640fbe4f4p+368 : inexact-ok
+= compoundn upward intel96 0x2.000004p-56 9223372036854775807LL : 0x2.8394582640fbe4f8p+368 : inexact-ok
+= compoundn downward m68k96 0x2.000004p-56 9223372036854775807LL : 0x2.8394582640fbe4f4p+368 : inexact-ok
+= compoundn tonearest m68k96 0x2.000004p-56 9223372036854775807LL : 0x2.8394582640fbe4f4p+368 : inexact-ok
+= compoundn towardzero m68k96 0x2.000004p-56 9223372036854775807LL : 0x2.8394582640fbe4f4p+368 : inexact-ok
+= compoundn upward m68k96 0x2.000004p-56 9223372036854775807LL : 0x2.8394582640fbe4f8p+368 : inexact-ok
+= compoundn downward binary128 0x2.000004p-56 9223372036854775807LL : 0x2.8394582640fbe4f487ba98bf431cp+368 : inexact-ok
+= compoundn tonearest binary128 0x2.000004p-56 9223372036854775807LL : 0x2.8394582640fbe4f487ba98bf431cp+368 : inexact-ok
+= compoundn towardzero binary128 0x2.000004p-56 9223372036854775807LL : 0x2.8394582640fbe4f487ba98bf431cp+368 : inexact-ok
+= compoundn upward binary128 0x2.000004p-56 9223372036854775807LL : 0x2.8394582640fbe4f487ba98bf431ep+368 : inexact-ok
+= compoundn downward ibm128 0x2.000004p-56 9223372036854775807LL : 0x2.8394582640fbe4f487ba98bf43p+368 : inexact-ok
+= compoundn tonearest ibm128 0x2.000004p-56 9223372036854775807LL : 0x2.8394582640fbe4f487ba98bf43p+368 : inexact-ok
+= compoundn towardzero ibm128 0x2.000004p-56 9223372036854775807LL : 0x2.8394582640fbe4f487ba98bf43p+368 : inexact-ok
+= compoundn upward ibm128 0x2.000004p-56 9223372036854775807LL : 0x2.8394582640fbe4f487ba98bf44p+368 : inexact-ok
+compoundn -0x1.000002p-55 0x7fffffffffffffff
+= compoundn downward binary32 -0x2.000004p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 -0x2.000004p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 -0x2.000004p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 -0x2.000004p-56 9223372036854775807LL : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 -0x2.000004p-56 9223372036854775807LL : 0x6.5d499b0b62eep-372 : inexact-ok
+= compoundn tonearest binary64 -0x2.000004p-56 9223372036854775807LL : 0x6.5d499b0b62ee4p-372 : inexact-ok
+= compoundn towardzero binary64 -0x2.000004p-56 9223372036854775807LL : 0x6.5d499b0b62eep-372 : inexact-ok
+= compoundn upward binary64 -0x2.000004p-56 9223372036854775807LL : 0x6.5d499b0b62ee4p-372 : inexact-ok
+= compoundn downward intel96 -0x2.000004p-56 9223372036854775807LL : 0x6.5d499b0b62ee35fp-372 : inexact-ok
+= compoundn tonearest intel96 -0x2.000004p-56 9223372036854775807LL : 0x6.5d499b0b62ee35fp-372 : inexact-ok
+= compoundn towardzero intel96 -0x2.000004p-56 9223372036854775807LL : 0x6.5d499b0b62ee35fp-372 : inexact-ok
+= compoundn upward intel96 -0x2.000004p-56 9223372036854775807LL : 0x6.5d499b0b62ee35f8p-372 : inexact-ok
+= compoundn downward m68k96 -0x2.000004p-56 9223372036854775807LL : 0x6.5d499b0b62ee35fp-372 : inexact-ok
+= compoundn tonearest m68k96 -0x2.000004p-56 9223372036854775807LL : 0x6.5d499b0b62ee35fp-372 : inexact-ok
+= compoundn towardzero m68k96 -0x2.000004p-56 9223372036854775807LL : 0x6.5d499b0b62ee35fp-372 : inexact-ok
+= compoundn upward m68k96 -0x2.000004p-56 9223372036854775807LL : 0x6.5d499b0b62ee35f8p-372 : inexact-ok
+= compoundn downward binary128 -0x2.000004p-56 9223372036854775807LL : 0x6.5d499b0b62ee35f1ae8b01974a98p-372 : inexact-ok
+= compoundn tonearest binary128 -0x2.000004p-56 9223372036854775807LL : 0x6.5d499b0b62ee35f1ae8b01974a9cp-372 : inexact-ok
+= compoundn towardzero binary128 -0x2.000004p-56 9223372036854775807LL : 0x6.5d499b0b62ee35f1ae8b01974a98p-372 : inexact-ok
+= compoundn upward binary128 -0x2.000004p-56 9223372036854775807LL : 0x6.5d499b0b62ee35f1ae8b01974a9cp-372 : inexact-ok
+= compoundn downward ibm128 -0x2.000004p-56 9223372036854775807LL : 0x6.5d499b0b62ee35f1ae8b01974ap-372 : inexact-ok
+= compoundn tonearest ibm128 -0x2.000004p-56 9223372036854775807LL : 0x6.5d499b0b62ee35f1ae8b01974ap-372 : inexact-ok
+= compoundn towardzero ibm128 -0x2.000004p-56 9223372036854775807LL : 0x6.5d499b0b62ee35f1ae8b01974ap-372 : inexact-ok
+= compoundn upward ibm128 -0x2.000004p-56 9223372036854775807LL : 0x6.5d499b0b62ee35f1ae8b01974cp-372 : inexact-ok
+compoundn 0x1.000002p-55 -0x8000000000000000
+= compoundn downward binary32 0x2.000004p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 0x2.000004p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 0x2.000004p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 0x2.000004p-56 (-9223372036854775807LL-1) : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0x2.000004p-56 (-9223372036854775807LL-1) : 0x6.5d499b0b62facp-372 : inexact-ok
+= compoundn tonearest binary64 0x2.000004p-56 (-9223372036854775807LL-1) : 0x6.5d499b0b62fbp-372 : inexact-ok
+= compoundn towardzero binary64 0x2.000004p-56 (-9223372036854775807LL-1) : 0x6.5d499b0b62facp-372 : inexact-ok
+= compoundn upward binary64 0x2.000004p-56 (-9223372036854775807LL-1) : 0x6.5d499b0b62fbp-372 : inexact-ok
+= compoundn downward intel96 0x2.000004p-56 (-9223372036854775807LL-1) : 0x6.5d499b0b62fae3c8p-372 : inexact-ok
+= compoundn tonearest intel96 0x2.000004p-56 (-9223372036854775807LL-1) : 0x6.5d499b0b62fae3c8p-372 : inexact-ok
+= compoundn towardzero intel96 0x2.000004p-56 (-9223372036854775807LL-1) : 0x6.5d499b0b62fae3c8p-372 : inexact-ok
+= compoundn upward intel96 0x2.000004p-56 (-9223372036854775807LL-1) : 0x6.5d499b0b62fae3dp-372 : inexact-ok
+= compoundn downward m68k96 0x2.000004p-56 (-9223372036854775807LL-1) : 0x6.5d499b0b62fae3c8p-372 : inexact-ok
+= compoundn tonearest m68k96 0x2.000004p-56 (-9223372036854775807LL-1) : 0x6.5d499b0b62fae3c8p-372 : inexact-ok
+= compoundn towardzero m68k96 0x2.000004p-56 (-9223372036854775807LL-1) : 0x6.5d499b0b62fae3c8p-372 : inexact-ok
+= compoundn upward m68k96 0x2.000004p-56 (-9223372036854775807LL-1) : 0x6.5d499b0b62fae3dp-372 : inexact-ok
+= compoundn downward binary128 0x2.000004p-56 (-9223372036854775807LL-1) : 0x6.5d499b0b62fae3ca843c889f5464p-372 : inexact-ok
+= compoundn tonearest binary128 0x2.000004p-56 (-9223372036854775807LL-1) : 0x6.5d499b0b62fae3ca843c889f5468p-372 : inexact-ok
+= compoundn towardzero binary128 0x2.000004p-56 (-9223372036854775807LL-1) : 0x6.5d499b0b62fae3ca843c889f5464p-372 : inexact-ok
+= compoundn upward binary128 0x2.000004p-56 (-9223372036854775807LL-1) : 0x6.5d499b0b62fae3ca843c889f5468p-372 : inexact-ok
+= compoundn downward ibm128 0x2.000004p-56 (-9223372036854775807LL-1) : 0x6.5d499b0b62fae3ca843c889f54p-372 : inexact-ok
+= compoundn tonearest ibm128 0x2.000004p-56 (-9223372036854775807LL-1) : 0x6.5d499b0b62fae3ca843c889f54p-372 : inexact-ok
+= compoundn towardzero ibm128 0x2.000004p-56 (-9223372036854775807LL-1) : 0x6.5d499b0b62fae3ca843c889f54p-372 : inexact-ok
+= compoundn upward ibm128 0x2.000004p-56 (-9223372036854775807LL-1) : 0x6.5d499b0b62fae3ca843c889f56p-372 : inexact-ok
+compoundn -0x1.000002p-55 -0x8000000000000000
+= compoundn downward binary32 -0x2.000004p-56 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 -0x2.000004p-56 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 -0x2.000004p-56 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 -0x2.000004p-56 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 -0x2.000004p-56 (-9223372036854775807LL-1) : 0x2.839458264100ep+368 : inexact-ok
+= compoundn tonearest binary64 -0x2.000004p-56 (-9223372036854775807LL-1) : 0x2.839458264101p+368 : inexact-ok
+= compoundn towardzero binary64 -0x2.000004p-56 (-9223372036854775807LL-1) : 0x2.839458264100ep+368 : inexact-ok
+= compoundn upward binary64 -0x2.000004p-56 (-9223372036854775807LL-1) : 0x2.839458264101p+368 : inexact-ok
+= compoundn downward intel96 -0x2.000004p-56 (-9223372036854775807LL-1) : 0x2.839458264100f124p+368 : inexact-ok
+= compoundn tonearest intel96 -0x2.000004p-56 (-9223372036854775807LL-1) : 0x2.839458264100f124p+368 : inexact-ok
+= compoundn towardzero intel96 -0x2.000004p-56 (-9223372036854775807LL-1) : 0x2.839458264100f124p+368 : inexact-ok
+= compoundn upward intel96 -0x2.000004p-56 (-9223372036854775807LL-1) : 0x2.839458264100f128p+368 : inexact-ok
+= compoundn downward m68k96 -0x2.000004p-56 (-9223372036854775807LL-1) : 0x2.839458264100f124p+368 : inexact-ok
+= compoundn tonearest m68k96 -0x2.000004p-56 (-9223372036854775807LL-1) : 0x2.839458264100f124p+368 : inexact-ok
+= compoundn towardzero m68k96 -0x2.000004p-56 (-9223372036854775807LL-1) : 0x2.839458264100f124p+368 : inexact-ok
+= compoundn upward m68k96 -0x2.000004p-56 (-9223372036854775807LL-1) : 0x2.839458264100f128p+368 : inexact-ok
+= compoundn downward binary128 -0x2.000004p-56 (-9223372036854775807LL-1) : 0x2.839458264100f12474de1864c54ap+368 : inexact-ok
+= compoundn tonearest binary128 -0x2.000004p-56 (-9223372036854775807LL-1) : 0x2.839458264100f12474de1864c54ap+368 : inexact-ok
+= compoundn towardzero binary128 -0x2.000004p-56 (-9223372036854775807LL-1) : 0x2.839458264100f12474de1864c54ap+368 : inexact-ok
+= compoundn upward binary128 -0x2.000004p-56 (-9223372036854775807LL-1) : 0x2.839458264100f12474de1864c54cp+368 : inexact-ok
+= compoundn downward ibm128 -0x2.000004p-56 (-9223372036854775807LL-1) : 0x2.839458264100f12474de1864c5p+368 : inexact-ok
+= compoundn tonearest ibm128 -0x2.000004p-56 (-9223372036854775807LL-1) : 0x2.839458264100f12474de1864c5p+368 : inexact-ok
+= compoundn towardzero ibm128 -0x2.000004p-56 (-9223372036854775807LL-1) : 0x2.839458264100f12474de1864c5p+368 : inexact-ok
+= compoundn upward ibm128 -0x2.000004p-56 (-9223372036854775807LL-1) : 0x2.839458264100f12474de1864c6p+368 : inexact-ok
+compoundn 0x1p-54 0x7fffffffffffffff
+= compoundn downward binary32 0x4p-56 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 0x4p-56 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 0x4p-56 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 0x4p-56 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 0x4p-56 9223372036854775807LL : 0x6.51d9412ea132p+736 : inexact-ok
+= compoundn tonearest binary64 0x4p-56 9223372036854775807LL : 0x6.51d9412ea1324p+736 : inexact-ok
+= compoundn towardzero binary64 0x4p-56 9223372036854775807LL : 0x6.51d9412ea132p+736 : inexact-ok
+= compoundn upward binary64 0x4p-56 9223372036854775807LL : 0x6.51d9412ea1324p+736 : inexact-ok
+= compoundn downward intel96 0x4p-56 9223372036854775807LL : 0x6.51d9412ea1323a5p+736 : inexact-ok
+= compoundn tonearest intel96 0x4p-56 9223372036854775807LL : 0x6.51d9412ea1323a58p+736 : inexact-ok
+= compoundn towardzero intel96 0x4p-56 9223372036854775807LL : 0x6.51d9412ea1323a5p+736 : inexact-ok
+= compoundn upward intel96 0x4p-56 9223372036854775807LL : 0x6.51d9412ea1323a58p+736 : inexact-ok
+= compoundn downward m68k96 0x4p-56 9223372036854775807LL : 0x6.51d9412ea1323a5p+736 : inexact-ok
+= compoundn tonearest m68k96 0x4p-56 9223372036854775807LL : 0x6.51d9412ea1323a58p+736 : inexact-ok
+= compoundn towardzero m68k96 0x4p-56 9223372036854775807LL : 0x6.51d9412ea1323a5p+736 : inexact-ok
+= compoundn upward m68k96 0x4p-56 9223372036854775807LL : 0x6.51d9412ea1323a58p+736 : inexact-ok
+= compoundn downward binary128 0x4p-56 9223372036854775807LL : 0x6.51d9412ea1323a5608565f800ea8p+736 : inexact-ok
+= compoundn tonearest binary128 0x4p-56 9223372036854775807LL : 0x6.51d9412ea1323a5608565f800ea8p+736 : inexact-ok
+= compoundn towardzero binary128 0x4p-56 9223372036854775807LL : 0x6.51d9412ea1323a5608565f800ea8p+736 : inexact-ok
+= compoundn upward binary128 0x4p-56 9223372036854775807LL : 0x6.51d9412ea1323a5608565f800eacp+736 : inexact-ok
+= compoundn downward ibm128 0x4p-56 9223372036854775807LL : 0x6.51d9412ea1323a5608565f800ep+736 : inexact-ok
+= compoundn tonearest ibm128 0x4p-56 9223372036854775807LL : 0x6.51d9412ea1323a5608565f800ep+736 : inexact-ok
+= compoundn towardzero ibm128 0x4p-56 9223372036854775807LL : 0x6.51d9412ea1323a5608565f800ep+736 : inexact-ok
+= compoundn upward ibm128 0x4p-56 9223372036854775807LL : 0x6.51d9412ea1323a5608565f801p+736 : inexact-ok
+compoundn -0x1p-54 0x7fffffffffffffff
+= compoundn downward binary32 -0x4p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 -0x4p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 -0x4p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 -0x4p-56 9223372036854775807LL : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 -0x4p-56 9223372036854775807LL : 0x2.88213db6411cp-740 : inexact-ok
+= compoundn tonearest binary64 -0x4p-56 9223372036854775807LL : 0x2.88213db6411c2p-740 : inexact-ok
+= compoundn towardzero binary64 -0x4p-56 9223372036854775807LL : 0x2.88213db6411cp-740 : inexact-ok
+= compoundn upward binary64 -0x4p-56 9223372036854775807LL : 0x2.88213db6411c2p-740 : inexact-ok
+= compoundn downward intel96 -0x4p-56 9223372036854775807LL : 0x2.88213db6411c14ep-740 : inexact-ok
+= compoundn tonearest intel96 -0x4p-56 9223372036854775807LL : 0x2.88213db6411c14e4p-740 : inexact-ok
+= compoundn towardzero intel96 -0x4p-56 9223372036854775807LL : 0x2.88213db6411c14ep-740 : inexact-ok
+= compoundn upward intel96 -0x4p-56 9223372036854775807LL : 0x2.88213db6411c14e4p-740 : inexact-ok
+= compoundn downward m68k96 -0x4p-56 9223372036854775807LL : 0x2.88213db6411c14ep-740 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-56 9223372036854775807LL : 0x2.88213db6411c14e4p-740 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-56 9223372036854775807LL : 0x2.88213db6411c14ep-740 : inexact-ok
+= compoundn upward m68k96 -0x4p-56 9223372036854775807LL : 0x2.88213db6411c14e4p-740 : inexact-ok
+= compoundn downward binary128 -0x4p-56 9223372036854775807LL : 0x2.88213db6411c14e29fb40b0666dap-740 : inexact-ok
+= compoundn tonearest binary128 -0x4p-56 9223372036854775807LL : 0x2.88213db6411c14e29fb40b0666dap-740 : inexact-ok
+= compoundn towardzero binary128 -0x4p-56 9223372036854775807LL : 0x2.88213db6411c14e29fb40b0666dap-740 : inexact-ok
+= compoundn upward binary128 -0x4p-56 9223372036854775807LL : 0x2.88213db6411c14e29fb40b0666dcp-740 : inexact-ok
+= compoundn downward ibm128 -0x4p-56 9223372036854775807LL : 0x2.88213db6411c14e29fb40b0666p-740 : inexact-ok
+= compoundn tonearest ibm128 -0x4p-56 9223372036854775807LL : 0x2.88213db6411c14e29fb40b0667p-740 : inexact-ok
+= compoundn towardzero ibm128 -0x4p-56 9223372036854775807LL : 0x2.88213db6411c14e29fb40b0666p-740 : inexact-ok
+= compoundn upward ibm128 -0x4p-56 9223372036854775807LL : 0x2.88213db6411c14e29fb40b0667p-740 : inexact-ok
+compoundn 0x1p-54 -0x8000000000000000
+= compoundn downward binary32 0x4p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 0x4p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 0x4p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 0x4p-56 (-9223372036854775807LL-1) : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0x4p-56 (-9223372036854775807LL-1) : 0x2.88213db641304p-740 : inexact-ok
+= compoundn tonearest binary64 0x4p-56 (-9223372036854775807LL-1) : 0x2.88213db641304p-740 : inexact-ok
+= compoundn towardzero binary64 0x4p-56 (-9223372036854775807LL-1) : 0x2.88213db641304p-740 : inexact-ok
+= compoundn upward binary64 0x4p-56 (-9223372036854775807LL-1) : 0x2.88213db641306p-740 : inexact-ok
+= compoundn downward intel96 0x4p-56 (-9223372036854775807LL-1) : 0x2.88213db641304bccp-740 : inexact-ok
+= compoundn tonearest intel96 0x4p-56 (-9223372036854775807LL-1) : 0x2.88213db641304bccp-740 : inexact-ok
+= compoundn towardzero intel96 0x4p-56 (-9223372036854775807LL-1) : 0x2.88213db641304bccp-740 : inexact-ok
+= compoundn upward intel96 0x4p-56 (-9223372036854775807LL-1) : 0x2.88213db641304bdp-740 : inexact-ok
+= compoundn downward m68k96 0x4p-56 (-9223372036854775807LL-1) : 0x2.88213db641304bccp-740 : inexact-ok
+= compoundn tonearest m68k96 0x4p-56 (-9223372036854775807LL-1) : 0x2.88213db641304bccp-740 : inexact-ok
+= compoundn towardzero m68k96 0x4p-56 (-9223372036854775807LL-1) : 0x2.88213db641304bccp-740 : inexact-ok
+= compoundn upward m68k96 0x4p-56 (-9223372036854775807LL-1) : 0x2.88213db641304bdp-740 : inexact-ok
+= compoundn downward binary128 0x4p-56 (-9223372036854775807LL-1) : 0x2.88213db641304bcc086f3b3350bep-740 : inexact-ok
+= compoundn tonearest binary128 0x4p-56 (-9223372036854775807LL-1) : 0x2.88213db641304bcc086f3b3350cp-740 : inexact-ok
+= compoundn towardzero binary128 0x4p-56 (-9223372036854775807LL-1) : 0x2.88213db641304bcc086f3b3350bep-740 : inexact-ok
+= compoundn upward binary128 0x4p-56 (-9223372036854775807LL-1) : 0x2.88213db641304bcc086f3b3350cp-740 : inexact-ok
+= compoundn downward ibm128 0x4p-56 (-9223372036854775807LL-1) : 0x2.88213db641304bcc086f3b335p-740 : inexact-ok
+= compoundn tonearest ibm128 0x4p-56 (-9223372036854775807LL-1) : 0x2.88213db641304bcc086f3b3351p-740 : inexact-ok
+= compoundn towardzero ibm128 0x4p-56 (-9223372036854775807LL-1) : 0x2.88213db641304bcc086f3b335p-740 : inexact-ok
+= compoundn upward ibm128 0x4p-56 (-9223372036854775807LL-1) : 0x2.88213db641304bcc086f3b3351p-740 : inexact-ok
+compoundn -0x1p-54 -0x8000000000000000
+= compoundn downward binary32 -0x4p-56 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 -0x4p-56 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 -0x4p-56 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 -0x4p-56 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 -0x4p-56 (-9223372036854775807LL-1) : 0x6.51d9412ea164cp+736 : inexact-ok
+= compoundn tonearest binary64 -0x4p-56 (-9223372036854775807LL-1) : 0x6.51d9412ea165p+736 : inexact-ok
+= compoundn towardzero binary64 -0x4p-56 (-9223372036854775807LL-1) : 0x6.51d9412ea164cp+736 : inexact-ok
+= compoundn upward binary64 -0x4p-56 (-9223372036854775807LL-1) : 0x6.51d9412ea165p+736 : inexact-ok
+= compoundn downward intel96 -0x4p-56 (-9223372036854775807LL-1) : 0x6.51d9412ea164e26p+736 : inexact-ok
+= compoundn tonearest intel96 -0x4p-56 (-9223372036854775807LL-1) : 0x6.51d9412ea164e268p+736 : inexact-ok
+= compoundn towardzero intel96 -0x4p-56 (-9223372036854775807LL-1) : 0x6.51d9412ea164e26p+736 : inexact-ok
+= compoundn upward intel96 -0x4p-56 (-9223372036854775807LL-1) : 0x6.51d9412ea164e268p+736 : inexact-ok
+= compoundn downward m68k96 -0x4p-56 (-9223372036854775807LL-1) : 0x6.51d9412ea164e26p+736 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-56 (-9223372036854775807LL-1) : 0x6.51d9412ea164e268p+736 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-56 (-9223372036854775807LL-1) : 0x6.51d9412ea164e26p+736 : inexact-ok
+= compoundn upward m68k96 -0x4p-56 (-9223372036854775807LL-1) : 0x6.51d9412ea164e268p+736 : inexact-ok
+= compoundn downward binary128 -0x4p-56 (-9223372036854775807LL-1) : 0x6.51d9412ea164e26776d02461afa4p+736 : inexact-ok
+= compoundn tonearest binary128 -0x4p-56 (-9223372036854775807LL-1) : 0x6.51d9412ea164e26776d02461afa8p+736 : inexact-ok
+= compoundn towardzero binary128 -0x4p-56 (-9223372036854775807LL-1) : 0x6.51d9412ea164e26776d02461afa4p+736 : inexact-ok
+= compoundn upward binary128 -0x4p-56 (-9223372036854775807LL-1) : 0x6.51d9412ea164e26776d02461afa8p+736 : inexact-ok
+= compoundn downward ibm128 -0x4p-56 (-9223372036854775807LL-1) : 0x6.51d9412ea164e26776d02461aep+736 : inexact-ok
+= compoundn tonearest ibm128 -0x4p-56 (-9223372036854775807LL-1) : 0x6.51d9412ea164e26776d02461bp+736 : inexact-ok
+= compoundn towardzero ibm128 -0x4p-56 (-9223372036854775807LL-1) : 0x6.51d9412ea164e26776d02461aep+736 : inexact-ok
+= compoundn upward ibm128 -0x4p-56 (-9223372036854775807LL-1) : 0x6.51d9412ea164e26776d02461bp+736 : inexact-ok
+compoundn 0x1.000002p-54 0x7fffffffffffffff
+= compoundn downward binary32 0x4.000008p-56 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 0x4.000008p-56 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 0x4.000008p-56 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 0x4.000008p-56 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 0x4.000008p-56 9223372036854775807LL : 0x6.51f288c634fap+736 : inexact-ok
+= compoundn tonearest binary64 0x4.000008p-56 9223372036854775807LL : 0x6.51f288c634fa4p+736 : inexact-ok
+= compoundn towardzero binary64 0x4.000008p-56 9223372036854775807LL : 0x6.51f288c634fap+736 : inexact-ok
+= compoundn upward binary64 0x4.000008p-56 9223372036854775807LL : 0x6.51f288c634fa4p+736 : inexact-ok
+= compoundn downward intel96 0x4.000008p-56 9223372036854775807LL : 0x6.51f288c634fa31ep+736 : inexact-ok
+= compoundn tonearest intel96 0x4.000008p-56 9223372036854775807LL : 0x6.51f288c634fa31e8p+736 : inexact-ok
+= compoundn towardzero intel96 0x4.000008p-56 9223372036854775807LL : 0x6.51f288c634fa31ep+736 : inexact-ok
+= compoundn upward intel96 0x4.000008p-56 9223372036854775807LL : 0x6.51f288c634fa31e8p+736 : inexact-ok
+= compoundn downward m68k96 0x4.000008p-56 9223372036854775807LL : 0x6.51f288c634fa31ep+736 : inexact-ok
+= compoundn tonearest m68k96 0x4.000008p-56 9223372036854775807LL : 0x6.51f288c634fa31e8p+736 : inexact-ok
+= compoundn towardzero m68k96 0x4.000008p-56 9223372036854775807LL : 0x6.51f288c634fa31ep+736 : inexact-ok
+= compoundn upward m68k96 0x4.000008p-56 9223372036854775807LL : 0x6.51f288c634fa31e8p+736 : inexact-ok
+= compoundn downward binary128 0x4.000008p-56 9223372036854775807LL : 0x6.51f288c634fa31e461234cd56e9p+736 : inexact-ok
+= compoundn tonearest binary128 0x4.000008p-56 9223372036854775807LL : 0x6.51f288c634fa31e461234cd56e94p+736 : inexact-ok
+= compoundn towardzero binary128 0x4.000008p-56 9223372036854775807LL : 0x6.51f288c634fa31e461234cd56e9p+736 : inexact-ok
+= compoundn upward binary128 0x4.000008p-56 9223372036854775807LL : 0x6.51f288c634fa31e461234cd56e94p+736 : inexact-ok
+= compoundn downward ibm128 0x4.000008p-56 9223372036854775807LL : 0x6.51f288c634fa31e461234cd56ep+736 : inexact-ok
+= compoundn tonearest ibm128 0x4.000008p-56 9223372036854775807LL : 0x6.51f288c634fa31e461234cd56ep+736 : inexact-ok
+= compoundn towardzero ibm128 0x4.000008p-56 9223372036854775807LL : 0x6.51f288c634fa31e461234cd56ep+736 : inexact-ok
+= compoundn upward ibm128 0x4.000008p-56 9223372036854775807LL : 0x6.51f288c634fa31e461234cd57p+736 : inexact-ok
+compoundn -0x1.000002p-54 0x7fffffffffffffff
+= compoundn downward binary32 -0x4.000008p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 -0x4.000008p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 -0x4.000008p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 -0x4.000008p-56 9223372036854775807LL : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 -0x4.000008p-56 9223372036854775807LL : 0x2.88171d458b31ep-740 : inexact-ok
+= compoundn tonearest binary64 -0x4.000008p-56 9223372036854775807LL : 0x2.88171d458b32p-740 : inexact-ok
+= compoundn towardzero binary64 -0x4.000008p-56 9223372036854775807LL : 0x2.88171d458b31ep-740 : inexact-ok
+= compoundn upward binary64 -0x4.000008p-56 9223372036854775807LL : 0x2.88171d458b32p-740 : inexact-ok
+= compoundn downward intel96 -0x4.000008p-56 9223372036854775807LL : 0x2.88171d458b31fcdcp-740 : inexact-ok
+= compoundn tonearest intel96 -0x4.000008p-56 9223372036854775807LL : 0x2.88171d458b31fcdcp-740 : inexact-ok
+= compoundn towardzero intel96 -0x4.000008p-56 9223372036854775807LL : 0x2.88171d458b31fcdcp-740 : inexact-ok
+= compoundn upward intel96 -0x4.000008p-56 9223372036854775807LL : 0x2.88171d458b31fcep-740 : inexact-ok
+= compoundn downward m68k96 -0x4.000008p-56 9223372036854775807LL : 0x2.88171d458b31fcdcp-740 : inexact-ok
+= compoundn tonearest m68k96 -0x4.000008p-56 9223372036854775807LL : 0x2.88171d458b31fcdcp-740 : inexact-ok
+= compoundn towardzero m68k96 -0x4.000008p-56 9223372036854775807LL : 0x2.88171d458b31fcdcp-740 : inexact-ok
+= compoundn upward m68k96 -0x4.000008p-56 9223372036854775807LL : 0x2.88171d458b31fcep-740 : inexact-ok
+= compoundn downward binary128 -0x4.000008p-56 9223372036854775807LL : 0x2.88171d458b31fcdc9ba74322456ep-740 : inexact-ok
+= compoundn tonearest binary128 -0x4.000008p-56 9223372036854775807LL : 0x2.88171d458b31fcdc9ba74322456ep-740 : inexact-ok
+= compoundn towardzero binary128 -0x4.000008p-56 9223372036854775807LL : 0x2.88171d458b31fcdc9ba74322456ep-740 : inexact-ok
+= compoundn upward binary128 -0x4.000008p-56 9223372036854775807LL : 0x2.88171d458b31fcdc9ba74322457p-740 : inexact-ok
+= compoundn downward ibm128 -0x4.000008p-56 9223372036854775807LL : 0x2.88171d458b31fcdc9ba7432245p-740 : inexact-ok
+= compoundn tonearest ibm128 -0x4.000008p-56 9223372036854775807LL : 0x2.88171d458b31fcdc9ba7432245p-740 : inexact-ok
+= compoundn towardzero ibm128 -0x4.000008p-56 9223372036854775807LL : 0x2.88171d458b31fcdc9ba7432245p-740 : inexact-ok
+= compoundn upward ibm128 -0x4.000008p-56 9223372036854775807LL : 0x2.88171d458b31fcdc9ba7432246p-740 : inexact-ok
+compoundn 0x1.000002p-54 -0x8000000000000000
+= compoundn downward binary32 0x4.000008p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 0x4.000008p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 0x4.000008p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 0x4.000008p-56 (-9223372036854775807LL-1) : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0x4.000008p-56 (-9223372036854775807LL-1) : 0x2.88171d458b462p-740 : inexact-ok
+= compoundn tonearest binary64 0x4.000008p-56 (-9223372036854775807LL-1) : 0x2.88171d458b464p-740 : inexact-ok
+= compoundn towardzero binary64 0x4.000008p-56 (-9223372036854775807LL-1) : 0x2.88171d458b462p-740 : inexact-ok
+= compoundn upward binary64 0x4.000008p-56 (-9223372036854775807LL-1) : 0x2.88171d458b464p-740 : inexact-ok
+= compoundn downward intel96 0x4.000008p-56 (-9223372036854775807LL-1) : 0x2.88171d458b463374p-740 : inexact-ok
+= compoundn tonearest intel96 0x4.000008p-56 (-9223372036854775807LL-1) : 0x2.88171d458b463374p-740 : inexact-ok
+= compoundn towardzero intel96 0x4.000008p-56 (-9223372036854775807LL-1) : 0x2.88171d458b463374p-740 : inexact-ok
+= compoundn upward intel96 0x4.000008p-56 (-9223372036854775807LL-1) : 0x2.88171d458b463378p-740 : inexact-ok
+= compoundn downward m68k96 0x4.000008p-56 (-9223372036854775807LL-1) : 0x2.88171d458b463374p-740 : inexact-ok
+= compoundn tonearest m68k96 0x4.000008p-56 (-9223372036854775807LL-1) : 0x2.88171d458b463374p-740 : inexact-ok
+= compoundn towardzero m68k96 0x4.000008p-56 (-9223372036854775807LL-1) : 0x2.88171d458b463374p-740 : inexact-ok
+= compoundn upward m68k96 0x4.000008p-56 (-9223372036854775807LL-1) : 0x2.88171d458b463378p-740 : inexact-ok
+= compoundn downward binary128 0x4.000008p-56 (-9223372036854775807LL-1) : 0x2.88171d458b4633757a4d2a16e06p-740 : inexact-ok
+= compoundn tonearest binary128 0x4.000008p-56 (-9223372036854775807LL-1) : 0x2.88171d458b4633757a4d2a16e06p-740 : inexact-ok
+= compoundn towardzero binary128 0x4.000008p-56 (-9223372036854775807LL-1) : 0x2.88171d458b4633757a4d2a16e06p-740 : inexact-ok
+= compoundn upward binary128 0x4.000008p-56 (-9223372036854775807LL-1) : 0x2.88171d458b4633757a4d2a16e062p-740 : inexact-ok
+= compoundn downward ibm128 0x4.000008p-56 (-9223372036854775807LL-1) : 0x2.88171d458b4633757a4d2a16ep-740 : inexact-ok
+= compoundn tonearest ibm128 0x4.000008p-56 (-9223372036854775807LL-1) : 0x2.88171d458b4633757a4d2a16ep-740 : inexact-ok
+= compoundn towardzero ibm128 0x4.000008p-56 (-9223372036854775807LL-1) : 0x2.88171d458b4633757a4d2a16ep-740 : inexact-ok
+= compoundn upward ibm128 0x4.000008p-56 (-9223372036854775807LL-1) : 0x2.88171d458b4633757a4d2a16e1p-740 : inexact-ok
+compoundn -0x1.000002p-54 -0x8000000000000000
+= compoundn downward binary32 -0x4.000008p-56 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 -0x4.000008p-56 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 -0x4.000008p-56 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 -0x4.000008p-56 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 -0x4.000008p-56 (-9223372036854775807LL-1) : 0x6.51f288c6352ccp+736 : inexact-ok
+= compoundn tonearest binary64 -0x4.000008p-56 (-9223372036854775807LL-1) : 0x6.51f288c6352ccp+736 : inexact-ok
+= compoundn towardzero binary64 -0x4.000008p-56 (-9223372036854775807LL-1) : 0x6.51f288c6352ccp+736 : inexact-ok
+= compoundn upward binary64 -0x4.000008p-56 (-9223372036854775807LL-1) : 0x6.51f288c6352dp+736 : inexact-ok
+= compoundn downward intel96 -0x4.000008p-56 (-9223372036854775807LL-1) : 0x6.51f288c6352cdacp+736 : inexact-ok
+= compoundn tonearest intel96 -0x4.000008p-56 (-9223372036854775807LL-1) : 0x6.51f288c6352cdacp+736 : inexact-ok
+= compoundn towardzero intel96 -0x4.000008p-56 (-9223372036854775807LL-1) : 0x6.51f288c6352cdacp+736 : inexact-ok
+= compoundn upward intel96 -0x4.000008p-56 (-9223372036854775807LL-1) : 0x6.51f288c6352cdac8p+736 : inexact-ok
+= compoundn downward m68k96 -0x4.000008p-56 (-9223372036854775807LL-1) : 0x6.51f288c6352cdacp+736 : inexact-ok
+= compoundn tonearest m68k96 -0x4.000008p-56 (-9223372036854775807LL-1) : 0x6.51f288c6352cdacp+736 : inexact-ok
+= compoundn towardzero m68k96 -0x4.000008p-56 (-9223372036854775807LL-1) : 0x6.51f288c6352cdacp+736 : inexact-ok
+= compoundn upward m68k96 -0x4.000008p-56 (-9223372036854775807LL-1) : 0x6.51f288c6352cdac8p+736 : inexact-ok
+= compoundn downward binary128 -0x4.000008p-56 (-9223372036854775807LL-1) : 0x6.51f288c6352cdac13be8efbd3a34p+736 : inexact-ok
+= compoundn tonearest binary128 -0x4.000008p-56 (-9223372036854775807LL-1) : 0x6.51f288c6352cdac13be8efbd3a34p+736 : inexact-ok
+= compoundn towardzero binary128 -0x4.000008p-56 (-9223372036854775807LL-1) : 0x6.51f288c6352cdac13be8efbd3a34p+736 : inexact-ok
+= compoundn upward binary128 -0x4.000008p-56 (-9223372036854775807LL-1) : 0x6.51f288c6352cdac13be8efbd3a38p+736 : inexact-ok
+= compoundn downward ibm128 -0x4.000008p-56 (-9223372036854775807LL-1) : 0x6.51f288c6352cdac13be8efbd3ap+736 : inexact-ok
+= compoundn tonearest ibm128 -0x4.000008p-56 (-9223372036854775807LL-1) : 0x6.51f288c6352cdac13be8efbd3ap+736 : inexact-ok
+= compoundn towardzero ibm128 -0x4.000008p-56 (-9223372036854775807LL-1) : 0x6.51f288c6352cdac13be8efbd3ap+736 : inexact-ok
+= compoundn upward ibm128 -0x4.000008p-56 (-9223372036854775807LL-1) : 0x6.51f288c6352cdac13be8efbd3cp+736 : inexact-ok
+compoundn 0x1p-53 0x7fffffffffffffff
+= compoundn downward binary32 0x8p-56 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 0x8p-56 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 0x8p-56 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 0x8p-56 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 0x8p-56 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 0x8p-56 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 0x8p-56 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 0x8p-56 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 0x8p-56 9223372036854775807LL : 0x2.7f05a41cea0c2ff8p+1476 : inexact-ok
+= compoundn tonearest intel96 0x8p-56 9223372036854775807LL : 0x2.7f05a41cea0c2ffcp+1476 : inexact-ok
+= compoundn towardzero intel96 0x8p-56 9223372036854775807LL : 0x2.7f05a41cea0c2ff8p+1476 : inexact-ok
+= compoundn upward intel96 0x8p-56 9223372036854775807LL : 0x2.7f05a41cea0c2ffcp+1476 : inexact-ok
+= compoundn downward m68k96 0x8p-56 9223372036854775807LL : 0x2.7f05a41cea0c2ff8p+1476 : inexact-ok
+= compoundn tonearest m68k96 0x8p-56 9223372036854775807LL : 0x2.7f05a41cea0c2ffcp+1476 : inexact-ok
+= compoundn towardzero m68k96 0x8p-56 9223372036854775807LL : 0x2.7f05a41cea0c2ff8p+1476 : inexact-ok
+= compoundn upward m68k96 0x8p-56 9223372036854775807LL : 0x2.7f05a41cea0c2ffcp+1476 : inexact-ok
+= compoundn downward binary128 0x8p-56 9223372036854775807LL : 0x2.7f05a41cea0c2ffa181e518337f8p+1476 : inexact-ok
+= compoundn tonearest binary128 0x8p-56 9223372036854775807LL : 0x2.7f05a41cea0c2ffa181e518337f8p+1476 : inexact-ok
+= compoundn towardzero binary128 0x8p-56 9223372036854775807LL : 0x2.7f05a41cea0c2ffa181e518337f8p+1476 : inexact-ok
+= compoundn upward binary128 0x8p-56 9223372036854775807LL : 0x2.7f05a41cea0c2ffa181e518337fap+1476 : inexact-ok
+= compoundn downward ibm128 0x8p-56 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0x8p-56 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0x8p-56 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0x8p-56 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+compoundn -0x1p-53 0x7fffffffffffffff
+= compoundn downward binary32 -0x8p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 -0x8p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 -0x8p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 -0x8p-56 9223372036854775807LL : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 -0x8p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 -0x8p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 -0x8p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 -0x8p-56 9223372036854775807LL : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 -0x8p-56 9223372036854775807LL : 0x6.68e84cbba1480878p-1480 : inexact-ok
+= compoundn tonearest intel96 -0x8p-56 9223372036854775807LL : 0x6.68e84cbba148088p-1480 : inexact-ok
+= compoundn towardzero intel96 -0x8p-56 9223372036854775807LL : 0x6.68e84cbba1480878p-1480 : inexact-ok
+= compoundn upward intel96 -0x8p-56 9223372036854775807LL : 0x6.68e84cbba148088p-1480 : inexact-ok
+= compoundn downward m68k96 -0x8p-56 9223372036854775807LL : 0x6.68e84cbba1480878p-1480 : inexact-ok
+= compoundn tonearest m68k96 -0x8p-56 9223372036854775807LL : 0x6.68e84cbba148088p-1480 : inexact-ok
+= compoundn towardzero m68k96 -0x8p-56 9223372036854775807LL : 0x6.68e84cbba1480878p-1480 : inexact-ok
+= compoundn upward m68k96 -0x8p-56 9223372036854775807LL : 0x6.68e84cbba148088p-1480 : inexact-ok
+= compoundn downward binary128 -0x8p-56 9223372036854775807LL : 0x6.68e84cbba148087e4b809132cf28p-1480 : inexact-ok
+= compoundn tonearest binary128 -0x8p-56 9223372036854775807LL : 0x6.68e84cbba148087e4b809132cf28p-1480 : inexact-ok
+= compoundn towardzero binary128 -0x8p-56 9223372036854775807LL : 0x6.68e84cbba148087e4b809132cf28p-1480 : inexact-ok
+= compoundn upward binary128 -0x8p-56 9223372036854775807LL : 0x6.68e84cbba148087e4b809132cf2cp-1480 : inexact-ok
+= compoundn downward ibm128 -0x8p-56 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 -0x8p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 -0x8p-56 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 -0x8p-56 9223372036854775807LL : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+compoundn 0x1p-53 -0x8000000000000000
+= compoundn downward binary32 0x8p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 0x8p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 0x8p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 0x8p-56 (-9223372036854775807LL-1) : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0x8p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 0x8p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 0x8p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 0x8p-56 (-9223372036854775807LL-1) : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0x8p-56 (-9223372036854775807LL-1) : 0x6.68e84cbba214f24p-1480 : inexact-ok
+= compoundn tonearest intel96 0x8p-56 (-9223372036854775807LL-1) : 0x6.68e84cbba214f24p-1480 : inexact-ok
+= compoundn towardzero intel96 0x8p-56 (-9223372036854775807LL-1) : 0x6.68e84cbba214f24p-1480 : inexact-ok
+= compoundn upward intel96 0x8p-56 (-9223372036854775807LL-1) : 0x6.68e84cbba214f248p-1480 : inexact-ok
+= compoundn downward m68k96 0x8p-56 (-9223372036854775807LL-1) : 0x6.68e84cbba214f24p-1480 : inexact-ok
+= compoundn tonearest m68k96 0x8p-56 (-9223372036854775807LL-1) : 0x6.68e84cbba214f24p-1480 : inexact-ok
+= compoundn towardzero m68k96 0x8p-56 (-9223372036854775807LL-1) : 0x6.68e84cbba214f24p-1480 : inexact-ok
+= compoundn upward m68k96 0x8p-56 (-9223372036854775807LL-1) : 0x6.68e84cbba214f248p-1480 : inexact-ok
+= compoundn downward binary128 0x8p-56 (-9223372036854775807LL-1) : 0x6.68e84cbba214f240a08ee9f5065cp-1480 : inexact-ok
+= compoundn tonearest binary128 0x8p-56 (-9223372036854775807LL-1) : 0x6.68e84cbba214f240a08ee9f5066p-1480 : inexact-ok
+= compoundn towardzero binary128 0x8p-56 (-9223372036854775807LL-1) : 0x6.68e84cbba214f240a08ee9f5065cp-1480 : inexact-ok
+= compoundn upward binary128 0x8p-56 (-9223372036854775807LL-1) : 0x6.68e84cbba214f240a08ee9f5066p-1480 : inexact-ok
+= compoundn downward ibm128 0x8p-56 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0x8p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0x8p-56 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0x8p-56 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+compoundn -0x1p-53 -0x8000000000000000
+= compoundn downward binary32 -0x8p-56 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 -0x8p-56 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 -0x8p-56 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 -0x8p-56 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 -0x8p-56 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 -0x8p-56 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 -0x8p-56 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 -0x8p-56 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 -0x8p-56 (-9223372036854775807LL-1) : 0x2.7f05a41cea5c24a4p+1476 : inexact-ok
+= compoundn tonearest intel96 -0x8p-56 (-9223372036854775807LL-1) : 0x2.7f05a41cea5c24a8p+1476 : inexact-ok
+= compoundn towardzero intel96 -0x8p-56 (-9223372036854775807LL-1) : 0x2.7f05a41cea5c24a4p+1476 : inexact-ok
+= compoundn upward intel96 -0x8p-56 (-9223372036854775807LL-1) : 0x2.7f05a41cea5c24a8p+1476 : inexact-ok
+= compoundn downward m68k96 -0x8p-56 (-9223372036854775807LL-1) : 0x2.7f05a41cea5c24a4p+1476 : inexact-ok
+= compoundn tonearest m68k96 -0x8p-56 (-9223372036854775807LL-1) : 0x2.7f05a41cea5c24a8p+1476 : inexact-ok
+= compoundn towardzero m68k96 -0x8p-56 (-9223372036854775807LL-1) : 0x2.7f05a41cea5c24a4p+1476 : inexact-ok
+= compoundn upward m68k96 -0x8p-56 (-9223372036854775807LL-1) : 0x2.7f05a41cea5c24a8p+1476 : inexact-ok
+= compoundn downward binary128 -0x8p-56 (-9223372036854775807LL-1) : 0x2.7f05a41cea5c24a6c8dc7f5a2308p+1476 : inexact-ok
+= compoundn tonearest binary128 -0x8p-56 (-9223372036854775807LL-1) : 0x2.7f05a41cea5c24a6c8dc7f5a2308p+1476 : inexact-ok
+= compoundn towardzero binary128 -0x8p-56 (-9223372036854775807LL-1) : 0x2.7f05a41cea5c24a6c8dc7f5a2308p+1476 : inexact-ok
+= compoundn upward binary128 -0x8p-56 (-9223372036854775807LL-1) : 0x2.7f05a41cea5c24a6c8dc7f5a230ap+1476 : inexact-ok
+= compoundn downward ibm128 -0x8p-56 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 -0x8p-56 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 -0x8p-56 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 -0x8p-56 (-9223372036854775807LL-1) : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+compoundn 0x1.000002p-53 0x7fffffffffffffff
+= compoundn downward binary32 0x8.00001p-56 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 0x8.00001p-56 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 0x8.00001p-56 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 0x8.00001p-56 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 0x8.00001p-56 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 0x8.00001p-56 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 0x8.00001p-56 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 0x8.00001p-56 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 0x8.00001p-56 9223372036854775807LL : 0x2.7f199c99ec7d078p+1476 : inexact-ok
+= compoundn tonearest intel96 0x8.00001p-56 9223372036854775807LL : 0x2.7f199c99ec7d0784p+1476 : inexact-ok
+= compoundn towardzero intel96 0x8.00001p-56 9223372036854775807LL : 0x2.7f199c99ec7d078p+1476 : inexact-ok
+= compoundn upward intel96 0x8.00001p-56 9223372036854775807LL : 0x2.7f199c99ec7d0784p+1476 : inexact-ok
+= compoundn downward m68k96 0x8.00001p-56 9223372036854775807LL : 0x2.7f199c99ec7d078p+1476 : inexact-ok
+= compoundn tonearest m68k96 0x8.00001p-56 9223372036854775807LL : 0x2.7f199c99ec7d0784p+1476 : inexact-ok
+= compoundn towardzero m68k96 0x8.00001p-56 9223372036854775807LL : 0x2.7f199c99ec7d078p+1476 : inexact-ok
+= compoundn upward m68k96 0x8.00001p-56 9223372036854775807LL : 0x2.7f199c99ec7d0784p+1476 : inexact-ok
+= compoundn downward binary128 0x8.00001p-56 9223372036854775807LL : 0x2.7f199c99ec7d07839eebc82f9874p+1476 : inexact-ok
+= compoundn tonearest binary128 0x8.00001p-56 9223372036854775807LL : 0x2.7f199c99ec7d07839eebc82f9876p+1476 : inexact-ok
+= compoundn towardzero binary128 0x8.00001p-56 9223372036854775807LL : 0x2.7f199c99ec7d07839eebc82f9874p+1476 : inexact-ok
+= compoundn upward binary128 0x8.00001p-56 9223372036854775807LL : 0x2.7f199c99ec7d07839eebc82f9876p+1476 : inexact-ok
+= compoundn downward ibm128 0x8.00001p-56 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0x8.00001p-56 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0x8.00001p-56 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0x8.00001p-56 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+compoundn -0x1.000002p-53 0x7fffffffffffffff
+= compoundn downward binary32 -0x8.00001p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 -0x8.00001p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 -0x8.00001p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 -0x8.00001p-56 9223372036854775807LL : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 -0x8.00001p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 -0x8.00001p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 -0x8.00001p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 -0x8.00001p-56 9223372036854775807LL : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 -0x8.00001p-56 9223372036854775807LL : 0x6.68b506465651a1d8p-1480 : inexact-ok
+= compoundn tonearest intel96 -0x8.00001p-56 9223372036854775807LL : 0x6.68b506465651a1ep-1480 : inexact-ok
+= compoundn towardzero intel96 -0x8.00001p-56 9223372036854775807LL : 0x6.68b506465651a1d8p-1480 : inexact-ok
+= compoundn upward intel96 -0x8.00001p-56 9223372036854775807LL : 0x6.68b506465651a1ep-1480 : inexact-ok
+= compoundn downward m68k96 -0x8.00001p-56 9223372036854775807LL : 0x6.68b506465651a1d8p-1480 : inexact-ok
+= compoundn tonearest m68k96 -0x8.00001p-56 9223372036854775807LL : 0x6.68b506465651a1ep-1480 : inexact-ok
+= compoundn towardzero m68k96 -0x8.00001p-56 9223372036854775807LL : 0x6.68b506465651a1d8p-1480 : inexact-ok
+= compoundn upward m68k96 -0x8.00001p-56 9223372036854775807LL : 0x6.68b506465651a1ep-1480 : inexact-ok
+= compoundn downward binary128 -0x8.00001p-56 9223372036854775807LL : 0x6.68b506465651a1dcec4503841384p-1480 : inexact-ok
+= compoundn tonearest binary128 -0x8.00001p-56 9223372036854775807LL : 0x6.68b506465651a1dcec4503841388p-1480 : inexact-ok
+= compoundn towardzero binary128 -0x8.00001p-56 9223372036854775807LL : 0x6.68b506465651a1dcec4503841384p-1480 : inexact-ok
+= compoundn upward binary128 -0x8.00001p-56 9223372036854775807LL : 0x6.68b506465651a1dcec4503841388p-1480 : inexact-ok
+= compoundn downward ibm128 -0x8.00001p-56 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 -0x8.00001p-56 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 -0x8.00001p-56 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 -0x8.00001p-56 9223372036854775807LL : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+compoundn 0x1.000002p-53 -0x8000000000000000
+= compoundn downward binary32 0x8.00001p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 0x8.00001p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 0x8.00001p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 0x8.00001p-56 (-9223372036854775807LL-1) : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0x8.00001p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 0x8.00001p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 0x8.00001p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 0x8.00001p-56 (-9223372036854775807LL-1) : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0x8.00001p-56 (-9223372036854775807LL-1) : 0x6.68b50646571e8538p-1480 : inexact-ok
+= compoundn tonearest intel96 0x8.00001p-56 (-9223372036854775807LL-1) : 0x6.68b50646571e8538p-1480 : inexact-ok
+= compoundn towardzero intel96 0x8.00001p-56 (-9223372036854775807LL-1) : 0x6.68b50646571e8538p-1480 : inexact-ok
+= compoundn upward intel96 0x8.00001p-56 (-9223372036854775807LL-1) : 0x6.68b50646571e854p-1480 : inexact-ok
+= compoundn downward m68k96 0x8.00001p-56 (-9223372036854775807LL-1) : 0x6.68b50646571e8538p-1480 : inexact-ok
+= compoundn tonearest m68k96 0x8.00001p-56 (-9223372036854775807LL-1) : 0x6.68b50646571e8538p-1480 : inexact-ok
+= compoundn towardzero m68k96 0x8.00001p-56 (-9223372036854775807LL-1) : 0x6.68b50646571e8538p-1480 : inexact-ok
+= compoundn upward m68k96 0x8.00001p-56 (-9223372036854775807LL-1) : 0x6.68b50646571e854p-1480 : inexact-ok
+= compoundn downward binary128 0x8.00001p-56 (-9223372036854775807LL-1) : 0x6.68b50646571e853b40d1a2d7e518p-1480 : inexact-ok
+= compoundn tonearest binary128 0x8.00001p-56 (-9223372036854775807LL-1) : 0x6.68b50646571e853b40d1a2d7e518p-1480 : inexact-ok
+= compoundn towardzero binary128 0x8.00001p-56 (-9223372036854775807LL-1) : 0x6.68b50646571e853b40d1a2d7e518p-1480 : inexact-ok
+= compoundn upward binary128 0x8.00001p-56 (-9223372036854775807LL-1) : 0x6.68b50646571e853b40d1a2d7e51cp-1480 : inexact-ok
+= compoundn downward ibm128 0x8.00001p-56 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0x8.00001p-56 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0x8.00001p-56 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0x8.00001p-56 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+compoundn -0x1.000002p-53 -0x8000000000000000
+= compoundn downward binary32 -0x8.00001p-56 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 -0x8.00001p-56 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 -0x8.00001p-56 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 -0x8.00001p-56 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 -0x8.00001p-56 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 -0x8.00001p-56 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 -0x8.00001p-56 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 -0x8.00001p-56 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 -0x8.00001p-56 (-9223372036854775807LL-1) : 0x2.7f199c99ecccfebp+1476 : inexact-ok
+= compoundn tonearest intel96 -0x8.00001p-56 (-9223372036854775807LL-1) : 0x2.7f199c99ecccfebp+1476 : inexact-ok
+= compoundn towardzero intel96 -0x8.00001p-56 (-9223372036854775807LL-1) : 0x2.7f199c99ecccfebp+1476 : inexact-ok
+= compoundn upward intel96 -0x8.00001p-56 (-9223372036854775807LL-1) : 0x2.7f199c99ecccfeb4p+1476 : inexact-ok
+= compoundn downward m68k96 -0x8.00001p-56 (-9223372036854775807LL-1) : 0x2.7f199c99ecccfebp+1476 : inexact-ok
+= compoundn tonearest m68k96 -0x8.00001p-56 (-9223372036854775807LL-1) : 0x2.7f199c99ecccfebp+1476 : inexact-ok
+= compoundn towardzero m68k96 -0x8.00001p-56 (-9223372036854775807LL-1) : 0x2.7f199c99ecccfebp+1476 : inexact-ok
+= compoundn upward m68k96 -0x8.00001p-56 (-9223372036854775807LL-1) : 0x2.7f199c99ecccfeb4p+1476 : inexact-ok
+= compoundn downward binary128 -0x8.00001p-56 (-9223372036854775807LL-1) : 0x2.7f199c99ecccfeb13ec2ed5b704ap+1476 : inexact-ok
+= compoundn tonearest binary128 -0x8.00001p-56 (-9223372036854775807LL-1) : 0x2.7f199c99ecccfeb13ec2ed5b704cp+1476 : inexact-ok
+= compoundn towardzero binary128 -0x8.00001p-56 (-9223372036854775807LL-1) : 0x2.7f199c99ecccfeb13ec2ed5b704ap+1476 : inexact-ok
+= compoundn upward binary128 -0x8.00001p-56 (-9223372036854775807LL-1) : 0x2.7f199c99ecccfeb13ec2ed5b704cp+1476 : inexact-ok
+= compoundn downward ibm128 -0x8.00001p-56 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 -0x8.00001p-56 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 -0x8.00001p-56 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 -0x8.00001p-56 (-9223372036854775807LL-1) : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+compoundn 0x1p-52 0x7fffffffffffffff
+= compoundn downward binary32 0x1p-52 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 0x1p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 0x1p-52 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 0x1p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 0x1p-52 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 0x1p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 0x1p-52 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 0x1p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 0x1p-52 9223372036854775807LL : 0x6.3b1d296829f7a778p+2952 : inexact-ok
+= compoundn tonearest intel96 0x1p-52 9223372036854775807LL : 0x6.3b1d296829f7a778p+2952 : inexact-ok
+= compoundn towardzero intel96 0x1p-52 9223372036854775807LL : 0x6.3b1d296829f7a778p+2952 : inexact-ok
+= compoundn upward intel96 0x1p-52 9223372036854775807LL : 0x6.3b1d296829f7a78p+2952 : inexact-ok
+= compoundn downward m68k96 0x1p-52 9223372036854775807LL : 0x6.3b1d296829f7a778p+2952 : inexact-ok
+= compoundn tonearest m68k96 0x1p-52 9223372036854775807LL : 0x6.3b1d296829f7a778p+2952 : inexact-ok
+= compoundn towardzero m68k96 0x1p-52 9223372036854775807LL : 0x6.3b1d296829f7a778p+2952 : inexact-ok
+= compoundn upward m68k96 0x1p-52 9223372036854775807LL : 0x6.3b1d296829f7a78p+2952 : inexact-ok
+= compoundn downward binary128 0x1p-52 9223372036854775807LL : 0x6.3b1d296829f7a77add4436a36a3cp+2952 : inexact-ok
+= compoundn tonearest binary128 0x1p-52 9223372036854775807LL : 0x6.3b1d296829f7a77add4436a36a3cp+2952 : inexact-ok
+= compoundn towardzero binary128 0x1p-52 9223372036854775807LL : 0x6.3b1d296829f7a77add4436a36a3cp+2952 : inexact-ok
+= compoundn upward binary128 0x1p-52 9223372036854775807LL : 0x6.3b1d296829f7a77add4436a36a4p+2952 : inexact-ok
+= compoundn downward ibm128 0x1p-52 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0x1p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0x1p-52 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0x1p-52 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+compoundn -0x1p-52 0x7fffffffffffffff
+= compoundn downward binary32 -0x1p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 -0x1p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 -0x1p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 -0x1p-52 9223372036854775807LL : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 -0x1p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 -0x1p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 -0x1p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 -0x1p-52 9223372036854775807LL : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 -0x1p-52 9223372036854775807LL : 0x2.915e129ef285c748p-2956 : inexact-ok
+= compoundn tonearest intel96 -0x1p-52 9223372036854775807LL : 0x2.915e129ef285c748p-2956 : inexact-ok
+= compoundn towardzero intel96 -0x1p-52 9223372036854775807LL : 0x2.915e129ef285c748p-2956 : inexact-ok
+= compoundn upward intel96 -0x1p-52 9223372036854775807LL : 0x2.915e129ef285c74cp-2956 : inexact-ok
+= compoundn downward m68k96 -0x1p-52 9223372036854775807LL : 0x2.915e129ef285c748p-2956 : inexact-ok
+= compoundn tonearest m68k96 -0x1p-52 9223372036854775807LL : 0x2.915e129ef285c748p-2956 : inexact-ok
+= compoundn towardzero m68k96 -0x1p-52 9223372036854775807LL : 0x2.915e129ef285c748p-2956 : inexact-ok
+= compoundn upward m68k96 -0x1p-52 9223372036854775807LL : 0x2.915e129ef285c74cp-2956 : inexact-ok
+= compoundn downward binary128 -0x1p-52 9223372036854775807LL : 0x2.915e129ef285c74841845d39ffc4p-2956 : inexact-ok
+= compoundn tonearest binary128 -0x1p-52 9223372036854775807LL : 0x2.915e129ef285c74841845d39ffc4p-2956 : inexact-ok
+= compoundn towardzero binary128 -0x1p-52 9223372036854775807LL : 0x2.915e129ef285c74841845d39ffc4p-2956 : inexact-ok
+= compoundn upward binary128 -0x1p-52 9223372036854775807LL : 0x2.915e129ef285c74841845d39ffc6p-2956 : inexact-ok
+= compoundn downward ibm128 -0x1p-52 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 -0x1p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 -0x1p-52 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 -0x1p-52 9223372036854775807LL : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+compoundn 0x1p-52 -0x8000000000000000
+= compoundn downward binary32 0x1p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 0x1p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 0x1p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 0x1p-52 (-9223372036854775807LL-1) : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0x1p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 0x1p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 0x1p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 0x1p-52 (-9223372036854775807LL-1) : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0x1p-52 (-9223372036854775807LL-1) : 0x2.915e129ef3ce4d38p-2956 : inexact-ok
+= compoundn tonearest intel96 0x1p-52 (-9223372036854775807LL-1) : 0x2.915e129ef3ce4d3cp-2956 : inexact-ok
+= compoundn towardzero intel96 0x1p-52 (-9223372036854775807LL-1) : 0x2.915e129ef3ce4d38p-2956 : inexact-ok
+= compoundn upward intel96 0x1p-52 (-9223372036854775807LL-1) : 0x2.915e129ef3ce4d3cp-2956 : inexact-ok
+= compoundn downward m68k96 0x1p-52 (-9223372036854775807LL-1) : 0x2.915e129ef3ce4d38p-2956 : inexact-ok
+= compoundn tonearest m68k96 0x1p-52 (-9223372036854775807LL-1) : 0x2.915e129ef3ce4d3cp-2956 : inexact-ok
+= compoundn towardzero m68k96 0x1p-52 (-9223372036854775807LL-1) : 0x2.915e129ef3ce4d38p-2956 : inexact-ok
+= compoundn upward m68k96 0x1p-52 (-9223372036854775807LL-1) : 0x2.915e129ef3ce4d3cp-2956 : inexact-ok
+= compoundn downward binary128 0x1p-52 (-9223372036854775807LL-1) : 0x2.915e129ef3ce4d3bafd4030c7ed4p-2956 : inexact-ok
+= compoundn tonearest binary128 0x1p-52 (-9223372036854775807LL-1) : 0x2.915e129ef3ce4d3bafd4030c7ed4p-2956 : inexact-ok
+= compoundn towardzero binary128 0x1p-52 (-9223372036854775807LL-1) : 0x2.915e129ef3ce4d3bafd4030c7ed4p-2956 : inexact-ok
+= compoundn upward binary128 0x1p-52 (-9223372036854775807LL-1) : 0x2.915e129ef3ce4d3bafd4030c7ed6p-2956 : inexact-ok
+= compoundn downward ibm128 0x1p-52 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0x1p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0x1p-52 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0x1p-52 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+compoundn -0x1p-52 -0x8000000000000000
+= compoundn downward binary32 -0x1p-52 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 -0x1p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 -0x1p-52 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 -0x1p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 -0x1p-52 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 -0x1p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 -0x1p-52 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 -0x1p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 -0x1p-52 (-9223372036854775807LL-1) : 0x6.3b1d29682d1599cp+2952 : inexact-ok
+= compoundn tonearest intel96 -0x1p-52 (-9223372036854775807LL-1) : 0x6.3b1d29682d1599cp+2952 : inexact-ok
+= compoundn towardzero intel96 -0x1p-52 (-9223372036854775807LL-1) : 0x6.3b1d29682d1599cp+2952 : inexact-ok
+= compoundn upward intel96 -0x1p-52 (-9223372036854775807LL-1) : 0x6.3b1d29682d1599c8p+2952 : inexact-ok
+= compoundn downward m68k96 -0x1p-52 (-9223372036854775807LL-1) : 0x6.3b1d29682d1599cp+2952 : inexact-ok
+= compoundn tonearest m68k96 -0x1p-52 (-9223372036854775807LL-1) : 0x6.3b1d29682d1599cp+2952 : inexact-ok
+= compoundn towardzero m68k96 -0x1p-52 (-9223372036854775807LL-1) : 0x6.3b1d29682d1599cp+2952 : inexact-ok
+= compoundn upward m68k96 -0x1p-52 (-9223372036854775807LL-1) : 0x6.3b1d29682d1599c8p+2952 : inexact-ok
+= compoundn downward binary128 -0x1p-52 (-9223372036854775807LL-1) : 0x6.3b1d29682d1599c163f07cac2038p+2952 : inexact-ok
+= compoundn tonearest binary128 -0x1p-52 (-9223372036854775807LL-1) : 0x6.3b1d29682d1599c163f07cac2038p+2952 : inexact-ok
+= compoundn towardzero binary128 -0x1p-52 (-9223372036854775807LL-1) : 0x6.3b1d29682d1599c163f07cac2038p+2952 : inexact-ok
+= compoundn upward binary128 -0x1p-52 (-9223372036854775807LL-1) : 0x6.3b1d29682d1599c163f07cac203cp+2952 : inexact-ok
+= compoundn downward ibm128 -0x1p-52 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 -0x1p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 -0x1p-52 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 -0x1p-52 (-9223372036854775807LL-1) : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+compoundn 0x1.000002p-52 0x7fffffffffffffff
+= compoundn downward binary32 0x1.000002p-52 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 0x1.000002p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 0x1.000002p-52 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 0x1.000002p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 0x1.000002p-52 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 0x1.000002p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 0x1.000002p-52 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 0x1.000002p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 0x1.000002p-52 9223372036854775807LL : 0x6.3b80de585face09p+2952 : inexact-ok
+= compoundn tonearest intel96 0x1.000002p-52 9223372036854775807LL : 0x6.3b80de585face098p+2952 : inexact-ok
+= compoundn towardzero intel96 0x1.000002p-52 9223372036854775807LL : 0x6.3b80de585face09p+2952 : inexact-ok
+= compoundn upward intel96 0x1.000002p-52 9223372036854775807LL : 0x6.3b80de585face098p+2952 : inexact-ok
+= compoundn downward m68k96 0x1.000002p-52 9223372036854775807LL : 0x6.3b80de585face09p+2952 : inexact-ok
+= compoundn tonearest m68k96 0x1.000002p-52 9223372036854775807LL : 0x6.3b80de585face098p+2952 : inexact-ok
+= compoundn towardzero m68k96 0x1.000002p-52 9223372036854775807LL : 0x6.3b80de585face09p+2952 : inexact-ok
+= compoundn upward m68k96 0x1.000002p-52 9223372036854775807LL : 0x6.3b80de585face098p+2952 : inexact-ok
+= compoundn downward binary128 0x1.000002p-52 9223372036854775807LL : 0x6.3b80de585face0948b57cf087d9p+2952 : inexact-ok
+= compoundn tonearest binary128 0x1.000002p-52 9223372036854775807LL : 0x6.3b80de585face0948b57cf087d94p+2952 : inexact-ok
+= compoundn towardzero binary128 0x1.000002p-52 9223372036854775807LL : 0x6.3b80de585face0948b57cf087d9p+2952 : inexact-ok
+= compoundn upward binary128 0x1.000002p-52 9223372036854775807LL : 0x6.3b80de585face0948b57cf087d94p+2952 : inexact-ok
+= compoundn downward ibm128 0x1.000002p-52 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0x1.000002p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0x1.000002p-52 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0x1.000002p-52 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+compoundn -0x1.000002p-52 0x7fffffffffffffff
+= compoundn downward binary32 -0x1.000002p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 -0x1.000002p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 -0x1.000002p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 -0x1.000002p-52 9223372036854775807LL : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 -0x1.000002p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 -0x1.000002p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 -0x1.000002p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 -0x1.000002p-52 9223372036854775807LL : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 -0x1.000002p-52 9223372036854775807LL : 0x2.9134fe0670c70ee8p-2956 : inexact-ok
+= compoundn tonearest intel96 -0x1.000002p-52 9223372036854775807LL : 0x2.9134fe0670c70ee8p-2956 : inexact-ok
+= compoundn towardzero intel96 -0x1.000002p-52 9223372036854775807LL : 0x2.9134fe0670c70ee8p-2956 : inexact-ok
+= compoundn upward intel96 -0x1.000002p-52 9223372036854775807LL : 0x2.9134fe0670c70eecp-2956 : inexact-ok
+= compoundn downward m68k96 -0x1.000002p-52 9223372036854775807LL : 0x2.9134fe0670c70ee8p-2956 : inexact-ok
+= compoundn tonearest m68k96 -0x1.000002p-52 9223372036854775807LL : 0x2.9134fe0670c70ee8p-2956 : inexact-ok
+= compoundn towardzero m68k96 -0x1.000002p-52 9223372036854775807LL : 0x2.9134fe0670c70ee8p-2956 : inexact-ok
+= compoundn upward m68k96 -0x1.000002p-52 9223372036854775807LL : 0x2.9134fe0670c70eecp-2956 : inexact-ok
+= compoundn downward binary128 -0x1.000002p-52 9223372036854775807LL : 0x2.9134fe0670c70ee9c046643fc276p-2956 : inexact-ok
+= compoundn tonearest binary128 -0x1.000002p-52 9223372036854775807LL : 0x2.9134fe0670c70ee9c046643fc276p-2956 : inexact-ok
+= compoundn towardzero binary128 -0x1.000002p-52 9223372036854775807LL : 0x2.9134fe0670c70ee9c046643fc276p-2956 : inexact-ok
+= compoundn upward binary128 -0x1.000002p-52 9223372036854775807LL : 0x2.9134fe0670c70ee9c046643fc278p-2956 : inexact-ok
+= compoundn downward ibm128 -0x1.000002p-52 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 -0x1.000002p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 -0x1.000002p-52 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 -0x1.000002p-52 9223372036854775807LL : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+compoundn 0x1.000002p-52 -0x8000000000000000
+= compoundn downward binary32 0x1.000002p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 0x1.000002p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 0x1.000002p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 0x1.000002p-52 (-9223372036854775807LL-1) : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0x1.000002p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 0x1.000002p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 0x1.000002p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 0x1.000002p-52 (-9223372036854775807LL-1) : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0x1.000002p-52 (-9223372036854775807LL-1) : 0x2.9134fe06720f8058p-2956 : inexact-ok
+= compoundn tonearest intel96 0x1.000002p-52 (-9223372036854775807LL-1) : 0x2.9134fe06720f805cp-2956 : inexact-ok
+= compoundn towardzero intel96 0x1.000002p-52 (-9223372036854775807LL-1) : 0x2.9134fe06720f8058p-2956 : inexact-ok
+= compoundn upward intel96 0x1.000002p-52 (-9223372036854775807LL-1) : 0x2.9134fe06720f805cp-2956 : inexact-ok
+= compoundn downward m68k96 0x1.000002p-52 (-9223372036854775807LL-1) : 0x2.9134fe06720f8058p-2956 : inexact-ok
+= compoundn tonearest m68k96 0x1.000002p-52 (-9223372036854775807LL-1) : 0x2.9134fe06720f805cp-2956 : inexact-ok
+= compoundn towardzero m68k96 0x1.000002p-52 (-9223372036854775807LL-1) : 0x2.9134fe06720f8058p-2956 : inexact-ok
+= compoundn upward m68k96 0x1.000002p-52 (-9223372036854775807LL-1) : 0x2.9134fe06720f805cp-2956 : inexact-ok
+= compoundn downward binary128 0x1.000002p-52 (-9223372036854775807LL-1) : 0x2.9134fe06720f805a95b68d5c69ccp-2956 : inexact-ok
+= compoundn tonearest binary128 0x1.000002p-52 (-9223372036854775807LL-1) : 0x2.9134fe06720f805a95b68d5c69cep-2956 : inexact-ok
+= compoundn towardzero binary128 0x1.000002p-52 (-9223372036854775807LL-1) : 0x2.9134fe06720f805a95b68d5c69ccp-2956 : inexact-ok
+= compoundn upward binary128 0x1.000002p-52 (-9223372036854775807LL-1) : 0x2.9134fe06720f805a95b68d5c69cep-2956 : inexact-ok
+= compoundn downward ibm128 0x1.000002p-52 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0x1.000002p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0x1.000002p-52 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0x1.000002p-52 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+compoundn -0x1.000002p-52 -0x8000000000000000
+= compoundn downward binary32 -0x1.000002p-52 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 -0x1.000002p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 -0x1.000002p-52 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 -0x1.000002p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 -0x1.000002p-52 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 -0x1.000002p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 -0x1.000002p-52 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 -0x1.000002p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 -0x1.000002p-52 (-9223372036854775807LL-1) : 0x6.3b80de5862cb04c8p+2952 : inexact-ok
+= compoundn tonearest intel96 -0x1.000002p-52 (-9223372036854775807LL-1) : 0x6.3b80de5862cb04c8p+2952 : inexact-ok
+= compoundn towardzero intel96 -0x1.000002p-52 (-9223372036854775807LL-1) : 0x6.3b80de5862cb04c8p+2952 : inexact-ok
+= compoundn upward intel96 -0x1.000002p-52 (-9223372036854775807LL-1) : 0x6.3b80de5862cb04dp+2952 : inexact-ok
+= compoundn downward m68k96 -0x1.000002p-52 (-9223372036854775807LL-1) : 0x6.3b80de5862cb04c8p+2952 : inexact-ok
+= compoundn tonearest m68k96 -0x1.000002p-52 (-9223372036854775807LL-1) : 0x6.3b80de5862cb04c8p+2952 : inexact-ok
+= compoundn towardzero m68k96 -0x1.000002p-52 (-9223372036854775807LL-1) : 0x6.3b80de5862cb04c8p+2952 : inexact-ok
+= compoundn upward m68k96 -0x1.000002p-52 (-9223372036854775807LL-1) : 0x6.3b80de5862cb04dp+2952 : inexact-ok
+= compoundn downward binary128 -0x1.000002p-52 (-9223372036854775807LL-1) : 0x6.3b80de5862cb04c83d372c59201p+2952 : inexact-ok
+= compoundn tonearest binary128 -0x1.000002p-52 (-9223372036854775807LL-1) : 0x6.3b80de5862cb04c83d372c592014p+2952 : inexact-ok
+= compoundn towardzero binary128 -0x1.000002p-52 (-9223372036854775807LL-1) : 0x6.3b80de5862cb04c83d372c59201p+2952 : inexact-ok
+= compoundn upward binary128 -0x1.000002p-52 (-9223372036854775807LL-1) : 0x6.3b80de5862cb04c83d372c592014p+2952 : inexact-ok
+= compoundn downward ibm128 -0x1.000002p-52 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 -0x1.000002p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 -0x1.000002p-52 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 -0x1.000002p-52 (-9223372036854775807LL-1) : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+compoundn 0x1p-51 0x7fffffffffffffff
+= compoundn downward binary32 0x2p-52 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 0x2p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 0x2p-52 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 0x2p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 0x2p-52 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 0x2p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 0x2p-52 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 0x2p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 0x2p-52 9223372036854775807LL : 0x2.6d304654a4fd6888p+5908 : inexact-ok
+= compoundn tonearest intel96 0x2p-52 9223372036854775807LL : 0x2.6d304654a4fd688cp+5908 : inexact-ok
+= compoundn towardzero intel96 0x2p-52 9223372036854775807LL : 0x2.6d304654a4fd6888p+5908 : inexact-ok
+= compoundn upward intel96 0x2p-52 9223372036854775807LL : 0x2.6d304654a4fd688cp+5908 : inexact-ok
+= compoundn downward m68k96 0x2p-52 9223372036854775807LL : 0x2.6d304654a4fd6888p+5908 : inexact-ok
+= compoundn tonearest m68k96 0x2p-52 9223372036854775807LL : 0x2.6d304654a4fd688cp+5908 : inexact-ok
+= compoundn towardzero m68k96 0x2p-52 9223372036854775807LL : 0x2.6d304654a4fd6888p+5908 : inexact-ok
+= compoundn upward m68k96 0x2p-52 9223372036854775807LL : 0x2.6d304654a4fd688cp+5908 : inexact-ok
+= compoundn downward binary128 0x2p-52 9223372036854775807LL : 0x2.6d304654a4fd688b1c1981102b8cp+5908 : inexact-ok
+= compoundn tonearest binary128 0x2p-52 9223372036854775807LL : 0x2.6d304654a4fd688b1c1981102b8ep+5908 : inexact-ok
+= compoundn towardzero binary128 0x2p-52 9223372036854775807LL : 0x2.6d304654a4fd688b1c1981102b8cp+5908 : inexact-ok
+= compoundn upward binary128 0x2p-52 9223372036854775807LL : 0x2.6d304654a4fd688b1c1981102b8ep+5908 : inexact-ok
+= compoundn downward ibm128 0x2p-52 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0x2p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0x2p-52 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0x2p-52 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+compoundn -0x1p-51 0x7fffffffffffffff
+= compoundn downward binary32 -0x2p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 -0x2p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 -0x2p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 -0x2p-52 9223372036854775807LL : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 -0x2p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 -0x2p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 -0x2p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 -0x2p-52 9223372036854775807LL : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 -0x2p-52 9223372036854775807LL : 0x6.9803fe25839b7de8p-5912 : inexact-ok
+= compoundn tonearest intel96 -0x2p-52 9223372036854775807LL : 0x6.9803fe25839b7de8p-5912 : inexact-ok
+= compoundn towardzero intel96 -0x2p-52 9223372036854775807LL : 0x6.9803fe25839b7de8p-5912 : inexact-ok
+= compoundn upward intel96 -0x2p-52 9223372036854775807LL : 0x6.9803fe25839b7dfp-5912 : inexact-ok
+= compoundn downward m68k96 -0x2p-52 9223372036854775807LL : 0x6.9803fe25839b7de8p-5912 : inexact-ok
+= compoundn tonearest m68k96 -0x2p-52 9223372036854775807LL : 0x6.9803fe25839b7de8p-5912 : inexact-ok
+= compoundn towardzero m68k96 -0x2p-52 9223372036854775807LL : 0x6.9803fe25839b7de8p-5912 : inexact-ok
+= compoundn upward m68k96 -0x2p-52 9223372036854775807LL : 0x6.9803fe25839b7dfp-5912 : inexact-ok
+= compoundn downward binary128 -0x2p-52 9223372036854775807LL : 0x6.9803fe25839b7deb39803ba3fefp-5912 : inexact-ok
+= compoundn tonearest binary128 -0x2p-52 9223372036854775807LL : 0x6.9803fe25839b7deb39803ba3fefp-5912 : inexact-ok
+= compoundn towardzero binary128 -0x2p-52 9223372036854775807LL : 0x6.9803fe25839b7deb39803ba3fefp-5912 : inexact-ok
+= compoundn upward binary128 -0x2p-52 9223372036854775807LL : 0x6.9803fe25839b7deb39803ba3fef4p-5912 : inexact-ok
+= compoundn downward ibm128 -0x2p-52 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 -0x2p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 -0x2p-52 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 -0x2p-52 9223372036854775807LL : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+compoundn 0x1p-51 -0x8000000000000000
+= compoundn downward binary32 0x2p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 0x2p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 0x2p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 0x2p-52 (-9223372036854775807LL-1) : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0x2p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 0x2p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 0x2p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 0x2p-52 (-9223372036854775807LL-1) : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0x2p-52 (-9223372036854775807LL-1) : 0x6.9803fe2590cab2ep-5912 : inexact-ok
+= compoundn tonearest intel96 0x2p-52 (-9223372036854775807LL-1) : 0x6.9803fe2590cab2e8p-5912 : inexact-ok
+= compoundn towardzero intel96 0x2p-52 (-9223372036854775807LL-1) : 0x6.9803fe2590cab2ep-5912 : inexact-ok
+= compoundn upward intel96 0x2p-52 (-9223372036854775807LL-1) : 0x6.9803fe2590cab2e8p-5912 : inexact-ok
+= compoundn downward m68k96 0x2p-52 (-9223372036854775807LL-1) : 0x6.9803fe2590cab2ep-5912 : inexact-ok
+= compoundn tonearest m68k96 0x2p-52 (-9223372036854775807LL-1) : 0x6.9803fe2590cab2e8p-5912 : inexact-ok
+= compoundn towardzero m68k96 0x2p-52 (-9223372036854775807LL-1) : 0x6.9803fe2590cab2ep-5912 : inexact-ok
+= compoundn upward m68k96 0x2p-52 (-9223372036854775807LL-1) : 0x6.9803fe2590cab2e8p-5912 : inexact-ok
+= compoundn downward binary128 0x2p-52 (-9223372036854775807LL-1) : 0x6.9803fe2590cab2e704cff08e60fp-5912 : inexact-ok
+= compoundn tonearest binary128 0x2p-52 (-9223372036854775807LL-1) : 0x6.9803fe2590cab2e704cff08e60fp-5912 : inexact-ok
+= compoundn towardzero binary128 0x2p-52 (-9223372036854775807LL-1) : 0x6.9803fe2590cab2e704cff08e60fp-5912 : inexact-ok
+= compoundn upward binary128 0x2p-52 (-9223372036854775807LL-1) : 0x6.9803fe2590cab2e704cff08e60f4p-5912 : inexact-ok
+= compoundn downward ibm128 0x2p-52 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0x2p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0x2p-52 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0x2p-52 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+compoundn -0x1p-51 -0x8000000000000000
+= compoundn downward binary32 -0x2p-52 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 -0x2p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 -0x2p-52 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 -0x2p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 -0x2p-52 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 -0x2p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 -0x2p-52 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 -0x2p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 -0x2p-52 (-9223372036854775807LL-1) : 0x2.6d304654a9d816bcp+5908 : inexact-ok
+= compoundn tonearest intel96 -0x2p-52 (-9223372036854775807LL-1) : 0x2.6d304654a9d816bcp+5908 : inexact-ok
+= compoundn towardzero intel96 -0x2p-52 (-9223372036854775807LL-1) : 0x2.6d304654a9d816bcp+5908 : inexact-ok
+= compoundn upward intel96 -0x2p-52 (-9223372036854775807LL-1) : 0x2.6d304654a9d816cp+5908 : inexact-ok
+= compoundn downward m68k96 -0x2p-52 (-9223372036854775807LL-1) : 0x2.6d304654a9d816bcp+5908 : inexact-ok
+= compoundn tonearest m68k96 -0x2p-52 (-9223372036854775807LL-1) : 0x2.6d304654a9d816bcp+5908 : inexact-ok
+= compoundn towardzero m68k96 -0x2p-52 (-9223372036854775807LL-1) : 0x2.6d304654a9d816bcp+5908 : inexact-ok
+= compoundn upward m68k96 -0x2p-52 (-9223372036854775807LL-1) : 0x2.6d304654a9d816cp+5908 : inexact-ok
+= compoundn downward binary128 -0x2p-52 (-9223372036854775807LL-1) : 0x2.6d304654a9d816bdce32eb7cc79p+5908 : inexact-ok
+= compoundn tonearest binary128 -0x2p-52 (-9223372036854775807LL-1) : 0x2.6d304654a9d816bdce32eb7cc792p+5908 : inexact-ok
+= compoundn towardzero binary128 -0x2p-52 (-9223372036854775807LL-1) : 0x2.6d304654a9d816bdce32eb7cc79p+5908 : inexact-ok
+= compoundn upward binary128 -0x2p-52 (-9223372036854775807LL-1) : 0x2.6d304654a9d816bdce32eb7cc792p+5908 : inexact-ok
+= compoundn downward ibm128 -0x2p-52 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 -0x2p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 -0x2p-52 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 -0x2p-52 (-9223372036854775807LL-1) : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+compoundn 0x1.000002p-51 0x7fffffffffffffff
+= compoundn downward binary32 0x2.000004p-52 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 0x2.000004p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 0x2.000004p-52 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 0x2.000004p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 0x2.000004p-52 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 0x2.000004p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 0x2.000004p-52 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 0x2.000004p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 0x2.000004p-52 9223372036854775807LL : 0x2.6d7df13803e4557cp+5908 : inexact-ok
+= compoundn tonearest intel96 0x2.000004p-52 9223372036854775807LL : 0x2.6d7df13803e4558p+5908 : inexact-ok
+= compoundn towardzero intel96 0x2.000004p-52 9223372036854775807LL : 0x2.6d7df13803e4557cp+5908 : inexact-ok
+= compoundn upward intel96 0x2.000004p-52 9223372036854775807LL : 0x2.6d7df13803e4558p+5908 : inexact-ok
+= compoundn downward m68k96 0x2.000004p-52 9223372036854775807LL : 0x2.6d7df13803e4557cp+5908 : inexact-ok
+= compoundn tonearest m68k96 0x2.000004p-52 9223372036854775807LL : 0x2.6d7df13803e4558p+5908 : inexact-ok
+= compoundn towardzero m68k96 0x2.000004p-52 9223372036854775807LL : 0x2.6d7df13803e4557cp+5908 : inexact-ok
+= compoundn upward m68k96 0x2.000004p-52 9223372036854775807LL : 0x2.6d7df13803e4558p+5908 : inexact-ok
+= compoundn downward binary128 0x2.000004p-52 9223372036854775807LL : 0x2.6d7df13803e4557f5e51ee0f11eap+5908 : inexact-ok
+= compoundn tonearest binary128 0x2.000004p-52 9223372036854775807LL : 0x2.6d7df13803e4557f5e51ee0f11ecp+5908 : inexact-ok
+= compoundn towardzero binary128 0x2.000004p-52 9223372036854775807LL : 0x2.6d7df13803e4557f5e51ee0f11eap+5908 : inexact-ok
+= compoundn upward binary128 0x2.000004p-52 9223372036854775807LL : 0x2.6d7df13803e4557f5e51ee0f11ecp+5908 : inexact-ok
+= compoundn downward ibm128 0x2.000004p-52 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0x2.000004p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0x2.000004p-52 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0x2.000004p-52 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+compoundn -0x1.000002p-51 0x7fffffffffffffff
+= compoundn downward binary32 -0x2.000004p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 -0x2.000004p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 -0x2.000004p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 -0x2.000004p-52 9223372036854775807LL : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 -0x2.000004p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 -0x2.000004p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 -0x2.000004p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 -0x2.000004p-52 9223372036854775807LL : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 -0x2.000004p-52 9223372036854775807LL : 0x6.97310ad53a40bac8p-5912 : inexact-ok
+= compoundn tonearest intel96 -0x2.000004p-52 9223372036854775807LL : 0x6.97310ad53a40bac8p-5912 : inexact-ok
+= compoundn towardzero intel96 -0x2.000004p-52 9223372036854775807LL : 0x6.97310ad53a40bac8p-5912 : inexact-ok
+= compoundn upward intel96 -0x2.000004p-52 9223372036854775807LL : 0x6.97310ad53a40badp-5912 : inexact-ok
+= compoundn downward m68k96 -0x2.000004p-52 9223372036854775807LL : 0x6.97310ad53a40bac8p-5912 : inexact-ok
+= compoundn tonearest m68k96 -0x2.000004p-52 9223372036854775807LL : 0x6.97310ad53a40bac8p-5912 : inexact-ok
+= compoundn towardzero m68k96 -0x2.000004p-52 9223372036854775807LL : 0x6.97310ad53a40bac8p-5912 : inexact-ok
+= compoundn upward m68k96 -0x2.000004p-52 9223372036854775807LL : 0x6.97310ad53a40badp-5912 : inexact-ok
+= compoundn downward binary128 -0x2.000004p-52 9223372036854775807LL : 0x6.97310ad53a40bacbbf7aa8f797e4p-5912 : inexact-ok
+= compoundn tonearest binary128 -0x2.000004p-52 9223372036854775807LL : 0x6.97310ad53a40bacbbf7aa8f797e4p-5912 : inexact-ok
+= compoundn towardzero binary128 -0x2.000004p-52 9223372036854775807LL : 0x6.97310ad53a40bacbbf7aa8f797e4p-5912 : inexact-ok
+= compoundn upward binary128 -0x2.000004p-52 9223372036854775807LL : 0x6.97310ad53a40bacbbf7aa8f797e8p-5912 : inexact-ok
+= compoundn downward ibm128 -0x2.000004p-52 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 -0x2.000004p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 -0x2.000004p-52 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 -0x2.000004p-52 9223372036854775807LL : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+compoundn 0x1.000002p-51 -0x8000000000000000
+= compoundn downward binary32 0x2.000004p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 0x2.000004p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 0x2.000004p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 0x2.000004p-52 (-9223372036854775807LL-1) : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0x2.000004p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 0x2.000004p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 0x2.000004p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 0x2.000004p-52 (-9223372036854775807LL-1) : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0x2.000004p-52 (-9223372036854775807LL-1) : 0x6.97310ad5476e4a3p-5912 : inexact-ok
+= compoundn tonearest intel96 0x2.000004p-52 (-9223372036854775807LL-1) : 0x6.97310ad5476e4a3p-5912 : inexact-ok
+= compoundn towardzero intel96 0x2.000004p-52 (-9223372036854775807LL-1) : 0x6.97310ad5476e4a3p-5912 : inexact-ok
+= compoundn upward intel96 0x2.000004p-52 (-9223372036854775807LL-1) : 0x6.97310ad5476e4a38p-5912 : inexact-ok
+= compoundn downward m68k96 0x2.000004p-52 (-9223372036854775807LL-1) : 0x6.97310ad5476e4a3p-5912 : inexact-ok
+= compoundn tonearest m68k96 0x2.000004p-52 (-9223372036854775807LL-1) : 0x6.97310ad5476e4a3p-5912 : inexact-ok
+= compoundn towardzero m68k96 0x2.000004p-52 (-9223372036854775807LL-1) : 0x6.97310ad5476e4a3p-5912 : inexact-ok
+= compoundn upward m68k96 0x2.000004p-52 (-9223372036854775807LL-1) : 0x6.97310ad5476e4a38p-5912 : inexact-ok
+= compoundn downward binary128 0x2.000004p-52 (-9223372036854775807LL-1) : 0x6.97310ad5476e4a3000846f026fe8p-5912 : inexact-ok
+= compoundn tonearest binary128 0x2.000004p-52 (-9223372036854775807LL-1) : 0x6.97310ad5476e4a3000846f026fe8p-5912 : inexact-ok
+= compoundn towardzero binary128 0x2.000004p-52 (-9223372036854775807LL-1) : 0x6.97310ad5476e4a3000846f026fe8p-5912 : inexact-ok
+= compoundn upward binary128 0x2.000004p-52 (-9223372036854775807LL-1) : 0x6.97310ad5476e4a3000846f026fecp-5912 : inexact-ok
+= compoundn downward ibm128 0x2.000004p-52 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0x2.000004p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0x2.000004p-52 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0x2.000004p-52 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+compoundn -0x1.000002p-51 -0x8000000000000000
+= compoundn downward binary32 -0x2.000004p-52 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 -0x2.000004p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 -0x2.000004p-52 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 -0x2.000004p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 -0x2.000004p-52 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 -0x2.000004p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 -0x2.000004p-52 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 -0x2.000004p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 -0x2.000004p-52 (-9223372036854775807LL-1) : 0x2.6d7df13808bf9f24p+5908 : inexact-ok
+= compoundn tonearest intel96 -0x2.000004p-52 (-9223372036854775807LL-1) : 0x2.6d7df13808bf9f24p+5908 : inexact-ok
+= compoundn towardzero intel96 -0x2.000004p-52 (-9223372036854775807LL-1) : 0x2.6d7df13808bf9f24p+5908 : inexact-ok
+= compoundn upward intel96 -0x2.000004p-52 (-9223372036854775807LL-1) : 0x2.6d7df13808bf9f28p+5908 : inexact-ok
+= compoundn downward m68k96 -0x2.000004p-52 (-9223372036854775807LL-1) : 0x2.6d7df13808bf9f24p+5908 : inexact-ok
+= compoundn tonearest m68k96 -0x2.000004p-52 (-9223372036854775807LL-1) : 0x2.6d7df13808bf9f24p+5908 : inexact-ok
+= compoundn towardzero m68k96 -0x2.000004p-52 (-9223372036854775807LL-1) : 0x2.6d7df13808bf9f24p+5908 : inexact-ok
+= compoundn upward m68k96 -0x2.000004p-52 (-9223372036854775807LL-1) : 0x2.6d7df13808bf9f28p+5908 : inexact-ok
+= compoundn downward binary128 -0x2.000004p-52 (-9223372036854775807LL-1) : 0x2.6d7df13808bf9f24f9108f7660ccp+5908 : inexact-ok
+= compoundn tonearest binary128 -0x2.000004p-52 (-9223372036854775807LL-1) : 0x2.6d7df13808bf9f24f9108f7660cep+5908 : inexact-ok
+= compoundn towardzero binary128 -0x2.000004p-52 (-9223372036854775807LL-1) : 0x2.6d7df13808bf9f24f9108f7660ccp+5908 : inexact-ok
+= compoundn upward binary128 -0x2.000004p-52 (-9223372036854775807LL-1) : 0x2.6d7df13808bf9f24f9108f7660cep+5908 : inexact-ok
+= compoundn downward ibm128 -0x2.000004p-52 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 -0x2.000004p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 -0x2.000004p-52 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 -0x2.000004p-52 (-9223372036854775807LL-1) : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+compoundn 0x1p-50 0x7fffffffffffffff
+= compoundn downward binary32 0x4p-52 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 0x4p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 0x4p-52 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 0x4p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 0x4p-52 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 0x4p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 0x4p-52 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 0x4p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 0x4p-52 9223372036854775807LL : 0x5.e3533e510fbf0bfp+11816 : inexact-ok
+= compoundn tonearest intel96 0x4p-52 9223372036854775807LL : 0x5.e3533e510fbf0bf8p+11816 : inexact-ok
+= compoundn towardzero intel96 0x4p-52 9223372036854775807LL : 0x5.e3533e510fbf0bfp+11816 : inexact-ok
+= compoundn upward intel96 0x4p-52 9223372036854775807LL : 0x5.e3533e510fbf0bf8p+11816 : inexact-ok
+= compoundn downward m68k96 0x4p-52 9223372036854775807LL : 0x5.e3533e510fbf0bfp+11816 : inexact-ok
+= compoundn tonearest m68k96 0x4p-52 9223372036854775807LL : 0x5.e3533e510fbf0bf8p+11816 : inexact-ok
+= compoundn towardzero m68k96 0x4p-52 9223372036854775807LL : 0x5.e3533e510fbf0bfp+11816 : inexact-ok
+= compoundn upward m68k96 0x4p-52 9223372036854775807LL : 0x5.e3533e510fbf0bf8p+11816 : inexact-ok
+= compoundn downward binary128 0x4p-52 9223372036854775807LL : 0x5.e3533e510fbf0bf4be215b5ea16p+11816 : inexact-ok
+= compoundn tonearest binary128 0x4p-52 9223372036854775807LL : 0x5.e3533e510fbf0bf4be215b5ea164p+11816 : inexact-ok
+= compoundn towardzero binary128 0x4p-52 9223372036854775807LL : 0x5.e3533e510fbf0bf4be215b5ea16p+11816 : inexact-ok
+= compoundn upward binary128 0x4p-52 9223372036854775807LL : 0x5.e3533e510fbf0bf4be215b5ea164p+11816 : inexact-ok
+= compoundn downward ibm128 0x4p-52 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0x4p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0x4p-52 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0x4p-52 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+compoundn -0x1p-50 0x7fffffffffffffff
+= compoundn downward binary32 -0x4p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 -0x4p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 -0x4p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 -0x4p-52 9223372036854775807LL : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 -0x4p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 -0x4p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 -0x4p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 -0x4p-52 9223372036854775807LL : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 -0x4p-52 9223372036854775807LL : 0x2.b7a74a79e51cd2f8p-11820 : inexact-ok
+= compoundn tonearest intel96 -0x4p-52 9223372036854775807LL : 0x2.b7a74a79e51cd2f8p-11820 : inexact-ok
+= compoundn towardzero intel96 -0x4p-52 9223372036854775807LL : 0x2.b7a74a79e51cd2f8p-11820 : inexact-ok
+= compoundn upward intel96 -0x4p-52 9223372036854775807LL : 0x2.b7a74a79e51cd2fcp-11820 : inexact-ok
+= compoundn downward m68k96 -0x4p-52 9223372036854775807LL : 0x2.b7a74a79e51cd2f8p-11820 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-52 9223372036854775807LL : 0x2.b7a74a79e51cd2f8p-11820 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-52 9223372036854775807LL : 0x2.b7a74a79e51cd2f8p-11820 : inexact-ok
+= compoundn upward m68k96 -0x4p-52 9223372036854775807LL : 0x2.b7a74a79e51cd2fcp-11820 : inexact-ok
+= compoundn downward binary128 -0x4p-52 9223372036854775807LL : 0x2.b7a74a79e51cd2f8b994d73e8bp-11820 : inexact-ok
+= compoundn tonearest binary128 -0x4p-52 9223372036854775807LL : 0x2.b7a74a79e51cd2f8b994d73e8bp-11820 : inexact-ok
+= compoundn towardzero binary128 -0x4p-52 9223372036854775807LL : 0x2.b7a74a79e51cd2f8b994d73e8bp-11820 : inexact-ok
+= compoundn upward binary128 -0x4p-52 9223372036854775807LL : 0x2.b7a74a79e51cd2f8b994d73e8b02p-11820 : inexact-ok
+= compoundn downward ibm128 -0x4p-52 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 -0x4p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 -0x4p-52 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 -0x4p-52 9223372036854775807LL : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+compoundn 0x1p-50 -0x8000000000000000
+= compoundn downward binary32 0x4p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 0x4p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 0x4p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 0x4p-52 (-9223372036854775807LL-1) : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0x4p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 0x4p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 0x4p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 0x4p-52 (-9223372036854775807LL-1) : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0x4p-52 (-9223372036854775807LL-1) : 0x2.b7a74a79fad95f6p-11820 : inexact-ok
+= compoundn tonearest intel96 0x4p-52 (-9223372036854775807LL-1) : 0x2.b7a74a79fad95f64p-11820 : inexact-ok
+= compoundn towardzero intel96 0x4p-52 (-9223372036854775807LL-1) : 0x2.b7a74a79fad95f6p-11820 : inexact-ok
+= compoundn upward intel96 0x4p-52 (-9223372036854775807LL-1) : 0x2.b7a74a79fad95f64p-11820 : inexact-ok
+= compoundn downward m68k96 0x4p-52 (-9223372036854775807LL-1) : 0x2.b7a74a79fad95f6p-11820 : inexact-ok
+= compoundn tonearest m68k96 0x4p-52 (-9223372036854775807LL-1) : 0x2.b7a74a79fad95f64p-11820 : inexact-ok
+= compoundn towardzero m68k96 0x4p-52 (-9223372036854775807LL-1) : 0x2.b7a74a79fad95f6p-11820 : inexact-ok
+= compoundn upward m68k96 0x4p-52 (-9223372036854775807LL-1) : 0x2.b7a74a79fad95f64p-11820 : inexact-ok
+= compoundn downward binary128 0x4p-52 (-9223372036854775807LL-1) : 0x2.b7a74a79fad95f62b67634091cb6p-11820 : inexact-ok
+= compoundn tonearest binary128 0x4p-52 (-9223372036854775807LL-1) : 0x2.b7a74a79fad95f62b67634091cb8p-11820 : inexact-ok
+= compoundn towardzero binary128 0x4p-52 (-9223372036854775807LL-1) : 0x2.b7a74a79fad95f62b67634091cb6p-11820 : inexact-ok
+= compoundn upward binary128 0x4p-52 (-9223372036854775807LL-1) : 0x2.b7a74a79fad95f62b67634091cb8p-11820 : inexact-ok
+= compoundn downward ibm128 0x4p-52 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0x4p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0x4p-52 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0x4p-52 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+compoundn -0x1p-50 -0x8000000000000000
+= compoundn downward binary32 -0x4p-52 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 -0x4p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 -0x4p-52 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 -0x4p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 -0x4p-52 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 -0x4p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 -0x4p-52 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 -0x4p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 -0x4p-52 (-9223372036854775807LL-1) : 0x5.e3533e513edb1eb8p+11816 : inexact-ok
+= compoundn tonearest intel96 -0x4p-52 (-9223372036854775807LL-1) : 0x5.e3533e513edb1ecp+11816 : inexact-ok
+= compoundn towardzero intel96 -0x4p-52 (-9223372036854775807LL-1) : 0x5.e3533e513edb1eb8p+11816 : inexact-ok
+= compoundn upward intel96 -0x4p-52 (-9223372036854775807LL-1) : 0x5.e3533e513edb1ecp+11816 : inexact-ok
+= compoundn downward m68k96 -0x4p-52 (-9223372036854775807LL-1) : 0x5.e3533e513edb1eb8p+11816 : inexact-ok
+= compoundn tonearest m68k96 -0x4p-52 (-9223372036854775807LL-1) : 0x5.e3533e513edb1ecp+11816 : inexact-ok
+= compoundn towardzero m68k96 -0x4p-52 (-9223372036854775807LL-1) : 0x5.e3533e513edb1eb8p+11816 : inexact-ok
+= compoundn upward m68k96 -0x4p-52 (-9223372036854775807LL-1) : 0x5.e3533e513edb1ecp+11816 : inexact-ok
+= compoundn downward binary128 -0x4p-52 (-9223372036854775807LL-1) : 0x5.e3533e513edb1ebc16f00ddc7afp+11816 : inexact-ok
+= compoundn tonearest binary128 -0x4p-52 (-9223372036854775807LL-1) : 0x5.e3533e513edb1ebc16f00ddc7af4p+11816 : inexact-ok
+= compoundn towardzero binary128 -0x4p-52 (-9223372036854775807LL-1) : 0x5.e3533e513edb1ebc16f00ddc7afp+11816 : inexact-ok
+= compoundn upward binary128 -0x4p-52 (-9223372036854775807LL-1) : 0x5.e3533e513edb1ebc16f00ddc7af4p+11816 : inexact-ok
+= compoundn downward ibm128 -0x4p-52 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 -0x4p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 -0x4p-52 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 -0x4p-52 (-9223372036854775807LL-1) : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+compoundn 0x1.000002p-50 0x7fffffffffffffff
+= compoundn downward binary32 0x4.000008p-52 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 0x4.000008p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 0x4.000008p-52 9223372036854775807LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 0x4.000008p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 0x4.000008p-52 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 0x4.000008p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 0x4.000008p-52 9223372036854775807LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 0x4.000008p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 0x4.000008p-52 9223372036854775807LL : 0x5.e4cc423f2b167ea8p+11816 : inexact-ok
+= compoundn tonearest intel96 0x4.000008p-52 9223372036854775807LL : 0x5.e4cc423f2b167ea8p+11816 : inexact-ok
+= compoundn towardzero intel96 0x4.000008p-52 9223372036854775807LL : 0x5.e4cc423f2b167ea8p+11816 : inexact-ok
+= compoundn upward intel96 0x4.000008p-52 9223372036854775807LL : 0x5.e4cc423f2b167ebp+11816 : inexact-ok
+= compoundn downward m68k96 0x4.000008p-52 9223372036854775807LL : 0x5.e4cc423f2b167ea8p+11816 : inexact-ok
+= compoundn tonearest m68k96 0x4.000008p-52 9223372036854775807LL : 0x5.e4cc423f2b167ea8p+11816 : inexact-ok
+= compoundn towardzero m68k96 0x4.000008p-52 9223372036854775807LL : 0x5.e4cc423f2b167ea8p+11816 : inexact-ok
+= compoundn upward m68k96 0x4.000008p-52 9223372036854775807LL : 0x5.e4cc423f2b167ebp+11816 : inexact-ok
+= compoundn downward binary128 0x4.000008p-52 9223372036854775807LL : 0x5.e4cc423f2b167ea96625c12d0ecp+11816 : inexact-ok
+= compoundn tonearest binary128 0x4.000008p-52 9223372036854775807LL : 0x5.e4cc423f2b167ea96625c12d0ec4p+11816 : inexact-ok
+= compoundn towardzero binary128 0x4.000008p-52 9223372036854775807LL : 0x5.e4cc423f2b167ea96625c12d0ecp+11816 : inexact-ok
+= compoundn upward binary128 0x4.000008p-52 9223372036854775807LL : 0x5.e4cc423f2b167ea96625c12d0ec4p+11816 : inexact-ok
+= compoundn downward ibm128 0x4.000008p-52 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 0x4.000008p-52 9223372036854775807LL : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 0x4.000008p-52 9223372036854775807LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 0x4.000008p-52 9223372036854775807LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+compoundn -0x1.000002p-50 0x7fffffffffffffff
+= compoundn downward binary32 -0x4.000008p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 -0x4.000008p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 -0x4.000008p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 -0x4.000008p-52 9223372036854775807LL : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 -0x4.000008p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 -0x4.000008p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 -0x4.000008p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 -0x4.000008p-52 9223372036854775807LL : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 -0x4.000008p-52 9223372036854775807LL : 0x2.b6f97662b14f7948p-11820 : inexact-ok
+= compoundn tonearest intel96 -0x4.000008p-52 9223372036854775807LL : 0x2.b6f97662b14f794cp-11820 : inexact-ok
+= compoundn towardzero intel96 -0x4.000008p-52 9223372036854775807LL : 0x2.b6f97662b14f7948p-11820 : inexact-ok
+= compoundn upward intel96 -0x4.000008p-52 9223372036854775807LL : 0x2.b6f97662b14f794cp-11820 : inexact-ok
+= compoundn downward m68k96 -0x4.000008p-52 9223372036854775807LL : 0x2.b6f97662b14f7948p-11820 : inexact-ok
+= compoundn tonearest m68k96 -0x4.000008p-52 9223372036854775807LL : 0x2.b6f97662b14f794cp-11820 : inexact-ok
+= compoundn towardzero m68k96 -0x4.000008p-52 9223372036854775807LL : 0x2.b6f97662b14f7948p-11820 : inexact-ok
+= compoundn upward m68k96 -0x4.000008p-52 9223372036854775807LL : 0x2.b6f97662b14f794cp-11820 : inexact-ok
+= compoundn downward binary128 -0x4.000008p-52 9223372036854775807LL : 0x2.b6f97662b14f794b00ff4a200f62p-11820 : inexact-ok
+= compoundn tonearest binary128 -0x4.000008p-52 9223372036854775807LL : 0x2.b6f97662b14f794b00ff4a200f62p-11820 : inexact-ok
+= compoundn towardzero binary128 -0x4.000008p-52 9223372036854775807LL : 0x2.b6f97662b14f794b00ff4a200f62p-11820 : inexact-ok
+= compoundn upward binary128 -0x4.000008p-52 9223372036854775807LL : 0x2.b6f97662b14f794b00ff4a200f64p-11820 : inexact-ok
+= compoundn downward ibm128 -0x4.000008p-52 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 -0x4.000008p-52 9223372036854775807LL : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 -0x4.000008p-52 9223372036854775807LL : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 -0x4.000008p-52 9223372036854775807LL : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+compoundn 0x1.000002p-50 -0x8000000000000000
+= compoundn downward binary32 0x4.000008p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary32 0x4.000008p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary32 0x4.000008p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary32 0x4.000008p-52 (-9223372036854775807LL-1) : 0x8p-152 : inexact-ok underflow errno-erange-ok
+= compoundn downward binary64 0x4.000008p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn tonearest binary64 0x4.000008p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero binary64 0x4.000008p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn upward binary64 0x4.000008p-52 (-9223372036854775807LL-1) : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= compoundn downward intel96 0x4.000008p-52 (-9223372036854775807LL-1) : 0x2.b6f97662c7069794p-11820 : inexact-ok
+= compoundn tonearest intel96 0x4.000008p-52 (-9223372036854775807LL-1) : 0x2.b6f97662c7069798p-11820 : inexact-ok
+= compoundn towardzero intel96 0x4.000008p-52 (-9223372036854775807LL-1) : 0x2.b6f97662c7069794p-11820 : inexact-ok
+= compoundn upward intel96 0x4.000008p-52 (-9223372036854775807LL-1) : 0x2.b6f97662c7069798p-11820 : inexact-ok
+= compoundn downward m68k96 0x4.000008p-52 (-9223372036854775807LL-1) : 0x2.b6f97662c7069794p-11820 : inexact-ok
+= compoundn tonearest m68k96 0x4.000008p-52 (-9223372036854775807LL-1) : 0x2.b6f97662c7069798p-11820 : inexact-ok
+= compoundn towardzero m68k96 0x4.000008p-52 (-9223372036854775807LL-1) : 0x2.b6f97662c7069794p-11820 : inexact-ok
+= compoundn upward m68k96 0x4.000008p-52 (-9223372036854775807LL-1) : 0x2.b6f97662c7069798p-11820 : inexact-ok
+= compoundn downward binary128 0x4.000008p-52 (-9223372036854775807LL-1) : 0x2.b6f97662c7069796971b99d440bcp-11820 : inexact-ok
+= compoundn tonearest binary128 0x4.000008p-52 (-9223372036854775807LL-1) : 0x2.b6f97662c7069796971b99d440bep-11820 : inexact-ok
+= compoundn towardzero binary128 0x4.000008p-52 (-9223372036854775807LL-1) : 0x2.b6f97662c7069796971b99d440bcp-11820 : inexact-ok
+= compoundn upward binary128 0x4.000008p-52 (-9223372036854775807LL-1) : 0x2.b6f97662c7069796971b99d440bep-11820 : inexact-ok
+= compoundn downward ibm128 0x4.000008p-52 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn tonearest ibm128 0x4.000008p-52 (-9223372036854775807LL-1) : 0x0p+0 : inexact-ok underflow errno-erange
+= compoundn towardzero ibm128 0x4.000008p-52 (-9223372036854775807LL-1) : 0x0p+0 : xfail:ibm128-libgcc inexact-ok underflow errno-erange
+= compoundn upward ibm128 0x4.000008p-52 (-9223372036854775807LL-1) : 0x4p-1076 : xfail:ibm128-libgcc inexact-ok underflow errno-erange-ok
+compoundn -0x1.000002p-50 -0x8000000000000000
+= compoundn downward binary32 -0x4.000008p-52 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary32 -0x4.000008p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary32 -0x4.000008p-52 (-9223372036854775807LL-1) : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary32 -0x4.000008p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward binary64 -0x4.000008p-52 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn tonearest binary64 -0x4.000008p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero binary64 -0x4.000008p-52 (-9223372036854775807LL-1) : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= compoundn upward binary64 -0x4.000008p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn downward intel96 -0x4.000008p-52 (-9223372036854775807LL-1) : 0x5.e4cc423f5a3e5aa8p+11816 : inexact-ok
+= compoundn tonearest intel96 -0x4.000008p-52 (-9223372036854775807LL-1) : 0x5.e4cc423f5a3e5aa8p+11816 : inexact-ok
+= compoundn towardzero intel96 -0x4.000008p-52 (-9223372036854775807LL-1) : 0x5.e4cc423f5a3e5aa8p+11816 : inexact-ok
+= compoundn upward intel96 -0x4.000008p-52 (-9223372036854775807LL-1) : 0x5.e4cc423f5a3e5abp+11816 : inexact-ok
+= compoundn downward m68k96 -0x4.000008p-52 (-9223372036854775807LL-1) : 0x5.e4cc423f5a3e5aa8p+11816 : inexact-ok
+= compoundn tonearest m68k96 -0x4.000008p-52 (-9223372036854775807LL-1) : 0x5.e4cc423f5a3e5aa8p+11816 : inexact-ok
+= compoundn towardzero m68k96 -0x4.000008p-52 (-9223372036854775807LL-1) : 0x5.e4cc423f5a3e5aa8p+11816 : inexact-ok
+= compoundn upward m68k96 -0x4.000008p-52 (-9223372036854775807LL-1) : 0x5.e4cc423f5a3e5abp+11816 : inexact-ok
+= compoundn downward binary128 -0x4.000008p-52 (-9223372036854775807LL-1) : 0x5.e4cc423f5a3e5aab0d464fdfc9c8p+11816 : inexact-ok
+= compoundn tonearest binary128 -0x4.000008p-52 (-9223372036854775807LL-1) : 0x5.e4cc423f5a3e5aab0d464fdfc9ccp+11816 : inexact-ok
+= compoundn towardzero binary128 -0x4.000008p-52 (-9223372036854775807LL-1) : 0x5.e4cc423f5a3e5aab0d464fdfc9c8p+11816 : inexact-ok
+= compoundn upward binary128 -0x4.000008p-52 (-9223372036854775807LL-1) : 0x5.e4cc423f5a3e5aab0d464fdfc9ccp+11816 : inexact-ok
+= compoundn downward ibm128 -0x4.000008p-52 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn tonearest ibm128 -0x4.000008p-52 (-9223372036854775807LL-1) : plus_infty : inexact-ok overflow errno-erange
+= compoundn towardzero ibm128 -0x4.000008p-52 (-9223372036854775807LL-1) : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= compoundn upward ibm128 -0x4.000008p-52 (-9223372036854775807LL-1) : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+compoundn 0x1.000002p-64 0x7654321076543210
+= compoundn downward binary32 0x1.000002p-64 8526495040805286416LL : 0x1.966cd4p+0 : inexact-ok
+= compoundn tonearest binary32 0x1.000002p-64 8526495040805286416LL : 0x1.966cd6p+0 : inexact-ok
+= compoundn towardzero binary32 0x1.000002p-64 8526495040805286416LL : 0x1.966cd4p+0 : inexact-ok
+= compoundn upward binary32 0x1.000002p-64 8526495040805286416LL : 0x1.966cd6p+0 : inexact-ok
+= compoundn downward binary64 0x1.000002p-64 8526495040805286416LL : 0x1.966cd51ae958bp+0 : inexact-ok
+= compoundn tonearest binary64 0x1.000002p-64 8526495040805286416LL : 0x1.966cd51ae958bp+0 : inexact-ok
+= compoundn towardzero binary64 0x1.000002p-64 8526495040805286416LL : 0x1.966cd51ae958bp+0 : inexact-ok
+= compoundn upward binary64 0x1.000002p-64 8526495040805286416LL : 0x1.966cd51ae958cp+0 : inexact-ok
+= compoundn downward intel96 0x1.000002p-64 8526495040805286416LL : 0x1.966cd51ae958b148p+0 : inexact-ok
+= compoundn tonearest intel96 0x1.000002p-64 8526495040805286416LL : 0x1.966cd51ae958b14ap+0 : inexact-ok
+= compoundn towardzero intel96 0x1.000002p-64 8526495040805286416LL : 0x1.966cd51ae958b148p+0 : inexact-ok
+= compoundn upward intel96 0x1.000002p-64 8526495040805286416LL : 0x1.966cd51ae958b14ap+0 : inexact-ok
+= compoundn downward m68k96 0x1.000002p-64 8526495040805286416LL : 0x1.966cd51ae958b148p+0 : inexact-ok
+= compoundn tonearest m68k96 0x1.000002p-64 8526495040805286416LL : 0x1.966cd51ae958b14ap+0 : inexact-ok
+= compoundn towardzero m68k96 0x1.000002p-64 8526495040805286416LL : 0x1.966cd51ae958b148p+0 : inexact-ok
+= compoundn upward m68k96 0x1.000002p-64 8526495040805286416LL : 0x1.966cd51ae958b14ap+0 : inexact-ok
+= compoundn downward binary128 0x1.000002p-64 8526495040805286416LL : 0x1.966cd51ae958b1492337493122cfp+0 : inexact-ok
+= compoundn tonearest binary128 0x1.000002p-64 8526495040805286416LL : 0x1.966cd51ae958b1492337493122dp+0 : inexact-ok
+= compoundn towardzero binary128 0x1.000002p-64 8526495040805286416LL : 0x1.966cd51ae958b1492337493122cfp+0 : inexact-ok
+= compoundn upward binary128 0x1.000002p-64 8526495040805286416LL : 0x1.966cd51ae958b1492337493122dp+0 : inexact-ok
+= compoundn downward ibm128 0x1.000002p-64 8526495040805286416LL : 0x1.966cd51ae958b14923374931228p+0 : inexact-ok
+= compoundn tonearest ibm128 0x1.000002p-64 8526495040805286416LL : 0x1.966cd51ae958b1492337493123p+0 : inexact-ok
+= compoundn towardzero ibm128 0x1.000002p-64 8526495040805286416LL : 0x1.966cd51ae958b14923374931228p+0 : inexact-ok
+= compoundn upward ibm128 0x1.000002p-64 8526495040805286416LL : 0x1.966cd51ae958b1492337493123p+0 : inexact-ok
+compoundn -0x1.000002p-64 0x7654321076543210
+= compoundn downward binary32 -0x1.000002p-64 8526495040805286416LL : 0xa.13ff7p-4 : inexact-ok
+= compoundn tonearest binary32 -0x1.000002p-64 8526495040805286416LL : 0xa.13ff8p-4 : inexact-ok
+= compoundn towardzero binary32 -0x1.000002p-64 8526495040805286416LL : 0xa.13ff7p-4 : inexact-ok
+= compoundn upward binary32 -0x1.000002p-64 8526495040805286416LL : 0xa.13ff8p-4 : inexact-ok
+= compoundn downward binary64 -0x1.000002p-64 8526495040805286416LL : 0xa.13ff7aa7640f8p-4 : inexact-ok
+= compoundn tonearest binary64 -0x1.000002p-64 8526495040805286416LL : 0xa.13ff7aa7640f8p-4 : inexact-ok
+= compoundn towardzero binary64 -0x1.000002p-64 8526495040805286416LL : 0xa.13ff7aa7640f8p-4 : inexact-ok
+= compoundn upward binary64 -0x1.000002p-64 8526495040805286416LL : 0xa.13ff7aa7641p-4 : inexact-ok
+= compoundn downward intel96 -0x1.000002p-64 8526495040805286416LL : 0xa.13ff7aa7640f8f2p-4 : inexact-ok
+= compoundn tonearest intel96 -0x1.000002p-64 8526495040805286416LL : 0xa.13ff7aa7640f8f2p-4 : inexact-ok
+= compoundn towardzero intel96 -0x1.000002p-64 8526495040805286416LL : 0xa.13ff7aa7640f8f2p-4 : inexact-ok
+= compoundn upward intel96 -0x1.000002p-64 8526495040805286416LL : 0xa.13ff7aa7640f8f3p-4 : inexact-ok
+= compoundn downward m68k96 -0x1.000002p-64 8526495040805286416LL : 0xa.13ff7aa7640f8f2p-4 : inexact-ok
+= compoundn tonearest m68k96 -0x1.000002p-64 8526495040805286416LL : 0xa.13ff7aa7640f8f2p-4 : inexact-ok
+= compoundn towardzero m68k96 -0x1.000002p-64 8526495040805286416LL : 0xa.13ff7aa7640f8f2p-4 : inexact-ok
+= compoundn upward m68k96 -0x1.000002p-64 8526495040805286416LL : 0xa.13ff7aa7640f8f3p-4 : inexact-ok
+= compoundn downward binary128 -0x1.000002p-64 8526495040805286416LL : 0xa.13ff7aa7640f8f20b506785d9c6p-4 : inexact-ok
+= compoundn tonearest binary128 -0x1.000002p-64 8526495040805286416LL : 0xa.13ff7aa7640f8f20b506785d9c68p-4 : inexact-ok
+= compoundn towardzero binary128 -0x1.000002p-64 8526495040805286416LL : 0xa.13ff7aa7640f8f20b506785d9c6p-4 : inexact-ok
+= compoundn upward binary128 -0x1.000002p-64 8526495040805286416LL : 0xa.13ff7aa7640f8f20b506785d9c68p-4 : inexact-ok
+= compoundn downward ibm128 -0x1.000002p-64 8526495040805286416LL : 0xa.13ff7aa7640f8f20b506785d9cp-4 : inexact-ok
+= compoundn tonearest ibm128 -0x1.000002p-64 8526495040805286416LL : 0xa.13ff7aa7640f8f20b506785d9cp-4 : inexact-ok
+= compoundn towardzero ibm128 -0x1.000002p-64 8526495040805286416LL : 0xa.13ff7aa7640f8f20b506785d9cp-4 : inexact-ok
+= compoundn upward ibm128 -0x1.000002p-64 8526495040805286416LL : 0xa.13ff7aa7640f8f20b506785dap-4 : inexact-ok
+compoundn 0x1.000002p-64 -0x7654321076543210
+= compoundn downward binary32 0x1.000002p-64 -8526495040805286416LL : 0xa.13ff7p-4 : inexact-ok
+= compoundn tonearest binary32 0x1.000002p-64 -8526495040805286416LL : 0xa.13ff8p-4 : inexact-ok
+= compoundn towardzero binary32 0x1.000002p-64 -8526495040805286416LL : 0xa.13ff7p-4 : inexact-ok
+= compoundn upward binary32 0x1.000002p-64 -8526495040805286416LL : 0xa.13ff8p-4 : inexact-ok
+= compoundn downward binary64 0x1.000002p-64 -8526495040805286416LL : 0xa.13ff7aa7640f8p-4 : inexact-ok
+= compoundn tonearest binary64 0x1.000002p-64 -8526495040805286416LL : 0xa.13ff7aa7640f8p-4 : inexact-ok
+= compoundn towardzero binary64 0x1.000002p-64 -8526495040805286416LL : 0xa.13ff7aa7640f8p-4 : inexact-ok
+= compoundn upward binary64 0x1.000002p-64 -8526495040805286416LL : 0xa.13ff7aa7641p-4 : inexact-ok
+= compoundn downward intel96 0x1.000002p-64 -8526495040805286416LL : 0xa.13ff7aa7640f8f2p-4 : inexact-ok
+= compoundn tonearest intel96 0x1.000002p-64 -8526495040805286416LL : 0xa.13ff7aa7640f8f2p-4 : inexact-ok
+= compoundn towardzero intel96 0x1.000002p-64 -8526495040805286416LL : 0xa.13ff7aa7640f8f2p-4 : inexact-ok
+= compoundn upward intel96 0x1.000002p-64 -8526495040805286416LL : 0xa.13ff7aa7640f8f3p-4 : inexact-ok
+= compoundn downward m68k96 0x1.000002p-64 -8526495040805286416LL : 0xa.13ff7aa7640f8f2p-4 : inexact-ok
+= compoundn tonearest m68k96 0x1.000002p-64 -8526495040805286416LL : 0xa.13ff7aa7640f8f2p-4 : inexact-ok
+= compoundn towardzero m68k96 0x1.000002p-64 -8526495040805286416LL : 0xa.13ff7aa7640f8f2p-4 : inexact-ok
+= compoundn upward m68k96 0x1.000002p-64 -8526495040805286416LL : 0xa.13ff7aa7640f8f3p-4 : inexact-ok
+= compoundn downward binary128 0x1.000002p-64 -8526495040805286416LL : 0xa.13ff7aa7640f8f255d8ed5eaf32p-4 : inexact-ok
+= compoundn tonearest binary128 0x1.000002p-64 -8526495040805286416LL : 0xa.13ff7aa7640f8f255d8ed5eaf328p-4 : inexact-ok
+= compoundn towardzero binary128 0x1.000002p-64 -8526495040805286416LL : 0xa.13ff7aa7640f8f255d8ed5eaf32p-4 : inexact-ok
+= compoundn upward binary128 0x1.000002p-64 -8526495040805286416LL : 0xa.13ff7aa7640f8f255d8ed5eaf328p-4 : inexact-ok
+= compoundn downward ibm128 0x1.000002p-64 -8526495040805286416LL : 0xa.13ff7aa7640f8f255d8ed5eafp-4 : inexact-ok
+= compoundn tonearest ibm128 0x1.000002p-64 -8526495040805286416LL : 0xa.13ff7aa7640f8f255d8ed5eaf4p-4 : inexact-ok
+= compoundn towardzero ibm128 0x1.000002p-64 -8526495040805286416LL : 0xa.13ff7aa7640f8f255d8ed5eafp-4 : inexact-ok
+= compoundn upward ibm128 0x1.000002p-64 -8526495040805286416LL : 0xa.13ff7aa7640f8f255d8ed5eaf4p-4 : inexact-ok
+compoundn -0x1.000002p-64 -0x7654321076543210
+= compoundn downward binary32 -0x1.000002p-64 -8526495040805286416LL : 0x1.966cd4p+0 : inexact-ok
+= compoundn tonearest binary32 -0x1.000002p-64 -8526495040805286416LL : 0x1.966cd6p+0 : inexact-ok
+= compoundn towardzero binary32 -0x1.000002p-64 -8526495040805286416LL : 0x1.966cd4p+0 : inexact-ok
+= compoundn upward binary32 -0x1.000002p-64 -8526495040805286416LL : 0x1.966cd6p+0 : inexact-ok
+= compoundn downward binary64 -0x1.000002p-64 -8526495040805286416LL : 0x1.966cd51ae958bp+0 : inexact-ok
+= compoundn tonearest binary64 -0x1.000002p-64 -8526495040805286416LL : 0x1.966cd51ae958bp+0 : inexact-ok
+= compoundn towardzero binary64 -0x1.000002p-64 -8526495040805286416LL : 0x1.966cd51ae958bp+0 : inexact-ok
+= compoundn upward binary64 -0x1.000002p-64 -8526495040805286416LL : 0x1.966cd51ae958cp+0 : inexact-ok
+= compoundn downward intel96 -0x1.000002p-64 -8526495040805286416LL : 0x1.966cd51ae958b148p+0 : inexact-ok
+= compoundn tonearest intel96 -0x1.000002p-64 -8526495040805286416LL : 0x1.966cd51ae958b14ap+0 : inexact-ok
+= compoundn towardzero intel96 -0x1.000002p-64 -8526495040805286416LL : 0x1.966cd51ae958b148p+0 : inexact-ok
+= compoundn upward intel96 -0x1.000002p-64 -8526495040805286416LL : 0x1.966cd51ae958b14ap+0 : inexact-ok
+= compoundn downward m68k96 -0x1.000002p-64 -8526495040805286416LL : 0x1.966cd51ae958b148p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x1.000002p-64 -8526495040805286416LL : 0x1.966cd51ae958b14ap+0 : inexact-ok
+= compoundn towardzero m68k96 -0x1.000002p-64 -8526495040805286416LL : 0x1.966cd51ae958b148p+0 : inexact-ok
+= compoundn upward m68k96 -0x1.000002p-64 -8526495040805286416LL : 0x1.966cd51ae958b14ap+0 : inexact-ok
+= compoundn downward binary128 -0x1.000002p-64 -8526495040805286416LL : 0x1.966cd51ae958b149df13218c4ad4p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.000002p-64 -8526495040805286416LL : 0x1.966cd51ae958b149df13218c4ad4p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.000002p-64 -8526495040805286416LL : 0x1.966cd51ae958b149df13218c4ad4p+0 : inexact-ok
+= compoundn upward binary128 -0x1.000002p-64 -8526495040805286416LL : 0x1.966cd51ae958b149df13218c4ad5p+0 : inexact-ok
+= compoundn downward ibm128 -0x1.000002p-64 -8526495040805286416LL : 0x1.966cd51ae958b149df13218c4a8p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1.000002p-64 -8526495040805286416LL : 0x1.966cd51ae958b149df13218c4bp+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1.000002p-64 -8526495040805286416LL : 0x1.966cd51ae958b149df13218c4a8p+0 : inexact-ok
+= compoundn upward ibm128 -0x1.000002p-64 -8526495040805286416LL : 0x1.966cd51ae958b149df13218c4bp+0 : inexact-ok
+compoundn 0x1.000002p-32 0x76543210
+= compoundn downward binary32 0x1.000002p-32 1985229328LL : 0x1.966cd4p+0 : inexact-ok
+= compoundn tonearest binary32 0x1.000002p-32 1985229328LL : 0x1.966cd6p+0 : inexact-ok
+= compoundn towardzero binary32 0x1.000002p-32 1985229328LL : 0x1.966cd4p+0 : inexact-ok
+= compoundn upward binary32 0x1.000002p-32 1985229328LL : 0x1.966cd6p+0 : inexact-ok
+= compoundn downward binary64 0x1.000002p-32 1985229328LL : 0x1.966cd519cf8eep+0 : inexact-ok
+= compoundn tonearest binary64 0x1.000002p-32 1985229328LL : 0x1.966cd519cf8efp+0 : inexact-ok
+= compoundn towardzero binary64 0x1.000002p-32 1985229328LL : 0x1.966cd519cf8eep+0 : inexact-ok
+= compoundn upward binary64 0x1.000002p-32 1985229328LL : 0x1.966cd519cf8efp+0 : inexact-ok
+= compoundn downward intel96 0x1.000002p-32 1985229328LL : 0x1.966cd519cf8eee3ap+0 : inexact-ok
+= compoundn tonearest intel96 0x1.000002p-32 1985229328LL : 0x1.966cd519cf8eee3ap+0 : inexact-ok
+= compoundn towardzero intel96 0x1.000002p-32 1985229328LL : 0x1.966cd519cf8eee3ap+0 : inexact-ok
+= compoundn upward intel96 0x1.000002p-32 1985229328LL : 0x1.966cd519cf8eee3cp+0 : inexact-ok
+= compoundn downward m68k96 0x1.000002p-32 1985229328LL : 0x1.966cd519cf8eee3ap+0 : inexact-ok
+= compoundn tonearest m68k96 0x1.000002p-32 1985229328LL : 0x1.966cd519cf8eee3ap+0 : inexact-ok
+= compoundn towardzero m68k96 0x1.000002p-32 1985229328LL : 0x1.966cd519cf8eee3ap+0 : inexact-ok
+= compoundn upward m68k96 0x1.000002p-32 1985229328LL : 0x1.966cd519cf8eee3cp+0 : inexact-ok
+= compoundn downward binary128 0x1.000002p-32 1985229328LL : 0x1.966cd519cf8eee3a36e46974e537p+0 : inexact-ok
+= compoundn tonearest binary128 0x1.000002p-32 1985229328LL : 0x1.966cd519cf8eee3a36e46974e537p+0 : inexact-ok
+= compoundn towardzero binary128 0x1.000002p-32 1985229328LL : 0x1.966cd519cf8eee3a36e46974e537p+0 : inexact-ok
+= compoundn upward binary128 0x1.000002p-32 1985229328LL : 0x1.966cd519cf8eee3a36e46974e538p+0 : inexact-ok
+= compoundn downward ibm128 0x1.000002p-32 1985229328LL : 0x1.966cd519cf8eee3a36e46974e5p+0 : inexact-ok
+= compoundn tonearest ibm128 0x1.000002p-32 1985229328LL : 0x1.966cd519cf8eee3a36e46974e5p+0 : inexact-ok
+= compoundn towardzero ibm128 0x1.000002p-32 1985229328LL : 0x1.966cd519cf8eee3a36e46974e5p+0 : inexact-ok
+= compoundn upward ibm128 0x1.000002p-32 1985229328LL : 0x1.966cd519cf8eee3a36e46974e58p+0 : inexact-ok
+compoundn -0x1.000002p-32 0x76543210
+= compoundn downward binary32 -0x1.000002p-32 1985229328LL : 0xa.13ff7p-4 : inexact-ok
+= compoundn tonearest binary32 -0x1.000002p-32 1985229328LL : 0xa.13ff8p-4 : inexact-ok
+= compoundn towardzero binary32 -0x1.000002p-32 1985229328LL : 0xa.13ff7p-4 : inexact-ok
+= compoundn upward binary32 -0x1.000002p-32 1985229328LL : 0xa.13ff8p-4 : inexact-ok
+= compoundn downward binary64 -0x1.000002p-32 1985229328LL : 0xa.13ff7aa9b8538p-4 : inexact-ok
+= compoundn tonearest binary64 -0x1.000002p-32 1985229328LL : 0xa.13ff7aa9b8538p-4 : inexact-ok
+= compoundn towardzero binary64 -0x1.000002p-32 1985229328LL : 0xa.13ff7aa9b8538p-4 : inexact-ok
+= compoundn upward binary64 -0x1.000002p-32 1985229328LL : 0xa.13ff7aa9b854p-4 : inexact-ok
+= compoundn downward intel96 -0x1.000002p-32 1985229328LL : 0xa.13ff7aa9b853b49p-4 : inexact-ok
+= compoundn tonearest intel96 -0x1.000002p-32 1985229328LL : 0xa.13ff7aa9b853b49p-4 : inexact-ok
+= compoundn towardzero intel96 -0x1.000002p-32 1985229328LL : 0xa.13ff7aa9b853b49p-4 : inexact-ok
+= compoundn upward intel96 -0x1.000002p-32 1985229328LL : 0xa.13ff7aa9b853b4ap-4 : inexact-ok
+= compoundn downward m68k96 -0x1.000002p-32 1985229328LL : 0xa.13ff7aa9b853b49p-4 : inexact-ok
+= compoundn tonearest m68k96 -0x1.000002p-32 1985229328LL : 0xa.13ff7aa9b853b49p-4 : inexact-ok
+= compoundn towardzero m68k96 -0x1.000002p-32 1985229328LL : 0xa.13ff7aa9b853b49p-4 : inexact-ok
+= compoundn upward m68k96 -0x1.000002p-32 1985229328LL : 0xa.13ff7aa9b853b4ap-4 : inexact-ok
+= compoundn downward binary128 -0x1.000002p-32 1985229328LL : 0xa.13ff7aa9b853b495072198b8a5fp-4 : inexact-ok
+= compoundn tonearest binary128 -0x1.000002p-32 1985229328LL : 0xa.13ff7aa9b853b495072198b8a5fp-4 : inexact-ok
+= compoundn towardzero binary128 -0x1.000002p-32 1985229328LL : 0xa.13ff7aa9b853b495072198b8a5fp-4 : inexact-ok
+= compoundn upward binary128 -0x1.000002p-32 1985229328LL : 0xa.13ff7aa9b853b495072198b8a5f8p-4 : inexact-ok
+= compoundn downward ibm128 -0x1.000002p-32 1985229328LL : 0xa.13ff7aa9b853b495072198b8a4p-4 : inexact-ok
+= compoundn tonearest ibm128 -0x1.000002p-32 1985229328LL : 0xa.13ff7aa9b853b495072198b8a4p-4 : inexact-ok
+= compoundn towardzero ibm128 -0x1.000002p-32 1985229328LL : 0xa.13ff7aa9b853b495072198b8a4p-4 : inexact-ok
+= compoundn upward ibm128 -0x1.000002p-32 1985229328LL : 0xa.13ff7aa9b853b495072198b8a8p-4 : inexact-ok
+compoundn 0x1.000002p-32 -0x76543210
+= compoundn downward binary32 0x1.000002p-32 -1985229328LL : 0xa.13ff7p-4 : inexact-ok
+= compoundn tonearest binary32 0x1.000002p-32 -1985229328LL : 0xa.13ff8p-4 : inexact-ok
+= compoundn towardzero binary32 0x1.000002p-32 -1985229328LL : 0xa.13ff7p-4 : inexact-ok
+= compoundn upward binary32 0x1.000002p-32 -1985229328LL : 0xa.13ff8p-4 : inexact-ok
+= compoundn downward binary64 0x1.000002p-32 -1985229328LL : 0xa.13ff7aae60dcp-4 : inexact-ok
+= compoundn tonearest binary64 0x1.000002p-32 -1985229328LL : 0xa.13ff7aae60dcp-4 : inexact-ok
+= compoundn towardzero binary64 0x1.000002p-32 -1985229328LL : 0xa.13ff7aae60dcp-4 : inexact-ok
+= compoundn upward binary64 0x1.000002p-32 -1985229328LL : 0xa.13ff7aae60dc8p-4 : inexact-ok
+= compoundn downward intel96 0x1.000002p-32 -1985229328LL : 0xa.13ff7aae60dc121p-4 : inexact-ok
+= compoundn tonearest intel96 0x1.000002p-32 -1985229328LL : 0xa.13ff7aae60dc122p-4 : inexact-ok
+= compoundn towardzero intel96 0x1.000002p-32 -1985229328LL : 0xa.13ff7aae60dc121p-4 : inexact-ok
+= compoundn upward intel96 0x1.000002p-32 -1985229328LL : 0xa.13ff7aae60dc122p-4 : inexact-ok
+= compoundn downward m68k96 0x1.000002p-32 -1985229328LL : 0xa.13ff7aae60dc121p-4 : inexact-ok
+= compoundn tonearest m68k96 0x1.000002p-32 -1985229328LL : 0xa.13ff7aae60dc122p-4 : inexact-ok
+= compoundn towardzero m68k96 0x1.000002p-32 -1985229328LL : 0xa.13ff7aae60dc121p-4 : inexact-ok
+= compoundn upward m68k96 0x1.000002p-32 -1985229328LL : 0xa.13ff7aae60dc122p-4 : inexact-ok
+= compoundn downward binary128 0x1.000002p-32 -1985229328LL : 0xa.13ff7aae60dc121fdc8f47858c5p-4 : inexact-ok
+= compoundn tonearest binary128 0x1.000002p-32 -1985229328LL : 0xa.13ff7aae60dc121fdc8f47858c5p-4 : inexact-ok
+= compoundn towardzero binary128 0x1.000002p-32 -1985229328LL : 0xa.13ff7aae60dc121fdc8f47858c5p-4 : inexact-ok
+= compoundn upward binary128 0x1.000002p-32 -1985229328LL : 0xa.13ff7aae60dc121fdc8f47858c58p-4 : inexact-ok
+= compoundn downward ibm128 0x1.000002p-32 -1985229328LL : 0xa.13ff7aae60dc121fdc8f47858cp-4 : inexact-ok
+= compoundn tonearest ibm128 0x1.000002p-32 -1985229328LL : 0xa.13ff7aae60dc121fdc8f47858cp-4 : inexact-ok
+= compoundn towardzero ibm128 0x1.000002p-32 -1985229328LL : 0xa.13ff7aae60dc121fdc8f47858cp-4 : inexact-ok
+= compoundn upward ibm128 0x1.000002p-32 -1985229328LL : 0xa.13ff7aae60dc121fdc8f47859p-4 : inexact-ok
+compoundn -0x1.000002p-32 -0x76543210
+= compoundn downward binary32 -0x1.000002p-32 -1985229328LL : 0x1.966cd4p+0 : inexact-ok
+= compoundn tonearest binary32 -0x1.000002p-32 -1985229328LL : 0x1.966cd6p+0 : inexact-ok
+= compoundn towardzero binary32 -0x1.000002p-32 -1985229328LL : 0x1.966cd4p+0 : inexact-ok
+= compoundn upward binary32 -0x1.000002p-32 -1985229328LL : 0x1.966cd6p+0 : inexact-ok
+= compoundn downward binary64 -0x1.000002p-32 -1985229328LL : 0x1.966cd51a8b6acp+0 : inexact-ok
+= compoundn tonearest binary64 -0x1.000002p-32 -1985229328LL : 0x1.966cd51a8b6acp+0 : inexact-ok
+= compoundn towardzero binary64 -0x1.000002p-32 -1985229328LL : 0x1.966cd51a8b6acp+0 : inexact-ok
+= compoundn upward binary64 -0x1.000002p-32 -1985229328LL : 0x1.966cd51a8b6adp+0 : inexact-ok
+= compoundn downward intel96 -0x1.000002p-32 -1985229328LL : 0x1.966cd51a8b6ac694p+0 : inexact-ok
+= compoundn tonearest intel96 -0x1.000002p-32 -1985229328LL : 0x1.966cd51a8b6ac694p+0 : inexact-ok
+= compoundn towardzero intel96 -0x1.000002p-32 -1985229328LL : 0x1.966cd51a8b6ac694p+0 : inexact-ok
+= compoundn upward intel96 -0x1.000002p-32 -1985229328LL : 0x1.966cd51a8b6ac696p+0 : inexact-ok
+= compoundn downward m68k96 -0x1.000002p-32 -1985229328LL : 0x1.966cd51a8b6ac694p+0 : inexact-ok
+= compoundn tonearest m68k96 -0x1.000002p-32 -1985229328LL : 0x1.966cd51a8b6ac694p+0 : inexact-ok
+= compoundn towardzero m68k96 -0x1.000002p-32 -1985229328LL : 0x1.966cd51a8b6ac694p+0 : inexact-ok
+= compoundn upward m68k96 -0x1.000002p-32 -1985229328LL : 0x1.966cd51a8b6ac696p+0 : inexact-ok
+= compoundn downward binary128 -0x1.000002p-32 -1985229328LL : 0x1.966cd51a8b6ac6944c37eba4fda7p+0 : inexact-ok
+= compoundn tonearest binary128 -0x1.000002p-32 -1985229328LL : 0x1.966cd51a8b6ac6944c37eba4fda7p+0 : inexact-ok
+= compoundn towardzero binary128 -0x1.000002p-32 -1985229328LL : 0x1.966cd51a8b6ac6944c37eba4fda7p+0 : inexact-ok
+= compoundn upward binary128 -0x1.000002p-32 -1985229328LL : 0x1.966cd51a8b6ac6944c37eba4fda8p+0 : inexact-ok
+= compoundn downward ibm128 -0x1.000002p-32 -1985229328LL : 0x1.966cd51a8b6ac6944c37eba4fd8p+0 : inexact-ok
+= compoundn tonearest ibm128 -0x1.000002p-32 -1985229328LL : 0x1.966cd51a8b6ac6944c37eba4fd8p+0 : inexact-ok
+= compoundn towardzero ibm128 -0x1.000002p-32 -1985229328LL : 0x1.966cd51a8b6ac6944c37eba4fd8p+0 : inexact-ok
+= compoundn upward ibm128 -0x1.000002p-32 -1985229328LL : 0x1.966cd51a8b6ac6944c37eba4fep+0 : inexact-ok
+compoundn 0x1.000002p-44 0x765432100123
+= compoundn downward binary32 0x1.000002p-44 130103989240099LL : 0x6.5cbb2p+8 : inexact-ok
+= compoundn tonearest binary32 0x1.000002p-44 130103989240099LL : 0x6.5cbb2p+8 : inexact-ok
+= compoundn towardzero binary32 0x1.000002p-44 130103989240099LL : 0x6.5cbb2p+8 : inexact-ok
+= compoundn upward binary32 0x1.000002p-44 130103989240099LL : 0x6.5cbb28p+8 : inexact-ok
+= compoundn downward binary64 0x1.000002p-44 130103989240099LL : 0x6.5cbb201756168p+8 : inexact-ok
+= compoundn tonearest binary64 0x1.000002p-44 130103989240099LL : 0x6.5cbb20175616cp+8 : inexact-ok
+= compoundn towardzero binary64 0x1.000002p-44 130103989240099LL : 0x6.5cbb201756168p+8 : inexact-ok
+= compoundn upward binary64 0x1.000002p-44 130103989240099LL : 0x6.5cbb20175616cp+8 : inexact-ok
+= compoundn downward intel96 0x1.000002p-44 130103989240099LL : 0x6.5cbb20175616ab2p+8 : inexact-ok
+= compoundn tonearest intel96 0x1.000002p-44 130103989240099LL : 0x6.5cbb20175616ab2p+8 : inexact-ok
+= compoundn towardzero intel96 0x1.000002p-44 130103989240099LL : 0x6.5cbb20175616ab2p+8 : inexact-ok
+= compoundn upward intel96 0x1.000002p-44 130103989240099LL : 0x6.5cbb20175616ab28p+8 : inexact-ok
+= compoundn downward m68k96 0x1.000002p-44 130103989240099LL : 0x6.5cbb20175616ab2p+8 : inexact-ok
+= compoundn tonearest m68k96 0x1.000002p-44 130103989240099LL : 0x6.5cbb20175616ab2p+8 : inexact-ok
+= compoundn towardzero m68k96 0x1.000002p-44 130103989240099LL : 0x6.5cbb20175616ab2p+8 : inexact-ok
+= compoundn upward m68k96 0x1.000002p-44 130103989240099LL : 0x6.5cbb20175616ab28p+8 : inexact-ok
+= compoundn downward binary128 0x1.000002p-44 130103989240099LL : 0x6.5cbb20175616ab20c385fcc97d5p+8 : inexact-ok
+= compoundn tonearest binary128 0x1.000002p-44 130103989240099LL : 0x6.5cbb20175616ab20c385fcc97d54p+8 : inexact-ok
+= compoundn towardzero binary128 0x1.000002p-44 130103989240099LL : 0x6.5cbb20175616ab20c385fcc97d5p+8 : inexact-ok
+= compoundn upward binary128 0x1.000002p-44 130103989240099LL : 0x6.5cbb20175616ab20c385fcc97d54p+8 : inexact-ok
+= compoundn downward ibm128 0x1.000002p-44 130103989240099LL : 0x6.5cbb20175616ab20c385fcc97cp+8 : inexact-ok
+= compoundn tonearest ibm128 0x1.000002p-44 130103989240099LL : 0x6.5cbb20175616ab20c385fcc97ep+8 : inexact-ok
+= compoundn towardzero ibm128 0x1.000002p-44 130103989240099LL : 0x6.5cbb20175616ab20c385fcc97cp+8 : inexact-ok
+= compoundn upward ibm128 0x1.000002p-44 130103989240099LL : 0x6.5cbb20175616ab20c385fcc97ep+8 : inexact-ok
+compoundn -0x1.000002p-44 0x765432100123
+= compoundn downward binary32 -0x1.000002p-44 130103989240099LL : 0x2.83cca4p-12 : inexact-ok
+= compoundn tonearest binary32 -0x1.000002p-44 130103989240099LL : 0x2.83cca4p-12 : inexact-ok
+= compoundn towardzero binary32 -0x1.000002p-44 130103989240099LL : 0x2.83cca4p-12 : inexact-ok
+= compoundn upward binary32 -0x1.000002p-44 130103989240099LL : 0x2.83cca8p-12 : inexact-ok
+= compoundn downward binary64 -0x1.000002p-44 130103989240099LL : 0x2.83cca4ec6167ap-12 : inexact-ok
+= compoundn tonearest binary64 -0x1.000002p-44 130103989240099LL : 0x2.83cca4ec6167cp-12 : inexact-ok
+= compoundn towardzero binary64 -0x1.000002p-44 130103989240099LL : 0x2.83cca4ec6167ap-12 : inexact-ok
+= compoundn upward binary64 -0x1.000002p-44 130103989240099LL : 0x2.83cca4ec6167cp-12 : inexact-ok
+= compoundn downward intel96 -0x1.000002p-44 130103989240099LL : 0x2.83cca4ec6167b324p-12 : inexact-ok
+= compoundn tonearest intel96 -0x1.000002p-44 130103989240099LL : 0x2.83cca4ec6167b324p-12 : inexact-ok
+= compoundn towardzero intel96 -0x1.000002p-44 130103989240099LL : 0x2.83cca4ec6167b324p-12 : inexact-ok
+= compoundn upward intel96 -0x1.000002p-44 130103989240099LL : 0x2.83cca4ec6167b328p-12 : inexact-ok
+= compoundn downward m68k96 -0x1.000002p-44 130103989240099LL : 0x2.83cca4ec6167b324p-12 : inexact-ok
+= compoundn tonearest m68k96 -0x1.000002p-44 130103989240099LL : 0x2.83cca4ec6167b324p-12 : inexact-ok
+= compoundn towardzero m68k96 -0x1.000002p-44 130103989240099LL : 0x2.83cca4ec6167b324p-12 : inexact-ok
+= compoundn upward m68k96 -0x1.000002p-44 130103989240099LL : 0x2.83cca4ec6167b328p-12 : inexact-ok
+= compoundn downward binary128 -0x1.000002p-44 130103989240099LL : 0x2.83cca4ec6167b324d2ade03a5568p-12 : inexact-ok
+= compoundn tonearest binary128 -0x1.000002p-44 130103989240099LL : 0x2.83cca4ec6167b324d2ade03a5568p-12 : inexact-ok
+= compoundn towardzero binary128 -0x1.000002p-44 130103989240099LL : 0x2.83cca4ec6167b324d2ade03a5568p-12 : inexact-ok
+= compoundn upward binary128 -0x1.000002p-44 130103989240099LL : 0x2.83cca4ec6167b324d2ade03a556ap-12 : inexact-ok
+= compoundn downward ibm128 -0x1.000002p-44 130103989240099LL : 0x2.83cca4ec6167b324d2ade03a55p-12 : inexact-ok
+= compoundn tonearest ibm128 -0x1.000002p-44 130103989240099LL : 0x2.83cca4ec6167b324d2ade03a55p-12 : inexact-ok
+= compoundn towardzero ibm128 -0x1.000002p-44 130103989240099LL : 0x2.83cca4ec6167b324d2ade03a55p-12 : inexact-ok
+= compoundn upward ibm128 -0x1.000002p-44 130103989240099LL : 0x2.83cca4ec6167b324d2ade03a56p-12 : inexact-ok
+compoundn 0x1.000002p-44 -0x765432100123
+= compoundn downward binary32 0x1.000002p-44 -130103989240099LL : 0x2.83cca4p-12 : inexact-ok
+= compoundn tonearest binary32 0x1.000002p-44 -130103989240099LL : 0x2.83cca4p-12 : inexact-ok
+= compoundn towardzero binary32 0x1.000002p-44 -130103989240099LL : 0x2.83cca4p-12 : inexact-ok
+= compoundn upward binary32 0x1.000002p-44 -130103989240099LL : 0x2.83cca8p-12 : inexact-ok
+= compoundn downward binary64 0x1.000002p-44 -130103989240099LL : 0x2.83cca4ec62914p-12 : inexact-ok
+= compoundn tonearest binary64 0x1.000002p-44 -130103989240099LL : 0x2.83cca4ec62914p-12 : inexact-ok
+= compoundn towardzero binary64 0x1.000002p-44 -130103989240099LL : 0x2.83cca4ec62914p-12 : inexact-ok
+= compoundn upward binary64 0x1.000002p-44 -130103989240099LL : 0x2.83cca4ec62916p-12 : inexact-ok
+= compoundn downward intel96 0x1.000002p-44 -130103989240099LL : 0x2.83cca4ec62914738p-12 : inexact-ok
+= compoundn tonearest intel96 0x1.000002p-44 -130103989240099LL : 0x2.83cca4ec6291473cp-12 : inexact-ok
+= compoundn towardzero intel96 0x1.000002p-44 -130103989240099LL : 0x2.83cca4ec62914738p-12 : inexact-ok
+= compoundn upward intel96 0x1.000002p-44 -130103989240099LL : 0x2.83cca4ec6291473cp-12 : inexact-ok
+= compoundn downward m68k96 0x1.000002p-44 -130103989240099LL : 0x2.83cca4ec62914738p-12 : inexact-ok
+= compoundn tonearest m68k96 0x1.000002p-44 -130103989240099LL : 0x2.83cca4ec6291473cp-12 : inexact-ok
+= compoundn towardzero m68k96 0x1.000002p-44 -130103989240099LL : 0x2.83cca4ec62914738p-12 : inexact-ok
+= compoundn upward m68k96 0x1.000002p-44 -130103989240099LL : 0x2.83cca4ec6291473cp-12 : inexact-ok
+= compoundn downward binary128 0x1.000002p-44 -130103989240099LL : 0x2.83cca4ec6291473a8a48bff9e5fep-12 : inexact-ok
+= compoundn tonearest binary128 0x1.000002p-44 -130103989240099LL : 0x2.83cca4ec6291473a8a48bff9e5fep-12 : inexact-ok
+= compoundn towardzero binary128 0x1.000002p-44 -130103989240099LL : 0x2.83cca4ec6291473a8a48bff9e5fep-12 : inexact-ok
+= compoundn upward binary128 0x1.000002p-44 -130103989240099LL : 0x2.83cca4ec6291473a8a48bff9e6p-12 : inexact-ok
+= compoundn downward ibm128 0x1.000002p-44 -130103989240099LL : 0x2.83cca4ec6291473a8a48bff9e5p-12 : inexact-ok
+= compoundn tonearest ibm128 0x1.000002p-44 -130103989240099LL : 0x2.83cca4ec6291473a8a48bff9e6p-12 : inexact-ok
+= compoundn towardzero ibm128 0x1.000002p-44 -130103989240099LL : 0x2.83cca4ec6291473a8a48bff9e5p-12 : inexact-ok
+= compoundn upward ibm128 0x1.000002p-44 -130103989240099LL : 0x2.83cca4ec6291473a8a48bff9e6p-12 : inexact-ok
+compoundn -0x1.000002p-44 -0x765432100123
+= compoundn downward binary32 -0x1.000002p-44 -130103989240099LL : 0x6.5cbb2p+8 : inexact-ok
+= compoundn tonearest binary32 -0x1.000002p-44 -130103989240099LL : 0x6.5cbb2p+8 : inexact-ok
+= compoundn towardzero binary32 -0x1.000002p-44 -130103989240099LL : 0x6.5cbb2p+8 : inexact-ok
+= compoundn upward binary32 -0x1.000002p-44 -130103989240099LL : 0x6.5cbb28p+8 : inexact-ok
+= compoundn downward binary64 -0x1.000002p-44 -130103989240099LL : 0x6.5cbb201759078p+8 : inexact-ok
+= compoundn tonearest binary64 -0x1.000002p-44 -130103989240099LL : 0x6.5cbb201759078p+8 : inexact-ok
+= compoundn towardzero binary64 -0x1.000002p-44 -130103989240099LL : 0x6.5cbb201759078p+8 : inexact-ok
+= compoundn upward binary64 -0x1.000002p-44 -130103989240099LL : 0x6.5cbb20175907cp+8 : inexact-ok
+= compoundn downward intel96 -0x1.000002p-44 -130103989240099LL : 0x6.5cbb201759078118p+8 : inexact-ok
+= compoundn tonearest intel96 -0x1.000002p-44 -130103989240099LL : 0x6.5cbb201759078118p+8 : inexact-ok
+= compoundn towardzero intel96 -0x1.000002p-44 -130103989240099LL : 0x6.5cbb201759078118p+8 : inexact-ok
+= compoundn upward intel96 -0x1.000002p-44 -130103989240099LL : 0x6.5cbb20175907812p+8 : inexact-ok
+= compoundn downward m68k96 -0x1.000002p-44 -130103989240099LL : 0x6.5cbb201759078118p+8 : inexact-ok
+= compoundn tonearest m68k96 -0x1.000002p-44 -130103989240099LL : 0x6.5cbb201759078118p+8 : inexact-ok
+= compoundn towardzero m68k96 -0x1.000002p-44 -130103989240099LL : 0x6.5cbb201759078118p+8 : inexact-ok
+= compoundn upward m68k96 -0x1.000002p-44 -130103989240099LL : 0x6.5cbb20175907812p+8 : inexact-ok
+= compoundn downward binary128 -0x1.000002p-44 -130103989240099LL : 0x6.5cbb2017590781193a86f203e364p+8 : inexact-ok
+= compoundn tonearest binary128 -0x1.000002p-44 -130103989240099LL : 0x6.5cbb2017590781193a86f203e364p+8 : inexact-ok
+= compoundn towardzero binary128 -0x1.000002p-44 -130103989240099LL : 0x6.5cbb2017590781193a86f203e364p+8 : inexact-ok
+= compoundn upward binary128 -0x1.000002p-44 -130103989240099LL : 0x6.5cbb2017590781193a86f203e368p+8 : inexact-ok
+= compoundn downward ibm128 -0x1.000002p-44 -130103989240099LL : 0x6.5cbb2017590781193a86f203e2p+8 : inexact-ok
+= compoundn tonearest ibm128 -0x1.000002p-44 -130103989240099LL : 0x6.5cbb2017590781193a86f203e4p+8 : inexact-ok
+= compoundn towardzero ibm128 -0x1.000002p-44 -130103989240099LL : 0x6.5cbb2017590781193a86f203e2p+8 : inexact-ok
+= compoundn upward ibm128 -0x1.000002p-44 -130103989240099LL : 0x6.5cbb2017590781193a86f203e4p+8 : inexact-ok
+compoundn 0x1.000002p-12 0x7654
+= compoundn downward binary32 0x1.000002p-12 30292LL : 0x6.5b2f08p+8 : inexact-ok
+= compoundn tonearest binary32 0x1.000002p-12 30292LL : 0x6.5b2f1p+8 : inexact-ok
+= compoundn towardzero binary32 0x1.000002p-12 30292LL : 0x6.5b2f08p+8 : inexact-ok
+= compoundn upward binary32 0x1.000002p-12 30292LL : 0x6.5b2f1p+8 : inexact-ok
+= compoundn downward binary64 0x1.000002p-12 30292LL : 0x6.5b2f0d72f2f1cp+8 : inexact-ok
+= compoundn tonearest binary64 0x1.000002p-12 30292LL : 0x6.5b2f0d72f2f1cp+8 : inexact-ok
+= compoundn towardzero binary64 0x1.000002p-12 30292LL : 0x6.5b2f0d72f2f1cp+8 : inexact-ok
+= compoundn upward binary64 0x1.000002p-12 30292LL : 0x6.5b2f0d72f2f2p+8 : inexact-ok
+= compoundn downward intel96 0x1.000002p-12 30292LL : 0x6.5b2f0d72f2f1c8ep+8 : inexact-ok
+= compoundn tonearest intel96 0x1.000002p-12 30292LL : 0x6.5b2f0d72f2f1c8e8p+8 : inexact-ok
+= compoundn towardzero intel96 0x1.000002p-12 30292LL : 0x6.5b2f0d72f2f1c8ep+8 : inexact-ok
+= compoundn upward intel96 0x1.000002p-12 30292LL : 0x6.5b2f0d72f2f1c8e8p+8 : inexact-ok
+= compoundn downward m68k96 0x1.000002p-12 30292LL : 0x6.5b2f0d72f2f1c8ep+8 : inexact-ok
+= compoundn tonearest m68k96 0x1.000002p-12 30292LL : 0x6.5b2f0d72f2f1c8e8p+8 : inexact-ok
+= compoundn towardzero m68k96 0x1.000002p-12 30292LL : 0x6.5b2f0d72f2f1c8ep+8 : inexact-ok
+= compoundn upward m68k96 0x1.000002p-12 30292LL : 0x6.5b2f0d72f2f1c8e8p+8 : inexact-ok
+= compoundn downward binary128 0x1.000002p-12 30292LL : 0x6.5b2f0d72f2f1c8e461c4a0d1dc58p+8 : inexact-ok
+= compoundn tonearest binary128 0x1.000002p-12 30292LL : 0x6.5b2f0d72f2f1c8e461c4a0d1dc58p+8 : inexact-ok
+= compoundn towardzero binary128 0x1.000002p-12 30292LL : 0x6.5b2f0d72f2f1c8e461c4a0d1dc58p+8 : inexact-ok
+= compoundn upward binary128 0x1.000002p-12 30292LL : 0x6.5b2f0d72f2f1c8e461c4a0d1dc5cp+8 : inexact-ok
+= compoundn downward ibm128 0x1.000002p-12 30292LL : 0x6.5b2f0d72f2f1c8e461c4a0d1dcp+8 : inexact-ok
+= compoundn tonearest ibm128 0x1.000002p-12 30292LL : 0x6.5b2f0d72f2f1c8e461c4a0d1dcp+8 : inexact-ok
+= compoundn towardzero ibm128 0x1.000002p-12 30292LL : 0x6.5b2f0d72f2f1c8e461c4a0d1dcp+8 : inexact-ok
+= compoundn upward ibm128 0x1.000002p-12 30292LL : 0x6.5b2f0d72f2f1c8e461c4a0d1dep+8 : inexact-ok
+compoundn -0x1.000002p-12 0x7654
+= compoundn downward binary32 -0x1.000002p-12 30292LL : 0x2.833fcp-12 : inexact-ok
+= compoundn tonearest binary32 -0x1.000002p-12 30292LL : 0x2.833fc4p-12 : inexact-ok
+= compoundn towardzero binary32 -0x1.000002p-12 30292LL : 0x2.833fcp-12 : inexact-ok
+= compoundn upward binary32 -0x1.000002p-12 30292LL : 0x2.833fc4p-12 : inexact-ok
+= compoundn downward binary64 -0x1.000002p-12 30292LL : 0x2.833fc2bd1e49ap-12 : inexact-ok
+= compoundn tonearest binary64 -0x1.000002p-12 30292LL : 0x2.833fc2bd1e49ap-12 : inexact-ok
+= compoundn towardzero binary64 -0x1.000002p-12 30292LL : 0x2.833fc2bd1e49ap-12 : inexact-ok
+= compoundn upward binary64 -0x1.000002p-12 30292LL : 0x2.833fc2bd1e49cp-12 : inexact-ok
+= compoundn downward intel96 -0x1.000002p-12 30292LL : 0x2.833fc2bd1e49a6d8p-12 : inexact-ok
+= compoundn tonearest intel96 -0x1.000002p-12 30292LL : 0x2.833fc2bd1e49a6d8p-12 : inexact-ok
+= compoundn towardzero intel96 -0x1.000002p-12 30292LL : 0x2.833fc2bd1e49a6d8p-12 : inexact-ok
+= compoundn upward intel96 -0x1.000002p-12 30292LL : 0x2.833fc2bd1e49a6dcp-12 : inexact-ok
+= compoundn downward m68k96 -0x1.000002p-12 30292LL : 0x2.833fc2bd1e49a6d8p-12 : inexact-ok
+= compoundn tonearest m68k96 -0x1.000002p-12 30292LL : 0x2.833fc2bd1e49a6d8p-12 : inexact-ok
+= compoundn towardzero m68k96 -0x1.000002p-12 30292LL : 0x2.833fc2bd1e49a6d8p-12 : inexact-ok
+= compoundn upward m68k96 -0x1.000002p-12 30292LL : 0x2.833fc2bd1e49a6dcp-12 : inexact-ok
+= compoundn downward binary128 -0x1.000002p-12 30292LL : 0x2.833fc2bd1e49a6d980dc669946cap-12 : inexact-ok
+= compoundn tonearest binary128 -0x1.000002p-12 30292LL : 0x2.833fc2bd1e49a6d980dc669946cap-12 : inexact-ok
+= compoundn towardzero binary128 -0x1.000002p-12 30292LL : 0x2.833fc2bd1e49a6d980dc669946cap-12 : inexact-ok
+= compoundn upward binary128 -0x1.000002p-12 30292LL : 0x2.833fc2bd1e49a6d980dc669946ccp-12 : inexact-ok
+= compoundn downward ibm128 -0x1.000002p-12 30292LL : 0x2.833fc2bd1e49a6d980dc669946p-12 : inexact-ok
+= compoundn tonearest ibm128 -0x1.000002p-12 30292LL : 0x2.833fc2bd1e49a6d980dc669947p-12 : inexact-ok
+= compoundn towardzero ibm128 -0x1.000002p-12 30292LL : 0x2.833fc2bd1e49a6d980dc669946p-12 : inexact-ok
+= compoundn upward ibm128 -0x1.000002p-12 30292LL : 0x2.833fc2bd1e49a6d980dc669947p-12 : inexact-ok
+compoundn 0x1.000002p-12 -0x7654
+= compoundn downward binary32 0x1.000002p-12 -30292LL : 0x2.846958p-12 : inexact-ok
+= compoundn tonearest binary32 0x1.000002p-12 -30292LL : 0x2.846958p-12 : inexact-ok
+= compoundn towardzero binary32 0x1.000002p-12 -30292LL : 0x2.846958p-12 : inexact-ok
+= compoundn upward binary32 0x1.000002p-12 -30292LL : 0x2.84695cp-12 : inexact-ok
+= compoundn downward binary64 0x1.000002p-12 -30292LL : 0x2.846959f869a2ap-12 : inexact-ok
+= compoundn tonearest binary64 0x1.000002p-12 -30292LL : 0x2.846959f869a2ap-12 : inexact-ok
+= compoundn towardzero binary64 0x1.000002p-12 -30292LL : 0x2.846959f869a2ap-12 : inexact-ok
+= compoundn upward binary64 0x1.000002p-12 -30292LL : 0x2.846959f869a2cp-12 : inexact-ok
+= compoundn downward intel96 0x1.000002p-12 -30292LL : 0x2.846959f869a2a608p-12 : inexact-ok
+= compoundn tonearest intel96 0x1.000002p-12 -30292LL : 0x2.846959f869a2a608p-12 : inexact-ok
+= compoundn towardzero intel96 0x1.000002p-12 -30292LL : 0x2.846959f869a2a608p-12 : inexact-ok
+= compoundn upward intel96 0x1.000002p-12 -30292LL : 0x2.846959f869a2a60cp-12 : inexact-ok
+= compoundn downward m68k96 0x1.000002p-12 -30292LL : 0x2.846959f869a2a608p-12 : inexact-ok
+= compoundn tonearest m68k96 0x1.000002p-12 -30292LL : 0x2.846959f869a2a608p-12 : inexact-ok
+= compoundn towardzero m68k96 0x1.000002p-12 -30292LL : 0x2.846959f869a2a608p-12 : inexact-ok
+= compoundn upward m68k96 0x1.000002p-12 -30292LL : 0x2.846959f869a2a60cp-12 : inexact-ok
+= compoundn downward binary128 0x1.000002p-12 -30292LL : 0x2.846959f869a2a6090be2c195b78p-12 : inexact-ok
+= compoundn tonearest binary128 0x1.000002p-12 -30292LL : 0x2.846959f869a2a6090be2c195b782p-12 : inexact-ok
+= compoundn towardzero binary128 0x1.000002p-12 -30292LL : 0x2.846959f869a2a6090be2c195b78p-12 : inexact-ok
+= compoundn upward binary128 0x1.000002p-12 -30292LL : 0x2.846959f869a2a6090be2c195b782p-12 : inexact-ok
+= compoundn downward ibm128 0x1.000002p-12 -30292LL : 0x2.846959f869a2a6090be2c195b7p-12 : inexact-ok
+= compoundn tonearest ibm128 0x1.000002p-12 -30292LL : 0x2.846959f869a2a6090be2c195b8p-12 : inexact-ok
+= compoundn towardzero ibm128 0x1.000002p-12 -30292LL : 0x2.846959f869a2a6090be2c195b7p-12 : inexact-ok
+= compoundn upward ibm128 0x1.000002p-12 -30292LL : 0x2.846959f869a2a6090be2c195b8p-12 : inexact-ok
+compoundn -0x1.000002p-12 -0x7654
+= compoundn downward binary32 -0x1.000002p-12 -30292LL : 0x6.5e1fd8p+8 : inexact-ok
+= compoundn tonearest binary32 -0x1.000002p-12 -30292LL : 0x6.5e1fd8p+8 : inexact-ok
+= compoundn towardzero binary32 -0x1.000002p-12 -30292LL : 0x6.5e1fd8p+8 : inexact-ok
+= compoundn upward binary32 -0x1.000002p-12 -30292LL : 0x6.5e1fep+8 : inexact-ok
+= compoundn downward binary64 -0x1.000002p-12 -30292LL : 0x6.5e1fd908d7c78p+8 : inexact-ok
+= compoundn tonearest binary64 -0x1.000002p-12 -30292LL : 0x6.5e1fd908d7c78p+8 : inexact-ok
+= compoundn towardzero binary64 -0x1.000002p-12 -30292LL : 0x6.5e1fd908d7c78p+8 : inexact-ok
+= compoundn upward binary64 -0x1.000002p-12 -30292LL : 0x6.5e1fd908d7c7cp+8 : inexact-ok
+= compoundn downward intel96 -0x1.000002p-12 -30292LL : 0x6.5e1fd908d7c78fa8p+8 : inexact-ok
+= compoundn tonearest intel96 -0x1.000002p-12 -30292LL : 0x6.5e1fd908d7c78fbp+8 : inexact-ok
+= compoundn towardzero intel96 -0x1.000002p-12 -30292LL : 0x6.5e1fd908d7c78fa8p+8 : inexact-ok
+= compoundn upward intel96 -0x1.000002p-12 -30292LL : 0x6.5e1fd908d7c78fbp+8 : inexact-ok
+= compoundn downward m68k96 -0x1.000002p-12 -30292LL : 0x6.5e1fd908d7c78fa8p+8 : inexact-ok
+= compoundn tonearest m68k96 -0x1.000002p-12 -30292LL : 0x6.5e1fd908d7c78fbp+8 : inexact-ok
+= compoundn towardzero m68k96 -0x1.000002p-12 -30292LL : 0x6.5e1fd908d7c78fa8p+8 : inexact-ok
+= compoundn upward m68k96 -0x1.000002p-12 -30292LL : 0x6.5e1fd908d7c78fbp+8 : inexact-ok
+= compoundn downward binary128 -0x1.000002p-12 -30292LL : 0x6.5e1fd908d7c78fadcd0318c3d9p+8 : inexact-ok
+= compoundn tonearest binary128 -0x1.000002p-12 -30292LL : 0x6.5e1fd908d7c78fadcd0318c3d904p+8 : inexact-ok
+= compoundn towardzero binary128 -0x1.000002p-12 -30292LL : 0x6.5e1fd908d7c78fadcd0318c3d9p+8 : inexact-ok
+= compoundn upward binary128 -0x1.000002p-12 -30292LL : 0x6.5e1fd908d7c78fadcd0318c3d904p+8 : inexact-ok
+= compoundn downward ibm128 -0x1.000002p-12 -30292LL : 0x6.5e1fd908d7c78fadcd0318c3d8p+8 : inexact-ok
+= compoundn tonearest ibm128 -0x1.000002p-12 -30292LL : 0x6.5e1fd908d7c78fadcd0318c3dap+8 : inexact-ok
+= compoundn towardzero ibm128 -0x1.000002p-12 -30292LL : 0x6.5e1fd908d7c78fadcd0318c3d8p+8 : inexact-ok
+= compoundn upward ibm128 -0x1.000002p-12 -30292LL : 0x6.5e1fd908d7c78fadcd0318c3dap+8 : inexact-ok
diff --git a/math/auto-libm-test-out-pown b/math/auto-libm-test-out-pown
index 5027062..4b85b43 100644
--- a/math/auto-libm-test-out-pown
+++ b/math/auto-libm-test-out-pown
@@ -823,31 +823,31 @@ pown -0 0x3ffffffffffffe
= pown tonearest ibm128 -0x0p+0 18014398509481982LL : 0x0p+0 : inexact-ok
= pown towardzero ibm128 -0x0p+0 18014398509481982LL : 0x0p+0 : inexact-ok
= pown upward ibm128 -0x0p+0 18014398509481982LL : 0x0p+0 : inexact-ok
-pown -0 0x7fffffffffffffff
-= pown downward binary32 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+pown -0 0x7fffffffffffffff xfail-rounding:ibm128-libgcc
+= pown downward binary32 -0x0p+0 9223372036854775807LL : -0x0p+0 : xfail:ibm128-libgcc inexact-ok
= pown tonearest binary32 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
-= pown towardzero binary32 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
-= pown upward binary32 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
-= pown downward binary64 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= pown towardzero binary32 -0x0p+0 9223372036854775807LL : -0x0p+0 : xfail:ibm128-libgcc inexact-ok
+= pown upward binary32 -0x0p+0 9223372036854775807LL : -0x0p+0 : xfail:ibm128-libgcc inexact-ok
+= pown downward binary64 -0x0p+0 9223372036854775807LL : -0x0p+0 : xfail:ibm128-libgcc inexact-ok
= pown tonearest binary64 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
-= pown towardzero binary64 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
-= pown upward binary64 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
-= pown downward intel96 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= pown towardzero binary64 -0x0p+0 9223372036854775807LL : -0x0p+0 : xfail:ibm128-libgcc inexact-ok
+= pown upward binary64 -0x0p+0 9223372036854775807LL : -0x0p+0 : xfail:ibm128-libgcc inexact-ok
+= pown downward intel96 -0x0p+0 9223372036854775807LL : -0x0p+0 : xfail:ibm128-libgcc inexact-ok
= pown tonearest intel96 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
-= pown towardzero intel96 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
-= pown upward intel96 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
-= pown downward m68k96 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= pown towardzero intel96 -0x0p+0 9223372036854775807LL : -0x0p+0 : xfail:ibm128-libgcc inexact-ok
+= pown upward intel96 -0x0p+0 9223372036854775807LL : -0x0p+0 : xfail:ibm128-libgcc inexact-ok
+= pown downward m68k96 -0x0p+0 9223372036854775807LL : -0x0p+0 : xfail:ibm128-libgcc inexact-ok
= pown tonearest m68k96 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
-= pown towardzero m68k96 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
-= pown upward m68k96 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
-= pown downward binary128 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= pown towardzero m68k96 -0x0p+0 9223372036854775807LL : -0x0p+0 : xfail:ibm128-libgcc inexact-ok
+= pown upward m68k96 -0x0p+0 9223372036854775807LL : -0x0p+0 : xfail:ibm128-libgcc inexact-ok
+= pown downward binary128 -0x0p+0 9223372036854775807LL : -0x0p+0 : xfail:ibm128-libgcc inexact-ok
= pown tonearest binary128 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
-= pown towardzero binary128 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
-= pown upward binary128 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
-= pown downward ibm128 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= pown towardzero binary128 -0x0p+0 9223372036854775807LL : -0x0p+0 : xfail:ibm128-libgcc inexact-ok
+= pown upward binary128 -0x0p+0 9223372036854775807LL : -0x0p+0 : xfail:ibm128-libgcc inexact-ok
+= pown downward ibm128 -0x0p+0 9223372036854775807LL : -0x0p+0 : xfail:ibm128-libgcc inexact-ok
= pown tonearest ibm128 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
-= pown towardzero ibm128 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
-= pown upward ibm128 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= pown towardzero ibm128 -0x0p+0 9223372036854775807LL : -0x0p+0 : xfail:ibm128-libgcc inexact-ok
+= pown upward ibm128 -0x0p+0 9223372036854775807LL : -0x0p+0 : xfail:ibm128-libgcc inexact-ok
pown 0.0 4
= pown downward binary32 0x0p+0 4LL : 0x0p+0 : inexact-ok
= pown tonearest binary32 0x0p+0 4LL : 0x0p+0 : inexact-ok
@@ -1098,31 +1098,31 @@ pown -1.0 -0x3ffffffffffffe
= pown tonearest ibm128 -0x1p+0 -18014398509481982LL : 0x1p+0 : inexact-ok
= pown towardzero ibm128 -0x1p+0 -18014398509481982LL : 0x1p+0 : inexact-ok
= pown upward ibm128 -0x1p+0 -18014398509481982LL : 0x1p+0 : inexact-ok
-pown -1.0 -0x7fffffffffffffff
-= pown downward binary32 -0x1p+0 -9223372036854775807LL : -0x1p+0 : inexact-ok
+pown -1.0 -0x7fffffffffffffff xfail-rounding:ibm128-libgcc
+= pown downward binary32 -0x1p+0 -9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
= pown tonearest binary32 -0x1p+0 -9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown towardzero binary32 -0x1p+0 -9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown upward binary32 -0x1p+0 -9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown downward binary64 -0x1p+0 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= pown towardzero binary32 -0x1p+0 -9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
+= pown upward binary32 -0x1p+0 -9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
+= pown downward binary64 -0x1p+0 -9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
= pown tonearest binary64 -0x1p+0 -9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown towardzero binary64 -0x1p+0 -9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown upward binary64 -0x1p+0 -9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown downward intel96 -0x1p+0 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= pown towardzero binary64 -0x1p+0 -9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
+= pown upward binary64 -0x1p+0 -9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
+= pown downward intel96 -0x1p+0 -9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
= pown tonearest intel96 -0x1p+0 -9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown towardzero intel96 -0x1p+0 -9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown upward intel96 -0x1p+0 -9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown downward m68k96 -0x1p+0 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= pown towardzero intel96 -0x1p+0 -9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
+= pown upward intel96 -0x1p+0 -9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
+= pown downward m68k96 -0x1p+0 -9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
= pown tonearest m68k96 -0x1p+0 -9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown towardzero m68k96 -0x1p+0 -9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown upward m68k96 -0x1p+0 -9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown downward binary128 -0x1p+0 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= pown towardzero m68k96 -0x1p+0 -9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
+= pown upward m68k96 -0x1p+0 -9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
+= pown downward binary128 -0x1p+0 -9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
= pown tonearest binary128 -0x1p+0 -9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown towardzero binary128 -0x1p+0 -9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown upward binary128 -0x1p+0 -9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown downward ibm128 -0x1p+0 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= pown towardzero binary128 -0x1p+0 -9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
+= pown upward binary128 -0x1p+0 -9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
+= pown downward ibm128 -0x1p+0 -9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
= pown tonearest ibm128 -0x1p+0 -9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown towardzero ibm128 -0x1p+0 -9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown upward ibm128 -0x1p+0 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= pown towardzero ibm128 -0x1p+0 -9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
+= pown upward ibm128 -0x1p+0 -9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
pown -1.0 0xffffff
= pown downward binary32 -0x1p+0 16777215LL : -0x1p+0 : inexact-ok
= pown tonearest binary32 -0x1p+0 16777215LL : -0x1p+0 : inexact-ok
@@ -1223,31 +1223,31 @@ pown -1.0 0x3ffffffffffffe
= pown tonearest ibm128 -0x1p+0 18014398509481982LL : 0x1p+0 : inexact-ok
= pown towardzero ibm128 -0x1p+0 18014398509481982LL : 0x1p+0 : inexact-ok
= pown upward ibm128 -0x1p+0 18014398509481982LL : 0x1p+0 : inexact-ok
-pown -1.0 0x7fffffffffffffff
-= pown downward binary32 -0x1p+0 9223372036854775807LL : -0x1p+0 : inexact-ok
+pown -1.0 0x7fffffffffffffff xfail-rounding:ibm128-libgcc
+= pown downward binary32 -0x1p+0 9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
= pown tonearest binary32 -0x1p+0 9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown towardzero binary32 -0x1p+0 9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown upward binary32 -0x1p+0 9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown downward binary64 -0x1p+0 9223372036854775807LL : -0x1p+0 : inexact-ok
+= pown towardzero binary32 -0x1p+0 9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
+= pown upward binary32 -0x1p+0 9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
+= pown downward binary64 -0x1p+0 9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
= pown tonearest binary64 -0x1p+0 9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown towardzero binary64 -0x1p+0 9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown upward binary64 -0x1p+0 9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown downward intel96 -0x1p+0 9223372036854775807LL : -0x1p+0 : inexact-ok
+= pown towardzero binary64 -0x1p+0 9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
+= pown upward binary64 -0x1p+0 9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
+= pown downward intel96 -0x1p+0 9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
= pown tonearest intel96 -0x1p+0 9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown towardzero intel96 -0x1p+0 9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown upward intel96 -0x1p+0 9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown downward m68k96 -0x1p+0 9223372036854775807LL : -0x1p+0 : inexact-ok
+= pown towardzero intel96 -0x1p+0 9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
+= pown upward intel96 -0x1p+0 9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
+= pown downward m68k96 -0x1p+0 9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
= pown tonearest m68k96 -0x1p+0 9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown towardzero m68k96 -0x1p+0 9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown upward m68k96 -0x1p+0 9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown downward binary128 -0x1p+0 9223372036854775807LL : -0x1p+0 : inexact-ok
+= pown towardzero m68k96 -0x1p+0 9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
+= pown upward m68k96 -0x1p+0 9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
+= pown downward binary128 -0x1p+0 9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
= pown tonearest binary128 -0x1p+0 9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown towardzero binary128 -0x1p+0 9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown upward binary128 -0x1p+0 9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown downward ibm128 -0x1p+0 9223372036854775807LL : -0x1p+0 : inexact-ok
+= pown towardzero binary128 -0x1p+0 9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
+= pown upward binary128 -0x1p+0 9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
+= pown downward ibm128 -0x1p+0 9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
= pown tonearest ibm128 -0x1p+0 9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown towardzero ibm128 -0x1p+0 9223372036854775807LL : -0x1p+0 : inexact-ok
-= pown upward ibm128 -0x1p+0 9223372036854775807LL : -0x1p+0 : inexact-ok
+= pown towardzero ibm128 -0x1p+0 9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
+= pown upward ibm128 -0x1p+0 9223372036854775807LL : -0x1p+0 : xfail:ibm128-libgcc inexact-ok
pown -2.0 126
= pown downward binary32 -0x2p+0 126LL : 0x4p+124 : inexact-ok
= pown tonearest binary32 -0x2p+0 126LL : 0x4p+124 : inexact-ok
diff --git a/math/auto-libm-test-out-rootn b/math/auto-libm-test-out-rootn
new file mode 100644
index 0000000..58f8c35
--- /dev/null
+++ b/math/auto-libm-test-out-rootn
@@ -0,0 +1,13734 @@
+rootn 0 1
+= rootn downward binary32 0x0p+0 1LL : 0x0p+0 : inexact-ok
+= rootn tonearest binary32 0x0p+0 1LL : 0x0p+0 : inexact-ok
+= rootn towardzero binary32 0x0p+0 1LL : 0x0p+0 : inexact-ok
+= rootn upward binary32 0x0p+0 1LL : 0x0p+0 : inexact-ok
+= rootn downward binary64 0x0p+0 1LL : 0x0p+0 : inexact-ok
+= rootn tonearest binary64 0x0p+0 1LL : 0x0p+0 : inexact-ok
+= rootn towardzero binary64 0x0p+0 1LL : 0x0p+0 : inexact-ok
+= rootn upward binary64 0x0p+0 1LL : 0x0p+0 : inexact-ok
+= rootn downward intel96 0x0p+0 1LL : 0x0p+0 : inexact-ok
+= rootn tonearest intel96 0x0p+0 1LL : 0x0p+0 : inexact-ok
+= rootn towardzero intel96 0x0p+0 1LL : 0x0p+0 : inexact-ok
+= rootn upward intel96 0x0p+0 1LL : 0x0p+0 : inexact-ok
+= rootn downward m68k96 0x0p+0 1LL : 0x0p+0 : inexact-ok
+= rootn tonearest m68k96 0x0p+0 1LL : 0x0p+0 : inexact-ok
+= rootn towardzero m68k96 0x0p+0 1LL : 0x0p+0 : inexact-ok
+= rootn upward m68k96 0x0p+0 1LL : 0x0p+0 : inexact-ok
+= rootn downward binary128 0x0p+0 1LL : 0x0p+0 : inexact-ok
+= rootn tonearest binary128 0x0p+0 1LL : 0x0p+0 : inexact-ok
+= rootn towardzero binary128 0x0p+0 1LL : 0x0p+0 : inexact-ok
+= rootn upward binary128 0x0p+0 1LL : 0x0p+0 : inexact-ok
+= rootn downward ibm128 0x0p+0 1LL : 0x0p+0 : inexact-ok
+= rootn tonearest ibm128 0x0p+0 1LL : 0x0p+0 : inexact-ok
+= rootn towardzero ibm128 0x0p+0 1LL : 0x0p+0 : inexact-ok
+= rootn upward ibm128 0x0p+0 1LL : 0x0p+0 : inexact-ok
+rootn 0 2
+= rootn downward binary32 0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn tonearest binary32 0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn towardzero binary32 0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn upward binary32 0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn downward binary64 0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn tonearest binary64 0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn towardzero binary64 0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn upward binary64 0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn downward intel96 0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn tonearest intel96 0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn towardzero intel96 0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn upward intel96 0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn downward m68k96 0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn tonearest m68k96 0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn towardzero m68k96 0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn upward m68k96 0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn downward binary128 0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn tonearest binary128 0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn towardzero binary128 0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn upward binary128 0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn downward ibm128 0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn tonearest ibm128 0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn towardzero ibm128 0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn upward ibm128 0x0p+0 2LL : 0x0p+0 : inexact-ok
+rootn 0 3
+= rootn downward binary32 0x0p+0 3LL : 0x0p+0 : inexact-ok
+= rootn tonearest binary32 0x0p+0 3LL : 0x0p+0 : inexact-ok
+= rootn towardzero binary32 0x0p+0 3LL : 0x0p+0 : inexact-ok
+= rootn upward binary32 0x0p+0 3LL : 0x0p+0 : inexact-ok
+= rootn downward binary64 0x0p+0 3LL : 0x0p+0 : inexact-ok
+= rootn tonearest binary64 0x0p+0 3LL : 0x0p+0 : inexact-ok
+= rootn towardzero binary64 0x0p+0 3LL : 0x0p+0 : inexact-ok
+= rootn upward binary64 0x0p+0 3LL : 0x0p+0 : inexact-ok
+= rootn downward intel96 0x0p+0 3LL : 0x0p+0 : inexact-ok
+= rootn tonearest intel96 0x0p+0 3LL : 0x0p+0 : inexact-ok
+= rootn towardzero intel96 0x0p+0 3LL : 0x0p+0 : inexact-ok
+= rootn upward intel96 0x0p+0 3LL : 0x0p+0 : inexact-ok
+= rootn downward m68k96 0x0p+0 3LL : 0x0p+0 : inexact-ok
+= rootn tonearest m68k96 0x0p+0 3LL : 0x0p+0 : inexact-ok
+= rootn towardzero m68k96 0x0p+0 3LL : 0x0p+0 : inexact-ok
+= rootn upward m68k96 0x0p+0 3LL : 0x0p+0 : inexact-ok
+= rootn downward binary128 0x0p+0 3LL : 0x0p+0 : inexact-ok
+= rootn tonearest binary128 0x0p+0 3LL : 0x0p+0 : inexact-ok
+= rootn towardzero binary128 0x0p+0 3LL : 0x0p+0 : inexact-ok
+= rootn upward binary128 0x0p+0 3LL : 0x0p+0 : inexact-ok
+= rootn downward ibm128 0x0p+0 3LL : 0x0p+0 : inexact-ok
+= rootn tonearest ibm128 0x0p+0 3LL : 0x0p+0 : inexact-ok
+= rootn towardzero ibm128 0x0p+0 3LL : 0x0p+0 : inexact-ok
+= rootn upward ibm128 0x0p+0 3LL : 0x0p+0 : inexact-ok
+rootn 0 4
+= rootn downward binary32 0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn tonearest binary32 0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn towardzero binary32 0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn upward binary32 0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn downward binary64 0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn tonearest binary64 0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn towardzero binary64 0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn upward binary64 0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn downward intel96 0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn tonearest intel96 0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn towardzero intel96 0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn upward intel96 0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn downward m68k96 0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn tonearest m68k96 0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn towardzero m68k96 0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn upward m68k96 0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn downward binary128 0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn tonearest binary128 0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn towardzero binary128 0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn upward binary128 0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn downward ibm128 0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn tonearest ibm128 0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn towardzero ibm128 0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn upward ibm128 0x0p+0 4LL : 0x0p+0 : inexact-ok
+rootn 0 5
+= rootn downward binary32 0x0p+0 5LL : 0x0p+0 : inexact-ok
+= rootn tonearest binary32 0x0p+0 5LL : 0x0p+0 : inexact-ok
+= rootn towardzero binary32 0x0p+0 5LL : 0x0p+0 : inexact-ok
+= rootn upward binary32 0x0p+0 5LL : 0x0p+0 : inexact-ok
+= rootn downward binary64 0x0p+0 5LL : 0x0p+0 : inexact-ok
+= rootn tonearest binary64 0x0p+0 5LL : 0x0p+0 : inexact-ok
+= rootn towardzero binary64 0x0p+0 5LL : 0x0p+0 : inexact-ok
+= rootn upward binary64 0x0p+0 5LL : 0x0p+0 : inexact-ok
+= rootn downward intel96 0x0p+0 5LL : 0x0p+0 : inexact-ok
+= rootn tonearest intel96 0x0p+0 5LL : 0x0p+0 : inexact-ok
+= rootn towardzero intel96 0x0p+0 5LL : 0x0p+0 : inexact-ok
+= rootn upward intel96 0x0p+0 5LL : 0x0p+0 : inexact-ok
+= rootn downward m68k96 0x0p+0 5LL : 0x0p+0 : inexact-ok
+= rootn tonearest m68k96 0x0p+0 5LL : 0x0p+0 : inexact-ok
+= rootn towardzero m68k96 0x0p+0 5LL : 0x0p+0 : inexact-ok
+= rootn upward m68k96 0x0p+0 5LL : 0x0p+0 : inexact-ok
+= rootn downward binary128 0x0p+0 5LL : 0x0p+0 : inexact-ok
+= rootn tonearest binary128 0x0p+0 5LL : 0x0p+0 : inexact-ok
+= rootn towardzero binary128 0x0p+0 5LL : 0x0p+0 : inexact-ok
+= rootn upward binary128 0x0p+0 5LL : 0x0p+0 : inexact-ok
+= rootn downward ibm128 0x0p+0 5LL : 0x0p+0 : inexact-ok
+= rootn tonearest ibm128 0x0p+0 5LL : 0x0p+0 : inexact-ok
+= rootn towardzero ibm128 0x0p+0 5LL : 0x0p+0 : inexact-ok
+= rootn upward ibm128 0x0p+0 5LL : 0x0p+0 : inexact-ok
+rootn 0 0x7fffffffffffffff
+= rootn downward binary32 0x0p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= rootn tonearest binary32 0x0p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= rootn towardzero binary32 0x0p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= rootn upward binary32 0x0p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= rootn downward binary64 0x0p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= rootn tonearest binary64 0x0p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= rootn towardzero binary64 0x0p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= rootn upward binary64 0x0p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= rootn downward intel96 0x0p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= rootn tonearest intel96 0x0p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= rootn towardzero intel96 0x0p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= rootn upward intel96 0x0p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= rootn downward m68k96 0x0p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= rootn tonearest m68k96 0x0p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= rootn towardzero m68k96 0x0p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= rootn upward m68k96 0x0p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= rootn downward binary128 0x0p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= rootn tonearest binary128 0x0p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= rootn towardzero binary128 0x0p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= rootn upward binary128 0x0p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= rootn downward ibm128 0x0p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= rootn tonearest ibm128 0x0p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= rootn towardzero ibm128 0x0p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+= rootn upward ibm128 0x0p+0 9223372036854775807LL : 0x0p+0 : inexact-ok
+rootn -0 1
+= rootn downward binary32 -0x0p+0 1LL : -0x0p+0 : inexact-ok
+= rootn tonearest binary32 -0x0p+0 1LL : -0x0p+0 : inexact-ok
+= rootn towardzero binary32 -0x0p+0 1LL : -0x0p+0 : inexact-ok
+= rootn upward binary32 -0x0p+0 1LL : -0x0p+0 : inexact-ok
+= rootn downward binary64 -0x0p+0 1LL : -0x0p+0 : inexact-ok
+= rootn tonearest binary64 -0x0p+0 1LL : -0x0p+0 : inexact-ok
+= rootn towardzero binary64 -0x0p+0 1LL : -0x0p+0 : inexact-ok
+= rootn upward binary64 -0x0p+0 1LL : -0x0p+0 : inexact-ok
+= rootn downward intel96 -0x0p+0 1LL : -0x0p+0 : inexact-ok
+= rootn tonearest intel96 -0x0p+0 1LL : -0x0p+0 : inexact-ok
+= rootn towardzero intel96 -0x0p+0 1LL : -0x0p+0 : inexact-ok
+= rootn upward intel96 -0x0p+0 1LL : -0x0p+0 : inexact-ok
+= rootn downward m68k96 -0x0p+0 1LL : -0x0p+0 : inexact-ok
+= rootn tonearest m68k96 -0x0p+0 1LL : -0x0p+0 : inexact-ok
+= rootn towardzero m68k96 -0x0p+0 1LL : -0x0p+0 : inexact-ok
+= rootn upward m68k96 -0x0p+0 1LL : -0x0p+0 : inexact-ok
+= rootn downward binary128 -0x0p+0 1LL : -0x0p+0 : inexact-ok
+= rootn tonearest binary128 -0x0p+0 1LL : -0x0p+0 : inexact-ok
+= rootn towardzero binary128 -0x0p+0 1LL : -0x0p+0 : inexact-ok
+= rootn upward binary128 -0x0p+0 1LL : -0x0p+0 : inexact-ok
+= rootn downward ibm128 -0x0p+0 1LL : -0x0p+0 : inexact-ok
+= rootn tonearest ibm128 -0x0p+0 1LL : -0x0p+0 : inexact-ok
+= rootn towardzero ibm128 -0x0p+0 1LL : -0x0p+0 : inexact-ok
+= rootn upward ibm128 -0x0p+0 1LL : -0x0p+0 : inexact-ok
+rootn -0 2
+= rootn downward binary32 -0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn tonearest binary32 -0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn towardzero binary32 -0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn upward binary32 -0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn downward binary64 -0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn tonearest binary64 -0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn towardzero binary64 -0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn upward binary64 -0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn downward intel96 -0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn tonearest intel96 -0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn towardzero intel96 -0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn upward intel96 -0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn downward m68k96 -0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn tonearest m68k96 -0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn towardzero m68k96 -0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn upward m68k96 -0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn downward binary128 -0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn tonearest binary128 -0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn towardzero binary128 -0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn upward binary128 -0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn downward ibm128 -0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn tonearest ibm128 -0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn towardzero ibm128 -0x0p+0 2LL : 0x0p+0 : inexact-ok
+= rootn upward ibm128 -0x0p+0 2LL : 0x0p+0 : inexact-ok
+rootn -0 3
+= rootn downward binary32 -0x0p+0 3LL : -0x0p+0 : inexact-ok
+= rootn tonearest binary32 -0x0p+0 3LL : -0x0p+0 : inexact-ok
+= rootn towardzero binary32 -0x0p+0 3LL : -0x0p+0 : inexact-ok
+= rootn upward binary32 -0x0p+0 3LL : -0x0p+0 : inexact-ok
+= rootn downward binary64 -0x0p+0 3LL : -0x0p+0 : inexact-ok
+= rootn tonearest binary64 -0x0p+0 3LL : -0x0p+0 : inexact-ok
+= rootn towardzero binary64 -0x0p+0 3LL : -0x0p+0 : inexact-ok
+= rootn upward binary64 -0x0p+0 3LL : -0x0p+0 : inexact-ok
+= rootn downward intel96 -0x0p+0 3LL : -0x0p+0 : inexact-ok
+= rootn tonearest intel96 -0x0p+0 3LL : -0x0p+0 : inexact-ok
+= rootn towardzero intel96 -0x0p+0 3LL : -0x0p+0 : inexact-ok
+= rootn upward intel96 -0x0p+0 3LL : -0x0p+0 : inexact-ok
+= rootn downward m68k96 -0x0p+0 3LL : -0x0p+0 : inexact-ok
+= rootn tonearest m68k96 -0x0p+0 3LL : -0x0p+0 : inexact-ok
+= rootn towardzero m68k96 -0x0p+0 3LL : -0x0p+0 : inexact-ok
+= rootn upward m68k96 -0x0p+0 3LL : -0x0p+0 : inexact-ok
+= rootn downward binary128 -0x0p+0 3LL : -0x0p+0 : inexact-ok
+= rootn tonearest binary128 -0x0p+0 3LL : -0x0p+0 : inexact-ok
+= rootn towardzero binary128 -0x0p+0 3LL : -0x0p+0 : inexact-ok
+= rootn upward binary128 -0x0p+0 3LL : -0x0p+0 : inexact-ok
+= rootn downward ibm128 -0x0p+0 3LL : -0x0p+0 : inexact-ok
+= rootn tonearest ibm128 -0x0p+0 3LL : -0x0p+0 : inexact-ok
+= rootn towardzero ibm128 -0x0p+0 3LL : -0x0p+0 : inexact-ok
+= rootn upward ibm128 -0x0p+0 3LL : -0x0p+0 : inexact-ok
+rootn -0 4
+= rootn downward binary32 -0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn tonearest binary32 -0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn towardzero binary32 -0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn upward binary32 -0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn downward binary64 -0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn tonearest binary64 -0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn towardzero binary64 -0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn upward binary64 -0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn downward intel96 -0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn tonearest intel96 -0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn towardzero intel96 -0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn upward intel96 -0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn downward m68k96 -0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn tonearest m68k96 -0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn towardzero m68k96 -0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn upward m68k96 -0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn downward binary128 -0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn tonearest binary128 -0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn towardzero binary128 -0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn upward binary128 -0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn downward ibm128 -0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn tonearest ibm128 -0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn towardzero ibm128 -0x0p+0 4LL : 0x0p+0 : inexact-ok
+= rootn upward ibm128 -0x0p+0 4LL : 0x0p+0 : inexact-ok
+rootn -0 5
+= rootn downward binary32 -0x0p+0 5LL : -0x0p+0 : inexact-ok
+= rootn tonearest binary32 -0x0p+0 5LL : -0x0p+0 : inexact-ok
+= rootn towardzero binary32 -0x0p+0 5LL : -0x0p+0 : inexact-ok
+= rootn upward binary32 -0x0p+0 5LL : -0x0p+0 : inexact-ok
+= rootn downward binary64 -0x0p+0 5LL : -0x0p+0 : inexact-ok
+= rootn tonearest binary64 -0x0p+0 5LL : -0x0p+0 : inexact-ok
+= rootn towardzero binary64 -0x0p+0 5LL : -0x0p+0 : inexact-ok
+= rootn upward binary64 -0x0p+0 5LL : -0x0p+0 : inexact-ok
+= rootn downward intel96 -0x0p+0 5LL : -0x0p+0 : inexact-ok
+= rootn tonearest intel96 -0x0p+0 5LL : -0x0p+0 : inexact-ok
+= rootn towardzero intel96 -0x0p+0 5LL : -0x0p+0 : inexact-ok
+= rootn upward intel96 -0x0p+0 5LL : -0x0p+0 : inexact-ok
+= rootn downward m68k96 -0x0p+0 5LL : -0x0p+0 : inexact-ok
+= rootn tonearest m68k96 -0x0p+0 5LL : -0x0p+0 : inexact-ok
+= rootn towardzero m68k96 -0x0p+0 5LL : -0x0p+0 : inexact-ok
+= rootn upward m68k96 -0x0p+0 5LL : -0x0p+0 : inexact-ok
+= rootn downward binary128 -0x0p+0 5LL : -0x0p+0 : inexact-ok
+= rootn tonearest binary128 -0x0p+0 5LL : -0x0p+0 : inexact-ok
+= rootn towardzero binary128 -0x0p+0 5LL : -0x0p+0 : inexact-ok
+= rootn upward binary128 -0x0p+0 5LL : -0x0p+0 : inexact-ok
+= rootn downward ibm128 -0x0p+0 5LL : -0x0p+0 : inexact-ok
+= rootn tonearest ibm128 -0x0p+0 5LL : -0x0p+0 : inexact-ok
+= rootn towardzero ibm128 -0x0p+0 5LL : -0x0p+0 : inexact-ok
+= rootn upward ibm128 -0x0p+0 5LL : -0x0p+0 : inexact-ok
+rootn -0 0x7fffffffffffffff
+= rootn downward binary32 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= rootn tonearest binary32 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= rootn towardzero binary32 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= rootn upward binary32 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= rootn downward binary64 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= rootn tonearest binary64 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= rootn towardzero binary64 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= rootn upward binary64 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= rootn downward intel96 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= rootn tonearest intel96 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= rootn towardzero intel96 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= rootn upward intel96 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= rootn downward m68k96 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= rootn tonearest m68k96 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= rootn towardzero m68k96 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= rootn upward m68k96 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= rootn downward binary128 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= rootn tonearest binary128 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= rootn towardzero binary128 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= rootn upward binary128 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= rootn downward ibm128 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= rootn tonearest ibm128 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= rootn towardzero ibm128 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+= rootn upward ibm128 -0x0p+0 9223372036854775807LL : -0x0p+0 : inexact-ok
+rootn min 1
+= rootn downward binary32 0x4p-128 1LL : 0x4p-128 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest binary32 0x4p-128 1LL : 0x4p-128 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero binary32 0x4p-128 1LL : 0x4p-128 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward binary32 0x4p-128 1LL : 0x4p-128 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward binary64 0x4p-128 1LL : 0x4p-128 : inexact-ok
+= rootn tonearest binary64 0x4p-128 1LL : 0x4p-128 : inexact-ok
+= rootn towardzero binary64 0x4p-128 1LL : 0x4p-128 : inexact-ok
+= rootn upward binary64 0x4p-128 1LL : 0x4p-128 : inexact-ok
+= rootn downward intel96 0x4p-128 1LL : 0x4p-128 : inexact-ok
+= rootn tonearest intel96 0x4p-128 1LL : 0x4p-128 : inexact-ok
+= rootn towardzero intel96 0x4p-128 1LL : 0x4p-128 : inexact-ok
+= rootn upward intel96 0x4p-128 1LL : 0x4p-128 : inexact-ok
+= rootn downward m68k96 0x4p-128 1LL : 0x4p-128 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 1LL : 0x4p-128 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 1LL : 0x4p-128 : inexact-ok
+= rootn upward m68k96 0x4p-128 1LL : 0x4p-128 : inexact-ok
+= rootn downward binary128 0x4p-128 1LL : 0x4p-128 : inexact-ok
+= rootn tonearest binary128 0x4p-128 1LL : 0x4p-128 : inexact-ok
+= rootn towardzero binary128 0x4p-128 1LL : 0x4p-128 : inexact-ok
+= rootn upward binary128 0x4p-128 1LL : 0x4p-128 : inexact-ok
+= rootn downward ibm128 0x4p-128 1LL : 0x4p-128 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 1LL : 0x4p-128 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 1LL : 0x4p-128 : inexact-ok
+= rootn upward ibm128 0x4p-128 1LL : 0x4p-128 : inexact-ok
+= rootn downward binary64 0x4p-1024 1LL : 0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest binary64 0x4p-1024 1LL : 0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero binary64 0x4p-1024 1LL : 0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward binary64 0x4p-1024 1LL : 0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward intel96 0x4p-1024 1LL : 0x4p-1024 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 1LL : 0x4p-1024 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 1LL : 0x4p-1024 : inexact-ok
+= rootn upward intel96 0x4p-1024 1LL : 0x4p-1024 : inexact-ok
+= rootn downward m68k96 0x4p-1024 1LL : 0x4p-1024 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 1LL : 0x4p-1024 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 1LL : 0x4p-1024 : inexact-ok
+= rootn upward m68k96 0x4p-1024 1LL : 0x4p-1024 : inexact-ok
+= rootn downward binary128 0x4p-1024 1LL : 0x4p-1024 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 1LL : 0x4p-1024 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 1LL : 0x4p-1024 : inexact-ok
+= rootn upward binary128 0x4p-1024 1LL : 0x4p-1024 : inexact-ok
+= rootn downward ibm128 0x4p-1024 1LL : 0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest ibm128 0x4p-1024 1LL : 0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero ibm128 0x4p-1024 1LL : 0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward ibm128 0x4p-1024 1LL : 0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward intel96 0x4p-16384 1LL : 0x4p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest intel96 0x4p-16384 1LL : 0x4p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero intel96 0x4p-16384 1LL : 0x4p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward intel96 0x4p-16384 1LL : 0x4p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward m68k96 0x4p-16384 1LL : 0x4p-16384 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 1LL : 0x4p-16384 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 1LL : 0x4p-16384 : inexact-ok
+= rootn upward m68k96 0x4p-16384 1LL : 0x4p-16384 : inexact-ok
+= rootn downward binary128 0x4p-16384 1LL : 0x4p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest binary128 0x4p-16384 1LL : 0x4p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero binary128 0x4p-16384 1LL : 0x4p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward binary128 0x4p-16384 1LL : 0x4p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward intel96 0x2p-16384 1LL : 0x2p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest intel96 0x2p-16384 1LL : 0x2p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero intel96 0x2p-16384 1LL : 0x2p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward intel96 0x2p-16384 1LL : 0x2p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward m68k96 0x2p-16384 1LL : 0x2p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest m68k96 0x2p-16384 1LL : 0x2p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero m68k96 0x2p-16384 1LL : 0x2p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward m68k96 0x2p-16384 1LL : 0x2p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward binary128 0x2p-16384 1LL : 0x2p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest binary128 0x2p-16384 1LL : 0x2p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero binary128 0x2p-16384 1LL : 0x2p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward binary128 0x2p-16384 1LL : 0x2p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward binary64 0x8p-972 1LL : 0x8p-972 : inexact-ok
+= rootn tonearest binary64 0x8p-972 1LL : 0x8p-972 : inexact-ok
+= rootn towardzero binary64 0x8p-972 1LL : 0x8p-972 : inexact-ok
+= rootn upward binary64 0x8p-972 1LL : 0x8p-972 : inexact-ok
+= rootn downward intel96 0x8p-972 1LL : 0x8p-972 : inexact-ok
+= rootn tonearest intel96 0x8p-972 1LL : 0x8p-972 : inexact-ok
+= rootn towardzero intel96 0x8p-972 1LL : 0x8p-972 : inexact-ok
+= rootn upward intel96 0x8p-972 1LL : 0x8p-972 : inexact-ok
+= rootn downward m68k96 0x8p-972 1LL : 0x8p-972 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 1LL : 0x8p-972 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 1LL : 0x8p-972 : inexact-ok
+= rootn upward m68k96 0x8p-972 1LL : 0x8p-972 : inexact-ok
+= rootn downward binary128 0x8p-972 1LL : 0x8p-972 : inexact-ok
+= rootn tonearest binary128 0x8p-972 1LL : 0x8p-972 : inexact-ok
+= rootn towardzero binary128 0x8p-972 1LL : 0x8p-972 : inexact-ok
+= rootn upward binary128 0x8p-972 1LL : 0x8p-972 : inexact-ok
+= rootn downward ibm128 0x8p-972 1LL : 0x8p-972 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest ibm128 0x8p-972 1LL : 0x8p-972 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero ibm128 0x8p-972 1LL : 0x8p-972 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward ibm128 0x8p-972 1LL : 0x8p-972 : inexact-ok underflow-ok errno-erange-ok
+rootn min 2
+= rootn downward binary32 0x4p-128 2LL : 0x2p-64 : inexact-ok
+= rootn tonearest binary32 0x4p-128 2LL : 0x2p-64 : inexact-ok
+= rootn towardzero binary32 0x4p-128 2LL : 0x2p-64 : inexact-ok
+= rootn upward binary32 0x4p-128 2LL : 0x2p-64 : inexact-ok
+= rootn downward binary64 0x4p-128 2LL : 0x2p-64 : inexact-ok
+= rootn tonearest binary64 0x4p-128 2LL : 0x2p-64 : inexact-ok
+= rootn towardzero binary64 0x4p-128 2LL : 0x2p-64 : inexact-ok
+= rootn upward binary64 0x4p-128 2LL : 0x2p-64 : inexact-ok
+= rootn downward intel96 0x4p-128 2LL : 0x2p-64 : inexact-ok
+= rootn tonearest intel96 0x4p-128 2LL : 0x2p-64 : inexact-ok
+= rootn towardzero intel96 0x4p-128 2LL : 0x2p-64 : inexact-ok
+= rootn upward intel96 0x4p-128 2LL : 0x2p-64 : inexact-ok
+= rootn downward m68k96 0x4p-128 2LL : 0x2p-64 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 2LL : 0x2p-64 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 2LL : 0x2p-64 : inexact-ok
+= rootn upward m68k96 0x4p-128 2LL : 0x2p-64 : inexact-ok
+= rootn downward binary128 0x4p-128 2LL : 0x2p-64 : inexact-ok
+= rootn tonearest binary128 0x4p-128 2LL : 0x2p-64 : inexact-ok
+= rootn towardzero binary128 0x4p-128 2LL : 0x2p-64 : inexact-ok
+= rootn upward binary128 0x4p-128 2LL : 0x2p-64 : inexact-ok
+= rootn downward ibm128 0x4p-128 2LL : 0x2p-64 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 2LL : 0x2p-64 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 2LL : 0x2p-64 : inexact-ok
+= rootn upward ibm128 0x4p-128 2LL : 0x2p-64 : inexact-ok
+= rootn downward binary64 0x4p-1024 2LL : 0x2p-512 : inexact-ok
+= rootn tonearest binary64 0x4p-1024 2LL : 0x2p-512 : inexact-ok
+= rootn towardzero binary64 0x4p-1024 2LL : 0x2p-512 : inexact-ok
+= rootn upward binary64 0x4p-1024 2LL : 0x2p-512 : inexact-ok
+= rootn downward intel96 0x4p-1024 2LL : 0x2p-512 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 2LL : 0x2p-512 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 2LL : 0x2p-512 : inexact-ok
+= rootn upward intel96 0x4p-1024 2LL : 0x2p-512 : inexact-ok
+= rootn downward m68k96 0x4p-1024 2LL : 0x2p-512 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 2LL : 0x2p-512 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 2LL : 0x2p-512 : inexact-ok
+= rootn upward m68k96 0x4p-1024 2LL : 0x2p-512 : inexact-ok
+= rootn downward binary128 0x4p-1024 2LL : 0x2p-512 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 2LL : 0x2p-512 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 2LL : 0x2p-512 : inexact-ok
+= rootn upward binary128 0x4p-1024 2LL : 0x2p-512 : inexact-ok
+= rootn downward ibm128 0x4p-1024 2LL : 0x2p-512 : inexact-ok
+= rootn tonearest ibm128 0x4p-1024 2LL : 0x2p-512 : inexact-ok
+= rootn towardzero ibm128 0x4p-1024 2LL : 0x2p-512 : inexact-ok
+= rootn upward ibm128 0x4p-1024 2LL : 0x2p-512 : inexact-ok
+= rootn downward intel96 0x4p-16384 2LL : 0x2p-8192 : inexact-ok
+= rootn tonearest intel96 0x4p-16384 2LL : 0x2p-8192 : inexact-ok
+= rootn towardzero intel96 0x4p-16384 2LL : 0x2p-8192 : inexact-ok
+= rootn upward intel96 0x4p-16384 2LL : 0x2p-8192 : inexact-ok
+= rootn downward m68k96 0x4p-16384 2LL : 0x2p-8192 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 2LL : 0x2p-8192 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 2LL : 0x2p-8192 : inexact-ok
+= rootn upward m68k96 0x4p-16384 2LL : 0x2p-8192 : inexact-ok
+= rootn downward binary128 0x4p-16384 2LL : 0x2p-8192 : inexact-ok
+= rootn tonearest binary128 0x4p-16384 2LL : 0x2p-8192 : inexact-ok
+= rootn towardzero binary128 0x4p-16384 2LL : 0x2p-8192 : inexact-ok
+= rootn upward binary128 0x4p-16384 2LL : 0x2p-8192 : inexact-ok
+= rootn downward intel96 0x2p-16384 2LL : 0x1.6a09e667f3bcc908p-8192 : inexact-ok
+= rootn tonearest intel96 0x2p-16384 2LL : 0x1.6a09e667f3bcc908p-8192 : inexact-ok
+= rootn towardzero intel96 0x2p-16384 2LL : 0x1.6a09e667f3bcc908p-8192 : inexact-ok
+= rootn upward intel96 0x2p-16384 2LL : 0x1.6a09e667f3bcc90ap-8192 : inexact-ok
+= rootn downward m68k96 0x2p-16384 2LL : 0x1.6a09e667f3bcc908p-8192 : inexact-ok
+= rootn tonearest m68k96 0x2p-16384 2LL : 0x1.6a09e667f3bcc908p-8192 : inexact-ok
+= rootn towardzero m68k96 0x2p-16384 2LL : 0x1.6a09e667f3bcc908p-8192 : inexact-ok
+= rootn upward m68k96 0x2p-16384 2LL : 0x1.6a09e667f3bcc90ap-8192 : inexact-ok
+= rootn downward binary128 0x2p-16384 2LL : 0x1.6a09e667f3bcc908b2fb1366ea95p-8192 : inexact-ok
+= rootn tonearest binary128 0x2p-16384 2LL : 0x1.6a09e667f3bcc908b2fb1366ea95p-8192 : inexact-ok
+= rootn towardzero binary128 0x2p-16384 2LL : 0x1.6a09e667f3bcc908b2fb1366ea95p-8192 : inexact-ok
+= rootn upward binary128 0x2p-16384 2LL : 0x1.6a09e667f3bcc908b2fb1366ea96p-8192 : inexact-ok
+= rootn downward binary64 0x8p-972 2LL : 0xb.504f333f9de6p-488 : inexact-ok
+= rootn tonearest binary64 0x8p-972 2LL : 0xb.504f333f9de68p-488 : inexact-ok
+= rootn towardzero binary64 0x8p-972 2LL : 0xb.504f333f9de6p-488 : inexact-ok
+= rootn upward binary64 0x8p-972 2LL : 0xb.504f333f9de68p-488 : inexact-ok
+= rootn downward intel96 0x8p-972 2LL : 0xb.504f333f9de6484p-488 : inexact-ok
+= rootn tonearest intel96 0x8p-972 2LL : 0xb.504f333f9de6484p-488 : inexact-ok
+= rootn towardzero intel96 0x8p-972 2LL : 0xb.504f333f9de6484p-488 : inexact-ok
+= rootn upward intel96 0x8p-972 2LL : 0xb.504f333f9de6485p-488 : inexact-ok
+= rootn downward m68k96 0x8p-972 2LL : 0xb.504f333f9de6484p-488 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 2LL : 0xb.504f333f9de6484p-488 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 2LL : 0xb.504f333f9de6484p-488 : inexact-ok
+= rootn upward m68k96 0x8p-972 2LL : 0xb.504f333f9de6485p-488 : inexact-ok
+= rootn downward binary128 0x8p-972 2LL : 0xb.504f333f9de6484597d89b3754a8p-488 : inexact-ok
+= rootn tonearest binary128 0x8p-972 2LL : 0xb.504f333f9de6484597d89b3754a8p-488 : inexact-ok
+= rootn towardzero binary128 0x8p-972 2LL : 0xb.504f333f9de6484597d89b3754a8p-488 : inexact-ok
+= rootn upward binary128 0x8p-972 2LL : 0xb.504f333f9de6484597d89b3754bp-488 : inexact-ok
+= rootn downward ibm128 0x8p-972 2LL : 0xb.504f333f9de6484597d89b3754p-488 : inexact-ok
+= rootn tonearest ibm128 0x8p-972 2LL : 0xb.504f333f9de6484597d89b3754p-488 : inexact-ok
+= rootn towardzero ibm128 0x8p-972 2LL : 0xb.504f333f9de6484597d89b3754p-488 : inexact-ok
+= rootn upward ibm128 0x8p-972 2LL : 0xb.504f333f9de6484597d89b3758p-488 : inexact-ok
+rootn min 3
+= rootn downward binary32 0x4p-128 3LL : 0x4p-44 : inexact-ok
+= rootn tonearest binary32 0x4p-128 3LL : 0x4p-44 : inexact-ok
+= rootn towardzero binary32 0x4p-128 3LL : 0x4p-44 : inexact-ok
+= rootn upward binary32 0x4p-128 3LL : 0x4p-44 : inexact-ok
+= rootn downward binary64 0x4p-128 3LL : 0x4p-44 : inexact-ok
+= rootn tonearest binary64 0x4p-128 3LL : 0x4p-44 : inexact-ok
+= rootn towardzero binary64 0x4p-128 3LL : 0x4p-44 : inexact-ok
+= rootn upward binary64 0x4p-128 3LL : 0x4p-44 : inexact-ok
+= rootn downward intel96 0x4p-128 3LL : 0x4p-44 : inexact-ok
+= rootn tonearest intel96 0x4p-128 3LL : 0x4p-44 : inexact-ok
+= rootn towardzero intel96 0x4p-128 3LL : 0x4p-44 : inexact-ok
+= rootn upward intel96 0x4p-128 3LL : 0x4p-44 : inexact-ok
+= rootn downward m68k96 0x4p-128 3LL : 0x4p-44 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 3LL : 0x4p-44 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 3LL : 0x4p-44 : inexact-ok
+= rootn upward m68k96 0x4p-128 3LL : 0x4p-44 : inexact-ok
+= rootn downward binary128 0x4p-128 3LL : 0x4p-44 : inexact-ok
+= rootn tonearest binary128 0x4p-128 3LL : 0x4p-44 : inexact-ok
+= rootn towardzero binary128 0x4p-128 3LL : 0x4p-44 : inexact-ok
+= rootn upward binary128 0x4p-128 3LL : 0x4p-44 : inexact-ok
+= rootn downward ibm128 0x4p-128 3LL : 0x4p-44 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 3LL : 0x4p-44 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 3LL : 0x4p-44 : inexact-ok
+= rootn upward ibm128 0x4p-128 3LL : 0x4p-44 : inexact-ok
+= rootn downward binary64 0x4p-1024 3LL : 0xa.14517cc6b945p-344 : inexact-ok
+= rootn tonearest binary64 0x4p-1024 3LL : 0xa.14517cc6b9458p-344 : inexact-ok
+= rootn towardzero binary64 0x4p-1024 3LL : 0xa.14517cc6b945p-344 : inexact-ok
+= rootn upward binary64 0x4p-1024 3LL : 0xa.14517cc6b9458p-344 : inexact-ok
+= rootn downward intel96 0x4p-1024 3LL : 0xa.14517cc6b945711p-344 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 3LL : 0xa.14517cc6b945711p-344 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 3LL : 0xa.14517cc6b945711p-344 : inexact-ok
+= rootn upward intel96 0x4p-1024 3LL : 0xa.14517cc6b945712p-344 : inexact-ok
+= rootn downward m68k96 0x4p-1024 3LL : 0xa.14517cc6b945711p-344 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 3LL : 0xa.14517cc6b945711p-344 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 3LL : 0xa.14517cc6b945711p-344 : inexact-ok
+= rootn upward m68k96 0x4p-1024 3LL : 0xa.14517cc6b945712p-344 : inexact-ok
+= rootn downward binary128 0x4p-1024 3LL : 0xa.14517cc6b9457111eed5b8adf128p-344 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 3LL : 0xa.14517cc6b9457111eed5b8adf128p-344 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 3LL : 0xa.14517cc6b9457111eed5b8adf128p-344 : inexact-ok
+= rootn upward binary128 0x4p-1024 3LL : 0xa.14517cc6b9457111eed5b8adf13p-344 : inexact-ok
+= rootn downward ibm128 0x4p-1024 3LL : 0xa.14517cc6b9457111eed5b8adfp-344 : inexact-ok
+= rootn tonearest ibm128 0x4p-1024 3LL : 0xa.14517cc6b9457111eed5b8adfp-344 : inexact-ok
+= rootn towardzero ibm128 0x4p-1024 3LL : 0xa.14517cc6b9457111eed5b8adfp-344 : inexact-ok
+= rootn upward ibm128 0x4p-1024 3LL : 0xa.14517cc6b9457111eed5b8adf4p-344 : inexact-ok
+= rootn downward intel96 0x4p-16384 3LL : 0xa.14517cc6b945711p-5464 : inexact-ok
+= rootn tonearest intel96 0x4p-16384 3LL : 0xa.14517cc6b945711p-5464 : inexact-ok
+= rootn towardzero intel96 0x4p-16384 3LL : 0xa.14517cc6b945711p-5464 : inexact-ok
+= rootn upward intel96 0x4p-16384 3LL : 0xa.14517cc6b945712p-5464 : inexact-ok
+= rootn downward m68k96 0x4p-16384 3LL : 0xa.14517cc6b945711p-5464 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 3LL : 0xa.14517cc6b945711p-5464 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 3LL : 0xa.14517cc6b945711p-5464 : inexact-ok
+= rootn upward m68k96 0x4p-16384 3LL : 0xa.14517cc6b945712p-5464 : inexact-ok
+= rootn downward binary128 0x4p-16384 3LL : 0xa.14517cc6b9457111eed5b8adf128p-5464 : inexact-ok
+= rootn tonearest binary128 0x4p-16384 3LL : 0xa.14517cc6b9457111eed5b8adf128p-5464 : inexact-ok
+= rootn towardzero binary128 0x4p-16384 3LL : 0xa.14517cc6b9457111eed5b8adf128p-5464 : inexact-ok
+= rootn upward binary128 0x4p-16384 3LL : 0xa.14517cc6b9457111eed5b8adf13p-5464 : inexact-ok
+= rootn downward intel96 0x2p-16384 3LL : 0x8p-5464 : inexact-ok
+= rootn tonearest intel96 0x2p-16384 3LL : 0x8p-5464 : inexact-ok
+= rootn towardzero intel96 0x2p-16384 3LL : 0x8p-5464 : inexact-ok
+= rootn upward intel96 0x2p-16384 3LL : 0x8p-5464 : inexact-ok
+= rootn downward m68k96 0x2p-16384 3LL : 0x8p-5464 : inexact-ok
+= rootn tonearest m68k96 0x2p-16384 3LL : 0x8p-5464 : inexact-ok
+= rootn towardzero m68k96 0x2p-16384 3LL : 0x8p-5464 : inexact-ok
+= rootn upward m68k96 0x2p-16384 3LL : 0x8p-5464 : inexact-ok
+= rootn downward binary128 0x2p-16384 3LL : 0x8p-5464 : inexact-ok
+= rootn tonearest binary128 0x2p-16384 3LL : 0x8p-5464 : inexact-ok
+= rootn towardzero binary128 0x2p-16384 3LL : 0x8p-5464 : inexact-ok
+= rootn upward binary128 0x2p-16384 3LL : 0x8p-5464 : inexact-ok
+= rootn downward binary64 0x8p-972 3LL : 0x2p-324 : inexact-ok
+= rootn tonearest binary64 0x8p-972 3LL : 0x2p-324 : inexact-ok
+= rootn towardzero binary64 0x8p-972 3LL : 0x2p-324 : inexact-ok
+= rootn upward binary64 0x8p-972 3LL : 0x2p-324 : inexact-ok
+= rootn downward intel96 0x8p-972 3LL : 0x2p-324 : inexact-ok
+= rootn tonearest intel96 0x8p-972 3LL : 0x2p-324 : inexact-ok
+= rootn towardzero intel96 0x8p-972 3LL : 0x2p-324 : inexact-ok
+= rootn upward intel96 0x8p-972 3LL : 0x2p-324 : inexact-ok
+= rootn downward m68k96 0x8p-972 3LL : 0x2p-324 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 3LL : 0x2p-324 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 3LL : 0x2p-324 : inexact-ok
+= rootn upward m68k96 0x8p-972 3LL : 0x2p-324 : inexact-ok
+= rootn downward binary128 0x8p-972 3LL : 0x2p-324 : inexact-ok
+= rootn tonearest binary128 0x8p-972 3LL : 0x2p-324 : inexact-ok
+= rootn towardzero binary128 0x8p-972 3LL : 0x2p-324 : inexact-ok
+= rootn upward binary128 0x8p-972 3LL : 0x2p-324 : inexact-ok
+= rootn downward ibm128 0x8p-972 3LL : 0x2p-324 : inexact-ok
+= rootn tonearest ibm128 0x8p-972 3LL : 0x2p-324 : inexact-ok
+= rootn towardzero ibm128 0x8p-972 3LL : 0x2p-324 : inexact-ok
+= rootn upward ibm128 0x8p-972 3LL : 0x2p-324 : inexact-ok
+rootn min 4
+= rootn downward binary32 0x4p-128 4LL : 0x1.6a09e6p-32 : inexact-ok
+= rootn tonearest binary32 0x4p-128 4LL : 0x1.6a09e6p-32 : inexact-ok
+= rootn towardzero binary32 0x4p-128 4LL : 0x1.6a09e6p-32 : inexact-ok
+= rootn upward binary32 0x4p-128 4LL : 0x1.6a09e8p-32 : inexact-ok
+= rootn downward binary64 0x4p-128 4LL : 0x1.6a09e667f3bccp-32 : inexact-ok
+= rootn tonearest binary64 0x4p-128 4LL : 0x1.6a09e667f3bcdp-32 : inexact-ok
+= rootn towardzero binary64 0x4p-128 4LL : 0x1.6a09e667f3bccp-32 : inexact-ok
+= rootn upward binary64 0x4p-128 4LL : 0x1.6a09e667f3bcdp-32 : inexact-ok
+= rootn downward intel96 0x4p-128 4LL : 0x1.6a09e667f3bcc908p-32 : inexact-ok
+= rootn tonearest intel96 0x4p-128 4LL : 0x1.6a09e667f3bcc908p-32 : inexact-ok
+= rootn towardzero intel96 0x4p-128 4LL : 0x1.6a09e667f3bcc908p-32 : inexact-ok
+= rootn upward intel96 0x4p-128 4LL : 0x1.6a09e667f3bcc90ap-32 : inexact-ok
+= rootn downward m68k96 0x4p-128 4LL : 0x1.6a09e667f3bcc908p-32 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 4LL : 0x1.6a09e667f3bcc908p-32 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 4LL : 0x1.6a09e667f3bcc908p-32 : inexact-ok
+= rootn upward m68k96 0x4p-128 4LL : 0x1.6a09e667f3bcc90ap-32 : inexact-ok
+= rootn downward binary128 0x4p-128 4LL : 0x1.6a09e667f3bcc908b2fb1366ea95p-32 : inexact-ok
+= rootn tonearest binary128 0x4p-128 4LL : 0x1.6a09e667f3bcc908b2fb1366ea95p-32 : inexact-ok
+= rootn towardzero binary128 0x4p-128 4LL : 0x1.6a09e667f3bcc908b2fb1366ea95p-32 : inexact-ok
+= rootn upward binary128 0x4p-128 4LL : 0x1.6a09e667f3bcc908b2fb1366ea96p-32 : inexact-ok
+= rootn downward ibm128 0x4p-128 4LL : 0x1.6a09e667f3bcc908b2fb1366ea8p-32 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 4LL : 0x1.6a09e667f3bcc908b2fb1366ea8p-32 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 4LL : 0x1.6a09e667f3bcc908b2fb1366ea8p-32 : inexact-ok
+= rootn upward ibm128 0x4p-128 4LL : 0x1.6a09e667f3bcc908b2fb1366ebp-32 : inexact-ok
+= rootn downward binary64 0x4p-1024 4LL : 0x1.6a09e667f3bccp-256 : inexact-ok
+= rootn tonearest binary64 0x4p-1024 4LL : 0x1.6a09e667f3bcdp-256 : inexact-ok
+= rootn towardzero binary64 0x4p-1024 4LL : 0x1.6a09e667f3bccp-256 : inexact-ok
+= rootn upward binary64 0x4p-1024 4LL : 0x1.6a09e667f3bcdp-256 : inexact-ok
+= rootn downward intel96 0x4p-1024 4LL : 0x1.6a09e667f3bcc908p-256 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 4LL : 0x1.6a09e667f3bcc908p-256 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 4LL : 0x1.6a09e667f3bcc908p-256 : inexact-ok
+= rootn upward intel96 0x4p-1024 4LL : 0x1.6a09e667f3bcc90ap-256 : inexact-ok
+= rootn downward m68k96 0x4p-1024 4LL : 0x1.6a09e667f3bcc908p-256 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 4LL : 0x1.6a09e667f3bcc908p-256 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 4LL : 0x1.6a09e667f3bcc908p-256 : inexact-ok
+= rootn upward m68k96 0x4p-1024 4LL : 0x1.6a09e667f3bcc90ap-256 : inexact-ok
+= rootn downward binary128 0x4p-1024 4LL : 0x1.6a09e667f3bcc908b2fb1366ea95p-256 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 4LL : 0x1.6a09e667f3bcc908b2fb1366ea95p-256 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 4LL : 0x1.6a09e667f3bcc908b2fb1366ea95p-256 : inexact-ok
+= rootn upward binary128 0x4p-1024 4LL : 0x1.6a09e667f3bcc908b2fb1366ea96p-256 : inexact-ok
+= rootn downward ibm128 0x4p-1024 4LL : 0x1.6a09e667f3bcc908b2fb1366ea8p-256 : inexact-ok
+= rootn tonearest ibm128 0x4p-1024 4LL : 0x1.6a09e667f3bcc908b2fb1366ea8p-256 : inexact-ok
+= rootn towardzero ibm128 0x4p-1024 4LL : 0x1.6a09e667f3bcc908b2fb1366ea8p-256 : inexact-ok
+= rootn upward ibm128 0x4p-1024 4LL : 0x1.6a09e667f3bcc908b2fb1366ebp-256 : inexact-ok
+= rootn downward intel96 0x4p-16384 4LL : 0x1.6a09e667f3bcc908p-4096 : inexact-ok
+= rootn tonearest intel96 0x4p-16384 4LL : 0x1.6a09e667f3bcc908p-4096 : inexact-ok
+= rootn towardzero intel96 0x4p-16384 4LL : 0x1.6a09e667f3bcc908p-4096 : inexact-ok
+= rootn upward intel96 0x4p-16384 4LL : 0x1.6a09e667f3bcc90ap-4096 : inexact-ok
+= rootn downward m68k96 0x4p-16384 4LL : 0x1.6a09e667f3bcc908p-4096 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 4LL : 0x1.6a09e667f3bcc908p-4096 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 4LL : 0x1.6a09e667f3bcc908p-4096 : inexact-ok
+= rootn upward m68k96 0x4p-16384 4LL : 0x1.6a09e667f3bcc90ap-4096 : inexact-ok
+= rootn downward binary128 0x4p-16384 4LL : 0x1.6a09e667f3bcc908b2fb1366ea95p-4096 : inexact-ok
+= rootn tonearest binary128 0x4p-16384 4LL : 0x1.6a09e667f3bcc908b2fb1366ea95p-4096 : inexact-ok
+= rootn towardzero binary128 0x4p-16384 4LL : 0x1.6a09e667f3bcc908b2fb1366ea95p-4096 : inexact-ok
+= rootn upward binary128 0x4p-16384 4LL : 0x1.6a09e667f3bcc908b2fb1366ea96p-4096 : inexact-ok
+= rootn downward intel96 0x2p-16384 4LL : 0x1.306fe0a31b7152dep-4096 : inexact-ok
+= rootn tonearest intel96 0x2p-16384 4LL : 0x1.306fe0a31b7152dep-4096 : inexact-ok
+= rootn towardzero intel96 0x2p-16384 4LL : 0x1.306fe0a31b7152dep-4096 : inexact-ok
+= rootn upward intel96 0x2p-16384 4LL : 0x1.306fe0a31b7152ep-4096 : inexact-ok
+= rootn downward m68k96 0x2p-16384 4LL : 0x1.306fe0a31b7152dep-4096 : inexact-ok
+= rootn tonearest m68k96 0x2p-16384 4LL : 0x1.306fe0a31b7152dep-4096 : inexact-ok
+= rootn towardzero m68k96 0x2p-16384 4LL : 0x1.306fe0a31b7152dep-4096 : inexact-ok
+= rootn upward m68k96 0x2p-16384 4LL : 0x1.306fe0a31b7152ep-4096 : inexact-ok
+= rootn downward binary128 0x2p-16384 4LL : 0x1.306fe0a31b7152de8d5a46305c85p-4096 : inexact-ok
+= rootn tonearest binary128 0x2p-16384 4LL : 0x1.306fe0a31b7152de8d5a46305c86p-4096 : inexact-ok
+= rootn towardzero binary128 0x2p-16384 4LL : 0x1.306fe0a31b7152de8d5a46305c85p-4096 : inexact-ok
+= rootn upward binary128 0x2p-16384 4LL : 0x1.306fe0a31b7152de8d5a46305c86p-4096 : inexact-ok
+= rootn downward binary64 0x8p-972 4LL : 0x3.5d13f32b5a75ap-244 : inexact-ok
+= rootn tonearest binary64 0x8p-972 4LL : 0x3.5d13f32b5a75ap-244 : inexact-ok
+= rootn towardzero binary64 0x8p-972 4LL : 0x3.5d13f32b5a75ap-244 : inexact-ok
+= rootn upward binary64 0x8p-972 4LL : 0x3.5d13f32b5a75cp-244 : inexact-ok
+= rootn downward intel96 0x8p-972 4LL : 0x3.5d13f32b5a75abdp-244 : inexact-ok
+= rootn tonearest intel96 0x8p-972 4LL : 0x3.5d13f32b5a75abdp-244 : inexact-ok
+= rootn towardzero intel96 0x8p-972 4LL : 0x3.5d13f32b5a75abdp-244 : inexact-ok
+= rootn upward intel96 0x8p-972 4LL : 0x3.5d13f32b5a75abd4p-244 : inexact-ok
+= rootn downward m68k96 0x8p-972 4LL : 0x3.5d13f32b5a75abdp-244 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 4LL : 0x3.5d13f32b5a75abdp-244 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 4LL : 0x3.5d13f32b5a75abdp-244 : inexact-ok
+= rootn upward m68k96 0x8p-972 4LL : 0x3.5d13f32b5a75abd4p-244 : inexact-ok
+= rootn downward binary128 0x8p-972 4LL : 0x3.5d13f32b5a75abd0e69a2ee640b4p-244 : inexact-ok
+= rootn tonearest binary128 0x8p-972 4LL : 0x3.5d13f32b5a75abd0e69a2ee640b4p-244 : inexact-ok
+= rootn towardzero binary128 0x8p-972 4LL : 0x3.5d13f32b5a75abd0e69a2ee640b4p-244 : inexact-ok
+= rootn upward binary128 0x8p-972 4LL : 0x3.5d13f32b5a75abd0e69a2ee640b6p-244 : inexact-ok
+= rootn downward ibm128 0x8p-972 4LL : 0x3.5d13f32b5a75abd0e69a2ee64p-244 : inexact-ok
+= rootn tonearest ibm128 0x8p-972 4LL : 0x3.5d13f32b5a75abd0e69a2ee641p-244 : inexact-ok
+= rootn towardzero ibm128 0x8p-972 4LL : 0x3.5d13f32b5a75abd0e69a2ee64p-244 : inexact-ok
+= rootn upward ibm128 0x8p-972 4LL : 0x3.5d13f32b5a75abd0e69a2ee641p-244 : inexact-ok
+rootn min 5
+= rootn downward binary32 0x4p-128 5LL : 0x6.f6e33p-28 : inexact-ok
+= rootn tonearest binary32 0x4p-128 5LL : 0x6.f6e338p-28 : inexact-ok
+= rootn towardzero binary32 0x4p-128 5LL : 0x6.f6e33p-28 : inexact-ok
+= rootn upward binary32 0x4p-128 5LL : 0x6.f6e338p-28 : inexact-ok
+= rootn downward binary64 0x4p-128 5LL : 0x6.f6e336b6f848p-28 : inexact-ok
+= rootn tonearest binary64 0x4p-128 5LL : 0x6.f6e336b6f848p-28 : inexact-ok
+= rootn towardzero binary64 0x4p-128 5LL : 0x6.f6e336b6f848p-28 : inexact-ok
+= rootn upward binary64 0x4p-128 5LL : 0x6.f6e336b6f8484p-28 : inexact-ok
+= rootn downward intel96 0x4p-128 5LL : 0x6.f6e336b6f848085p-28 : inexact-ok
+= rootn tonearest intel96 0x4p-128 5LL : 0x6.f6e336b6f848085p-28 : inexact-ok
+= rootn towardzero intel96 0x4p-128 5LL : 0x6.f6e336b6f848085p-28 : inexact-ok
+= rootn upward intel96 0x4p-128 5LL : 0x6.f6e336b6f8480858p-28 : inexact-ok
+= rootn downward m68k96 0x4p-128 5LL : 0x6.f6e336b6f848085p-28 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 5LL : 0x6.f6e336b6f848085p-28 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 5LL : 0x6.f6e336b6f848085p-28 : inexact-ok
+= rootn upward m68k96 0x4p-128 5LL : 0x6.f6e336b6f8480858p-28 : inexact-ok
+= rootn downward binary128 0x4p-128 5LL : 0x6.f6e336b6f8480853d874c2c9fea4p-28 : inexact-ok
+= rootn tonearest binary128 0x4p-128 5LL : 0x6.f6e336b6f8480853d874c2c9fea4p-28 : inexact-ok
+= rootn towardzero binary128 0x4p-128 5LL : 0x6.f6e336b6f8480853d874c2c9fea4p-28 : inexact-ok
+= rootn upward binary128 0x4p-128 5LL : 0x6.f6e336b6f8480853d874c2c9fea8p-28 : inexact-ok
+= rootn downward ibm128 0x4p-128 5LL : 0x6.f6e336b6f8480853d874c2c9fep-28 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 5LL : 0x6.f6e336b6f8480853d874c2c9fep-28 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 5LL : 0x6.f6e336b6f8480853d874c2c9fep-28 : inexact-ok
+= rootn upward ibm128 0x4p-128 5LL : 0x6.f6e336b6f8480853d874c2cap-28 : inexact-ok
+= rootn downward binary64 0x4p-1024 5LL : 0xc.203001d9572ep-208 : inexact-ok
+= rootn tonearest binary64 0x4p-1024 5LL : 0xc.203001d9572ep-208 : inexact-ok
+= rootn towardzero binary64 0x4p-1024 5LL : 0xc.203001d9572ep-208 : inexact-ok
+= rootn upward binary64 0x4p-1024 5LL : 0xc.203001d9572e8p-208 : inexact-ok
+= rootn downward intel96 0x4p-1024 5LL : 0xc.203001d9572e35cp-208 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 5LL : 0xc.203001d9572e35dp-208 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 5LL : 0xc.203001d9572e35cp-208 : inexact-ok
+= rootn upward intel96 0x4p-1024 5LL : 0xc.203001d9572e35dp-208 : inexact-ok
+= rootn downward m68k96 0x4p-1024 5LL : 0xc.203001d9572e35cp-208 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 5LL : 0xc.203001d9572e35dp-208 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 5LL : 0xc.203001d9572e35cp-208 : inexact-ok
+= rootn upward m68k96 0x4p-1024 5LL : 0xc.203001d9572e35dp-208 : inexact-ok
+= rootn downward binary128 0x4p-1024 5LL : 0xc.203001d9572e35cc9a3990757098p-208 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 5LL : 0xc.203001d9572e35cc9a3990757098p-208 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 5LL : 0xc.203001d9572e35cc9a3990757098p-208 : inexact-ok
+= rootn upward binary128 0x4p-1024 5LL : 0xc.203001d9572e35cc9a39907570ap-208 : inexact-ok
+= rootn downward ibm128 0x4p-1024 5LL : 0xc.203001d9572e35cc9a3990757p-208 : inexact-ok
+= rootn tonearest ibm128 0x4p-1024 5LL : 0xc.203001d9572e35cc9a3990757p-208 : inexact-ok
+= rootn towardzero ibm128 0x4p-1024 5LL : 0xc.203001d9572e35cc9a3990757p-208 : inexact-ok
+= rootn upward ibm128 0x4p-1024 5LL : 0xc.203001d9572e35cc9a39907574p-208 : inexact-ok
+= rootn downward intel96 0x4p-16384 5LL : 0xc.203001d9572e35cp-3280 : inexact-ok
+= rootn tonearest intel96 0x4p-16384 5LL : 0xc.203001d9572e35dp-3280 : inexact-ok
+= rootn towardzero intel96 0x4p-16384 5LL : 0xc.203001d9572e35cp-3280 : inexact-ok
+= rootn upward intel96 0x4p-16384 5LL : 0xc.203001d9572e35dp-3280 : inexact-ok
+= rootn downward m68k96 0x4p-16384 5LL : 0xc.203001d9572e35cp-3280 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 5LL : 0xc.203001d9572e35dp-3280 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 5LL : 0xc.203001d9572e35cp-3280 : inexact-ok
+= rootn upward m68k96 0x4p-16384 5LL : 0xc.203001d9572e35dp-3280 : inexact-ok
+= rootn downward binary128 0x4p-16384 5LL : 0xc.203001d9572e35cc9a3990757098p-3280 : inexact-ok
+= rootn tonearest binary128 0x4p-16384 5LL : 0xc.203001d9572e35cc9a3990757098p-3280 : inexact-ok
+= rootn towardzero binary128 0x4p-16384 5LL : 0xc.203001d9572e35cc9a3990757098p-3280 : inexact-ok
+= rootn upward binary128 0x4p-16384 5LL : 0xc.203001d9572e35cc9a39907570ap-3280 : inexact-ok
+= rootn downward intel96 0x2p-16384 5LL : 0xa.8e5a29dca9b622bp-3280 : inexact-ok
+= rootn tonearest intel96 0x2p-16384 5LL : 0xa.8e5a29dca9b622bp-3280 : inexact-ok
+= rootn towardzero intel96 0x2p-16384 5LL : 0xa.8e5a29dca9b622bp-3280 : inexact-ok
+= rootn upward intel96 0x2p-16384 5LL : 0xa.8e5a29dca9b622cp-3280 : inexact-ok
+= rootn downward m68k96 0x2p-16384 5LL : 0xa.8e5a29dca9b622bp-3280 : inexact-ok
+= rootn tonearest m68k96 0x2p-16384 5LL : 0xa.8e5a29dca9b622bp-3280 : inexact-ok
+= rootn towardzero m68k96 0x2p-16384 5LL : 0xa.8e5a29dca9b622bp-3280 : inexact-ok
+= rootn upward m68k96 0x2p-16384 5LL : 0xa.8e5a29dca9b622cp-3280 : inexact-ok
+= rootn downward binary128 0x2p-16384 5LL : 0xa.8e5a29dca9b622b49d423b65cb58p-3280 : inexact-ok
+= rootn tonearest binary128 0x2p-16384 5LL : 0xa.8e5a29dca9b622b49d423b65cb58p-3280 : inexact-ok
+= rootn towardzero binary128 0x2p-16384 5LL : 0xa.8e5a29dca9b622b49d423b65cb58p-3280 : inexact-ok
+= rootn upward binary128 0x2p-16384 5LL : 0xa.8e5a29dca9b622b49d423b65cb6p-3280 : inexact-ok
+= rootn downward binary64 0x8p-972 5LL : 0x4.984461aeb99dp-196 : inexact-ok
+= rootn tonearest binary64 0x8p-972 5LL : 0x4.984461aeb99d4p-196 : inexact-ok
+= rootn towardzero binary64 0x8p-972 5LL : 0x4.984461aeb99dp-196 : inexact-ok
+= rootn upward binary64 0x8p-972 5LL : 0x4.984461aeb99d4p-196 : inexact-ok
+= rootn downward intel96 0x8p-972 5LL : 0x4.984461aeb99d25a8p-196 : inexact-ok
+= rootn tonearest intel96 0x8p-972 5LL : 0x4.984461aeb99d25a8p-196 : inexact-ok
+= rootn towardzero intel96 0x8p-972 5LL : 0x4.984461aeb99d25a8p-196 : inexact-ok
+= rootn upward intel96 0x8p-972 5LL : 0x4.984461aeb99d25bp-196 : inexact-ok
+= rootn downward m68k96 0x8p-972 5LL : 0x4.984461aeb99d25a8p-196 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 5LL : 0x4.984461aeb99d25a8p-196 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 5LL : 0x4.984461aeb99d25a8p-196 : inexact-ok
+= rootn upward m68k96 0x8p-972 5LL : 0x4.984461aeb99d25bp-196 : inexact-ok
+= rootn downward binary128 0x8p-972 5LL : 0x4.984461aeb99d25a94879081d8384p-196 : inexact-ok
+= rootn tonearest binary128 0x8p-972 5LL : 0x4.984461aeb99d25a94879081d8388p-196 : inexact-ok
+= rootn towardzero binary128 0x8p-972 5LL : 0x4.984461aeb99d25a94879081d8384p-196 : inexact-ok
+= rootn upward binary128 0x8p-972 5LL : 0x4.984461aeb99d25a94879081d8388p-196 : inexact-ok
+= rootn downward ibm128 0x8p-972 5LL : 0x4.984461aeb99d25a94879081d82p-196 : inexact-ok
+= rootn tonearest ibm128 0x8p-972 5LL : 0x4.984461aeb99d25a94879081d84p-196 : inexact-ok
+= rootn towardzero ibm128 0x8p-972 5LL : 0x4.984461aeb99d25a94879081d82p-196 : inexact-ok
+= rootn upward ibm128 0x8p-972 5LL : 0x4.984461aeb99d25a94879081d84p-196 : inexact-ok
+rootn min 63
+= rootn downward binary32 0x4p-128 63LL : 0x4p-4 : inexact-ok
+= rootn tonearest binary32 0x4p-128 63LL : 0x4p-4 : inexact-ok
+= rootn towardzero binary32 0x4p-128 63LL : 0x4p-4 : inexact-ok
+= rootn upward binary32 0x4p-128 63LL : 0x4p-4 : inexact-ok
+= rootn downward binary64 0x4p-128 63LL : 0x4p-4 : inexact-ok
+= rootn tonearest binary64 0x4p-128 63LL : 0x4p-4 : inexact-ok
+= rootn towardzero binary64 0x4p-128 63LL : 0x4p-4 : inexact-ok
+= rootn upward binary64 0x4p-128 63LL : 0x4p-4 : inexact-ok
+= rootn downward intel96 0x4p-128 63LL : 0x4p-4 : inexact-ok
+= rootn tonearest intel96 0x4p-128 63LL : 0x4p-4 : inexact-ok
+= rootn towardzero intel96 0x4p-128 63LL : 0x4p-4 : inexact-ok
+= rootn upward intel96 0x4p-128 63LL : 0x4p-4 : inexact-ok
+= rootn downward m68k96 0x4p-128 63LL : 0x4p-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 63LL : 0x4p-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 63LL : 0x4p-4 : inexact-ok
+= rootn upward m68k96 0x4p-128 63LL : 0x4p-4 : inexact-ok
+= rootn downward binary128 0x4p-128 63LL : 0x4p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-128 63LL : 0x4p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-128 63LL : 0x4p-4 : inexact-ok
+= rootn upward binary128 0x4p-128 63LL : 0x4p-4 : inexact-ok
+= rootn downward ibm128 0x4p-128 63LL : 0x4p-4 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 63LL : 0x4p-4 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 63LL : 0x4p-4 : inexact-ok
+= rootn upward ibm128 0x4p-128 63LL : 0x4p-4 : inexact-ok
+= rootn downward binary64 0x4p-1024 63LL : 0xd.b7457770bf6a8p-20 : inexact-ok
+= rootn tonearest binary64 0x4p-1024 63LL : 0xd.b7457770bf6a8p-20 : inexact-ok
+= rootn towardzero binary64 0x4p-1024 63LL : 0xd.b7457770bf6a8p-20 : inexact-ok
+= rootn upward binary64 0x4p-1024 63LL : 0xd.b7457770bf6bp-20 : inexact-ok
+= rootn downward intel96 0x4p-1024 63LL : 0xd.b7457770bf6aa9ep-20 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 63LL : 0xd.b7457770bf6aa9ep-20 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 63LL : 0xd.b7457770bf6aa9ep-20 : inexact-ok
+= rootn upward intel96 0x4p-1024 63LL : 0xd.b7457770bf6aa9fp-20 : inexact-ok
+= rootn downward m68k96 0x4p-1024 63LL : 0xd.b7457770bf6aa9ep-20 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 63LL : 0xd.b7457770bf6aa9ep-20 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 63LL : 0xd.b7457770bf6aa9ep-20 : inexact-ok
+= rootn upward m68k96 0x4p-1024 63LL : 0xd.b7457770bf6aa9fp-20 : inexact-ok
+= rootn downward binary128 0x4p-1024 63LL : 0xd.b7457770bf6aa9e44c5178156408p-20 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 63LL : 0xd.b7457770bf6aa9e44c5178156408p-20 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 63LL : 0xd.b7457770bf6aa9e44c5178156408p-20 : inexact-ok
+= rootn upward binary128 0x4p-1024 63LL : 0xd.b7457770bf6aa9e44c517815641p-20 : inexact-ok
+= rootn downward ibm128 0x4p-1024 63LL : 0xd.b7457770bf6aa9e44c51781564p-20 : inexact-ok
+= rootn tonearest ibm128 0x4p-1024 63LL : 0xd.b7457770bf6aa9e44c51781564p-20 : inexact-ok
+= rootn towardzero ibm128 0x4p-1024 63LL : 0xd.b7457770bf6aa9e44c51781564p-20 : inexact-ok
+= rootn upward ibm128 0x4p-1024 63LL : 0xd.b7457770bf6aa9e44c51781568p-20 : inexact-ok
+= rootn downward intel96 0x4p-16384 63LL : 0xf.a6da70a17d1239ep-264 : inexact-ok
+= rootn tonearest intel96 0x4p-16384 63LL : 0xf.a6da70a17d1239fp-264 : inexact-ok
+= rootn towardzero intel96 0x4p-16384 63LL : 0xf.a6da70a17d1239ep-264 : inexact-ok
+= rootn upward intel96 0x4p-16384 63LL : 0xf.a6da70a17d1239fp-264 : inexact-ok
+= rootn downward m68k96 0x4p-16384 63LL : 0xf.a6da70a17d1239ep-264 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 63LL : 0xf.a6da70a17d1239fp-264 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 63LL : 0xf.a6da70a17d1239ep-264 : inexact-ok
+= rootn upward m68k96 0x4p-16384 63LL : 0xf.a6da70a17d1239fp-264 : inexact-ok
+= rootn downward binary128 0x4p-16384 63LL : 0xf.a6da70a17d1239ebf94c8c3d2c78p-264 : inexact-ok
+= rootn tonearest binary128 0x4p-16384 63LL : 0xf.a6da70a17d1239ebf94c8c3d2c78p-264 : inexact-ok
+= rootn towardzero binary128 0x4p-16384 63LL : 0xf.a6da70a17d1239ebf94c8c3d2c78p-264 : inexact-ok
+= rootn upward binary128 0x4p-16384 63LL : 0xf.a6da70a17d1239ebf94c8c3d2c8p-264 : inexact-ok
+= rootn downward intel96 0x2p-16384 63LL : 0xf.7b029a299cff9ep-264 : inexact-ok
+= rootn tonearest intel96 0x2p-16384 63LL : 0xf.7b029a299cff9ep-264 : inexact-ok
+= rootn towardzero intel96 0x2p-16384 63LL : 0xf.7b029a299cff9ep-264 : inexact-ok
+= rootn upward intel96 0x2p-16384 63LL : 0xf.7b029a299cff9e1p-264 : inexact-ok
+= rootn downward m68k96 0x2p-16384 63LL : 0xf.7b029a299cff9ep-264 : inexact-ok
+= rootn tonearest m68k96 0x2p-16384 63LL : 0xf.7b029a299cff9ep-264 : inexact-ok
+= rootn towardzero m68k96 0x2p-16384 63LL : 0xf.7b029a299cff9ep-264 : inexact-ok
+= rootn upward m68k96 0x2p-16384 63LL : 0xf.7b029a299cff9e1p-264 : inexact-ok
+= rootn downward binary128 0x2p-16384 63LL : 0xf.7b029a299cff9e0127d88b6a2f18p-264 : inexact-ok
+= rootn tonearest binary128 0x2p-16384 63LL : 0xf.7b029a299cff9e0127d88b6a2f18p-264 : inexact-ok
+= rootn towardzero binary128 0x2p-16384 63LL : 0xf.7b029a299cff9e0127d88b6a2f18p-264 : inexact-ok
+= rootn upward binary128 0x2p-16384 63LL : 0xf.7b029a299cff9e0127d88b6a2f2p-264 : inexact-ok
+= rootn downward binary64 0x8p-972 63LL : 0x1.892e2f1f775cbp-16 : inexact-ok
+= rootn tonearest binary64 0x8p-972 63LL : 0x1.892e2f1f775cbp-16 : inexact-ok
+= rootn towardzero binary64 0x8p-972 63LL : 0x1.892e2f1f775cbp-16 : inexact-ok
+= rootn upward binary64 0x8p-972 63LL : 0x1.892e2f1f775ccp-16 : inexact-ok
+= rootn downward intel96 0x8p-972 63LL : 0x1.892e2f1f775cb074p-16 : inexact-ok
+= rootn tonearest intel96 0x8p-972 63LL : 0x1.892e2f1f775cb076p-16 : inexact-ok
+= rootn towardzero intel96 0x8p-972 63LL : 0x1.892e2f1f775cb074p-16 : inexact-ok
+= rootn upward intel96 0x8p-972 63LL : 0x1.892e2f1f775cb076p-16 : inexact-ok
+= rootn downward m68k96 0x8p-972 63LL : 0x1.892e2f1f775cb074p-16 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 63LL : 0x1.892e2f1f775cb076p-16 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 63LL : 0x1.892e2f1f775cb074p-16 : inexact-ok
+= rootn upward m68k96 0x8p-972 63LL : 0x1.892e2f1f775cb076p-16 : inexact-ok
+= rootn downward binary128 0x8p-972 63LL : 0x1.892e2f1f775cb075289a1b81be02p-16 : inexact-ok
+= rootn tonearest binary128 0x8p-972 63LL : 0x1.892e2f1f775cb075289a1b81be03p-16 : inexact-ok
+= rootn towardzero binary128 0x8p-972 63LL : 0x1.892e2f1f775cb075289a1b81be02p-16 : inexact-ok
+= rootn upward binary128 0x8p-972 63LL : 0x1.892e2f1f775cb075289a1b81be03p-16 : inexact-ok
+= rootn downward ibm128 0x8p-972 63LL : 0x1.892e2f1f775cb075289a1b81bep-16 : inexact-ok
+= rootn tonearest ibm128 0x8p-972 63LL : 0x1.892e2f1f775cb075289a1b81bep-16 : inexact-ok
+= rootn towardzero ibm128 0x8p-972 63LL : 0x1.892e2f1f775cb075289a1b81bep-16 : inexact-ok
+= rootn upward ibm128 0x8p-972 63LL : 0x1.892e2f1f775cb075289a1b81be8p-16 : inexact-ok
+rootn min 127
+= rootn downward binary32 0x4p-128 127LL : 0x8.0b354p-4 : inexact-ok
+= rootn tonearest binary32 0x4p-128 127LL : 0x8.0b355p-4 : inexact-ok
+= rootn towardzero binary32 0x4p-128 127LL : 0x8.0b354p-4 : inexact-ok
+= rootn upward binary32 0x4p-128 127LL : 0x8.0b355p-4 : inexact-ok
+= rootn downward binary64 0x4p-128 127LL : 0x8.0b354f2930d1p-4 : inexact-ok
+= rootn tonearest binary64 0x4p-128 127LL : 0x8.0b354f2930d1p-4 : inexact-ok
+= rootn towardzero binary64 0x4p-128 127LL : 0x8.0b354f2930d1p-4 : inexact-ok
+= rootn upward binary64 0x4p-128 127LL : 0x8.0b354f2930d18p-4 : inexact-ok
+= rootn downward intel96 0x4p-128 127LL : 0x8.0b354f2930d10a1p-4 : inexact-ok
+= rootn tonearest intel96 0x4p-128 127LL : 0x8.0b354f2930d10a2p-4 : inexact-ok
+= rootn towardzero intel96 0x4p-128 127LL : 0x8.0b354f2930d10a1p-4 : inexact-ok
+= rootn upward intel96 0x4p-128 127LL : 0x8.0b354f2930d10a2p-4 : inexact-ok
+= rootn downward m68k96 0x4p-128 127LL : 0x8.0b354f2930d10a1p-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 127LL : 0x8.0b354f2930d10a2p-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 127LL : 0x8.0b354f2930d10a1p-4 : inexact-ok
+= rootn upward m68k96 0x4p-128 127LL : 0x8.0b354f2930d10a2p-4 : inexact-ok
+= rootn downward binary128 0x4p-128 127LL : 0x8.0b354f2930d10a1871c242d8987p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-128 127LL : 0x8.0b354f2930d10a1871c242d8987p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-128 127LL : 0x8.0b354f2930d10a1871c242d8987p-4 : inexact-ok
+= rootn upward binary128 0x4p-128 127LL : 0x8.0b354f2930d10a1871c242d89878p-4 : inexact-ok
+= rootn downward ibm128 0x4p-128 127LL : 0x8.0b354f2930d10a1871c242d898p-4 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 127LL : 0x8.0b354f2930d10a1871c242d898p-4 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 127LL : 0x8.0b354f2930d10a1871c242d898p-4 : inexact-ok
+= rootn upward ibm128 0x4p-128 127LL : 0x8.0b354f2930d10a1871c242d89cp-4 : inexact-ok
+= rootn downward binary64 0x4p-1024 127LL : 0xf.7c0a4f861ec08p-12 : inexact-ok
+= rootn tonearest binary64 0x4p-1024 127LL : 0xf.7c0a4f861ec1p-12 : inexact-ok
+= rootn towardzero binary64 0x4p-1024 127LL : 0xf.7c0a4f861ec08p-12 : inexact-ok
+= rootn upward binary64 0x4p-1024 127LL : 0xf.7c0a4f861ec1p-12 : inexact-ok
+= rootn downward intel96 0x4p-1024 127LL : 0xf.7c0a4f861ec0fa4p-12 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 127LL : 0xf.7c0a4f861ec0fa4p-12 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 127LL : 0xf.7c0a4f861ec0fa4p-12 : inexact-ok
+= rootn upward intel96 0x4p-1024 127LL : 0xf.7c0a4f861ec0fa5p-12 : inexact-ok
+= rootn downward m68k96 0x4p-1024 127LL : 0xf.7c0a4f861ec0fa4p-12 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 127LL : 0xf.7c0a4f861ec0fa4p-12 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 127LL : 0xf.7c0a4f861ec0fa4p-12 : inexact-ok
+= rootn upward m68k96 0x4p-1024 127LL : 0xf.7c0a4f861ec0fa5p-12 : inexact-ok
+= rootn downward binary128 0x4p-1024 127LL : 0xf.7c0a4f861ec0fa45e2aff00d6148p-12 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 127LL : 0xf.7c0a4f861ec0fa45e2aff00d615p-12 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 127LL : 0xf.7c0a4f861ec0fa45e2aff00d6148p-12 : inexact-ok
+= rootn upward binary128 0x4p-1024 127LL : 0xf.7c0a4f861ec0fa45e2aff00d615p-12 : inexact-ok
+= rootn downward ibm128 0x4p-1024 127LL : 0xf.7c0a4f861ec0fa45e2aff00d6p-12 : inexact-ok
+= rootn tonearest ibm128 0x4p-1024 127LL : 0xf.7c0a4f861ec0fa45e2aff00d6p-12 : inexact-ok
+= rootn towardzero ibm128 0x4p-1024 127LL : 0xf.7c0a4f861ec0fa45e2aff00d6p-12 : inexact-ok
+= rootn upward ibm128 0x4p-1024 127LL : 0xf.7c0a4f861ec0fa45e2aff00d64p-12 : inexact-ok
+= rootn downward intel96 0x4p-16384 127LL : 0x8.0b354f2930d10a1p-132 : inexact-ok
+= rootn tonearest intel96 0x4p-16384 127LL : 0x8.0b354f2930d10a2p-132 : inexact-ok
+= rootn towardzero intel96 0x4p-16384 127LL : 0x8.0b354f2930d10a1p-132 : inexact-ok
+= rootn upward intel96 0x4p-16384 127LL : 0x8.0b354f2930d10a2p-132 : inexact-ok
+= rootn downward m68k96 0x4p-16384 127LL : 0x8.0b354f2930d10a1p-132 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 127LL : 0x8.0b354f2930d10a2p-132 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 127LL : 0x8.0b354f2930d10a1p-132 : inexact-ok
+= rootn upward m68k96 0x4p-16384 127LL : 0x8.0b354f2930d10a2p-132 : inexact-ok
+= rootn downward binary128 0x4p-16384 127LL : 0x8.0b354f2930d10a1871c242d8987p-132 : inexact-ok
+= rootn tonearest binary128 0x4p-16384 127LL : 0x8.0b354f2930d10a1871c242d8987p-132 : inexact-ok
+= rootn towardzero binary128 0x4p-16384 127LL : 0x8.0b354f2930d10a1871c242d8987p-132 : inexact-ok
+= rootn upward binary128 0x4p-16384 127LL : 0x8.0b354f2930d10a1871c242d89878p-132 : inexact-ok
+= rootn downward intel96 0x2p-16384 127LL : 0x8p-132 : inexact-ok
+= rootn tonearest intel96 0x2p-16384 127LL : 0x8p-132 : inexact-ok
+= rootn towardzero intel96 0x2p-16384 127LL : 0x8p-132 : inexact-ok
+= rootn upward intel96 0x2p-16384 127LL : 0x8p-132 : inexact-ok
+= rootn downward m68k96 0x2p-16384 127LL : 0x8p-132 : inexact-ok
+= rootn tonearest m68k96 0x2p-16384 127LL : 0x8p-132 : inexact-ok
+= rootn towardzero m68k96 0x2p-16384 127LL : 0x8p-132 : inexact-ok
+= rootn upward m68k96 0x2p-16384 127LL : 0x8p-132 : inexact-ok
+= rootn downward binary128 0x2p-16384 127LL : 0x8p-132 : inexact-ok
+= rootn tonearest binary128 0x2p-16384 127LL : 0x8p-132 : inexact-ok
+= rootn towardzero binary128 0x2p-16384 127LL : 0x8p-132 : inexact-ok
+= rootn upward binary128 0x2p-16384 127LL : 0x8p-132 : inexact-ok
+= rootn downward binary64 0x8p-972 127LL : 0x1.4adc41fefd0dfp-8 : inexact-ok
+= rootn tonearest binary64 0x8p-972 127LL : 0x1.4adc41fefd0ep-8 : inexact-ok
+= rootn towardzero binary64 0x8p-972 127LL : 0x1.4adc41fefd0dfp-8 : inexact-ok
+= rootn upward binary64 0x8p-972 127LL : 0x1.4adc41fefd0ep-8 : inexact-ok
+= rootn downward intel96 0x8p-972 127LL : 0x1.4adc41fefd0dff38p-8 : inexact-ok
+= rootn tonearest intel96 0x8p-972 127LL : 0x1.4adc41fefd0dff3ap-8 : inexact-ok
+= rootn towardzero intel96 0x8p-972 127LL : 0x1.4adc41fefd0dff38p-8 : inexact-ok
+= rootn upward intel96 0x8p-972 127LL : 0x1.4adc41fefd0dff3ap-8 : inexact-ok
+= rootn downward m68k96 0x8p-972 127LL : 0x1.4adc41fefd0dff38p-8 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 127LL : 0x1.4adc41fefd0dff3ap-8 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 127LL : 0x1.4adc41fefd0dff38p-8 : inexact-ok
+= rootn upward m68k96 0x8p-972 127LL : 0x1.4adc41fefd0dff3ap-8 : inexact-ok
+= rootn downward binary128 0x8p-972 127LL : 0x1.4adc41fefd0dff39f4917bd98d56p-8 : inexact-ok
+= rootn tonearest binary128 0x8p-972 127LL : 0x1.4adc41fefd0dff39f4917bd98d57p-8 : inexact-ok
+= rootn towardzero binary128 0x8p-972 127LL : 0x1.4adc41fefd0dff39f4917bd98d56p-8 : inexact-ok
+= rootn upward binary128 0x8p-972 127LL : 0x1.4adc41fefd0dff39f4917bd98d57p-8 : inexact-ok
+= rootn downward ibm128 0x8p-972 127LL : 0x1.4adc41fefd0dff39f4917bd98dp-8 : inexact-ok
+= rootn tonearest ibm128 0x8p-972 127LL : 0x1.4adc41fefd0dff39f4917bd98d8p-8 : inexact-ok
+= rootn towardzero ibm128 0x8p-972 127LL : 0x1.4adc41fefd0dff39f4917bd98dp-8 : inexact-ok
+= rootn upward ibm128 0x8p-972 127LL : 0x1.4adc41fefd0dff39f4917bd98d8p-8 : inexact-ok
+rootn min 255
+= rootn downward binary32 0x4p-128 255LL : 0xb.5c248p-4 : inexact-ok
+= rootn tonearest binary32 0x4p-128 255LL : 0xb.5c249p-4 : inexact-ok
+= rootn towardzero binary32 0x4p-128 255LL : 0xb.5c248p-4 : inexact-ok
+= rootn upward binary32 0x4p-128 255LL : 0xb.5c249p-4 : inexact-ok
+= rootn downward binary64 0x4p-128 255LL : 0xb.5c2488b71228p-4 : inexact-ok
+= rootn tonearest binary64 0x4p-128 255LL : 0xb.5c2488b71228p-4 : inexact-ok
+= rootn towardzero binary64 0x4p-128 255LL : 0xb.5c2488b71228p-4 : inexact-ok
+= rootn upward binary64 0x4p-128 255LL : 0xb.5c2488b712288p-4 : inexact-ok
+= rootn downward intel96 0x4p-128 255LL : 0xb.5c2488b712283dcp-4 : inexact-ok
+= rootn tonearest intel96 0x4p-128 255LL : 0xb.5c2488b712283dcp-4 : inexact-ok
+= rootn towardzero intel96 0x4p-128 255LL : 0xb.5c2488b712283dcp-4 : inexact-ok
+= rootn upward intel96 0x4p-128 255LL : 0xb.5c2488b712283ddp-4 : inexact-ok
+= rootn downward m68k96 0x4p-128 255LL : 0xb.5c2488b712283dcp-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 255LL : 0xb.5c2488b712283dcp-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 255LL : 0xb.5c2488b712283dcp-4 : inexact-ok
+= rootn upward m68k96 0x4p-128 255LL : 0xb.5c2488b712283ddp-4 : inexact-ok
+= rootn downward binary128 0x4p-128 255LL : 0xb.5c2488b712283dc0b0d2f0690608p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-128 255LL : 0xb.5c2488b712283dc0b0d2f0690608p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-128 255LL : 0xb.5c2488b712283dc0b0d2f0690608p-4 : inexact-ok
+= rootn upward binary128 0x4p-128 255LL : 0xb.5c2488b712283dc0b0d2f069061p-4 : inexact-ok
+= rootn downward ibm128 0x4p-128 255LL : 0xb.5c2488b712283dc0b0d2f06904p-4 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 255LL : 0xb.5c2488b712283dc0b0d2f06908p-4 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 255LL : 0xb.5c2488b712283dc0b0d2f06904p-4 : inexact-ok
+= rootn upward ibm128 0x4p-128 255LL : 0xb.5c2488b712283dc0b0d2f06908p-4 : inexact-ok
+= rootn downward binary64 0x4p-1024 255LL : 0xf.e9caf018dca1p-8 : inexact-ok
+= rootn tonearest binary64 0x4p-1024 255LL : 0xf.e9caf018dca1p-8 : inexact-ok
+= rootn towardzero binary64 0x4p-1024 255LL : 0xf.e9caf018dca1p-8 : inexact-ok
+= rootn upward binary64 0x4p-1024 255LL : 0xf.e9caf018dca18p-8 : inexact-ok
+= rootn downward intel96 0x4p-1024 255LL : 0xf.e9caf018dca1124p-8 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 255LL : 0xf.e9caf018dca1125p-8 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 255LL : 0xf.e9caf018dca1124p-8 : inexact-ok
+= rootn upward intel96 0x4p-1024 255LL : 0xf.e9caf018dca1125p-8 : inexact-ok
+= rootn downward m68k96 0x4p-1024 255LL : 0xf.e9caf018dca1124p-8 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 255LL : 0xf.e9caf018dca1125p-8 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 255LL : 0xf.e9caf018dca1124p-8 : inexact-ok
+= rootn upward m68k96 0x4p-1024 255LL : 0xf.e9caf018dca1125p-8 : inexact-ok
+= rootn downward binary128 0x4p-1024 255LL : 0xf.e9caf018dca1124c01474269126p-8 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 255LL : 0xf.e9caf018dca1124c014742691268p-8 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 255LL : 0xf.e9caf018dca1124c01474269126p-8 : inexact-ok
+= rootn upward binary128 0x4p-1024 255LL : 0xf.e9caf018dca1124c014742691268p-8 : inexact-ok
+= rootn downward ibm128 0x4p-1024 255LL : 0xf.e9caf018dca1124c014742691p-8 : inexact-ok
+= rootn tonearest ibm128 0x4p-1024 255LL : 0xf.e9caf018dca1124c0147426914p-8 : inexact-ok
+= rootn towardzero ibm128 0x4p-1024 255LL : 0xf.e9caf018dca1124c014742691p-8 : inexact-ok
+= rootn upward ibm128 0x4p-1024 255LL : 0xf.e9caf018dca1124c0147426914p-8 : inexact-ok
+= rootn downward intel96 0x4p-16384 255LL : 0xd.84bc26dd1a98ee1p-68 : inexact-ok
+= rootn tonearest intel96 0x4p-16384 255LL : 0xd.84bc26dd1a98ee1p-68 : inexact-ok
+= rootn towardzero intel96 0x4p-16384 255LL : 0xd.84bc26dd1a98ee1p-68 : inexact-ok
+= rootn upward intel96 0x4p-16384 255LL : 0xd.84bc26dd1a98ee2p-68 : inexact-ok
+= rootn downward m68k96 0x4p-16384 255LL : 0xd.84bc26dd1a98ee1p-68 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 255LL : 0xd.84bc26dd1a98ee1p-68 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 255LL : 0xd.84bc26dd1a98ee1p-68 : inexact-ok
+= rootn upward m68k96 0x4p-16384 255LL : 0xd.84bc26dd1a98ee2p-68 : inexact-ok
+= rootn downward binary128 0x4p-16384 255LL : 0xd.84bc26dd1a98ee101972b6f753e8p-68 : inexact-ok
+= rootn tonearest binary128 0x4p-16384 255LL : 0xd.84bc26dd1a98ee101972b6f753fp-68 : inexact-ok
+= rootn towardzero binary128 0x4p-16384 255LL : 0xd.84bc26dd1a98ee101972b6f753e8p-68 : inexact-ok
+= rootn upward binary128 0x4p-16384 255LL : 0xd.84bc26dd1a98ee101972b6f753fp-68 : inexact-ok
+= rootn downward intel96 0x2p-16384 255LL : 0xd.7b57375449b589bp-68 : inexact-ok
+= rootn tonearest intel96 0x2p-16384 255LL : 0xd.7b57375449b589cp-68 : inexact-ok
+= rootn towardzero intel96 0x2p-16384 255LL : 0xd.7b57375449b589bp-68 : inexact-ok
+= rootn upward intel96 0x2p-16384 255LL : 0xd.7b57375449b589cp-68 : inexact-ok
+= rootn downward m68k96 0x2p-16384 255LL : 0xd.7b57375449b589bp-68 : inexact-ok
+= rootn tonearest m68k96 0x2p-16384 255LL : 0xd.7b57375449b589cp-68 : inexact-ok
+= rootn towardzero m68k96 0x2p-16384 255LL : 0xd.7b57375449b589bp-68 : inexact-ok
+= rootn upward m68k96 0x2p-16384 255LL : 0xd.7b57375449b589cp-68 : inexact-ok
+= rootn downward binary128 0x2p-16384 255LL : 0xd.7b57375449b589b9ef5b34fb2dcp-68 : inexact-ok
+= rootn tonearest binary128 0x2p-16384 255LL : 0xd.7b57375449b589b9ef5b34fb2dcp-68 : inexact-ok
+= rootn towardzero binary128 0x2p-16384 255LL : 0xd.7b57375449b589b9ef5b34fb2dcp-68 : inexact-ok
+= rootn upward binary128 0x2p-16384 255LL : 0xd.7b57375449b589b9ef5b34fb2dc8p-68 : inexact-ok
+= rootn downward binary64 0x8p-972 255LL : 0x1.2611186bae674p-4 : inexact-ok
+= rootn tonearest binary64 0x8p-972 255LL : 0x1.2611186bae675p-4 : inexact-ok
+= rootn towardzero binary64 0x8p-972 255LL : 0x1.2611186bae674p-4 : inexact-ok
+= rootn upward binary64 0x8p-972 255LL : 0x1.2611186bae675p-4 : inexact-ok
+= rootn downward intel96 0x8p-972 255LL : 0x1.2611186bae67496ap-4 : inexact-ok
+= rootn tonearest intel96 0x8p-972 255LL : 0x1.2611186bae67496ap-4 : inexact-ok
+= rootn towardzero intel96 0x8p-972 255LL : 0x1.2611186bae67496ap-4 : inexact-ok
+= rootn upward intel96 0x8p-972 255LL : 0x1.2611186bae67496cp-4 : inexact-ok
+= rootn downward m68k96 0x8p-972 255LL : 0x1.2611186bae67496ap-4 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 255LL : 0x1.2611186bae67496ap-4 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 255LL : 0x1.2611186bae67496ap-4 : inexact-ok
+= rootn upward m68k96 0x8p-972 255LL : 0x1.2611186bae67496cp-4 : inexact-ok
+= rootn downward binary128 0x8p-972 255LL : 0x1.2611186bae67496a521e420760e1p-4 : inexact-ok
+= rootn tonearest binary128 0x8p-972 255LL : 0x1.2611186bae67496a521e420760e2p-4 : inexact-ok
+= rootn towardzero binary128 0x8p-972 255LL : 0x1.2611186bae67496a521e420760e1p-4 : inexact-ok
+= rootn upward binary128 0x8p-972 255LL : 0x1.2611186bae67496a521e420760e2p-4 : inexact-ok
+= rootn downward ibm128 0x8p-972 255LL : 0x1.2611186bae67496a521e4207608p-4 : inexact-ok
+= rootn tonearest ibm128 0x8p-972 255LL : 0x1.2611186bae67496a521e420761p-4 : inexact-ok
+= rootn towardzero ibm128 0x8p-972 255LL : 0x1.2611186bae67496a521e4207608p-4 : inexact-ok
+= rootn upward ibm128 0x8p-972 255LL : 0x1.2611186bae67496a521e420761p-4 : inexact-ok
+rootn min 511
+= rootn downward binary32 0x4p-128 511LL : 0xd.7c7f5p-4 : inexact-ok
+= rootn tonearest binary32 0x4p-128 511LL : 0xd.7c7f6p-4 : inexact-ok
+= rootn towardzero binary32 0x4p-128 511LL : 0xd.7c7f5p-4 : inexact-ok
+= rootn upward binary32 0x4p-128 511LL : 0xd.7c7f6p-4 : inexact-ok
+= rootn downward binary64 0x4p-128 511LL : 0xd.7c7f5ca3f404p-4 : inexact-ok
+= rootn tonearest binary64 0x4p-128 511LL : 0xd.7c7f5ca3f4048p-4 : inexact-ok
+= rootn towardzero binary64 0x4p-128 511LL : 0xd.7c7f5ca3f404p-4 : inexact-ok
+= rootn upward binary64 0x4p-128 511LL : 0xd.7c7f5ca3f4048p-4 : inexact-ok
+= rootn downward intel96 0x4p-128 511LL : 0xd.7c7f5ca3f40455dp-4 : inexact-ok
+= rootn tonearest intel96 0x4p-128 511LL : 0xd.7c7f5ca3f40455ep-4 : inexact-ok
+= rootn towardzero intel96 0x4p-128 511LL : 0xd.7c7f5ca3f40455dp-4 : inexact-ok
+= rootn upward intel96 0x4p-128 511LL : 0xd.7c7f5ca3f40455ep-4 : inexact-ok
+= rootn downward m68k96 0x4p-128 511LL : 0xd.7c7f5ca3f40455dp-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 511LL : 0xd.7c7f5ca3f40455ep-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 511LL : 0xd.7c7f5ca3f40455dp-4 : inexact-ok
+= rootn upward m68k96 0x4p-128 511LL : 0xd.7c7f5ca3f40455ep-4 : inexact-ok
+= rootn downward binary128 0x4p-128 511LL : 0xd.7c7f5ca3f40455df1b02c039286p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-128 511LL : 0xd.7c7f5ca3f40455df1b02c039286p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-128 511LL : 0xd.7c7f5ca3f40455df1b02c039286p-4 : inexact-ok
+= rootn upward binary128 0x4p-128 511LL : 0xd.7c7f5ca3f40455df1b02c0392868p-4 : inexact-ok
+= rootn downward ibm128 0x4p-128 511LL : 0xd.7c7f5ca3f40455df1b02c03928p-4 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 511LL : 0xd.7c7f5ca3f40455df1b02c03928p-4 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 511LL : 0xd.7c7f5ca3f40455df1b02c03928p-4 : inexact-ok
+= rootn upward ibm128 0x4p-128 511LL : 0xd.7c7f5ca3f40455df1b02c0392cp-4 : inexact-ok
+= rootn downward binary64 0x4p-1024 511LL : 0x4p-4 : inexact-ok
+= rootn tonearest binary64 0x4p-1024 511LL : 0x4p-4 : inexact-ok
+= rootn towardzero binary64 0x4p-1024 511LL : 0x4p-4 : inexact-ok
+= rootn upward binary64 0x4p-1024 511LL : 0x4p-4 : inexact-ok
+= rootn downward intel96 0x4p-1024 511LL : 0x4p-4 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 511LL : 0x4p-4 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 511LL : 0x4p-4 : inexact-ok
+= rootn upward intel96 0x4p-1024 511LL : 0x4p-4 : inexact-ok
+= rootn downward m68k96 0x4p-1024 511LL : 0x4p-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 511LL : 0x4p-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 511LL : 0x4p-4 : inexact-ok
+= rootn upward m68k96 0x4p-1024 511LL : 0x4p-4 : inexact-ok
+= rootn downward binary128 0x4p-1024 511LL : 0x4p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 511LL : 0x4p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 511LL : 0x4p-4 : inexact-ok
+= rootn upward binary128 0x4p-1024 511LL : 0x4p-4 : inexact-ok
+= rootn downward ibm128 0x4p-1024 511LL : 0x4p-4 : inexact-ok
+= rootn tonearest ibm128 0x4p-1024 511LL : 0x4p-4 : inexact-ok
+= rootn towardzero ibm128 0x4p-1024 511LL : 0x4p-4 : inexact-ok
+= rootn upward ibm128 0x4p-1024 511LL : 0x4p-4 : inexact-ok
+= rootn downward intel96 0x4p-16384 511LL : 0xf.5caa3e0dbb8e8f5p-36 : inexact-ok
+= rootn tonearest intel96 0x4p-16384 511LL : 0xf.5caa3e0dbb8e8f5p-36 : inexact-ok
+= rootn towardzero intel96 0x4p-16384 511LL : 0xf.5caa3e0dbb8e8f5p-36 : inexact-ok
+= rootn upward intel96 0x4p-16384 511LL : 0xf.5caa3e0dbb8e8f6p-36 : inexact-ok
+= rootn downward m68k96 0x4p-16384 511LL : 0xf.5caa3e0dbb8e8f5p-36 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 511LL : 0xf.5caa3e0dbb8e8f5p-36 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 511LL : 0xf.5caa3e0dbb8e8f5p-36 : inexact-ok
+= rootn upward m68k96 0x4p-16384 511LL : 0xf.5caa3e0dbb8e8f6p-36 : inexact-ok
+= rootn downward binary128 0x4p-16384 511LL : 0xf.5caa3e0dbb8e8f5731368024443p-36 : inexact-ok
+= rootn tonearest binary128 0x4p-16384 511LL : 0xf.5caa3e0dbb8e8f57313680244438p-36 : inexact-ok
+= rootn towardzero binary128 0x4p-16384 511LL : 0xf.5caa3e0dbb8e8f5731368024443p-36 : inexact-ok
+= rootn upward binary128 0x4p-16384 511LL : 0xf.5caa3e0dbb8e8f57313680244438p-36 : inexact-ok
+= rootn downward intel96 0x2p-16384 511LL : 0xf.57558b0973d6c56p-36 : inexact-ok
+= rootn tonearest intel96 0x2p-16384 511LL : 0xf.57558b0973d6c56p-36 : inexact-ok
+= rootn towardzero intel96 0x2p-16384 511LL : 0xf.57558b0973d6c56p-36 : inexact-ok
+= rootn upward intel96 0x2p-16384 511LL : 0xf.57558b0973d6c57p-36 : inexact-ok
+= rootn downward m68k96 0x2p-16384 511LL : 0xf.57558b0973d6c56p-36 : inexact-ok
+= rootn tonearest m68k96 0x2p-16384 511LL : 0xf.57558b0973d6c56p-36 : inexact-ok
+= rootn towardzero m68k96 0x2p-16384 511LL : 0xf.57558b0973d6c56p-36 : inexact-ok
+= rootn upward m68k96 0x2p-16384 511LL : 0xf.57558b0973d6c57p-36 : inexact-ok
+= rootn downward binary128 0x2p-16384 511LL : 0xf.57558b0973d6c565e33bf3a2b02p-36 : inexact-ok
+= rootn tonearest binary128 0x2p-16384 511LL : 0xf.57558b0973d6c565e33bf3a2b02p-36 : inexact-ok
+= rootn towardzero binary128 0x2p-16384 511LL : 0xf.57558b0973d6c565e33bf3a2b02p-36 : inexact-ok
+= rootn upward binary128 0x2p-16384 511LL : 0xf.57558b0973d6c565e33bf3a2b028p-36 : inexact-ok
+= rootn downward binary64 0x8p-972 511LL : 0x4.4c54054c4f5dcp-4 : inexact-ok
+= rootn tonearest binary64 0x8p-972 511LL : 0x4.4c54054c4f5dcp-4 : inexact-ok
+= rootn towardzero binary64 0x8p-972 511LL : 0x4.4c54054c4f5dcp-4 : inexact-ok
+= rootn upward binary64 0x8p-972 511LL : 0x4.4c54054c4f5ep-4 : inexact-ok
+= rootn downward intel96 0x8p-972 511LL : 0x4.4c54054c4f5dc3bp-4 : inexact-ok
+= rootn tonearest intel96 0x8p-972 511LL : 0x4.4c54054c4f5dc3bp-4 : inexact-ok
+= rootn towardzero intel96 0x8p-972 511LL : 0x4.4c54054c4f5dc3bp-4 : inexact-ok
+= rootn upward intel96 0x8p-972 511LL : 0x4.4c54054c4f5dc3b8p-4 : inexact-ok
+= rootn downward m68k96 0x8p-972 511LL : 0x4.4c54054c4f5dc3bp-4 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 511LL : 0x4.4c54054c4f5dc3bp-4 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 511LL : 0x4.4c54054c4f5dc3bp-4 : inexact-ok
+= rootn upward m68k96 0x8p-972 511LL : 0x4.4c54054c4f5dc3b8p-4 : inexact-ok
+= rootn downward binary128 0x8p-972 511LL : 0x4.4c54054c4f5dc3b242b827f9218cp-4 : inexact-ok
+= rootn tonearest binary128 0x8p-972 511LL : 0x4.4c54054c4f5dc3b242b827f9219p-4 : inexact-ok
+= rootn towardzero binary128 0x8p-972 511LL : 0x4.4c54054c4f5dc3b242b827f9218cp-4 : inexact-ok
+= rootn upward binary128 0x8p-972 511LL : 0x4.4c54054c4f5dc3b242b827f9219p-4 : inexact-ok
+= rootn downward ibm128 0x8p-972 511LL : 0x4.4c54054c4f5dc3b242b827f92p-4 : inexact-ok
+= rootn tonearest ibm128 0x8p-972 511LL : 0x4.4c54054c4f5dc3b242b827f922p-4 : inexact-ok
+= rootn towardzero ibm128 0x8p-972 511LL : 0x4.4c54054c4f5dc3b242b827f92p-4 : inexact-ok
+= rootn upward ibm128 0x8p-972 511LL : 0x4.4c54054c4f5dc3b242b827f922p-4 : inexact-ok
+rootn min 1023
+= rootn downward binary32 0x4p-128 1023LL : 0xe.b0d2cp-4 : inexact-ok
+= rootn tonearest binary32 0x4p-128 1023LL : 0xe.b0d2dp-4 : inexact-ok
+= rootn towardzero binary32 0x4p-128 1023LL : 0xe.b0d2cp-4 : inexact-ok
+= rootn upward binary32 0x4p-128 1023LL : 0xe.b0d2dp-4 : inexact-ok
+= rootn downward binary64 0x4p-128 1023LL : 0xe.b0d2c9f47441p-4 : inexact-ok
+= rootn tonearest binary64 0x4p-128 1023LL : 0xe.b0d2c9f474418p-4 : inexact-ok
+= rootn towardzero binary64 0x4p-128 1023LL : 0xe.b0d2c9f47441p-4 : inexact-ok
+= rootn upward binary64 0x4p-128 1023LL : 0xe.b0d2c9f474418p-4 : inexact-ok
+= rootn downward intel96 0x4p-128 1023LL : 0xe.b0d2c9f47441569p-4 : inexact-ok
+= rootn tonearest intel96 0x4p-128 1023LL : 0xe.b0d2c9f47441569p-4 : inexact-ok
+= rootn towardzero intel96 0x4p-128 1023LL : 0xe.b0d2c9f47441569p-4 : inexact-ok
+= rootn upward intel96 0x4p-128 1023LL : 0xe.b0d2c9f4744156ap-4 : inexact-ok
+= rootn downward m68k96 0x4p-128 1023LL : 0xe.b0d2c9f47441569p-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 1023LL : 0xe.b0d2c9f47441569p-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 1023LL : 0xe.b0d2c9f47441569p-4 : inexact-ok
+= rootn upward m68k96 0x4p-128 1023LL : 0xe.b0d2c9f4744156ap-4 : inexact-ok
+= rootn downward binary128 0x4p-128 1023LL : 0xe.b0d2c9f4744156948c9451345998p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-128 1023LL : 0xe.b0d2c9f4744156948c9451345998p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-128 1023LL : 0xe.b0d2c9f4744156948c9451345998p-4 : inexact-ok
+= rootn upward binary128 0x4p-128 1023LL : 0xe.b0d2c9f4744156948c94513459ap-4 : inexact-ok
+= rootn downward ibm128 0x4p-128 1023LL : 0xe.b0d2c9f4744156948c94513458p-4 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 1023LL : 0xe.b0d2c9f4744156948c94513458p-4 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 1023LL : 0xe.b0d2c9f4744156948c94513458p-4 : inexact-ok
+= rootn upward ibm128 0x4p-128 1023LL : 0xe.b0d2c9f4744156948c9451345cp-4 : inexact-ok
+= rootn downward binary64 0x4p-1024 1023LL : 0x8.01635bd01b2d8p-4 : inexact-ok
+= rootn tonearest binary64 0x4p-1024 1023LL : 0x8.01635bd01b2ep-4 : inexact-ok
+= rootn towardzero binary64 0x4p-1024 1023LL : 0x8.01635bd01b2d8p-4 : inexact-ok
+= rootn upward binary64 0x4p-1024 1023LL : 0x8.01635bd01b2ep-4 : inexact-ok
+= rootn downward intel96 0x4p-1024 1023LL : 0x8.01635bd01b2de14p-4 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 1023LL : 0x8.01635bd01b2de15p-4 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 1023LL : 0x8.01635bd01b2de14p-4 : inexact-ok
+= rootn upward intel96 0x4p-1024 1023LL : 0x8.01635bd01b2de15p-4 : inexact-ok
+= rootn downward m68k96 0x4p-1024 1023LL : 0x8.01635bd01b2de14p-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 1023LL : 0x8.01635bd01b2de15p-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 1023LL : 0x8.01635bd01b2de14p-4 : inexact-ok
+= rootn upward m68k96 0x4p-1024 1023LL : 0x8.01635bd01b2de15p-4 : inexact-ok
+= rootn downward binary128 0x4p-1024 1023LL : 0x8.01635bd01b2de14c81a4463965c8p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 1023LL : 0x8.01635bd01b2de14c81a4463965c8p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 1023LL : 0x8.01635bd01b2de14c81a4463965c8p-4 : inexact-ok
+= rootn upward binary128 0x4p-1024 1023LL : 0x8.01635bd01b2de14c81a4463965dp-4 : inexact-ok
+= rootn downward ibm128 0x4p-1024 1023LL : 0x8.01635bd01b2de14c81a4463964p-4 : inexact-ok
+= rootn tonearest ibm128 0x4p-1024 1023LL : 0x8.01635bd01b2de14c81a4463964p-4 : inexact-ok
+= rootn towardzero ibm128 0x4p-1024 1023LL : 0x8.01635bd01b2de14c81a4463964p-4 : inexact-ok
+= rootn upward ibm128 0x4p-1024 1023LL : 0x8.01635bd01b2de14c81a4463968p-4 : inexact-ok
+= rootn downward intel96 0x4p-16384 1023LL : 0xf.d9545b2c8191655p-20 : inexact-ok
+= rootn tonearest intel96 0x4p-16384 1023LL : 0xf.d9545b2c8191655p-20 : inexact-ok
+= rootn towardzero intel96 0x4p-16384 1023LL : 0xf.d9545b2c8191655p-20 : inexact-ok
+= rootn upward intel96 0x4p-16384 1023LL : 0xf.d9545b2c8191656p-20 : inexact-ok
+= rootn downward m68k96 0x4p-16384 1023LL : 0xf.d9545b2c8191655p-20 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 1023LL : 0xf.d9545b2c8191655p-20 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 1023LL : 0xf.d9545b2c8191655p-20 : inexact-ok
+= rootn upward m68k96 0x4p-16384 1023LL : 0xf.d9545b2c8191656p-20 : inexact-ok
+= rootn downward binary128 0x4p-16384 1023LL : 0xf.d9545b2c819165542d6fb9abf148p-20 : inexact-ok
+= rootn tonearest binary128 0x4p-16384 1023LL : 0xf.d9545b2c819165542d6fb9abf148p-20 : inexact-ok
+= rootn towardzero binary128 0x4p-16384 1023LL : 0xf.d9545b2c819165542d6fb9abf148p-20 : inexact-ok
+= rootn upward binary128 0x4p-16384 1023LL : 0xf.d9545b2c819165542d6fb9abf15p-20 : inexact-ok
+= rootn downward intel96 0x2p-16384 1023LL : 0xf.d694d35b80c43fdp-20 : inexact-ok
+= rootn tonearest intel96 0x2p-16384 1023LL : 0xf.d694d35b80c43fdp-20 : inexact-ok
+= rootn towardzero intel96 0x2p-16384 1023LL : 0xf.d694d35b80c43fdp-20 : inexact-ok
+= rootn upward intel96 0x2p-16384 1023LL : 0xf.d694d35b80c43fep-20 : inexact-ok
+= rootn downward m68k96 0x2p-16384 1023LL : 0xf.d694d35b80c43fdp-20 : inexact-ok
+= rootn tonearest m68k96 0x2p-16384 1023LL : 0xf.d694d35b80c43fdp-20 : inexact-ok
+= rootn towardzero m68k96 0x2p-16384 1023LL : 0xf.d694d35b80c43fdp-20 : inexact-ok
+= rootn upward m68k96 0x2p-16384 1023LL : 0xf.d694d35b80c43fep-20 : inexact-ok
+= rootn downward binary128 0x2p-16384 1023LL : 0xf.d694d35b80c43fd2c6653313e328p-20 : inexact-ok
+= rootn tonearest binary128 0x2p-16384 1023LL : 0xf.d694d35b80c43fd2c6653313e328p-20 : inexact-ok
+= rootn towardzero binary128 0x2p-16384 1023LL : 0xf.d694d35b80c43fd2c6653313e328p-20 : inexact-ok
+= rootn upward binary128 0x2p-16384 1023LL : 0xf.d694d35b80c43fd2c6653313e33p-20 : inexact-ok
+= rootn downward binary64 0x8p-972 1023LL : 0x8.4c521f105c14p-4 : inexact-ok
+= rootn tonearest binary64 0x8p-972 1023LL : 0x8.4c521f105c14p-4 : inexact-ok
+= rootn towardzero binary64 0x8p-972 1023LL : 0x8.4c521f105c14p-4 : inexact-ok
+= rootn upward binary64 0x8p-972 1023LL : 0x8.4c521f105c148p-4 : inexact-ok
+= rootn downward intel96 0x8p-972 1023LL : 0x8.4c521f105c143ccp-4 : inexact-ok
+= rootn tonearest intel96 0x8p-972 1023LL : 0x8.4c521f105c143cdp-4 : inexact-ok
+= rootn towardzero intel96 0x8p-972 1023LL : 0x8.4c521f105c143ccp-4 : inexact-ok
+= rootn upward intel96 0x8p-972 1023LL : 0x8.4c521f105c143cdp-4 : inexact-ok
+= rootn downward m68k96 0x8p-972 1023LL : 0x8.4c521f105c143ccp-4 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 1023LL : 0x8.4c521f105c143cdp-4 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 1023LL : 0x8.4c521f105c143ccp-4 : inexact-ok
+= rootn upward m68k96 0x8p-972 1023LL : 0x8.4c521f105c143cdp-4 : inexact-ok
+= rootn downward binary128 0x8p-972 1023LL : 0x8.4c521f105c143ccf94361abe893p-4 : inexact-ok
+= rootn tonearest binary128 0x8p-972 1023LL : 0x8.4c521f105c143ccf94361abe8938p-4 : inexact-ok
+= rootn towardzero binary128 0x8p-972 1023LL : 0x8.4c521f105c143ccf94361abe893p-4 : inexact-ok
+= rootn upward binary128 0x8p-972 1023LL : 0x8.4c521f105c143ccf94361abe8938p-4 : inexact-ok
+= rootn downward ibm128 0x8p-972 1023LL : 0x8.4c521f105c143ccf94361abe88p-4 : inexact-ok
+= rootn tonearest ibm128 0x8p-972 1023LL : 0x8.4c521f105c143ccf94361abe88p-4 : inexact-ok
+= rootn towardzero ibm128 0x8p-972 1023LL : 0x8.4c521f105c143ccf94361abe88p-4 : inexact-ok
+= rootn upward ibm128 0x8p-972 1023LL : 0x8.4c521f105c143ccf94361abe8cp-4 : inexact-ok
+rootn min 16383
+= rootn downward binary32 0x4p-128 16383LL : 0xf.ea38fp-4 : inexact-ok
+= rootn tonearest binary32 0x4p-128 16383LL : 0xf.ea39p-4 : inexact-ok
+= rootn towardzero binary32 0x4p-128 16383LL : 0xf.ea38fp-4 : inexact-ok
+= rootn upward binary32 0x4p-128 16383LL : 0xf.ea39p-4 : inexact-ok
+= rootn downward binary64 0x4p-128 16383LL : 0xf.ea38fe3ddd638p-4 : inexact-ok
+= rootn tonearest binary64 0x4p-128 16383LL : 0xf.ea38fe3ddd638p-4 : inexact-ok
+= rootn towardzero binary64 0x4p-128 16383LL : 0xf.ea38fe3ddd638p-4 : inexact-ok
+= rootn upward binary64 0x4p-128 16383LL : 0xf.ea38fe3ddd64p-4 : inexact-ok
+= rootn downward intel96 0x4p-128 16383LL : 0xf.ea38fe3ddd63b0cp-4 : inexact-ok
+= rootn tonearest intel96 0x4p-128 16383LL : 0xf.ea38fe3ddd63b0dp-4 : inexact-ok
+= rootn towardzero intel96 0x4p-128 16383LL : 0xf.ea38fe3ddd63b0cp-4 : inexact-ok
+= rootn upward intel96 0x4p-128 16383LL : 0xf.ea38fe3ddd63b0dp-4 : inexact-ok
+= rootn downward m68k96 0x4p-128 16383LL : 0xf.ea38fe3ddd63b0cp-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 16383LL : 0xf.ea38fe3ddd63b0dp-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 16383LL : 0xf.ea38fe3ddd63b0cp-4 : inexact-ok
+= rootn upward m68k96 0x4p-128 16383LL : 0xf.ea38fe3ddd63b0dp-4 : inexact-ok
+= rootn downward binary128 0x4p-128 16383LL : 0xf.ea38fe3ddd63b0ccf2fb3cacdde8p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-128 16383LL : 0xf.ea38fe3ddd63b0ccf2fb3cacdde8p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-128 16383LL : 0xf.ea38fe3ddd63b0ccf2fb3cacdde8p-4 : inexact-ok
+= rootn upward binary128 0x4p-128 16383LL : 0xf.ea38fe3ddd63b0ccf2fb3cacddfp-4 : inexact-ok
+= rootn downward ibm128 0x4p-128 16383LL : 0xf.ea38fe3ddd63b0ccf2fb3cacdcp-4 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 16383LL : 0xf.ea38fe3ddd63b0ccf2fb3cacdcp-4 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 16383LL : 0xf.ea38fe3ddd63b0ccf2fb3cacdcp-4 : inexact-ok
+= rootn upward ibm128 0x4p-128 16383LL : 0xf.ea38fe3ddd63b0ccf2fb3cacep-4 : inexact-ok
+= rootn downward binary64 0x4p-1024 16383LL : 0xf.52aa21de7d898p-4 : inexact-ok
+= rootn tonearest binary64 0x4p-1024 16383LL : 0xf.52aa21de7d898p-4 : inexact-ok
+= rootn towardzero binary64 0x4p-1024 16383LL : 0xf.52aa21de7d898p-4 : inexact-ok
+= rootn upward binary64 0x4p-1024 16383LL : 0xf.52aa21de7d8ap-4 : inexact-ok
+= rootn downward intel96 0x4p-1024 16383LL : 0xf.52aa21de7d89a09p-4 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 16383LL : 0xf.52aa21de7d89a09p-4 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 16383LL : 0xf.52aa21de7d89a09p-4 : inexact-ok
+= rootn upward intel96 0x4p-1024 16383LL : 0xf.52aa21de7d89a0ap-4 : inexact-ok
+= rootn downward m68k96 0x4p-1024 16383LL : 0xf.52aa21de7d89a09p-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 16383LL : 0xf.52aa21de7d89a09p-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 16383LL : 0xf.52aa21de7d89a09p-4 : inexact-ok
+= rootn upward m68k96 0x4p-1024 16383LL : 0xf.52aa21de7d89a0ap-4 : inexact-ok
+= rootn downward binary128 0x4p-1024 16383LL : 0xf.52aa21de7d89a09060f937b7b17p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 16383LL : 0xf.52aa21de7d89a09060f937b7b17p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 16383LL : 0xf.52aa21de7d89a09060f937b7b17p-4 : inexact-ok
+= rootn upward binary128 0x4p-1024 16383LL : 0xf.52aa21de7d89a09060f937b7b178p-4 : inexact-ok
+= rootn downward ibm128 0x4p-1024 16383LL : 0xf.52aa21de7d89a09060f937b7bp-4 : inexact-ok
+= rootn tonearest ibm128 0x4p-1024 16383LL : 0xf.52aa21de7d89a09060f937b7bp-4 : inexact-ok
+= rootn towardzero ibm128 0x4p-1024 16383LL : 0xf.52aa21de7d89a09060f937b7bp-4 : inexact-ok
+= rootn upward ibm128 0x4p-1024 16383LL : 0xf.52aa21de7d89a09060f937b7b4p-4 : inexact-ok
+= rootn downward intel96 0x4p-16384 16383LL : 0x8.00162eba7a398f3p-4 : inexact-ok
+= rootn tonearest intel96 0x4p-16384 16383LL : 0x8.00162eba7a398f4p-4 : inexact-ok
+= rootn towardzero intel96 0x4p-16384 16383LL : 0x8.00162eba7a398f3p-4 : inexact-ok
+= rootn upward intel96 0x4p-16384 16383LL : 0x8.00162eba7a398f4p-4 : inexact-ok
+= rootn downward m68k96 0x4p-16384 16383LL : 0x8.00162eba7a398f3p-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 16383LL : 0x8.00162eba7a398f4p-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 16383LL : 0x8.00162eba7a398f3p-4 : inexact-ok
+= rootn upward m68k96 0x4p-16384 16383LL : 0x8.00162eba7a398f4p-4 : inexact-ok
+= rootn downward binary128 0x4p-16384 16383LL : 0x8.00162eba7a398f3c21d5d3f6eecp-4 : inexact-ok
+= rootn tonearest binary128 0x4p-16384 16383LL : 0x8.00162eba7a398f3c21d5d3f6eec8p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-16384 16383LL : 0x8.00162eba7a398f3c21d5d3f6eecp-4 : inexact-ok
+= rootn upward binary128 0x4p-16384 16383LL : 0x8.00162eba7a398f3c21d5d3f6eec8p-4 : inexact-ok
+= rootn downward intel96 0x2p-16384 16383LL : 0x8p-4 : inexact-ok
+= rootn tonearest intel96 0x2p-16384 16383LL : 0x8p-4 : inexact-ok
+= rootn towardzero intel96 0x2p-16384 16383LL : 0x8p-4 : inexact-ok
+= rootn upward intel96 0x2p-16384 16383LL : 0x8p-4 : inexact-ok
+= rootn downward m68k96 0x2p-16384 16383LL : 0x8p-4 : inexact-ok
+= rootn tonearest m68k96 0x2p-16384 16383LL : 0x8p-4 : inexact-ok
+= rootn towardzero m68k96 0x2p-16384 16383LL : 0x8p-4 : inexact-ok
+= rootn upward m68k96 0x2p-16384 16383LL : 0x8p-4 : inexact-ok
+= rootn downward binary128 0x2p-16384 16383LL : 0x8p-4 : inexact-ok
+= rootn tonearest binary128 0x2p-16384 16383LL : 0x8p-4 : inexact-ok
+= rootn towardzero binary128 0x2p-16384 16383LL : 0x8p-4 : inexact-ok
+= rootn upward binary128 0x2p-16384 16383LL : 0x8p-4 : inexact-ok
+= rootn downward binary64 0x8p-972 16383LL : 0xf.5b787470f0348p-4 : inexact-ok
+= rootn tonearest binary64 0x8p-972 16383LL : 0xf.5b787470f035p-4 : inexact-ok
+= rootn towardzero binary64 0x8p-972 16383LL : 0xf.5b787470f0348p-4 : inexact-ok
+= rootn upward binary64 0x8p-972 16383LL : 0xf.5b787470f035p-4 : inexact-ok
+= rootn downward intel96 0x8p-972 16383LL : 0xf.5b787470f034da2p-4 : inexact-ok
+= rootn tonearest intel96 0x8p-972 16383LL : 0xf.5b787470f034da2p-4 : inexact-ok
+= rootn towardzero intel96 0x8p-972 16383LL : 0xf.5b787470f034da2p-4 : inexact-ok
+= rootn upward intel96 0x8p-972 16383LL : 0xf.5b787470f034da3p-4 : inexact-ok
+= rootn downward m68k96 0x8p-972 16383LL : 0xf.5b787470f034da2p-4 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 16383LL : 0xf.5b787470f034da2p-4 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 16383LL : 0xf.5b787470f034da2p-4 : inexact-ok
+= rootn upward m68k96 0x8p-972 16383LL : 0xf.5b787470f034da3p-4 : inexact-ok
+= rootn downward binary128 0x8p-972 16383LL : 0xf.5b787470f034da27c3c716ed678p-4 : inexact-ok
+= rootn tonearest binary128 0x8p-972 16383LL : 0xf.5b787470f034da27c3c716ed678p-4 : inexact-ok
+= rootn towardzero binary128 0x8p-972 16383LL : 0xf.5b787470f034da27c3c716ed678p-4 : inexact-ok
+= rootn upward binary128 0x8p-972 16383LL : 0xf.5b787470f034da27c3c716ed6788p-4 : inexact-ok
+= rootn downward ibm128 0x8p-972 16383LL : 0xf.5b787470f034da27c3c716ed64p-4 : inexact-ok
+= rootn tonearest ibm128 0x8p-972 16383LL : 0xf.5b787470f034da27c3c716ed68p-4 : inexact-ok
+= rootn towardzero ibm128 0x8p-972 16383LL : 0xf.5b787470f034da27c3c716ed64p-4 : inexact-ok
+= rootn upward ibm128 0x8p-972 16383LL : 0xf.5b787470f034da27c3c716ed68p-4 : inexact-ok
+rootn min 0x1000001
+= rootn downward binary32 0x4p-128 16777217LL : 0xf.fffa8p-4 : inexact-ok
+= rootn tonearest binary32 0x4p-128 16777217LL : 0xf.fffa9p-4 : inexact-ok
+= rootn towardzero binary32 0x4p-128 16777217LL : 0xf.fffa8p-4 : inexact-ok
+= rootn upward binary32 0x4p-128 16777217LL : 0xf.fffa9p-4 : inexact-ok
+= rootn downward binary64 0x4p-128 16777217LL : 0xf.fffa8a9e7713p-4 : inexact-ok
+= rootn tonearest binary64 0x4p-128 16777217LL : 0xf.fffa8a9e7713p-4 : inexact-ok
+= rootn towardzero binary64 0x4p-128 16777217LL : 0xf.fffa8a9e7713p-4 : inexact-ok
+= rootn upward binary64 0x4p-128 16777217LL : 0xf.fffa8a9e77138p-4 : inexact-ok
+= rootn downward intel96 0x4p-128 16777217LL : 0xf.fffa8a9e7713119p-4 : inexact-ok
+= rootn tonearest intel96 0x4p-128 16777217LL : 0xf.fffa8a9e771311ap-4 : inexact-ok
+= rootn towardzero intel96 0x4p-128 16777217LL : 0xf.fffa8a9e7713119p-4 : inexact-ok
+= rootn upward intel96 0x4p-128 16777217LL : 0xf.fffa8a9e771311ap-4 : inexact-ok
+= rootn downward m68k96 0x4p-128 16777217LL : 0xf.fffa8a9e7713119p-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 16777217LL : 0xf.fffa8a9e771311ap-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 16777217LL : 0xf.fffa8a9e7713119p-4 : inexact-ok
+= rootn upward m68k96 0x4p-128 16777217LL : 0xf.fffa8a9e771311ap-4 : inexact-ok
+= rootn downward binary128 0x4p-128 16777217LL : 0xf.fffa8a9e7713119897c4d301fc28p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-128 16777217LL : 0xf.fffa8a9e7713119897c4d301fc3p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-128 16777217LL : 0xf.fffa8a9e7713119897c4d301fc28p-4 : inexact-ok
+= rootn upward binary128 0x4p-128 16777217LL : 0xf.fffa8a9e7713119897c4d301fc3p-4 : inexact-ok
+= rootn downward ibm128 0x4p-128 16777217LL : 0xf.fffa8a9e7713119897c4d301fcp-4 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 16777217LL : 0xf.fffa8a9e7713119897c4d301fcp-4 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 16777217LL : 0xf.fffa8a9e7713119897c4d301fcp-4 : inexact-ok
+= rootn upward ibm128 0x4p-128 16777217LL : 0xf.fffa8a9e7713119897c4d302p-4 : inexact-ok
+= rootn downward binary64 0x4p-1024 16777217LL : 0xf.ffd3b9e5b3238p-4 : inexact-ok
+= rootn tonearest binary64 0x4p-1024 16777217LL : 0xf.ffd3b9e5b324p-4 : inexact-ok
+= rootn towardzero binary64 0x4p-1024 16777217LL : 0xf.ffd3b9e5b3238p-4 : inexact-ok
+= rootn upward binary64 0x4p-1024 16777217LL : 0xf.ffd3b9e5b324p-4 : inexact-ok
+= rootn downward intel96 0x4p-1024 16777217LL : 0xf.ffd3b9e5b323c57p-4 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 16777217LL : 0xf.ffd3b9e5b323c58p-4 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 16777217LL : 0xf.ffd3b9e5b323c57p-4 : inexact-ok
+= rootn upward intel96 0x4p-1024 16777217LL : 0xf.ffd3b9e5b323c58p-4 : inexact-ok
+= rootn downward m68k96 0x4p-1024 16777217LL : 0xf.ffd3b9e5b323c57p-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 16777217LL : 0xf.ffd3b9e5b323c58p-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 16777217LL : 0xf.ffd3b9e5b323c57p-4 : inexact-ok
+= rootn upward m68k96 0x4p-1024 16777217LL : 0xf.ffd3b9e5b323c58p-4 : inexact-ok
+= rootn downward binary128 0x4p-1024 16777217LL : 0xf.ffd3b9e5b323c57834e7db6ca0cp-4 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 16777217LL : 0xf.ffd3b9e5b323c57834e7db6ca0c8p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 16777217LL : 0xf.ffd3b9e5b323c57834e7db6ca0cp-4 : inexact-ok
+= rootn upward binary128 0x4p-1024 16777217LL : 0xf.ffd3b9e5b323c57834e7db6ca0c8p-4 : inexact-ok
+= rootn downward ibm128 0x4p-1024 16777217LL : 0xf.ffd3b9e5b323c57834e7db6cap-4 : inexact-ok
+= rootn tonearest ibm128 0x4p-1024 16777217LL : 0xf.ffd3b9e5b323c57834e7db6cap-4 : inexact-ok
+= rootn towardzero ibm128 0x4p-1024 16777217LL : 0xf.ffd3b9e5b323c57834e7db6cap-4 : inexact-ok
+= rootn upward ibm128 0x4p-1024 16777217LL : 0xf.ffd3b9e5b323c57834e7db6ca4p-4 : inexact-ok
+= rootn downward intel96 0x4p-16384 16777217LL : 0xf.fd3a8b494021269p-4 : inexact-ok
+= rootn tonearest intel96 0x4p-16384 16777217LL : 0xf.fd3a8b49402126ap-4 : inexact-ok
+= rootn towardzero intel96 0x4p-16384 16777217LL : 0xf.fd3a8b494021269p-4 : inexact-ok
+= rootn upward intel96 0x4p-16384 16777217LL : 0xf.fd3a8b49402126ap-4 : inexact-ok
+= rootn downward m68k96 0x4p-16384 16777217LL : 0xf.fd3a8b494021269p-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 16777217LL : 0xf.fd3a8b49402126ap-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 16777217LL : 0xf.fd3a8b494021269p-4 : inexact-ok
+= rootn upward m68k96 0x4p-16384 16777217LL : 0xf.fd3a8b49402126ap-4 : inexact-ok
+= rootn downward binary128 0x4p-16384 16777217LL : 0xf.fd3a8b494021269fc34dd21ec8p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-16384 16777217LL : 0xf.fd3a8b494021269fc34dd21ec808p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-16384 16777217LL : 0xf.fd3a8b494021269fc34dd21ec8p-4 : inexact-ok
+= rootn upward binary128 0x4p-16384 16777217LL : 0xf.fd3a8b494021269fc34dd21ec808p-4 : inexact-ok
+= rootn downward intel96 0x2p-16384 16777217LL : 0xf.fd3a80340a7278cp-4 : inexact-ok
+= rootn tonearest intel96 0x2p-16384 16777217LL : 0xf.fd3a80340a7278cp-4 : inexact-ok
+= rootn towardzero intel96 0x2p-16384 16777217LL : 0xf.fd3a80340a7278cp-4 : inexact-ok
+= rootn upward intel96 0x2p-16384 16777217LL : 0xf.fd3a80340a7278dp-4 : inexact-ok
+= rootn downward m68k96 0x2p-16384 16777217LL : 0xf.fd3a80340a7278cp-4 : inexact-ok
+= rootn tonearest m68k96 0x2p-16384 16777217LL : 0xf.fd3a80340a7278cp-4 : inexact-ok
+= rootn towardzero m68k96 0x2p-16384 16777217LL : 0xf.fd3a80340a7278cp-4 : inexact-ok
+= rootn upward m68k96 0x2p-16384 16777217LL : 0xf.fd3a80340a7278dp-4 : inexact-ok
+= rootn downward binary128 0x2p-16384 16777217LL : 0xf.fd3a80340a7278c6177b11b76f8p-4 : inexact-ok
+= rootn tonearest binary128 0x2p-16384 16777217LL : 0xf.fd3a80340a7278c6177b11b76f88p-4 : inexact-ok
+= rootn towardzero binary128 0x2p-16384 16777217LL : 0xf.fd3a80340a7278c6177b11b76f8p-4 : inexact-ok
+= rootn upward binary128 0x2p-16384 16777217LL : 0xf.fd3a80340a7278c6177b11b76f88p-4 : inexact-ok
+= rootn downward binary64 0x8p-972 16777217LL : 0xf.ffd605a96fee8p-4 : inexact-ok
+= rootn tonearest binary64 0x8p-972 16777217LL : 0xf.ffd605a96fee8p-4 : inexact-ok
+= rootn towardzero binary64 0x8p-972 16777217LL : 0xf.ffd605a96fee8p-4 : inexact-ok
+= rootn upward binary64 0x8p-972 16777217LL : 0xf.ffd605a96fefp-4 : inexact-ok
+= rootn downward intel96 0x8p-972 16777217LL : 0xf.ffd605a96fee875p-4 : inexact-ok
+= rootn tonearest intel96 0x8p-972 16777217LL : 0xf.ffd605a96fee876p-4 : inexact-ok
+= rootn towardzero intel96 0x8p-972 16777217LL : 0xf.ffd605a96fee875p-4 : inexact-ok
+= rootn upward intel96 0x8p-972 16777217LL : 0xf.ffd605a96fee876p-4 : inexact-ok
+= rootn downward m68k96 0x8p-972 16777217LL : 0xf.ffd605a96fee875p-4 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 16777217LL : 0xf.ffd605a96fee876p-4 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 16777217LL : 0xf.ffd605a96fee875p-4 : inexact-ok
+= rootn upward m68k96 0x8p-972 16777217LL : 0xf.ffd605a96fee876p-4 : inexact-ok
+= rootn downward binary128 0x8p-972 16777217LL : 0xf.ffd605a96fee875d9eab6e4aa648p-4 : inexact-ok
+= rootn tonearest binary128 0x8p-972 16777217LL : 0xf.ffd605a96fee875d9eab6e4aa648p-4 : inexact-ok
+= rootn towardzero binary128 0x8p-972 16777217LL : 0xf.ffd605a96fee875d9eab6e4aa648p-4 : inexact-ok
+= rootn upward binary128 0x8p-972 16777217LL : 0xf.ffd605a96fee875d9eab6e4aa65p-4 : inexact-ok
+= rootn downward ibm128 0x8p-972 16777217LL : 0xf.ffd605a96fee875d9eab6e4aa4p-4 : inexact-ok
+= rootn tonearest ibm128 0x8p-972 16777217LL : 0xf.ffd605a96fee875d9eab6e4aa8p-4 : inexact-ok
+= rootn towardzero ibm128 0x8p-972 16777217LL : 0xf.ffd605a96fee875d9eab6e4aa4p-4 : inexact-ok
+= rootn upward ibm128 0x8p-972 16777217LL : 0xf.ffd605a96fee875d9eab6e4aa8p-4 : inexact-ok
+rootn min 0x10000000000001
+= rootn downward binary32 0x4p-128 4503599627370497LL : 0xf.fffffp-4 : inexact-ok
+= rootn tonearest binary32 0x4p-128 4503599627370497LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary32 0x4p-128 4503599627370497LL : 0xf.fffffp-4 : inexact-ok
+= rootn upward binary32 0x4p-128 4503599627370497LL : 0x1p+0 : inexact-ok
+= rootn downward binary64 0x4p-128 4503599627370497LL : 0xf.ffffffffffa88p-4 : inexact-ok
+= rootn tonearest binary64 0x4p-128 4503599627370497LL : 0xf.ffffffffffa88p-4 : inexact-ok
+= rootn towardzero binary64 0x4p-128 4503599627370497LL : 0xf.ffffffffffa88p-4 : inexact-ok
+= rootn upward binary64 0x4p-128 4503599627370497LL : 0xf.ffffffffffa9p-4 : inexact-ok
+= rootn downward intel96 0x4p-128 4503599627370497LL : 0xf.ffffffffffa8a9dp-4 : inexact-ok
+= rootn tonearest intel96 0x4p-128 4503599627370497LL : 0xf.ffffffffffa8a9ep-4 : inexact-ok
+= rootn towardzero intel96 0x4p-128 4503599627370497LL : 0xf.ffffffffffa8a9dp-4 : inexact-ok
+= rootn upward intel96 0x4p-128 4503599627370497LL : 0xf.ffffffffffa8a9ep-4 : inexact-ok
+= rootn downward m68k96 0x4p-128 4503599627370497LL : 0xf.ffffffffffa8a9dp-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 4503599627370497LL : 0xf.ffffffffffa8a9ep-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 4503599627370497LL : 0xf.ffffffffffa8a9dp-4 : inexact-ok
+= rootn upward m68k96 0x4p-128 4503599627370497LL : 0xf.ffffffffffa8a9ep-4 : inexact-ok
+= rootn downward binary128 0x4p-128 4503599627370497LL : 0xf.ffffffffffa8a9d83406bcd5f03p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-128 4503599627370497LL : 0xf.ffffffffffa8a9d83406bcd5f038p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-128 4503599627370497LL : 0xf.ffffffffffa8a9d83406bcd5f03p-4 : inexact-ok
+= rootn upward binary128 0x4p-128 4503599627370497LL : 0xf.ffffffffffa8a9d83406bcd5f038p-4 : inexact-ok
+= rootn downward ibm128 0x4p-128 4503599627370497LL : 0xf.ffffffffffa8a9d83406bcd5fp-4 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 4503599627370497LL : 0xf.ffffffffffa8a9d83406bcd5fp-4 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 4503599627370497LL : 0xf.ffffffffffa8a9d83406bcd5fp-4 : inexact-ok
+= rootn upward ibm128 0x4p-128 4503599627370497LL : 0xf.ffffffffffa8a9d83406bcd5f4p-4 : inexact-ok
+= rootn downward binary64 0x4p-1024 4503599627370497LL : 0xf.fffffffffd3b8p-4 : inexact-ok
+= rootn tonearest binary64 0x4p-1024 4503599627370497LL : 0xf.fffffffffd3b8p-4 : inexact-ok
+= rootn towardzero binary64 0x4p-1024 4503599627370497LL : 0xf.fffffffffd3b8p-4 : inexact-ok
+= rootn upward binary64 0x4p-1024 4503599627370497LL : 0xf.fffffffffd3cp-4 : inexact-ok
+= rootn downward intel96 0x4p-1024 4503599627370497LL : 0xf.fffffffffd3b9a8p-4 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 4503599627370497LL : 0xf.fffffffffd3b9a8p-4 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 4503599627370497LL : 0xf.fffffffffd3b9a8p-4 : inexact-ok
+= rootn upward intel96 0x4p-1024 4503599627370497LL : 0xf.fffffffffd3b9a9p-4 : inexact-ok
+= rootn downward m68k96 0x4p-1024 4503599627370497LL : 0xf.fffffffffd3b9a8p-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 4503599627370497LL : 0xf.fffffffffd3b9a8p-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 4503599627370497LL : 0xf.fffffffffd3b9a8p-4 : inexact-ok
+= rootn upward m68k96 0x4p-1024 4503599627370497LL : 0xf.fffffffffd3b9a9p-4 : inexact-ok
+= rootn downward binary128 0x4p-1024 4503599627370497LL : 0xf.fffffffffd3b9a8450a8a3269668p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 4503599627370497LL : 0xf.fffffffffd3b9a8450a8a3269668p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 4503599627370497LL : 0xf.fffffffffd3b9a8450a8a3269668p-4 : inexact-ok
+= rootn upward binary128 0x4p-1024 4503599627370497LL : 0xf.fffffffffd3b9a8450a8a326967p-4 : inexact-ok
+= rootn downward ibm128 0x4p-1024 4503599627370497LL : 0xf.fffffffffd3b9a8450a8a32694p-4 : inexact-ok
+= rootn tonearest ibm128 0x4p-1024 4503599627370497LL : 0xf.fffffffffd3b9a8450a8a32698p-4 : inexact-ok
+= rootn towardzero ibm128 0x4p-1024 4503599627370497LL : 0xf.fffffffffd3b9a8450a8a32694p-4 : inexact-ok
+= rootn upward ibm128 0x4p-1024 4503599627370497LL : 0xf.fffffffffd3b9a8450a8a32698p-4 : inexact-ok
+= rootn downward intel96 0x4p-16384 4503599627370497LL : 0xf.ffffffffd3a4dcep-4 : inexact-ok
+= rootn tonearest intel96 0x4p-16384 4503599627370497LL : 0xf.ffffffffd3a4dcep-4 : inexact-ok
+= rootn towardzero intel96 0x4p-16384 4503599627370497LL : 0xf.ffffffffd3a4dcep-4 : inexact-ok
+= rootn upward intel96 0x4p-16384 4503599627370497LL : 0xf.ffffffffd3a4dcfp-4 : inexact-ok
+= rootn downward m68k96 0x4p-16384 4503599627370497LL : 0xf.ffffffffd3a4dcep-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 4503599627370497LL : 0xf.ffffffffd3a4dcep-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 4503599627370497LL : 0xf.ffffffffd3a4dcep-4 : inexact-ok
+= rootn upward m68k96 0x4p-16384 4503599627370497LL : 0xf.ffffffffd3a4dcfp-4 : inexact-ok
+= rootn downward binary128 0x4p-16384 4503599627370497LL : 0xf.ffffffffd3a4dce63bb9439dc9bp-4 : inexact-ok
+= rootn tonearest binary128 0x4p-16384 4503599627370497LL : 0xf.ffffffffd3a4dce63bb9439dc9b8p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-16384 4503599627370497LL : 0xf.ffffffffd3a4dce63bb9439dc9bp-4 : inexact-ok
+= rootn upward binary128 0x4p-16384 4503599627370497LL : 0xf.ffffffffd3a4dce63bb9439dc9b8p-4 : inexact-ok
+= rootn downward intel96 0x2p-16384 4503599627370497LL : 0xf.ffffffffd3a42b7p-4 : inexact-ok
+= rootn tonearest intel96 0x2p-16384 4503599627370497LL : 0xf.ffffffffd3a42b7p-4 : inexact-ok
+= rootn towardzero intel96 0x2p-16384 4503599627370497LL : 0xf.ffffffffd3a42b7p-4 : inexact-ok
+= rootn upward intel96 0x2p-16384 4503599627370497LL : 0xf.ffffffffd3a42b8p-4 : inexact-ok
+= rootn downward m68k96 0x2p-16384 4503599627370497LL : 0xf.ffffffffd3a42b7p-4 : inexact-ok
+= rootn tonearest m68k96 0x2p-16384 4503599627370497LL : 0xf.ffffffffd3a42b7p-4 : inexact-ok
+= rootn towardzero m68k96 0x2p-16384 4503599627370497LL : 0xf.ffffffffd3a42b7p-4 : inexact-ok
+= rootn upward m68k96 0x2p-16384 4503599627370497LL : 0xf.ffffffffd3a42b8p-4 : inexact-ok
+= rootn downward binary128 0x2p-16384 4503599627370497LL : 0xf.ffffffffd3a42b7423c173ba4b78p-4 : inexact-ok
+= rootn tonearest binary128 0x2p-16384 4503599627370497LL : 0xf.ffffffffd3a42b7423c173ba4b78p-4 : inexact-ok
+= rootn towardzero binary128 0x2p-16384 4503599627370497LL : 0xf.ffffffffd3a42b7423c173ba4b78p-4 : inexact-ok
+= rootn upward binary128 0x2p-16384 4503599627370497LL : 0xf.ffffffffd3a42b7423c173ba4b8p-4 : inexact-ok
+= rootn downward binary64 0x8p-972 4503599627370497LL : 0xf.fffffffffd6p-4 : inexact-ok
+= rootn tonearest binary64 0x8p-972 4503599627370497LL : 0xf.fffffffffd608p-4 : inexact-ok
+= rootn towardzero binary64 0x8p-972 4503599627370497LL : 0xf.fffffffffd6p-4 : inexact-ok
+= rootn upward binary64 0x8p-972 4503599627370497LL : 0xf.fffffffffd608p-4 : inexact-ok
+= rootn downward intel96 0x8p-972 4503599627370497LL : 0xf.fffffffffd60572p-4 : inexact-ok
+= rootn tonearest intel96 0x8p-972 4503599627370497LL : 0xf.fffffffffd60572p-4 : inexact-ok
+= rootn towardzero intel96 0x8p-972 4503599627370497LL : 0xf.fffffffffd60572p-4 : inexact-ok
+= rootn upward intel96 0x8p-972 4503599627370497LL : 0xf.fffffffffd60573p-4 : inexact-ok
+= rootn downward m68k96 0x8p-972 4503599627370497LL : 0xf.fffffffffd60572p-4 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 4503599627370497LL : 0xf.fffffffffd60572p-4 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 4503599627370497LL : 0xf.fffffffffd60572p-4 : inexact-ok
+= rootn upward m68k96 0x8p-972 4503599627370497LL : 0xf.fffffffffd60573p-4 : inexact-ok
+= rootn downward binary128 0x8p-972 4503599627370497LL : 0xf.fffffffffd60572346f70ce8247p-4 : inexact-ok
+= rootn tonearest binary128 0x8p-972 4503599627370497LL : 0xf.fffffffffd60572346f70ce8247p-4 : inexact-ok
+= rootn towardzero binary128 0x8p-972 4503599627370497LL : 0xf.fffffffffd60572346f70ce8247p-4 : inexact-ok
+= rootn upward binary128 0x8p-972 4503599627370497LL : 0xf.fffffffffd60572346f70ce82478p-4 : inexact-ok
+= rootn downward ibm128 0x8p-972 4503599627370497LL : 0xf.fffffffffd60572346f70ce824p-4 : inexact-ok
+= rootn tonearest ibm128 0x8p-972 4503599627370497LL : 0xf.fffffffffd60572346f70ce824p-4 : inexact-ok
+= rootn towardzero ibm128 0x8p-972 4503599627370497LL : 0xf.fffffffffd60572346f70ce824p-4 : inexact-ok
+= rootn upward ibm128 0x8p-972 4503599627370497LL : 0xf.fffffffffd60572346f70ce828p-4 : inexact-ok
+rootn min 0x7fffffffffffffff
+= rootn downward binary32 0x4p-128 9223372036854775807LL : 0xf.fffffp-4 : inexact-ok
+= rootn tonearest binary32 0x4p-128 9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary32 0x4p-128 9223372036854775807LL : 0xf.fffffp-4 : inexact-ok
+= rootn upward binary32 0x4p-128 9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn downward binary64 0x4p-128 9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= rootn tonearest binary64 0x4p-128 9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary64 0x4p-128 9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= rootn upward binary64 0x4p-128 9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn downward intel96 0x4p-128 9223372036854775807LL : 0xf.fffffffffffff51p-4 : inexact-ok
+= rootn tonearest intel96 0x4p-128 9223372036854775807LL : 0xf.fffffffffffff51p-4 : inexact-ok
+= rootn towardzero intel96 0x4p-128 9223372036854775807LL : 0xf.fffffffffffff51p-4 : inexact-ok
+= rootn upward intel96 0x4p-128 9223372036854775807LL : 0xf.fffffffffffff52p-4 : inexact-ok
+= rootn downward m68k96 0x4p-128 9223372036854775807LL : 0xf.fffffffffffff51p-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 9223372036854775807LL : 0xf.fffffffffffff51p-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 9223372036854775807LL : 0xf.fffffffffffff51p-4 : inexact-ok
+= rootn upward m68k96 0x4p-128 9223372036854775807LL : 0xf.fffffffffffff52p-4 : inexact-ok
+= rootn downward binary128 0x4p-128 9223372036854775807LL : 0xf.fffffffffffff5153b0680d77c4p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-128 9223372036854775807LL : 0xf.fffffffffffff5153b0680d77c48p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-128 9223372036854775807LL : 0xf.fffffffffffff5153b0680d77c4p-4 : inexact-ok
+= rootn upward binary128 0x4p-128 9223372036854775807LL : 0xf.fffffffffffff5153b0680d77c48p-4 : inexact-ok
+= rootn downward ibm128 0x4p-128 9223372036854775807LL : 0xf.fffffffffffff5153b0680d77cp-4 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 9223372036854775807LL : 0xf.fffffffffffff5153b0680d77cp-4 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 9223372036854775807LL : 0xf.fffffffffffff5153b0680d77cp-4 : inexact-ok
+= rootn upward ibm128 0x4p-128 9223372036854775807LL : 0xf.fffffffffffff5153b0680d78p-4 : inexact-ok
+= rootn downward binary64 0x4p-1024 9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= rootn tonearest binary64 0x4p-1024 9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= rootn towardzero binary64 0x4p-1024 9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= rootn upward binary64 0x4p-1024 9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn downward intel96 0x4p-1024 9223372036854775807LL : 0xf.ffffffffffffa77p-4 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 9223372036854775807LL : 0xf.ffffffffffffa77p-4 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 9223372036854775807LL : 0xf.ffffffffffffa77p-4 : inexact-ok
+= rootn upward intel96 0x4p-1024 9223372036854775807LL : 0xf.ffffffffffffa78p-4 : inexact-ok
+= rootn downward m68k96 0x4p-1024 9223372036854775807LL : 0xf.ffffffffffffa77p-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 9223372036854775807LL : 0xf.ffffffffffffa77p-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 9223372036854775807LL : 0xf.ffffffffffffa77p-4 : inexact-ok
+= rootn upward m68k96 0x4p-1024 9223372036854775807LL : 0xf.ffffffffffffa78p-4 : inexact-ok
+= rootn downward binary128 0x4p-1024 9223372036854775807LL : 0xf.ffffffffffffa773508a150cb7f8p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 9223372036854775807LL : 0xf.ffffffffffffa773508a150cb8p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 9223372036854775807LL : 0xf.ffffffffffffa773508a150cb7f8p-4 : inexact-ok
+= rootn upward binary128 0x4p-1024 9223372036854775807LL : 0xf.ffffffffffffa773508a150cb8p-4 : inexact-ok
+= rootn downward ibm128 0x4p-1024 9223372036854775807LL : 0xf.ffffffffffffa773508a150cb4p-4 : inexact-ok
+= rootn tonearest ibm128 0x4p-1024 9223372036854775807LL : 0xf.ffffffffffffa773508a150cb8p-4 : inexact-ok
+= rootn towardzero ibm128 0x4p-1024 9223372036854775807LL : 0xf.ffffffffffffa773508a150cb4p-4 : inexact-ok
+= rootn upward ibm128 0x4p-1024 9223372036854775807LL : 0xf.ffffffffffffa773508a150cb8p-4 : inexact-ok
+= rootn downward intel96 0x4p-16384 9223372036854775807LL : 0xf.fffffffffffa749p-4 : inexact-ok
+= rootn tonearest intel96 0x4p-16384 9223372036854775807LL : 0xf.fffffffffffa74ap-4 : inexact-ok
+= rootn towardzero intel96 0x4p-16384 9223372036854775807LL : 0xf.fffffffffffa749p-4 : inexact-ok
+= rootn upward intel96 0x4p-16384 9223372036854775807LL : 0xf.fffffffffffa74ap-4 : inexact-ok
+= rootn downward m68k96 0x4p-16384 9223372036854775807LL : 0xf.fffffffffffa749p-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 9223372036854775807LL : 0xf.fffffffffffa74ap-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 9223372036854775807LL : 0xf.fffffffffffa749p-4 : inexact-ok
+= rootn upward m68k96 0x4p-16384 9223372036854775807LL : 0xf.fffffffffffa74ap-4 : inexact-ok
+= rootn downward binary128 0x4p-16384 9223372036854775807LL : 0xf.fffffffffffa749b9cc76f799c6p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-16384 9223372036854775807LL : 0xf.fffffffffffa749b9cc76f799c6p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-16384 9223372036854775807LL : 0xf.fffffffffffa749b9cc76f799c6p-4 : inexact-ok
+= rootn upward binary128 0x4p-16384 9223372036854775807LL : 0xf.fffffffffffa749b9cc76f799c68p-4 : inexact-ok
+= rootn downward intel96 0x2p-16384 9223372036854775807LL : 0xf.fffffffffffa748p-4 : inexact-ok
+= rootn tonearest intel96 0x2p-16384 9223372036854775807LL : 0xf.fffffffffffa748p-4 : inexact-ok
+= rootn towardzero intel96 0x2p-16384 9223372036854775807LL : 0xf.fffffffffffa748p-4 : inexact-ok
+= rootn upward intel96 0x2p-16384 9223372036854775807LL : 0xf.fffffffffffa749p-4 : inexact-ok
+= rootn downward m68k96 0x2p-16384 9223372036854775807LL : 0xf.fffffffffffa748p-4 : inexact-ok
+= rootn tonearest m68k96 0x2p-16384 9223372036854775807LL : 0xf.fffffffffffa748p-4 : inexact-ok
+= rootn towardzero m68k96 0x2p-16384 9223372036854775807LL : 0xf.fffffffffffa748p-4 : inexact-ok
+= rootn upward m68k96 0x2p-16384 9223372036854775807LL : 0xf.fffffffffffa749p-4 : inexact-ok
+= rootn downward binary128 0x2p-16384 9223372036854775807LL : 0xf.fffffffffffa74856e84707f6278p-4 : inexact-ok
+= rootn tonearest binary128 0x2p-16384 9223372036854775807LL : 0xf.fffffffffffa74856e84707f628p-4 : inexact-ok
+= rootn towardzero binary128 0x2p-16384 9223372036854775807LL : 0xf.fffffffffffa74856e84707f6278p-4 : inexact-ok
+= rootn upward binary128 0x2p-16384 9223372036854775807LL : 0xf.fffffffffffa74856e84707f628p-4 : inexact-ok
+= rootn downward binary64 0x8p-972 9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= rootn tonearest binary64 0x8p-972 9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= rootn towardzero binary64 0x8p-972 9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= rootn upward binary64 0x8p-972 9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn downward intel96 0x8p-972 9223372036854775807LL : 0xf.ffffffffffffacp-4 : inexact-ok
+= rootn tonearest intel96 0x8p-972 9223372036854775807LL : 0xf.ffffffffffffac1p-4 : inexact-ok
+= rootn towardzero intel96 0x8p-972 9223372036854775807LL : 0xf.ffffffffffffacp-4 : inexact-ok
+= rootn upward intel96 0x8p-972 9223372036854775807LL : 0xf.ffffffffffffac1p-4 : inexact-ok
+= rootn downward m68k96 0x8p-972 9223372036854775807LL : 0xf.ffffffffffffacp-4 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 9223372036854775807LL : 0xf.ffffffffffffac1p-4 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 9223372036854775807LL : 0xf.ffffffffffffacp-4 : inexact-ok
+= rootn upward m68k96 0x8p-972 9223372036854775807LL : 0xf.ffffffffffffac1p-4 : inexact-ok
+= rootn downward binary128 0x8p-972 9223372036854775807LL : 0xf.ffffffffffffac0ae468dedab668p-4 : inexact-ok
+= rootn tonearest binary128 0x8p-972 9223372036854775807LL : 0xf.ffffffffffffac0ae468dedab668p-4 : inexact-ok
+= rootn towardzero binary128 0x8p-972 9223372036854775807LL : 0xf.ffffffffffffac0ae468dedab668p-4 : inexact-ok
+= rootn upward binary128 0x8p-972 9223372036854775807LL : 0xf.ffffffffffffac0ae468dedab67p-4 : inexact-ok
+= rootn downward ibm128 0x8p-972 9223372036854775807LL : 0xf.ffffffffffffac0ae468dedab4p-4 : inexact-ok
+= rootn tonearest ibm128 0x8p-972 9223372036854775807LL : 0xf.ffffffffffffac0ae468dedab8p-4 : inexact-ok
+= rootn towardzero ibm128 0x8p-972 9223372036854775807LL : 0xf.ffffffffffffac0ae468dedab4p-4 : inexact-ok
+= rootn upward ibm128 0x8p-972 9223372036854775807LL : 0xf.ffffffffffffac0ae468dedab8p-4 : inexact-ok
+rootn -min 1
+= rootn downward binary32 -0x4p-128 1LL : -0x4p-128 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest binary32 -0x4p-128 1LL : -0x4p-128 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero binary32 -0x4p-128 1LL : -0x4p-128 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward binary32 -0x4p-128 1LL : -0x4p-128 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward binary64 -0x4p-128 1LL : -0x4p-128 : inexact-ok
+= rootn tonearest binary64 -0x4p-128 1LL : -0x4p-128 : inexact-ok
+= rootn towardzero binary64 -0x4p-128 1LL : -0x4p-128 : inexact-ok
+= rootn upward binary64 -0x4p-128 1LL : -0x4p-128 : inexact-ok
+= rootn downward intel96 -0x4p-128 1LL : -0x4p-128 : inexact-ok
+= rootn tonearest intel96 -0x4p-128 1LL : -0x4p-128 : inexact-ok
+= rootn towardzero intel96 -0x4p-128 1LL : -0x4p-128 : inexact-ok
+= rootn upward intel96 -0x4p-128 1LL : -0x4p-128 : inexact-ok
+= rootn downward m68k96 -0x4p-128 1LL : -0x4p-128 : inexact-ok
+= rootn tonearest m68k96 -0x4p-128 1LL : -0x4p-128 : inexact-ok
+= rootn towardzero m68k96 -0x4p-128 1LL : -0x4p-128 : inexact-ok
+= rootn upward m68k96 -0x4p-128 1LL : -0x4p-128 : inexact-ok
+= rootn downward binary128 -0x4p-128 1LL : -0x4p-128 : inexact-ok
+= rootn tonearest binary128 -0x4p-128 1LL : -0x4p-128 : inexact-ok
+= rootn towardzero binary128 -0x4p-128 1LL : -0x4p-128 : inexact-ok
+= rootn upward binary128 -0x4p-128 1LL : -0x4p-128 : inexact-ok
+= rootn downward ibm128 -0x4p-128 1LL : -0x4p-128 : inexact-ok
+= rootn tonearest ibm128 -0x4p-128 1LL : -0x4p-128 : inexact-ok
+= rootn towardzero ibm128 -0x4p-128 1LL : -0x4p-128 : inexact-ok
+= rootn upward ibm128 -0x4p-128 1LL : -0x4p-128 : inexact-ok
+= rootn downward binary64 -0x4p-1024 1LL : -0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest binary64 -0x4p-1024 1LL : -0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero binary64 -0x4p-1024 1LL : -0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward binary64 -0x4p-1024 1LL : -0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward intel96 -0x4p-1024 1LL : -0x4p-1024 : inexact-ok
+= rootn tonearest intel96 -0x4p-1024 1LL : -0x4p-1024 : inexact-ok
+= rootn towardzero intel96 -0x4p-1024 1LL : -0x4p-1024 : inexact-ok
+= rootn upward intel96 -0x4p-1024 1LL : -0x4p-1024 : inexact-ok
+= rootn downward m68k96 -0x4p-1024 1LL : -0x4p-1024 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1024 1LL : -0x4p-1024 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1024 1LL : -0x4p-1024 : inexact-ok
+= rootn upward m68k96 -0x4p-1024 1LL : -0x4p-1024 : inexact-ok
+= rootn downward binary128 -0x4p-1024 1LL : -0x4p-1024 : inexact-ok
+= rootn tonearest binary128 -0x4p-1024 1LL : -0x4p-1024 : inexact-ok
+= rootn towardzero binary128 -0x4p-1024 1LL : -0x4p-1024 : inexact-ok
+= rootn upward binary128 -0x4p-1024 1LL : -0x4p-1024 : inexact-ok
+= rootn downward ibm128 -0x4p-1024 1LL : -0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest ibm128 -0x4p-1024 1LL : -0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero ibm128 -0x4p-1024 1LL : -0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward ibm128 -0x4p-1024 1LL : -0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward intel96 -0x4p-16384 1LL : -0x4p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest intel96 -0x4p-16384 1LL : -0x4p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero intel96 -0x4p-16384 1LL : -0x4p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward intel96 -0x4p-16384 1LL : -0x4p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward m68k96 -0x4p-16384 1LL : -0x4p-16384 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16384 1LL : -0x4p-16384 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16384 1LL : -0x4p-16384 : inexact-ok
+= rootn upward m68k96 -0x4p-16384 1LL : -0x4p-16384 : inexact-ok
+= rootn downward binary128 -0x4p-16384 1LL : -0x4p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest binary128 -0x4p-16384 1LL : -0x4p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero binary128 -0x4p-16384 1LL : -0x4p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward binary128 -0x4p-16384 1LL : -0x4p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward intel96 -0x2p-16384 1LL : -0x2p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest intel96 -0x2p-16384 1LL : -0x2p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero intel96 -0x2p-16384 1LL : -0x2p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward intel96 -0x2p-16384 1LL : -0x2p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward m68k96 -0x2p-16384 1LL : -0x2p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest m68k96 -0x2p-16384 1LL : -0x2p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero m68k96 -0x2p-16384 1LL : -0x2p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward m68k96 -0x2p-16384 1LL : -0x2p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward binary128 -0x2p-16384 1LL : -0x2p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest binary128 -0x2p-16384 1LL : -0x2p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero binary128 -0x2p-16384 1LL : -0x2p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward binary128 -0x2p-16384 1LL : -0x2p-16384 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward binary64 -0x8p-972 1LL : -0x8p-972 : inexact-ok
+= rootn tonearest binary64 -0x8p-972 1LL : -0x8p-972 : inexact-ok
+= rootn towardzero binary64 -0x8p-972 1LL : -0x8p-972 : inexact-ok
+= rootn upward binary64 -0x8p-972 1LL : -0x8p-972 : inexact-ok
+= rootn downward intel96 -0x8p-972 1LL : -0x8p-972 : inexact-ok
+= rootn tonearest intel96 -0x8p-972 1LL : -0x8p-972 : inexact-ok
+= rootn towardzero intel96 -0x8p-972 1LL : -0x8p-972 : inexact-ok
+= rootn upward intel96 -0x8p-972 1LL : -0x8p-972 : inexact-ok
+= rootn downward m68k96 -0x8p-972 1LL : -0x8p-972 : inexact-ok
+= rootn tonearest m68k96 -0x8p-972 1LL : -0x8p-972 : inexact-ok
+= rootn towardzero m68k96 -0x8p-972 1LL : -0x8p-972 : inexact-ok
+= rootn upward m68k96 -0x8p-972 1LL : -0x8p-972 : inexact-ok
+= rootn downward binary128 -0x8p-972 1LL : -0x8p-972 : inexact-ok
+= rootn tonearest binary128 -0x8p-972 1LL : -0x8p-972 : inexact-ok
+= rootn towardzero binary128 -0x8p-972 1LL : -0x8p-972 : inexact-ok
+= rootn upward binary128 -0x8p-972 1LL : -0x8p-972 : inexact-ok
+= rootn downward ibm128 -0x8p-972 1LL : -0x8p-972 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest ibm128 -0x8p-972 1LL : -0x8p-972 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero ibm128 -0x8p-972 1LL : -0x8p-972 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward ibm128 -0x8p-972 1LL : -0x8p-972 : inexact-ok underflow-ok errno-erange-ok
+rootn -min 3
+= rootn downward binary32 -0x4p-128 3LL : -0x4p-44 : inexact-ok
+= rootn tonearest binary32 -0x4p-128 3LL : -0x4p-44 : inexact-ok
+= rootn towardzero binary32 -0x4p-128 3LL : -0x4p-44 : inexact-ok
+= rootn upward binary32 -0x4p-128 3LL : -0x4p-44 : inexact-ok
+= rootn downward binary64 -0x4p-128 3LL : -0x4p-44 : inexact-ok
+= rootn tonearest binary64 -0x4p-128 3LL : -0x4p-44 : inexact-ok
+= rootn towardzero binary64 -0x4p-128 3LL : -0x4p-44 : inexact-ok
+= rootn upward binary64 -0x4p-128 3LL : -0x4p-44 : inexact-ok
+= rootn downward intel96 -0x4p-128 3LL : -0x4p-44 : inexact-ok
+= rootn tonearest intel96 -0x4p-128 3LL : -0x4p-44 : inexact-ok
+= rootn towardzero intel96 -0x4p-128 3LL : -0x4p-44 : inexact-ok
+= rootn upward intel96 -0x4p-128 3LL : -0x4p-44 : inexact-ok
+= rootn downward m68k96 -0x4p-128 3LL : -0x4p-44 : inexact-ok
+= rootn tonearest m68k96 -0x4p-128 3LL : -0x4p-44 : inexact-ok
+= rootn towardzero m68k96 -0x4p-128 3LL : -0x4p-44 : inexact-ok
+= rootn upward m68k96 -0x4p-128 3LL : -0x4p-44 : inexact-ok
+= rootn downward binary128 -0x4p-128 3LL : -0x4p-44 : inexact-ok
+= rootn tonearest binary128 -0x4p-128 3LL : -0x4p-44 : inexact-ok
+= rootn towardzero binary128 -0x4p-128 3LL : -0x4p-44 : inexact-ok
+= rootn upward binary128 -0x4p-128 3LL : -0x4p-44 : inexact-ok
+= rootn downward ibm128 -0x4p-128 3LL : -0x4p-44 : inexact-ok
+= rootn tonearest ibm128 -0x4p-128 3LL : -0x4p-44 : inexact-ok
+= rootn towardzero ibm128 -0x4p-128 3LL : -0x4p-44 : inexact-ok
+= rootn upward ibm128 -0x4p-128 3LL : -0x4p-44 : inexact-ok
+= rootn downward binary64 -0x4p-1024 3LL : -0xa.14517cc6b9458p-344 : inexact-ok
+= rootn tonearest binary64 -0x4p-1024 3LL : -0xa.14517cc6b9458p-344 : inexact-ok
+= rootn towardzero binary64 -0x4p-1024 3LL : -0xa.14517cc6b945p-344 : inexact-ok
+= rootn upward binary64 -0x4p-1024 3LL : -0xa.14517cc6b945p-344 : inexact-ok
+= rootn downward intel96 -0x4p-1024 3LL : -0xa.14517cc6b945712p-344 : inexact-ok
+= rootn tonearest intel96 -0x4p-1024 3LL : -0xa.14517cc6b945711p-344 : inexact-ok
+= rootn towardzero intel96 -0x4p-1024 3LL : -0xa.14517cc6b945711p-344 : inexact-ok
+= rootn upward intel96 -0x4p-1024 3LL : -0xa.14517cc6b945711p-344 : inexact-ok
+= rootn downward m68k96 -0x4p-1024 3LL : -0xa.14517cc6b945712p-344 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1024 3LL : -0xa.14517cc6b945711p-344 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1024 3LL : -0xa.14517cc6b945711p-344 : inexact-ok
+= rootn upward m68k96 -0x4p-1024 3LL : -0xa.14517cc6b945711p-344 : inexact-ok
+= rootn downward binary128 -0x4p-1024 3LL : -0xa.14517cc6b9457111eed5b8adf13p-344 : inexact-ok
+= rootn tonearest binary128 -0x4p-1024 3LL : -0xa.14517cc6b9457111eed5b8adf128p-344 : inexact-ok
+= rootn towardzero binary128 -0x4p-1024 3LL : -0xa.14517cc6b9457111eed5b8adf128p-344 : inexact-ok
+= rootn upward binary128 -0x4p-1024 3LL : -0xa.14517cc6b9457111eed5b8adf128p-344 : inexact-ok
+= rootn downward ibm128 -0x4p-1024 3LL : -0xa.14517cc6b9457111eed5b8adf4p-344 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1024 3LL : -0xa.14517cc6b9457111eed5b8adfp-344 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1024 3LL : -0xa.14517cc6b9457111eed5b8adfp-344 : inexact-ok
+= rootn upward ibm128 -0x4p-1024 3LL : -0xa.14517cc6b9457111eed5b8adfp-344 : inexact-ok
+= rootn downward intel96 -0x4p-16384 3LL : -0xa.14517cc6b945712p-5464 : inexact-ok
+= rootn tonearest intel96 -0x4p-16384 3LL : -0xa.14517cc6b945711p-5464 : inexact-ok
+= rootn towardzero intel96 -0x4p-16384 3LL : -0xa.14517cc6b945711p-5464 : inexact-ok
+= rootn upward intel96 -0x4p-16384 3LL : -0xa.14517cc6b945711p-5464 : inexact-ok
+= rootn downward m68k96 -0x4p-16384 3LL : -0xa.14517cc6b945712p-5464 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16384 3LL : -0xa.14517cc6b945711p-5464 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16384 3LL : -0xa.14517cc6b945711p-5464 : inexact-ok
+= rootn upward m68k96 -0x4p-16384 3LL : -0xa.14517cc6b945711p-5464 : inexact-ok
+= rootn downward binary128 -0x4p-16384 3LL : -0xa.14517cc6b9457111eed5b8adf13p-5464 : inexact-ok
+= rootn tonearest binary128 -0x4p-16384 3LL : -0xa.14517cc6b9457111eed5b8adf128p-5464 : inexact-ok
+= rootn towardzero binary128 -0x4p-16384 3LL : -0xa.14517cc6b9457111eed5b8adf128p-5464 : inexact-ok
+= rootn upward binary128 -0x4p-16384 3LL : -0xa.14517cc6b9457111eed5b8adf128p-5464 : inexact-ok
+= rootn downward intel96 -0x2p-16384 3LL : -0x8p-5464 : inexact-ok
+= rootn tonearest intel96 -0x2p-16384 3LL : -0x8p-5464 : inexact-ok
+= rootn towardzero intel96 -0x2p-16384 3LL : -0x8p-5464 : inexact-ok
+= rootn upward intel96 -0x2p-16384 3LL : -0x8p-5464 : inexact-ok
+= rootn downward m68k96 -0x2p-16384 3LL : -0x8p-5464 : inexact-ok
+= rootn tonearest m68k96 -0x2p-16384 3LL : -0x8p-5464 : inexact-ok
+= rootn towardzero m68k96 -0x2p-16384 3LL : -0x8p-5464 : inexact-ok
+= rootn upward m68k96 -0x2p-16384 3LL : -0x8p-5464 : inexact-ok
+= rootn downward binary128 -0x2p-16384 3LL : -0x8p-5464 : inexact-ok
+= rootn tonearest binary128 -0x2p-16384 3LL : -0x8p-5464 : inexact-ok
+= rootn towardzero binary128 -0x2p-16384 3LL : -0x8p-5464 : inexact-ok
+= rootn upward binary128 -0x2p-16384 3LL : -0x8p-5464 : inexact-ok
+= rootn downward binary64 -0x8p-972 3LL : -0x2p-324 : inexact-ok
+= rootn tonearest binary64 -0x8p-972 3LL : -0x2p-324 : inexact-ok
+= rootn towardzero binary64 -0x8p-972 3LL : -0x2p-324 : inexact-ok
+= rootn upward binary64 -0x8p-972 3LL : -0x2p-324 : inexact-ok
+= rootn downward intel96 -0x8p-972 3LL : -0x2p-324 : inexact-ok
+= rootn tonearest intel96 -0x8p-972 3LL : -0x2p-324 : inexact-ok
+= rootn towardzero intel96 -0x8p-972 3LL : -0x2p-324 : inexact-ok
+= rootn upward intel96 -0x8p-972 3LL : -0x2p-324 : inexact-ok
+= rootn downward m68k96 -0x8p-972 3LL : -0x2p-324 : inexact-ok
+= rootn tonearest m68k96 -0x8p-972 3LL : -0x2p-324 : inexact-ok
+= rootn towardzero m68k96 -0x8p-972 3LL : -0x2p-324 : inexact-ok
+= rootn upward m68k96 -0x8p-972 3LL : -0x2p-324 : inexact-ok
+= rootn downward binary128 -0x8p-972 3LL : -0x2p-324 : inexact-ok
+= rootn tonearest binary128 -0x8p-972 3LL : -0x2p-324 : inexact-ok
+= rootn towardzero binary128 -0x8p-972 3LL : -0x2p-324 : inexact-ok
+= rootn upward binary128 -0x8p-972 3LL : -0x2p-324 : inexact-ok
+= rootn downward ibm128 -0x8p-972 3LL : -0x2p-324 : inexact-ok
+= rootn tonearest ibm128 -0x8p-972 3LL : -0x2p-324 : inexact-ok
+= rootn towardzero ibm128 -0x8p-972 3LL : -0x2p-324 : inexact-ok
+= rootn upward ibm128 -0x8p-972 3LL : -0x2p-324 : inexact-ok
+rootn -min 5
+= rootn downward binary32 -0x4p-128 5LL : -0x6.f6e338p-28 : inexact-ok
+= rootn tonearest binary32 -0x4p-128 5LL : -0x6.f6e338p-28 : inexact-ok
+= rootn towardzero binary32 -0x4p-128 5LL : -0x6.f6e33p-28 : inexact-ok
+= rootn upward binary32 -0x4p-128 5LL : -0x6.f6e33p-28 : inexact-ok
+= rootn downward binary64 -0x4p-128 5LL : -0x6.f6e336b6f8484p-28 : inexact-ok
+= rootn tonearest binary64 -0x4p-128 5LL : -0x6.f6e336b6f848p-28 : inexact-ok
+= rootn towardzero binary64 -0x4p-128 5LL : -0x6.f6e336b6f848p-28 : inexact-ok
+= rootn upward binary64 -0x4p-128 5LL : -0x6.f6e336b6f848p-28 : inexact-ok
+= rootn downward intel96 -0x4p-128 5LL : -0x6.f6e336b6f8480858p-28 : inexact-ok
+= rootn tonearest intel96 -0x4p-128 5LL : -0x6.f6e336b6f848085p-28 : inexact-ok
+= rootn towardzero intel96 -0x4p-128 5LL : -0x6.f6e336b6f848085p-28 : inexact-ok
+= rootn upward intel96 -0x4p-128 5LL : -0x6.f6e336b6f848085p-28 : inexact-ok
+= rootn downward m68k96 -0x4p-128 5LL : -0x6.f6e336b6f8480858p-28 : inexact-ok
+= rootn tonearest m68k96 -0x4p-128 5LL : -0x6.f6e336b6f848085p-28 : inexact-ok
+= rootn towardzero m68k96 -0x4p-128 5LL : -0x6.f6e336b6f848085p-28 : inexact-ok
+= rootn upward m68k96 -0x4p-128 5LL : -0x6.f6e336b6f848085p-28 : inexact-ok
+= rootn downward binary128 -0x4p-128 5LL : -0x6.f6e336b6f8480853d874c2c9fea8p-28 : inexact-ok
+= rootn tonearest binary128 -0x4p-128 5LL : -0x6.f6e336b6f8480853d874c2c9fea4p-28 : inexact-ok
+= rootn towardzero binary128 -0x4p-128 5LL : -0x6.f6e336b6f8480853d874c2c9fea4p-28 : inexact-ok
+= rootn upward binary128 -0x4p-128 5LL : -0x6.f6e336b6f8480853d874c2c9fea4p-28 : inexact-ok
+= rootn downward ibm128 -0x4p-128 5LL : -0x6.f6e336b6f8480853d874c2cap-28 : inexact-ok
+= rootn tonearest ibm128 -0x4p-128 5LL : -0x6.f6e336b6f8480853d874c2c9fep-28 : inexact-ok
+= rootn towardzero ibm128 -0x4p-128 5LL : -0x6.f6e336b6f8480853d874c2c9fep-28 : inexact-ok
+= rootn upward ibm128 -0x4p-128 5LL : -0x6.f6e336b6f8480853d874c2c9fep-28 : inexact-ok
+= rootn downward binary64 -0x4p-1024 5LL : -0xc.203001d9572e8p-208 : inexact-ok
+= rootn tonearest binary64 -0x4p-1024 5LL : -0xc.203001d9572ep-208 : inexact-ok
+= rootn towardzero binary64 -0x4p-1024 5LL : -0xc.203001d9572ep-208 : inexact-ok
+= rootn upward binary64 -0x4p-1024 5LL : -0xc.203001d9572ep-208 : inexact-ok
+= rootn downward intel96 -0x4p-1024 5LL : -0xc.203001d9572e35dp-208 : inexact-ok
+= rootn tonearest intel96 -0x4p-1024 5LL : -0xc.203001d9572e35dp-208 : inexact-ok
+= rootn towardzero intel96 -0x4p-1024 5LL : -0xc.203001d9572e35cp-208 : inexact-ok
+= rootn upward intel96 -0x4p-1024 5LL : -0xc.203001d9572e35cp-208 : inexact-ok
+= rootn downward m68k96 -0x4p-1024 5LL : -0xc.203001d9572e35dp-208 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1024 5LL : -0xc.203001d9572e35dp-208 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1024 5LL : -0xc.203001d9572e35cp-208 : inexact-ok
+= rootn upward m68k96 -0x4p-1024 5LL : -0xc.203001d9572e35cp-208 : inexact-ok
+= rootn downward binary128 -0x4p-1024 5LL : -0xc.203001d9572e35cc9a39907570ap-208 : inexact-ok
+= rootn tonearest binary128 -0x4p-1024 5LL : -0xc.203001d9572e35cc9a3990757098p-208 : inexact-ok
+= rootn towardzero binary128 -0x4p-1024 5LL : -0xc.203001d9572e35cc9a3990757098p-208 : inexact-ok
+= rootn upward binary128 -0x4p-1024 5LL : -0xc.203001d9572e35cc9a3990757098p-208 : inexact-ok
+= rootn downward ibm128 -0x4p-1024 5LL : -0xc.203001d9572e35cc9a39907574p-208 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1024 5LL : -0xc.203001d9572e35cc9a3990757p-208 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1024 5LL : -0xc.203001d9572e35cc9a3990757p-208 : inexact-ok
+= rootn upward ibm128 -0x4p-1024 5LL : -0xc.203001d9572e35cc9a3990757p-208 : inexact-ok
+= rootn downward intel96 -0x4p-16384 5LL : -0xc.203001d9572e35dp-3280 : inexact-ok
+= rootn tonearest intel96 -0x4p-16384 5LL : -0xc.203001d9572e35dp-3280 : inexact-ok
+= rootn towardzero intel96 -0x4p-16384 5LL : -0xc.203001d9572e35cp-3280 : inexact-ok
+= rootn upward intel96 -0x4p-16384 5LL : -0xc.203001d9572e35cp-3280 : inexact-ok
+= rootn downward m68k96 -0x4p-16384 5LL : -0xc.203001d9572e35dp-3280 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16384 5LL : -0xc.203001d9572e35dp-3280 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16384 5LL : -0xc.203001d9572e35cp-3280 : inexact-ok
+= rootn upward m68k96 -0x4p-16384 5LL : -0xc.203001d9572e35cp-3280 : inexact-ok
+= rootn downward binary128 -0x4p-16384 5LL : -0xc.203001d9572e35cc9a39907570ap-3280 : inexact-ok
+= rootn tonearest binary128 -0x4p-16384 5LL : -0xc.203001d9572e35cc9a3990757098p-3280 : inexact-ok
+= rootn towardzero binary128 -0x4p-16384 5LL : -0xc.203001d9572e35cc9a3990757098p-3280 : inexact-ok
+= rootn upward binary128 -0x4p-16384 5LL : -0xc.203001d9572e35cc9a3990757098p-3280 : inexact-ok
+= rootn downward intel96 -0x2p-16384 5LL : -0xa.8e5a29dca9b622cp-3280 : inexact-ok
+= rootn tonearest intel96 -0x2p-16384 5LL : -0xa.8e5a29dca9b622bp-3280 : inexact-ok
+= rootn towardzero intel96 -0x2p-16384 5LL : -0xa.8e5a29dca9b622bp-3280 : inexact-ok
+= rootn upward intel96 -0x2p-16384 5LL : -0xa.8e5a29dca9b622bp-3280 : inexact-ok
+= rootn downward m68k96 -0x2p-16384 5LL : -0xa.8e5a29dca9b622cp-3280 : inexact-ok
+= rootn tonearest m68k96 -0x2p-16384 5LL : -0xa.8e5a29dca9b622bp-3280 : inexact-ok
+= rootn towardzero m68k96 -0x2p-16384 5LL : -0xa.8e5a29dca9b622bp-3280 : inexact-ok
+= rootn upward m68k96 -0x2p-16384 5LL : -0xa.8e5a29dca9b622bp-3280 : inexact-ok
+= rootn downward binary128 -0x2p-16384 5LL : -0xa.8e5a29dca9b622b49d423b65cb6p-3280 : inexact-ok
+= rootn tonearest binary128 -0x2p-16384 5LL : -0xa.8e5a29dca9b622b49d423b65cb58p-3280 : inexact-ok
+= rootn towardzero binary128 -0x2p-16384 5LL : -0xa.8e5a29dca9b622b49d423b65cb58p-3280 : inexact-ok
+= rootn upward binary128 -0x2p-16384 5LL : -0xa.8e5a29dca9b622b49d423b65cb58p-3280 : inexact-ok
+= rootn downward binary64 -0x8p-972 5LL : -0x4.984461aeb99d4p-196 : inexact-ok
+= rootn tonearest binary64 -0x8p-972 5LL : -0x4.984461aeb99d4p-196 : inexact-ok
+= rootn towardzero binary64 -0x8p-972 5LL : -0x4.984461aeb99dp-196 : inexact-ok
+= rootn upward binary64 -0x8p-972 5LL : -0x4.984461aeb99dp-196 : inexact-ok
+= rootn downward intel96 -0x8p-972 5LL : -0x4.984461aeb99d25bp-196 : inexact-ok
+= rootn tonearest intel96 -0x8p-972 5LL : -0x4.984461aeb99d25a8p-196 : inexact-ok
+= rootn towardzero intel96 -0x8p-972 5LL : -0x4.984461aeb99d25a8p-196 : inexact-ok
+= rootn upward intel96 -0x8p-972 5LL : -0x4.984461aeb99d25a8p-196 : inexact-ok
+= rootn downward m68k96 -0x8p-972 5LL : -0x4.984461aeb99d25bp-196 : inexact-ok
+= rootn tonearest m68k96 -0x8p-972 5LL : -0x4.984461aeb99d25a8p-196 : inexact-ok
+= rootn towardzero m68k96 -0x8p-972 5LL : -0x4.984461aeb99d25a8p-196 : inexact-ok
+= rootn upward m68k96 -0x8p-972 5LL : -0x4.984461aeb99d25a8p-196 : inexact-ok
+= rootn downward binary128 -0x8p-972 5LL : -0x4.984461aeb99d25a94879081d8388p-196 : inexact-ok
+= rootn tonearest binary128 -0x8p-972 5LL : -0x4.984461aeb99d25a94879081d8388p-196 : inexact-ok
+= rootn towardzero binary128 -0x8p-972 5LL : -0x4.984461aeb99d25a94879081d8384p-196 : inexact-ok
+= rootn upward binary128 -0x8p-972 5LL : -0x4.984461aeb99d25a94879081d8384p-196 : inexact-ok
+= rootn downward ibm128 -0x8p-972 5LL : -0x4.984461aeb99d25a94879081d84p-196 : inexact-ok
+= rootn tonearest ibm128 -0x8p-972 5LL : -0x4.984461aeb99d25a94879081d84p-196 : inexact-ok
+= rootn towardzero ibm128 -0x8p-972 5LL : -0x4.984461aeb99d25a94879081d82p-196 : inexact-ok
+= rootn upward ibm128 -0x8p-972 5LL : -0x4.984461aeb99d25a94879081d82p-196 : inexact-ok
+rootn -min 63
+= rootn downward binary32 -0x4p-128 63LL : -0x4p-4 : inexact-ok
+= rootn tonearest binary32 -0x4p-128 63LL : -0x4p-4 : inexact-ok
+= rootn towardzero binary32 -0x4p-128 63LL : -0x4p-4 : inexact-ok
+= rootn upward binary32 -0x4p-128 63LL : -0x4p-4 : inexact-ok
+= rootn downward binary64 -0x4p-128 63LL : -0x4p-4 : inexact-ok
+= rootn tonearest binary64 -0x4p-128 63LL : -0x4p-4 : inexact-ok
+= rootn towardzero binary64 -0x4p-128 63LL : -0x4p-4 : inexact-ok
+= rootn upward binary64 -0x4p-128 63LL : -0x4p-4 : inexact-ok
+= rootn downward intel96 -0x4p-128 63LL : -0x4p-4 : inexact-ok
+= rootn tonearest intel96 -0x4p-128 63LL : -0x4p-4 : inexact-ok
+= rootn towardzero intel96 -0x4p-128 63LL : -0x4p-4 : inexact-ok
+= rootn upward intel96 -0x4p-128 63LL : -0x4p-4 : inexact-ok
+= rootn downward m68k96 -0x4p-128 63LL : -0x4p-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-128 63LL : -0x4p-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-128 63LL : -0x4p-4 : inexact-ok
+= rootn upward m68k96 -0x4p-128 63LL : -0x4p-4 : inexact-ok
+= rootn downward binary128 -0x4p-128 63LL : -0x4p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-128 63LL : -0x4p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-128 63LL : -0x4p-4 : inexact-ok
+= rootn upward binary128 -0x4p-128 63LL : -0x4p-4 : inexact-ok
+= rootn downward ibm128 -0x4p-128 63LL : -0x4p-4 : inexact-ok
+= rootn tonearest ibm128 -0x4p-128 63LL : -0x4p-4 : inexact-ok
+= rootn towardzero ibm128 -0x4p-128 63LL : -0x4p-4 : inexact-ok
+= rootn upward ibm128 -0x4p-128 63LL : -0x4p-4 : inexact-ok
+= rootn downward binary64 -0x4p-1024 63LL : -0xd.b7457770bf6bp-20 : inexact-ok
+= rootn tonearest binary64 -0x4p-1024 63LL : -0xd.b7457770bf6a8p-20 : inexact-ok
+= rootn towardzero binary64 -0x4p-1024 63LL : -0xd.b7457770bf6a8p-20 : inexact-ok
+= rootn upward binary64 -0x4p-1024 63LL : -0xd.b7457770bf6a8p-20 : inexact-ok
+= rootn downward intel96 -0x4p-1024 63LL : -0xd.b7457770bf6aa9fp-20 : inexact-ok
+= rootn tonearest intel96 -0x4p-1024 63LL : -0xd.b7457770bf6aa9ep-20 : inexact-ok
+= rootn towardzero intel96 -0x4p-1024 63LL : -0xd.b7457770bf6aa9ep-20 : inexact-ok
+= rootn upward intel96 -0x4p-1024 63LL : -0xd.b7457770bf6aa9ep-20 : inexact-ok
+= rootn downward m68k96 -0x4p-1024 63LL : -0xd.b7457770bf6aa9fp-20 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1024 63LL : -0xd.b7457770bf6aa9ep-20 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1024 63LL : -0xd.b7457770bf6aa9ep-20 : inexact-ok
+= rootn upward m68k96 -0x4p-1024 63LL : -0xd.b7457770bf6aa9ep-20 : inexact-ok
+= rootn downward binary128 -0x4p-1024 63LL : -0xd.b7457770bf6aa9e44c517815641p-20 : inexact-ok
+= rootn tonearest binary128 -0x4p-1024 63LL : -0xd.b7457770bf6aa9e44c5178156408p-20 : inexact-ok
+= rootn towardzero binary128 -0x4p-1024 63LL : -0xd.b7457770bf6aa9e44c5178156408p-20 : inexact-ok
+= rootn upward binary128 -0x4p-1024 63LL : -0xd.b7457770bf6aa9e44c5178156408p-20 : inexact-ok
+= rootn downward ibm128 -0x4p-1024 63LL : -0xd.b7457770bf6aa9e44c51781568p-20 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1024 63LL : -0xd.b7457770bf6aa9e44c51781564p-20 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1024 63LL : -0xd.b7457770bf6aa9e44c51781564p-20 : inexact-ok
+= rootn upward ibm128 -0x4p-1024 63LL : -0xd.b7457770bf6aa9e44c51781564p-20 : inexact-ok
+= rootn downward intel96 -0x4p-16384 63LL : -0xf.a6da70a17d1239fp-264 : inexact-ok
+= rootn tonearest intel96 -0x4p-16384 63LL : -0xf.a6da70a17d1239fp-264 : inexact-ok
+= rootn towardzero intel96 -0x4p-16384 63LL : -0xf.a6da70a17d1239ep-264 : inexact-ok
+= rootn upward intel96 -0x4p-16384 63LL : -0xf.a6da70a17d1239ep-264 : inexact-ok
+= rootn downward m68k96 -0x4p-16384 63LL : -0xf.a6da70a17d1239fp-264 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16384 63LL : -0xf.a6da70a17d1239fp-264 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16384 63LL : -0xf.a6da70a17d1239ep-264 : inexact-ok
+= rootn upward m68k96 -0x4p-16384 63LL : -0xf.a6da70a17d1239ep-264 : inexact-ok
+= rootn downward binary128 -0x4p-16384 63LL : -0xf.a6da70a17d1239ebf94c8c3d2c8p-264 : inexact-ok
+= rootn tonearest binary128 -0x4p-16384 63LL : -0xf.a6da70a17d1239ebf94c8c3d2c78p-264 : inexact-ok
+= rootn towardzero binary128 -0x4p-16384 63LL : -0xf.a6da70a17d1239ebf94c8c3d2c78p-264 : inexact-ok
+= rootn upward binary128 -0x4p-16384 63LL : -0xf.a6da70a17d1239ebf94c8c3d2c78p-264 : inexact-ok
+= rootn downward intel96 -0x2p-16384 63LL : -0xf.7b029a299cff9e1p-264 : inexact-ok
+= rootn tonearest intel96 -0x2p-16384 63LL : -0xf.7b029a299cff9ep-264 : inexact-ok
+= rootn towardzero intel96 -0x2p-16384 63LL : -0xf.7b029a299cff9ep-264 : inexact-ok
+= rootn upward intel96 -0x2p-16384 63LL : -0xf.7b029a299cff9ep-264 : inexact-ok
+= rootn downward m68k96 -0x2p-16384 63LL : -0xf.7b029a299cff9e1p-264 : inexact-ok
+= rootn tonearest m68k96 -0x2p-16384 63LL : -0xf.7b029a299cff9ep-264 : inexact-ok
+= rootn towardzero m68k96 -0x2p-16384 63LL : -0xf.7b029a299cff9ep-264 : inexact-ok
+= rootn upward m68k96 -0x2p-16384 63LL : -0xf.7b029a299cff9ep-264 : inexact-ok
+= rootn downward binary128 -0x2p-16384 63LL : -0xf.7b029a299cff9e0127d88b6a2f2p-264 : inexact-ok
+= rootn tonearest binary128 -0x2p-16384 63LL : -0xf.7b029a299cff9e0127d88b6a2f18p-264 : inexact-ok
+= rootn towardzero binary128 -0x2p-16384 63LL : -0xf.7b029a299cff9e0127d88b6a2f18p-264 : inexact-ok
+= rootn upward binary128 -0x2p-16384 63LL : -0xf.7b029a299cff9e0127d88b6a2f18p-264 : inexact-ok
+= rootn downward binary64 -0x8p-972 63LL : -0x1.892e2f1f775ccp-16 : inexact-ok
+= rootn tonearest binary64 -0x8p-972 63LL : -0x1.892e2f1f775cbp-16 : inexact-ok
+= rootn towardzero binary64 -0x8p-972 63LL : -0x1.892e2f1f775cbp-16 : inexact-ok
+= rootn upward binary64 -0x8p-972 63LL : -0x1.892e2f1f775cbp-16 : inexact-ok
+= rootn downward intel96 -0x8p-972 63LL : -0x1.892e2f1f775cb076p-16 : inexact-ok
+= rootn tonearest intel96 -0x8p-972 63LL : -0x1.892e2f1f775cb076p-16 : inexact-ok
+= rootn towardzero intel96 -0x8p-972 63LL : -0x1.892e2f1f775cb074p-16 : inexact-ok
+= rootn upward intel96 -0x8p-972 63LL : -0x1.892e2f1f775cb074p-16 : inexact-ok
+= rootn downward m68k96 -0x8p-972 63LL : -0x1.892e2f1f775cb076p-16 : inexact-ok
+= rootn tonearest m68k96 -0x8p-972 63LL : -0x1.892e2f1f775cb076p-16 : inexact-ok
+= rootn towardzero m68k96 -0x8p-972 63LL : -0x1.892e2f1f775cb074p-16 : inexact-ok
+= rootn upward m68k96 -0x8p-972 63LL : -0x1.892e2f1f775cb074p-16 : inexact-ok
+= rootn downward binary128 -0x8p-972 63LL : -0x1.892e2f1f775cb075289a1b81be03p-16 : inexact-ok
+= rootn tonearest binary128 -0x8p-972 63LL : -0x1.892e2f1f775cb075289a1b81be03p-16 : inexact-ok
+= rootn towardzero binary128 -0x8p-972 63LL : -0x1.892e2f1f775cb075289a1b81be02p-16 : inexact-ok
+= rootn upward binary128 -0x8p-972 63LL : -0x1.892e2f1f775cb075289a1b81be02p-16 : inexact-ok
+= rootn downward ibm128 -0x8p-972 63LL : -0x1.892e2f1f775cb075289a1b81be8p-16 : inexact-ok
+= rootn tonearest ibm128 -0x8p-972 63LL : -0x1.892e2f1f775cb075289a1b81bep-16 : inexact-ok
+= rootn towardzero ibm128 -0x8p-972 63LL : -0x1.892e2f1f775cb075289a1b81bep-16 : inexact-ok
+= rootn upward ibm128 -0x8p-972 63LL : -0x1.892e2f1f775cb075289a1b81bep-16 : inexact-ok
+rootn -min 127
+= rootn downward binary32 -0x4p-128 127LL : -0x8.0b355p-4 : inexact-ok
+= rootn tonearest binary32 -0x4p-128 127LL : -0x8.0b355p-4 : inexact-ok
+= rootn towardzero binary32 -0x4p-128 127LL : -0x8.0b354p-4 : inexact-ok
+= rootn upward binary32 -0x4p-128 127LL : -0x8.0b354p-4 : inexact-ok
+= rootn downward binary64 -0x4p-128 127LL : -0x8.0b354f2930d18p-4 : inexact-ok
+= rootn tonearest binary64 -0x4p-128 127LL : -0x8.0b354f2930d1p-4 : inexact-ok
+= rootn towardzero binary64 -0x4p-128 127LL : -0x8.0b354f2930d1p-4 : inexact-ok
+= rootn upward binary64 -0x4p-128 127LL : -0x8.0b354f2930d1p-4 : inexact-ok
+= rootn downward intel96 -0x4p-128 127LL : -0x8.0b354f2930d10a2p-4 : inexact-ok
+= rootn tonearest intel96 -0x4p-128 127LL : -0x8.0b354f2930d10a2p-4 : inexact-ok
+= rootn towardzero intel96 -0x4p-128 127LL : -0x8.0b354f2930d10a1p-4 : inexact-ok
+= rootn upward intel96 -0x4p-128 127LL : -0x8.0b354f2930d10a1p-4 : inexact-ok
+= rootn downward m68k96 -0x4p-128 127LL : -0x8.0b354f2930d10a2p-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-128 127LL : -0x8.0b354f2930d10a2p-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-128 127LL : -0x8.0b354f2930d10a1p-4 : inexact-ok
+= rootn upward m68k96 -0x4p-128 127LL : -0x8.0b354f2930d10a1p-4 : inexact-ok
+= rootn downward binary128 -0x4p-128 127LL : -0x8.0b354f2930d10a1871c242d89878p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-128 127LL : -0x8.0b354f2930d10a1871c242d8987p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-128 127LL : -0x8.0b354f2930d10a1871c242d8987p-4 : inexact-ok
+= rootn upward binary128 -0x4p-128 127LL : -0x8.0b354f2930d10a1871c242d8987p-4 : inexact-ok
+= rootn downward ibm128 -0x4p-128 127LL : -0x8.0b354f2930d10a1871c242d89cp-4 : inexact-ok
+= rootn tonearest ibm128 -0x4p-128 127LL : -0x8.0b354f2930d10a1871c242d898p-4 : inexact-ok
+= rootn towardzero ibm128 -0x4p-128 127LL : -0x8.0b354f2930d10a1871c242d898p-4 : inexact-ok
+= rootn upward ibm128 -0x4p-128 127LL : -0x8.0b354f2930d10a1871c242d898p-4 : inexact-ok
+= rootn downward binary64 -0x4p-1024 127LL : -0xf.7c0a4f861ec1p-12 : inexact-ok
+= rootn tonearest binary64 -0x4p-1024 127LL : -0xf.7c0a4f861ec1p-12 : inexact-ok
+= rootn towardzero binary64 -0x4p-1024 127LL : -0xf.7c0a4f861ec08p-12 : inexact-ok
+= rootn upward binary64 -0x4p-1024 127LL : -0xf.7c0a4f861ec08p-12 : inexact-ok
+= rootn downward intel96 -0x4p-1024 127LL : -0xf.7c0a4f861ec0fa5p-12 : inexact-ok
+= rootn tonearest intel96 -0x4p-1024 127LL : -0xf.7c0a4f861ec0fa4p-12 : inexact-ok
+= rootn towardzero intel96 -0x4p-1024 127LL : -0xf.7c0a4f861ec0fa4p-12 : inexact-ok
+= rootn upward intel96 -0x4p-1024 127LL : -0xf.7c0a4f861ec0fa4p-12 : inexact-ok
+= rootn downward m68k96 -0x4p-1024 127LL : -0xf.7c0a4f861ec0fa5p-12 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1024 127LL : -0xf.7c0a4f861ec0fa4p-12 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1024 127LL : -0xf.7c0a4f861ec0fa4p-12 : inexact-ok
+= rootn upward m68k96 -0x4p-1024 127LL : -0xf.7c0a4f861ec0fa4p-12 : inexact-ok
+= rootn downward binary128 -0x4p-1024 127LL : -0xf.7c0a4f861ec0fa45e2aff00d615p-12 : inexact-ok
+= rootn tonearest binary128 -0x4p-1024 127LL : -0xf.7c0a4f861ec0fa45e2aff00d615p-12 : inexact-ok
+= rootn towardzero binary128 -0x4p-1024 127LL : -0xf.7c0a4f861ec0fa45e2aff00d6148p-12 : inexact-ok
+= rootn upward binary128 -0x4p-1024 127LL : -0xf.7c0a4f861ec0fa45e2aff00d6148p-12 : inexact-ok
+= rootn downward ibm128 -0x4p-1024 127LL : -0xf.7c0a4f861ec0fa45e2aff00d64p-12 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1024 127LL : -0xf.7c0a4f861ec0fa45e2aff00d6p-12 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1024 127LL : -0xf.7c0a4f861ec0fa45e2aff00d6p-12 : inexact-ok
+= rootn upward ibm128 -0x4p-1024 127LL : -0xf.7c0a4f861ec0fa45e2aff00d6p-12 : inexact-ok
+= rootn downward intel96 -0x4p-16384 127LL : -0x8.0b354f2930d10a2p-132 : inexact-ok
+= rootn tonearest intel96 -0x4p-16384 127LL : -0x8.0b354f2930d10a2p-132 : inexact-ok
+= rootn towardzero intel96 -0x4p-16384 127LL : -0x8.0b354f2930d10a1p-132 : inexact-ok
+= rootn upward intel96 -0x4p-16384 127LL : -0x8.0b354f2930d10a1p-132 : inexact-ok
+= rootn downward m68k96 -0x4p-16384 127LL : -0x8.0b354f2930d10a2p-132 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16384 127LL : -0x8.0b354f2930d10a2p-132 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16384 127LL : -0x8.0b354f2930d10a1p-132 : inexact-ok
+= rootn upward m68k96 -0x4p-16384 127LL : -0x8.0b354f2930d10a1p-132 : inexact-ok
+= rootn downward binary128 -0x4p-16384 127LL : -0x8.0b354f2930d10a1871c242d89878p-132 : inexact-ok
+= rootn tonearest binary128 -0x4p-16384 127LL : -0x8.0b354f2930d10a1871c242d8987p-132 : inexact-ok
+= rootn towardzero binary128 -0x4p-16384 127LL : -0x8.0b354f2930d10a1871c242d8987p-132 : inexact-ok
+= rootn upward binary128 -0x4p-16384 127LL : -0x8.0b354f2930d10a1871c242d8987p-132 : inexact-ok
+= rootn downward intel96 -0x2p-16384 127LL : -0x8p-132 : inexact-ok
+= rootn tonearest intel96 -0x2p-16384 127LL : -0x8p-132 : inexact-ok
+= rootn towardzero intel96 -0x2p-16384 127LL : -0x8p-132 : inexact-ok
+= rootn upward intel96 -0x2p-16384 127LL : -0x8p-132 : inexact-ok
+= rootn downward m68k96 -0x2p-16384 127LL : -0x8p-132 : inexact-ok
+= rootn tonearest m68k96 -0x2p-16384 127LL : -0x8p-132 : inexact-ok
+= rootn towardzero m68k96 -0x2p-16384 127LL : -0x8p-132 : inexact-ok
+= rootn upward m68k96 -0x2p-16384 127LL : -0x8p-132 : inexact-ok
+= rootn downward binary128 -0x2p-16384 127LL : -0x8p-132 : inexact-ok
+= rootn tonearest binary128 -0x2p-16384 127LL : -0x8p-132 : inexact-ok
+= rootn towardzero binary128 -0x2p-16384 127LL : -0x8p-132 : inexact-ok
+= rootn upward binary128 -0x2p-16384 127LL : -0x8p-132 : inexact-ok
+= rootn downward binary64 -0x8p-972 127LL : -0x1.4adc41fefd0ep-8 : inexact-ok
+= rootn tonearest binary64 -0x8p-972 127LL : -0x1.4adc41fefd0ep-8 : inexact-ok
+= rootn towardzero binary64 -0x8p-972 127LL : -0x1.4adc41fefd0dfp-8 : inexact-ok
+= rootn upward binary64 -0x8p-972 127LL : -0x1.4adc41fefd0dfp-8 : inexact-ok
+= rootn downward intel96 -0x8p-972 127LL : -0x1.4adc41fefd0dff3ap-8 : inexact-ok
+= rootn tonearest intel96 -0x8p-972 127LL : -0x1.4adc41fefd0dff3ap-8 : inexact-ok
+= rootn towardzero intel96 -0x8p-972 127LL : -0x1.4adc41fefd0dff38p-8 : inexact-ok
+= rootn upward intel96 -0x8p-972 127LL : -0x1.4adc41fefd0dff38p-8 : inexact-ok
+= rootn downward m68k96 -0x8p-972 127LL : -0x1.4adc41fefd0dff3ap-8 : inexact-ok
+= rootn tonearest m68k96 -0x8p-972 127LL : -0x1.4adc41fefd0dff3ap-8 : inexact-ok
+= rootn towardzero m68k96 -0x8p-972 127LL : -0x1.4adc41fefd0dff38p-8 : inexact-ok
+= rootn upward m68k96 -0x8p-972 127LL : -0x1.4adc41fefd0dff38p-8 : inexact-ok
+= rootn downward binary128 -0x8p-972 127LL : -0x1.4adc41fefd0dff39f4917bd98d57p-8 : inexact-ok
+= rootn tonearest binary128 -0x8p-972 127LL : -0x1.4adc41fefd0dff39f4917bd98d57p-8 : inexact-ok
+= rootn towardzero binary128 -0x8p-972 127LL : -0x1.4adc41fefd0dff39f4917bd98d56p-8 : inexact-ok
+= rootn upward binary128 -0x8p-972 127LL : -0x1.4adc41fefd0dff39f4917bd98d56p-8 : inexact-ok
+= rootn downward ibm128 -0x8p-972 127LL : -0x1.4adc41fefd0dff39f4917bd98d8p-8 : inexact-ok
+= rootn tonearest ibm128 -0x8p-972 127LL : -0x1.4adc41fefd0dff39f4917bd98d8p-8 : inexact-ok
+= rootn towardzero ibm128 -0x8p-972 127LL : -0x1.4adc41fefd0dff39f4917bd98dp-8 : inexact-ok
+= rootn upward ibm128 -0x8p-972 127LL : -0x1.4adc41fefd0dff39f4917bd98dp-8 : inexact-ok
+rootn -min 255
+= rootn downward binary32 -0x4p-128 255LL : -0xb.5c249p-4 : inexact-ok
+= rootn tonearest binary32 -0x4p-128 255LL : -0xb.5c249p-4 : inexact-ok
+= rootn towardzero binary32 -0x4p-128 255LL : -0xb.5c248p-4 : inexact-ok
+= rootn upward binary32 -0x4p-128 255LL : -0xb.5c248p-4 : inexact-ok
+= rootn downward binary64 -0x4p-128 255LL : -0xb.5c2488b712288p-4 : inexact-ok
+= rootn tonearest binary64 -0x4p-128 255LL : -0xb.5c2488b71228p-4 : inexact-ok
+= rootn towardzero binary64 -0x4p-128 255LL : -0xb.5c2488b71228p-4 : inexact-ok
+= rootn upward binary64 -0x4p-128 255LL : -0xb.5c2488b71228p-4 : inexact-ok
+= rootn downward intel96 -0x4p-128 255LL : -0xb.5c2488b712283ddp-4 : inexact-ok
+= rootn tonearest intel96 -0x4p-128 255LL : -0xb.5c2488b712283dcp-4 : inexact-ok
+= rootn towardzero intel96 -0x4p-128 255LL : -0xb.5c2488b712283dcp-4 : inexact-ok
+= rootn upward intel96 -0x4p-128 255LL : -0xb.5c2488b712283dcp-4 : inexact-ok
+= rootn downward m68k96 -0x4p-128 255LL : -0xb.5c2488b712283ddp-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-128 255LL : -0xb.5c2488b712283dcp-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-128 255LL : -0xb.5c2488b712283dcp-4 : inexact-ok
+= rootn upward m68k96 -0x4p-128 255LL : -0xb.5c2488b712283dcp-4 : inexact-ok
+= rootn downward binary128 -0x4p-128 255LL : -0xb.5c2488b712283dc0b0d2f069061p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-128 255LL : -0xb.5c2488b712283dc0b0d2f0690608p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-128 255LL : -0xb.5c2488b712283dc0b0d2f0690608p-4 : inexact-ok
+= rootn upward binary128 -0x4p-128 255LL : -0xb.5c2488b712283dc0b0d2f0690608p-4 : inexact-ok
+= rootn downward ibm128 -0x4p-128 255LL : -0xb.5c2488b712283dc0b0d2f06908p-4 : inexact-ok
+= rootn tonearest ibm128 -0x4p-128 255LL : -0xb.5c2488b712283dc0b0d2f06908p-4 : inexact-ok
+= rootn towardzero ibm128 -0x4p-128 255LL : -0xb.5c2488b712283dc0b0d2f06904p-4 : inexact-ok
+= rootn upward ibm128 -0x4p-128 255LL : -0xb.5c2488b712283dc0b0d2f06904p-4 : inexact-ok
+= rootn downward binary64 -0x4p-1024 255LL : -0xf.e9caf018dca18p-8 : inexact-ok
+= rootn tonearest binary64 -0x4p-1024 255LL : -0xf.e9caf018dca1p-8 : inexact-ok
+= rootn towardzero binary64 -0x4p-1024 255LL : -0xf.e9caf018dca1p-8 : inexact-ok
+= rootn upward binary64 -0x4p-1024 255LL : -0xf.e9caf018dca1p-8 : inexact-ok
+= rootn downward intel96 -0x4p-1024 255LL : -0xf.e9caf018dca1125p-8 : inexact-ok
+= rootn tonearest intel96 -0x4p-1024 255LL : -0xf.e9caf018dca1125p-8 : inexact-ok
+= rootn towardzero intel96 -0x4p-1024 255LL : -0xf.e9caf018dca1124p-8 : inexact-ok
+= rootn upward intel96 -0x4p-1024 255LL : -0xf.e9caf018dca1124p-8 : inexact-ok
+= rootn downward m68k96 -0x4p-1024 255LL : -0xf.e9caf018dca1125p-8 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1024 255LL : -0xf.e9caf018dca1125p-8 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1024 255LL : -0xf.e9caf018dca1124p-8 : inexact-ok
+= rootn upward m68k96 -0x4p-1024 255LL : -0xf.e9caf018dca1124p-8 : inexact-ok
+= rootn downward binary128 -0x4p-1024 255LL : -0xf.e9caf018dca1124c014742691268p-8 : inexact-ok
+= rootn tonearest binary128 -0x4p-1024 255LL : -0xf.e9caf018dca1124c014742691268p-8 : inexact-ok
+= rootn towardzero binary128 -0x4p-1024 255LL : -0xf.e9caf018dca1124c01474269126p-8 : inexact-ok
+= rootn upward binary128 -0x4p-1024 255LL : -0xf.e9caf018dca1124c01474269126p-8 : inexact-ok
+= rootn downward ibm128 -0x4p-1024 255LL : -0xf.e9caf018dca1124c0147426914p-8 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1024 255LL : -0xf.e9caf018dca1124c0147426914p-8 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1024 255LL : -0xf.e9caf018dca1124c014742691p-8 : inexact-ok
+= rootn upward ibm128 -0x4p-1024 255LL : -0xf.e9caf018dca1124c014742691p-8 : inexact-ok
+= rootn downward intel96 -0x4p-16384 255LL : -0xd.84bc26dd1a98ee2p-68 : inexact-ok
+= rootn tonearest intel96 -0x4p-16384 255LL : -0xd.84bc26dd1a98ee1p-68 : inexact-ok
+= rootn towardzero intel96 -0x4p-16384 255LL : -0xd.84bc26dd1a98ee1p-68 : inexact-ok
+= rootn upward intel96 -0x4p-16384 255LL : -0xd.84bc26dd1a98ee1p-68 : inexact-ok
+= rootn downward m68k96 -0x4p-16384 255LL : -0xd.84bc26dd1a98ee2p-68 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16384 255LL : -0xd.84bc26dd1a98ee1p-68 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16384 255LL : -0xd.84bc26dd1a98ee1p-68 : inexact-ok
+= rootn upward m68k96 -0x4p-16384 255LL : -0xd.84bc26dd1a98ee1p-68 : inexact-ok
+= rootn downward binary128 -0x4p-16384 255LL : -0xd.84bc26dd1a98ee101972b6f753fp-68 : inexact-ok
+= rootn tonearest binary128 -0x4p-16384 255LL : -0xd.84bc26dd1a98ee101972b6f753fp-68 : inexact-ok
+= rootn towardzero binary128 -0x4p-16384 255LL : -0xd.84bc26dd1a98ee101972b6f753e8p-68 : inexact-ok
+= rootn upward binary128 -0x4p-16384 255LL : -0xd.84bc26dd1a98ee101972b6f753e8p-68 : inexact-ok
+= rootn downward intel96 -0x2p-16384 255LL : -0xd.7b57375449b589cp-68 : inexact-ok
+= rootn tonearest intel96 -0x2p-16384 255LL : -0xd.7b57375449b589cp-68 : inexact-ok
+= rootn towardzero intel96 -0x2p-16384 255LL : -0xd.7b57375449b589bp-68 : inexact-ok
+= rootn upward intel96 -0x2p-16384 255LL : -0xd.7b57375449b589bp-68 : inexact-ok
+= rootn downward m68k96 -0x2p-16384 255LL : -0xd.7b57375449b589cp-68 : inexact-ok
+= rootn tonearest m68k96 -0x2p-16384 255LL : -0xd.7b57375449b589cp-68 : inexact-ok
+= rootn towardzero m68k96 -0x2p-16384 255LL : -0xd.7b57375449b589bp-68 : inexact-ok
+= rootn upward m68k96 -0x2p-16384 255LL : -0xd.7b57375449b589bp-68 : inexact-ok
+= rootn downward binary128 -0x2p-16384 255LL : -0xd.7b57375449b589b9ef5b34fb2dc8p-68 : inexact-ok
+= rootn tonearest binary128 -0x2p-16384 255LL : -0xd.7b57375449b589b9ef5b34fb2dcp-68 : inexact-ok
+= rootn towardzero binary128 -0x2p-16384 255LL : -0xd.7b57375449b589b9ef5b34fb2dcp-68 : inexact-ok
+= rootn upward binary128 -0x2p-16384 255LL : -0xd.7b57375449b589b9ef5b34fb2dcp-68 : inexact-ok
+= rootn downward binary64 -0x8p-972 255LL : -0x1.2611186bae675p-4 : inexact-ok
+= rootn tonearest binary64 -0x8p-972 255LL : -0x1.2611186bae675p-4 : inexact-ok
+= rootn towardzero binary64 -0x8p-972 255LL : -0x1.2611186bae674p-4 : inexact-ok
+= rootn upward binary64 -0x8p-972 255LL : -0x1.2611186bae674p-4 : inexact-ok
+= rootn downward intel96 -0x8p-972 255LL : -0x1.2611186bae67496cp-4 : inexact-ok
+= rootn tonearest intel96 -0x8p-972 255LL : -0x1.2611186bae67496ap-4 : inexact-ok
+= rootn towardzero intel96 -0x8p-972 255LL : -0x1.2611186bae67496ap-4 : inexact-ok
+= rootn upward intel96 -0x8p-972 255LL : -0x1.2611186bae67496ap-4 : inexact-ok
+= rootn downward m68k96 -0x8p-972 255LL : -0x1.2611186bae67496cp-4 : inexact-ok
+= rootn tonearest m68k96 -0x8p-972 255LL : -0x1.2611186bae67496ap-4 : inexact-ok
+= rootn towardzero m68k96 -0x8p-972 255LL : -0x1.2611186bae67496ap-4 : inexact-ok
+= rootn upward m68k96 -0x8p-972 255LL : -0x1.2611186bae67496ap-4 : inexact-ok
+= rootn downward binary128 -0x8p-972 255LL : -0x1.2611186bae67496a521e420760e2p-4 : inexact-ok
+= rootn tonearest binary128 -0x8p-972 255LL : -0x1.2611186bae67496a521e420760e2p-4 : inexact-ok
+= rootn towardzero binary128 -0x8p-972 255LL : -0x1.2611186bae67496a521e420760e1p-4 : inexact-ok
+= rootn upward binary128 -0x8p-972 255LL : -0x1.2611186bae67496a521e420760e1p-4 : inexact-ok
+= rootn downward ibm128 -0x8p-972 255LL : -0x1.2611186bae67496a521e420761p-4 : inexact-ok
+= rootn tonearest ibm128 -0x8p-972 255LL : -0x1.2611186bae67496a521e420761p-4 : inexact-ok
+= rootn towardzero ibm128 -0x8p-972 255LL : -0x1.2611186bae67496a521e4207608p-4 : inexact-ok
+= rootn upward ibm128 -0x8p-972 255LL : -0x1.2611186bae67496a521e4207608p-4 : inexact-ok
+rootn -min 511
+= rootn downward binary32 -0x4p-128 511LL : -0xd.7c7f6p-4 : inexact-ok
+= rootn tonearest binary32 -0x4p-128 511LL : -0xd.7c7f6p-4 : inexact-ok
+= rootn towardzero binary32 -0x4p-128 511LL : -0xd.7c7f5p-4 : inexact-ok
+= rootn upward binary32 -0x4p-128 511LL : -0xd.7c7f5p-4 : inexact-ok
+= rootn downward binary64 -0x4p-128 511LL : -0xd.7c7f5ca3f4048p-4 : inexact-ok
+= rootn tonearest binary64 -0x4p-128 511LL : -0xd.7c7f5ca3f4048p-4 : inexact-ok
+= rootn towardzero binary64 -0x4p-128 511LL : -0xd.7c7f5ca3f404p-4 : inexact-ok
+= rootn upward binary64 -0x4p-128 511LL : -0xd.7c7f5ca3f404p-4 : inexact-ok
+= rootn downward intel96 -0x4p-128 511LL : -0xd.7c7f5ca3f40455ep-4 : inexact-ok
+= rootn tonearest intel96 -0x4p-128 511LL : -0xd.7c7f5ca3f40455ep-4 : inexact-ok
+= rootn towardzero intel96 -0x4p-128 511LL : -0xd.7c7f5ca3f40455dp-4 : inexact-ok
+= rootn upward intel96 -0x4p-128 511LL : -0xd.7c7f5ca3f40455dp-4 : inexact-ok
+= rootn downward m68k96 -0x4p-128 511LL : -0xd.7c7f5ca3f40455ep-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-128 511LL : -0xd.7c7f5ca3f40455ep-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-128 511LL : -0xd.7c7f5ca3f40455dp-4 : inexact-ok
+= rootn upward m68k96 -0x4p-128 511LL : -0xd.7c7f5ca3f40455dp-4 : inexact-ok
+= rootn downward binary128 -0x4p-128 511LL : -0xd.7c7f5ca3f40455df1b02c0392868p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-128 511LL : -0xd.7c7f5ca3f40455df1b02c039286p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-128 511LL : -0xd.7c7f5ca3f40455df1b02c039286p-4 : inexact-ok
+= rootn upward binary128 -0x4p-128 511LL : -0xd.7c7f5ca3f40455df1b02c039286p-4 : inexact-ok
+= rootn downward ibm128 -0x4p-128 511LL : -0xd.7c7f5ca3f40455df1b02c0392cp-4 : inexact-ok
+= rootn tonearest ibm128 -0x4p-128 511LL : -0xd.7c7f5ca3f40455df1b02c03928p-4 : inexact-ok
+= rootn towardzero ibm128 -0x4p-128 511LL : -0xd.7c7f5ca3f40455df1b02c03928p-4 : inexact-ok
+= rootn upward ibm128 -0x4p-128 511LL : -0xd.7c7f5ca3f40455df1b02c03928p-4 : inexact-ok
+= rootn downward binary64 -0x4p-1024 511LL : -0x4p-4 : inexact-ok
+= rootn tonearest binary64 -0x4p-1024 511LL : -0x4p-4 : inexact-ok
+= rootn towardzero binary64 -0x4p-1024 511LL : -0x4p-4 : inexact-ok
+= rootn upward binary64 -0x4p-1024 511LL : -0x4p-4 : inexact-ok
+= rootn downward intel96 -0x4p-1024 511LL : -0x4p-4 : inexact-ok
+= rootn tonearest intel96 -0x4p-1024 511LL : -0x4p-4 : inexact-ok
+= rootn towardzero intel96 -0x4p-1024 511LL : -0x4p-4 : inexact-ok
+= rootn upward intel96 -0x4p-1024 511LL : -0x4p-4 : inexact-ok
+= rootn downward m68k96 -0x4p-1024 511LL : -0x4p-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1024 511LL : -0x4p-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1024 511LL : -0x4p-4 : inexact-ok
+= rootn upward m68k96 -0x4p-1024 511LL : -0x4p-4 : inexact-ok
+= rootn downward binary128 -0x4p-1024 511LL : -0x4p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-1024 511LL : -0x4p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-1024 511LL : -0x4p-4 : inexact-ok
+= rootn upward binary128 -0x4p-1024 511LL : -0x4p-4 : inexact-ok
+= rootn downward ibm128 -0x4p-1024 511LL : -0x4p-4 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1024 511LL : -0x4p-4 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1024 511LL : -0x4p-4 : inexact-ok
+= rootn upward ibm128 -0x4p-1024 511LL : -0x4p-4 : inexact-ok
+= rootn downward intel96 -0x4p-16384 511LL : -0xf.5caa3e0dbb8e8f6p-36 : inexact-ok
+= rootn tonearest intel96 -0x4p-16384 511LL : -0xf.5caa3e0dbb8e8f5p-36 : inexact-ok
+= rootn towardzero intel96 -0x4p-16384 511LL : -0xf.5caa3e0dbb8e8f5p-36 : inexact-ok
+= rootn upward intel96 -0x4p-16384 511LL : -0xf.5caa3e0dbb8e8f5p-36 : inexact-ok
+= rootn downward m68k96 -0x4p-16384 511LL : -0xf.5caa3e0dbb8e8f6p-36 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16384 511LL : -0xf.5caa3e0dbb8e8f5p-36 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16384 511LL : -0xf.5caa3e0dbb8e8f5p-36 : inexact-ok
+= rootn upward m68k96 -0x4p-16384 511LL : -0xf.5caa3e0dbb8e8f5p-36 : inexact-ok
+= rootn downward binary128 -0x4p-16384 511LL : -0xf.5caa3e0dbb8e8f57313680244438p-36 : inexact-ok
+= rootn tonearest binary128 -0x4p-16384 511LL : -0xf.5caa3e0dbb8e8f57313680244438p-36 : inexact-ok
+= rootn towardzero binary128 -0x4p-16384 511LL : -0xf.5caa3e0dbb8e8f5731368024443p-36 : inexact-ok
+= rootn upward binary128 -0x4p-16384 511LL : -0xf.5caa3e0dbb8e8f5731368024443p-36 : inexact-ok
+= rootn downward intel96 -0x2p-16384 511LL : -0xf.57558b0973d6c57p-36 : inexact-ok
+= rootn tonearest intel96 -0x2p-16384 511LL : -0xf.57558b0973d6c56p-36 : inexact-ok
+= rootn towardzero intel96 -0x2p-16384 511LL : -0xf.57558b0973d6c56p-36 : inexact-ok
+= rootn upward intel96 -0x2p-16384 511LL : -0xf.57558b0973d6c56p-36 : inexact-ok
+= rootn downward m68k96 -0x2p-16384 511LL : -0xf.57558b0973d6c57p-36 : inexact-ok
+= rootn tonearest m68k96 -0x2p-16384 511LL : -0xf.57558b0973d6c56p-36 : inexact-ok
+= rootn towardzero m68k96 -0x2p-16384 511LL : -0xf.57558b0973d6c56p-36 : inexact-ok
+= rootn upward m68k96 -0x2p-16384 511LL : -0xf.57558b0973d6c56p-36 : inexact-ok
+= rootn downward binary128 -0x2p-16384 511LL : -0xf.57558b0973d6c565e33bf3a2b028p-36 : inexact-ok
+= rootn tonearest binary128 -0x2p-16384 511LL : -0xf.57558b0973d6c565e33bf3a2b02p-36 : inexact-ok
+= rootn towardzero binary128 -0x2p-16384 511LL : -0xf.57558b0973d6c565e33bf3a2b02p-36 : inexact-ok
+= rootn upward binary128 -0x2p-16384 511LL : -0xf.57558b0973d6c565e33bf3a2b02p-36 : inexact-ok
+= rootn downward binary64 -0x8p-972 511LL : -0x4.4c54054c4f5ep-4 : inexact-ok
+= rootn tonearest binary64 -0x8p-972 511LL : -0x4.4c54054c4f5dcp-4 : inexact-ok
+= rootn towardzero binary64 -0x8p-972 511LL : -0x4.4c54054c4f5dcp-4 : inexact-ok
+= rootn upward binary64 -0x8p-972 511LL : -0x4.4c54054c4f5dcp-4 : inexact-ok
+= rootn downward intel96 -0x8p-972 511LL : -0x4.4c54054c4f5dc3b8p-4 : inexact-ok
+= rootn tonearest intel96 -0x8p-972 511LL : -0x4.4c54054c4f5dc3bp-4 : inexact-ok
+= rootn towardzero intel96 -0x8p-972 511LL : -0x4.4c54054c4f5dc3bp-4 : inexact-ok
+= rootn upward intel96 -0x8p-972 511LL : -0x4.4c54054c4f5dc3bp-4 : inexact-ok
+= rootn downward m68k96 -0x8p-972 511LL : -0x4.4c54054c4f5dc3b8p-4 : inexact-ok
+= rootn tonearest m68k96 -0x8p-972 511LL : -0x4.4c54054c4f5dc3bp-4 : inexact-ok
+= rootn towardzero m68k96 -0x8p-972 511LL : -0x4.4c54054c4f5dc3bp-4 : inexact-ok
+= rootn upward m68k96 -0x8p-972 511LL : -0x4.4c54054c4f5dc3bp-4 : inexact-ok
+= rootn downward binary128 -0x8p-972 511LL : -0x4.4c54054c4f5dc3b242b827f9219p-4 : inexact-ok
+= rootn tonearest binary128 -0x8p-972 511LL : -0x4.4c54054c4f5dc3b242b827f9219p-4 : inexact-ok
+= rootn towardzero binary128 -0x8p-972 511LL : -0x4.4c54054c4f5dc3b242b827f9218cp-4 : inexact-ok
+= rootn upward binary128 -0x8p-972 511LL : -0x4.4c54054c4f5dc3b242b827f9218cp-4 : inexact-ok
+= rootn downward ibm128 -0x8p-972 511LL : -0x4.4c54054c4f5dc3b242b827f922p-4 : inexact-ok
+= rootn tonearest ibm128 -0x8p-972 511LL : -0x4.4c54054c4f5dc3b242b827f922p-4 : inexact-ok
+= rootn towardzero ibm128 -0x8p-972 511LL : -0x4.4c54054c4f5dc3b242b827f92p-4 : inexact-ok
+= rootn upward ibm128 -0x8p-972 511LL : -0x4.4c54054c4f5dc3b242b827f92p-4 : inexact-ok
+rootn -min 1023
+= rootn downward binary32 -0x4p-128 1023LL : -0xe.b0d2dp-4 : inexact-ok
+= rootn tonearest binary32 -0x4p-128 1023LL : -0xe.b0d2dp-4 : inexact-ok
+= rootn towardzero binary32 -0x4p-128 1023LL : -0xe.b0d2cp-4 : inexact-ok
+= rootn upward binary32 -0x4p-128 1023LL : -0xe.b0d2cp-4 : inexact-ok
+= rootn downward binary64 -0x4p-128 1023LL : -0xe.b0d2c9f474418p-4 : inexact-ok
+= rootn tonearest binary64 -0x4p-128 1023LL : -0xe.b0d2c9f474418p-4 : inexact-ok
+= rootn towardzero binary64 -0x4p-128 1023LL : -0xe.b0d2c9f47441p-4 : inexact-ok
+= rootn upward binary64 -0x4p-128 1023LL : -0xe.b0d2c9f47441p-4 : inexact-ok
+= rootn downward intel96 -0x4p-128 1023LL : -0xe.b0d2c9f4744156ap-4 : inexact-ok
+= rootn tonearest intel96 -0x4p-128 1023LL : -0xe.b0d2c9f47441569p-4 : inexact-ok
+= rootn towardzero intel96 -0x4p-128 1023LL : -0xe.b0d2c9f47441569p-4 : inexact-ok
+= rootn upward intel96 -0x4p-128 1023LL : -0xe.b0d2c9f47441569p-4 : inexact-ok
+= rootn downward m68k96 -0x4p-128 1023LL : -0xe.b0d2c9f4744156ap-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-128 1023LL : -0xe.b0d2c9f47441569p-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-128 1023LL : -0xe.b0d2c9f47441569p-4 : inexact-ok
+= rootn upward m68k96 -0x4p-128 1023LL : -0xe.b0d2c9f47441569p-4 : inexact-ok
+= rootn downward binary128 -0x4p-128 1023LL : -0xe.b0d2c9f4744156948c94513459ap-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-128 1023LL : -0xe.b0d2c9f4744156948c9451345998p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-128 1023LL : -0xe.b0d2c9f4744156948c9451345998p-4 : inexact-ok
+= rootn upward binary128 -0x4p-128 1023LL : -0xe.b0d2c9f4744156948c9451345998p-4 : inexact-ok
+= rootn downward ibm128 -0x4p-128 1023LL : -0xe.b0d2c9f4744156948c9451345cp-4 : inexact-ok
+= rootn tonearest ibm128 -0x4p-128 1023LL : -0xe.b0d2c9f4744156948c94513458p-4 : inexact-ok
+= rootn towardzero ibm128 -0x4p-128 1023LL : -0xe.b0d2c9f4744156948c94513458p-4 : inexact-ok
+= rootn upward ibm128 -0x4p-128 1023LL : -0xe.b0d2c9f4744156948c94513458p-4 : inexact-ok
+= rootn downward binary64 -0x4p-1024 1023LL : -0x8.01635bd01b2ep-4 : inexact-ok
+= rootn tonearest binary64 -0x4p-1024 1023LL : -0x8.01635bd01b2ep-4 : inexact-ok
+= rootn towardzero binary64 -0x4p-1024 1023LL : -0x8.01635bd01b2d8p-4 : inexact-ok
+= rootn upward binary64 -0x4p-1024 1023LL : -0x8.01635bd01b2d8p-4 : inexact-ok
+= rootn downward intel96 -0x4p-1024 1023LL : -0x8.01635bd01b2de15p-4 : inexact-ok
+= rootn tonearest intel96 -0x4p-1024 1023LL : -0x8.01635bd01b2de15p-4 : inexact-ok
+= rootn towardzero intel96 -0x4p-1024 1023LL : -0x8.01635bd01b2de14p-4 : inexact-ok
+= rootn upward intel96 -0x4p-1024 1023LL : -0x8.01635bd01b2de14p-4 : inexact-ok
+= rootn downward m68k96 -0x4p-1024 1023LL : -0x8.01635bd01b2de15p-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1024 1023LL : -0x8.01635bd01b2de15p-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1024 1023LL : -0x8.01635bd01b2de14p-4 : inexact-ok
+= rootn upward m68k96 -0x4p-1024 1023LL : -0x8.01635bd01b2de14p-4 : inexact-ok
+= rootn downward binary128 -0x4p-1024 1023LL : -0x8.01635bd01b2de14c81a4463965dp-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-1024 1023LL : -0x8.01635bd01b2de14c81a4463965c8p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-1024 1023LL : -0x8.01635bd01b2de14c81a4463965c8p-4 : inexact-ok
+= rootn upward binary128 -0x4p-1024 1023LL : -0x8.01635bd01b2de14c81a4463965c8p-4 : inexact-ok
+= rootn downward ibm128 -0x4p-1024 1023LL : -0x8.01635bd01b2de14c81a4463968p-4 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1024 1023LL : -0x8.01635bd01b2de14c81a4463964p-4 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1024 1023LL : -0x8.01635bd01b2de14c81a4463964p-4 : inexact-ok
+= rootn upward ibm128 -0x4p-1024 1023LL : -0x8.01635bd01b2de14c81a4463964p-4 : inexact-ok
+= rootn downward intel96 -0x4p-16384 1023LL : -0xf.d9545b2c8191656p-20 : inexact-ok
+= rootn tonearest intel96 -0x4p-16384 1023LL : -0xf.d9545b2c8191655p-20 : inexact-ok
+= rootn towardzero intel96 -0x4p-16384 1023LL : -0xf.d9545b2c8191655p-20 : inexact-ok
+= rootn upward intel96 -0x4p-16384 1023LL : -0xf.d9545b2c8191655p-20 : inexact-ok
+= rootn downward m68k96 -0x4p-16384 1023LL : -0xf.d9545b2c8191656p-20 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16384 1023LL : -0xf.d9545b2c8191655p-20 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16384 1023LL : -0xf.d9545b2c8191655p-20 : inexact-ok
+= rootn upward m68k96 -0x4p-16384 1023LL : -0xf.d9545b2c8191655p-20 : inexact-ok
+= rootn downward binary128 -0x4p-16384 1023LL : -0xf.d9545b2c819165542d6fb9abf15p-20 : inexact-ok
+= rootn tonearest binary128 -0x4p-16384 1023LL : -0xf.d9545b2c819165542d6fb9abf148p-20 : inexact-ok
+= rootn towardzero binary128 -0x4p-16384 1023LL : -0xf.d9545b2c819165542d6fb9abf148p-20 : inexact-ok
+= rootn upward binary128 -0x4p-16384 1023LL : -0xf.d9545b2c819165542d6fb9abf148p-20 : inexact-ok
+= rootn downward intel96 -0x2p-16384 1023LL : -0xf.d694d35b80c43fep-20 : inexact-ok
+= rootn tonearest intel96 -0x2p-16384 1023LL : -0xf.d694d35b80c43fdp-20 : inexact-ok
+= rootn towardzero intel96 -0x2p-16384 1023LL : -0xf.d694d35b80c43fdp-20 : inexact-ok
+= rootn upward intel96 -0x2p-16384 1023LL : -0xf.d694d35b80c43fdp-20 : inexact-ok
+= rootn downward m68k96 -0x2p-16384 1023LL : -0xf.d694d35b80c43fep-20 : inexact-ok
+= rootn tonearest m68k96 -0x2p-16384 1023LL : -0xf.d694d35b80c43fdp-20 : inexact-ok
+= rootn towardzero m68k96 -0x2p-16384 1023LL : -0xf.d694d35b80c43fdp-20 : inexact-ok
+= rootn upward m68k96 -0x2p-16384 1023LL : -0xf.d694d35b80c43fdp-20 : inexact-ok
+= rootn downward binary128 -0x2p-16384 1023LL : -0xf.d694d35b80c43fd2c6653313e33p-20 : inexact-ok
+= rootn tonearest binary128 -0x2p-16384 1023LL : -0xf.d694d35b80c43fd2c6653313e328p-20 : inexact-ok
+= rootn towardzero binary128 -0x2p-16384 1023LL : -0xf.d694d35b80c43fd2c6653313e328p-20 : inexact-ok
+= rootn upward binary128 -0x2p-16384 1023LL : -0xf.d694d35b80c43fd2c6653313e328p-20 : inexact-ok
+= rootn downward binary64 -0x8p-972 1023LL : -0x8.4c521f105c148p-4 : inexact-ok
+= rootn tonearest binary64 -0x8p-972 1023LL : -0x8.4c521f105c14p-4 : inexact-ok
+= rootn towardzero binary64 -0x8p-972 1023LL : -0x8.4c521f105c14p-4 : inexact-ok
+= rootn upward binary64 -0x8p-972 1023LL : -0x8.4c521f105c14p-4 : inexact-ok
+= rootn downward intel96 -0x8p-972 1023LL : -0x8.4c521f105c143cdp-4 : inexact-ok
+= rootn tonearest intel96 -0x8p-972 1023LL : -0x8.4c521f105c143cdp-4 : inexact-ok
+= rootn towardzero intel96 -0x8p-972 1023LL : -0x8.4c521f105c143ccp-4 : inexact-ok
+= rootn upward intel96 -0x8p-972 1023LL : -0x8.4c521f105c143ccp-4 : inexact-ok
+= rootn downward m68k96 -0x8p-972 1023LL : -0x8.4c521f105c143cdp-4 : inexact-ok
+= rootn tonearest m68k96 -0x8p-972 1023LL : -0x8.4c521f105c143cdp-4 : inexact-ok
+= rootn towardzero m68k96 -0x8p-972 1023LL : -0x8.4c521f105c143ccp-4 : inexact-ok
+= rootn upward m68k96 -0x8p-972 1023LL : -0x8.4c521f105c143ccp-4 : inexact-ok
+= rootn downward binary128 -0x8p-972 1023LL : -0x8.4c521f105c143ccf94361abe8938p-4 : inexact-ok
+= rootn tonearest binary128 -0x8p-972 1023LL : -0x8.4c521f105c143ccf94361abe8938p-4 : inexact-ok
+= rootn towardzero binary128 -0x8p-972 1023LL : -0x8.4c521f105c143ccf94361abe893p-4 : inexact-ok
+= rootn upward binary128 -0x8p-972 1023LL : -0x8.4c521f105c143ccf94361abe893p-4 : inexact-ok
+= rootn downward ibm128 -0x8p-972 1023LL : -0x8.4c521f105c143ccf94361abe8cp-4 : inexact-ok
+= rootn tonearest ibm128 -0x8p-972 1023LL : -0x8.4c521f105c143ccf94361abe88p-4 : inexact-ok
+= rootn towardzero ibm128 -0x8p-972 1023LL : -0x8.4c521f105c143ccf94361abe88p-4 : inexact-ok
+= rootn upward ibm128 -0x8p-972 1023LL : -0x8.4c521f105c143ccf94361abe88p-4 : inexact-ok
+rootn -min 16383
+= rootn downward binary32 -0x4p-128 16383LL : -0xf.ea39p-4 : inexact-ok
+= rootn tonearest binary32 -0x4p-128 16383LL : -0xf.ea39p-4 : inexact-ok
+= rootn towardzero binary32 -0x4p-128 16383LL : -0xf.ea38fp-4 : inexact-ok
+= rootn upward binary32 -0x4p-128 16383LL : -0xf.ea38fp-4 : inexact-ok
+= rootn downward binary64 -0x4p-128 16383LL : -0xf.ea38fe3ddd64p-4 : inexact-ok
+= rootn tonearest binary64 -0x4p-128 16383LL : -0xf.ea38fe3ddd638p-4 : inexact-ok
+= rootn towardzero binary64 -0x4p-128 16383LL : -0xf.ea38fe3ddd638p-4 : inexact-ok
+= rootn upward binary64 -0x4p-128 16383LL : -0xf.ea38fe3ddd638p-4 : inexact-ok
+= rootn downward intel96 -0x4p-128 16383LL : -0xf.ea38fe3ddd63b0dp-4 : inexact-ok
+= rootn tonearest intel96 -0x4p-128 16383LL : -0xf.ea38fe3ddd63b0dp-4 : inexact-ok
+= rootn towardzero intel96 -0x4p-128 16383LL : -0xf.ea38fe3ddd63b0cp-4 : inexact-ok
+= rootn upward intel96 -0x4p-128 16383LL : -0xf.ea38fe3ddd63b0cp-4 : inexact-ok
+= rootn downward m68k96 -0x4p-128 16383LL : -0xf.ea38fe3ddd63b0dp-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-128 16383LL : -0xf.ea38fe3ddd63b0dp-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-128 16383LL : -0xf.ea38fe3ddd63b0cp-4 : inexact-ok
+= rootn upward m68k96 -0x4p-128 16383LL : -0xf.ea38fe3ddd63b0cp-4 : inexact-ok
+= rootn downward binary128 -0x4p-128 16383LL : -0xf.ea38fe3ddd63b0ccf2fb3cacddfp-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-128 16383LL : -0xf.ea38fe3ddd63b0ccf2fb3cacdde8p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-128 16383LL : -0xf.ea38fe3ddd63b0ccf2fb3cacdde8p-4 : inexact-ok
+= rootn upward binary128 -0x4p-128 16383LL : -0xf.ea38fe3ddd63b0ccf2fb3cacdde8p-4 : inexact-ok
+= rootn downward ibm128 -0x4p-128 16383LL : -0xf.ea38fe3ddd63b0ccf2fb3cacep-4 : inexact-ok
+= rootn tonearest ibm128 -0x4p-128 16383LL : -0xf.ea38fe3ddd63b0ccf2fb3cacdcp-4 : inexact-ok
+= rootn towardzero ibm128 -0x4p-128 16383LL : -0xf.ea38fe3ddd63b0ccf2fb3cacdcp-4 : inexact-ok
+= rootn upward ibm128 -0x4p-128 16383LL : -0xf.ea38fe3ddd63b0ccf2fb3cacdcp-4 : inexact-ok
+= rootn downward binary64 -0x4p-1024 16383LL : -0xf.52aa21de7d8ap-4 : inexact-ok
+= rootn tonearest binary64 -0x4p-1024 16383LL : -0xf.52aa21de7d898p-4 : inexact-ok
+= rootn towardzero binary64 -0x4p-1024 16383LL : -0xf.52aa21de7d898p-4 : inexact-ok
+= rootn upward binary64 -0x4p-1024 16383LL : -0xf.52aa21de7d898p-4 : inexact-ok
+= rootn downward intel96 -0x4p-1024 16383LL : -0xf.52aa21de7d89a0ap-4 : inexact-ok
+= rootn tonearest intel96 -0x4p-1024 16383LL : -0xf.52aa21de7d89a09p-4 : inexact-ok
+= rootn towardzero intel96 -0x4p-1024 16383LL : -0xf.52aa21de7d89a09p-4 : inexact-ok
+= rootn upward intel96 -0x4p-1024 16383LL : -0xf.52aa21de7d89a09p-4 : inexact-ok
+= rootn downward m68k96 -0x4p-1024 16383LL : -0xf.52aa21de7d89a0ap-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1024 16383LL : -0xf.52aa21de7d89a09p-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1024 16383LL : -0xf.52aa21de7d89a09p-4 : inexact-ok
+= rootn upward m68k96 -0x4p-1024 16383LL : -0xf.52aa21de7d89a09p-4 : inexact-ok
+= rootn downward binary128 -0x4p-1024 16383LL : -0xf.52aa21de7d89a09060f937b7b178p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-1024 16383LL : -0xf.52aa21de7d89a09060f937b7b17p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-1024 16383LL : -0xf.52aa21de7d89a09060f937b7b17p-4 : inexact-ok
+= rootn upward binary128 -0x4p-1024 16383LL : -0xf.52aa21de7d89a09060f937b7b17p-4 : inexact-ok
+= rootn downward ibm128 -0x4p-1024 16383LL : -0xf.52aa21de7d89a09060f937b7b4p-4 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1024 16383LL : -0xf.52aa21de7d89a09060f937b7bp-4 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1024 16383LL : -0xf.52aa21de7d89a09060f937b7bp-4 : inexact-ok
+= rootn upward ibm128 -0x4p-1024 16383LL : -0xf.52aa21de7d89a09060f937b7bp-4 : inexact-ok
+= rootn downward intel96 -0x4p-16384 16383LL : -0x8.00162eba7a398f4p-4 : inexact-ok
+= rootn tonearest intel96 -0x4p-16384 16383LL : -0x8.00162eba7a398f4p-4 : inexact-ok
+= rootn towardzero intel96 -0x4p-16384 16383LL : -0x8.00162eba7a398f3p-4 : inexact-ok
+= rootn upward intel96 -0x4p-16384 16383LL : -0x8.00162eba7a398f3p-4 : inexact-ok
+= rootn downward m68k96 -0x4p-16384 16383LL : -0x8.00162eba7a398f4p-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16384 16383LL : -0x8.00162eba7a398f4p-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16384 16383LL : -0x8.00162eba7a398f3p-4 : inexact-ok
+= rootn upward m68k96 -0x4p-16384 16383LL : -0x8.00162eba7a398f3p-4 : inexact-ok
+= rootn downward binary128 -0x4p-16384 16383LL : -0x8.00162eba7a398f3c21d5d3f6eec8p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-16384 16383LL : -0x8.00162eba7a398f3c21d5d3f6eec8p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-16384 16383LL : -0x8.00162eba7a398f3c21d5d3f6eecp-4 : inexact-ok
+= rootn upward binary128 -0x4p-16384 16383LL : -0x8.00162eba7a398f3c21d5d3f6eecp-4 : inexact-ok
+= rootn downward intel96 -0x2p-16384 16383LL : -0x8p-4 : inexact-ok
+= rootn tonearest intel96 -0x2p-16384 16383LL : -0x8p-4 : inexact-ok
+= rootn towardzero intel96 -0x2p-16384 16383LL : -0x8p-4 : inexact-ok
+= rootn upward intel96 -0x2p-16384 16383LL : -0x8p-4 : inexact-ok
+= rootn downward m68k96 -0x2p-16384 16383LL : -0x8p-4 : inexact-ok
+= rootn tonearest m68k96 -0x2p-16384 16383LL : -0x8p-4 : inexact-ok
+= rootn towardzero m68k96 -0x2p-16384 16383LL : -0x8p-4 : inexact-ok
+= rootn upward m68k96 -0x2p-16384 16383LL : -0x8p-4 : inexact-ok
+= rootn downward binary128 -0x2p-16384 16383LL : -0x8p-4 : inexact-ok
+= rootn tonearest binary128 -0x2p-16384 16383LL : -0x8p-4 : inexact-ok
+= rootn towardzero binary128 -0x2p-16384 16383LL : -0x8p-4 : inexact-ok
+= rootn upward binary128 -0x2p-16384 16383LL : -0x8p-4 : inexact-ok
+= rootn downward binary64 -0x8p-972 16383LL : -0xf.5b787470f035p-4 : inexact-ok
+= rootn tonearest binary64 -0x8p-972 16383LL : -0xf.5b787470f035p-4 : inexact-ok
+= rootn towardzero binary64 -0x8p-972 16383LL : -0xf.5b787470f0348p-4 : inexact-ok
+= rootn upward binary64 -0x8p-972 16383LL : -0xf.5b787470f0348p-4 : inexact-ok
+= rootn downward intel96 -0x8p-972 16383LL : -0xf.5b787470f034da3p-4 : inexact-ok
+= rootn tonearest intel96 -0x8p-972 16383LL : -0xf.5b787470f034da2p-4 : inexact-ok
+= rootn towardzero intel96 -0x8p-972 16383LL : -0xf.5b787470f034da2p-4 : inexact-ok
+= rootn upward intel96 -0x8p-972 16383LL : -0xf.5b787470f034da2p-4 : inexact-ok
+= rootn downward m68k96 -0x8p-972 16383LL : -0xf.5b787470f034da3p-4 : inexact-ok
+= rootn tonearest m68k96 -0x8p-972 16383LL : -0xf.5b787470f034da2p-4 : inexact-ok
+= rootn towardzero m68k96 -0x8p-972 16383LL : -0xf.5b787470f034da2p-4 : inexact-ok
+= rootn upward m68k96 -0x8p-972 16383LL : -0xf.5b787470f034da2p-4 : inexact-ok
+= rootn downward binary128 -0x8p-972 16383LL : -0xf.5b787470f034da27c3c716ed6788p-4 : inexact-ok
+= rootn tonearest binary128 -0x8p-972 16383LL : -0xf.5b787470f034da27c3c716ed678p-4 : inexact-ok
+= rootn towardzero binary128 -0x8p-972 16383LL : -0xf.5b787470f034da27c3c716ed678p-4 : inexact-ok
+= rootn upward binary128 -0x8p-972 16383LL : -0xf.5b787470f034da27c3c716ed678p-4 : inexact-ok
+= rootn downward ibm128 -0x8p-972 16383LL : -0xf.5b787470f034da27c3c716ed68p-4 : inexact-ok
+= rootn tonearest ibm128 -0x8p-972 16383LL : -0xf.5b787470f034da27c3c716ed68p-4 : inexact-ok
+= rootn towardzero ibm128 -0x8p-972 16383LL : -0xf.5b787470f034da27c3c716ed64p-4 : inexact-ok
+= rootn upward ibm128 -0x8p-972 16383LL : -0xf.5b787470f034da27c3c716ed64p-4 : inexact-ok
+rootn -min 0x1000001
+= rootn downward binary32 -0x4p-128 16777217LL : -0xf.fffa9p-4 : inexact-ok
+= rootn tonearest binary32 -0x4p-128 16777217LL : -0xf.fffa9p-4 : inexact-ok
+= rootn towardzero binary32 -0x4p-128 16777217LL : -0xf.fffa8p-4 : inexact-ok
+= rootn upward binary32 -0x4p-128 16777217LL : -0xf.fffa8p-4 : inexact-ok
+= rootn downward binary64 -0x4p-128 16777217LL : -0xf.fffa8a9e77138p-4 : inexact-ok
+= rootn tonearest binary64 -0x4p-128 16777217LL : -0xf.fffa8a9e7713p-4 : inexact-ok
+= rootn towardzero binary64 -0x4p-128 16777217LL : -0xf.fffa8a9e7713p-4 : inexact-ok
+= rootn upward binary64 -0x4p-128 16777217LL : -0xf.fffa8a9e7713p-4 : inexact-ok
+= rootn downward intel96 -0x4p-128 16777217LL : -0xf.fffa8a9e771311ap-4 : inexact-ok
+= rootn tonearest intel96 -0x4p-128 16777217LL : -0xf.fffa8a9e771311ap-4 : inexact-ok
+= rootn towardzero intel96 -0x4p-128 16777217LL : -0xf.fffa8a9e7713119p-4 : inexact-ok
+= rootn upward intel96 -0x4p-128 16777217LL : -0xf.fffa8a9e7713119p-4 : inexact-ok
+= rootn downward m68k96 -0x4p-128 16777217LL : -0xf.fffa8a9e771311ap-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-128 16777217LL : -0xf.fffa8a9e771311ap-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-128 16777217LL : -0xf.fffa8a9e7713119p-4 : inexact-ok
+= rootn upward m68k96 -0x4p-128 16777217LL : -0xf.fffa8a9e7713119p-4 : inexact-ok
+= rootn downward binary128 -0x4p-128 16777217LL : -0xf.fffa8a9e7713119897c4d301fc3p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-128 16777217LL : -0xf.fffa8a9e7713119897c4d301fc3p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-128 16777217LL : -0xf.fffa8a9e7713119897c4d301fc28p-4 : inexact-ok
+= rootn upward binary128 -0x4p-128 16777217LL : -0xf.fffa8a9e7713119897c4d301fc28p-4 : inexact-ok
+= rootn downward ibm128 -0x4p-128 16777217LL : -0xf.fffa8a9e7713119897c4d302p-4 : inexact-ok
+= rootn tonearest ibm128 -0x4p-128 16777217LL : -0xf.fffa8a9e7713119897c4d301fcp-4 : inexact-ok
+= rootn towardzero ibm128 -0x4p-128 16777217LL : -0xf.fffa8a9e7713119897c4d301fcp-4 : inexact-ok
+= rootn upward ibm128 -0x4p-128 16777217LL : -0xf.fffa8a9e7713119897c4d301fcp-4 : inexact-ok
+= rootn downward binary64 -0x4p-1024 16777217LL : -0xf.ffd3b9e5b324p-4 : inexact-ok
+= rootn tonearest binary64 -0x4p-1024 16777217LL : -0xf.ffd3b9e5b324p-4 : inexact-ok
+= rootn towardzero binary64 -0x4p-1024 16777217LL : -0xf.ffd3b9e5b3238p-4 : inexact-ok
+= rootn upward binary64 -0x4p-1024 16777217LL : -0xf.ffd3b9e5b3238p-4 : inexact-ok
+= rootn downward intel96 -0x4p-1024 16777217LL : -0xf.ffd3b9e5b323c58p-4 : inexact-ok
+= rootn tonearest intel96 -0x4p-1024 16777217LL : -0xf.ffd3b9e5b323c58p-4 : inexact-ok
+= rootn towardzero intel96 -0x4p-1024 16777217LL : -0xf.ffd3b9e5b323c57p-4 : inexact-ok
+= rootn upward intel96 -0x4p-1024 16777217LL : -0xf.ffd3b9e5b323c57p-4 : inexact-ok
+= rootn downward m68k96 -0x4p-1024 16777217LL : -0xf.ffd3b9e5b323c58p-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1024 16777217LL : -0xf.ffd3b9e5b323c58p-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1024 16777217LL : -0xf.ffd3b9e5b323c57p-4 : inexact-ok
+= rootn upward m68k96 -0x4p-1024 16777217LL : -0xf.ffd3b9e5b323c57p-4 : inexact-ok
+= rootn downward binary128 -0x4p-1024 16777217LL : -0xf.ffd3b9e5b323c57834e7db6ca0c8p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-1024 16777217LL : -0xf.ffd3b9e5b323c57834e7db6ca0c8p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-1024 16777217LL : -0xf.ffd3b9e5b323c57834e7db6ca0cp-4 : inexact-ok
+= rootn upward binary128 -0x4p-1024 16777217LL : -0xf.ffd3b9e5b323c57834e7db6ca0cp-4 : inexact-ok
+= rootn downward ibm128 -0x4p-1024 16777217LL : -0xf.ffd3b9e5b323c57834e7db6ca4p-4 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1024 16777217LL : -0xf.ffd3b9e5b323c57834e7db6cap-4 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1024 16777217LL : -0xf.ffd3b9e5b323c57834e7db6cap-4 : inexact-ok
+= rootn upward ibm128 -0x4p-1024 16777217LL : -0xf.ffd3b9e5b323c57834e7db6cap-4 : inexact-ok
+= rootn downward intel96 -0x4p-16384 16777217LL : -0xf.fd3a8b49402126ap-4 : inexact-ok
+= rootn tonearest intel96 -0x4p-16384 16777217LL : -0xf.fd3a8b49402126ap-4 : inexact-ok
+= rootn towardzero intel96 -0x4p-16384 16777217LL : -0xf.fd3a8b494021269p-4 : inexact-ok
+= rootn upward intel96 -0x4p-16384 16777217LL : -0xf.fd3a8b494021269p-4 : inexact-ok
+= rootn downward m68k96 -0x4p-16384 16777217LL : -0xf.fd3a8b49402126ap-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16384 16777217LL : -0xf.fd3a8b49402126ap-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16384 16777217LL : -0xf.fd3a8b494021269p-4 : inexact-ok
+= rootn upward m68k96 -0x4p-16384 16777217LL : -0xf.fd3a8b494021269p-4 : inexact-ok
+= rootn downward binary128 -0x4p-16384 16777217LL : -0xf.fd3a8b494021269fc34dd21ec808p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-16384 16777217LL : -0xf.fd3a8b494021269fc34dd21ec808p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-16384 16777217LL : -0xf.fd3a8b494021269fc34dd21ec8p-4 : inexact-ok
+= rootn upward binary128 -0x4p-16384 16777217LL : -0xf.fd3a8b494021269fc34dd21ec8p-4 : inexact-ok
+= rootn downward intel96 -0x2p-16384 16777217LL : -0xf.fd3a80340a7278dp-4 : inexact-ok
+= rootn tonearest intel96 -0x2p-16384 16777217LL : -0xf.fd3a80340a7278cp-4 : inexact-ok
+= rootn towardzero intel96 -0x2p-16384 16777217LL : -0xf.fd3a80340a7278cp-4 : inexact-ok
+= rootn upward intel96 -0x2p-16384 16777217LL : -0xf.fd3a80340a7278cp-4 : inexact-ok
+= rootn downward m68k96 -0x2p-16384 16777217LL : -0xf.fd3a80340a7278dp-4 : inexact-ok
+= rootn tonearest m68k96 -0x2p-16384 16777217LL : -0xf.fd3a80340a7278cp-4 : inexact-ok
+= rootn towardzero m68k96 -0x2p-16384 16777217LL : -0xf.fd3a80340a7278cp-4 : inexact-ok
+= rootn upward m68k96 -0x2p-16384 16777217LL : -0xf.fd3a80340a7278cp-4 : inexact-ok
+= rootn downward binary128 -0x2p-16384 16777217LL : -0xf.fd3a80340a7278c6177b11b76f88p-4 : inexact-ok
+= rootn tonearest binary128 -0x2p-16384 16777217LL : -0xf.fd3a80340a7278c6177b11b76f88p-4 : inexact-ok
+= rootn towardzero binary128 -0x2p-16384 16777217LL : -0xf.fd3a80340a7278c6177b11b76f8p-4 : inexact-ok
+= rootn upward binary128 -0x2p-16384 16777217LL : -0xf.fd3a80340a7278c6177b11b76f8p-4 : inexact-ok
+= rootn downward binary64 -0x8p-972 16777217LL : -0xf.ffd605a96fefp-4 : inexact-ok
+= rootn tonearest binary64 -0x8p-972 16777217LL : -0xf.ffd605a96fee8p-4 : inexact-ok
+= rootn towardzero binary64 -0x8p-972 16777217LL : -0xf.ffd605a96fee8p-4 : inexact-ok
+= rootn upward binary64 -0x8p-972 16777217LL : -0xf.ffd605a96fee8p-4 : inexact-ok
+= rootn downward intel96 -0x8p-972 16777217LL : -0xf.ffd605a96fee876p-4 : inexact-ok
+= rootn tonearest intel96 -0x8p-972 16777217LL : -0xf.ffd605a96fee876p-4 : inexact-ok
+= rootn towardzero intel96 -0x8p-972 16777217LL : -0xf.ffd605a96fee875p-4 : inexact-ok
+= rootn upward intel96 -0x8p-972 16777217LL : -0xf.ffd605a96fee875p-4 : inexact-ok
+= rootn downward m68k96 -0x8p-972 16777217LL : -0xf.ffd605a96fee876p-4 : inexact-ok
+= rootn tonearest m68k96 -0x8p-972 16777217LL : -0xf.ffd605a96fee876p-4 : inexact-ok
+= rootn towardzero m68k96 -0x8p-972 16777217LL : -0xf.ffd605a96fee875p-4 : inexact-ok
+= rootn upward m68k96 -0x8p-972 16777217LL : -0xf.ffd605a96fee875p-4 : inexact-ok
+= rootn downward binary128 -0x8p-972 16777217LL : -0xf.ffd605a96fee875d9eab6e4aa65p-4 : inexact-ok
+= rootn tonearest binary128 -0x8p-972 16777217LL : -0xf.ffd605a96fee875d9eab6e4aa648p-4 : inexact-ok
+= rootn towardzero binary128 -0x8p-972 16777217LL : -0xf.ffd605a96fee875d9eab6e4aa648p-4 : inexact-ok
+= rootn upward binary128 -0x8p-972 16777217LL : -0xf.ffd605a96fee875d9eab6e4aa648p-4 : inexact-ok
+= rootn downward ibm128 -0x8p-972 16777217LL : -0xf.ffd605a96fee875d9eab6e4aa8p-4 : inexact-ok
+= rootn tonearest ibm128 -0x8p-972 16777217LL : -0xf.ffd605a96fee875d9eab6e4aa8p-4 : inexact-ok
+= rootn towardzero ibm128 -0x8p-972 16777217LL : -0xf.ffd605a96fee875d9eab6e4aa4p-4 : inexact-ok
+= rootn upward ibm128 -0x8p-972 16777217LL : -0xf.ffd605a96fee875d9eab6e4aa4p-4 : inexact-ok
+rootn -min 0x10000000000001
+= rootn downward binary32 -0x4p-128 4503599627370497LL : -0x1p+0 : inexact-ok
+= rootn tonearest binary32 -0x4p-128 4503599627370497LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary32 -0x4p-128 4503599627370497LL : -0xf.fffffp-4 : inexact-ok
+= rootn upward binary32 -0x4p-128 4503599627370497LL : -0xf.fffffp-4 : inexact-ok
+= rootn downward binary64 -0x4p-128 4503599627370497LL : -0xf.ffffffffffa9p-4 : inexact-ok
+= rootn tonearest binary64 -0x4p-128 4503599627370497LL : -0xf.ffffffffffa88p-4 : inexact-ok
+= rootn towardzero binary64 -0x4p-128 4503599627370497LL : -0xf.ffffffffffa88p-4 : inexact-ok
+= rootn upward binary64 -0x4p-128 4503599627370497LL : -0xf.ffffffffffa88p-4 : inexact-ok
+= rootn downward intel96 -0x4p-128 4503599627370497LL : -0xf.ffffffffffa8a9ep-4 : inexact-ok
+= rootn tonearest intel96 -0x4p-128 4503599627370497LL : -0xf.ffffffffffa8a9ep-4 : inexact-ok
+= rootn towardzero intel96 -0x4p-128 4503599627370497LL : -0xf.ffffffffffa8a9dp-4 : inexact-ok
+= rootn upward intel96 -0x4p-128 4503599627370497LL : -0xf.ffffffffffa8a9dp-4 : inexact-ok
+= rootn downward m68k96 -0x4p-128 4503599627370497LL : -0xf.ffffffffffa8a9ep-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-128 4503599627370497LL : -0xf.ffffffffffa8a9ep-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-128 4503599627370497LL : -0xf.ffffffffffa8a9dp-4 : inexact-ok
+= rootn upward m68k96 -0x4p-128 4503599627370497LL : -0xf.ffffffffffa8a9dp-4 : inexact-ok
+= rootn downward binary128 -0x4p-128 4503599627370497LL : -0xf.ffffffffffa8a9d83406bcd5f038p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-128 4503599627370497LL : -0xf.ffffffffffa8a9d83406bcd5f038p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-128 4503599627370497LL : -0xf.ffffffffffa8a9d83406bcd5f03p-4 : inexact-ok
+= rootn upward binary128 -0x4p-128 4503599627370497LL : -0xf.ffffffffffa8a9d83406bcd5f03p-4 : inexact-ok
+= rootn downward ibm128 -0x4p-128 4503599627370497LL : -0xf.ffffffffffa8a9d83406bcd5f4p-4 : inexact-ok
+= rootn tonearest ibm128 -0x4p-128 4503599627370497LL : -0xf.ffffffffffa8a9d83406bcd5fp-4 : inexact-ok
+= rootn towardzero ibm128 -0x4p-128 4503599627370497LL : -0xf.ffffffffffa8a9d83406bcd5fp-4 : inexact-ok
+= rootn upward ibm128 -0x4p-128 4503599627370497LL : -0xf.ffffffffffa8a9d83406bcd5fp-4 : inexact-ok
+= rootn downward binary64 -0x4p-1024 4503599627370497LL : -0xf.fffffffffd3cp-4 : inexact-ok
+= rootn tonearest binary64 -0x4p-1024 4503599627370497LL : -0xf.fffffffffd3b8p-4 : inexact-ok
+= rootn towardzero binary64 -0x4p-1024 4503599627370497LL : -0xf.fffffffffd3b8p-4 : inexact-ok
+= rootn upward binary64 -0x4p-1024 4503599627370497LL : -0xf.fffffffffd3b8p-4 : inexact-ok
+= rootn downward intel96 -0x4p-1024 4503599627370497LL : -0xf.fffffffffd3b9a9p-4 : inexact-ok
+= rootn tonearest intel96 -0x4p-1024 4503599627370497LL : -0xf.fffffffffd3b9a8p-4 : inexact-ok
+= rootn towardzero intel96 -0x4p-1024 4503599627370497LL : -0xf.fffffffffd3b9a8p-4 : inexact-ok
+= rootn upward intel96 -0x4p-1024 4503599627370497LL : -0xf.fffffffffd3b9a8p-4 : inexact-ok
+= rootn downward m68k96 -0x4p-1024 4503599627370497LL : -0xf.fffffffffd3b9a9p-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1024 4503599627370497LL : -0xf.fffffffffd3b9a8p-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1024 4503599627370497LL : -0xf.fffffffffd3b9a8p-4 : inexact-ok
+= rootn upward m68k96 -0x4p-1024 4503599627370497LL : -0xf.fffffffffd3b9a8p-4 : inexact-ok
+= rootn downward binary128 -0x4p-1024 4503599627370497LL : -0xf.fffffffffd3b9a8450a8a326967p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-1024 4503599627370497LL : -0xf.fffffffffd3b9a8450a8a3269668p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-1024 4503599627370497LL : -0xf.fffffffffd3b9a8450a8a3269668p-4 : inexact-ok
+= rootn upward binary128 -0x4p-1024 4503599627370497LL : -0xf.fffffffffd3b9a8450a8a3269668p-4 : inexact-ok
+= rootn downward ibm128 -0x4p-1024 4503599627370497LL : -0xf.fffffffffd3b9a8450a8a32698p-4 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1024 4503599627370497LL : -0xf.fffffffffd3b9a8450a8a32698p-4 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1024 4503599627370497LL : -0xf.fffffffffd3b9a8450a8a32694p-4 : inexact-ok
+= rootn upward ibm128 -0x4p-1024 4503599627370497LL : -0xf.fffffffffd3b9a8450a8a32694p-4 : inexact-ok
+= rootn downward intel96 -0x4p-16384 4503599627370497LL : -0xf.ffffffffd3a4dcfp-4 : inexact-ok
+= rootn tonearest intel96 -0x4p-16384 4503599627370497LL : -0xf.ffffffffd3a4dcep-4 : inexact-ok
+= rootn towardzero intel96 -0x4p-16384 4503599627370497LL : -0xf.ffffffffd3a4dcep-4 : inexact-ok
+= rootn upward intel96 -0x4p-16384 4503599627370497LL : -0xf.ffffffffd3a4dcep-4 : inexact-ok
+= rootn downward m68k96 -0x4p-16384 4503599627370497LL : -0xf.ffffffffd3a4dcfp-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16384 4503599627370497LL : -0xf.ffffffffd3a4dcep-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16384 4503599627370497LL : -0xf.ffffffffd3a4dcep-4 : inexact-ok
+= rootn upward m68k96 -0x4p-16384 4503599627370497LL : -0xf.ffffffffd3a4dcep-4 : inexact-ok
+= rootn downward binary128 -0x4p-16384 4503599627370497LL : -0xf.ffffffffd3a4dce63bb9439dc9b8p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-16384 4503599627370497LL : -0xf.ffffffffd3a4dce63bb9439dc9b8p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-16384 4503599627370497LL : -0xf.ffffffffd3a4dce63bb9439dc9bp-4 : inexact-ok
+= rootn upward binary128 -0x4p-16384 4503599627370497LL : -0xf.ffffffffd3a4dce63bb9439dc9bp-4 : inexact-ok
+= rootn downward intel96 -0x2p-16384 4503599627370497LL : -0xf.ffffffffd3a42b8p-4 : inexact-ok
+= rootn tonearest intel96 -0x2p-16384 4503599627370497LL : -0xf.ffffffffd3a42b7p-4 : inexact-ok
+= rootn towardzero intel96 -0x2p-16384 4503599627370497LL : -0xf.ffffffffd3a42b7p-4 : inexact-ok
+= rootn upward intel96 -0x2p-16384 4503599627370497LL : -0xf.ffffffffd3a42b7p-4 : inexact-ok
+= rootn downward m68k96 -0x2p-16384 4503599627370497LL : -0xf.ffffffffd3a42b8p-4 : inexact-ok
+= rootn tonearest m68k96 -0x2p-16384 4503599627370497LL : -0xf.ffffffffd3a42b7p-4 : inexact-ok
+= rootn towardzero m68k96 -0x2p-16384 4503599627370497LL : -0xf.ffffffffd3a42b7p-4 : inexact-ok
+= rootn upward m68k96 -0x2p-16384 4503599627370497LL : -0xf.ffffffffd3a42b7p-4 : inexact-ok
+= rootn downward binary128 -0x2p-16384 4503599627370497LL : -0xf.ffffffffd3a42b7423c173ba4b8p-4 : inexact-ok
+= rootn tonearest binary128 -0x2p-16384 4503599627370497LL : -0xf.ffffffffd3a42b7423c173ba4b78p-4 : inexact-ok
+= rootn towardzero binary128 -0x2p-16384 4503599627370497LL : -0xf.ffffffffd3a42b7423c173ba4b78p-4 : inexact-ok
+= rootn upward binary128 -0x2p-16384 4503599627370497LL : -0xf.ffffffffd3a42b7423c173ba4b78p-4 : inexact-ok
+= rootn downward binary64 -0x8p-972 4503599627370497LL : -0xf.fffffffffd608p-4 : inexact-ok
+= rootn tonearest binary64 -0x8p-972 4503599627370497LL : -0xf.fffffffffd608p-4 : inexact-ok
+= rootn towardzero binary64 -0x8p-972 4503599627370497LL : -0xf.fffffffffd6p-4 : inexact-ok
+= rootn upward binary64 -0x8p-972 4503599627370497LL : -0xf.fffffffffd6p-4 : inexact-ok
+= rootn downward intel96 -0x8p-972 4503599627370497LL : -0xf.fffffffffd60573p-4 : inexact-ok
+= rootn tonearest intel96 -0x8p-972 4503599627370497LL : -0xf.fffffffffd60572p-4 : inexact-ok
+= rootn towardzero intel96 -0x8p-972 4503599627370497LL : -0xf.fffffffffd60572p-4 : inexact-ok
+= rootn upward intel96 -0x8p-972 4503599627370497LL : -0xf.fffffffffd60572p-4 : inexact-ok
+= rootn downward m68k96 -0x8p-972 4503599627370497LL : -0xf.fffffffffd60573p-4 : inexact-ok
+= rootn tonearest m68k96 -0x8p-972 4503599627370497LL : -0xf.fffffffffd60572p-4 : inexact-ok
+= rootn towardzero m68k96 -0x8p-972 4503599627370497LL : -0xf.fffffffffd60572p-4 : inexact-ok
+= rootn upward m68k96 -0x8p-972 4503599627370497LL : -0xf.fffffffffd60572p-4 : inexact-ok
+= rootn downward binary128 -0x8p-972 4503599627370497LL : -0xf.fffffffffd60572346f70ce82478p-4 : inexact-ok
+= rootn tonearest binary128 -0x8p-972 4503599627370497LL : -0xf.fffffffffd60572346f70ce8247p-4 : inexact-ok
+= rootn towardzero binary128 -0x8p-972 4503599627370497LL : -0xf.fffffffffd60572346f70ce8247p-4 : inexact-ok
+= rootn upward binary128 -0x8p-972 4503599627370497LL : -0xf.fffffffffd60572346f70ce8247p-4 : inexact-ok
+= rootn downward ibm128 -0x8p-972 4503599627370497LL : -0xf.fffffffffd60572346f70ce828p-4 : inexact-ok
+= rootn tonearest ibm128 -0x8p-972 4503599627370497LL : -0xf.fffffffffd60572346f70ce824p-4 : inexact-ok
+= rootn towardzero ibm128 -0x8p-972 4503599627370497LL : -0xf.fffffffffd60572346f70ce824p-4 : inexact-ok
+= rootn upward ibm128 -0x8p-972 4503599627370497LL : -0xf.fffffffffd60572346f70ce824p-4 : inexact-ok
+rootn -min 0x7fffffffffffffff
+= rootn downward binary32 -0x4p-128 9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn tonearest binary32 -0x4p-128 9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary32 -0x4p-128 9223372036854775807LL : -0xf.fffffp-4 : inexact-ok
+= rootn upward binary32 -0x4p-128 9223372036854775807LL : -0xf.fffffp-4 : inexact-ok
+= rootn downward binary64 -0x4p-128 9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn tonearest binary64 -0x4p-128 9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary64 -0x4p-128 9223372036854775807LL : -0xf.ffffffffffff8p-4 : inexact-ok
+= rootn upward binary64 -0x4p-128 9223372036854775807LL : -0xf.ffffffffffff8p-4 : inexact-ok
+= rootn downward intel96 -0x4p-128 9223372036854775807LL : -0xf.fffffffffffff52p-4 : inexact-ok
+= rootn tonearest intel96 -0x4p-128 9223372036854775807LL : -0xf.fffffffffffff51p-4 : inexact-ok
+= rootn towardzero intel96 -0x4p-128 9223372036854775807LL : -0xf.fffffffffffff51p-4 : inexact-ok
+= rootn upward intel96 -0x4p-128 9223372036854775807LL : -0xf.fffffffffffff51p-4 : inexact-ok
+= rootn downward m68k96 -0x4p-128 9223372036854775807LL : -0xf.fffffffffffff52p-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-128 9223372036854775807LL : -0xf.fffffffffffff51p-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-128 9223372036854775807LL : -0xf.fffffffffffff51p-4 : inexact-ok
+= rootn upward m68k96 -0x4p-128 9223372036854775807LL : -0xf.fffffffffffff51p-4 : inexact-ok
+= rootn downward binary128 -0x4p-128 9223372036854775807LL : -0xf.fffffffffffff5153b0680d77c48p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-128 9223372036854775807LL : -0xf.fffffffffffff5153b0680d77c48p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-128 9223372036854775807LL : -0xf.fffffffffffff5153b0680d77c4p-4 : inexact-ok
+= rootn upward binary128 -0x4p-128 9223372036854775807LL : -0xf.fffffffffffff5153b0680d77c4p-4 : inexact-ok
+= rootn downward ibm128 -0x4p-128 9223372036854775807LL : -0xf.fffffffffffff5153b0680d78p-4 : inexact-ok
+= rootn tonearest ibm128 -0x4p-128 9223372036854775807LL : -0xf.fffffffffffff5153b0680d77cp-4 : inexact-ok
+= rootn towardzero ibm128 -0x4p-128 9223372036854775807LL : -0xf.fffffffffffff5153b0680d77cp-4 : inexact-ok
+= rootn upward ibm128 -0x4p-128 9223372036854775807LL : -0xf.fffffffffffff5153b0680d77cp-4 : inexact-ok
+= rootn downward binary64 -0x4p-1024 9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn tonearest binary64 -0x4p-1024 9223372036854775807LL : -0xf.ffffffffffff8p-4 : inexact-ok
+= rootn towardzero binary64 -0x4p-1024 9223372036854775807LL : -0xf.ffffffffffff8p-4 : inexact-ok
+= rootn upward binary64 -0x4p-1024 9223372036854775807LL : -0xf.ffffffffffff8p-4 : inexact-ok
+= rootn downward intel96 -0x4p-1024 9223372036854775807LL : -0xf.ffffffffffffa78p-4 : inexact-ok
+= rootn tonearest intel96 -0x4p-1024 9223372036854775807LL : -0xf.ffffffffffffa77p-4 : inexact-ok
+= rootn towardzero intel96 -0x4p-1024 9223372036854775807LL : -0xf.ffffffffffffa77p-4 : inexact-ok
+= rootn upward intel96 -0x4p-1024 9223372036854775807LL : -0xf.ffffffffffffa77p-4 : inexact-ok
+= rootn downward m68k96 -0x4p-1024 9223372036854775807LL : -0xf.ffffffffffffa78p-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1024 9223372036854775807LL : -0xf.ffffffffffffa77p-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1024 9223372036854775807LL : -0xf.ffffffffffffa77p-4 : inexact-ok
+= rootn upward m68k96 -0x4p-1024 9223372036854775807LL : -0xf.ffffffffffffa77p-4 : inexact-ok
+= rootn downward binary128 -0x4p-1024 9223372036854775807LL : -0xf.ffffffffffffa773508a150cb8p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-1024 9223372036854775807LL : -0xf.ffffffffffffa773508a150cb8p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-1024 9223372036854775807LL : -0xf.ffffffffffffa773508a150cb7f8p-4 : inexact-ok
+= rootn upward binary128 -0x4p-1024 9223372036854775807LL : -0xf.ffffffffffffa773508a150cb7f8p-4 : inexact-ok
+= rootn downward ibm128 -0x4p-1024 9223372036854775807LL : -0xf.ffffffffffffa773508a150cb8p-4 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1024 9223372036854775807LL : -0xf.ffffffffffffa773508a150cb8p-4 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1024 9223372036854775807LL : -0xf.ffffffffffffa773508a150cb4p-4 : inexact-ok
+= rootn upward ibm128 -0x4p-1024 9223372036854775807LL : -0xf.ffffffffffffa773508a150cb4p-4 : inexact-ok
+= rootn downward intel96 -0x4p-16384 9223372036854775807LL : -0xf.fffffffffffa74ap-4 : inexact-ok
+= rootn tonearest intel96 -0x4p-16384 9223372036854775807LL : -0xf.fffffffffffa74ap-4 : inexact-ok
+= rootn towardzero intel96 -0x4p-16384 9223372036854775807LL : -0xf.fffffffffffa749p-4 : inexact-ok
+= rootn upward intel96 -0x4p-16384 9223372036854775807LL : -0xf.fffffffffffa749p-4 : inexact-ok
+= rootn downward m68k96 -0x4p-16384 9223372036854775807LL : -0xf.fffffffffffa74ap-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16384 9223372036854775807LL : -0xf.fffffffffffa74ap-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16384 9223372036854775807LL : -0xf.fffffffffffa749p-4 : inexact-ok
+= rootn upward m68k96 -0x4p-16384 9223372036854775807LL : -0xf.fffffffffffa749p-4 : inexact-ok
+= rootn downward binary128 -0x4p-16384 9223372036854775807LL : -0xf.fffffffffffa749b9cc76f799c68p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-16384 9223372036854775807LL : -0xf.fffffffffffa749b9cc76f799c6p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-16384 9223372036854775807LL : -0xf.fffffffffffa749b9cc76f799c6p-4 : inexact-ok
+= rootn upward binary128 -0x4p-16384 9223372036854775807LL : -0xf.fffffffffffa749b9cc76f799c6p-4 : inexact-ok
+= rootn downward intel96 -0x2p-16384 9223372036854775807LL : -0xf.fffffffffffa749p-4 : inexact-ok
+= rootn tonearest intel96 -0x2p-16384 9223372036854775807LL : -0xf.fffffffffffa748p-4 : inexact-ok
+= rootn towardzero intel96 -0x2p-16384 9223372036854775807LL : -0xf.fffffffffffa748p-4 : inexact-ok
+= rootn upward intel96 -0x2p-16384 9223372036854775807LL : -0xf.fffffffffffa748p-4 : inexact-ok
+= rootn downward m68k96 -0x2p-16384 9223372036854775807LL : -0xf.fffffffffffa749p-4 : inexact-ok
+= rootn tonearest m68k96 -0x2p-16384 9223372036854775807LL : -0xf.fffffffffffa748p-4 : inexact-ok
+= rootn towardzero m68k96 -0x2p-16384 9223372036854775807LL : -0xf.fffffffffffa748p-4 : inexact-ok
+= rootn upward m68k96 -0x2p-16384 9223372036854775807LL : -0xf.fffffffffffa748p-4 : inexact-ok
+= rootn downward binary128 -0x2p-16384 9223372036854775807LL : -0xf.fffffffffffa74856e84707f628p-4 : inexact-ok
+= rootn tonearest binary128 -0x2p-16384 9223372036854775807LL : -0xf.fffffffffffa74856e84707f628p-4 : inexact-ok
+= rootn towardzero binary128 -0x2p-16384 9223372036854775807LL : -0xf.fffffffffffa74856e84707f6278p-4 : inexact-ok
+= rootn upward binary128 -0x2p-16384 9223372036854775807LL : -0xf.fffffffffffa74856e84707f6278p-4 : inexact-ok
+= rootn downward binary64 -0x8p-972 9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn tonearest binary64 -0x8p-972 9223372036854775807LL : -0xf.ffffffffffff8p-4 : inexact-ok
+= rootn towardzero binary64 -0x8p-972 9223372036854775807LL : -0xf.ffffffffffff8p-4 : inexact-ok
+= rootn upward binary64 -0x8p-972 9223372036854775807LL : -0xf.ffffffffffff8p-4 : inexact-ok
+= rootn downward intel96 -0x8p-972 9223372036854775807LL : -0xf.ffffffffffffac1p-4 : inexact-ok
+= rootn tonearest intel96 -0x8p-972 9223372036854775807LL : -0xf.ffffffffffffac1p-4 : inexact-ok
+= rootn towardzero intel96 -0x8p-972 9223372036854775807LL : -0xf.ffffffffffffacp-4 : inexact-ok
+= rootn upward intel96 -0x8p-972 9223372036854775807LL : -0xf.ffffffffffffacp-4 : inexact-ok
+= rootn downward m68k96 -0x8p-972 9223372036854775807LL : -0xf.ffffffffffffac1p-4 : inexact-ok
+= rootn tonearest m68k96 -0x8p-972 9223372036854775807LL : -0xf.ffffffffffffac1p-4 : inexact-ok
+= rootn towardzero m68k96 -0x8p-972 9223372036854775807LL : -0xf.ffffffffffffacp-4 : inexact-ok
+= rootn upward m68k96 -0x8p-972 9223372036854775807LL : -0xf.ffffffffffffacp-4 : inexact-ok
+= rootn downward binary128 -0x8p-972 9223372036854775807LL : -0xf.ffffffffffffac0ae468dedab67p-4 : inexact-ok
+= rootn tonearest binary128 -0x8p-972 9223372036854775807LL : -0xf.ffffffffffffac0ae468dedab668p-4 : inexact-ok
+= rootn towardzero binary128 -0x8p-972 9223372036854775807LL : -0xf.ffffffffffffac0ae468dedab668p-4 : inexact-ok
+= rootn upward binary128 -0x8p-972 9223372036854775807LL : -0xf.ffffffffffffac0ae468dedab668p-4 : inexact-ok
+= rootn downward ibm128 -0x8p-972 9223372036854775807LL : -0xf.ffffffffffffac0ae468dedab8p-4 : inexact-ok
+= rootn tonearest ibm128 -0x8p-972 9223372036854775807LL : -0xf.ffffffffffffac0ae468dedab8p-4 : inexact-ok
+= rootn towardzero ibm128 -0x8p-972 9223372036854775807LL : -0xf.ffffffffffffac0ae468dedab4p-4 : inexact-ok
+= rootn upward ibm128 -0x8p-972 9223372036854775807LL : -0xf.ffffffffffffac0ae468dedab4p-4 : inexact-ok
+rootn min -1
+= rootn downward binary32 0x4p-128 -1LL : 0x4p+124 : inexact-ok
+= rootn tonearest binary32 0x4p-128 -1LL : 0x4p+124 : inexact-ok
+= rootn towardzero binary32 0x4p-128 -1LL : 0x4p+124 : inexact-ok
+= rootn upward binary32 0x4p-128 -1LL : 0x4p+124 : inexact-ok
+= rootn downward binary64 0x4p-128 -1LL : 0x4p+124 : inexact-ok
+= rootn tonearest binary64 0x4p-128 -1LL : 0x4p+124 : inexact-ok
+= rootn towardzero binary64 0x4p-128 -1LL : 0x4p+124 : inexact-ok
+= rootn upward binary64 0x4p-128 -1LL : 0x4p+124 : inexact-ok
+= rootn downward intel96 0x4p-128 -1LL : 0x4p+124 : inexact-ok
+= rootn tonearest intel96 0x4p-128 -1LL : 0x4p+124 : inexact-ok
+= rootn towardzero intel96 0x4p-128 -1LL : 0x4p+124 : inexact-ok
+= rootn upward intel96 0x4p-128 -1LL : 0x4p+124 : inexact-ok
+= rootn downward m68k96 0x4p-128 -1LL : 0x4p+124 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 -1LL : 0x4p+124 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 -1LL : 0x4p+124 : inexact-ok
+= rootn upward m68k96 0x4p-128 -1LL : 0x4p+124 : inexact-ok
+= rootn downward binary128 0x4p-128 -1LL : 0x4p+124 : inexact-ok
+= rootn tonearest binary128 0x4p-128 -1LL : 0x4p+124 : inexact-ok
+= rootn towardzero binary128 0x4p-128 -1LL : 0x4p+124 : inexact-ok
+= rootn upward binary128 0x4p-128 -1LL : 0x4p+124 : inexact-ok
+= rootn downward ibm128 0x4p-128 -1LL : 0x4p+124 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 -1LL : 0x4p+124 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 -1LL : 0x4p+124 : inexact-ok
+= rootn upward ibm128 0x4p-128 -1LL : 0x4p+124 : inexact-ok
+= rootn downward binary64 0x4p-1024 -1LL : 0x4p+1020 : inexact-ok
+= rootn tonearest binary64 0x4p-1024 -1LL : 0x4p+1020 : inexact-ok
+= rootn towardzero binary64 0x4p-1024 -1LL : 0x4p+1020 : inexact-ok
+= rootn upward binary64 0x4p-1024 -1LL : 0x4p+1020 : inexact-ok
+= rootn downward intel96 0x4p-1024 -1LL : 0x4p+1020 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 -1LL : 0x4p+1020 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 -1LL : 0x4p+1020 : inexact-ok
+= rootn upward intel96 0x4p-1024 -1LL : 0x4p+1020 : inexact-ok
+= rootn downward m68k96 0x4p-1024 -1LL : 0x4p+1020 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 -1LL : 0x4p+1020 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 -1LL : 0x4p+1020 : inexact-ok
+= rootn upward m68k96 0x4p-1024 -1LL : 0x4p+1020 : inexact-ok
+= rootn downward binary128 0x4p-1024 -1LL : 0x4p+1020 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 -1LL : 0x4p+1020 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 -1LL : 0x4p+1020 : inexact-ok
+= rootn upward binary128 0x4p-1024 -1LL : 0x4p+1020 : inexact-ok
+= rootn downward ibm128 0x4p-1024 -1LL : 0x4p+1020 : inexact-ok
+= rootn tonearest ibm128 0x4p-1024 -1LL : 0x4p+1020 : inexact-ok
+= rootn towardzero ibm128 0x4p-1024 -1LL : 0x4p+1020 : inexact-ok
+= rootn upward ibm128 0x4p-1024 -1LL : 0x4p+1020 : inexact-ok
+= rootn downward intel96 0x4p-16384 -1LL : 0x4p+16380 : inexact-ok
+= rootn tonearest intel96 0x4p-16384 -1LL : 0x4p+16380 : inexact-ok
+= rootn towardzero intel96 0x4p-16384 -1LL : 0x4p+16380 : inexact-ok
+= rootn upward intel96 0x4p-16384 -1LL : 0x4p+16380 : inexact-ok
+= rootn downward m68k96 0x4p-16384 -1LL : 0x4p+16380 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 -1LL : 0x4p+16380 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 -1LL : 0x4p+16380 : inexact-ok
+= rootn upward m68k96 0x4p-16384 -1LL : 0x4p+16380 : inexact-ok
+= rootn downward binary128 0x4p-16384 -1LL : 0x4p+16380 : inexact-ok
+= rootn tonearest binary128 0x4p-16384 -1LL : 0x4p+16380 : inexact-ok
+= rootn towardzero binary128 0x4p-16384 -1LL : 0x4p+16380 : inexact-ok
+= rootn upward binary128 0x4p-16384 -1LL : 0x4p+16380 : inexact-ok
+= rootn downward intel96 0x2p-16384 -1LL : 0x8p+16380 : inexact-ok
+= rootn tonearest intel96 0x2p-16384 -1LL : 0x8p+16380 : inexact-ok
+= rootn towardzero intel96 0x2p-16384 -1LL : 0x8p+16380 : inexact-ok
+= rootn upward intel96 0x2p-16384 -1LL : 0x8p+16380 : inexact-ok
+= rootn downward m68k96 0x2p-16384 -1LL : 0x8p+16380 : inexact-ok
+= rootn tonearest m68k96 0x2p-16384 -1LL : 0x8p+16380 : inexact-ok
+= rootn towardzero m68k96 0x2p-16384 -1LL : 0x8p+16380 : inexact-ok
+= rootn upward m68k96 0x2p-16384 -1LL : 0x8p+16380 : inexact-ok
+= rootn downward binary128 0x2p-16384 -1LL : 0x8p+16380 : inexact-ok
+= rootn tonearest binary128 0x2p-16384 -1LL : 0x8p+16380 : inexact-ok
+= rootn towardzero binary128 0x2p-16384 -1LL : 0x8p+16380 : inexact-ok
+= rootn upward binary128 0x2p-16384 -1LL : 0x8p+16380 : inexact-ok
+= rootn downward binary64 0x8p-972 -1LL : 0x2p+968 : inexact-ok
+= rootn tonearest binary64 0x8p-972 -1LL : 0x2p+968 : inexact-ok
+= rootn towardzero binary64 0x8p-972 -1LL : 0x2p+968 : inexact-ok
+= rootn upward binary64 0x8p-972 -1LL : 0x2p+968 : inexact-ok
+= rootn downward intel96 0x8p-972 -1LL : 0x2p+968 : inexact-ok
+= rootn tonearest intel96 0x8p-972 -1LL : 0x2p+968 : inexact-ok
+= rootn towardzero intel96 0x8p-972 -1LL : 0x2p+968 : inexact-ok
+= rootn upward intel96 0x8p-972 -1LL : 0x2p+968 : inexact-ok
+= rootn downward m68k96 0x8p-972 -1LL : 0x2p+968 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 -1LL : 0x2p+968 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 -1LL : 0x2p+968 : inexact-ok
+= rootn upward m68k96 0x8p-972 -1LL : 0x2p+968 : inexact-ok
+= rootn downward binary128 0x8p-972 -1LL : 0x2p+968 : inexact-ok
+= rootn tonearest binary128 0x8p-972 -1LL : 0x2p+968 : inexact-ok
+= rootn towardzero binary128 0x8p-972 -1LL : 0x2p+968 : inexact-ok
+= rootn upward binary128 0x8p-972 -1LL : 0x2p+968 : inexact-ok
+= rootn downward ibm128 0x8p-972 -1LL : 0x2p+968 : inexact-ok
+= rootn tonearest ibm128 0x8p-972 -1LL : 0x2p+968 : inexact-ok
+= rootn towardzero ibm128 0x8p-972 -1LL : 0x2p+968 : inexact-ok
+= rootn upward ibm128 0x8p-972 -1LL : 0x2p+968 : inexact-ok
+rootn min -2
+= rootn downward binary32 0x4p-128 -2LL : 0x8p+60 : inexact-ok
+= rootn tonearest binary32 0x4p-128 -2LL : 0x8p+60 : inexact-ok
+= rootn towardzero binary32 0x4p-128 -2LL : 0x8p+60 : inexact-ok
+= rootn upward binary32 0x4p-128 -2LL : 0x8p+60 : inexact-ok
+= rootn downward binary64 0x4p-128 -2LL : 0x8p+60 : inexact-ok
+= rootn tonearest binary64 0x4p-128 -2LL : 0x8p+60 : inexact-ok
+= rootn towardzero binary64 0x4p-128 -2LL : 0x8p+60 : inexact-ok
+= rootn upward binary64 0x4p-128 -2LL : 0x8p+60 : inexact-ok
+= rootn downward intel96 0x4p-128 -2LL : 0x8p+60 : inexact-ok
+= rootn tonearest intel96 0x4p-128 -2LL : 0x8p+60 : inexact-ok
+= rootn towardzero intel96 0x4p-128 -2LL : 0x8p+60 : inexact-ok
+= rootn upward intel96 0x4p-128 -2LL : 0x8p+60 : inexact-ok
+= rootn downward m68k96 0x4p-128 -2LL : 0x8p+60 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 -2LL : 0x8p+60 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 -2LL : 0x8p+60 : inexact-ok
+= rootn upward m68k96 0x4p-128 -2LL : 0x8p+60 : inexact-ok
+= rootn downward binary128 0x4p-128 -2LL : 0x8p+60 : inexact-ok
+= rootn tonearest binary128 0x4p-128 -2LL : 0x8p+60 : inexact-ok
+= rootn towardzero binary128 0x4p-128 -2LL : 0x8p+60 : inexact-ok
+= rootn upward binary128 0x4p-128 -2LL : 0x8p+60 : inexact-ok
+= rootn downward ibm128 0x4p-128 -2LL : 0x8p+60 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 -2LL : 0x8p+60 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 -2LL : 0x8p+60 : inexact-ok
+= rootn upward ibm128 0x4p-128 -2LL : 0x8p+60 : inexact-ok
+= rootn downward binary64 0x4p-1024 -2LL : 0x8p+508 : inexact-ok
+= rootn tonearest binary64 0x4p-1024 -2LL : 0x8p+508 : inexact-ok
+= rootn towardzero binary64 0x4p-1024 -2LL : 0x8p+508 : inexact-ok
+= rootn upward binary64 0x4p-1024 -2LL : 0x8p+508 : inexact-ok
+= rootn downward intel96 0x4p-1024 -2LL : 0x8p+508 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 -2LL : 0x8p+508 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 -2LL : 0x8p+508 : inexact-ok
+= rootn upward intel96 0x4p-1024 -2LL : 0x8p+508 : inexact-ok
+= rootn downward m68k96 0x4p-1024 -2LL : 0x8p+508 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 -2LL : 0x8p+508 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 -2LL : 0x8p+508 : inexact-ok
+= rootn upward m68k96 0x4p-1024 -2LL : 0x8p+508 : inexact-ok
+= rootn downward binary128 0x4p-1024 -2LL : 0x8p+508 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 -2LL : 0x8p+508 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 -2LL : 0x8p+508 : inexact-ok
+= rootn upward binary128 0x4p-1024 -2LL : 0x8p+508 : inexact-ok
+= rootn downward ibm128 0x4p-1024 -2LL : 0x8p+508 : inexact-ok
+= rootn tonearest ibm128 0x4p-1024 -2LL : 0x8p+508 : inexact-ok
+= rootn towardzero ibm128 0x4p-1024 -2LL : 0x8p+508 : inexact-ok
+= rootn upward ibm128 0x4p-1024 -2LL : 0x8p+508 : inexact-ok
+= rootn downward intel96 0x4p-16384 -2LL : 0x8p+8188 : inexact-ok
+= rootn tonearest intel96 0x4p-16384 -2LL : 0x8p+8188 : inexact-ok
+= rootn towardzero intel96 0x4p-16384 -2LL : 0x8p+8188 : inexact-ok
+= rootn upward intel96 0x4p-16384 -2LL : 0x8p+8188 : inexact-ok
+= rootn downward m68k96 0x4p-16384 -2LL : 0x8p+8188 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 -2LL : 0x8p+8188 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 -2LL : 0x8p+8188 : inexact-ok
+= rootn upward m68k96 0x4p-16384 -2LL : 0x8p+8188 : inexact-ok
+= rootn downward binary128 0x4p-16384 -2LL : 0x8p+8188 : inexact-ok
+= rootn tonearest binary128 0x4p-16384 -2LL : 0x8p+8188 : inexact-ok
+= rootn towardzero binary128 0x4p-16384 -2LL : 0x8p+8188 : inexact-ok
+= rootn upward binary128 0x4p-16384 -2LL : 0x8p+8188 : inexact-ok
+= rootn downward intel96 0x2p-16384 -2LL : 0xb.504f333f9de6484p+8188 : inexact-ok
+= rootn tonearest intel96 0x2p-16384 -2LL : 0xb.504f333f9de6484p+8188 : inexact-ok
+= rootn towardzero intel96 0x2p-16384 -2LL : 0xb.504f333f9de6484p+8188 : inexact-ok
+= rootn upward intel96 0x2p-16384 -2LL : 0xb.504f333f9de6485p+8188 : inexact-ok
+= rootn downward m68k96 0x2p-16384 -2LL : 0xb.504f333f9de6484p+8188 : inexact-ok
+= rootn tonearest m68k96 0x2p-16384 -2LL : 0xb.504f333f9de6484p+8188 : inexact-ok
+= rootn towardzero m68k96 0x2p-16384 -2LL : 0xb.504f333f9de6484p+8188 : inexact-ok
+= rootn upward m68k96 0x2p-16384 -2LL : 0xb.504f333f9de6485p+8188 : inexact-ok
+= rootn downward binary128 0x2p-16384 -2LL : 0xb.504f333f9de6484597d89b3754a8p+8188 : inexact-ok
+= rootn tonearest binary128 0x2p-16384 -2LL : 0xb.504f333f9de6484597d89b3754a8p+8188 : inexact-ok
+= rootn towardzero binary128 0x2p-16384 -2LL : 0xb.504f333f9de6484597d89b3754a8p+8188 : inexact-ok
+= rootn upward binary128 0x2p-16384 -2LL : 0xb.504f333f9de6484597d89b3754bp+8188 : inexact-ok
+= rootn downward binary64 0x8p-972 -2LL : 0x1.6a09e667f3bccp+484 : inexact-ok
+= rootn tonearest binary64 0x8p-972 -2LL : 0x1.6a09e667f3bcdp+484 : inexact-ok
+= rootn towardzero binary64 0x8p-972 -2LL : 0x1.6a09e667f3bccp+484 : inexact-ok
+= rootn upward binary64 0x8p-972 -2LL : 0x1.6a09e667f3bcdp+484 : inexact-ok
+= rootn downward intel96 0x8p-972 -2LL : 0x1.6a09e667f3bcc908p+484 : inexact-ok
+= rootn tonearest intel96 0x8p-972 -2LL : 0x1.6a09e667f3bcc908p+484 : inexact-ok
+= rootn towardzero intel96 0x8p-972 -2LL : 0x1.6a09e667f3bcc908p+484 : inexact-ok
+= rootn upward intel96 0x8p-972 -2LL : 0x1.6a09e667f3bcc90ap+484 : inexact-ok
+= rootn downward m68k96 0x8p-972 -2LL : 0x1.6a09e667f3bcc908p+484 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 -2LL : 0x1.6a09e667f3bcc908p+484 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 -2LL : 0x1.6a09e667f3bcc908p+484 : inexact-ok
+= rootn upward m68k96 0x8p-972 -2LL : 0x1.6a09e667f3bcc90ap+484 : inexact-ok
+= rootn downward binary128 0x8p-972 -2LL : 0x1.6a09e667f3bcc908b2fb1366ea95p+484 : inexact-ok
+= rootn tonearest binary128 0x8p-972 -2LL : 0x1.6a09e667f3bcc908b2fb1366ea95p+484 : inexact-ok
+= rootn towardzero binary128 0x8p-972 -2LL : 0x1.6a09e667f3bcc908b2fb1366ea95p+484 : inexact-ok
+= rootn upward binary128 0x8p-972 -2LL : 0x1.6a09e667f3bcc908b2fb1366ea96p+484 : inexact-ok
+= rootn downward ibm128 0x8p-972 -2LL : 0x1.6a09e667f3bcc908b2fb1366ea8p+484 : inexact-ok
+= rootn tonearest ibm128 0x8p-972 -2LL : 0x1.6a09e667f3bcc908b2fb1366ea8p+484 : inexact-ok
+= rootn towardzero ibm128 0x8p-972 -2LL : 0x1.6a09e667f3bcc908b2fb1366ea8p+484 : inexact-ok
+= rootn upward ibm128 0x8p-972 -2LL : 0x1.6a09e667f3bcc908b2fb1366ebp+484 : inexact-ok
+rootn min -3
+= rootn downward binary32 0x4p-128 -3LL : 0x4p+40 : inexact-ok
+= rootn tonearest binary32 0x4p-128 -3LL : 0x4p+40 : inexact-ok
+= rootn towardzero binary32 0x4p-128 -3LL : 0x4p+40 : inexact-ok
+= rootn upward binary32 0x4p-128 -3LL : 0x4p+40 : inexact-ok
+= rootn downward binary64 0x4p-128 -3LL : 0x4p+40 : inexact-ok
+= rootn tonearest binary64 0x4p-128 -3LL : 0x4p+40 : inexact-ok
+= rootn towardzero binary64 0x4p-128 -3LL : 0x4p+40 : inexact-ok
+= rootn upward binary64 0x4p-128 -3LL : 0x4p+40 : inexact-ok
+= rootn downward intel96 0x4p-128 -3LL : 0x4p+40 : inexact-ok
+= rootn tonearest intel96 0x4p-128 -3LL : 0x4p+40 : inexact-ok
+= rootn towardzero intel96 0x4p-128 -3LL : 0x4p+40 : inexact-ok
+= rootn upward intel96 0x4p-128 -3LL : 0x4p+40 : inexact-ok
+= rootn downward m68k96 0x4p-128 -3LL : 0x4p+40 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 -3LL : 0x4p+40 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 -3LL : 0x4p+40 : inexact-ok
+= rootn upward m68k96 0x4p-128 -3LL : 0x4p+40 : inexact-ok
+= rootn downward binary128 0x4p-128 -3LL : 0x4p+40 : inexact-ok
+= rootn tonearest binary128 0x4p-128 -3LL : 0x4p+40 : inexact-ok
+= rootn towardzero binary128 0x4p-128 -3LL : 0x4p+40 : inexact-ok
+= rootn upward binary128 0x4p-128 -3LL : 0x4p+40 : inexact-ok
+= rootn downward ibm128 0x4p-128 -3LL : 0x4p+40 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 -3LL : 0x4p+40 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 -3LL : 0x4p+40 : inexact-ok
+= rootn upward ibm128 0x4p-128 -3LL : 0x4p+40 : inexact-ok
+= rootn downward binary64 0x4p-1024 -3LL : 0x1.965fea53d6e3cp+340 : inexact-ok
+= rootn tonearest binary64 0x4p-1024 -3LL : 0x1.965fea53d6e3dp+340 : inexact-ok
+= rootn towardzero binary64 0x4p-1024 -3LL : 0x1.965fea53d6e3cp+340 : inexact-ok
+= rootn upward binary64 0x4p-1024 -3LL : 0x1.965fea53d6e3dp+340 : inexact-ok
+= rootn downward intel96 0x4p-1024 -3LL : 0x1.965fea53d6e3c82ap+340 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 -3LL : 0x1.965fea53d6e3c82cp+340 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 -3LL : 0x1.965fea53d6e3c82ap+340 : inexact-ok
+= rootn upward intel96 0x4p-1024 -3LL : 0x1.965fea53d6e3c82cp+340 : inexact-ok
+= rootn downward m68k96 0x4p-1024 -3LL : 0x1.965fea53d6e3c82ap+340 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 -3LL : 0x1.965fea53d6e3c82cp+340 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 -3LL : 0x1.965fea53d6e3c82ap+340 : inexact-ok
+= rootn upward m68k96 0x4p-1024 -3LL : 0x1.965fea53d6e3c82cp+340 : inexact-ok
+= rootn downward binary128 0x4p-1024 -3LL : 0x1.965fea53d6e3c82b05999ab43dc4p+340 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 -3LL : 0x1.965fea53d6e3c82b05999ab43dc5p+340 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 -3LL : 0x1.965fea53d6e3c82b05999ab43dc4p+340 : inexact-ok
+= rootn upward binary128 0x4p-1024 -3LL : 0x1.965fea53d6e3c82b05999ab43dc5p+340 : inexact-ok
+= rootn downward ibm128 0x4p-1024 -3LL : 0x1.965fea53d6e3c82b05999ab43d8p+340 : inexact-ok
+= rootn tonearest ibm128 0x4p-1024 -3LL : 0x1.965fea53d6e3c82b05999ab43ep+340 : inexact-ok
+= rootn towardzero ibm128 0x4p-1024 -3LL : 0x1.965fea53d6e3c82b05999ab43d8p+340 : inexact-ok
+= rootn upward ibm128 0x4p-1024 -3LL : 0x1.965fea53d6e3c82b05999ab43ep+340 : inexact-ok
+= rootn downward intel96 0x4p-16384 -3LL : 0x1.965fea53d6e3c82ap+5460 : inexact-ok
+= rootn tonearest intel96 0x4p-16384 -3LL : 0x1.965fea53d6e3c82cp+5460 : inexact-ok
+= rootn towardzero intel96 0x4p-16384 -3LL : 0x1.965fea53d6e3c82ap+5460 : inexact-ok
+= rootn upward intel96 0x4p-16384 -3LL : 0x1.965fea53d6e3c82cp+5460 : inexact-ok
+= rootn downward m68k96 0x4p-16384 -3LL : 0x1.965fea53d6e3c82ap+5460 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 -3LL : 0x1.965fea53d6e3c82cp+5460 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 -3LL : 0x1.965fea53d6e3c82ap+5460 : inexact-ok
+= rootn upward m68k96 0x4p-16384 -3LL : 0x1.965fea53d6e3c82cp+5460 : inexact-ok
+= rootn downward binary128 0x4p-16384 -3LL : 0x1.965fea53d6e3c82b05999ab43dc4p+5460 : inexact-ok
+= rootn tonearest binary128 0x4p-16384 -3LL : 0x1.965fea53d6e3c82b05999ab43dc5p+5460 : inexact-ok
+= rootn towardzero binary128 0x4p-16384 -3LL : 0x1.965fea53d6e3c82b05999ab43dc4p+5460 : inexact-ok
+= rootn upward binary128 0x4p-16384 -3LL : 0x1.965fea53d6e3c82b05999ab43dc5p+5460 : inexact-ok
+= rootn downward intel96 0x2p-16384 -3LL : 0x2p+5460 : inexact-ok
+= rootn tonearest intel96 0x2p-16384 -3LL : 0x2p+5460 : inexact-ok
+= rootn towardzero intel96 0x2p-16384 -3LL : 0x2p+5460 : inexact-ok
+= rootn upward intel96 0x2p-16384 -3LL : 0x2p+5460 : inexact-ok
+= rootn downward m68k96 0x2p-16384 -3LL : 0x2p+5460 : inexact-ok
+= rootn tonearest m68k96 0x2p-16384 -3LL : 0x2p+5460 : inexact-ok
+= rootn towardzero m68k96 0x2p-16384 -3LL : 0x2p+5460 : inexact-ok
+= rootn upward m68k96 0x2p-16384 -3LL : 0x2p+5460 : inexact-ok
+= rootn downward binary128 0x2p-16384 -3LL : 0x2p+5460 : inexact-ok
+= rootn tonearest binary128 0x2p-16384 -3LL : 0x2p+5460 : inexact-ok
+= rootn towardzero binary128 0x2p-16384 -3LL : 0x2p+5460 : inexact-ok
+= rootn upward binary128 0x2p-16384 -3LL : 0x2p+5460 : inexact-ok
+= rootn downward binary64 0x8p-972 -3LL : 0x8p+320 : inexact-ok
+= rootn tonearest binary64 0x8p-972 -3LL : 0x8p+320 : inexact-ok
+= rootn towardzero binary64 0x8p-972 -3LL : 0x8p+320 : inexact-ok
+= rootn upward binary64 0x8p-972 -3LL : 0x8p+320 : inexact-ok
+= rootn downward intel96 0x8p-972 -3LL : 0x8p+320 : inexact-ok
+= rootn tonearest intel96 0x8p-972 -3LL : 0x8p+320 : inexact-ok
+= rootn towardzero intel96 0x8p-972 -3LL : 0x8p+320 : inexact-ok
+= rootn upward intel96 0x8p-972 -3LL : 0x8p+320 : inexact-ok
+= rootn downward m68k96 0x8p-972 -3LL : 0x8p+320 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 -3LL : 0x8p+320 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 -3LL : 0x8p+320 : inexact-ok
+= rootn upward m68k96 0x8p-972 -3LL : 0x8p+320 : inexact-ok
+= rootn downward binary128 0x8p-972 -3LL : 0x8p+320 : inexact-ok
+= rootn tonearest binary128 0x8p-972 -3LL : 0x8p+320 : inexact-ok
+= rootn towardzero binary128 0x8p-972 -3LL : 0x8p+320 : inexact-ok
+= rootn upward binary128 0x8p-972 -3LL : 0x8p+320 : inexact-ok
+= rootn downward ibm128 0x8p-972 -3LL : 0x8p+320 : inexact-ok
+= rootn tonearest ibm128 0x8p-972 -3LL : 0x8p+320 : inexact-ok
+= rootn towardzero ibm128 0x8p-972 -3LL : 0x8p+320 : inexact-ok
+= rootn upward ibm128 0x8p-972 -3LL : 0x8p+320 : inexact-ok
+rootn min -4
+= rootn downward binary32 0x4p-128 -4LL : 0xb.504f3p+28 : inexact-ok
+= rootn tonearest binary32 0x4p-128 -4LL : 0xb.504f3p+28 : inexact-ok
+= rootn towardzero binary32 0x4p-128 -4LL : 0xb.504f3p+28 : inexact-ok
+= rootn upward binary32 0x4p-128 -4LL : 0xb.504f4p+28 : inexact-ok
+= rootn downward binary64 0x4p-128 -4LL : 0xb.504f333f9de6p+28 : inexact-ok
+= rootn tonearest binary64 0x4p-128 -4LL : 0xb.504f333f9de68p+28 : inexact-ok
+= rootn towardzero binary64 0x4p-128 -4LL : 0xb.504f333f9de6p+28 : inexact-ok
+= rootn upward binary64 0x4p-128 -4LL : 0xb.504f333f9de68p+28 : inexact-ok
+= rootn downward intel96 0x4p-128 -4LL : 0xb.504f333f9de6484p+28 : inexact-ok
+= rootn tonearest intel96 0x4p-128 -4LL : 0xb.504f333f9de6484p+28 : inexact-ok
+= rootn towardzero intel96 0x4p-128 -4LL : 0xb.504f333f9de6484p+28 : inexact-ok
+= rootn upward intel96 0x4p-128 -4LL : 0xb.504f333f9de6485p+28 : inexact-ok
+= rootn downward m68k96 0x4p-128 -4LL : 0xb.504f333f9de6484p+28 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 -4LL : 0xb.504f333f9de6484p+28 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 -4LL : 0xb.504f333f9de6484p+28 : inexact-ok
+= rootn upward m68k96 0x4p-128 -4LL : 0xb.504f333f9de6485p+28 : inexact-ok
+= rootn downward binary128 0x4p-128 -4LL : 0xb.504f333f9de6484597d89b3754a8p+28 : inexact-ok
+= rootn tonearest binary128 0x4p-128 -4LL : 0xb.504f333f9de6484597d89b3754a8p+28 : inexact-ok
+= rootn towardzero binary128 0x4p-128 -4LL : 0xb.504f333f9de6484597d89b3754a8p+28 : inexact-ok
+= rootn upward binary128 0x4p-128 -4LL : 0xb.504f333f9de6484597d89b3754bp+28 : inexact-ok
+= rootn downward ibm128 0x4p-128 -4LL : 0xb.504f333f9de6484597d89b3754p+28 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 -4LL : 0xb.504f333f9de6484597d89b3754p+28 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 -4LL : 0xb.504f333f9de6484597d89b3754p+28 : inexact-ok
+= rootn upward ibm128 0x4p-128 -4LL : 0xb.504f333f9de6484597d89b3758p+28 : inexact-ok
+= rootn downward binary64 0x4p-1024 -4LL : 0xb.504f333f9de6p+252 : inexact-ok
+= rootn tonearest binary64 0x4p-1024 -4LL : 0xb.504f333f9de68p+252 : inexact-ok
+= rootn towardzero binary64 0x4p-1024 -4LL : 0xb.504f333f9de6p+252 : inexact-ok
+= rootn upward binary64 0x4p-1024 -4LL : 0xb.504f333f9de68p+252 : inexact-ok
+= rootn downward intel96 0x4p-1024 -4LL : 0xb.504f333f9de6484p+252 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 -4LL : 0xb.504f333f9de6484p+252 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 -4LL : 0xb.504f333f9de6484p+252 : inexact-ok
+= rootn upward intel96 0x4p-1024 -4LL : 0xb.504f333f9de6485p+252 : inexact-ok
+= rootn downward m68k96 0x4p-1024 -4LL : 0xb.504f333f9de6484p+252 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 -4LL : 0xb.504f333f9de6484p+252 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 -4LL : 0xb.504f333f9de6484p+252 : inexact-ok
+= rootn upward m68k96 0x4p-1024 -4LL : 0xb.504f333f9de6485p+252 : inexact-ok
+= rootn downward binary128 0x4p-1024 -4LL : 0xb.504f333f9de6484597d89b3754a8p+252 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 -4LL : 0xb.504f333f9de6484597d89b3754a8p+252 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 -4LL : 0xb.504f333f9de6484597d89b3754a8p+252 : inexact-ok
+= rootn upward binary128 0x4p-1024 -4LL : 0xb.504f333f9de6484597d89b3754bp+252 : inexact-ok
+= rootn downward ibm128 0x4p-1024 -4LL : 0xb.504f333f9de6484597d89b3754p+252 : inexact-ok
+= rootn tonearest ibm128 0x4p-1024 -4LL : 0xb.504f333f9de6484597d89b3754p+252 : inexact-ok
+= rootn towardzero ibm128 0x4p-1024 -4LL : 0xb.504f333f9de6484597d89b3754p+252 : inexact-ok
+= rootn upward ibm128 0x4p-1024 -4LL : 0xb.504f333f9de6484597d89b3758p+252 : inexact-ok
+= rootn downward intel96 0x4p-16384 -4LL : 0xb.504f333f9de6484p+4092 : inexact-ok
+= rootn tonearest intel96 0x4p-16384 -4LL : 0xb.504f333f9de6484p+4092 : inexact-ok
+= rootn towardzero intel96 0x4p-16384 -4LL : 0xb.504f333f9de6484p+4092 : inexact-ok
+= rootn upward intel96 0x4p-16384 -4LL : 0xb.504f333f9de6485p+4092 : inexact-ok
+= rootn downward m68k96 0x4p-16384 -4LL : 0xb.504f333f9de6484p+4092 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 -4LL : 0xb.504f333f9de6484p+4092 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 -4LL : 0xb.504f333f9de6484p+4092 : inexact-ok
+= rootn upward m68k96 0x4p-16384 -4LL : 0xb.504f333f9de6485p+4092 : inexact-ok
+= rootn downward binary128 0x4p-16384 -4LL : 0xb.504f333f9de6484597d89b3754a8p+4092 : inexact-ok
+= rootn tonearest binary128 0x4p-16384 -4LL : 0xb.504f333f9de6484597d89b3754a8p+4092 : inexact-ok
+= rootn towardzero binary128 0x4p-16384 -4LL : 0xb.504f333f9de6484597d89b3754a8p+4092 : inexact-ok
+= rootn upward binary128 0x4p-16384 -4LL : 0xb.504f333f9de6484597d89b3754bp+4092 : inexact-ok
+= rootn downward intel96 0x2p-16384 -4LL : 0xd.744fccad69d6af4p+4092 : inexact-ok
+= rootn tonearest intel96 0x2p-16384 -4LL : 0xd.744fccad69d6af4p+4092 : inexact-ok
+= rootn towardzero intel96 0x2p-16384 -4LL : 0xd.744fccad69d6af4p+4092 : inexact-ok
+= rootn upward intel96 0x2p-16384 -4LL : 0xd.744fccad69d6af5p+4092 : inexact-ok
+= rootn downward m68k96 0x2p-16384 -4LL : 0xd.744fccad69d6af4p+4092 : inexact-ok
+= rootn tonearest m68k96 0x2p-16384 -4LL : 0xd.744fccad69d6af4p+4092 : inexact-ok
+= rootn towardzero m68k96 0x2p-16384 -4LL : 0xd.744fccad69d6af4p+4092 : inexact-ok
+= rootn upward m68k96 0x2p-16384 -4LL : 0xd.744fccad69d6af5p+4092 : inexact-ok
+= rootn downward binary128 0x2p-16384 -4LL : 0xd.744fccad69d6af439a68bb9902dp+4092 : inexact-ok
+= rootn tonearest binary128 0x2p-16384 -4LL : 0xd.744fccad69d6af439a68bb9902dp+4092 : inexact-ok
+= rootn towardzero binary128 0x2p-16384 -4LL : 0xd.744fccad69d6af439a68bb9902dp+4092 : inexact-ok
+= rootn upward binary128 0x2p-16384 -4LL : 0xd.744fccad69d6af439a68bb9902d8p+4092 : inexact-ok
+= rootn downward binary64 0x8p-972 -4LL : 0x4.c1bf828c6dc54p+240 : inexact-ok
+= rootn tonearest binary64 0x8p-972 -4LL : 0x4.c1bf828c6dc54p+240 : inexact-ok
+= rootn towardzero binary64 0x8p-972 -4LL : 0x4.c1bf828c6dc54p+240 : inexact-ok
+= rootn upward binary64 0x8p-972 -4LL : 0x4.c1bf828c6dc58p+240 : inexact-ok
+= rootn downward intel96 0x8p-972 -4LL : 0x4.c1bf828c6dc54b78p+240 : inexact-ok
+= rootn tonearest intel96 0x8p-972 -4LL : 0x4.c1bf828c6dc54b78p+240 : inexact-ok
+= rootn towardzero intel96 0x8p-972 -4LL : 0x4.c1bf828c6dc54b78p+240 : inexact-ok
+= rootn upward intel96 0x8p-972 -4LL : 0x4.c1bf828c6dc54b8p+240 : inexact-ok
+= rootn downward m68k96 0x8p-972 -4LL : 0x4.c1bf828c6dc54b78p+240 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 -4LL : 0x4.c1bf828c6dc54b78p+240 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 -4LL : 0x4.c1bf828c6dc54b78p+240 : inexact-ok
+= rootn upward m68k96 0x8p-972 -4LL : 0x4.c1bf828c6dc54b8p+240 : inexact-ok
+= rootn downward binary128 0x8p-972 -4LL : 0x4.c1bf828c6dc54b7a356918c17214p+240 : inexact-ok
+= rootn tonearest binary128 0x8p-972 -4LL : 0x4.c1bf828c6dc54b7a356918c17218p+240 : inexact-ok
+= rootn towardzero binary128 0x8p-972 -4LL : 0x4.c1bf828c6dc54b7a356918c17214p+240 : inexact-ok
+= rootn upward binary128 0x8p-972 -4LL : 0x4.c1bf828c6dc54b7a356918c17218p+240 : inexact-ok
+= rootn downward ibm128 0x8p-972 -4LL : 0x4.c1bf828c6dc54b7a356918c172p+240 : inexact-ok
+= rootn tonearest ibm128 0x8p-972 -4LL : 0x4.c1bf828c6dc54b7a356918c172p+240 : inexact-ok
+= rootn towardzero ibm128 0x8p-972 -4LL : 0x4.c1bf828c6dc54b7a356918c172p+240 : inexact-ok
+= rootn upward ibm128 0x8p-972 -4LL : 0x4.c1bf828c6dc54b7a356918c174p+240 : inexact-ok
+rootn min -5
+= rootn downward binary32 0x4p-128 -5LL : 0x2.4c223p+24 : inexact-ok
+= rootn tonearest binary32 0x4p-128 -5LL : 0x2.4c223p+24 : inexact-ok
+= rootn towardzero binary32 0x4p-128 -5LL : 0x2.4c223p+24 : inexact-ok
+= rootn upward binary32 0x4p-128 -5LL : 0x2.4c2234p+24 : inexact-ok
+= rootn downward binary64 0x4p-128 -5LL : 0x2.4c2230d75cce8p+24 : inexact-ok
+= rootn tonearest binary64 0x4p-128 -5LL : 0x2.4c2230d75cceap+24 : inexact-ok
+= rootn towardzero binary64 0x4p-128 -5LL : 0x2.4c2230d75cce8p+24 : inexact-ok
+= rootn upward binary64 0x4p-128 -5LL : 0x2.4c2230d75cceap+24 : inexact-ok
+= rootn downward intel96 0x4p-128 -5LL : 0x2.4c2230d75cce92d4p+24 : inexact-ok
+= rootn tonearest intel96 0x4p-128 -5LL : 0x2.4c2230d75cce92d4p+24 : inexact-ok
+= rootn towardzero intel96 0x4p-128 -5LL : 0x2.4c2230d75cce92d4p+24 : inexact-ok
+= rootn upward intel96 0x4p-128 -5LL : 0x2.4c2230d75cce92d8p+24 : inexact-ok
+= rootn downward m68k96 0x4p-128 -5LL : 0x2.4c2230d75cce92d4p+24 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 -5LL : 0x2.4c2230d75cce92d4p+24 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 -5LL : 0x2.4c2230d75cce92d4p+24 : inexact-ok
+= rootn upward m68k96 0x4p-128 -5LL : 0x2.4c2230d75cce92d8p+24 : inexact-ok
+= rootn downward binary128 0x4p-128 -5LL : 0x2.4c2230d75cce92d4a43c840ec1c2p+24 : inexact-ok
+= rootn tonearest binary128 0x4p-128 -5LL : 0x2.4c2230d75cce92d4a43c840ec1c4p+24 : inexact-ok
+= rootn towardzero binary128 0x4p-128 -5LL : 0x2.4c2230d75cce92d4a43c840ec1c2p+24 : inexact-ok
+= rootn upward binary128 0x4p-128 -5LL : 0x2.4c2230d75cce92d4a43c840ec1c4p+24 : inexact-ok
+= rootn downward ibm128 0x4p-128 -5LL : 0x2.4c2230d75cce92d4a43c840ec1p+24 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 -5LL : 0x2.4c2230d75cce92d4a43c840ec2p+24 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 -5LL : 0x2.4c2230d75cce92d4a43c840ec1p+24 : inexact-ok
+= rootn upward ibm128 0x4p-128 -5LL : 0x2.4c2230d75cce92d4a43c840ec2p+24 : inexact-ok
+= rootn downward binary64 0x4p-1024 -5LL : 0x1.51cb453b9536cp+204 : inexact-ok
+= rootn tonearest binary64 0x4p-1024 -5LL : 0x1.51cb453b9536cp+204 : inexact-ok
+= rootn towardzero binary64 0x4p-1024 -5LL : 0x1.51cb453b9536cp+204 : inexact-ok
+= rootn upward binary64 0x4p-1024 -5LL : 0x1.51cb453b9536dp+204 : inexact-ok
+= rootn downward intel96 0x4p-1024 -5LL : 0x1.51cb453b9536c456p+204 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 -5LL : 0x1.51cb453b9536c456p+204 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 -5LL : 0x1.51cb453b9536c456p+204 : inexact-ok
+= rootn upward intel96 0x4p-1024 -5LL : 0x1.51cb453b9536c458p+204 : inexact-ok
+= rootn downward m68k96 0x4p-1024 -5LL : 0x1.51cb453b9536c456p+204 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 -5LL : 0x1.51cb453b9536c456p+204 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 -5LL : 0x1.51cb453b9536c456p+204 : inexact-ok
+= rootn upward m68k96 0x4p-1024 -5LL : 0x1.51cb453b9536c458p+204 : inexact-ok
+= rootn downward binary128 0x4p-1024 -5LL : 0x1.51cb453b9536c45693a8476cb96bp+204 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 -5LL : 0x1.51cb453b9536c45693a8476cb96bp+204 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 -5LL : 0x1.51cb453b9536c45693a8476cb96bp+204 : inexact-ok
+= rootn upward binary128 0x4p-1024 -5LL : 0x1.51cb453b9536c45693a8476cb96cp+204 : inexact-ok
+= rootn downward ibm128 0x4p-1024 -5LL : 0x1.51cb453b9536c45693a8476cb9p+204 : inexact-ok
+= rootn tonearest ibm128 0x4p-1024 -5LL : 0x1.51cb453b9536c45693a8476cb98p+204 : inexact-ok
+= rootn towardzero ibm128 0x4p-1024 -5LL : 0x1.51cb453b9536c45693a8476cb9p+204 : inexact-ok
+= rootn upward ibm128 0x4p-1024 -5LL : 0x1.51cb453b9536c45693a8476cb98p+204 : inexact-ok
+= rootn downward intel96 0x4p-16384 -5LL : 0x1.51cb453b9536c456p+3276 : inexact-ok
+= rootn tonearest intel96 0x4p-16384 -5LL : 0x1.51cb453b9536c456p+3276 : inexact-ok
+= rootn towardzero intel96 0x4p-16384 -5LL : 0x1.51cb453b9536c456p+3276 : inexact-ok
+= rootn upward intel96 0x4p-16384 -5LL : 0x1.51cb453b9536c458p+3276 : inexact-ok
+= rootn downward m68k96 0x4p-16384 -5LL : 0x1.51cb453b9536c456p+3276 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 -5LL : 0x1.51cb453b9536c456p+3276 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 -5LL : 0x1.51cb453b9536c456p+3276 : inexact-ok
+= rootn upward m68k96 0x4p-16384 -5LL : 0x1.51cb453b9536c458p+3276 : inexact-ok
+= rootn downward binary128 0x4p-16384 -5LL : 0x1.51cb453b9536c45693a8476cb96bp+3276 : inexact-ok
+= rootn tonearest binary128 0x4p-16384 -5LL : 0x1.51cb453b9536c45693a8476cb96bp+3276 : inexact-ok
+= rootn towardzero binary128 0x4p-16384 -5LL : 0x1.51cb453b9536c45693a8476cb96bp+3276 : inexact-ok
+= rootn upward binary128 0x4p-16384 -5LL : 0x1.51cb453b9536c45693a8476cb96cp+3276 : inexact-ok
+= rootn downward intel96 0x2p-16384 -5LL : 0x1.8406003b2ae5c6b8p+3276 : inexact-ok
+= rootn tonearest intel96 0x2p-16384 -5LL : 0x1.8406003b2ae5c6bap+3276 : inexact-ok
+= rootn towardzero intel96 0x2p-16384 -5LL : 0x1.8406003b2ae5c6b8p+3276 : inexact-ok
+= rootn upward intel96 0x2p-16384 -5LL : 0x1.8406003b2ae5c6bap+3276 : inexact-ok
+= rootn downward m68k96 0x2p-16384 -5LL : 0x1.8406003b2ae5c6b8p+3276 : inexact-ok
+= rootn tonearest m68k96 0x2p-16384 -5LL : 0x1.8406003b2ae5c6bap+3276 : inexact-ok
+= rootn towardzero m68k96 0x2p-16384 -5LL : 0x1.8406003b2ae5c6b8p+3276 : inexact-ok
+= rootn upward m68k96 0x2p-16384 -5LL : 0x1.8406003b2ae5c6bap+3276 : inexact-ok
+= rootn downward binary128 0x2p-16384 -5LL : 0x1.8406003b2ae5c6b99347320eae13p+3276 : inexact-ok
+= rootn tonearest binary128 0x2p-16384 -5LL : 0x1.8406003b2ae5c6b99347320eae13p+3276 : inexact-ok
+= rootn towardzero binary128 0x2p-16384 -5LL : 0x1.8406003b2ae5c6b99347320eae13p+3276 : inexact-ok
+= rootn upward binary128 0x2p-16384 -5LL : 0x1.8406003b2ae5c6b99347320eae14p+3276 : inexact-ok
+= rootn downward binary64 0x8p-972 -5LL : 0x3.7b719b5b7c24p+192 : inexact-ok
+= rootn tonearest binary64 0x8p-972 -5LL : 0x3.7b719b5b7c24p+192 : inexact-ok
+= rootn towardzero binary64 0x8p-972 -5LL : 0x3.7b719b5b7c24p+192 : inexact-ok
+= rootn upward binary64 0x8p-972 -5LL : 0x3.7b719b5b7c242p+192 : inexact-ok
+= rootn downward intel96 0x8p-972 -5LL : 0x3.7b719b5b7c240428p+192 : inexact-ok
+= rootn tonearest intel96 0x8p-972 -5LL : 0x3.7b719b5b7c240428p+192 : inexact-ok
+= rootn towardzero intel96 0x8p-972 -5LL : 0x3.7b719b5b7c240428p+192 : inexact-ok
+= rootn upward intel96 0x8p-972 -5LL : 0x3.7b719b5b7c24042cp+192 : inexact-ok
+= rootn downward m68k96 0x8p-972 -5LL : 0x3.7b719b5b7c240428p+192 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 -5LL : 0x3.7b719b5b7c240428p+192 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 -5LL : 0x3.7b719b5b7c240428p+192 : inexact-ok
+= rootn upward m68k96 0x8p-972 -5LL : 0x3.7b719b5b7c24042cp+192 : inexact-ok
+= rootn downward binary128 0x8p-972 -5LL : 0x3.7b719b5b7c240429ec3a6164ff52p+192 : inexact-ok
+= rootn tonearest binary128 0x8p-972 -5LL : 0x3.7b719b5b7c240429ec3a6164ff52p+192 : inexact-ok
+= rootn towardzero binary128 0x8p-972 -5LL : 0x3.7b719b5b7c240429ec3a6164ff52p+192 : inexact-ok
+= rootn upward binary128 0x8p-972 -5LL : 0x3.7b719b5b7c240429ec3a6164ff54p+192 : inexact-ok
+= rootn downward ibm128 0x8p-972 -5LL : 0x3.7b719b5b7c240429ec3a6164ffp+192 : inexact-ok
+= rootn tonearest ibm128 0x8p-972 -5LL : 0x3.7b719b5b7c240429ec3a6164ffp+192 : inexact-ok
+= rootn towardzero ibm128 0x8p-972 -5LL : 0x3.7b719b5b7c240429ec3a6164ffp+192 : inexact-ok
+= rootn upward ibm128 0x8p-972 -5LL : 0x3.7b719b5b7c240429ec3a6165p+192 : inexact-ok
+rootn min -63
+= rootn downward binary32 0x4p-128 -63LL : 0x4p+0 : inexact-ok
+= rootn tonearest binary32 0x4p-128 -63LL : 0x4p+0 : inexact-ok
+= rootn towardzero binary32 0x4p-128 -63LL : 0x4p+0 : inexact-ok
+= rootn upward binary32 0x4p-128 -63LL : 0x4p+0 : inexact-ok
+= rootn downward binary64 0x4p-128 -63LL : 0x4p+0 : inexact-ok
+= rootn tonearest binary64 0x4p-128 -63LL : 0x4p+0 : inexact-ok
+= rootn towardzero binary64 0x4p-128 -63LL : 0x4p+0 : inexact-ok
+= rootn upward binary64 0x4p-128 -63LL : 0x4p+0 : inexact-ok
+= rootn downward intel96 0x4p-128 -63LL : 0x4p+0 : inexact-ok
+= rootn tonearest intel96 0x4p-128 -63LL : 0x4p+0 : inexact-ok
+= rootn towardzero intel96 0x4p-128 -63LL : 0x4p+0 : inexact-ok
+= rootn upward intel96 0x4p-128 -63LL : 0x4p+0 : inexact-ok
+= rootn downward m68k96 0x4p-128 -63LL : 0x4p+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 -63LL : 0x4p+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 -63LL : 0x4p+0 : inexact-ok
+= rootn upward m68k96 0x4p-128 -63LL : 0x4p+0 : inexact-ok
+= rootn downward binary128 0x4p-128 -63LL : 0x4p+0 : inexact-ok
+= rootn tonearest binary128 0x4p-128 -63LL : 0x4p+0 : inexact-ok
+= rootn towardzero binary128 0x4p-128 -63LL : 0x4p+0 : inexact-ok
+= rootn upward binary128 0x4p-128 -63LL : 0x4p+0 : inexact-ok
+= rootn downward ibm128 0x4p-128 -63LL : 0x4p+0 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 -63LL : 0x4p+0 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 -63LL : 0x4p+0 : inexact-ok
+= rootn upward ibm128 0x4p-128 -63LL : 0x4p+0 : inexact-ok
+= rootn downward binary64 0x4p-1024 -63LL : 0x1.2aa1a5aad04f5p+16 : inexact-ok
+= rootn tonearest binary64 0x4p-1024 -63LL : 0x1.2aa1a5aad04f5p+16 : inexact-ok
+= rootn towardzero binary64 0x4p-1024 -63LL : 0x1.2aa1a5aad04f5p+16 : inexact-ok
+= rootn upward binary64 0x4p-1024 -63LL : 0x1.2aa1a5aad04f6p+16 : inexact-ok
+= rootn downward intel96 0x4p-1024 -63LL : 0x1.2aa1a5aad04f537p+16 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 -63LL : 0x1.2aa1a5aad04f537p+16 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 -63LL : 0x1.2aa1a5aad04f537p+16 : inexact-ok
+= rootn upward intel96 0x4p-1024 -63LL : 0x1.2aa1a5aad04f5372p+16 : inexact-ok
+= rootn downward m68k96 0x4p-1024 -63LL : 0x1.2aa1a5aad04f537p+16 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 -63LL : 0x1.2aa1a5aad04f537p+16 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 -63LL : 0x1.2aa1a5aad04f537p+16 : inexact-ok
+= rootn upward m68k96 0x4p-1024 -63LL : 0x1.2aa1a5aad04f5372p+16 : inexact-ok
+= rootn downward binary128 0x4p-1024 -63LL : 0x1.2aa1a5aad04f53701993c68cc5b2p+16 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 -63LL : 0x1.2aa1a5aad04f53701993c68cc5b2p+16 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 -63LL : 0x1.2aa1a5aad04f53701993c68cc5b2p+16 : inexact-ok
+= rootn upward binary128 0x4p-1024 -63LL : 0x1.2aa1a5aad04f53701993c68cc5b3p+16 : inexact-ok
+= rootn downward ibm128 0x4p-1024 -63LL : 0x1.2aa1a5aad04f53701993c68cc58p+16 : inexact-ok
+= rootn tonearest ibm128 0x4p-1024 -63LL : 0x1.2aa1a5aad04f53701993c68cc58p+16 : inexact-ok
+= rootn towardzero ibm128 0x4p-1024 -63LL : 0x1.2aa1a5aad04f53701993c68cc58p+16 : inexact-ok
+= rootn upward ibm128 0x4p-1024 -63LL : 0x1.2aa1a5aad04f53701993c68cc6p+16 : inexact-ok
+= rootn downward intel96 0x4p-16384 -63LL : 0x1.05b214e9123f0edp+260 : inexact-ok
+= rootn tonearest intel96 0x4p-16384 -63LL : 0x1.05b214e9123f0edp+260 : inexact-ok
+= rootn towardzero intel96 0x4p-16384 -63LL : 0x1.05b214e9123f0edp+260 : inexact-ok
+= rootn upward intel96 0x4p-16384 -63LL : 0x1.05b214e9123f0ed2p+260 : inexact-ok
+= rootn downward m68k96 0x4p-16384 -63LL : 0x1.05b214e9123f0edp+260 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 -63LL : 0x1.05b214e9123f0edp+260 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 -63LL : 0x1.05b214e9123f0edp+260 : inexact-ok
+= rootn upward m68k96 0x4p-16384 -63LL : 0x1.05b214e9123f0ed2p+260 : inexact-ok
+= rootn downward binary128 0x4p-16384 -63LL : 0x1.05b214e9123f0ed0153dca82bdb7p+260 : inexact-ok
+= rootn tonearest binary128 0x4p-16384 -63LL : 0x1.05b214e9123f0ed0153dca82bdb7p+260 : inexact-ok
+= rootn towardzero binary128 0x4p-16384 -63LL : 0x1.05b214e9123f0ed0153dca82bdb7p+260 : inexact-ok
+= rootn upward binary128 0x4p-16384 -63LL : 0x1.05b214e9123f0ed0153dca82bdb8p+260 : inexact-ok
+= rootn downward intel96 0x2p-16384 -63LL : 0x1.08973e2c8a9c60cap+260 : inexact-ok
+= rootn tonearest intel96 0x2p-16384 -63LL : 0x1.08973e2c8a9c60ccp+260 : inexact-ok
+= rootn towardzero intel96 0x2p-16384 -63LL : 0x1.08973e2c8a9c60cap+260 : inexact-ok
+= rootn upward intel96 0x2p-16384 -63LL : 0x1.08973e2c8a9c60ccp+260 : inexact-ok
+= rootn downward m68k96 0x2p-16384 -63LL : 0x1.08973e2c8a9c60cap+260 : inexact-ok
+= rootn tonearest m68k96 0x2p-16384 -63LL : 0x1.08973e2c8a9c60ccp+260 : inexact-ok
+= rootn towardzero m68k96 0x2p-16384 -63LL : 0x1.08973e2c8a9c60cap+260 : inexact-ok
+= rootn upward m68k96 0x2p-16384 -63LL : 0x1.08973e2c8a9c60ccp+260 : inexact-ok
+= rootn downward binary128 0x2p-16384 -63LL : 0x1.08973e2c8a9c60cb3f405358c332p+260 : inexact-ok
+= rootn tonearest binary128 0x2p-16384 -63LL : 0x1.08973e2c8a9c60cb3f405358c333p+260 : inexact-ok
+= rootn towardzero binary128 0x2p-16384 -63LL : 0x1.08973e2c8a9c60cb3f405358c332p+260 : inexact-ok
+= rootn upward binary128 0x2p-16384 -63LL : 0x1.08973e2c8a9c60cb3f405358c333p+260 : inexact-ok
+= rootn downward binary64 0x8p-972 -63LL : 0xa.6ae8776a379c8p+12 : inexact-ok
+= rootn tonearest binary64 0x8p-972 -63LL : 0xa.6ae8776a379c8p+12 : inexact-ok
+= rootn towardzero binary64 0x8p-972 -63LL : 0xa.6ae8776a379c8p+12 : inexact-ok
+= rootn upward binary64 0x8p-972 -63LL : 0xa.6ae8776a379dp+12 : inexact-ok
+= rootn downward intel96 0x8p-972 -63LL : 0xa.6ae8776a379c962p+12 : inexact-ok
+= rootn tonearest intel96 0x8p-972 -63LL : 0xa.6ae8776a379c962p+12 : inexact-ok
+= rootn towardzero intel96 0x8p-972 -63LL : 0xa.6ae8776a379c962p+12 : inexact-ok
+= rootn upward intel96 0x8p-972 -63LL : 0xa.6ae8776a379c963p+12 : inexact-ok
+= rootn downward m68k96 0x8p-972 -63LL : 0xa.6ae8776a379c962p+12 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 -63LL : 0xa.6ae8776a379c962p+12 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 -63LL : 0xa.6ae8776a379c962p+12 : inexact-ok
+= rootn upward m68k96 0x8p-972 -63LL : 0xa.6ae8776a379c963p+12 : inexact-ok
+= rootn downward binary128 0x8p-972 -63LL : 0xa.6ae8776a379c96212b1b43ecd518p+12 : inexact-ok
+= rootn tonearest binary128 0x8p-972 -63LL : 0xa.6ae8776a379c96212b1b43ecd518p+12 : inexact-ok
+= rootn towardzero binary128 0x8p-972 -63LL : 0xa.6ae8776a379c96212b1b43ecd518p+12 : inexact-ok
+= rootn upward binary128 0x8p-972 -63LL : 0xa.6ae8776a379c96212b1b43ecd52p+12 : inexact-ok
+= rootn downward ibm128 0x8p-972 -63LL : 0xa.6ae8776a379c96212b1b43ecd4p+12 : inexact-ok
+= rootn tonearest ibm128 0x8p-972 -63LL : 0xa.6ae8776a379c96212b1b43ecd4p+12 : inexact-ok
+= rootn towardzero ibm128 0x8p-972 -63LL : 0xa.6ae8776a379c96212b1b43ecd4p+12 : inexact-ok
+= rootn upward ibm128 0x8p-972 -63LL : 0xa.6ae8776a379c96212b1b43ecd8p+12 : inexact-ok
+rootn min -127
+= rootn downward binary32 0x4p-128 -127LL : 0x1.fd3692p+0 : inexact-ok
+= rootn tonearest binary32 0x4p-128 -127LL : 0x1.fd3694p+0 : inexact-ok
+= rootn towardzero binary32 0x4p-128 -127LL : 0x1.fd3692p+0 : inexact-ok
+= rootn upward binary32 0x4p-128 -127LL : 0x1.fd3694p+0 : inexact-ok
+= rootn downward binary64 0x4p-128 -127LL : 0x1.fd3693bc91294p+0 : inexact-ok
+= rootn tonearest binary64 0x4p-128 -127LL : 0x1.fd3693bc91295p+0 : inexact-ok
+= rootn towardzero binary64 0x4p-128 -127LL : 0x1.fd3693bc91294p+0 : inexact-ok
+= rootn upward binary64 0x4p-128 -127LL : 0x1.fd3693bc91295p+0 : inexact-ok
+= rootn downward intel96 0x4p-128 -127LL : 0x1.fd3693bc9129491ep+0 : inexact-ok
+= rootn tonearest intel96 0x4p-128 -127LL : 0x1.fd3693bc9129492p+0 : inexact-ok
+= rootn towardzero intel96 0x4p-128 -127LL : 0x1.fd3693bc9129491ep+0 : inexact-ok
+= rootn upward intel96 0x4p-128 -127LL : 0x1.fd3693bc9129492p+0 : inexact-ok
+= rootn downward m68k96 0x4p-128 -127LL : 0x1.fd3693bc9129491ep+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 -127LL : 0x1.fd3693bc9129492p+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 -127LL : 0x1.fd3693bc9129491ep+0 : inexact-ok
+= rootn upward m68k96 0x4p-128 -127LL : 0x1.fd3693bc9129492p+0 : inexact-ok
+= rootn downward binary128 0x4p-128 -127LL : 0x1.fd3693bc9129491f39d15718c592p+0 : inexact-ok
+= rootn tonearest binary128 0x4p-128 -127LL : 0x1.fd3693bc9129491f39d15718c593p+0 : inexact-ok
+= rootn towardzero binary128 0x4p-128 -127LL : 0x1.fd3693bc9129491f39d15718c592p+0 : inexact-ok
+= rootn upward binary128 0x4p-128 -127LL : 0x1.fd3693bc9129491f39d15718c593p+0 : inexact-ok
+= rootn downward ibm128 0x4p-128 -127LL : 0x1.fd3693bc9129491f39d15718c58p+0 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 -127LL : 0x1.fd3693bc9129491f39d15718c58p+0 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 -127LL : 0x1.fd3693bc9129491f39d15718c58p+0 : inexact-ok
+= rootn upward ibm128 0x4p-128 -127LL : 0x1.fd3693bc9129491f39d15718c6p+0 : inexact-ok
+= rootn downward binary64 0x4p-1024 -127LL : 0x1.0885a4135bf4bp+8 : inexact-ok
+= rootn tonearest binary64 0x4p-1024 -127LL : 0x1.0885a4135bf4cp+8 : inexact-ok
+= rootn towardzero binary64 0x4p-1024 -127LL : 0x1.0885a4135bf4bp+8 : inexact-ok
+= rootn upward binary64 0x4p-1024 -127LL : 0x1.0885a4135bf4cp+8 : inexact-ok
+= rootn downward intel96 0x4p-1024 -127LL : 0x1.0885a4135bf4bad2p+8 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 -127LL : 0x1.0885a4135bf4bad4p+8 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 -127LL : 0x1.0885a4135bf4bad2p+8 : inexact-ok
+= rootn upward intel96 0x4p-1024 -127LL : 0x1.0885a4135bf4bad4p+8 : inexact-ok
+= rootn downward m68k96 0x4p-1024 -127LL : 0x1.0885a4135bf4bad2p+8 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 -127LL : 0x1.0885a4135bf4bad4p+8 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 -127LL : 0x1.0885a4135bf4bad2p+8 : inexact-ok
+= rootn upward m68k96 0x4p-1024 -127LL : 0x1.0885a4135bf4bad4p+8 : inexact-ok
+= rootn downward binary128 0x4p-1024 -127LL : 0x1.0885a4135bf4bad32e4113d2879bp+8 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 -127LL : 0x1.0885a4135bf4bad32e4113d2879cp+8 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 -127LL : 0x1.0885a4135bf4bad32e4113d2879bp+8 : inexact-ok
+= rootn upward binary128 0x4p-1024 -127LL : 0x1.0885a4135bf4bad32e4113d2879cp+8 : inexact-ok
+= rootn downward ibm128 0x4p-1024 -127LL : 0x1.0885a4135bf4bad32e4113d2878p+8 : inexact-ok
+= rootn tonearest ibm128 0x4p-1024 -127LL : 0x1.0885a4135bf4bad32e4113d2878p+8 : inexact-ok
+= rootn towardzero ibm128 0x4p-1024 -127LL : 0x1.0885a4135bf4bad32e4113d2878p+8 : inexact-ok
+= rootn upward ibm128 0x4p-1024 -127LL : 0x1.0885a4135bf4bad32e4113d288p+8 : inexact-ok
+= rootn downward intel96 0x4p-16384 -127LL : 0x1.fd3693bc9129491ep+128 : inexact-ok
+= rootn tonearest intel96 0x4p-16384 -127LL : 0x1.fd3693bc9129492p+128 : inexact-ok
+= rootn towardzero intel96 0x4p-16384 -127LL : 0x1.fd3693bc9129491ep+128 : inexact-ok
+= rootn upward intel96 0x4p-16384 -127LL : 0x1.fd3693bc9129492p+128 : inexact-ok
+= rootn downward m68k96 0x4p-16384 -127LL : 0x1.fd3693bc9129491ep+128 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 -127LL : 0x1.fd3693bc9129492p+128 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 -127LL : 0x1.fd3693bc9129491ep+128 : inexact-ok
+= rootn upward m68k96 0x4p-16384 -127LL : 0x1.fd3693bc9129492p+128 : inexact-ok
+= rootn downward binary128 0x4p-16384 -127LL : 0x1.fd3693bc9129491f39d15718c592p+128 : inexact-ok
+= rootn tonearest binary128 0x4p-16384 -127LL : 0x1.fd3693bc9129491f39d15718c593p+128 : inexact-ok
+= rootn towardzero binary128 0x4p-16384 -127LL : 0x1.fd3693bc9129491f39d15718c592p+128 : inexact-ok
+= rootn upward binary128 0x4p-16384 -127LL : 0x1.fd3693bc9129491f39d15718c593p+128 : inexact-ok
+= rootn downward intel96 0x2p-16384 -127LL : 0x2p+128 : inexact-ok
+= rootn tonearest intel96 0x2p-16384 -127LL : 0x2p+128 : inexact-ok
+= rootn towardzero intel96 0x2p-16384 -127LL : 0x2p+128 : inexact-ok
+= rootn upward intel96 0x2p-16384 -127LL : 0x2p+128 : inexact-ok
+= rootn downward m68k96 0x2p-16384 -127LL : 0x2p+128 : inexact-ok
+= rootn tonearest m68k96 0x2p-16384 -127LL : 0x2p+128 : inexact-ok
+= rootn towardzero m68k96 0x2p-16384 -127LL : 0x2p+128 : inexact-ok
+= rootn upward m68k96 0x2p-16384 -127LL : 0x2p+128 : inexact-ok
+= rootn downward binary128 0x2p-16384 -127LL : 0x2p+128 : inexact-ok
+= rootn tonearest binary128 0x2p-16384 -127LL : 0x2p+128 : inexact-ok
+= rootn towardzero binary128 0x2p-16384 -127LL : 0x2p+128 : inexact-ok
+= rootn upward binary128 0x2p-16384 -127LL : 0x2p+128 : inexact-ok
+= rootn downward binary64 0x8p-972 -127LL : 0xc.613d792293fbp+4 : inexact-ok
+= rootn tonearest binary64 0x8p-972 -127LL : 0xc.613d792293fbp+4 : inexact-ok
+= rootn towardzero binary64 0x8p-972 -127LL : 0xc.613d792293fbp+4 : inexact-ok
+= rootn upward binary64 0x8p-972 -127LL : 0xc.613d792293fb8p+4 : inexact-ok
+= rootn downward intel96 0x8p-972 -127LL : 0xc.613d792293fb361p+4 : inexact-ok
+= rootn tonearest intel96 0x8p-972 -127LL : 0xc.613d792293fb362p+4 : inexact-ok
+= rootn towardzero intel96 0x8p-972 -127LL : 0xc.613d792293fb361p+4 : inexact-ok
+= rootn upward intel96 0x8p-972 -127LL : 0xc.613d792293fb362p+4 : inexact-ok
+= rootn downward m68k96 0x8p-972 -127LL : 0xc.613d792293fb361p+4 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 -127LL : 0xc.613d792293fb362p+4 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 -127LL : 0xc.613d792293fb361p+4 : inexact-ok
+= rootn upward m68k96 0x8p-972 -127LL : 0xc.613d792293fb362p+4 : inexact-ok
+= rootn downward binary128 0x8p-972 -127LL : 0xc.613d792293fb3618b866301814bp+4 : inexact-ok
+= rootn tonearest binary128 0x8p-972 -127LL : 0xc.613d792293fb3618b866301814b8p+4 : inexact-ok
+= rootn towardzero binary128 0x8p-972 -127LL : 0xc.613d792293fb3618b866301814bp+4 : inexact-ok
+= rootn upward binary128 0x8p-972 -127LL : 0xc.613d792293fb3618b866301814b8p+4 : inexact-ok
+= rootn downward ibm128 0x8p-972 -127LL : 0xc.613d792293fb3618b866301814p+4 : inexact-ok
+= rootn tonearest ibm128 0x8p-972 -127LL : 0xc.613d792293fb3618b866301814p+4 : inexact-ok
+= rootn towardzero ibm128 0x8p-972 -127LL : 0xc.613d792293fb3618b866301814p+4 : inexact-ok
+= rootn upward ibm128 0x8p-972 -127LL : 0xc.613d792293fb3618b866301818p+4 : inexact-ok
+rootn min -255
+= rootn downward binary32 0x4p-128 -255LL : 0x1.6890c6p+0 : inexact-ok
+= rootn tonearest binary32 0x4p-128 -255LL : 0x1.6890c6p+0 : inexact-ok
+= rootn towardzero binary32 0x4p-128 -255LL : 0x1.6890c6p+0 : inexact-ok
+= rootn upward binary32 0x4p-128 -255LL : 0x1.6890c8p+0 : inexact-ok
+= rootn downward binary64 0x4p-128 -255LL : 0x1.6890c62b6ee1cp+0 : inexact-ok
+= rootn tonearest binary64 0x4p-128 -255LL : 0x1.6890c62b6ee1dp+0 : inexact-ok
+= rootn towardzero binary64 0x4p-128 -255LL : 0x1.6890c62b6ee1cp+0 : inexact-ok
+= rootn upward binary64 0x4p-128 -255LL : 0x1.6890c62b6ee1dp+0 : inexact-ok
+= rootn downward intel96 0x4p-128 -255LL : 0x1.6890c62b6ee1c9d6p+0 : inexact-ok
+= rootn tonearest intel96 0x4p-128 -255LL : 0x1.6890c62b6ee1c9d6p+0 : inexact-ok
+= rootn towardzero intel96 0x4p-128 -255LL : 0x1.6890c62b6ee1c9d6p+0 : inexact-ok
+= rootn upward intel96 0x4p-128 -255LL : 0x1.6890c62b6ee1c9d8p+0 : inexact-ok
+= rootn downward m68k96 0x4p-128 -255LL : 0x1.6890c62b6ee1c9d6p+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 -255LL : 0x1.6890c62b6ee1c9d6p+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 -255LL : 0x1.6890c62b6ee1c9d6p+0 : inexact-ok
+= rootn upward m68k96 0x4p-128 -255LL : 0x1.6890c62b6ee1c9d8p+0 : inexact-ok
+= rootn downward binary128 0x4p-128 -255LL : 0x1.6890c62b6ee1c9d6c1792ff0f025p+0 : inexact-ok
+= rootn tonearest binary128 0x4p-128 -255LL : 0x1.6890c62b6ee1c9d6c1792ff0f025p+0 : inexact-ok
+= rootn towardzero binary128 0x4p-128 -255LL : 0x1.6890c62b6ee1c9d6c1792ff0f025p+0 : inexact-ok
+= rootn upward binary128 0x4p-128 -255LL : 0x1.6890c62b6ee1c9d6c1792ff0f026p+0 : inexact-ok
+= rootn downward ibm128 0x4p-128 -255LL : 0x1.6890c62b6ee1c9d6c1792ff0fp+0 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 -255LL : 0x1.6890c62b6ee1c9d6c1792ff0fp+0 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 -255LL : 0x1.6890c62b6ee1c9d6c1792ff0fp+0 : inexact-ok
+= rootn upward ibm128 0x4p-128 -255LL : 0x1.6890c62b6ee1c9d6c1792ff0f08p+0 : inexact-ok
+= rootn downward binary64 0x4p-1024 -255LL : 0x1.016540d865a43p+4 : inexact-ok
+= rootn tonearest binary64 0x4p-1024 -255LL : 0x1.016540d865a44p+4 : inexact-ok
+= rootn towardzero binary64 0x4p-1024 -255LL : 0x1.016540d865a43p+4 : inexact-ok
+= rootn upward binary64 0x4p-1024 -255LL : 0x1.016540d865a44p+4 : inexact-ok
+= rootn downward intel96 0x4p-1024 -255LL : 0x1.016540d865a43a34p+4 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 -255LL : 0x1.016540d865a43a34p+4 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 -255LL : 0x1.016540d865a43a34p+4 : inexact-ok
+= rootn upward intel96 0x4p-1024 -255LL : 0x1.016540d865a43a36p+4 : inexact-ok
+= rootn downward m68k96 0x4p-1024 -255LL : 0x1.016540d865a43a34p+4 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 -255LL : 0x1.016540d865a43a34p+4 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 -255LL : 0x1.016540d865a43a34p+4 : inexact-ok
+= rootn upward m68k96 0x4p-1024 -255LL : 0x1.016540d865a43a36p+4 : inexact-ok
+= rootn downward binary128 0x4p-1024 -255LL : 0x1.016540d865a43a343fd329a96973p+4 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 -255LL : 0x1.016540d865a43a343fd329a96974p+4 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 -255LL : 0x1.016540d865a43a343fd329a96973p+4 : inexact-ok
+= rootn upward binary128 0x4p-1024 -255LL : 0x1.016540d865a43a343fd329a96974p+4 : inexact-ok
+= rootn downward ibm128 0x4p-1024 -255LL : 0x1.016540d865a43a343fd329a969p+4 : inexact-ok
+= rootn tonearest ibm128 0x4p-1024 -255LL : 0x1.016540d865a43a343fd329a9698p+4 : inexact-ok
+= rootn towardzero ibm128 0x4p-1024 -255LL : 0x1.016540d865a43a343fd329a969p+4 : inexact-ok
+= rootn upward ibm128 0x4p-1024 -255LL : 0x1.016540d865a43a343fd329a9698p+4 : inexact-ok
+= rootn downward intel96 0x4p-16384 -255LL : 0x1.2efe067871304922p+64 : inexact-ok
+= rootn tonearest intel96 0x4p-16384 -255LL : 0x1.2efe067871304924p+64 : inexact-ok
+= rootn towardzero intel96 0x4p-16384 -255LL : 0x1.2efe067871304922p+64 : inexact-ok
+= rootn upward intel96 0x4p-16384 -255LL : 0x1.2efe067871304924p+64 : inexact-ok
+= rootn downward m68k96 0x4p-16384 -255LL : 0x1.2efe067871304922p+64 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 -255LL : 0x1.2efe067871304924p+64 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 -255LL : 0x1.2efe067871304922p+64 : inexact-ok
+= rootn upward m68k96 0x4p-16384 -255LL : 0x1.2efe067871304924p+64 : inexact-ok
+= rootn downward binary128 0x4p-16384 -255LL : 0x1.2efe06787130492385df04419238p+64 : inexact-ok
+= rootn tonearest binary128 0x4p-16384 -255LL : 0x1.2efe06787130492385df04419239p+64 : inexact-ok
+= rootn towardzero binary128 0x4p-16384 -255LL : 0x1.2efe06787130492385df04419238p+64 : inexact-ok
+= rootn upward binary128 0x4p-16384 -255LL : 0x1.2efe06787130492385df04419239p+64 : inexact-ok
+= rootn downward intel96 0x2p-16384 -255LL : 0x1.2fd12768caa65be8p+64 : inexact-ok
+= rootn tonearest intel96 0x2p-16384 -255LL : 0x1.2fd12768caa65be8p+64 : inexact-ok
+= rootn towardzero intel96 0x2p-16384 -255LL : 0x1.2fd12768caa65be8p+64 : inexact-ok
+= rootn upward intel96 0x2p-16384 -255LL : 0x1.2fd12768caa65beap+64 : inexact-ok
+= rootn downward m68k96 0x2p-16384 -255LL : 0x1.2fd12768caa65be8p+64 : inexact-ok
+= rootn tonearest m68k96 0x2p-16384 -255LL : 0x1.2fd12768caa65be8p+64 : inexact-ok
+= rootn towardzero m68k96 0x2p-16384 -255LL : 0x1.2fd12768caa65be8p+64 : inexact-ok
+= rootn upward m68k96 0x2p-16384 -255LL : 0x1.2fd12768caa65beap+64 : inexact-ok
+= rootn downward binary128 0x2p-16384 -255LL : 0x1.2fd12768caa65be8a59aba280dap+64 : inexact-ok
+= rootn tonearest binary128 0x2p-16384 -255LL : 0x1.2fd12768caa65be8a59aba280dap+64 : inexact-ok
+= rootn towardzero binary128 0x2p-16384 -255LL : 0x1.2fd12768caa65be8a59aba280dap+64 : inexact-ok
+= rootn upward binary128 0x2p-16384 -255LL : 0x1.2fd12768caa65be8a59aba280da1p+64 : inexact-ok
+= rootn downward binary64 0x8p-972 -255LL : 0xd.edc66d6df09p+0 : inexact-ok
+= rootn tonearest binary64 0x8p-972 -255LL : 0xd.edc66d6df09p+0 : inexact-ok
+= rootn towardzero binary64 0x8p-972 -255LL : 0xd.edc66d6df09p+0 : inexact-ok
+= rootn upward binary64 0x8p-972 -255LL : 0xd.edc66d6df0908p+0 : inexact-ok
+= rootn downward intel96 0x8p-972 -255LL : 0xd.edc66d6df09010ap+0 : inexact-ok
+= rootn tonearest intel96 0x8p-972 -255LL : 0xd.edc66d6df09010ap+0 : inexact-ok
+= rootn towardzero intel96 0x8p-972 -255LL : 0xd.edc66d6df09010ap+0 : inexact-ok
+= rootn upward intel96 0x8p-972 -255LL : 0xd.edc66d6df09010bp+0 : inexact-ok
+= rootn downward m68k96 0x8p-972 -255LL : 0xd.edc66d6df09010ap+0 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 -255LL : 0xd.edc66d6df09010ap+0 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 -255LL : 0xd.edc66d6df09010ap+0 : inexact-ok
+= rootn upward m68k96 0x8p-972 -255LL : 0xd.edc66d6df09010bp+0 : inexact-ok
+= rootn downward binary128 0x8p-972 -255LL : 0xd.edc66d6df09010a7b0e98593fd48p+0 : inexact-ok
+= rootn tonearest binary128 0x8p-972 -255LL : 0xd.edc66d6df09010a7b0e98593fd48p+0 : inexact-ok
+= rootn towardzero binary128 0x8p-972 -255LL : 0xd.edc66d6df09010a7b0e98593fd48p+0 : inexact-ok
+= rootn upward binary128 0x8p-972 -255LL : 0xd.edc66d6df09010a7b0e98593fd5p+0 : inexact-ok
+= rootn downward ibm128 0x8p-972 -255LL : 0xd.edc66d6df09010a7b0e98593fcp+0 : inexact-ok
+= rootn tonearest ibm128 0x8p-972 -255LL : 0xd.edc66d6df09010a7b0e98593fcp+0 : inexact-ok
+= rootn towardzero ibm128 0x8p-972 -255LL : 0xd.edc66d6df09010a7b0e98593fcp+0 : inexact-ok
+= rootn upward ibm128 0x8p-972 -255LL : 0xd.edc66d6df09010a7b0e98594p+0 : inexact-ok
+rootn min -511
+= rootn downward binary32 0x4p-128 -511LL : 0x1.2fb716p+0 : inexact-ok
+= rootn tonearest binary32 0x4p-128 -511LL : 0x1.2fb718p+0 : inexact-ok
+= rootn towardzero binary32 0x4p-128 -511LL : 0x1.2fb716p+0 : inexact-ok
+= rootn upward binary32 0x4p-128 -511LL : 0x1.2fb718p+0 : inexact-ok
+= rootn downward binary64 0x4p-128 -511LL : 0x1.2fb717e61b14ep+0 : inexact-ok
+= rootn tonearest binary64 0x4p-128 -511LL : 0x1.2fb717e61b14fp+0 : inexact-ok
+= rootn towardzero binary64 0x4p-128 -511LL : 0x1.2fb717e61b14ep+0 : inexact-ok
+= rootn upward binary64 0x4p-128 -511LL : 0x1.2fb717e61b14fp+0 : inexact-ok
+= rootn downward intel96 0x4p-128 -511LL : 0x1.2fb717e61b14e9bcp+0 : inexact-ok
+= rootn tonearest intel96 0x4p-128 -511LL : 0x1.2fb717e61b14e9bep+0 : inexact-ok
+= rootn towardzero intel96 0x4p-128 -511LL : 0x1.2fb717e61b14e9bcp+0 : inexact-ok
+= rootn upward intel96 0x4p-128 -511LL : 0x1.2fb717e61b14e9bep+0 : inexact-ok
+= rootn downward m68k96 0x4p-128 -511LL : 0x1.2fb717e61b14e9bcp+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 -511LL : 0x1.2fb717e61b14e9bep+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 -511LL : 0x1.2fb717e61b14e9bcp+0 : inexact-ok
+= rootn upward m68k96 0x4p-128 -511LL : 0x1.2fb717e61b14e9bep+0 : inexact-ok
+= rootn downward binary128 0x4p-128 -511LL : 0x1.2fb717e61b14e9bdee7794813d55p+0 : inexact-ok
+= rootn tonearest binary128 0x4p-128 -511LL : 0x1.2fb717e61b14e9bdee7794813d55p+0 : inexact-ok
+= rootn towardzero binary128 0x4p-128 -511LL : 0x1.2fb717e61b14e9bdee7794813d55p+0 : inexact-ok
+= rootn upward binary128 0x4p-128 -511LL : 0x1.2fb717e61b14e9bdee7794813d56p+0 : inexact-ok
+= rootn downward ibm128 0x4p-128 -511LL : 0x1.2fb717e61b14e9bdee7794813dp+0 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 -511LL : 0x1.2fb717e61b14e9bdee7794813d8p+0 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 -511LL : 0x1.2fb717e61b14e9bdee7794813dp+0 : inexact-ok
+= rootn upward ibm128 0x4p-128 -511LL : 0x1.2fb717e61b14e9bdee7794813d8p+0 : inexact-ok
+= rootn downward binary64 0x4p-1024 -511LL : 0x4p+0 : inexact-ok
+= rootn tonearest binary64 0x4p-1024 -511LL : 0x4p+0 : inexact-ok
+= rootn towardzero binary64 0x4p-1024 -511LL : 0x4p+0 : inexact-ok
+= rootn upward binary64 0x4p-1024 -511LL : 0x4p+0 : inexact-ok
+= rootn downward intel96 0x4p-1024 -511LL : 0x4p+0 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 -511LL : 0x4p+0 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 -511LL : 0x4p+0 : inexact-ok
+= rootn upward intel96 0x4p-1024 -511LL : 0x4p+0 : inexact-ok
+= rootn downward m68k96 0x4p-1024 -511LL : 0x4p+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 -511LL : 0x4p+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 -511LL : 0x4p+0 : inexact-ok
+= rootn upward m68k96 0x4p-1024 -511LL : 0x4p+0 : inexact-ok
+= rootn downward binary128 0x4p-1024 -511LL : 0x4p+0 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 -511LL : 0x4p+0 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 -511LL : 0x4p+0 : inexact-ok
+= rootn upward binary128 0x4p-1024 -511LL : 0x4p+0 : inexact-ok
+= rootn downward ibm128 0x4p-1024 -511LL : 0x4p+0 : inexact-ok
+= rootn tonearest ibm128 0x4p-1024 -511LL : 0x4p+0 : inexact-ok
+= rootn towardzero ibm128 0x4p-1024 -511LL : 0x4p+0 : inexact-ok
+= rootn upward ibm128 0x4p-1024 -511LL : 0x4p+0 : inexact-ok
+= rootn downward intel96 0x4p-16384 -511LL : 0x1.0aa1e67805449f28p+32 : inexact-ok
+= rootn tonearest intel96 0x4p-16384 -511LL : 0x1.0aa1e67805449f2ap+32 : inexact-ok
+= rootn towardzero intel96 0x4p-16384 -511LL : 0x1.0aa1e67805449f28p+32 : inexact-ok
+= rootn upward intel96 0x4p-16384 -511LL : 0x1.0aa1e67805449f2ap+32 : inexact-ok
+= rootn downward m68k96 0x4p-16384 -511LL : 0x1.0aa1e67805449f28p+32 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 -511LL : 0x1.0aa1e67805449f2ap+32 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 -511LL : 0x1.0aa1e67805449f28p+32 : inexact-ok
+= rootn upward m68k96 0x4p-16384 -511LL : 0x1.0aa1e67805449f2ap+32 : inexact-ok
+= rootn downward binary128 0x4p-16384 -511LL : 0x1.0aa1e67805449f2930c6cbcdc0b4p+32 : inexact-ok
+= rootn tonearest binary128 0x4p-16384 -511LL : 0x1.0aa1e67805449f2930c6cbcdc0b5p+32 : inexact-ok
+= rootn towardzero binary128 0x4p-16384 -511LL : 0x1.0aa1e67805449f2930c6cbcdc0b4p+32 : inexact-ok
+= rootn upward binary128 0x4p-16384 -511LL : 0x1.0aa1e67805449f2930c6cbcdc0b5p+32 : inexact-ok
+= rootn downward intel96 0x2p-16384 -511LL : 0x1.0afe8d3b532c309p+32 : inexact-ok
+= rootn tonearest intel96 0x2p-16384 -511LL : 0x1.0afe8d3b532c309p+32 : inexact-ok
+= rootn towardzero intel96 0x2p-16384 -511LL : 0x1.0afe8d3b532c309p+32 : inexact-ok
+= rootn upward intel96 0x2p-16384 -511LL : 0x1.0afe8d3b532c3092p+32 : inexact-ok
+= rootn downward m68k96 0x2p-16384 -511LL : 0x1.0afe8d3b532c309p+32 : inexact-ok
+= rootn tonearest m68k96 0x2p-16384 -511LL : 0x1.0afe8d3b532c309p+32 : inexact-ok
+= rootn towardzero m68k96 0x2p-16384 -511LL : 0x1.0afe8d3b532c309p+32 : inexact-ok
+= rootn upward m68k96 0x2p-16384 -511LL : 0x1.0afe8d3b532c3092p+32 : inexact-ok
+= rootn downward binary128 0x2p-16384 -511LL : 0x1.0afe8d3b532c3090882ee932f25bp+32 : inexact-ok
+= rootn tonearest binary128 0x2p-16384 -511LL : 0x1.0afe8d3b532c3090882ee932f25cp+32 : inexact-ok
+= rootn towardzero binary128 0x2p-16384 -511LL : 0x1.0afe8d3b532c3090882ee932f25bp+32 : inexact-ok
+= rootn upward binary128 0x2p-16384 -511LL : 0x1.0afe8d3b532c3090882ee932f25cp+32 : inexact-ok
+= rootn downward binary64 0x8p-972 -511LL : 0x3.b8f7715bac2c2p+0 : inexact-ok
+= rootn tonearest binary64 0x8p-972 -511LL : 0x3.b8f7715bac2c2p+0 : inexact-ok
+= rootn towardzero binary64 0x8p-972 -511LL : 0x3.b8f7715bac2c2p+0 : inexact-ok
+= rootn upward binary64 0x8p-972 -511LL : 0x3.b8f7715bac2c4p+0 : inexact-ok
+= rootn downward intel96 0x8p-972 -511LL : 0x3.b8f7715bac2c23bcp+0 : inexact-ok
+= rootn tonearest intel96 0x8p-972 -511LL : 0x3.b8f7715bac2c23cp+0 : inexact-ok
+= rootn towardzero intel96 0x8p-972 -511LL : 0x3.b8f7715bac2c23bcp+0 : inexact-ok
+= rootn upward intel96 0x8p-972 -511LL : 0x3.b8f7715bac2c23cp+0 : inexact-ok
+= rootn downward m68k96 0x8p-972 -511LL : 0x3.b8f7715bac2c23bcp+0 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 -511LL : 0x3.b8f7715bac2c23cp+0 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 -511LL : 0x3.b8f7715bac2c23bcp+0 : inexact-ok
+= rootn upward m68k96 0x8p-972 -511LL : 0x3.b8f7715bac2c23cp+0 : inexact-ok
+= rootn downward binary128 0x8p-972 -511LL : 0x3.b8f7715bac2c23be155335c3c65ap+0 : inexact-ok
+= rootn tonearest binary128 0x8p-972 -511LL : 0x3.b8f7715bac2c23be155335c3c65ap+0 : inexact-ok
+= rootn towardzero binary128 0x8p-972 -511LL : 0x3.b8f7715bac2c23be155335c3c65ap+0 : inexact-ok
+= rootn upward binary128 0x8p-972 -511LL : 0x3.b8f7715bac2c23be155335c3c65cp+0 : inexact-ok
+= rootn downward ibm128 0x8p-972 -511LL : 0x3.b8f7715bac2c23be155335c3c6p+0 : inexact-ok
+= rootn tonearest ibm128 0x8p-972 -511LL : 0x3.b8f7715bac2c23be155335c3c6p+0 : inexact-ok
+= rootn towardzero ibm128 0x8p-972 -511LL : 0x3.b8f7715bac2c23be155335c3c6p+0 : inexact-ok
+= rootn upward ibm128 0x8p-972 -511LL : 0x3.b8f7715bac2c23be155335c3c7p+0 : inexact-ok
+rootn min -1023
+= rootn downward binary32 0x4p-128 -1023LL : 0x1.16d0c6p+0 : inexact-ok
+= rootn tonearest binary32 0x4p-128 -1023LL : 0x1.16d0c8p+0 : inexact-ok
+= rootn towardzero binary32 0x4p-128 -1023LL : 0x1.16d0c6p+0 : inexact-ok
+= rootn upward binary32 0x4p-128 -1023LL : 0x1.16d0c8p+0 : inexact-ok
+= rootn downward binary64 0x4p-128 -1023LL : 0x1.16d0c722590bcp+0 : inexact-ok
+= rootn tonearest binary64 0x4p-128 -1023LL : 0x1.16d0c722590bdp+0 : inexact-ok
+= rootn towardzero binary64 0x4p-128 -1023LL : 0x1.16d0c722590bcp+0 : inexact-ok
+= rootn upward binary64 0x4p-128 -1023LL : 0x1.16d0c722590bdp+0 : inexact-ok
+= rootn downward intel96 0x4p-128 -1023LL : 0x1.16d0c722590bceb6p+0 : inexact-ok
+= rootn tonearest intel96 0x4p-128 -1023LL : 0x1.16d0c722590bceb6p+0 : inexact-ok
+= rootn towardzero intel96 0x4p-128 -1023LL : 0x1.16d0c722590bceb6p+0 : inexact-ok
+= rootn upward intel96 0x4p-128 -1023LL : 0x1.16d0c722590bceb8p+0 : inexact-ok
+= rootn downward m68k96 0x4p-128 -1023LL : 0x1.16d0c722590bceb6p+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 -1023LL : 0x1.16d0c722590bceb6p+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 -1023LL : 0x1.16d0c722590bceb6p+0 : inexact-ok
+= rootn upward m68k96 0x4p-128 -1023LL : 0x1.16d0c722590bceb8p+0 : inexact-ok
+= rootn downward binary128 0x4p-128 -1023LL : 0x1.16d0c722590bceb6f5f68d1fe41bp+0 : inexact-ok
+= rootn tonearest binary128 0x4p-128 -1023LL : 0x1.16d0c722590bceb6f5f68d1fe41bp+0 : inexact-ok
+= rootn towardzero binary128 0x4p-128 -1023LL : 0x1.16d0c722590bceb6f5f68d1fe41bp+0 : inexact-ok
+= rootn upward binary128 0x4p-128 -1023LL : 0x1.16d0c722590bceb6f5f68d1fe41cp+0 : inexact-ok
+= rootn downward ibm128 0x4p-128 -1023LL : 0x1.16d0c722590bceb6f5f68d1fe4p+0 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 -1023LL : 0x1.16d0c722590bceb6f5f68d1fe4p+0 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 -1023LL : 0x1.16d0c722590bceb6f5f68d1fe4p+0 : inexact-ok
+= rootn upward ibm128 0x4p-128 -1023LL : 0x1.16d0c722590bceb6f5f68d1fe48p+0 : inexact-ok
+= rootn downward binary64 0x4p-1024 -1023LL : 0x1.ffa738738b109p+0 : inexact-ok
+= rootn tonearest binary64 0x4p-1024 -1023LL : 0x1.ffa738738b10ap+0 : inexact-ok
+= rootn towardzero binary64 0x4p-1024 -1023LL : 0x1.ffa738738b109p+0 : inexact-ok
+= rootn upward binary64 0x4p-1024 -1023LL : 0x1.ffa738738b10ap+0 : inexact-ok
+= rootn downward intel96 0x4p-1024 -1023LL : 0x1.ffa738738b109c4p+0 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 -1023LL : 0x1.ffa738738b109c4p+0 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 -1023LL : 0x1.ffa738738b109c4p+0 : inexact-ok
+= rootn upward intel96 0x4p-1024 -1023LL : 0x1.ffa738738b109c42p+0 : inexact-ok
+= rootn downward m68k96 0x4p-1024 -1023LL : 0x1.ffa738738b109c4p+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 -1023LL : 0x1.ffa738738b109c4p+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 -1023LL : 0x1.ffa738738b109c4p+0 : inexact-ok
+= rootn upward m68k96 0x4p-1024 -1023LL : 0x1.ffa738738b109c42p+0 : inexact-ok
+= rootn downward binary128 0x4p-1024 -1023LL : 0x1.ffa738738b109c406e08aeb4a89dp+0 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 -1023LL : 0x1.ffa738738b109c406e08aeb4a89dp+0 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 -1023LL : 0x1.ffa738738b109c406e08aeb4a89dp+0 : inexact-ok
+= rootn upward binary128 0x4p-1024 -1023LL : 0x1.ffa738738b109c406e08aeb4a89ep+0 : inexact-ok
+= rootn downward ibm128 0x4p-1024 -1023LL : 0x1.ffa738738b109c406e08aeb4a88p+0 : inexact-ok
+= rootn tonearest ibm128 0x4p-1024 -1023LL : 0x1.ffa738738b109c406e08aeb4a88p+0 : inexact-ok
+= rootn towardzero ibm128 0x4p-1024 -1023LL : 0x1.ffa738738b109c406e08aeb4a88p+0 : inexact-ok
+= rootn upward ibm128 0x4p-1024 -1023LL : 0x1.ffa738738b109c406e08aeb4a9p+0 : inexact-ok
+= rootn downward intel96 0x4p-16384 -1023LL : 0x1.02709ff5f03e12d2p+16 : inexact-ok
+= rootn tonearest intel96 0x4p-16384 -1023LL : 0x1.02709ff5f03e12d2p+16 : inexact-ok
+= rootn towardzero intel96 0x4p-16384 -1023LL : 0x1.02709ff5f03e12d2p+16 : inexact-ok
+= rootn upward intel96 0x4p-16384 -1023LL : 0x1.02709ff5f03e12d4p+16 : inexact-ok
+= rootn downward m68k96 0x4p-16384 -1023LL : 0x1.02709ff5f03e12d2p+16 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 -1023LL : 0x1.02709ff5f03e12d2p+16 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 -1023LL : 0x1.02709ff5f03e12d2p+16 : inexact-ok
+= rootn upward m68k96 0x4p-16384 -1023LL : 0x1.02709ff5f03e12d4p+16 : inexact-ok
+= rootn downward binary128 0x4p-16384 -1023LL : 0x1.02709ff5f03e12d238c033d01265p+16 : inexact-ok
+= rootn tonearest binary128 0x4p-16384 -1023LL : 0x1.02709ff5f03e12d238c033d01265p+16 : inexact-ok
+= rootn towardzero binary128 0x4p-16384 -1023LL : 0x1.02709ff5f03e12d238c033d01265p+16 : inexact-ok
+= rootn upward binary128 0x4p-16384 -1023LL : 0x1.02709ff5f03e12d238c033d01266p+16 : inexact-ok
+= rootn downward intel96 0x2p-16384 -1023LL : 0x1.029d77d1ae796a5ep+16 : inexact-ok
+= rootn tonearest intel96 0x2p-16384 -1023LL : 0x1.029d77d1ae796a6p+16 : inexact-ok
+= rootn towardzero intel96 0x2p-16384 -1023LL : 0x1.029d77d1ae796a5ep+16 : inexact-ok
+= rootn upward intel96 0x2p-16384 -1023LL : 0x1.029d77d1ae796a6p+16 : inexact-ok
+= rootn downward m68k96 0x2p-16384 -1023LL : 0x1.029d77d1ae796a5ep+16 : inexact-ok
+= rootn tonearest m68k96 0x2p-16384 -1023LL : 0x1.029d77d1ae796a6p+16 : inexact-ok
+= rootn towardzero m68k96 0x2p-16384 -1023LL : 0x1.029d77d1ae796a5ep+16 : inexact-ok
+= rootn upward m68k96 0x2p-16384 -1023LL : 0x1.029d77d1ae796a6p+16 : inexact-ok
+= rootn downward binary128 0x2p-16384 -1023LL : 0x1.029d77d1ae796a5f8d43eb370b8cp+16 : inexact-ok
+= rootn tonearest binary128 0x2p-16384 -1023LL : 0x1.029d77d1ae796a5f8d43eb370b8cp+16 : inexact-ok
+= rootn towardzero binary128 0x2p-16384 -1023LL : 0x1.029d77d1ae796a5f8d43eb370b8cp+16 : inexact-ok
+= rootn upward binary128 0x2p-16384 -1023LL : 0x1.029d77d1ae796a5f8d43eb370b8dp+16 : inexact-ok
+= rootn downward binary64 0x8p-972 -1023LL : 0x1.ed9af4f7d4d17p+0 : inexact-ok
+= rootn tonearest binary64 0x8p-972 -1023LL : 0x1.ed9af4f7d4d17p+0 : inexact-ok
+= rootn towardzero binary64 0x8p-972 -1023LL : 0x1.ed9af4f7d4d17p+0 : inexact-ok
+= rootn upward binary64 0x8p-972 -1023LL : 0x1.ed9af4f7d4d18p+0 : inexact-ok
+= rootn downward intel96 0x8p-972 -1023LL : 0x1.ed9af4f7d4d173dap+0 : inexact-ok
+= rootn tonearest intel96 0x8p-972 -1023LL : 0x1.ed9af4f7d4d173dcp+0 : inexact-ok
+= rootn towardzero intel96 0x8p-972 -1023LL : 0x1.ed9af4f7d4d173dap+0 : inexact-ok
+= rootn upward intel96 0x8p-972 -1023LL : 0x1.ed9af4f7d4d173dcp+0 : inexact-ok
+= rootn downward m68k96 0x8p-972 -1023LL : 0x1.ed9af4f7d4d173dap+0 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 -1023LL : 0x1.ed9af4f7d4d173dcp+0 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 -1023LL : 0x1.ed9af4f7d4d173dap+0 : inexact-ok
+= rootn upward m68k96 0x8p-972 -1023LL : 0x1.ed9af4f7d4d173dcp+0 : inexact-ok
+= rootn downward binary128 0x8p-972 -1023LL : 0x1.ed9af4f7d4d173db89301f3aa005p+0 : inexact-ok
+= rootn tonearest binary128 0x8p-972 -1023LL : 0x1.ed9af4f7d4d173db89301f3aa006p+0 : inexact-ok
+= rootn towardzero binary128 0x8p-972 -1023LL : 0x1.ed9af4f7d4d173db89301f3aa005p+0 : inexact-ok
+= rootn upward binary128 0x8p-972 -1023LL : 0x1.ed9af4f7d4d173db89301f3aa006p+0 : inexact-ok
+= rootn downward ibm128 0x8p-972 -1023LL : 0x1.ed9af4f7d4d173db89301f3aap+0 : inexact-ok
+= rootn tonearest ibm128 0x8p-972 -1023LL : 0x1.ed9af4f7d4d173db89301f3aap+0 : inexact-ok
+= rootn towardzero ibm128 0x8p-972 -1023LL : 0x1.ed9af4f7d4d173db89301f3aap+0 : inexact-ok
+= rootn upward ibm128 0x8p-972 -1023LL : 0x1.ed9af4f7d4d173db89301f3aa08p+0 : inexact-ok
+rootn min -16383
+= rootn downward binary32 0x4p-128 -16383LL : 0x1.015e4cp+0 : inexact-ok
+= rootn tonearest binary32 0x4p-128 -16383LL : 0x1.015e4cp+0 : inexact-ok
+= rootn towardzero binary32 0x4p-128 -16383LL : 0x1.015e4cp+0 : inexact-ok
+= rootn upward binary32 0x4p-128 -16383LL : 0x1.015e4ep+0 : inexact-ok
+= rootn downward binary64 0x4p-128 -16383LL : 0x1.015e4ce6130f7p+0 : inexact-ok
+= rootn tonearest binary64 0x4p-128 -16383LL : 0x1.015e4ce6130f8p+0 : inexact-ok
+= rootn towardzero binary64 0x4p-128 -16383LL : 0x1.015e4ce6130f7p+0 : inexact-ok
+= rootn upward binary64 0x4p-128 -16383LL : 0x1.015e4ce6130f8p+0 : inexact-ok
+= rootn downward intel96 0x4p-128 -16383LL : 0x1.015e4ce6130f7ee2p+0 : inexact-ok
+= rootn tonearest intel96 0x4p-128 -16383LL : 0x1.015e4ce6130f7ee2p+0 : inexact-ok
+= rootn towardzero intel96 0x4p-128 -16383LL : 0x1.015e4ce6130f7ee2p+0 : inexact-ok
+= rootn upward intel96 0x4p-128 -16383LL : 0x1.015e4ce6130f7ee4p+0 : inexact-ok
+= rootn downward m68k96 0x4p-128 -16383LL : 0x1.015e4ce6130f7ee2p+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 -16383LL : 0x1.015e4ce6130f7ee2p+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 -16383LL : 0x1.015e4ce6130f7ee2p+0 : inexact-ok
+= rootn upward m68k96 0x4p-128 -16383LL : 0x1.015e4ce6130f7ee4p+0 : inexact-ok
+= rootn downward binary128 0x4p-128 -16383LL : 0x1.015e4ce6130f7ee2e981ec907891p+0 : inexact-ok
+= rootn tonearest binary128 0x4p-128 -16383LL : 0x1.015e4ce6130f7ee2e981ec907891p+0 : inexact-ok
+= rootn towardzero binary128 0x4p-128 -16383LL : 0x1.015e4ce6130f7ee2e981ec907891p+0 : inexact-ok
+= rootn upward binary128 0x4p-128 -16383LL : 0x1.015e4ce6130f7ee2e981ec907892p+0 : inexact-ok
+= rootn downward ibm128 0x4p-128 -16383LL : 0x1.015e4ce6130f7ee2e981ec90788p+0 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 -16383LL : 0x1.015e4ce6130f7ee2e981ec90788p+0 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 -16383LL : 0x1.015e4ce6130f7ee2e981ec90788p+0 : inexact-ok
+= rootn upward ibm128 0x4p-128 -16383LL : 0x1.015e4ce6130f7ee2e981ec9079p+0 : inexact-ok
+= rootn downward binary64 0x4p-1024 -16383LL : 0x1.0b4feab150b79p+0 : inexact-ok
+= rootn tonearest binary64 0x4p-1024 -16383LL : 0x1.0b4feab150b79p+0 : inexact-ok
+= rootn towardzero binary64 0x4p-1024 -16383LL : 0x1.0b4feab150b79p+0 : inexact-ok
+= rootn upward binary64 0x4p-1024 -16383LL : 0x1.0b4feab150b7ap+0 : inexact-ok
+= rootn downward intel96 0x4p-1024 -16383LL : 0x1.0b4feab150b790e6p+0 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 -16383LL : 0x1.0b4feab150b790e6p+0 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 -16383LL : 0x1.0b4feab150b790e6p+0 : inexact-ok
+= rootn upward intel96 0x4p-1024 -16383LL : 0x1.0b4feab150b790e8p+0 : inexact-ok
+= rootn downward m68k96 0x4p-1024 -16383LL : 0x1.0b4feab150b790e6p+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 -16383LL : 0x1.0b4feab150b790e6p+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 -16383LL : 0x1.0b4feab150b790e6p+0 : inexact-ok
+= rootn upward m68k96 0x4p-1024 -16383LL : 0x1.0b4feab150b790e8p+0 : inexact-ok
+= rootn downward binary128 0x4p-1024 -16383LL : 0x1.0b4feab150b790e64c3d2be969d5p+0 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 -16383LL : 0x1.0b4feab150b790e64c3d2be969d6p+0 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 -16383LL : 0x1.0b4feab150b790e64c3d2be969d5p+0 : inexact-ok
+= rootn upward binary128 0x4p-1024 -16383LL : 0x1.0b4feab150b790e64c3d2be969d6p+0 : inexact-ok
+= rootn downward ibm128 0x4p-1024 -16383LL : 0x1.0b4feab150b790e64c3d2be9698p+0 : inexact-ok
+= rootn tonearest ibm128 0x4p-1024 -16383LL : 0x1.0b4feab150b790e64c3d2be96ap+0 : inexact-ok
+= rootn towardzero ibm128 0x4p-1024 -16383LL : 0x1.0b4feab150b790e64c3d2be9698p+0 : inexact-ok
+= rootn upward ibm128 0x4p-1024 -16383LL : 0x1.0b4feab150b790e64c3d2be96ap+0 : inexact-ok
+= rootn downward intel96 0x4p-16384 -16383LL : 0x1.fffa7460c1cb9dd6p+0 : inexact-ok
+= rootn tonearest intel96 0x4p-16384 -16383LL : 0x1.fffa7460c1cb9dd6p+0 : inexact-ok
+= rootn towardzero intel96 0x4p-16384 -16383LL : 0x1.fffa7460c1cb9dd6p+0 : inexact-ok
+= rootn upward intel96 0x4p-16384 -16383LL : 0x1.fffa7460c1cb9dd8p+0 : inexact-ok
+= rootn downward m68k96 0x4p-16384 -16383LL : 0x1.fffa7460c1cb9dd6p+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 -16383LL : 0x1.fffa7460c1cb9dd6p+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 -16383LL : 0x1.fffa7460c1cb9dd6p+0 : inexact-ok
+= rootn upward m68k96 0x4p-16384 -16383LL : 0x1.fffa7460c1cb9dd8p+0 : inexact-ok
+= rootn downward binary128 0x4p-16384 -16383LL : 0x1.fffa7460c1cb9dd63b8068fab658p+0 : inexact-ok
+= rootn tonearest binary128 0x4p-16384 -16383LL : 0x1.fffa7460c1cb9dd63b8068fab658p+0 : inexact-ok
+= rootn towardzero binary128 0x4p-16384 -16383LL : 0x1.fffa7460c1cb9dd63b8068fab658p+0 : inexact-ok
+= rootn upward binary128 0x4p-16384 -16383LL : 0x1.fffa7460c1cb9dd63b8068fab659p+0 : inexact-ok
+= rootn downward intel96 0x2p-16384 -16383LL : 0x2p+0 : inexact-ok
+= rootn tonearest intel96 0x2p-16384 -16383LL : 0x2p+0 : inexact-ok
+= rootn towardzero intel96 0x2p-16384 -16383LL : 0x2p+0 : inexact-ok
+= rootn upward intel96 0x2p-16384 -16383LL : 0x2p+0 : inexact-ok
+= rootn downward m68k96 0x2p-16384 -16383LL : 0x2p+0 : inexact-ok
+= rootn tonearest m68k96 0x2p-16384 -16383LL : 0x2p+0 : inexact-ok
+= rootn towardzero m68k96 0x2p-16384 -16383LL : 0x2p+0 : inexact-ok
+= rootn upward m68k96 0x2p-16384 -16383LL : 0x2p+0 : inexact-ok
+= rootn downward binary128 0x2p-16384 -16383LL : 0x2p+0 : inexact-ok
+= rootn tonearest binary128 0x2p-16384 -16383LL : 0x2p+0 : inexact-ok
+= rootn towardzero binary128 0x2p-16384 -16383LL : 0x2p+0 : inexact-ok
+= rootn upward binary128 0x2p-16384 -16383LL : 0x2p+0 : inexact-ok
+= rootn downward binary64 0x8p-972 -16383LL : 0x1.0ab6a38794f2fp+0 : inexact-ok
+= rootn tonearest binary64 0x8p-972 -16383LL : 0x1.0ab6a38794f3p+0 : inexact-ok
+= rootn towardzero binary64 0x8p-972 -16383LL : 0x1.0ab6a38794f2fp+0 : inexact-ok
+= rootn upward binary64 0x8p-972 -16383LL : 0x1.0ab6a38794f3p+0 : inexact-ok
+= rootn downward intel96 0x8p-972 -16383LL : 0x1.0ab6a38794f2f838p+0 : inexact-ok
+= rootn tonearest intel96 0x8p-972 -16383LL : 0x1.0ab6a38794f2f83ap+0 : inexact-ok
+= rootn towardzero intel96 0x8p-972 -16383LL : 0x1.0ab6a38794f2f838p+0 : inexact-ok
+= rootn upward intel96 0x8p-972 -16383LL : 0x1.0ab6a38794f2f83ap+0 : inexact-ok
+= rootn downward m68k96 0x8p-972 -16383LL : 0x1.0ab6a38794f2f838p+0 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 -16383LL : 0x1.0ab6a38794f2f83ap+0 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 -16383LL : 0x1.0ab6a38794f2f838p+0 : inexact-ok
+= rootn upward m68k96 0x8p-972 -16383LL : 0x1.0ab6a38794f2f83ap+0 : inexact-ok
+= rootn downward binary128 0x8p-972 -16383LL : 0x1.0ab6a38794f2f83982b4770c4ce7p+0 : inexact-ok
+= rootn tonearest binary128 0x8p-972 -16383LL : 0x1.0ab6a38794f2f83982b4770c4ce7p+0 : inexact-ok
+= rootn towardzero binary128 0x8p-972 -16383LL : 0x1.0ab6a38794f2f83982b4770c4ce7p+0 : inexact-ok
+= rootn upward binary128 0x8p-972 -16383LL : 0x1.0ab6a38794f2f83982b4770c4ce8p+0 : inexact-ok
+= rootn downward ibm128 0x8p-972 -16383LL : 0x1.0ab6a38794f2f83982b4770c4c8p+0 : inexact-ok
+= rootn tonearest ibm128 0x8p-972 -16383LL : 0x1.0ab6a38794f2f83982b4770c4dp+0 : inexact-ok
+= rootn towardzero ibm128 0x8p-972 -16383LL : 0x1.0ab6a38794f2f83982b4770c4c8p+0 : inexact-ok
+= rootn upward ibm128 0x8p-972 -16383LL : 0x1.0ab6a38794f2f83982b4770c4dp+0 : inexact-ok
+rootn min -0x1000001
+= rootn downward binary32 0x4p-128 -16777217LL : 0x1.000056p+0 : inexact-ok
+= rootn tonearest binary32 0x4p-128 -16777217LL : 0x1.000058p+0 : inexact-ok
+= rootn towardzero binary32 0x4p-128 -16777217LL : 0x1.000056p+0 : inexact-ok
+= rootn upward binary32 0x4p-128 -16777217LL : 0x1.000058p+0 : inexact-ok
+= rootn downward binary64 0x4p-128 -16777217LL : 0x1.00005756365a7p+0 : inexact-ok
+= rootn tonearest binary64 0x4p-128 -16777217LL : 0x1.00005756365a8p+0 : inexact-ok
+= rootn towardzero binary64 0x4p-128 -16777217LL : 0x1.00005756365a7p+0 : inexact-ok
+= rootn upward binary64 0x4p-128 -16777217LL : 0x1.00005756365a8p+0 : inexact-ok
+= rootn downward intel96 0x4p-128 -16777217LL : 0x1.00005756365a7ab6p+0 : inexact-ok
+= rootn tonearest intel96 0x4p-128 -16777217LL : 0x1.00005756365a7ab6p+0 : inexact-ok
+= rootn towardzero intel96 0x4p-128 -16777217LL : 0x1.00005756365a7ab6p+0 : inexact-ok
+= rootn upward intel96 0x4p-128 -16777217LL : 0x1.00005756365a7ab8p+0 : inexact-ok
+= rootn downward m68k96 0x4p-128 -16777217LL : 0x1.00005756365a7ab6p+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 -16777217LL : 0x1.00005756365a7ab6p+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 -16777217LL : 0x1.00005756365a7ab6p+0 : inexact-ok
+= rootn upward m68k96 0x4p-128 -16777217LL : 0x1.00005756365a7ab8p+0 : inexact-ok
+= rootn downward binary128 0x4p-128 -16777217LL : 0x1.00005756365a7ab6461d7f30eb42p+0 : inexact-ok
+= rootn tonearest binary128 0x4p-128 -16777217LL : 0x1.00005756365a7ab6461d7f30eb42p+0 : inexact-ok
+= rootn towardzero binary128 0x4p-128 -16777217LL : 0x1.00005756365a7ab6461d7f30eb42p+0 : inexact-ok
+= rootn upward binary128 0x4p-128 -16777217LL : 0x1.00005756365a7ab6461d7f30eb43p+0 : inexact-ok
+= rootn downward ibm128 0x4p-128 -16777217LL : 0x1.00005756365a7ab6461d7f30ebp+0 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 -16777217LL : 0x1.00005756365a7ab6461d7f30eb8p+0 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 -16777217LL : 0x1.00005756365a7ab6461d7f30ebp+0 : inexact-ok
+= rootn upward ibm128 0x4p-128 -16777217LL : 0x1.00005756365a7ab6461d7f30eb8p+0 : inexact-ok
+= rootn downward binary64 0x4p-1024 -16777217LL : 0x1.0002c4694d0f3p+0 : inexact-ok
+= rootn tonearest binary64 0x4p-1024 -16777217LL : 0x1.0002c4694d0f3p+0 : inexact-ok
+= rootn towardzero binary64 0x4p-1024 -16777217LL : 0x1.0002c4694d0f3p+0 : inexact-ok
+= rootn upward binary64 0x4p-1024 -16777217LL : 0x1.0002c4694d0f4p+0 : inexact-ok
+= rootn downward intel96 0x4p-1024 -16777217LL : 0x1.0002c4694d0f30b8p+0 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 -16777217LL : 0x1.0002c4694d0f30bap+0 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 -16777217LL : 0x1.0002c4694d0f30b8p+0 : inexact-ok
+= rootn upward intel96 0x4p-1024 -16777217LL : 0x1.0002c4694d0f30bap+0 : inexact-ok
+= rootn downward m68k96 0x4p-1024 -16777217LL : 0x1.0002c4694d0f30b8p+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 -16777217LL : 0x1.0002c4694d0f30bap+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 -16777217LL : 0x1.0002c4694d0f30b8p+0 : inexact-ok
+= rootn upward m68k96 0x4p-1024 -16777217LL : 0x1.0002c4694d0f30bap+0 : inexact-ok
+= rootn downward binary128 0x4p-1024 -16777217LL : 0x1.0002c4694d0f30b98d5307ada184p+0 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 -16777217LL : 0x1.0002c4694d0f30b98d5307ada184p+0 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 -16777217LL : 0x1.0002c4694d0f30b98d5307ada184p+0 : inexact-ok
+= rootn upward binary128 0x4p-1024 -16777217LL : 0x1.0002c4694d0f30b98d5307ada185p+0 : inexact-ok
+= rootn downward ibm128 0x4p-1024 -16777217LL : 0x1.0002c4694d0f30b98d5307ada18p+0 : inexact-ok
+= rootn tonearest ibm128 0x4p-1024 -16777217LL : 0x1.0002c4694d0f30b98d5307ada18p+0 : inexact-ok
+= rootn towardzero ibm128 0x4p-1024 -16777217LL : 0x1.0002c4694d0f30b98d5307ada18p+0 : inexact-ok
+= rootn upward ibm128 0x4p-1024 -16777217LL : 0x1.0002c4694d0f30b98d5307ada2p+0 : inexact-ok
+= rootn downward intel96 0x4p-16384 -16777217LL : 0x1.002c5efae0764f68p+0 : inexact-ok
+= rootn tonearest intel96 0x4p-16384 -16777217LL : 0x1.002c5efae0764f6ap+0 : inexact-ok
+= rootn towardzero intel96 0x4p-16384 -16777217LL : 0x1.002c5efae0764f68p+0 : inexact-ok
+= rootn upward intel96 0x4p-16384 -16777217LL : 0x1.002c5efae0764f6ap+0 : inexact-ok
+= rootn downward m68k96 0x4p-16384 -16777217LL : 0x1.002c5efae0764f68p+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 -16777217LL : 0x1.002c5efae0764f6ap+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 -16777217LL : 0x1.002c5efae0764f68p+0 : inexact-ok
+= rootn upward m68k96 0x4p-16384 -16777217LL : 0x1.002c5efae0764f6ap+0 : inexact-ok
+= rootn downward binary128 0x4p-16384 -16777217LL : 0x1.002c5efae0764f698944b57bc6c4p+0 : inexact-ok
+= rootn tonearest binary128 0x4p-16384 -16777217LL : 0x1.002c5efae0764f698944b57bc6c4p+0 : inexact-ok
+= rootn towardzero binary128 0x4p-16384 -16777217LL : 0x1.002c5efae0764f698944b57bc6c4p+0 : inexact-ok
+= rootn upward binary128 0x4p-16384 -16777217LL : 0x1.002c5efae0764f698944b57bc6c5p+0 : inexact-ok
+= rootn downward intel96 0x2p-16384 -16777217LL : 0x1.002c5fac714f451cp+0 : inexact-ok
+= rootn tonearest intel96 0x2p-16384 -16777217LL : 0x1.002c5fac714f451ep+0 : inexact-ok
+= rootn towardzero intel96 0x2p-16384 -16777217LL : 0x1.002c5fac714f451cp+0 : inexact-ok
+= rootn upward intel96 0x2p-16384 -16777217LL : 0x1.002c5fac714f451ep+0 : inexact-ok
+= rootn downward m68k96 0x2p-16384 -16777217LL : 0x1.002c5fac714f451cp+0 : inexact-ok
+= rootn tonearest m68k96 0x2p-16384 -16777217LL : 0x1.002c5fac714f451ep+0 : inexact-ok
+= rootn towardzero m68k96 0x2p-16384 -16777217LL : 0x1.002c5fac714f451cp+0 : inexact-ok
+= rootn upward m68k96 0x2p-16384 -16777217LL : 0x1.002c5fac714f451ep+0 : inexact-ok
+= rootn downward binary128 0x2p-16384 -16777217LL : 0x1.002c5fac714f451d0aa0162a5991p+0 : inexact-ok
+= rootn tonearest binary128 0x2p-16384 -16777217LL : 0x1.002c5fac714f451d0aa0162a5992p+0 : inexact-ok
+= rootn towardzero binary128 0x2p-16384 -16777217LL : 0x1.002c5fac714f451d0aa0162a5991p+0 : inexact-ok
+= rootn upward binary128 0x2p-16384 -16777217LL : 0x1.002c5fac714f451d0aa0162a5992p+0 : inexact-ok
+= rootn downward binary64 0x8p-972 -16777217LL : 0x1.00029fac4b37ap+0 : inexact-ok
+= rootn tonearest binary64 0x8p-972 -16777217LL : 0x1.00029fac4b37bp+0 : inexact-ok
+= rootn towardzero binary64 0x8p-972 -16777217LL : 0x1.00029fac4b37ap+0 : inexact-ok
+= rootn upward binary64 0x8p-972 -16777217LL : 0x1.00029fac4b37bp+0 : inexact-ok
+= rootn downward intel96 0x8p-972 -16777217LL : 0x1.00029fac4b37ae3ep+0 : inexact-ok
+= rootn tonearest intel96 0x8p-972 -16777217LL : 0x1.00029fac4b37ae3ep+0 : inexact-ok
+= rootn towardzero intel96 0x8p-972 -16777217LL : 0x1.00029fac4b37ae3ep+0 : inexact-ok
+= rootn upward intel96 0x8p-972 -16777217LL : 0x1.00029fac4b37ae4p+0 : inexact-ok
+= rootn downward m68k96 0x8p-972 -16777217LL : 0x1.00029fac4b37ae3ep+0 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 -16777217LL : 0x1.00029fac4b37ae3ep+0 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 -16777217LL : 0x1.00029fac4b37ae3ep+0 : inexact-ok
+= rootn upward m68k96 0x8p-972 -16777217LL : 0x1.00029fac4b37ae4p+0 : inexact-ok
+= rootn downward binary128 0x8p-972 -16777217LL : 0x1.00029fac4b37ae3e1af6730bce14p+0 : inexact-ok
+= rootn tonearest binary128 0x8p-972 -16777217LL : 0x1.00029fac4b37ae3e1af6730bce15p+0 : inexact-ok
+= rootn towardzero binary128 0x8p-972 -16777217LL : 0x1.00029fac4b37ae3e1af6730bce14p+0 : inexact-ok
+= rootn upward binary128 0x8p-972 -16777217LL : 0x1.00029fac4b37ae3e1af6730bce15p+0 : inexact-ok
+= rootn downward ibm128 0x8p-972 -16777217LL : 0x1.00029fac4b37ae3e1af6730bcep+0 : inexact-ok
+= rootn tonearest ibm128 0x8p-972 -16777217LL : 0x1.00029fac4b37ae3e1af6730bcep+0 : inexact-ok
+= rootn towardzero ibm128 0x8p-972 -16777217LL : 0x1.00029fac4b37ae3e1af6730bcep+0 : inexact-ok
+= rootn upward ibm128 0x8p-972 -16777217LL : 0x1.00029fac4b37ae3e1af6730bce8p+0 : inexact-ok
+rootn min -0x10000000000001
+= rootn downward binary32 0x4p-128 -4503599627370497LL : 0x1p+0 : inexact-ok
+= rootn tonearest binary32 0x4p-128 -4503599627370497LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary32 0x4p-128 -4503599627370497LL : 0x1p+0 : inexact-ok
+= rootn upward binary32 0x4p-128 -4503599627370497LL : 0x1.000002p+0 : inexact-ok
+= rootn downward binary64 0x4p-128 -4503599627370497LL : 0x1.0000000000057p+0 : inexact-ok
+= rootn tonearest binary64 0x4p-128 -4503599627370497LL : 0x1.0000000000057p+0 : inexact-ok
+= rootn towardzero binary64 0x4p-128 -4503599627370497LL : 0x1.0000000000057p+0 : inexact-ok
+= rootn upward binary64 0x4p-128 -4503599627370497LL : 0x1.0000000000058p+0 : inexact-ok
+= rootn downward intel96 0x4p-128 -4503599627370497LL : 0x1.0000000000057562p+0 : inexact-ok
+= rootn tonearest intel96 0x4p-128 -4503599627370497LL : 0x1.0000000000057562p+0 : inexact-ok
+= rootn towardzero intel96 0x4p-128 -4503599627370497LL : 0x1.0000000000057562p+0 : inexact-ok
+= rootn upward intel96 0x4p-128 -4503599627370497LL : 0x1.0000000000057564p+0 : inexact-ok
+= rootn downward m68k96 0x4p-128 -4503599627370497LL : 0x1.0000000000057562p+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 -4503599627370497LL : 0x1.0000000000057562p+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 -4503599627370497LL : 0x1.0000000000057562p+0 : inexact-ok
+= rootn upward m68k96 0x4p-128 -4503599627370497LL : 0x1.0000000000057564p+0 : inexact-ok
+= rootn downward binary128 0x4p-128 -4503599627370497LL : 0x1.00000000000575627cbf94506ca8p+0 : inexact-ok
+= rootn tonearest binary128 0x4p-128 -4503599627370497LL : 0x1.00000000000575627cbf94506ca9p+0 : inexact-ok
+= rootn towardzero binary128 0x4p-128 -4503599627370497LL : 0x1.00000000000575627cbf94506ca8p+0 : inexact-ok
+= rootn upward binary128 0x4p-128 -4503599627370497LL : 0x1.00000000000575627cbf94506ca9p+0 : inexact-ok
+= rootn downward ibm128 0x4p-128 -4503599627370497LL : 0x1.00000000000575627cbf94506c8p+0 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 -4503599627370497LL : 0x1.00000000000575627cbf94506c8p+0 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 -4503599627370497LL : 0x1.00000000000575627cbf94506c8p+0 : inexact-ok
+= rootn upward ibm128 0x4p-128 -4503599627370497LL : 0x1.00000000000575627cbf94506dp+0 : inexact-ok
+= rootn downward binary64 0x4p-1024 -4503599627370497LL : 0x1.00000000002c4p+0 : inexact-ok
+= rootn tonearest binary64 0x4p-1024 -4503599627370497LL : 0x1.00000000002c4p+0 : inexact-ok
+= rootn towardzero binary64 0x4p-1024 -4503599627370497LL : 0x1.00000000002c4p+0 : inexact-ok
+= rootn upward binary64 0x4p-1024 -4503599627370497LL : 0x1.00000000002c5p+0 : inexact-ok
+= rootn downward intel96 0x4p-1024 -4503599627370497LL : 0x1.00000000002c4656p+0 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 -4503599627370497LL : 0x1.00000000002c4658p+0 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 -4503599627370497LL : 0x1.00000000002c4656p+0 : inexact-ok
+= rootn upward intel96 0x4p-1024 -4503599627370497LL : 0x1.00000000002c4658p+0 : inexact-ok
+= rootn downward m68k96 0x4p-1024 -4503599627370497LL : 0x1.00000000002c4656p+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 -4503599627370497LL : 0x1.00000000002c4658p+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 -4503599627370497LL : 0x1.00000000002c4656p+0 : inexact-ok
+= rootn upward m68k96 0x4p-1024 -4503599627370497LL : 0x1.00000000002c4658p+0 : inexact-ok
+= rootn downward binary128 0x4p-1024 -4503599627370497LL : 0x1.00000000002c4657baf57d75d815p+0 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 -4503599627370497LL : 0x1.00000000002c4657baf57d75d816p+0 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 -4503599627370497LL : 0x1.00000000002c4657baf57d75d815p+0 : inexact-ok
+= rootn upward binary128 0x4p-1024 -4503599627370497LL : 0x1.00000000002c4657baf57d75d816p+0 : inexact-ok
+= rootn downward ibm128 0x4p-1024 -4503599627370497LL : 0x1.00000000002c4657baf57d75d8p+0 : inexact-ok
+= rootn tonearest ibm128 0x4p-1024 -4503599627370497LL : 0x1.00000000002c4657baf57d75d8p+0 : inexact-ok
+= rootn towardzero ibm128 0x4p-1024 -4503599627370497LL : 0x1.00000000002c4657baf57d75d8p+0 : inexact-ok
+= rootn upward ibm128 0x4p-1024 -4503599627370497LL : 0x1.00000000002c4657baf57d75d88p+0 : inexact-ok
+= rootn downward intel96 0x4p-16384 -4503599627370497LL : 0x1.0000000002c5b23p+0 : inexact-ok
+= rootn tonearest intel96 0x4p-16384 -4503599627370497LL : 0x1.0000000002c5b232p+0 : inexact-ok
+= rootn towardzero intel96 0x4p-16384 -4503599627370497LL : 0x1.0000000002c5b23p+0 : inexact-ok
+= rootn upward intel96 0x4p-16384 -4503599627370497LL : 0x1.0000000002c5b232p+0 : inexact-ok
+= rootn downward m68k96 0x4p-16384 -4503599627370497LL : 0x1.0000000002c5b23p+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 -4503599627370497LL : 0x1.0000000002c5b232p+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 -4503599627370497LL : 0x1.0000000002c5b23p+0 : inexact-ok
+= rootn upward m68k96 0x4p-16384 -4503599627370497LL : 0x1.0000000002c5b232p+0 : inexact-ok
+= rootn downward binary128 0x4p-16384 -4503599627370497LL : 0x1.0000000002c5b2319c4c1b3aa639p+0 : inexact-ok
+= rootn tonearest binary128 0x4p-16384 -4503599627370497LL : 0x1.0000000002c5b2319c4c1b3aa639p+0 : inexact-ok
+= rootn towardzero binary128 0x4p-16384 -4503599627370497LL : 0x1.0000000002c5b2319c4c1b3aa639p+0 : inexact-ok
+= rootn upward binary128 0x4p-16384 -4503599627370497LL : 0x1.0000000002c5b2319c4c1b3aa63ap+0 : inexact-ok
+= rootn downward intel96 0x2p-16384 -4503599627370497LL : 0x1.0000000002c5bd48p+0 : inexact-ok
+= rootn tonearest intel96 0x2p-16384 -4503599627370497LL : 0x1.0000000002c5bd48p+0 : inexact-ok
+= rootn towardzero intel96 0x2p-16384 -4503599627370497LL : 0x1.0000000002c5bd48p+0 : inexact-ok
+= rootn upward intel96 0x2p-16384 -4503599627370497LL : 0x1.0000000002c5bd4ap+0 : inexact-ok
+= rootn downward m68k96 0x2p-16384 -4503599627370497LL : 0x1.0000000002c5bd48p+0 : inexact-ok
+= rootn tonearest m68k96 0x2p-16384 -4503599627370497LL : 0x1.0000000002c5bd48p+0 : inexact-ok
+= rootn towardzero m68k96 0x2p-16384 -4503599627370497LL : 0x1.0000000002c5bd48p+0 : inexact-ok
+= rootn upward m68k96 0x2p-16384 -4503599627370497LL : 0x1.0000000002c5bd4ap+0 : inexact-ok
+= rootn downward binary128 0x2p-16384 -4503599627370497LL : 0x1.0000000002c5bd48bdcb98765c28p+0 : inexact-ok
+= rootn tonearest binary128 0x2p-16384 -4503599627370497LL : 0x1.0000000002c5bd48bdcb98765c28p+0 : inexact-ok
+= rootn towardzero binary128 0x2p-16384 -4503599627370497LL : 0x1.0000000002c5bd48bdcb98765c28p+0 : inexact-ok
+= rootn upward binary128 0x2p-16384 -4503599627370497LL : 0x1.0000000002c5bd48bdcb98765c29p+0 : inexact-ok
+= rootn downward binary64 0x8p-972 -4503599627370497LL : 0x1.000000000029fp+0 : inexact-ok
+= rootn tonearest binary64 0x8p-972 -4503599627370497LL : 0x1.00000000002ap+0 : inexact-ok
+= rootn towardzero binary64 0x8p-972 -4503599627370497LL : 0x1.000000000029fp+0 : inexact-ok
+= rootn upward binary64 0x8p-972 -4503599627370497LL : 0x1.00000000002ap+0 : inexact-ok
+= rootn downward intel96 0x8p-972 -4503599627370497LL : 0x1.000000000029fa8cp+0 : inexact-ok
+= rootn tonearest intel96 0x8p-972 -4503599627370497LL : 0x1.000000000029fa8ep+0 : inexact-ok
+= rootn towardzero intel96 0x8p-972 -4503599627370497LL : 0x1.000000000029fa8cp+0 : inexact-ok
+= rootn upward intel96 0x8p-972 -4503599627370497LL : 0x1.000000000029fa8ep+0 : inexact-ok
+= rootn downward m68k96 0x8p-972 -4503599627370497LL : 0x1.000000000029fa8cp+0 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 -4503599627370497LL : 0x1.000000000029fa8ep+0 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 -4503599627370497LL : 0x1.000000000029fa8cp+0 : inexact-ok
+= rootn upward m68k96 0x8p-972 -4503599627370497LL : 0x1.000000000029fa8ep+0 : inexact-ok
+= rootn downward binary128 0x8p-972 -4503599627370497LL : 0x1.000000000029fa8dcb909613b45dp+0 : inexact-ok
+= rootn tonearest binary128 0x8p-972 -4503599627370497LL : 0x1.000000000029fa8dcb909613b45dp+0 : inexact-ok
+= rootn towardzero binary128 0x8p-972 -4503599627370497LL : 0x1.000000000029fa8dcb909613b45dp+0 : inexact-ok
+= rootn upward binary128 0x8p-972 -4503599627370497LL : 0x1.000000000029fa8dcb909613b45ep+0 : inexact-ok
+= rootn downward ibm128 0x8p-972 -4503599627370497LL : 0x1.000000000029fa8dcb909613b4p+0 : inexact-ok
+= rootn tonearest ibm128 0x8p-972 -4503599627370497LL : 0x1.000000000029fa8dcb909613b48p+0 : inexact-ok
+= rootn towardzero ibm128 0x8p-972 -4503599627370497LL : 0x1.000000000029fa8dcb909613b4p+0 : inexact-ok
+= rootn upward ibm128 0x8p-972 -4503599627370497LL : 0x1.000000000029fa8dcb909613b48p+0 : inexact-ok
+rootn min -0x7fffffffffffffff
+= rootn downward binary32 0x4p-128 -9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn tonearest binary32 0x4p-128 -9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary32 0x4p-128 -9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn upward binary32 0x4p-128 -9223372036854775807LL : 0x1.000002p+0 : inexact-ok
+= rootn downward binary64 0x4p-128 -9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn tonearest binary64 0x4p-128 -9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary64 0x4p-128 -9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn upward binary64 0x4p-128 -9223372036854775807LL : 0x1.0000000000001p+0 : inexact-ok
+= rootn downward intel96 0x4p-128 -9223372036854775807LL : 0x1.00000000000000aep+0 : inexact-ok
+= rootn tonearest intel96 0x4p-128 -9223372036854775807LL : 0x1.00000000000000aep+0 : inexact-ok
+= rootn towardzero intel96 0x4p-128 -9223372036854775807LL : 0x1.00000000000000aep+0 : inexact-ok
+= rootn upward intel96 0x4p-128 -9223372036854775807LL : 0x1.00000000000000bp+0 : inexact-ok
+= rootn downward m68k96 0x4p-128 -9223372036854775807LL : 0x1.00000000000000aep+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-128 -9223372036854775807LL : 0x1.00000000000000aep+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-128 -9223372036854775807LL : 0x1.00000000000000aep+0 : inexact-ok
+= rootn upward m68k96 0x4p-128 -9223372036854775807LL : 0x1.00000000000000bp+0 : inexact-ok
+= rootn downward binary128 0x4p-128 -9223372036854775807LL : 0x1.00000000000000aeac4f97f2883cp+0 : inexact-ok
+= rootn tonearest binary128 0x4p-128 -9223372036854775807LL : 0x1.00000000000000aeac4f97f2883cp+0 : inexact-ok
+= rootn towardzero binary128 0x4p-128 -9223372036854775807LL : 0x1.00000000000000aeac4f97f2883cp+0 : inexact-ok
+= rootn upward binary128 0x4p-128 -9223372036854775807LL : 0x1.00000000000000aeac4f97f2883dp+0 : inexact-ok
+= rootn downward ibm128 0x4p-128 -9223372036854775807LL : 0x1.00000000000000aeac4f97f288p+0 : inexact-ok
+= rootn tonearest ibm128 0x4p-128 -9223372036854775807LL : 0x1.00000000000000aeac4f97f288p+0 : inexact-ok
+= rootn towardzero ibm128 0x4p-128 -9223372036854775807LL : 0x1.00000000000000aeac4f97f288p+0 : inexact-ok
+= rootn upward ibm128 0x4p-128 -9223372036854775807LL : 0x1.00000000000000aeac4f97f2888p+0 : inexact-ok
+= rootn downward binary64 0x4p-1024 -9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn tonearest binary64 0x4p-1024 -9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary64 0x4p-1024 -9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn upward binary64 0x4p-1024 -9223372036854775807LL : 0x1.0000000000001p+0 : inexact-ok
+= rootn downward intel96 0x4p-1024 -9223372036854775807LL : 0x1.0000000000000588p+0 : inexact-ok
+= rootn tonearest intel96 0x4p-1024 -9223372036854775807LL : 0x1.0000000000000588p+0 : inexact-ok
+= rootn towardzero intel96 0x4p-1024 -9223372036854775807LL : 0x1.0000000000000588p+0 : inexact-ok
+= rootn upward intel96 0x4p-1024 -9223372036854775807LL : 0x1.000000000000058ap+0 : inexact-ok
+= rootn downward m68k96 0x4p-1024 -9223372036854775807LL : 0x1.0000000000000588p+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-1024 -9223372036854775807LL : 0x1.0000000000000588p+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-1024 -9223372036854775807LL : 0x1.0000000000000588p+0 : inexact-ok
+= rootn upward m68k96 0x4p-1024 -9223372036854775807LL : 0x1.000000000000058ap+0 : inexact-ok
+= rootn downward binary128 0x4p-1024 -9223372036854775807LL : 0x1.0000000000000588caf75eaf349ep+0 : inexact-ok
+= rootn tonearest binary128 0x4p-1024 -9223372036854775807LL : 0x1.0000000000000588caf75eaf349fp+0 : inexact-ok
+= rootn towardzero binary128 0x4p-1024 -9223372036854775807LL : 0x1.0000000000000588caf75eaf349ep+0 : inexact-ok
+= rootn upward binary128 0x4p-1024 -9223372036854775807LL : 0x1.0000000000000588caf75eaf349fp+0 : inexact-ok
+= rootn downward ibm128 0x4p-1024 -9223372036854775807LL : 0x1.0000000000000588caf75eaf348p+0 : inexact-ok
+= rootn tonearest ibm128 0x4p-1024 -9223372036854775807LL : 0x1.0000000000000588caf75eaf348p+0 : inexact-ok
+= rootn towardzero ibm128 0x4p-1024 -9223372036854775807LL : 0x1.0000000000000588caf75eaf348p+0 : inexact-ok
+= rootn upward ibm128 0x4p-1024 -9223372036854775807LL : 0x1.0000000000000588caf75eaf35p+0 : inexact-ok
+= rootn downward intel96 0x4p-16384 -9223372036854775807LL : 0x1.00000000000058b6p+0 : inexact-ok
+= rootn tonearest intel96 0x4p-16384 -9223372036854775807LL : 0x1.00000000000058b6p+0 : inexact-ok
+= rootn towardzero intel96 0x4p-16384 -9223372036854775807LL : 0x1.00000000000058b6p+0 : inexact-ok
+= rootn upward intel96 0x4p-16384 -9223372036854775807LL : 0x1.00000000000058b8p+0 : inexact-ok
+= rootn downward m68k96 0x4p-16384 -9223372036854775807LL : 0x1.00000000000058b6p+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-16384 -9223372036854775807LL : 0x1.00000000000058b6p+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-16384 -9223372036854775807LL : 0x1.00000000000058b6p+0 : inexact-ok
+= rootn upward m68k96 0x4p-16384 -9223372036854775807LL : 0x1.00000000000058b8p+0 : inexact-ok
+= rootn downward binary128 0x4p-16384 -9223372036854775807LL : 0x1.00000000000058b64633890884f7p+0 : inexact-ok
+= rootn tonearest binary128 0x4p-16384 -9223372036854775807LL : 0x1.00000000000058b64633890884f8p+0 : inexact-ok
+= rootn towardzero binary128 0x4p-16384 -9223372036854775807LL : 0x1.00000000000058b64633890884f7p+0 : inexact-ok
+= rootn upward binary128 0x4p-16384 -9223372036854775807LL : 0x1.00000000000058b64633890884f8p+0 : inexact-ok
+= rootn downward intel96 0x2p-16384 -9223372036854775807LL : 0x1.00000000000058b6p+0 : inexact-ok
+= rootn tonearest intel96 0x2p-16384 -9223372036854775807LL : 0x1.00000000000058b8p+0 : inexact-ok
+= rootn towardzero intel96 0x2p-16384 -9223372036854775807LL : 0x1.00000000000058b6p+0 : inexact-ok
+= rootn upward intel96 0x2p-16384 -9223372036854775807LL : 0x1.00000000000058b8p+0 : inexact-ok
+= rootn downward m68k96 0x2p-16384 -9223372036854775807LL : 0x1.00000000000058b6p+0 : inexact-ok
+= rootn tonearest m68k96 0x2p-16384 -9223372036854775807LL : 0x1.00000000000058b8p+0 : inexact-ok
+= rootn towardzero m68k96 0x2p-16384 -9223372036854775807LL : 0x1.00000000000058b6p+0 : inexact-ok
+= rootn upward m68k96 0x2p-16384 -9223372036854775807LL : 0x1.00000000000058b8p+0 : inexact-ok
+= rootn downward binary128 0x2p-16384 -9223372036854775807LL : 0x1.00000000000058b7a917b8f82897p+0 : inexact-ok
+= rootn tonearest binary128 0x2p-16384 -9223372036854775807LL : 0x1.00000000000058b7a917b8f82897p+0 : inexact-ok
+= rootn towardzero binary128 0x2p-16384 -9223372036854775807LL : 0x1.00000000000058b7a917b8f82897p+0 : inexact-ok
+= rootn upward binary128 0x2p-16384 -9223372036854775807LL : 0x1.00000000000058b7a917b8f82898p+0 : inexact-ok
+= rootn downward binary64 0x8p-972 -9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn tonearest binary64 0x8p-972 -9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary64 0x8p-972 -9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn upward binary64 0x8p-972 -9223372036854775807LL : 0x1.0000000000001p+0 : inexact-ok
+= rootn downward intel96 0x8p-972 -9223372036854775807LL : 0x1.000000000000053ep+0 : inexact-ok
+= rootn tonearest intel96 0x8p-972 -9223372036854775807LL : 0x1.000000000000054p+0 : inexact-ok
+= rootn towardzero intel96 0x8p-972 -9223372036854775807LL : 0x1.000000000000053ep+0 : inexact-ok
+= rootn upward intel96 0x8p-972 -9223372036854775807LL : 0x1.000000000000054p+0 : inexact-ok
+= rootn downward m68k96 0x8p-972 -9223372036854775807LL : 0x1.000000000000053ep+0 : inexact-ok
+= rootn tonearest m68k96 0x8p-972 -9223372036854775807LL : 0x1.000000000000054p+0 : inexact-ok
+= rootn towardzero m68k96 0x8p-972 -9223372036854775807LL : 0x1.000000000000053ep+0 : inexact-ok
+= rootn upward m68k96 0x8p-972 -9223372036854775807LL : 0x1.000000000000054p+0 : inexact-ok
+= rootn downward binary128 0x8p-972 -9223372036854775807LL : 0x1.000000000000053f51b9721254b4p+0 : inexact-ok
+= rootn tonearest binary128 0x8p-972 -9223372036854775807LL : 0x1.000000000000053f51b9721254b5p+0 : inexact-ok
+= rootn towardzero binary128 0x8p-972 -9223372036854775807LL : 0x1.000000000000053f51b9721254b4p+0 : inexact-ok
+= rootn upward binary128 0x8p-972 -9223372036854775807LL : 0x1.000000000000053f51b9721254b5p+0 : inexact-ok
+= rootn downward ibm128 0x8p-972 -9223372036854775807LL : 0x1.000000000000053f51b97212548p+0 : inexact-ok
+= rootn tonearest ibm128 0x8p-972 -9223372036854775807LL : 0x1.000000000000053f51b97212548p+0 : inexact-ok
+= rootn towardzero ibm128 0x8p-972 -9223372036854775807LL : 0x1.000000000000053f51b97212548p+0 : inexact-ok
+= rootn upward ibm128 0x8p-972 -9223372036854775807LL : 0x1.000000000000053f51b9721255p+0 : inexact-ok
+rootn -min -1
+= rootn downward binary32 -0x4p-128 -1LL : -0x4p+124 : inexact-ok
+= rootn tonearest binary32 -0x4p-128 -1LL : -0x4p+124 : inexact-ok
+= rootn towardzero binary32 -0x4p-128 -1LL : -0x4p+124 : inexact-ok
+= rootn upward binary32 -0x4p-128 -1LL : -0x4p+124 : inexact-ok
+= rootn downward binary64 -0x4p-128 -1LL : -0x4p+124 : inexact-ok
+= rootn tonearest binary64 -0x4p-128 -1LL : -0x4p+124 : inexact-ok
+= rootn towardzero binary64 -0x4p-128 -1LL : -0x4p+124 : inexact-ok
+= rootn upward binary64 -0x4p-128 -1LL : -0x4p+124 : inexact-ok
+= rootn downward intel96 -0x4p-128 -1LL : -0x4p+124 : inexact-ok
+= rootn tonearest intel96 -0x4p-128 -1LL : -0x4p+124 : inexact-ok
+= rootn towardzero intel96 -0x4p-128 -1LL : -0x4p+124 : inexact-ok
+= rootn upward intel96 -0x4p-128 -1LL : -0x4p+124 : inexact-ok
+= rootn downward m68k96 -0x4p-128 -1LL : -0x4p+124 : inexact-ok
+= rootn tonearest m68k96 -0x4p-128 -1LL : -0x4p+124 : inexact-ok
+= rootn towardzero m68k96 -0x4p-128 -1LL : -0x4p+124 : inexact-ok
+= rootn upward m68k96 -0x4p-128 -1LL : -0x4p+124 : inexact-ok
+= rootn downward binary128 -0x4p-128 -1LL : -0x4p+124 : inexact-ok
+= rootn tonearest binary128 -0x4p-128 -1LL : -0x4p+124 : inexact-ok
+= rootn towardzero binary128 -0x4p-128 -1LL : -0x4p+124 : inexact-ok
+= rootn upward binary128 -0x4p-128 -1LL : -0x4p+124 : inexact-ok
+= rootn downward ibm128 -0x4p-128 -1LL : -0x4p+124 : inexact-ok
+= rootn tonearest ibm128 -0x4p-128 -1LL : -0x4p+124 : inexact-ok
+= rootn towardzero ibm128 -0x4p-128 -1LL : -0x4p+124 : inexact-ok
+= rootn upward ibm128 -0x4p-128 -1LL : -0x4p+124 : inexact-ok
+= rootn downward binary64 -0x4p-1024 -1LL : -0x4p+1020 : inexact-ok
+= rootn tonearest binary64 -0x4p-1024 -1LL : -0x4p+1020 : inexact-ok
+= rootn towardzero binary64 -0x4p-1024 -1LL : -0x4p+1020 : inexact-ok
+= rootn upward binary64 -0x4p-1024 -1LL : -0x4p+1020 : inexact-ok
+= rootn downward intel96 -0x4p-1024 -1LL : -0x4p+1020 : inexact-ok
+= rootn tonearest intel96 -0x4p-1024 -1LL : -0x4p+1020 : inexact-ok
+= rootn towardzero intel96 -0x4p-1024 -1LL : -0x4p+1020 : inexact-ok
+= rootn upward intel96 -0x4p-1024 -1LL : -0x4p+1020 : inexact-ok
+= rootn downward m68k96 -0x4p-1024 -1LL : -0x4p+1020 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1024 -1LL : -0x4p+1020 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1024 -1LL : -0x4p+1020 : inexact-ok
+= rootn upward m68k96 -0x4p-1024 -1LL : -0x4p+1020 : inexact-ok
+= rootn downward binary128 -0x4p-1024 -1LL : -0x4p+1020 : inexact-ok
+= rootn tonearest binary128 -0x4p-1024 -1LL : -0x4p+1020 : inexact-ok
+= rootn towardzero binary128 -0x4p-1024 -1LL : -0x4p+1020 : inexact-ok
+= rootn upward binary128 -0x4p-1024 -1LL : -0x4p+1020 : inexact-ok
+= rootn downward ibm128 -0x4p-1024 -1LL : -0x4p+1020 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1024 -1LL : -0x4p+1020 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1024 -1LL : -0x4p+1020 : inexact-ok
+= rootn upward ibm128 -0x4p-1024 -1LL : -0x4p+1020 : inexact-ok
+= rootn downward intel96 -0x4p-16384 -1LL : -0x4p+16380 : inexact-ok
+= rootn tonearest intel96 -0x4p-16384 -1LL : -0x4p+16380 : inexact-ok
+= rootn towardzero intel96 -0x4p-16384 -1LL : -0x4p+16380 : inexact-ok
+= rootn upward intel96 -0x4p-16384 -1LL : -0x4p+16380 : inexact-ok
+= rootn downward m68k96 -0x4p-16384 -1LL : -0x4p+16380 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16384 -1LL : -0x4p+16380 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16384 -1LL : -0x4p+16380 : inexact-ok
+= rootn upward m68k96 -0x4p-16384 -1LL : -0x4p+16380 : inexact-ok
+= rootn downward binary128 -0x4p-16384 -1LL : -0x4p+16380 : inexact-ok
+= rootn tonearest binary128 -0x4p-16384 -1LL : -0x4p+16380 : inexact-ok
+= rootn towardzero binary128 -0x4p-16384 -1LL : -0x4p+16380 : inexact-ok
+= rootn upward binary128 -0x4p-16384 -1LL : -0x4p+16380 : inexact-ok
+= rootn downward intel96 -0x2p-16384 -1LL : -0x8p+16380 : inexact-ok
+= rootn tonearest intel96 -0x2p-16384 -1LL : -0x8p+16380 : inexact-ok
+= rootn towardzero intel96 -0x2p-16384 -1LL : -0x8p+16380 : inexact-ok
+= rootn upward intel96 -0x2p-16384 -1LL : -0x8p+16380 : inexact-ok
+= rootn downward m68k96 -0x2p-16384 -1LL : -0x8p+16380 : inexact-ok
+= rootn tonearest m68k96 -0x2p-16384 -1LL : -0x8p+16380 : inexact-ok
+= rootn towardzero m68k96 -0x2p-16384 -1LL : -0x8p+16380 : inexact-ok
+= rootn upward m68k96 -0x2p-16384 -1LL : -0x8p+16380 : inexact-ok
+= rootn downward binary128 -0x2p-16384 -1LL : -0x8p+16380 : inexact-ok
+= rootn tonearest binary128 -0x2p-16384 -1LL : -0x8p+16380 : inexact-ok
+= rootn towardzero binary128 -0x2p-16384 -1LL : -0x8p+16380 : inexact-ok
+= rootn upward binary128 -0x2p-16384 -1LL : -0x8p+16380 : inexact-ok
+= rootn downward binary64 -0x8p-972 -1LL : -0x2p+968 : inexact-ok
+= rootn tonearest binary64 -0x8p-972 -1LL : -0x2p+968 : inexact-ok
+= rootn towardzero binary64 -0x8p-972 -1LL : -0x2p+968 : inexact-ok
+= rootn upward binary64 -0x8p-972 -1LL : -0x2p+968 : inexact-ok
+= rootn downward intel96 -0x8p-972 -1LL : -0x2p+968 : inexact-ok
+= rootn tonearest intel96 -0x8p-972 -1LL : -0x2p+968 : inexact-ok
+= rootn towardzero intel96 -0x8p-972 -1LL : -0x2p+968 : inexact-ok
+= rootn upward intel96 -0x8p-972 -1LL : -0x2p+968 : inexact-ok
+= rootn downward m68k96 -0x8p-972 -1LL : -0x2p+968 : inexact-ok
+= rootn tonearest m68k96 -0x8p-972 -1LL : -0x2p+968 : inexact-ok
+= rootn towardzero m68k96 -0x8p-972 -1LL : -0x2p+968 : inexact-ok
+= rootn upward m68k96 -0x8p-972 -1LL : -0x2p+968 : inexact-ok
+= rootn downward binary128 -0x8p-972 -1LL : -0x2p+968 : inexact-ok
+= rootn tonearest binary128 -0x8p-972 -1LL : -0x2p+968 : inexact-ok
+= rootn towardzero binary128 -0x8p-972 -1LL : -0x2p+968 : inexact-ok
+= rootn upward binary128 -0x8p-972 -1LL : -0x2p+968 : inexact-ok
+= rootn downward ibm128 -0x8p-972 -1LL : -0x2p+968 : inexact-ok
+= rootn tonearest ibm128 -0x8p-972 -1LL : -0x2p+968 : inexact-ok
+= rootn towardzero ibm128 -0x8p-972 -1LL : -0x2p+968 : inexact-ok
+= rootn upward ibm128 -0x8p-972 -1LL : -0x2p+968 : inexact-ok
+rootn -min -3
+= rootn downward binary32 -0x4p-128 -3LL : -0x4p+40 : inexact-ok
+= rootn tonearest binary32 -0x4p-128 -3LL : -0x4p+40 : inexact-ok
+= rootn towardzero binary32 -0x4p-128 -3LL : -0x4p+40 : inexact-ok
+= rootn upward binary32 -0x4p-128 -3LL : -0x4p+40 : inexact-ok
+= rootn downward binary64 -0x4p-128 -3LL : -0x4p+40 : inexact-ok
+= rootn tonearest binary64 -0x4p-128 -3LL : -0x4p+40 : inexact-ok
+= rootn towardzero binary64 -0x4p-128 -3LL : -0x4p+40 : inexact-ok
+= rootn upward binary64 -0x4p-128 -3LL : -0x4p+40 : inexact-ok
+= rootn downward intel96 -0x4p-128 -3LL : -0x4p+40 : inexact-ok
+= rootn tonearest intel96 -0x4p-128 -3LL : -0x4p+40 : inexact-ok
+= rootn towardzero intel96 -0x4p-128 -3LL : -0x4p+40 : inexact-ok
+= rootn upward intel96 -0x4p-128 -3LL : -0x4p+40 : inexact-ok
+= rootn downward m68k96 -0x4p-128 -3LL : -0x4p+40 : inexact-ok
+= rootn tonearest m68k96 -0x4p-128 -3LL : -0x4p+40 : inexact-ok
+= rootn towardzero m68k96 -0x4p-128 -3LL : -0x4p+40 : inexact-ok
+= rootn upward m68k96 -0x4p-128 -3LL : -0x4p+40 : inexact-ok
+= rootn downward binary128 -0x4p-128 -3LL : -0x4p+40 : inexact-ok
+= rootn tonearest binary128 -0x4p-128 -3LL : -0x4p+40 : inexact-ok
+= rootn towardzero binary128 -0x4p-128 -3LL : -0x4p+40 : inexact-ok
+= rootn upward binary128 -0x4p-128 -3LL : -0x4p+40 : inexact-ok
+= rootn downward ibm128 -0x4p-128 -3LL : -0x4p+40 : inexact-ok
+= rootn tonearest ibm128 -0x4p-128 -3LL : -0x4p+40 : inexact-ok
+= rootn towardzero ibm128 -0x4p-128 -3LL : -0x4p+40 : inexact-ok
+= rootn upward ibm128 -0x4p-128 -3LL : -0x4p+40 : inexact-ok
+= rootn downward binary64 -0x4p-1024 -3LL : -0x1.965fea53d6e3dp+340 : inexact-ok
+= rootn tonearest binary64 -0x4p-1024 -3LL : -0x1.965fea53d6e3dp+340 : inexact-ok
+= rootn towardzero binary64 -0x4p-1024 -3LL : -0x1.965fea53d6e3cp+340 : inexact-ok
+= rootn upward binary64 -0x4p-1024 -3LL : -0x1.965fea53d6e3cp+340 : inexact-ok
+= rootn downward intel96 -0x4p-1024 -3LL : -0x1.965fea53d6e3c82cp+340 : inexact-ok
+= rootn tonearest intel96 -0x4p-1024 -3LL : -0x1.965fea53d6e3c82cp+340 : inexact-ok
+= rootn towardzero intel96 -0x4p-1024 -3LL : -0x1.965fea53d6e3c82ap+340 : inexact-ok
+= rootn upward intel96 -0x4p-1024 -3LL : -0x1.965fea53d6e3c82ap+340 : inexact-ok
+= rootn downward m68k96 -0x4p-1024 -3LL : -0x1.965fea53d6e3c82cp+340 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1024 -3LL : -0x1.965fea53d6e3c82cp+340 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1024 -3LL : -0x1.965fea53d6e3c82ap+340 : inexact-ok
+= rootn upward m68k96 -0x4p-1024 -3LL : -0x1.965fea53d6e3c82ap+340 : inexact-ok
+= rootn downward binary128 -0x4p-1024 -3LL : -0x1.965fea53d6e3c82b05999ab43dc5p+340 : inexact-ok
+= rootn tonearest binary128 -0x4p-1024 -3LL : -0x1.965fea53d6e3c82b05999ab43dc5p+340 : inexact-ok
+= rootn towardzero binary128 -0x4p-1024 -3LL : -0x1.965fea53d6e3c82b05999ab43dc4p+340 : inexact-ok
+= rootn upward binary128 -0x4p-1024 -3LL : -0x1.965fea53d6e3c82b05999ab43dc4p+340 : inexact-ok
+= rootn downward ibm128 -0x4p-1024 -3LL : -0x1.965fea53d6e3c82b05999ab43ep+340 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1024 -3LL : -0x1.965fea53d6e3c82b05999ab43ep+340 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1024 -3LL : -0x1.965fea53d6e3c82b05999ab43d8p+340 : inexact-ok
+= rootn upward ibm128 -0x4p-1024 -3LL : -0x1.965fea53d6e3c82b05999ab43d8p+340 : inexact-ok
+= rootn downward intel96 -0x4p-16384 -3LL : -0x1.965fea53d6e3c82cp+5460 : inexact-ok
+= rootn tonearest intel96 -0x4p-16384 -3LL : -0x1.965fea53d6e3c82cp+5460 : inexact-ok
+= rootn towardzero intel96 -0x4p-16384 -3LL : -0x1.965fea53d6e3c82ap+5460 : inexact-ok
+= rootn upward intel96 -0x4p-16384 -3LL : -0x1.965fea53d6e3c82ap+5460 : inexact-ok
+= rootn downward m68k96 -0x4p-16384 -3LL : -0x1.965fea53d6e3c82cp+5460 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16384 -3LL : -0x1.965fea53d6e3c82cp+5460 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16384 -3LL : -0x1.965fea53d6e3c82ap+5460 : inexact-ok
+= rootn upward m68k96 -0x4p-16384 -3LL : -0x1.965fea53d6e3c82ap+5460 : inexact-ok
+= rootn downward binary128 -0x4p-16384 -3LL : -0x1.965fea53d6e3c82b05999ab43dc5p+5460 : inexact-ok
+= rootn tonearest binary128 -0x4p-16384 -3LL : -0x1.965fea53d6e3c82b05999ab43dc5p+5460 : inexact-ok
+= rootn towardzero binary128 -0x4p-16384 -3LL : -0x1.965fea53d6e3c82b05999ab43dc4p+5460 : inexact-ok
+= rootn upward binary128 -0x4p-16384 -3LL : -0x1.965fea53d6e3c82b05999ab43dc4p+5460 : inexact-ok
+= rootn downward intel96 -0x2p-16384 -3LL : -0x2p+5460 : inexact-ok
+= rootn tonearest intel96 -0x2p-16384 -3LL : -0x2p+5460 : inexact-ok
+= rootn towardzero intel96 -0x2p-16384 -3LL : -0x2p+5460 : inexact-ok
+= rootn upward intel96 -0x2p-16384 -3LL : -0x2p+5460 : inexact-ok
+= rootn downward m68k96 -0x2p-16384 -3LL : -0x2p+5460 : inexact-ok
+= rootn tonearest m68k96 -0x2p-16384 -3LL : -0x2p+5460 : inexact-ok
+= rootn towardzero m68k96 -0x2p-16384 -3LL : -0x2p+5460 : inexact-ok
+= rootn upward m68k96 -0x2p-16384 -3LL : -0x2p+5460 : inexact-ok
+= rootn downward binary128 -0x2p-16384 -3LL : -0x2p+5460 : inexact-ok
+= rootn tonearest binary128 -0x2p-16384 -3LL : -0x2p+5460 : inexact-ok
+= rootn towardzero binary128 -0x2p-16384 -3LL : -0x2p+5460 : inexact-ok
+= rootn upward binary128 -0x2p-16384 -3LL : -0x2p+5460 : inexact-ok
+= rootn downward binary64 -0x8p-972 -3LL : -0x8p+320 : inexact-ok
+= rootn tonearest binary64 -0x8p-972 -3LL : -0x8p+320 : inexact-ok
+= rootn towardzero binary64 -0x8p-972 -3LL : -0x8p+320 : inexact-ok
+= rootn upward binary64 -0x8p-972 -3LL : -0x8p+320 : inexact-ok
+= rootn downward intel96 -0x8p-972 -3LL : -0x8p+320 : inexact-ok
+= rootn tonearest intel96 -0x8p-972 -3LL : -0x8p+320 : inexact-ok
+= rootn towardzero intel96 -0x8p-972 -3LL : -0x8p+320 : inexact-ok
+= rootn upward intel96 -0x8p-972 -3LL : -0x8p+320 : inexact-ok
+= rootn downward m68k96 -0x8p-972 -3LL : -0x8p+320 : inexact-ok
+= rootn tonearest m68k96 -0x8p-972 -3LL : -0x8p+320 : inexact-ok
+= rootn towardzero m68k96 -0x8p-972 -3LL : -0x8p+320 : inexact-ok
+= rootn upward m68k96 -0x8p-972 -3LL : -0x8p+320 : inexact-ok
+= rootn downward binary128 -0x8p-972 -3LL : -0x8p+320 : inexact-ok
+= rootn tonearest binary128 -0x8p-972 -3LL : -0x8p+320 : inexact-ok
+= rootn towardzero binary128 -0x8p-972 -3LL : -0x8p+320 : inexact-ok
+= rootn upward binary128 -0x8p-972 -3LL : -0x8p+320 : inexact-ok
+= rootn downward ibm128 -0x8p-972 -3LL : -0x8p+320 : inexact-ok
+= rootn tonearest ibm128 -0x8p-972 -3LL : -0x8p+320 : inexact-ok
+= rootn towardzero ibm128 -0x8p-972 -3LL : -0x8p+320 : inexact-ok
+= rootn upward ibm128 -0x8p-972 -3LL : -0x8p+320 : inexact-ok
+rootn -min -5
+= rootn downward binary32 -0x4p-128 -5LL : -0x2.4c2234p+24 : inexact-ok
+= rootn tonearest binary32 -0x4p-128 -5LL : -0x2.4c223p+24 : inexact-ok
+= rootn towardzero binary32 -0x4p-128 -5LL : -0x2.4c223p+24 : inexact-ok
+= rootn upward binary32 -0x4p-128 -5LL : -0x2.4c223p+24 : inexact-ok
+= rootn downward binary64 -0x4p-128 -5LL : -0x2.4c2230d75cceap+24 : inexact-ok
+= rootn tonearest binary64 -0x4p-128 -5LL : -0x2.4c2230d75cceap+24 : inexact-ok
+= rootn towardzero binary64 -0x4p-128 -5LL : -0x2.4c2230d75cce8p+24 : inexact-ok
+= rootn upward binary64 -0x4p-128 -5LL : -0x2.4c2230d75cce8p+24 : inexact-ok
+= rootn downward intel96 -0x4p-128 -5LL : -0x2.4c2230d75cce92d8p+24 : inexact-ok
+= rootn tonearest intel96 -0x4p-128 -5LL : -0x2.4c2230d75cce92d4p+24 : inexact-ok
+= rootn towardzero intel96 -0x4p-128 -5LL : -0x2.4c2230d75cce92d4p+24 : inexact-ok
+= rootn upward intel96 -0x4p-128 -5LL : -0x2.4c2230d75cce92d4p+24 : inexact-ok
+= rootn downward m68k96 -0x4p-128 -5LL : -0x2.4c2230d75cce92d8p+24 : inexact-ok
+= rootn tonearest m68k96 -0x4p-128 -5LL : -0x2.4c2230d75cce92d4p+24 : inexact-ok
+= rootn towardzero m68k96 -0x4p-128 -5LL : -0x2.4c2230d75cce92d4p+24 : inexact-ok
+= rootn upward m68k96 -0x4p-128 -5LL : -0x2.4c2230d75cce92d4p+24 : inexact-ok
+= rootn downward binary128 -0x4p-128 -5LL : -0x2.4c2230d75cce92d4a43c840ec1c4p+24 : inexact-ok
+= rootn tonearest binary128 -0x4p-128 -5LL : -0x2.4c2230d75cce92d4a43c840ec1c4p+24 : inexact-ok
+= rootn towardzero binary128 -0x4p-128 -5LL : -0x2.4c2230d75cce92d4a43c840ec1c2p+24 : inexact-ok
+= rootn upward binary128 -0x4p-128 -5LL : -0x2.4c2230d75cce92d4a43c840ec1c2p+24 : inexact-ok
+= rootn downward ibm128 -0x4p-128 -5LL : -0x2.4c2230d75cce92d4a43c840ec2p+24 : inexact-ok
+= rootn tonearest ibm128 -0x4p-128 -5LL : -0x2.4c2230d75cce92d4a43c840ec2p+24 : inexact-ok
+= rootn towardzero ibm128 -0x4p-128 -5LL : -0x2.4c2230d75cce92d4a43c840ec1p+24 : inexact-ok
+= rootn upward ibm128 -0x4p-128 -5LL : -0x2.4c2230d75cce92d4a43c840ec1p+24 : inexact-ok
+= rootn downward binary64 -0x4p-1024 -5LL : -0x1.51cb453b9536dp+204 : inexact-ok
+= rootn tonearest binary64 -0x4p-1024 -5LL : -0x1.51cb453b9536cp+204 : inexact-ok
+= rootn towardzero binary64 -0x4p-1024 -5LL : -0x1.51cb453b9536cp+204 : inexact-ok
+= rootn upward binary64 -0x4p-1024 -5LL : -0x1.51cb453b9536cp+204 : inexact-ok
+= rootn downward intel96 -0x4p-1024 -5LL : -0x1.51cb453b9536c458p+204 : inexact-ok
+= rootn tonearest intel96 -0x4p-1024 -5LL : -0x1.51cb453b9536c456p+204 : inexact-ok
+= rootn towardzero intel96 -0x4p-1024 -5LL : -0x1.51cb453b9536c456p+204 : inexact-ok
+= rootn upward intel96 -0x4p-1024 -5LL : -0x1.51cb453b9536c456p+204 : inexact-ok
+= rootn downward m68k96 -0x4p-1024 -5LL : -0x1.51cb453b9536c458p+204 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1024 -5LL : -0x1.51cb453b9536c456p+204 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1024 -5LL : -0x1.51cb453b9536c456p+204 : inexact-ok
+= rootn upward m68k96 -0x4p-1024 -5LL : -0x1.51cb453b9536c456p+204 : inexact-ok
+= rootn downward binary128 -0x4p-1024 -5LL : -0x1.51cb453b9536c45693a8476cb96cp+204 : inexact-ok
+= rootn tonearest binary128 -0x4p-1024 -5LL : -0x1.51cb453b9536c45693a8476cb96bp+204 : inexact-ok
+= rootn towardzero binary128 -0x4p-1024 -5LL : -0x1.51cb453b9536c45693a8476cb96bp+204 : inexact-ok
+= rootn upward binary128 -0x4p-1024 -5LL : -0x1.51cb453b9536c45693a8476cb96bp+204 : inexact-ok
+= rootn downward ibm128 -0x4p-1024 -5LL : -0x1.51cb453b9536c45693a8476cb98p+204 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1024 -5LL : -0x1.51cb453b9536c45693a8476cb98p+204 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1024 -5LL : -0x1.51cb453b9536c45693a8476cb9p+204 : inexact-ok
+= rootn upward ibm128 -0x4p-1024 -5LL : -0x1.51cb453b9536c45693a8476cb9p+204 : inexact-ok
+= rootn downward intel96 -0x4p-16384 -5LL : -0x1.51cb453b9536c458p+3276 : inexact-ok
+= rootn tonearest intel96 -0x4p-16384 -5LL : -0x1.51cb453b9536c456p+3276 : inexact-ok
+= rootn towardzero intel96 -0x4p-16384 -5LL : -0x1.51cb453b9536c456p+3276 : inexact-ok
+= rootn upward intel96 -0x4p-16384 -5LL : -0x1.51cb453b9536c456p+3276 : inexact-ok
+= rootn downward m68k96 -0x4p-16384 -5LL : -0x1.51cb453b9536c458p+3276 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16384 -5LL : -0x1.51cb453b9536c456p+3276 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16384 -5LL : -0x1.51cb453b9536c456p+3276 : inexact-ok
+= rootn upward m68k96 -0x4p-16384 -5LL : -0x1.51cb453b9536c456p+3276 : inexact-ok
+= rootn downward binary128 -0x4p-16384 -5LL : -0x1.51cb453b9536c45693a8476cb96cp+3276 : inexact-ok
+= rootn tonearest binary128 -0x4p-16384 -5LL : -0x1.51cb453b9536c45693a8476cb96bp+3276 : inexact-ok
+= rootn towardzero binary128 -0x4p-16384 -5LL : -0x1.51cb453b9536c45693a8476cb96bp+3276 : inexact-ok
+= rootn upward binary128 -0x4p-16384 -5LL : -0x1.51cb453b9536c45693a8476cb96bp+3276 : inexact-ok
+= rootn downward intel96 -0x2p-16384 -5LL : -0x1.8406003b2ae5c6bap+3276 : inexact-ok
+= rootn tonearest intel96 -0x2p-16384 -5LL : -0x1.8406003b2ae5c6bap+3276 : inexact-ok
+= rootn towardzero intel96 -0x2p-16384 -5LL : -0x1.8406003b2ae5c6b8p+3276 : inexact-ok
+= rootn upward intel96 -0x2p-16384 -5LL : -0x1.8406003b2ae5c6b8p+3276 : inexact-ok
+= rootn downward m68k96 -0x2p-16384 -5LL : -0x1.8406003b2ae5c6bap+3276 : inexact-ok
+= rootn tonearest m68k96 -0x2p-16384 -5LL : -0x1.8406003b2ae5c6bap+3276 : inexact-ok
+= rootn towardzero m68k96 -0x2p-16384 -5LL : -0x1.8406003b2ae5c6b8p+3276 : inexact-ok
+= rootn upward m68k96 -0x2p-16384 -5LL : -0x1.8406003b2ae5c6b8p+3276 : inexact-ok
+= rootn downward binary128 -0x2p-16384 -5LL : -0x1.8406003b2ae5c6b99347320eae14p+3276 : inexact-ok
+= rootn tonearest binary128 -0x2p-16384 -5LL : -0x1.8406003b2ae5c6b99347320eae13p+3276 : inexact-ok
+= rootn towardzero binary128 -0x2p-16384 -5LL : -0x1.8406003b2ae5c6b99347320eae13p+3276 : inexact-ok
+= rootn upward binary128 -0x2p-16384 -5LL : -0x1.8406003b2ae5c6b99347320eae13p+3276 : inexact-ok
+= rootn downward binary64 -0x8p-972 -5LL : -0x3.7b719b5b7c242p+192 : inexact-ok
+= rootn tonearest binary64 -0x8p-972 -5LL : -0x3.7b719b5b7c24p+192 : inexact-ok
+= rootn towardzero binary64 -0x8p-972 -5LL : -0x3.7b719b5b7c24p+192 : inexact-ok
+= rootn upward binary64 -0x8p-972 -5LL : -0x3.7b719b5b7c24p+192 : inexact-ok
+= rootn downward intel96 -0x8p-972 -5LL : -0x3.7b719b5b7c24042cp+192 : inexact-ok
+= rootn tonearest intel96 -0x8p-972 -5LL : -0x3.7b719b5b7c240428p+192 : inexact-ok
+= rootn towardzero intel96 -0x8p-972 -5LL : -0x3.7b719b5b7c240428p+192 : inexact-ok
+= rootn upward intel96 -0x8p-972 -5LL : -0x3.7b719b5b7c240428p+192 : inexact-ok
+= rootn downward m68k96 -0x8p-972 -5LL : -0x3.7b719b5b7c24042cp+192 : inexact-ok
+= rootn tonearest m68k96 -0x8p-972 -5LL : -0x3.7b719b5b7c240428p+192 : inexact-ok
+= rootn towardzero m68k96 -0x8p-972 -5LL : -0x3.7b719b5b7c240428p+192 : inexact-ok
+= rootn upward m68k96 -0x8p-972 -5LL : -0x3.7b719b5b7c240428p+192 : inexact-ok
+= rootn downward binary128 -0x8p-972 -5LL : -0x3.7b719b5b7c240429ec3a6164ff54p+192 : inexact-ok
+= rootn tonearest binary128 -0x8p-972 -5LL : -0x3.7b719b5b7c240429ec3a6164ff52p+192 : inexact-ok
+= rootn towardzero binary128 -0x8p-972 -5LL : -0x3.7b719b5b7c240429ec3a6164ff52p+192 : inexact-ok
+= rootn upward binary128 -0x8p-972 -5LL : -0x3.7b719b5b7c240429ec3a6164ff52p+192 : inexact-ok
+= rootn downward ibm128 -0x8p-972 -5LL : -0x3.7b719b5b7c240429ec3a6165p+192 : inexact-ok
+= rootn tonearest ibm128 -0x8p-972 -5LL : -0x3.7b719b5b7c240429ec3a6164ffp+192 : inexact-ok
+= rootn towardzero ibm128 -0x8p-972 -5LL : -0x3.7b719b5b7c240429ec3a6164ffp+192 : inexact-ok
+= rootn upward ibm128 -0x8p-972 -5LL : -0x3.7b719b5b7c240429ec3a6164ffp+192 : inexact-ok
+rootn -min -63
+= rootn downward binary32 -0x4p-128 -63LL : -0x4p+0 : inexact-ok
+= rootn tonearest binary32 -0x4p-128 -63LL : -0x4p+0 : inexact-ok
+= rootn towardzero binary32 -0x4p-128 -63LL : -0x4p+0 : inexact-ok
+= rootn upward binary32 -0x4p-128 -63LL : -0x4p+0 : inexact-ok
+= rootn downward binary64 -0x4p-128 -63LL : -0x4p+0 : inexact-ok
+= rootn tonearest binary64 -0x4p-128 -63LL : -0x4p+0 : inexact-ok
+= rootn towardzero binary64 -0x4p-128 -63LL : -0x4p+0 : inexact-ok
+= rootn upward binary64 -0x4p-128 -63LL : -0x4p+0 : inexact-ok
+= rootn downward intel96 -0x4p-128 -63LL : -0x4p+0 : inexact-ok
+= rootn tonearest intel96 -0x4p-128 -63LL : -0x4p+0 : inexact-ok
+= rootn towardzero intel96 -0x4p-128 -63LL : -0x4p+0 : inexact-ok
+= rootn upward intel96 -0x4p-128 -63LL : -0x4p+0 : inexact-ok
+= rootn downward m68k96 -0x4p-128 -63LL : -0x4p+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-128 -63LL : -0x4p+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-128 -63LL : -0x4p+0 : inexact-ok
+= rootn upward m68k96 -0x4p-128 -63LL : -0x4p+0 : inexact-ok
+= rootn downward binary128 -0x4p-128 -63LL : -0x4p+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-128 -63LL : -0x4p+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-128 -63LL : -0x4p+0 : inexact-ok
+= rootn upward binary128 -0x4p-128 -63LL : -0x4p+0 : inexact-ok
+= rootn downward ibm128 -0x4p-128 -63LL : -0x4p+0 : inexact-ok
+= rootn tonearest ibm128 -0x4p-128 -63LL : -0x4p+0 : inexact-ok
+= rootn towardzero ibm128 -0x4p-128 -63LL : -0x4p+0 : inexact-ok
+= rootn upward ibm128 -0x4p-128 -63LL : -0x4p+0 : inexact-ok
+= rootn downward binary64 -0x4p-1024 -63LL : -0x1.2aa1a5aad04f6p+16 : inexact-ok
+= rootn tonearest binary64 -0x4p-1024 -63LL : -0x1.2aa1a5aad04f5p+16 : inexact-ok
+= rootn towardzero binary64 -0x4p-1024 -63LL : -0x1.2aa1a5aad04f5p+16 : inexact-ok
+= rootn upward binary64 -0x4p-1024 -63LL : -0x1.2aa1a5aad04f5p+16 : inexact-ok
+= rootn downward intel96 -0x4p-1024 -63LL : -0x1.2aa1a5aad04f5372p+16 : inexact-ok
+= rootn tonearest intel96 -0x4p-1024 -63LL : -0x1.2aa1a5aad04f537p+16 : inexact-ok
+= rootn towardzero intel96 -0x4p-1024 -63LL : -0x1.2aa1a5aad04f537p+16 : inexact-ok
+= rootn upward intel96 -0x4p-1024 -63LL : -0x1.2aa1a5aad04f537p+16 : inexact-ok
+= rootn downward m68k96 -0x4p-1024 -63LL : -0x1.2aa1a5aad04f5372p+16 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1024 -63LL : -0x1.2aa1a5aad04f537p+16 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1024 -63LL : -0x1.2aa1a5aad04f537p+16 : inexact-ok
+= rootn upward m68k96 -0x4p-1024 -63LL : -0x1.2aa1a5aad04f537p+16 : inexact-ok
+= rootn downward binary128 -0x4p-1024 -63LL : -0x1.2aa1a5aad04f53701993c68cc5b3p+16 : inexact-ok
+= rootn tonearest binary128 -0x4p-1024 -63LL : -0x1.2aa1a5aad04f53701993c68cc5b2p+16 : inexact-ok
+= rootn towardzero binary128 -0x4p-1024 -63LL : -0x1.2aa1a5aad04f53701993c68cc5b2p+16 : inexact-ok
+= rootn upward binary128 -0x4p-1024 -63LL : -0x1.2aa1a5aad04f53701993c68cc5b2p+16 : inexact-ok
+= rootn downward ibm128 -0x4p-1024 -63LL : -0x1.2aa1a5aad04f53701993c68cc6p+16 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1024 -63LL : -0x1.2aa1a5aad04f53701993c68cc58p+16 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1024 -63LL : -0x1.2aa1a5aad04f53701993c68cc58p+16 : inexact-ok
+= rootn upward ibm128 -0x4p-1024 -63LL : -0x1.2aa1a5aad04f53701993c68cc58p+16 : inexact-ok
+= rootn downward intel96 -0x4p-16384 -63LL : -0x1.05b214e9123f0ed2p+260 : inexact-ok
+= rootn tonearest intel96 -0x4p-16384 -63LL : -0x1.05b214e9123f0edp+260 : inexact-ok
+= rootn towardzero intel96 -0x4p-16384 -63LL : -0x1.05b214e9123f0edp+260 : inexact-ok
+= rootn upward intel96 -0x4p-16384 -63LL : -0x1.05b214e9123f0edp+260 : inexact-ok
+= rootn downward m68k96 -0x4p-16384 -63LL : -0x1.05b214e9123f0ed2p+260 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16384 -63LL : -0x1.05b214e9123f0edp+260 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16384 -63LL : -0x1.05b214e9123f0edp+260 : inexact-ok
+= rootn upward m68k96 -0x4p-16384 -63LL : -0x1.05b214e9123f0edp+260 : inexact-ok
+= rootn downward binary128 -0x4p-16384 -63LL : -0x1.05b214e9123f0ed0153dca82bdb8p+260 : inexact-ok
+= rootn tonearest binary128 -0x4p-16384 -63LL : -0x1.05b214e9123f0ed0153dca82bdb7p+260 : inexact-ok
+= rootn towardzero binary128 -0x4p-16384 -63LL : -0x1.05b214e9123f0ed0153dca82bdb7p+260 : inexact-ok
+= rootn upward binary128 -0x4p-16384 -63LL : -0x1.05b214e9123f0ed0153dca82bdb7p+260 : inexact-ok
+= rootn downward intel96 -0x2p-16384 -63LL : -0x1.08973e2c8a9c60ccp+260 : inexact-ok
+= rootn tonearest intel96 -0x2p-16384 -63LL : -0x1.08973e2c8a9c60ccp+260 : inexact-ok
+= rootn towardzero intel96 -0x2p-16384 -63LL : -0x1.08973e2c8a9c60cap+260 : inexact-ok
+= rootn upward intel96 -0x2p-16384 -63LL : -0x1.08973e2c8a9c60cap+260 : inexact-ok
+= rootn downward m68k96 -0x2p-16384 -63LL : -0x1.08973e2c8a9c60ccp+260 : inexact-ok
+= rootn tonearest m68k96 -0x2p-16384 -63LL : -0x1.08973e2c8a9c60ccp+260 : inexact-ok
+= rootn towardzero m68k96 -0x2p-16384 -63LL : -0x1.08973e2c8a9c60cap+260 : inexact-ok
+= rootn upward m68k96 -0x2p-16384 -63LL : -0x1.08973e2c8a9c60cap+260 : inexact-ok
+= rootn downward binary128 -0x2p-16384 -63LL : -0x1.08973e2c8a9c60cb3f405358c333p+260 : inexact-ok
+= rootn tonearest binary128 -0x2p-16384 -63LL : -0x1.08973e2c8a9c60cb3f405358c333p+260 : inexact-ok
+= rootn towardzero binary128 -0x2p-16384 -63LL : -0x1.08973e2c8a9c60cb3f405358c332p+260 : inexact-ok
+= rootn upward binary128 -0x2p-16384 -63LL : -0x1.08973e2c8a9c60cb3f405358c332p+260 : inexact-ok
+= rootn downward binary64 -0x8p-972 -63LL : -0xa.6ae8776a379dp+12 : inexact-ok
+= rootn tonearest binary64 -0x8p-972 -63LL : -0xa.6ae8776a379c8p+12 : inexact-ok
+= rootn towardzero binary64 -0x8p-972 -63LL : -0xa.6ae8776a379c8p+12 : inexact-ok
+= rootn upward binary64 -0x8p-972 -63LL : -0xa.6ae8776a379c8p+12 : inexact-ok
+= rootn downward intel96 -0x8p-972 -63LL : -0xa.6ae8776a379c963p+12 : inexact-ok
+= rootn tonearest intel96 -0x8p-972 -63LL : -0xa.6ae8776a379c962p+12 : inexact-ok
+= rootn towardzero intel96 -0x8p-972 -63LL : -0xa.6ae8776a379c962p+12 : inexact-ok
+= rootn upward intel96 -0x8p-972 -63LL : -0xa.6ae8776a379c962p+12 : inexact-ok
+= rootn downward m68k96 -0x8p-972 -63LL : -0xa.6ae8776a379c963p+12 : inexact-ok
+= rootn tonearest m68k96 -0x8p-972 -63LL : -0xa.6ae8776a379c962p+12 : inexact-ok
+= rootn towardzero m68k96 -0x8p-972 -63LL : -0xa.6ae8776a379c962p+12 : inexact-ok
+= rootn upward m68k96 -0x8p-972 -63LL : -0xa.6ae8776a379c962p+12 : inexact-ok
+= rootn downward binary128 -0x8p-972 -63LL : -0xa.6ae8776a379c96212b1b43ecd52p+12 : inexact-ok
+= rootn tonearest binary128 -0x8p-972 -63LL : -0xa.6ae8776a379c96212b1b43ecd518p+12 : inexact-ok
+= rootn towardzero binary128 -0x8p-972 -63LL : -0xa.6ae8776a379c96212b1b43ecd518p+12 : inexact-ok
+= rootn upward binary128 -0x8p-972 -63LL : -0xa.6ae8776a379c96212b1b43ecd518p+12 : inexact-ok
+= rootn downward ibm128 -0x8p-972 -63LL : -0xa.6ae8776a379c96212b1b43ecd8p+12 : inexact-ok
+= rootn tonearest ibm128 -0x8p-972 -63LL : -0xa.6ae8776a379c96212b1b43ecd4p+12 : inexact-ok
+= rootn towardzero ibm128 -0x8p-972 -63LL : -0xa.6ae8776a379c96212b1b43ecd4p+12 : inexact-ok
+= rootn upward ibm128 -0x8p-972 -63LL : -0xa.6ae8776a379c96212b1b43ecd4p+12 : inexact-ok
+rootn -min -127
+= rootn downward binary32 -0x4p-128 -127LL : -0x1.fd3694p+0 : inexact-ok
+= rootn tonearest binary32 -0x4p-128 -127LL : -0x1.fd3694p+0 : inexact-ok
+= rootn towardzero binary32 -0x4p-128 -127LL : -0x1.fd3692p+0 : inexact-ok
+= rootn upward binary32 -0x4p-128 -127LL : -0x1.fd3692p+0 : inexact-ok
+= rootn downward binary64 -0x4p-128 -127LL : -0x1.fd3693bc91295p+0 : inexact-ok
+= rootn tonearest binary64 -0x4p-128 -127LL : -0x1.fd3693bc91295p+0 : inexact-ok
+= rootn towardzero binary64 -0x4p-128 -127LL : -0x1.fd3693bc91294p+0 : inexact-ok
+= rootn upward binary64 -0x4p-128 -127LL : -0x1.fd3693bc91294p+0 : inexact-ok
+= rootn downward intel96 -0x4p-128 -127LL : -0x1.fd3693bc9129492p+0 : inexact-ok
+= rootn tonearest intel96 -0x4p-128 -127LL : -0x1.fd3693bc9129492p+0 : inexact-ok
+= rootn towardzero intel96 -0x4p-128 -127LL : -0x1.fd3693bc9129491ep+0 : inexact-ok
+= rootn upward intel96 -0x4p-128 -127LL : -0x1.fd3693bc9129491ep+0 : inexact-ok
+= rootn downward m68k96 -0x4p-128 -127LL : -0x1.fd3693bc9129492p+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-128 -127LL : -0x1.fd3693bc9129492p+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-128 -127LL : -0x1.fd3693bc9129491ep+0 : inexact-ok
+= rootn upward m68k96 -0x4p-128 -127LL : -0x1.fd3693bc9129491ep+0 : inexact-ok
+= rootn downward binary128 -0x4p-128 -127LL : -0x1.fd3693bc9129491f39d15718c593p+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-128 -127LL : -0x1.fd3693bc9129491f39d15718c593p+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-128 -127LL : -0x1.fd3693bc9129491f39d15718c592p+0 : inexact-ok
+= rootn upward binary128 -0x4p-128 -127LL : -0x1.fd3693bc9129491f39d15718c592p+0 : inexact-ok
+= rootn downward ibm128 -0x4p-128 -127LL : -0x1.fd3693bc9129491f39d15718c6p+0 : inexact-ok
+= rootn tonearest ibm128 -0x4p-128 -127LL : -0x1.fd3693bc9129491f39d15718c58p+0 : inexact-ok
+= rootn towardzero ibm128 -0x4p-128 -127LL : -0x1.fd3693bc9129491f39d15718c58p+0 : inexact-ok
+= rootn upward ibm128 -0x4p-128 -127LL : -0x1.fd3693bc9129491f39d15718c58p+0 : inexact-ok
+= rootn downward binary64 -0x4p-1024 -127LL : -0x1.0885a4135bf4cp+8 : inexact-ok
+= rootn tonearest binary64 -0x4p-1024 -127LL : -0x1.0885a4135bf4cp+8 : inexact-ok
+= rootn towardzero binary64 -0x4p-1024 -127LL : -0x1.0885a4135bf4bp+8 : inexact-ok
+= rootn upward binary64 -0x4p-1024 -127LL : -0x1.0885a4135bf4bp+8 : inexact-ok
+= rootn downward intel96 -0x4p-1024 -127LL : -0x1.0885a4135bf4bad4p+8 : inexact-ok
+= rootn tonearest intel96 -0x4p-1024 -127LL : -0x1.0885a4135bf4bad4p+8 : inexact-ok
+= rootn towardzero intel96 -0x4p-1024 -127LL : -0x1.0885a4135bf4bad2p+8 : inexact-ok
+= rootn upward intel96 -0x4p-1024 -127LL : -0x1.0885a4135bf4bad2p+8 : inexact-ok
+= rootn downward m68k96 -0x4p-1024 -127LL : -0x1.0885a4135bf4bad4p+8 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1024 -127LL : -0x1.0885a4135bf4bad4p+8 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1024 -127LL : -0x1.0885a4135bf4bad2p+8 : inexact-ok
+= rootn upward m68k96 -0x4p-1024 -127LL : -0x1.0885a4135bf4bad2p+8 : inexact-ok
+= rootn downward binary128 -0x4p-1024 -127LL : -0x1.0885a4135bf4bad32e4113d2879cp+8 : inexact-ok
+= rootn tonearest binary128 -0x4p-1024 -127LL : -0x1.0885a4135bf4bad32e4113d2879cp+8 : inexact-ok
+= rootn towardzero binary128 -0x4p-1024 -127LL : -0x1.0885a4135bf4bad32e4113d2879bp+8 : inexact-ok
+= rootn upward binary128 -0x4p-1024 -127LL : -0x1.0885a4135bf4bad32e4113d2879bp+8 : inexact-ok
+= rootn downward ibm128 -0x4p-1024 -127LL : -0x1.0885a4135bf4bad32e4113d288p+8 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1024 -127LL : -0x1.0885a4135bf4bad32e4113d2878p+8 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1024 -127LL : -0x1.0885a4135bf4bad32e4113d2878p+8 : inexact-ok
+= rootn upward ibm128 -0x4p-1024 -127LL : -0x1.0885a4135bf4bad32e4113d2878p+8 : inexact-ok
+= rootn downward intel96 -0x4p-16384 -127LL : -0x1.fd3693bc9129492p+128 : inexact-ok
+= rootn tonearest intel96 -0x4p-16384 -127LL : -0x1.fd3693bc9129492p+128 : inexact-ok
+= rootn towardzero intel96 -0x4p-16384 -127LL : -0x1.fd3693bc9129491ep+128 : inexact-ok
+= rootn upward intel96 -0x4p-16384 -127LL : -0x1.fd3693bc9129491ep+128 : inexact-ok
+= rootn downward m68k96 -0x4p-16384 -127LL : -0x1.fd3693bc9129492p+128 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16384 -127LL : -0x1.fd3693bc9129492p+128 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16384 -127LL : -0x1.fd3693bc9129491ep+128 : inexact-ok
+= rootn upward m68k96 -0x4p-16384 -127LL : -0x1.fd3693bc9129491ep+128 : inexact-ok
+= rootn downward binary128 -0x4p-16384 -127LL : -0x1.fd3693bc9129491f39d15718c593p+128 : inexact-ok
+= rootn tonearest binary128 -0x4p-16384 -127LL : -0x1.fd3693bc9129491f39d15718c593p+128 : inexact-ok
+= rootn towardzero binary128 -0x4p-16384 -127LL : -0x1.fd3693bc9129491f39d15718c592p+128 : inexact-ok
+= rootn upward binary128 -0x4p-16384 -127LL : -0x1.fd3693bc9129491f39d15718c592p+128 : inexact-ok
+= rootn downward intel96 -0x2p-16384 -127LL : -0x2p+128 : inexact-ok
+= rootn tonearest intel96 -0x2p-16384 -127LL : -0x2p+128 : inexact-ok
+= rootn towardzero intel96 -0x2p-16384 -127LL : -0x2p+128 : inexact-ok
+= rootn upward intel96 -0x2p-16384 -127LL : -0x2p+128 : inexact-ok
+= rootn downward m68k96 -0x2p-16384 -127LL : -0x2p+128 : inexact-ok
+= rootn tonearest m68k96 -0x2p-16384 -127LL : -0x2p+128 : inexact-ok
+= rootn towardzero m68k96 -0x2p-16384 -127LL : -0x2p+128 : inexact-ok
+= rootn upward m68k96 -0x2p-16384 -127LL : -0x2p+128 : inexact-ok
+= rootn downward binary128 -0x2p-16384 -127LL : -0x2p+128 : inexact-ok
+= rootn tonearest binary128 -0x2p-16384 -127LL : -0x2p+128 : inexact-ok
+= rootn towardzero binary128 -0x2p-16384 -127LL : -0x2p+128 : inexact-ok
+= rootn upward binary128 -0x2p-16384 -127LL : -0x2p+128 : inexact-ok
+= rootn downward binary64 -0x8p-972 -127LL : -0xc.613d792293fb8p+4 : inexact-ok
+= rootn tonearest binary64 -0x8p-972 -127LL : -0xc.613d792293fbp+4 : inexact-ok
+= rootn towardzero binary64 -0x8p-972 -127LL : -0xc.613d792293fbp+4 : inexact-ok
+= rootn upward binary64 -0x8p-972 -127LL : -0xc.613d792293fbp+4 : inexact-ok
+= rootn downward intel96 -0x8p-972 -127LL : -0xc.613d792293fb362p+4 : inexact-ok
+= rootn tonearest intel96 -0x8p-972 -127LL : -0xc.613d792293fb362p+4 : inexact-ok
+= rootn towardzero intel96 -0x8p-972 -127LL : -0xc.613d792293fb361p+4 : inexact-ok
+= rootn upward intel96 -0x8p-972 -127LL : -0xc.613d792293fb361p+4 : inexact-ok
+= rootn downward m68k96 -0x8p-972 -127LL : -0xc.613d792293fb362p+4 : inexact-ok
+= rootn tonearest m68k96 -0x8p-972 -127LL : -0xc.613d792293fb362p+4 : inexact-ok
+= rootn towardzero m68k96 -0x8p-972 -127LL : -0xc.613d792293fb361p+4 : inexact-ok
+= rootn upward m68k96 -0x8p-972 -127LL : -0xc.613d792293fb361p+4 : inexact-ok
+= rootn downward binary128 -0x8p-972 -127LL : -0xc.613d792293fb3618b866301814b8p+4 : inexact-ok
+= rootn tonearest binary128 -0x8p-972 -127LL : -0xc.613d792293fb3618b866301814b8p+4 : inexact-ok
+= rootn towardzero binary128 -0x8p-972 -127LL : -0xc.613d792293fb3618b866301814bp+4 : inexact-ok
+= rootn upward binary128 -0x8p-972 -127LL : -0xc.613d792293fb3618b866301814bp+4 : inexact-ok
+= rootn downward ibm128 -0x8p-972 -127LL : -0xc.613d792293fb3618b866301818p+4 : inexact-ok
+= rootn tonearest ibm128 -0x8p-972 -127LL : -0xc.613d792293fb3618b866301814p+4 : inexact-ok
+= rootn towardzero ibm128 -0x8p-972 -127LL : -0xc.613d792293fb3618b866301814p+4 : inexact-ok
+= rootn upward ibm128 -0x8p-972 -127LL : -0xc.613d792293fb3618b866301814p+4 : inexact-ok
+rootn -min -255
+= rootn downward binary32 -0x4p-128 -255LL : -0x1.6890c8p+0 : inexact-ok
+= rootn tonearest binary32 -0x4p-128 -255LL : -0x1.6890c6p+0 : inexact-ok
+= rootn towardzero binary32 -0x4p-128 -255LL : -0x1.6890c6p+0 : inexact-ok
+= rootn upward binary32 -0x4p-128 -255LL : -0x1.6890c6p+0 : inexact-ok
+= rootn downward binary64 -0x4p-128 -255LL : -0x1.6890c62b6ee1dp+0 : inexact-ok
+= rootn tonearest binary64 -0x4p-128 -255LL : -0x1.6890c62b6ee1dp+0 : inexact-ok
+= rootn towardzero binary64 -0x4p-128 -255LL : -0x1.6890c62b6ee1cp+0 : inexact-ok
+= rootn upward binary64 -0x4p-128 -255LL : -0x1.6890c62b6ee1cp+0 : inexact-ok
+= rootn downward intel96 -0x4p-128 -255LL : -0x1.6890c62b6ee1c9d8p+0 : inexact-ok
+= rootn tonearest intel96 -0x4p-128 -255LL : -0x1.6890c62b6ee1c9d6p+0 : inexact-ok
+= rootn towardzero intel96 -0x4p-128 -255LL : -0x1.6890c62b6ee1c9d6p+0 : inexact-ok
+= rootn upward intel96 -0x4p-128 -255LL : -0x1.6890c62b6ee1c9d6p+0 : inexact-ok
+= rootn downward m68k96 -0x4p-128 -255LL : -0x1.6890c62b6ee1c9d8p+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-128 -255LL : -0x1.6890c62b6ee1c9d6p+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-128 -255LL : -0x1.6890c62b6ee1c9d6p+0 : inexact-ok
+= rootn upward m68k96 -0x4p-128 -255LL : -0x1.6890c62b6ee1c9d6p+0 : inexact-ok
+= rootn downward binary128 -0x4p-128 -255LL : -0x1.6890c62b6ee1c9d6c1792ff0f026p+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-128 -255LL : -0x1.6890c62b6ee1c9d6c1792ff0f025p+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-128 -255LL : -0x1.6890c62b6ee1c9d6c1792ff0f025p+0 : inexact-ok
+= rootn upward binary128 -0x4p-128 -255LL : -0x1.6890c62b6ee1c9d6c1792ff0f025p+0 : inexact-ok
+= rootn downward ibm128 -0x4p-128 -255LL : -0x1.6890c62b6ee1c9d6c1792ff0f08p+0 : inexact-ok
+= rootn tonearest ibm128 -0x4p-128 -255LL : -0x1.6890c62b6ee1c9d6c1792ff0fp+0 : inexact-ok
+= rootn towardzero ibm128 -0x4p-128 -255LL : -0x1.6890c62b6ee1c9d6c1792ff0fp+0 : inexact-ok
+= rootn upward ibm128 -0x4p-128 -255LL : -0x1.6890c62b6ee1c9d6c1792ff0fp+0 : inexact-ok
+= rootn downward binary64 -0x4p-1024 -255LL : -0x1.016540d865a44p+4 : inexact-ok
+= rootn tonearest binary64 -0x4p-1024 -255LL : -0x1.016540d865a44p+4 : inexact-ok
+= rootn towardzero binary64 -0x4p-1024 -255LL : -0x1.016540d865a43p+4 : inexact-ok
+= rootn upward binary64 -0x4p-1024 -255LL : -0x1.016540d865a43p+4 : inexact-ok
+= rootn downward intel96 -0x4p-1024 -255LL : -0x1.016540d865a43a36p+4 : inexact-ok
+= rootn tonearest intel96 -0x4p-1024 -255LL : -0x1.016540d865a43a34p+4 : inexact-ok
+= rootn towardzero intel96 -0x4p-1024 -255LL : -0x1.016540d865a43a34p+4 : inexact-ok
+= rootn upward intel96 -0x4p-1024 -255LL : -0x1.016540d865a43a34p+4 : inexact-ok
+= rootn downward m68k96 -0x4p-1024 -255LL : -0x1.016540d865a43a36p+4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1024 -255LL : -0x1.016540d865a43a34p+4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1024 -255LL : -0x1.016540d865a43a34p+4 : inexact-ok
+= rootn upward m68k96 -0x4p-1024 -255LL : -0x1.016540d865a43a34p+4 : inexact-ok
+= rootn downward binary128 -0x4p-1024 -255LL : -0x1.016540d865a43a343fd329a96974p+4 : inexact-ok
+= rootn tonearest binary128 -0x4p-1024 -255LL : -0x1.016540d865a43a343fd329a96974p+4 : inexact-ok
+= rootn towardzero binary128 -0x4p-1024 -255LL : -0x1.016540d865a43a343fd329a96973p+4 : inexact-ok
+= rootn upward binary128 -0x4p-1024 -255LL : -0x1.016540d865a43a343fd329a96973p+4 : inexact-ok
+= rootn downward ibm128 -0x4p-1024 -255LL : -0x1.016540d865a43a343fd329a9698p+4 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1024 -255LL : -0x1.016540d865a43a343fd329a9698p+4 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1024 -255LL : -0x1.016540d865a43a343fd329a969p+4 : inexact-ok
+= rootn upward ibm128 -0x4p-1024 -255LL : -0x1.016540d865a43a343fd329a969p+4 : inexact-ok
+= rootn downward intel96 -0x4p-16384 -255LL : -0x1.2efe067871304924p+64 : inexact-ok
+= rootn tonearest intel96 -0x4p-16384 -255LL : -0x1.2efe067871304924p+64 : inexact-ok
+= rootn towardzero intel96 -0x4p-16384 -255LL : -0x1.2efe067871304922p+64 : inexact-ok
+= rootn upward intel96 -0x4p-16384 -255LL : -0x1.2efe067871304922p+64 : inexact-ok
+= rootn downward m68k96 -0x4p-16384 -255LL : -0x1.2efe067871304924p+64 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16384 -255LL : -0x1.2efe067871304924p+64 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16384 -255LL : -0x1.2efe067871304922p+64 : inexact-ok
+= rootn upward m68k96 -0x4p-16384 -255LL : -0x1.2efe067871304922p+64 : inexact-ok
+= rootn downward binary128 -0x4p-16384 -255LL : -0x1.2efe06787130492385df04419239p+64 : inexact-ok
+= rootn tonearest binary128 -0x4p-16384 -255LL : -0x1.2efe06787130492385df04419239p+64 : inexact-ok
+= rootn towardzero binary128 -0x4p-16384 -255LL : -0x1.2efe06787130492385df04419238p+64 : inexact-ok
+= rootn upward binary128 -0x4p-16384 -255LL : -0x1.2efe06787130492385df04419238p+64 : inexact-ok
+= rootn downward intel96 -0x2p-16384 -255LL : -0x1.2fd12768caa65beap+64 : inexact-ok
+= rootn tonearest intel96 -0x2p-16384 -255LL : -0x1.2fd12768caa65be8p+64 : inexact-ok
+= rootn towardzero intel96 -0x2p-16384 -255LL : -0x1.2fd12768caa65be8p+64 : inexact-ok
+= rootn upward intel96 -0x2p-16384 -255LL : -0x1.2fd12768caa65be8p+64 : inexact-ok
+= rootn downward m68k96 -0x2p-16384 -255LL : -0x1.2fd12768caa65beap+64 : inexact-ok
+= rootn tonearest m68k96 -0x2p-16384 -255LL : -0x1.2fd12768caa65be8p+64 : inexact-ok
+= rootn towardzero m68k96 -0x2p-16384 -255LL : -0x1.2fd12768caa65be8p+64 : inexact-ok
+= rootn upward m68k96 -0x2p-16384 -255LL : -0x1.2fd12768caa65be8p+64 : inexact-ok
+= rootn downward binary128 -0x2p-16384 -255LL : -0x1.2fd12768caa65be8a59aba280da1p+64 : inexact-ok
+= rootn tonearest binary128 -0x2p-16384 -255LL : -0x1.2fd12768caa65be8a59aba280dap+64 : inexact-ok
+= rootn towardzero binary128 -0x2p-16384 -255LL : -0x1.2fd12768caa65be8a59aba280dap+64 : inexact-ok
+= rootn upward binary128 -0x2p-16384 -255LL : -0x1.2fd12768caa65be8a59aba280dap+64 : inexact-ok
+= rootn downward binary64 -0x8p-972 -255LL : -0xd.edc66d6df0908p+0 : inexact-ok
+= rootn tonearest binary64 -0x8p-972 -255LL : -0xd.edc66d6df09p+0 : inexact-ok
+= rootn towardzero binary64 -0x8p-972 -255LL : -0xd.edc66d6df09p+0 : inexact-ok
+= rootn upward binary64 -0x8p-972 -255LL : -0xd.edc66d6df09p+0 : inexact-ok
+= rootn downward intel96 -0x8p-972 -255LL : -0xd.edc66d6df09010bp+0 : inexact-ok
+= rootn tonearest intel96 -0x8p-972 -255LL : -0xd.edc66d6df09010ap+0 : inexact-ok
+= rootn towardzero intel96 -0x8p-972 -255LL : -0xd.edc66d6df09010ap+0 : inexact-ok
+= rootn upward intel96 -0x8p-972 -255LL : -0xd.edc66d6df09010ap+0 : inexact-ok
+= rootn downward m68k96 -0x8p-972 -255LL : -0xd.edc66d6df09010bp+0 : inexact-ok
+= rootn tonearest m68k96 -0x8p-972 -255LL : -0xd.edc66d6df09010ap+0 : inexact-ok
+= rootn towardzero m68k96 -0x8p-972 -255LL : -0xd.edc66d6df09010ap+0 : inexact-ok
+= rootn upward m68k96 -0x8p-972 -255LL : -0xd.edc66d6df09010ap+0 : inexact-ok
+= rootn downward binary128 -0x8p-972 -255LL : -0xd.edc66d6df09010a7b0e98593fd5p+0 : inexact-ok
+= rootn tonearest binary128 -0x8p-972 -255LL : -0xd.edc66d6df09010a7b0e98593fd48p+0 : inexact-ok
+= rootn towardzero binary128 -0x8p-972 -255LL : -0xd.edc66d6df09010a7b0e98593fd48p+0 : inexact-ok
+= rootn upward binary128 -0x8p-972 -255LL : -0xd.edc66d6df09010a7b0e98593fd48p+0 : inexact-ok
+= rootn downward ibm128 -0x8p-972 -255LL : -0xd.edc66d6df09010a7b0e98594p+0 : inexact-ok
+= rootn tonearest ibm128 -0x8p-972 -255LL : -0xd.edc66d6df09010a7b0e98593fcp+0 : inexact-ok
+= rootn towardzero ibm128 -0x8p-972 -255LL : -0xd.edc66d6df09010a7b0e98593fcp+0 : inexact-ok
+= rootn upward ibm128 -0x8p-972 -255LL : -0xd.edc66d6df09010a7b0e98593fcp+0 : inexact-ok
+rootn -min -511
+= rootn downward binary32 -0x4p-128 -511LL : -0x1.2fb718p+0 : inexact-ok
+= rootn tonearest binary32 -0x4p-128 -511LL : -0x1.2fb718p+0 : inexact-ok
+= rootn towardzero binary32 -0x4p-128 -511LL : -0x1.2fb716p+0 : inexact-ok
+= rootn upward binary32 -0x4p-128 -511LL : -0x1.2fb716p+0 : inexact-ok
+= rootn downward binary64 -0x4p-128 -511LL : -0x1.2fb717e61b14fp+0 : inexact-ok
+= rootn tonearest binary64 -0x4p-128 -511LL : -0x1.2fb717e61b14fp+0 : inexact-ok
+= rootn towardzero binary64 -0x4p-128 -511LL : -0x1.2fb717e61b14ep+0 : inexact-ok
+= rootn upward binary64 -0x4p-128 -511LL : -0x1.2fb717e61b14ep+0 : inexact-ok
+= rootn downward intel96 -0x4p-128 -511LL : -0x1.2fb717e61b14e9bep+0 : inexact-ok
+= rootn tonearest intel96 -0x4p-128 -511LL : -0x1.2fb717e61b14e9bep+0 : inexact-ok
+= rootn towardzero intel96 -0x4p-128 -511LL : -0x1.2fb717e61b14e9bcp+0 : inexact-ok
+= rootn upward intel96 -0x4p-128 -511LL : -0x1.2fb717e61b14e9bcp+0 : inexact-ok
+= rootn downward m68k96 -0x4p-128 -511LL : -0x1.2fb717e61b14e9bep+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-128 -511LL : -0x1.2fb717e61b14e9bep+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-128 -511LL : -0x1.2fb717e61b14e9bcp+0 : inexact-ok
+= rootn upward m68k96 -0x4p-128 -511LL : -0x1.2fb717e61b14e9bcp+0 : inexact-ok
+= rootn downward binary128 -0x4p-128 -511LL : -0x1.2fb717e61b14e9bdee7794813d56p+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-128 -511LL : -0x1.2fb717e61b14e9bdee7794813d55p+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-128 -511LL : -0x1.2fb717e61b14e9bdee7794813d55p+0 : inexact-ok
+= rootn upward binary128 -0x4p-128 -511LL : -0x1.2fb717e61b14e9bdee7794813d55p+0 : inexact-ok
+= rootn downward ibm128 -0x4p-128 -511LL : -0x1.2fb717e61b14e9bdee7794813d8p+0 : inexact-ok
+= rootn tonearest ibm128 -0x4p-128 -511LL : -0x1.2fb717e61b14e9bdee7794813d8p+0 : inexact-ok
+= rootn towardzero ibm128 -0x4p-128 -511LL : -0x1.2fb717e61b14e9bdee7794813dp+0 : inexact-ok
+= rootn upward ibm128 -0x4p-128 -511LL : -0x1.2fb717e61b14e9bdee7794813dp+0 : inexact-ok
+= rootn downward binary64 -0x4p-1024 -511LL : -0x4p+0 : inexact-ok
+= rootn tonearest binary64 -0x4p-1024 -511LL : -0x4p+0 : inexact-ok
+= rootn towardzero binary64 -0x4p-1024 -511LL : -0x4p+0 : inexact-ok
+= rootn upward binary64 -0x4p-1024 -511LL : -0x4p+0 : inexact-ok
+= rootn downward intel96 -0x4p-1024 -511LL : -0x4p+0 : inexact-ok
+= rootn tonearest intel96 -0x4p-1024 -511LL : -0x4p+0 : inexact-ok
+= rootn towardzero intel96 -0x4p-1024 -511LL : -0x4p+0 : inexact-ok
+= rootn upward intel96 -0x4p-1024 -511LL : -0x4p+0 : inexact-ok
+= rootn downward m68k96 -0x4p-1024 -511LL : -0x4p+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1024 -511LL : -0x4p+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1024 -511LL : -0x4p+0 : inexact-ok
+= rootn upward m68k96 -0x4p-1024 -511LL : -0x4p+0 : inexact-ok
+= rootn downward binary128 -0x4p-1024 -511LL : -0x4p+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-1024 -511LL : -0x4p+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-1024 -511LL : -0x4p+0 : inexact-ok
+= rootn upward binary128 -0x4p-1024 -511LL : -0x4p+0 : inexact-ok
+= rootn downward ibm128 -0x4p-1024 -511LL : -0x4p+0 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1024 -511LL : -0x4p+0 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1024 -511LL : -0x4p+0 : inexact-ok
+= rootn upward ibm128 -0x4p-1024 -511LL : -0x4p+0 : inexact-ok
+= rootn downward intel96 -0x4p-16384 -511LL : -0x1.0aa1e67805449f2ap+32 : inexact-ok
+= rootn tonearest intel96 -0x4p-16384 -511LL : -0x1.0aa1e67805449f2ap+32 : inexact-ok
+= rootn towardzero intel96 -0x4p-16384 -511LL : -0x1.0aa1e67805449f28p+32 : inexact-ok
+= rootn upward intel96 -0x4p-16384 -511LL : -0x1.0aa1e67805449f28p+32 : inexact-ok
+= rootn downward m68k96 -0x4p-16384 -511LL : -0x1.0aa1e67805449f2ap+32 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16384 -511LL : -0x1.0aa1e67805449f2ap+32 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16384 -511LL : -0x1.0aa1e67805449f28p+32 : inexact-ok
+= rootn upward m68k96 -0x4p-16384 -511LL : -0x1.0aa1e67805449f28p+32 : inexact-ok
+= rootn downward binary128 -0x4p-16384 -511LL : -0x1.0aa1e67805449f2930c6cbcdc0b5p+32 : inexact-ok
+= rootn tonearest binary128 -0x4p-16384 -511LL : -0x1.0aa1e67805449f2930c6cbcdc0b5p+32 : inexact-ok
+= rootn towardzero binary128 -0x4p-16384 -511LL : -0x1.0aa1e67805449f2930c6cbcdc0b4p+32 : inexact-ok
+= rootn upward binary128 -0x4p-16384 -511LL : -0x1.0aa1e67805449f2930c6cbcdc0b4p+32 : inexact-ok
+= rootn downward intel96 -0x2p-16384 -511LL : -0x1.0afe8d3b532c3092p+32 : inexact-ok
+= rootn tonearest intel96 -0x2p-16384 -511LL : -0x1.0afe8d3b532c309p+32 : inexact-ok
+= rootn towardzero intel96 -0x2p-16384 -511LL : -0x1.0afe8d3b532c309p+32 : inexact-ok
+= rootn upward intel96 -0x2p-16384 -511LL : -0x1.0afe8d3b532c309p+32 : inexact-ok
+= rootn downward m68k96 -0x2p-16384 -511LL : -0x1.0afe8d3b532c3092p+32 : inexact-ok
+= rootn tonearest m68k96 -0x2p-16384 -511LL : -0x1.0afe8d3b532c309p+32 : inexact-ok
+= rootn towardzero m68k96 -0x2p-16384 -511LL : -0x1.0afe8d3b532c309p+32 : inexact-ok
+= rootn upward m68k96 -0x2p-16384 -511LL : -0x1.0afe8d3b532c309p+32 : inexact-ok
+= rootn downward binary128 -0x2p-16384 -511LL : -0x1.0afe8d3b532c3090882ee932f25cp+32 : inexact-ok
+= rootn tonearest binary128 -0x2p-16384 -511LL : -0x1.0afe8d3b532c3090882ee932f25cp+32 : inexact-ok
+= rootn towardzero binary128 -0x2p-16384 -511LL : -0x1.0afe8d3b532c3090882ee932f25bp+32 : inexact-ok
+= rootn upward binary128 -0x2p-16384 -511LL : -0x1.0afe8d3b532c3090882ee932f25bp+32 : inexact-ok
+= rootn downward binary64 -0x8p-972 -511LL : -0x3.b8f7715bac2c4p+0 : inexact-ok
+= rootn tonearest binary64 -0x8p-972 -511LL : -0x3.b8f7715bac2c2p+0 : inexact-ok
+= rootn towardzero binary64 -0x8p-972 -511LL : -0x3.b8f7715bac2c2p+0 : inexact-ok
+= rootn upward binary64 -0x8p-972 -511LL : -0x3.b8f7715bac2c2p+0 : inexact-ok
+= rootn downward intel96 -0x8p-972 -511LL : -0x3.b8f7715bac2c23cp+0 : inexact-ok
+= rootn tonearest intel96 -0x8p-972 -511LL : -0x3.b8f7715bac2c23cp+0 : inexact-ok
+= rootn towardzero intel96 -0x8p-972 -511LL : -0x3.b8f7715bac2c23bcp+0 : inexact-ok
+= rootn upward intel96 -0x8p-972 -511LL : -0x3.b8f7715bac2c23bcp+0 : inexact-ok
+= rootn downward m68k96 -0x8p-972 -511LL : -0x3.b8f7715bac2c23cp+0 : inexact-ok
+= rootn tonearest m68k96 -0x8p-972 -511LL : -0x3.b8f7715bac2c23cp+0 : inexact-ok
+= rootn towardzero m68k96 -0x8p-972 -511LL : -0x3.b8f7715bac2c23bcp+0 : inexact-ok
+= rootn upward m68k96 -0x8p-972 -511LL : -0x3.b8f7715bac2c23bcp+0 : inexact-ok
+= rootn downward binary128 -0x8p-972 -511LL : -0x3.b8f7715bac2c23be155335c3c65cp+0 : inexact-ok
+= rootn tonearest binary128 -0x8p-972 -511LL : -0x3.b8f7715bac2c23be155335c3c65ap+0 : inexact-ok
+= rootn towardzero binary128 -0x8p-972 -511LL : -0x3.b8f7715bac2c23be155335c3c65ap+0 : inexact-ok
+= rootn upward binary128 -0x8p-972 -511LL : -0x3.b8f7715bac2c23be155335c3c65ap+0 : inexact-ok
+= rootn downward ibm128 -0x8p-972 -511LL : -0x3.b8f7715bac2c23be155335c3c7p+0 : inexact-ok
+= rootn tonearest ibm128 -0x8p-972 -511LL : -0x3.b8f7715bac2c23be155335c3c6p+0 : inexact-ok
+= rootn towardzero ibm128 -0x8p-972 -511LL : -0x3.b8f7715bac2c23be155335c3c6p+0 : inexact-ok
+= rootn upward ibm128 -0x8p-972 -511LL : -0x3.b8f7715bac2c23be155335c3c6p+0 : inexact-ok
+rootn -min -1023
+= rootn downward binary32 -0x4p-128 -1023LL : -0x1.16d0c8p+0 : inexact-ok
+= rootn tonearest binary32 -0x4p-128 -1023LL : -0x1.16d0c8p+0 : inexact-ok
+= rootn towardzero binary32 -0x4p-128 -1023LL : -0x1.16d0c6p+0 : inexact-ok
+= rootn upward binary32 -0x4p-128 -1023LL : -0x1.16d0c6p+0 : inexact-ok
+= rootn downward binary64 -0x4p-128 -1023LL : -0x1.16d0c722590bdp+0 : inexact-ok
+= rootn tonearest binary64 -0x4p-128 -1023LL : -0x1.16d0c722590bdp+0 : inexact-ok
+= rootn towardzero binary64 -0x4p-128 -1023LL : -0x1.16d0c722590bcp+0 : inexact-ok
+= rootn upward binary64 -0x4p-128 -1023LL : -0x1.16d0c722590bcp+0 : inexact-ok
+= rootn downward intel96 -0x4p-128 -1023LL : -0x1.16d0c722590bceb8p+0 : inexact-ok
+= rootn tonearest intel96 -0x4p-128 -1023LL : -0x1.16d0c722590bceb6p+0 : inexact-ok
+= rootn towardzero intel96 -0x4p-128 -1023LL : -0x1.16d0c722590bceb6p+0 : inexact-ok
+= rootn upward intel96 -0x4p-128 -1023LL : -0x1.16d0c722590bceb6p+0 : inexact-ok
+= rootn downward m68k96 -0x4p-128 -1023LL : -0x1.16d0c722590bceb8p+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-128 -1023LL : -0x1.16d0c722590bceb6p+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-128 -1023LL : -0x1.16d0c722590bceb6p+0 : inexact-ok
+= rootn upward m68k96 -0x4p-128 -1023LL : -0x1.16d0c722590bceb6p+0 : inexact-ok
+= rootn downward binary128 -0x4p-128 -1023LL : -0x1.16d0c722590bceb6f5f68d1fe41cp+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-128 -1023LL : -0x1.16d0c722590bceb6f5f68d1fe41bp+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-128 -1023LL : -0x1.16d0c722590bceb6f5f68d1fe41bp+0 : inexact-ok
+= rootn upward binary128 -0x4p-128 -1023LL : -0x1.16d0c722590bceb6f5f68d1fe41bp+0 : inexact-ok
+= rootn downward ibm128 -0x4p-128 -1023LL : -0x1.16d0c722590bceb6f5f68d1fe48p+0 : inexact-ok
+= rootn tonearest ibm128 -0x4p-128 -1023LL : -0x1.16d0c722590bceb6f5f68d1fe4p+0 : inexact-ok
+= rootn towardzero ibm128 -0x4p-128 -1023LL : -0x1.16d0c722590bceb6f5f68d1fe4p+0 : inexact-ok
+= rootn upward ibm128 -0x4p-128 -1023LL : -0x1.16d0c722590bceb6f5f68d1fe4p+0 : inexact-ok
+= rootn downward binary64 -0x4p-1024 -1023LL : -0x1.ffa738738b10ap+0 : inexact-ok
+= rootn tonearest binary64 -0x4p-1024 -1023LL : -0x1.ffa738738b10ap+0 : inexact-ok
+= rootn towardzero binary64 -0x4p-1024 -1023LL : -0x1.ffa738738b109p+0 : inexact-ok
+= rootn upward binary64 -0x4p-1024 -1023LL : -0x1.ffa738738b109p+0 : inexact-ok
+= rootn downward intel96 -0x4p-1024 -1023LL : -0x1.ffa738738b109c42p+0 : inexact-ok
+= rootn tonearest intel96 -0x4p-1024 -1023LL : -0x1.ffa738738b109c4p+0 : inexact-ok
+= rootn towardzero intel96 -0x4p-1024 -1023LL : -0x1.ffa738738b109c4p+0 : inexact-ok
+= rootn upward intel96 -0x4p-1024 -1023LL : -0x1.ffa738738b109c4p+0 : inexact-ok
+= rootn downward m68k96 -0x4p-1024 -1023LL : -0x1.ffa738738b109c42p+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1024 -1023LL : -0x1.ffa738738b109c4p+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1024 -1023LL : -0x1.ffa738738b109c4p+0 : inexact-ok
+= rootn upward m68k96 -0x4p-1024 -1023LL : -0x1.ffa738738b109c4p+0 : inexact-ok
+= rootn downward binary128 -0x4p-1024 -1023LL : -0x1.ffa738738b109c406e08aeb4a89ep+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-1024 -1023LL : -0x1.ffa738738b109c406e08aeb4a89dp+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-1024 -1023LL : -0x1.ffa738738b109c406e08aeb4a89dp+0 : inexact-ok
+= rootn upward binary128 -0x4p-1024 -1023LL : -0x1.ffa738738b109c406e08aeb4a89dp+0 : inexact-ok
+= rootn downward ibm128 -0x4p-1024 -1023LL : -0x1.ffa738738b109c406e08aeb4a9p+0 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1024 -1023LL : -0x1.ffa738738b109c406e08aeb4a88p+0 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1024 -1023LL : -0x1.ffa738738b109c406e08aeb4a88p+0 : inexact-ok
+= rootn upward ibm128 -0x4p-1024 -1023LL : -0x1.ffa738738b109c406e08aeb4a88p+0 : inexact-ok
+= rootn downward intel96 -0x4p-16384 -1023LL : -0x1.02709ff5f03e12d4p+16 : inexact-ok
+= rootn tonearest intel96 -0x4p-16384 -1023LL : -0x1.02709ff5f03e12d2p+16 : inexact-ok
+= rootn towardzero intel96 -0x4p-16384 -1023LL : -0x1.02709ff5f03e12d2p+16 : inexact-ok
+= rootn upward intel96 -0x4p-16384 -1023LL : -0x1.02709ff5f03e12d2p+16 : inexact-ok
+= rootn downward m68k96 -0x4p-16384 -1023LL : -0x1.02709ff5f03e12d4p+16 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16384 -1023LL : -0x1.02709ff5f03e12d2p+16 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16384 -1023LL : -0x1.02709ff5f03e12d2p+16 : inexact-ok
+= rootn upward m68k96 -0x4p-16384 -1023LL : -0x1.02709ff5f03e12d2p+16 : inexact-ok
+= rootn downward binary128 -0x4p-16384 -1023LL : -0x1.02709ff5f03e12d238c033d01266p+16 : inexact-ok
+= rootn tonearest binary128 -0x4p-16384 -1023LL : -0x1.02709ff5f03e12d238c033d01265p+16 : inexact-ok
+= rootn towardzero binary128 -0x4p-16384 -1023LL : -0x1.02709ff5f03e12d238c033d01265p+16 : inexact-ok
+= rootn upward binary128 -0x4p-16384 -1023LL : -0x1.02709ff5f03e12d238c033d01265p+16 : inexact-ok
+= rootn downward intel96 -0x2p-16384 -1023LL : -0x1.029d77d1ae796a6p+16 : inexact-ok
+= rootn tonearest intel96 -0x2p-16384 -1023LL : -0x1.029d77d1ae796a6p+16 : inexact-ok
+= rootn towardzero intel96 -0x2p-16384 -1023LL : -0x1.029d77d1ae796a5ep+16 : inexact-ok
+= rootn upward intel96 -0x2p-16384 -1023LL : -0x1.029d77d1ae796a5ep+16 : inexact-ok
+= rootn downward m68k96 -0x2p-16384 -1023LL : -0x1.029d77d1ae796a6p+16 : inexact-ok
+= rootn tonearest m68k96 -0x2p-16384 -1023LL : -0x1.029d77d1ae796a6p+16 : inexact-ok
+= rootn towardzero m68k96 -0x2p-16384 -1023LL : -0x1.029d77d1ae796a5ep+16 : inexact-ok
+= rootn upward m68k96 -0x2p-16384 -1023LL : -0x1.029d77d1ae796a5ep+16 : inexact-ok
+= rootn downward binary128 -0x2p-16384 -1023LL : -0x1.029d77d1ae796a5f8d43eb370b8dp+16 : inexact-ok
+= rootn tonearest binary128 -0x2p-16384 -1023LL : -0x1.029d77d1ae796a5f8d43eb370b8cp+16 : inexact-ok
+= rootn towardzero binary128 -0x2p-16384 -1023LL : -0x1.029d77d1ae796a5f8d43eb370b8cp+16 : inexact-ok
+= rootn upward binary128 -0x2p-16384 -1023LL : -0x1.029d77d1ae796a5f8d43eb370b8cp+16 : inexact-ok
+= rootn downward binary64 -0x8p-972 -1023LL : -0x1.ed9af4f7d4d18p+0 : inexact-ok
+= rootn tonearest binary64 -0x8p-972 -1023LL : -0x1.ed9af4f7d4d17p+0 : inexact-ok
+= rootn towardzero binary64 -0x8p-972 -1023LL : -0x1.ed9af4f7d4d17p+0 : inexact-ok
+= rootn upward binary64 -0x8p-972 -1023LL : -0x1.ed9af4f7d4d17p+0 : inexact-ok
+= rootn downward intel96 -0x8p-972 -1023LL : -0x1.ed9af4f7d4d173dcp+0 : inexact-ok
+= rootn tonearest intel96 -0x8p-972 -1023LL : -0x1.ed9af4f7d4d173dcp+0 : inexact-ok
+= rootn towardzero intel96 -0x8p-972 -1023LL : -0x1.ed9af4f7d4d173dap+0 : inexact-ok
+= rootn upward intel96 -0x8p-972 -1023LL : -0x1.ed9af4f7d4d173dap+0 : inexact-ok
+= rootn downward m68k96 -0x8p-972 -1023LL : -0x1.ed9af4f7d4d173dcp+0 : inexact-ok
+= rootn tonearest m68k96 -0x8p-972 -1023LL : -0x1.ed9af4f7d4d173dcp+0 : inexact-ok
+= rootn towardzero m68k96 -0x8p-972 -1023LL : -0x1.ed9af4f7d4d173dap+0 : inexact-ok
+= rootn upward m68k96 -0x8p-972 -1023LL : -0x1.ed9af4f7d4d173dap+0 : inexact-ok
+= rootn downward binary128 -0x8p-972 -1023LL : -0x1.ed9af4f7d4d173db89301f3aa006p+0 : inexact-ok
+= rootn tonearest binary128 -0x8p-972 -1023LL : -0x1.ed9af4f7d4d173db89301f3aa006p+0 : inexact-ok
+= rootn towardzero binary128 -0x8p-972 -1023LL : -0x1.ed9af4f7d4d173db89301f3aa005p+0 : inexact-ok
+= rootn upward binary128 -0x8p-972 -1023LL : -0x1.ed9af4f7d4d173db89301f3aa005p+0 : inexact-ok
+= rootn downward ibm128 -0x8p-972 -1023LL : -0x1.ed9af4f7d4d173db89301f3aa08p+0 : inexact-ok
+= rootn tonearest ibm128 -0x8p-972 -1023LL : -0x1.ed9af4f7d4d173db89301f3aap+0 : inexact-ok
+= rootn towardzero ibm128 -0x8p-972 -1023LL : -0x1.ed9af4f7d4d173db89301f3aap+0 : inexact-ok
+= rootn upward ibm128 -0x8p-972 -1023LL : -0x1.ed9af4f7d4d173db89301f3aap+0 : inexact-ok
+rootn -min -16383
+= rootn downward binary32 -0x4p-128 -16383LL : -0x1.015e4ep+0 : inexact-ok
+= rootn tonearest binary32 -0x4p-128 -16383LL : -0x1.015e4cp+0 : inexact-ok
+= rootn towardzero binary32 -0x4p-128 -16383LL : -0x1.015e4cp+0 : inexact-ok
+= rootn upward binary32 -0x4p-128 -16383LL : -0x1.015e4cp+0 : inexact-ok
+= rootn downward binary64 -0x4p-128 -16383LL : -0x1.015e4ce6130f8p+0 : inexact-ok
+= rootn tonearest binary64 -0x4p-128 -16383LL : -0x1.015e4ce6130f8p+0 : inexact-ok
+= rootn towardzero binary64 -0x4p-128 -16383LL : -0x1.015e4ce6130f7p+0 : inexact-ok
+= rootn upward binary64 -0x4p-128 -16383LL : -0x1.015e4ce6130f7p+0 : inexact-ok
+= rootn downward intel96 -0x4p-128 -16383LL : -0x1.015e4ce6130f7ee4p+0 : inexact-ok
+= rootn tonearest intel96 -0x4p-128 -16383LL : -0x1.015e4ce6130f7ee2p+0 : inexact-ok
+= rootn towardzero intel96 -0x4p-128 -16383LL : -0x1.015e4ce6130f7ee2p+0 : inexact-ok
+= rootn upward intel96 -0x4p-128 -16383LL : -0x1.015e4ce6130f7ee2p+0 : inexact-ok
+= rootn downward m68k96 -0x4p-128 -16383LL : -0x1.015e4ce6130f7ee4p+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-128 -16383LL : -0x1.015e4ce6130f7ee2p+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-128 -16383LL : -0x1.015e4ce6130f7ee2p+0 : inexact-ok
+= rootn upward m68k96 -0x4p-128 -16383LL : -0x1.015e4ce6130f7ee2p+0 : inexact-ok
+= rootn downward binary128 -0x4p-128 -16383LL : -0x1.015e4ce6130f7ee2e981ec907892p+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-128 -16383LL : -0x1.015e4ce6130f7ee2e981ec907891p+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-128 -16383LL : -0x1.015e4ce6130f7ee2e981ec907891p+0 : inexact-ok
+= rootn upward binary128 -0x4p-128 -16383LL : -0x1.015e4ce6130f7ee2e981ec907891p+0 : inexact-ok
+= rootn downward ibm128 -0x4p-128 -16383LL : -0x1.015e4ce6130f7ee2e981ec9079p+0 : inexact-ok
+= rootn tonearest ibm128 -0x4p-128 -16383LL : -0x1.015e4ce6130f7ee2e981ec90788p+0 : inexact-ok
+= rootn towardzero ibm128 -0x4p-128 -16383LL : -0x1.015e4ce6130f7ee2e981ec90788p+0 : inexact-ok
+= rootn upward ibm128 -0x4p-128 -16383LL : -0x1.015e4ce6130f7ee2e981ec90788p+0 : inexact-ok
+= rootn downward binary64 -0x4p-1024 -16383LL : -0x1.0b4feab150b7ap+0 : inexact-ok
+= rootn tonearest binary64 -0x4p-1024 -16383LL : -0x1.0b4feab150b79p+0 : inexact-ok
+= rootn towardzero binary64 -0x4p-1024 -16383LL : -0x1.0b4feab150b79p+0 : inexact-ok
+= rootn upward binary64 -0x4p-1024 -16383LL : -0x1.0b4feab150b79p+0 : inexact-ok
+= rootn downward intel96 -0x4p-1024 -16383LL : -0x1.0b4feab150b790e8p+0 : inexact-ok
+= rootn tonearest intel96 -0x4p-1024 -16383LL : -0x1.0b4feab150b790e6p+0 : inexact-ok
+= rootn towardzero intel96 -0x4p-1024 -16383LL : -0x1.0b4feab150b790e6p+0 : inexact-ok
+= rootn upward intel96 -0x4p-1024 -16383LL : -0x1.0b4feab150b790e6p+0 : inexact-ok
+= rootn downward m68k96 -0x4p-1024 -16383LL : -0x1.0b4feab150b790e8p+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1024 -16383LL : -0x1.0b4feab150b790e6p+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1024 -16383LL : -0x1.0b4feab150b790e6p+0 : inexact-ok
+= rootn upward m68k96 -0x4p-1024 -16383LL : -0x1.0b4feab150b790e6p+0 : inexact-ok
+= rootn downward binary128 -0x4p-1024 -16383LL : -0x1.0b4feab150b790e64c3d2be969d6p+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-1024 -16383LL : -0x1.0b4feab150b790e64c3d2be969d6p+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-1024 -16383LL : -0x1.0b4feab150b790e64c3d2be969d5p+0 : inexact-ok
+= rootn upward binary128 -0x4p-1024 -16383LL : -0x1.0b4feab150b790e64c3d2be969d5p+0 : inexact-ok
+= rootn downward ibm128 -0x4p-1024 -16383LL : -0x1.0b4feab150b790e64c3d2be96ap+0 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1024 -16383LL : -0x1.0b4feab150b790e64c3d2be96ap+0 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1024 -16383LL : -0x1.0b4feab150b790e64c3d2be9698p+0 : inexact-ok
+= rootn upward ibm128 -0x4p-1024 -16383LL : -0x1.0b4feab150b790e64c3d2be9698p+0 : inexact-ok
+= rootn downward intel96 -0x4p-16384 -16383LL : -0x1.fffa7460c1cb9dd8p+0 : inexact-ok
+= rootn tonearest intel96 -0x4p-16384 -16383LL : -0x1.fffa7460c1cb9dd6p+0 : inexact-ok
+= rootn towardzero intel96 -0x4p-16384 -16383LL : -0x1.fffa7460c1cb9dd6p+0 : inexact-ok
+= rootn upward intel96 -0x4p-16384 -16383LL : -0x1.fffa7460c1cb9dd6p+0 : inexact-ok
+= rootn downward m68k96 -0x4p-16384 -16383LL : -0x1.fffa7460c1cb9dd8p+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16384 -16383LL : -0x1.fffa7460c1cb9dd6p+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16384 -16383LL : -0x1.fffa7460c1cb9dd6p+0 : inexact-ok
+= rootn upward m68k96 -0x4p-16384 -16383LL : -0x1.fffa7460c1cb9dd6p+0 : inexact-ok
+= rootn downward binary128 -0x4p-16384 -16383LL : -0x1.fffa7460c1cb9dd63b8068fab659p+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-16384 -16383LL : -0x1.fffa7460c1cb9dd63b8068fab658p+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-16384 -16383LL : -0x1.fffa7460c1cb9dd63b8068fab658p+0 : inexact-ok
+= rootn upward binary128 -0x4p-16384 -16383LL : -0x1.fffa7460c1cb9dd63b8068fab658p+0 : inexact-ok
+= rootn downward intel96 -0x2p-16384 -16383LL : -0x2p+0 : inexact-ok
+= rootn tonearest intel96 -0x2p-16384 -16383LL : -0x2p+0 : inexact-ok
+= rootn towardzero intel96 -0x2p-16384 -16383LL : -0x2p+0 : inexact-ok
+= rootn upward intel96 -0x2p-16384 -16383LL : -0x2p+0 : inexact-ok
+= rootn downward m68k96 -0x2p-16384 -16383LL : -0x2p+0 : inexact-ok
+= rootn tonearest m68k96 -0x2p-16384 -16383LL : -0x2p+0 : inexact-ok
+= rootn towardzero m68k96 -0x2p-16384 -16383LL : -0x2p+0 : inexact-ok
+= rootn upward m68k96 -0x2p-16384 -16383LL : -0x2p+0 : inexact-ok
+= rootn downward binary128 -0x2p-16384 -16383LL : -0x2p+0 : inexact-ok
+= rootn tonearest binary128 -0x2p-16384 -16383LL : -0x2p+0 : inexact-ok
+= rootn towardzero binary128 -0x2p-16384 -16383LL : -0x2p+0 : inexact-ok
+= rootn upward binary128 -0x2p-16384 -16383LL : -0x2p+0 : inexact-ok
+= rootn downward binary64 -0x8p-972 -16383LL : -0x1.0ab6a38794f3p+0 : inexact-ok
+= rootn tonearest binary64 -0x8p-972 -16383LL : -0x1.0ab6a38794f3p+0 : inexact-ok
+= rootn towardzero binary64 -0x8p-972 -16383LL : -0x1.0ab6a38794f2fp+0 : inexact-ok
+= rootn upward binary64 -0x8p-972 -16383LL : -0x1.0ab6a38794f2fp+0 : inexact-ok
+= rootn downward intel96 -0x8p-972 -16383LL : -0x1.0ab6a38794f2f83ap+0 : inexact-ok
+= rootn tonearest intel96 -0x8p-972 -16383LL : -0x1.0ab6a38794f2f83ap+0 : inexact-ok
+= rootn towardzero intel96 -0x8p-972 -16383LL : -0x1.0ab6a38794f2f838p+0 : inexact-ok
+= rootn upward intel96 -0x8p-972 -16383LL : -0x1.0ab6a38794f2f838p+0 : inexact-ok
+= rootn downward m68k96 -0x8p-972 -16383LL : -0x1.0ab6a38794f2f83ap+0 : inexact-ok
+= rootn tonearest m68k96 -0x8p-972 -16383LL : -0x1.0ab6a38794f2f83ap+0 : inexact-ok
+= rootn towardzero m68k96 -0x8p-972 -16383LL : -0x1.0ab6a38794f2f838p+0 : inexact-ok
+= rootn upward m68k96 -0x8p-972 -16383LL : -0x1.0ab6a38794f2f838p+0 : inexact-ok
+= rootn downward binary128 -0x8p-972 -16383LL : -0x1.0ab6a38794f2f83982b4770c4ce8p+0 : inexact-ok
+= rootn tonearest binary128 -0x8p-972 -16383LL : -0x1.0ab6a38794f2f83982b4770c4ce7p+0 : inexact-ok
+= rootn towardzero binary128 -0x8p-972 -16383LL : -0x1.0ab6a38794f2f83982b4770c4ce7p+0 : inexact-ok
+= rootn upward binary128 -0x8p-972 -16383LL : -0x1.0ab6a38794f2f83982b4770c4ce7p+0 : inexact-ok
+= rootn downward ibm128 -0x8p-972 -16383LL : -0x1.0ab6a38794f2f83982b4770c4dp+0 : inexact-ok
+= rootn tonearest ibm128 -0x8p-972 -16383LL : -0x1.0ab6a38794f2f83982b4770c4dp+0 : inexact-ok
+= rootn towardzero ibm128 -0x8p-972 -16383LL : -0x1.0ab6a38794f2f83982b4770c4c8p+0 : inexact-ok
+= rootn upward ibm128 -0x8p-972 -16383LL : -0x1.0ab6a38794f2f83982b4770c4c8p+0 : inexact-ok
+rootn -min -0x1000001
+= rootn downward binary32 -0x4p-128 -16777217LL : -0x1.000058p+0 : inexact-ok
+= rootn tonearest binary32 -0x4p-128 -16777217LL : -0x1.000058p+0 : inexact-ok
+= rootn towardzero binary32 -0x4p-128 -16777217LL : -0x1.000056p+0 : inexact-ok
+= rootn upward binary32 -0x4p-128 -16777217LL : -0x1.000056p+0 : inexact-ok
+= rootn downward binary64 -0x4p-128 -16777217LL : -0x1.00005756365a8p+0 : inexact-ok
+= rootn tonearest binary64 -0x4p-128 -16777217LL : -0x1.00005756365a8p+0 : inexact-ok
+= rootn towardzero binary64 -0x4p-128 -16777217LL : -0x1.00005756365a7p+0 : inexact-ok
+= rootn upward binary64 -0x4p-128 -16777217LL : -0x1.00005756365a7p+0 : inexact-ok
+= rootn downward intel96 -0x4p-128 -16777217LL : -0x1.00005756365a7ab8p+0 : inexact-ok
+= rootn tonearest intel96 -0x4p-128 -16777217LL : -0x1.00005756365a7ab6p+0 : inexact-ok
+= rootn towardzero intel96 -0x4p-128 -16777217LL : -0x1.00005756365a7ab6p+0 : inexact-ok
+= rootn upward intel96 -0x4p-128 -16777217LL : -0x1.00005756365a7ab6p+0 : inexact-ok
+= rootn downward m68k96 -0x4p-128 -16777217LL : -0x1.00005756365a7ab8p+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-128 -16777217LL : -0x1.00005756365a7ab6p+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-128 -16777217LL : -0x1.00005756365a7ab6p+0 : inexact-ok
+= rootn upward m68k96 -0x4p-128 -16777217LL : -0x1.00005756365a7ab6p+0 : inexact-ok
+= rootn downward binary128 -0x4p-128 -16777217LL : -0x1.00005756365a7ab6461d7f30eb43p+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-128 -16777217LL : -0x1.00005756365a7ab6461d7f30eb42p+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-128 -16777217LL : -0x1.00005756365a7ab6461d7f30eb42p+0 : inexact-ok
+= rootn upward binary128 -0x4p-128 -16777217LL : -0x1.00005756365a7ab6461d7f30eb42p+0 : inexact-ok
+= rootn downward ibm128 -0x4p-128 -16777217LL : -0x1.00005756365a7ab6461d7f30eb8p+0 : inexact-ok
+= rootn tonearest ibm128 -0x4p-128 -16777217LL : -0x1.00005756365a7ab6461d7f30eb8p+0 : inexact-ok
+= rootn towardzero ibm128 -0x4p-128 -16777217LL : -0x1.00005756365a7ab6461d7f30ebp+0 : inexact-ok
+= rootn upward ibm128 -0x4p-128 -16777217LL : -0x1.00005756365a7ab6461d7f30ebp+0 : inexact-ok
+= rootn downward binary64 -0x4p-1024 -16777217LL : -0x1.0002c4694d0f4p+0 : inexact-ok
+= rootn tonearest binary64 -0x4p-1024 -16777217LL : -0x1.0002c4694d0f3p+0 : inexact-ok
+= rootn towardzero binary64 -0x4p-1024 -16777217LL : -0x1.0002c4694d0f3p+0 : inexact-ok
+= rootn upward binary64 -0x4p-1024 -16777217LL : -0x1.0002c4694d0f3p+0 : inexact-ok
+= rootn downward intel96 -0x4p-1024 -16777217LL : -0x1.0002c4694d0f30bap+0 : inexact-ok
+= rootn tonearest intel96 -0x4p-1024 -16777217LL : -0x1.0002c4694d0f30bap+0 : inexact-ok
+= rootn towardzero intel96 -0x4p-1024 -16777217LL : -0x1.0002c4694d0f30b8p+0 : inexact-ok
+= rootn upward intel96 -0x4p-1024 -16777217LL : -0x1.0002c4694d0f30b8p+0 : inexact-ok
+= rootn downward m68k96 -0x4p-1024 -16777217LL : -0x1.0002c4694d0f30bap+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1024 -16777217LL : -0x1.0002c4694d0f30bap+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1024 -16777217LL : -0x1.0002c4694d0f30b8p+0 : inexact-ok
+= rootn upward m68k96 -0x4p-1024 -16777217LL : -0x1.0002c4694d0f30b8p+0 : inexact-ok
+= rootn downward binary128 -0x4p-1024 -16777217LL : -0x1.0002c4694d0f30b98d5307ada185p+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-1024 -16777217LL : -0x1.0002c4694d0f30b98d5307ada184p+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-1024 -16777217LL : -0x1.0002c4694d0f30b98d5307ada184p+0 : inexact-ok
+= rootn upward binary128 -0x4p-1024 -16777217LL : -0x1.0002c4694d0f30b98d5307ada184p+0 : inexact-ok
+= rootn downward ibm128 -0x4p-1024 -16777217LL : -0x1.0002c4694d0f30b98d5307ada2p+0 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1024 -16777217LL : -0x1.0002c4694d0f30b98d5307ada18p+0 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1024 -16777217LL : -0x1.0002c4694d0f30b98d5307ada18p+0 : inexact-ok
+= rootn upward ibm128 -0x4p-1024 -16777217LL : -0x1.0002c4694d0f30b98d5307ada18p+0 : inexact-ok
+= rootn downward intel96 -0x4p-16384 -16777217LL : -0x1.002c5efae0764f6ap+0 : inexact-ok
+= rootn tonearest intel96 -0x4p-16384 -16777217LL : -0x1.002c5efae0764f6ap+0 : inexact-ok
+= rootn towardzero intel96 -0x4p-16384 -16777217LL : -0x1.002c5efae0764f68p+0 : inexact-ok
+= rootn upward intel96 -0x4p-16384 -16777217LL : -0x1.002c5efae0764f68p+0 : inexact-ok
+= rootn downward m68k96 -0x4p-16384 -16777217LL : -0x1.002c5efae0764f6ap+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16384 -16777217LL : -0x1.002c5efae0764f6ap+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16384 -16777217LL : -0x1.002c5efae0764f68p+0 : inexact-ok
+= rootn upward m68k96 -0x4p-16384 -16777217LL : -0x1.002c5efae0764f68p+0 : inexact-ok
+= rootn downward binary128 -0x4p-16384 -16777217LL : -0x1.002c5efae0764f698944b57bc6c5p+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-16384 -16777217LL : -0x1.002c5efae0764f698944b57bc6c4p+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-16384 -16777217LL : -0x1.002c5efae0764f698944b57bc6c4p+0 : inexact-ok
+= rootn upward binary128 -0x4p-16384 -16777217LL : -0x1.002c5efae0764f698944b57bc6c4p+0 : inexact-ok
+= rootn downward intel96 -0x2p-16384 -16777217LL : -0x1.002c5fac714f451ep+0 : inexact-ok
+= rootn tonearest intel96 -0x2p-16384 -16777217LL : -0x1.002c5fac714f451ep+0 : inexact-ok
+= rootn towardzero intel96 -0x2p-16384 -16777217LL : -0x1.002c5fac714f451cp+0 : inexact-ok
+= rootn upward intel96 -0x2p-16384 -16777217LL : -0x1.002c5fac714f451cp+0 : inexact-ok
+= rootn downward m68k96 -0x2p-16384 -16777217LL : -0x1.002c5fac714f451ep+0 : inexact-ok
+= rootn tonearest m68k96 -0x2p-16384 -16777217LL : -0x1.002c5fac714f451ep+0 : inexact-ok
+= rootn towardzero m68k96 -0x2p-16384 -16777217LL : -0x1.002c5fac714f451cp+0 : inexact-ok
+= rootn upward m68k96 -0x2p-16384 -16777217LL : -0x1.002c5fac714f451cp+0 : inexact-ok
+= rootn downward binary128 -0x2p-16384 -16777217LL : -0x1.002c5fac714f451d0aa0162a5992p+0 : inexact-ok
+= rootn tonearest binary128 -0x2p-16384 -16777217LL : -0x1.002c5fac714f451d0aa0162a5992p+0 : inexact-ok
+= rootn towardzero binary128 -0x2p-16384 -16777217LL : -0x1.002c5fac714f451d0aa0162a5991p+0 : inexact-ok
+= rootn upward binary128 -0x2p-16384 -16777217LL : -0x1.002c5fac714f451d0aa0162a5991p+0 : inexact-ok
+= rootn downward binary64 -0x8p-972 -16777217LL : -0x1.00029fac4b37bp+0 : inexact-ok
+= rootn tonearest binary64 -0x8p-972 -16777217LL : -0x1.00029fac4b37bp+0 : inexact-ok
+= rootn towardzero binary64 -0x8p-972 -16777217LL : -0x1.00029fac4b37ap+0 : inexact-ok
+= rootn upward binary64 -0x8p-972 -16777217LL : -0x1.00029fac4b37ap+0 : inexact-ok
+= rootn downward intel96 -0x8p-972 -16777217LL : -0x1.00029fac4b37ae4p+0 : inexact-ok
+= rootn tonearest intel96 -0x8p-972 -16777217LL : -0x1.00029fac4b37ae3ep+0 : inexact-ok
+= rootn towardzero intel96 -0x8p-972 -16777217LL : -0x1.00029fac4b37ae3ep+0 : inexact-ok
+= rootn upward intel96 -0x8p-972 -16777217LL : -0x1.00029fac4b37ae3ep+0 : inexact-ok
+= rootn downward m68k96 -0x8p-972 -16777217LL : -0x1.00029fac4b37ae4p+0 : inexact-ok
+= rootn tonearest m68k96 -0x8p-972 -16777217LL : -0x1.00029fac4b37ae3ep+0 : inexact-ok
+= rootn towardzero m68k96 -0x8p-972 -16777217LL : -0x1.00029fac4b37ae3ep+0 : inexact-ok
+= rootn upward m68k96 -0x8p-972 -16777217LL : -0x1.00029fac4b37ae3ep+0 : inexact-ok
+= rootn downward binary128 -0x8p-972 -16777217LL : -0x1.00029fac4b37ae3e1af6730bce15p+0 : inexact-ok
+= rootn tonearest binary128 -0x8p-972 -16777217LL : -0x1.00029fac4b37ae3e1af6730bce15p+0 : inexact-ok
+= rootn towardzero binary128 -0x8p-972 -16777217LL : -0x1.00029fac4b37ae3e1af6730bce14p+0 : inexact-ok
+= rootn upward binary128 -0x8p-972 -16777217LL : -0x1.00029fac4b37ae3e1af6730bce14p+0 : inexact-ok
+= rootn downward ibm128 -0x8p-972 -16777217LL : -0x1.00029fac4b37ae3e1af6730bce8p+0 : inexact-ok
+= rootn tonearest ibm128 -0x8p-972 -16777217LL : -0x1.00029fac4b37ae3e1af6730bcep+0 : inexact-ok
+= rootn towardzero ibm128 -0x8p-972 -16777217LL : -0x1.00029fac4b37ae3e1af6730bcep+0 : inexact-ok
+= rootn upward ibm128 -0x8p-972 -16777217LL : -0x1.00029fac4b37ae3e1af6730bcep+0 : inexact-ok
+rootn -min -0x10000000000001
+= rootn downward binary32 -0x4p-128 -4503599627370497LL : -0x1.000002p+0 : inexact-ok
+= rootn tonearest binary32 -0x4p-128 -4503599627370497LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary32 -0x4p-128 -4503599627370497LL : -0x1p+0 : inexact-ok
+= rootn upward binary32 -0x4p-128 -4503599627370497LL : -0x1p+0 : inexact-ok
+= rootn downward binary64 -0x4p-128 -4503599627370497LL : -0x1.0000000000058p+0 : inexact-ok
+= rootn tonearest binary64 -0x4p-128 -4503599627370497LL : -0x1.0000000000057p+0 : inexact-ok
+= rootn towardzero binary64 -0x4p-128 -4503599627370497LL : -0x1.0000000000057p+0 : inexact-ok
+= rootn upward binary64 -0x4p-128 -4503599627370497LL : -0x1.0000000000057p+0 : inexact-ok
+= rootn downward intel96 -0x4p-128 -4503599627370497LL : -0x1.0000000000057564p+0 : inexact-ok
+= rootn tonearest intel96 -0x4p-128 -4503599627370497LL : -0x1.0000000000057562p+0 : inexact-ok
+= rootn towardzero intel96 -0x4p-128 -4503599627370497LL : -0x1.0000000000057562p+0 : inexact-ok
+= rootn upward intel96 -0x4p-128 -4503599627370497LL : -0x1.0000000000057562p+0 : inexact-ok
+= rootn downward m68k96 -0x4p-128 -4503599627370497LL : -0x1.0000000000057564p+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-128 -4503599627370497LL : -0x1.0000000000057562p+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-128 -4503599627370497LL : -0x1.0000000000057562p+0 : inexact-ok
+= rootn upward m68k96 -0x4p-128 -4503599627370497LL : -0x1.0000000000057562p+0 : inexact-ok
+= rootn downward binary128 -0x4p-128 -4503599627370497LL : -0x1.00000000000575627cbf94506ca9p+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-128 -4503599627370497LL : -0x1.00000000000575627cbf94506ca9p+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-128 -4503599627370497LL : -0x1.00000000000575627cbf94506ca8p+0 : inexact-ok
+= rootn upward binary128 -0x4p-128 -4503599627370497LL : -0x1.00000000000575627cbf94506ca8p+0 : inexact-ok
+= rootn downward ibm128 -0x4p-128 -4503599627370497LL : -0x1.00000000000575627cbf94506dp+0 : inexact-ok
+= rootn tonearest ibm128 -0x4p-128 -4503599627370497LL : -0x1.00000000000575627cbf94506c8p+0 : inexact-ok
+= rootn towardzero ibm128 -0x4p-128 -4503599627370497LL : -0x1.00000000000575627cbf94506c8p+0 : inexact-ok
+= rootn upward ibm128 -0x4p-128 -4503599627370497LL : -0x1.00000000000575627cbf94506c8p+0 : inexact-ok
+= rootn downward binary64 -0x4p-1024 -4503599627370497LL : -0x1.00000000002c5p+0 : inexact-ok
+= rootn tonearest binary64 -0x4p-1024 -4503599627370497LL : -0x1.00000000002c4p+0 : inexact-ok
+= rootn towardzero binary64 -0x4p-1024 -4503599627370497LL : -0x1.00000000002c4p+0 : inexact-ok
+= rootn upward binary64 -0x4p-1024 -4503599627370497LL : -0x1.00000000002c4p+0 : inexact-ok
+= rootn downward intel96 -0x4p-1024 -4503599627370497LL : -0x1.00000000002c4658p+0 : inexact-ok
+= rootn tonearest intel96 -0x4p-1024 -4503599627370497LL : -0x1.00000000002c4658p+0 : inexact-ok
+= rootn towardzero intel96 -0x4p-1024 -4503599627370497LL : -0x1.00000000002c4656p+0 : inexact-ok
+= rootn upward intel96 -0x4p-1024 -4503599627370497LL : -0x1.00000000002c4656p+0 : inexact-ok
+= rootn downward m68k96 -0x4p-1024 -4503599627370497LL : -0x1.00000000002c4658p+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1024 -4503599627370497LL : -0x1.00000000002c4658p+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1024 -4503599627370497LL : -0x1.00000000002c4656p+0 : inexact-ok
+= rootn upward m68k96 -0x4p-1024 -4503599627370497LL : -0x1.00000000002c4656p+0 : inexact-ok
+= rootn downward binary128 -0x4p-1024 -4503599627370497LL : -0x1.00000000002c4657baf57d75d816p+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-1024 -4503599627370497LL : -0x1.00000000002c4657baf57d75d816p+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-1024 -4503599627370497LL : -0x1.00000000002c4657baf57d75d815p+0 : inexact-ok
+= rootn upward binary128 -0x4p-1024 -4503599627370497LL : -0x1.00000000002c4657baf57d75d815p+0 : inexact-ok
+= rootn downward ibm128 -0x4p-1024 -4503599627370497LL : -0x1.00000000002c4657baf57d75d88p+0 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1024 -4503599627370497LL : -0x1.00000000002c4657baf57d75d8p+0 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1024 -4503599627370497LL : -0x1.00000000002c4657baf57d75d8p+0 : inexact-ok
+= rootn upward ibm128 -0x4p-1024 -4503599627370497LL : -0x1.00000000002c4657baf57d75d8p+0 : inexact-ok
+= rootn downward intel96 -0x4p-16384 -4503599627370497LL : -0x1.0000000002c5b232p+0 : inexact-ok
+= rootn tonearest intel96 -0x4p-16384 -4503599627370497LL : -0x1.0000000002c5b232p+0 : inexact-ok
+= rootn towardzero intel96 -0x4p-16384 -4503599627370497LL : -0x1.0000000002c5b23p+0 : inexact-ok
+= rootn upward intel96 -0x4p-16384 -4503599627370497LL : -0x1.0000000002c5b23p+0 : inexact-ok
+= rootn downward m68k96 -0x4p-16384 -4503599627370497LL : -0x1.0000000002c5b232p+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16384 -4503599627370497LL : -0x1.0000000002c5b232p+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16384 -4503599627370497LL : -0x1.0000000002c5b23p+0 : inexact-ok
+= rootn upward m68k96 -0x4p-16384 -4503599627370497LL : -0x1.0000000002c5b23p+0 : inexact-ok
+= rootn downward binary128 -0x4p-16384 -4503599627370497LL : -0x1.0000000002c5b2319c4c1b3aa63ap+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-16384 -4503599627370497LL : -0x1.0000000002c5b2319c4c1b3aa639p+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-16384 -4503599627370497LL : -0x1.0000000002c5b2319c4c1b3aa639p+0 : inexact-ok
+= rootn upward binary128 -0x4p-16384 -4503599627370497LL : -0x1.0000000002c5b2319c4c1b3aa639p+0 : inexact-ok
+= rootn downward intel96 -0x2p-16384 -4503599627370497LL : -0x1.0000000002c5bd4ap+0 : inexact-ok
+= rootn tonearest intel96 -0x2p-16384 -4503599627370497LL : -0x1.0000000002c5bd48p+0 : inexact-ok
+= rootn towardzero intel96 -0x2p-16384 -4503599627370497LL : -0x1.0000000002c5bd48p+0 : inexact-ok
+= rootn upward intel96 -0x2p-16384 -4503599627370497LL : -0x1.0000000002c5bd48p+0 : inexact-ok
+= rootn downward m68k96 -0x2p-16384 -4503599627370497LL : -0x1.0000000002c5bd4ap+0 : inexact-ok
+= rootn tonearest m68k96 -0x2p-16384 -4503599627370497LL : -0x1.0000000002c5bd48p+0 : inexact-ok
+= rootn towardzero m68k96 -0x2p-16384 -4503599627370497LL : -0x1.0000000002c5bd48p+0 : inexact-ok
+= rootn upward m68k96 -0x2p-16384 -4503599627370497LL : -0x1.0000000002c5bd48p+0 : inexact-ok
+= rootn downward binary128 -0x2p-16384 -4503599627370497LL : -0x1.0000000002c5bd48bdcb98765c29p+0 : inexact-ok
+= rootn tonearest binary128 -0x2p-16384 -4503599627370497LL : -0x1.0000000002c5bd48bdcb98765c28p+0 : inexact-ok
+= rootn towardzero binary128 -0x2p-16384 -4503599627370497LL : -0x1.0000000002c5bd48bdcb98765c28p+0 : inexact-ok
+= rootn upward binary128 -0x2p-16384 -4503599627370497LL : -0x1.0000000002c5bd48bdcb98765c28p+0 : inexact-ok
+= rootn downward binary64 -0x8p-972 -4503599627370497LL : -0x1.00000000002ap+0 : inexact-ok
+= rootn tonearest binary64 -0x8p-972 -4503599627370497LL : -0x1.00000000002ap+0 : inexact-ok
+= rootn towardzero binary64 -0x8p-972 -4503599627370497LL : -0x1.000000000029fp+0 : inexact-ok
+= rootn upward binary64 -0x8p-972 -4503599627370497LL : -0x1.000000000029fp+0 : inexact-ok
+= rootn downward intel96 -0x8p-972 -4503599627370497LL : -0x1.000000000029fa8ep+0 : inexact-ok
+= rootn tonearest intel96 -0x8p-972 -4503599627370497LL : -0x1.000000000029fa8ep+0 : inexact-ok
+= rootn towardzero intel96 -0x8p-972 -4503599627370497LL : -0x1.000000000029fa8cp+0 : inexact-ok
+= rootn upward intel96 -0x8p-972 -4503599627370497LL : -0x1.000000000029fa8cp+0 : inexact-ok
+= rootn downward m68k96 -0x8p-972 -4503599627370497LL : -0x1.000000000029fa8ep+0 : inexact-ok
+= rootn tonearest m68k96 -0x8p-972 -4503599627370497LL : -0x1.000000000029fa8ep+0 : inexact-ok
+= rootn towardzero m68k96 -0x8p-972 -4503599627370497LL : -0x1.000000000029fa8cp+0 : inexact-ok
+= rootn upward m68k96 -0x8p-972 -4503599627370497LL : -0x1.000000000029fa8cp+0 : inexact-ok
+= rootn downward binary128 -0x8p-972 -4503599627370497LL : -0x1.000000000029fa8dcb909613b45ep+0 : inexact-ok
+= rootn tonearest binary128 -0x8p-972 -4503599627370497LL : -0x1.000000000029fa8dcb909613b45dp+0 : inexact-ok
+= rootn towardzero binary128 -0x8p-972 -4503599627370497LL : -0x1.000000000029fa8dcb909613b45dp+0 : inexact-ok
+= rootn upward binary128 -0x8p-972 -4503599627370497LL : -0x1.000000000029fa8dcb909613b45dp+0 : inexact-ok
+= rootn downward ibm128 -0x8p-972 -4503599627370497LL : -0x1.000000000029fa8dcb909613b48p+0 : inexact-ok
+= rootn tonearest ibm128 -0x8p-972 -4503599627370497LL : -0x1.000000000029fa8dcb909613b48p+0 : inexact-ok
+= rootn towardzero ibm128 -0x8p-972 -4503599627370497LL : -0x1.000000000029fa8dcb909613b4p+0 : inexact-ok
+= rootn upward ibm128 -0x8p-972 -4503599627370497LL : -0x1.000000000029fa8dcb909613b4p+0 : inexact-ok
+rootn -min -0x7fffffffffffffff
+= rootn downward binary32 -0x4p-128 -9223372036854775807LL : -0x1.000002p+0 : inexact-ok
+= rootn tonearest binary32 -0x4p-128 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary32 -0x4p-128 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn upward binary32 -0x4p-128 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn downward binary64 -0x4p-128 -9223372036854775807LL : -0x1.0000000000001p+0 : inexact-ok
+= rootn tonearest binary64 -0x4p-128 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary64 -0x4p-128 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn upward binary64 -0x4p-128 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn downward intel96 -0x4p-128 -9223372036854775807LL : -0x1.00000000000000bp+0 : inexact-ok
+= rootn tonearest intel96 -0x4p-128 -9223372036854775807LL : -0x1.00000000000000aep+0 : inexact-ok
+= rootn towardzero intel96 -0x4p-128 -9223372036854775807LL : -0x1.00000000000000aep+0 : inexact-ok
+= rootn upward intel96 -0x4p-128 -9223372036854775807LL : -0x1.00000000000000aep+0 : inexact-ok
+= rootn downward m68k96 -0x4p-128 -9223372036854775807LL : -0x1.00000000000000bp+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-128 -9223372036854775807LL : -0x1.00000000000000aep+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-128 -9223372036854775807LL : -0x1.00000000000000aep+0 : inexact-ok
+= rootn upward m68k96 -0x4p-128 -9223372036854775807LL : -0x1.00000000000000aep+0 : inexact-ok
+= rootn downward binary128 -0x4p-128 -9223372036854775807LL : -0x1.00000000000000aeac4f97f2883dp+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-128 -9223372036854775807LL : -0x1.00000000000000aeac4f97f2883cp+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-128 -9223372036854775807LL : -0x1.00000000000000aeac4f97f2883cp+0 : inexact-ok
+= rootn upward binary128 -0x4p-128 -9223372036854775807LL : -0x1.00000000000000aeac4f97f2883cp+0 : inexact-ok
+= rootn downward ibm128 -0x4p-128 -9223372036854775807LL : -0x1.00000000000000aeac4f97f2888p+0 : inexact-ok
+= rootn tonearest ibm128 -0x4p-128 -9223372036854775807LL : -0x1.00000000000000aeac4f97f288p+0 : inexact-ok
+= rootn towardzero ibm128 -0x4p-128 -9223372036854775807LL : -0x1.00000000000000aeac4f97f288p+0 : inexact-ok
+= rootn upward ibm128 -0x4p-128 -9223372036854775807LL : -0x1.00000000000000aeac4f97f288p+0 : inexact-ok
+= rootn downward binary64 -0x4p-1024 -9223372036854775807LL : -0x1.0000000000001p+0 : inexact-ok
+= rootn tonearest binary64 -0x4p-1024 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary64 -0x4p-1024 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn upward binary64 -0x4p-1024 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn downward intel96 -0x4p-1024 -9223372036854775807LL : -0x1.000000000000058ap+0 : inexact-ok
+= rootn tonearest intel96 -0x4p-1024 -9223372036854775807LL : -0x1.0000000000000588p+0 : inexact-ok
+= rootn towardzero intel96 -0x4p-1024 -9223372036854775807LL : -0x1.0000000000000588p+0 : inexact-ok
+= rootn upward intel96 -0x4p-1024 -9223372036854775807LL : -0x1.0000000000000588p+0 : inexact-ok
+= rootn downward m68k96 -0x4p-1024 -9223372036854775807LL : -0x1.000000000000058ap+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1024 -9223372036854775807LL : -0x1.0000000000000588p+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1024 -9223372036854775807LL : -0x1.0000000000000588p+0 : inexact-ok
+= rootn upward m68k96 -0x4p-1024 -9223372036854775807LL : -0x1.0000000000000588p+0 : inexact-ok
+= rootn downward binary128 -0x4p-1024 -9223372036854775807LL : -0x1.0000000000000588caf75eaf349fp+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-1024 -9223372036854775807LL : -0x1.0000000000000588caf75eaf349fp+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-1024 -9223372036854775807LL : -0x1.0000000000000588caf75eaf349ep+0 : inexact-ok
+= rootn upward binary128 -0x4p-1024 -9223372036854775807LL : -0x1.0000000000000588caf75eaf349ep+0 : inexact-ok
+= rootn downward ibm128 -0x4p-1024 -9223372036854775807LL : -0x1.0000000000000588caf75eaf35p+0 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1024 -9223372036854775807LL : -0x1.0000000000000588caf75eaf348p+0 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1024 -9223372036854775807LL : -0x1.0000000000000588caf75eaf348p+0 : inexact-ok
+= rootn upward ibm128 -0x4p-1024 -9223372036854775807LL : -0x1.0000000000000588caf75eaf348p+0 : inexact-ok
+= rootn downward intel96 -0x4p-16384 -9223372036854775807LL : -0x1.00000000000058b8p+0 : inexact-ok
+= rootn tonearest intel96 -0x4p-16384 -9223372036854775807LL : -0x1.00000000000058b6p+0 : inexact-ok
+= rootn towardzero intel96 -0x4p-16384 -9223372036854775807LL : -0x1.00000000000058b6p+0 : inexact-ok
+= rootn upward intel96 -0x4p-16384 -9223372036854775807LL : -0x1.00000000000058b6p+0 : inexact-ok
+= rootn downward m68k96 -0x4p-16384 -9223372036854775807LL : -0x1.00000000000058b8p+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16384 -9223372036854775807LL : -0x1.00000000000058b6p+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16384 -9223372036854775807LL : -0x1.00000000000058b6p+0 : inexact-ok
+= rootn upward m68k96 -0x4p-16384 -9223372036854775807LL : -0x1.00000000000058b6p+0 : inexact-ok
+= rootn downward binary128 -0x4p-16384 -9223372036854775807LL : -0x1.00000000000058b64633890884f8p+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-16384 -9223372036854775807LL : -0x1.00000000000058b64633890884f8p+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-16384 -9223372036854775807LL : -0x1.00000000000058b64633890884f7p+0 : inexact-ok
+= rootn upward binary128 -0x4p-16384 -9223372036854775807LL : -0x1.00000000000058b64633890884f7p+0 : inexact-ok
+= rootn downward intel96 -0x2p-16384 -9223372036854775807LL : -0x1.00000000000058b8p+0 : inexact-ok
+= rootn tonearest intel96 -0x2p-16384 -9223372036854775807LL : -0x1.00000000000058b8p+0 : inexact-ok
+= rootn towardzero intel96 -0x2p-16384 -9223372036854775807LL : -0x1.00000000000058b6p+0 : inexact-ok
+= rootn upward intel96 -0x2p-16384 -9223372036854775807LL : -0x1.00000000000058b6p+0 : inexact-ok
+= rootn downward m68k96 -0x2p-16384 -9223372036854775807LL : -0x1.00000000000058b8p+0 : inexact-ok
+= rootn tonearest m68k96 -0x2p-16384 -9223372036854775807LL : -0x1.00000000000058b8p+0 : inexact-ok
+= rootn towardzero m68k96 -0x2p-16384 -9223372036854775807LL : -0x1.00000000000058b6p+0 : inexact-ok
+= rootn upward m68k96 -0x2p-16384 -9223372036854775807LL : -0x1.00000000000058b6p+0 : inexact-ok
+= rootn downward binary128 -0x2p-16384 -9223372036854775807LL : -0x1.00000000000058b7a917b8f82898p+0 : inexact-ok
+= rootn tonearest binary128 -0x2p-16384 -9223372036854775807LL : -0x1.00000000000058b7a917b8f82897p+0 : inexact-ok
+= rootn towardzero binary128 -0x2p-16384 -9223372036854775807LL : -0x1.00000000000058b7a917b8f82897p+0 : inexact-ok
+= rootn upward binary128 -0x2p-16384 -9223372036854775807LL : -0x1.00000000000058b7a917b8f82897p+0 : inexact-ok
+= rootn downward binary64 -0x8p-972 -9223372036854775807LL : -0x1.0000000000001p+0 : inexact-ok
+= rootn tonearest binary64 -0x8p-972 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary64 -0x8p-972 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn upward binary64 -0x8p-972 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn downward intel96 -0x8p-972 -9223372036854775807LL : -0x1.000000000000054p+0 : inexact-ok
+= rootn tonearest intel96 -0x8p-972 -9223372036854775807LL : -0x1.000000000000054p+0 : inexact-ok
+= rootn towardzero intel96 -0x8p-972 -9223372036854775807LL : -0x1.000000000000053ep+0 : inexact-ok
+= rootn upward intel96 -0x8p-972 -9223372036854775807LL : -0x1.000000000000053ep+0 : inexact-ok
+= rootn downward m68k96 -0x8p-972 -9223372036854775807LL : -0x1.000000000000054p+0 : inexact-ok
+= rootn tonearest m68k96 -0x8p-972 -9223372036854775807LL : -0x1.000000000000054p+0 : inexact-ok
+= rootn towardzero m68k96 -0x8p-972 -9223372036854775807LL : -0x1.000000000000053ep+0 : inexact-ok
+= rootn upward m68k96 -0x8p-972 -9223372036854775807LL : -0x1.000000000000053ep+0 : inexact-ok
+= rootn downward binary128 -0x8p-972 -9223372036854775807LL : -0x1.000000000000053f51b9721254b5p+0 : inexact-ok
+= rootn tonearest binary128 -0x8p-972 -9223372036854775807LL : -0x1.000000000000053f51b9721254b5p+0 : inexact-ok
+= rootn towardzero binary128 -0x8p-972 -9223372036854775807LL : -0x1.000000000000053f51b9721254b4p+0 : inexact-ok
+= rootn upward binary128 -0x8p-972 -9223372036854775807LL : -0x1.000000000000053f51b9721254b4p+0 : inexact-ok
+= rootn downward ibm128 -0x8p-972 -9223372036854775807LL : -0x1.000000000000053f51b9721255p+0 : inexact-ok
+= rootn tonearest ibm128 -0x8p-972 -9223372036854775807LL : -0x1.000000000000053f51b97212548p+0 : inexact-ok
+= rootn towardzero ibm128 -0x8p-972 -9223372036854775807LL : -0x1.000000000000053f51b97212548p+0 : inexact-ok
+= rootn upward ibm128 -0x8p-972 -9223372036854775807LL : -0x1.000000000000053f51b97212548p+0 : inexact-ok
+rootn min_subnorm 1
+= rootn downward binary32 0x8p-152 1LL : 0x8p-152 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest binary32 0x8p-152 1LL : 0x8p-152 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero binary32 0x8p-152 1LL : 0x8p-152 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward binary32 0x8p-152 1LL : 0x8p-152 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward binary64 0x8p-152 1LL : 0x8p-152 : inexact-ok
+= rootn tonearest binary64 0x8p-152 1LL : 0x8p-152 : inexact-ok
+= rootn towardzero binary64 0x8p-152 1LL : 0x8p-152 : inexact-ok
+= rootn upward binary64 0x8p-152 1LL : 0x8p-152 : inexact-ok
+= rootn downward intel96 0x8p-152 1LL : 0x8p-152 : inexact-ok
+= rootn tonearest intel96 0x8p-152 1LL : 0x8p-152 : inexact-ok
+= rootn towardzero intel96 0x8p-152 1LL : 0x8p-152 : inexact-ok
+= rootn upward intel96 0x8p-152 1LL : 0x8p-152 : inexact-ok
+= rootn downward m68k96 0x8p-152 1LL : 0x8p-152 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 1LL : 0x8p-152 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 1LL : 0x8p-152 : inexact-ok
+= rootn upward m68k96 0x8p-152 1LL : 0x8p-152 : inexact-ok
+= rootn downward binary128 0x8p-152 1LL : 0x8p-152 : inexact-ok
+= rootn tonearest binary128 0x8p-152 1LL : 0x8p-152 : inexact-ok
+= rootn towardzero binary128 0x8p-152 1LL : 0x8p-152 : inexact-ok
+= rootn upward binary128 0x8p-152 1LL : 0x8p-152 : inexact-ok
+= rootn downward ibm128 0x8p-152 1LL : 0x8p-152 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 1LL : 0x8p-152 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 1LL : 0x8p-152 : inexact-ok
+= rootn upward ibm128 0x8p-152 1LL : 0x8p-152 : inexact-ok
+= rootn downward binary64 0x4p-1076 1LL : 0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest binary64 0x4p-1076 1LL : 0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero binary64 0x4p-1076 1LL : 0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward binary64 0x4p-1076 1LL : 0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward intel96 0x4p-1076 1LL : 0x4p-1076 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 1LL : 0x4p-1076 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 1LL : 0x4p-1076 : inexact-ok
+= rootn upward intel96 0x4p-1076 1LL : 0x4p-1076 : inexact-ok
+= rootn downward m68k96 0x4p-1076 1LL : 0x4p-1076 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 1LL : 0x4p-1076 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 1LL : 0x4p-1076 : inexact-ok
+= rootn upward m68k96 0x4p-1076 1LL : 0x4p-1076 : inexact-ok
+= rootn downward binary128 0x4p-1076 1LL : 0x4p-1076 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 1LL : 0x4p-1076 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 1LL : 0x4p-1076 : inexact-ok
+= rootn upward binary128 0x4p-1076 1LL : 0x4p-1076 : inexact-ok
+= rootn downward ibm128 0x4p-1076 1LL : 0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest ibm128 0x4p-1076 1LL : 0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero ibm128 0x4p-1076 1LL : 0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward ibm128 0x4p-1076 1LL : 0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward intel96 0x8p-16448 1LL : 0x8p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest intel96 0x8p-16448 1LL : 0x8p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero intel96 0x8p-16448 1LL : 0x8p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward intel96 0x8p-16448 1LL : 0x8p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward m68k96 0x8p-16448 1LL : 0x8p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest m68k96 0x8p-16448 1LL : 0x8p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero m68k96 0x8p-16448 1LL : 0x8p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward m68k96 0x8p-16448 1LL : 0x8p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward binary128 0x8p-16448 1LL : 0x8p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest binary128 0x8p-16448 1LL : 0x8p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero binary128 0x8p-16448 1LL : 0x8p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward binary128 0x8p-16448 1LL : 0x8p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward m68k96 0x4p-16448 1LL : 0x4p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest m68k96 0x4p-16448 1LL : 0x4p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero m68k96 0x4p-16448 1LL : 0x4p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward m68k96 0x4p-16448 1LL : 0x4p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward binary128 0x4p-16448 1LL : 0x4p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest binary128 0x4p-16448 1LL : 0x4p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero binary128 0x4p-16448 1LL : 0x4p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward binary128 0x4p-16448 1LL : 0x4p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward binary128 0x4p-16496 1LL : 0x4p-16496 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest binary128 0x4p-16496 1LL : 0x4p-16496 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero binary128 0x4p-16496 1LL : 0x4p-16496 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward binary128 0x4p-16496 1LL : 0x4p-16496 : inexact-ok underflow-ok errno-erange-ok
+rootn min_subnorm 2
+= rootn downward binary32 0x8p-152 2LL : 0x2.d413ccp-76 : inexact-ok
+= rootn tonearest binary32 0x8p-152 2LL : 0x2.d413ccp-76 : inexact-ok
+= rootn towardzero binary32 0x8p-152 2LL : 0x2.d413ccp-76 : inexact-ok
+= rootn upward binary32 0x8p-152 2LL : 0x2.d413dp-76 : inexact-ok
+= rootn downward binary64 0x8p-152 2LL : 0x2.d413cccfe7798p-76 : inexact-ok
+= rootn tonearest binary64 0x8p-152 2LL : 0x2.d413cccfe779ap-76 : inexact-ok
+= rootn towardzero binary64 0x8p-152 2LL : 0x2.d413cccfe7798p-76 : inexact-ok
+= rootn upward binary64 0x8p-152 2LL : 0x2.d413cccfe779ap-76 : inexact-ok
+= rootn downward intel96 0x8p-152 2LL : 0x2.d413cccfe779921p-76 : inexact-ok
+= rootn tonearest intel96 0x8p-152 2LL : 0x2.d413cccfe779921p-76 : inexact-ok
+= rootn towardzero intel96 0x8p-152 2LL : 0x2.d413cccfe779921p-76 : inexact-ok
+= rootn upward intel96 0x8p-152 2LL : 0x2.d413cccfe7799214p-76 : inexact-ok
+= rootn downward m68k96 0x8p-152 2LL : 0x2.d413cccfe779921p-76 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 2LL : 0x2.d413cccfe779921p-76 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 2LL : 0x2.d413cccfe779921p-76 : inexact-ok
+= rootn upward m68k96 0x8p-152 2LL : 0x2.d413cccfe7799214p-76 : inexact-ok
+= rootn downward binary128 0x8p-152 2LL : 0x2.d413cccfe779921165f626cdd52ap-76 : inexact-ok
+= rootn tonearest binary128 0x8p-152 2LL : 0x2.d413cccfe779921165f626cdd52ap-76 : inexact-ok
+= rootn towardzero binary128 0x8p-152 2LL : 0x2.d413cccfe779921165f626cdd52ap-76 : inexact-ok
+= rootn upward binary128 0x8p-152 2LL : 0x2.d413cccfe779921165f626cdd52cp-76 : inexact-ok
+= rootn downward ibm128 0x8p-152 2LL : 0x2.d413cccfe779921165f626cdd5p-76 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 2LL : 0x2.d413cccfe779921165f626cdd5p-76 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 2LL : 0x2.d413cccfe779921165f626cdd5p-76 : inexact-ok
+= rootn upward ibm128 0x8p-152 2LL : 0x2.d413cccfe779921165f626cdd6p-76 : inexact-ok
+= rootn downward binary64 0x4p-1076 2LL : 0x8p-540 : inexact-ok
+= rootn tonearest binary64 0x4p-1076 2LL : 0x8p-540 : inexact-ok
+= rootn towardzero binary64 0x4p-1076 2LL : 0x8p-540 : inexact-ok
+= rootn upward binary64 0x4p-1076 2LL : 0x8p-540 : inexact-ok
+= rootn downward intel96 0x4p-1076 2LL : 0x8p-540 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 2LL : 0x8p-540 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 2LL : 0x8p-540 : inexact-ok
+= rootn upward intel96 0x4p-1076 2LL : 0x8p-540 : inexact-ok
+= rootn downward m68k96 0x4p-1076 2LL : 0x8p-540 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 2LL : 0x8p-540 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 2LL : 0x8p-540 : inexact-ok
+= rootn upward m68k96 0x4p-1076 2LL : 0x8p-540 : inexact-ok
+= rootn downward binary128 0x4p-1076 2LL : 0x8p-540 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 2LL : 0x8p-540 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 2LL : 0x8p-540 : inexact-ok
+= rootn upward binary128 0x4p-1076 2LL : 0x8p-540 : inexact-ok
+= rootn downward ibm128 0x4p-1076 2LL : 0x8p-540 : inexact-ok
+= rootn tonearest ibm128 0x4p-1076 2LL : 0x8p-540 : inexact-ok
+= rootn towardzero ibm128 0x4p-1076 2LL : 0x8p-540 : inexact-ok
+= rootn upward ibm128 0x4p-1076 2LL : 0x8p-540 : inexact-ok
+= rootn downward intel96 0x8p-16448 2LL : 0x2.d413cccfe779921p-8224 : inexact-ok
+= rootn tonearest intel96 0x8p-16448 2LL : 0x2.d413cccfe779921p-8224 : inexact-ok
+= rootn towardzero intel96 0x8p-16448 2LL : 0x2.d413cccfe779921p-8224 : inexact-ok
+= rootn upward intel96 0x8p-16448 2LL : 0x2.d413cccfe7799214p-8224 : inexact-ok
+= rootn downward m68k96 0x8p-16448 2LL : 0x2.d413cccfe779921p-8224 : inexact-ok
+= rootn tonearest m68k96 0x8p-16448 2LL : 0x2.d413cccfe779921p-8224 : inexact-ok
+= rootn towardzero m68k96 0x8p-16448 2LL : 0x2.d413cccfe779921p-8224 : inexact-ok
+= rootn upward m68k96 0x8p-16448 2LL : 0x2.d413cccfe7799214p-8224 : inexact-ok
+= rootn downward binary128 0x8p-16448 2LL : 0x2.d413cccfe779921165f626cdd52ap-8224 : inexact-ok
+= rootn tonearest binary128 0x8p-16448 2LL : 0x2.d413cccfe779921165f626cdd52ap-8224 : inexact-ok
+= rootn towardzero binary128 0x8p-16448 2LL : 0x2.d413cccfe779921165f626cdd52ap-8224 : inexact-ok
+= rootn upward binary128 0x8p-16448 2LL : 0x2.d413cccfe779921165f626cdd52cp-8224 : inexact-ok
+= rootn downward m68k96 0x4p-16448 2LL : 0x2p-8224 : inexact-ok
+= rootn tonearest m68k96 0x4p-16448 2LL : 0x2p-8224 : inexact-ok
+= rootn towardzero m68k96 0x4p-16448 2LL : 0x2p-8224 : inexact-ok
+= rootn upward m68k96 0x4p-16448 2LL : 0x2p-8224 : inexact-ok
+= rootn downward binary128 0x4p-16448 2LL : 0x2p-8224 : inexact-ok
+= rootn tonearest binary128 0x4p-16448 2LL : 0x2p-8224 : inexact-ok
+= rootn towardzero binary128 0x4p-16448 2LL : 0x2p-8224 : inexact-ok
+= rootn upward binary128 0x4p-16448 2LL : 0x2p-8224 : inexact-ok
+= rootn downward binary128 0x4p-16496 2LL : 0x2p-8248 : inexact-ok
+= rootn tonearest binary128 0x4p-16496 2LL : 0x2p-8248 : inexact-ok
+= rootn towardzero binary128 0x4p-16496 2LL : 0x2p-8248 : inexact-ok
+= rootn upward binary128 0x4p-16496 2LL : 0x2p-8248 : inexact-ok
+rootn min_subnorm 3
+= rootn downward binary32 0x8p-152 3LL : 0x5.0a28b8p-52 : inexact-ok
+= rootn tonearest binary32 0x8p-152 3LL : 0x5.0a28cp-52 : inexact-ok
+= rootn towardzero binary32 0x8p-152 3LL : 0x5.0a28b8p-52 : inexact-ok
+= rootn upward binary32 0x8p-152 3LL : 0x5.0a28cp-52 : inexact-ok
+= rootn downward binary64 0x8p-152 3LL : 0x5.0a28be635ca28p-52 : inexact-ok
+= rootn tonearest binary64 0x8p-152 3LL : 0x5.0a28be635ca2cp-52 : inexact-ok
+= rootn towardzero binary64 0x8p-152 3LL : 0x5.0a28be635ca28p-52 : inexact-ok
+= rootn upward binary64 0x8p-152 3LL : 0x5.0a28be635ca2cp-52 : inexact-ok
+= rootn downward intel96 0x8p-152 3LL : 0x5.0a28be635ca2b888p-52 : inexact-ok
+= rootn tonearest intel96 0x8p-152 3LL : 0x5.0a28be635ca2b888p-52 : inexact-ok
+= rootn towardzero intel96 0x8p-152 3LL : 0x5.0a28be635ca2b888p-52 : inexact-ok
+= rootn upward intel96 0x8p-152 3LL : 0x5.0a28be635ca2b89p-52 : inexact-ok
+= rootn downward m68k96 0x8p-152 3LL : 0x5.0a28be635ca2b888p-52 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 3LL : 0x5.0a28be635ca2b888p-52 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 3LL : 0x5.0a28be635ca2b888p-52 : inexact-ok
+= rootn upward m68k96 0x8p-152 3LL : 0x5.0a28be635ca2b89p-52 : inexact-ok
+= rootn downward binary128 0x8p-152 3LL : 0x5.0a28be635ca2b888f76adc56f894p-52 : inexact-ok
+= rootn tonearest binary128 0x8p-152 3LL : 0x5.0a28be635ca2b888f76adc56f894p-52 : inexact-ok
+= rootn towardzero binary128 0x8p-152 3LL : 0x5.0a28be635ca2b888f76adc56f894p-52 : inexact-ok
+= rootn upward binary128 0x8p-152 3LL : 0x5.0a28be635ca2b888f76adc56f898p-52 : inexact-ok
+= rootn downward ibm128 0x8p-152 3LL : 0x5.0a28be635ca2b888f76adc56f8p-52 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 3LL : 0x5.0a28be635ca2b888f76adc56f8p-52 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 3LL : 0x5.0a28be635ca2b888f76adc56f8p-52 : inexact-ok
+= rootn upward ibm128 0x8p-152 3LL : 0x5.0a28be635ca2b888f76adc56fap-52 : inexact-ok
+= rootn downward binary64 0x4p-1076 3LL : 0x4p-360 : inexact-ok
+= rootn tonearest binary64 0x4p-1076 3LL : 0x4p-360 : inexact-ok
+= rootn towardzero binary64 0x4p-1076 3LL : 0x4p-360 : inexact-ok
+= rootn upward binary64 0x4p-1076 3LL : 0x4p-360 : inexact-ok
+= rootn downward intel96 0x4p-1076 3LL : 0x4p-360 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 3LL : 0x4p-360 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 3LL : 0x4p-360 : inexact-ok
+= rootn upward intel96 0x4p-1076 3LL : 0x4p-360 : inexact-ok
+= rootn downward m68k96 0x4p-1076 3LL : 0x4p-360 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 3LL : 0x4p-360 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 3LL : 0x4p-360 : inexact-ok
+= rootn upward m68k96 0x4p-1076 3LL : 0x4p-360 : inexact-ok
+= rootn downward binary128 0x4p-1076 3LL : 0x4p-360 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 3LL : 0x4p-360 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 3LL : 0x4p-360 : inexact-ok
+= rootn upward binary128 0x4p-1076 3LL : 0x4p-360 : inexact-ok
+= rootn downward ibm128 0x4p-1076 3LL : 0x4p-360 : inexact-ok
+= rootn tonearest ibm128 0x4p-1076 3LL : 0x4p-360 : inexact-ok
+= rootn towardzero ibm128 0x4p-1076 3LL : 0x4p-360 : inexact-ok
+= rootn upward ibm128 0x4p-1076 3LL : 0x4p-360 : inexact-ok
+= rootn downward intel96 0x8p-16448 3LL : 0x5.0a28be635ca2b888p-5484 : inexact-ok
+= rootn tonearest intel96 0x8p-16448 3LL : 0x5.0a28be635ca2b888p-5484 : inexact-ok
+= rootn towardzero intel96 0x8p-16448 3LL : 0x5.0a28be635ca2b888p-5484 : inexact-ok
+= rootn upward intel96 0x8p-16448 3LL : 0x5.0a28be635ca2b89p-5484 : inexact-ok
+= rootn downward m68k96 0x8p-16448 3LL : 0x5.0a28be635ca2b888p-5484 : inexact-ok
+= rootn tonearest m68k96 0x8p-16448 3LL : 0x5.0a28be635ca2b888p-5484 : inexact-ok
+= rootn towardzero m68k96 0x8p-16448 3LL : 0x5.0a28be635ca2b888p-5484 : inexact-ok
+= rootn upward m68k96 0x8p-16448 3LL : 0x5.0a28be635ca2b89p-5484 : inexact-ok
+= rootn downward binary128 0x8p-16448 3LL : 0x5.0a28be635ca2b888f76adc56f894p-5484 : inexact-ok
+= rootn tonearest binary128 0x8p-16448 3LL : 0x5.0a28be635ca2b888f76adc56f894p-5484 : inexact-ok
+= rootn towardzero binary128 0x8p-16448 3LL : 0x5.0a28be635ca2b888f76adc56f894p-5484 : inexact-ok
+= rootn upward binary128 0x8p-16448 3LL : 0x5.0a28be635ca2b888f76adc56f898p-5484 : inexact-ok
+= rootn downward m68k96 0x4p-16448 3LL : 0x4p-5484 : inexact-ok
+= rootn tonearest m68k96 0x4p-16448 3LL : 0x4p-5484 : inexact-ok
+= rootn towardzero m68k96 0x4p-16448 3LL : 0x4p-5484 : inexact-ok
+= rootn upward m68k96 0x4p-16448 3LL : 0x4p-5484 : inexact-ok
+= rootn downward binary128 0x4p-16448 3LL : 0x4p-5484 : inexact-ok
+= rootn tonearest binary128 0x4p-16448 3LL : 0x4p-5484 : inexact-ok
+= rootn towardzero binary128 0x4p-16448 3LL : 0x4p-5484 : inexact-ok
+= rootn upward binary128 0x4p-16448 3LL : 0x4p-5484 : inexact-ok
+= rootn downward binary128 0x4p-16496 3LL : 0x4p-5500 : inexact-ok
+= rootn tonearest binary128 0x4p-16496 3LL : 0x4p-5500 : inexact-ok
+= rootn towardzero binary128 0x4p-16496 3LL : 0x4p-5500 : inexact-ok
+= rootn upward binary128 0x4p-16496 3LL : 0x4p-5500 : inexact-ok
+rootn min_subnorm 4
+= rootn downward binary32 0x8p-152 4LL : 0x6.ba27ep-40 : inexact-ok
+= rootn tonearest binary32 0x8p-152 4LL : 0x6.ba27e8p-40 : inexact-ok
+= rootn towardzero binary32 0x8p-152 4LL : 0x6.ba27ep-40 : inexact-ok
+= rootn upward binary32 0x8p-152 4LL : 0x6.ba27e8p-40 : inexact-ok
+= rootn downward binary64 0x8p-152 4LL : 0x6.ba27e656b4eb4p-40 : inexact-ok
+= rootn tonearest binary64 0x8p-152 4LL : 0x6.ba27e656b4eb4p-40 : inexact-ok
+= rootn towardzero binary64 0x8p-152 4LL : 0x6.ba27e656b4eb4p-40 : inexact-ok
+= rootn upward binary64 0x8p-152 4LL : 0x6.ba27e656b4eb8p-40 : inexact-ok
+= rootn downward intel96 0x8p-152 4LL : 0x6.ba27e656b4eb57ap-40 : inexact-ok
+= rootn tonearest intel96 0x8p-152 4LL : 0x6.ba27e656b4eb57ap-40 : inexact-ok
+= rootn towardzero intel96 0x8p-152 4LL : 0x6.ba27e656b4eb57ap-40 : inexact-ok
+= rootn upward intel96 0x8p-152 4LL : 0x6.ba27e656b4eb57a8p-40 : inexact-ok
+= rootn downward m68k96 0x8p-152 4LL : 0x6.ba27e656b4eb57ap-40 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 4LL : 0x6.ba27e656b4eb57ap-40 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 4LL : 0x6.ba27e656b4eb57ap-40 : inexact-ok
+= rootn upward m68k96 0x8p-152 4LL : 0x6.ba27e656b4eb57a8p-40 : inexact-ok
+= rootn downward binary128 0x8p-152 4LL : 0x6.ba27e656b4eb57a1cd345dcc8168p-40 : inexact-ok
+= rootn tonearest binary128 0x8p-152 4LL : 0x6.ba27e656b4eb57a1cd345dcc8168p-40 : inexact-ok
+= rootn towardzero binary128 0x8p-152 4LL : 0x6.ba27e656b4eb57a1cd345dcc8168p-40 : inexact-ok
+= rootn upward binary128 0x8p-152 4LL : 0x6.ba27e656b4eb57a1cd345dcc816cp-40 : inexact-ok
+= rootn downward ibm128 0x8p-152 4LL : 0x6.ba27e656b4eb57a1cd345dcc8p-40 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 4LL : 0x6.ba27e656b4eb57a1cd345dcc82p-40 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 4LL : 0x6.ba27e656b4eb57a1cd345dcc8p-40 : inexact-ok
+= rootn upward ibm128 0x8p-152 4LL : 0x6.ba27e656b4eb57a1cd345dcc82p-40 : inexact-ok
+= rootn downward binary64 0x4p-1076 4LL : 0xb.504f333f9de6p-272 : inexact-ok
+= rootn tonearest binary64 0x4p-1076 4LL : 0xb.504f333f9de68p-272 : inexact-ok
+= rootn towardzero binary64 0x4p-1076 4LL : 0xb.504f333f9de6p-272 : inexact-ok
+= rootn upward binary64 0x4p-1076 4LL : 0xb.504f333f9de68p-272 : inexact-ok
+= rootn downward intel96 0x4p-1076 4LL : 0xb.504f333f9de6484p-272 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 4LL : 0xb.504f333f9de6484p-272 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 4LL : 0xb.504f333f9de6484p-272 : inexact-ok
+= rootn upward intel96 0x4p-1076 4LL : 0xb.504f333f9de6485p-272 : inexact-ok
+= rootn downward m68k96 0x4p-1076 4LL : 0xb.504f333f9de6484p-272 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 4LL : 0xb.504f333f9de6484p-272 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 4LL : 0xb.504f333f9de6484p-272 : inexact-ok
+= rootn upward m68k96 0x4p-1076 4LL : 0xb.504f333f9de6485p-272 : inexact-ok
+= rootn downward binary128 0x4p-1076 4LL : 0xb.504f333f9de6484597d89b3754a8p-272 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 4LL : 0xb.504f333f9de6484597d89b3754a8p-272 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 4LL : 0xb.504f333f9de6484597d89b3754a8p-272 : inexact-ok
+= rootn upward binary128 0x4p-1076 4LL : 0xb.504f333f9de6484597d89b3754bp-272 : inexact-ok
+= rootn downward ibm128 0x4p-1076 4LL : 0xb.504f333f9de6484597d89b3754p-272 : inexact-ok
+= rootn tonearest ibm128 0x4p-1076 4LL : 0xb.504f333f9de6484597d89b3754p-272 : inexact-ok
+= rootn towardzero ibm128 0x4p-1076 4LL : 0xb.504f333f9de6484597d89b3754p-272 : inexact-ok
+= rootn upward ibm128 0x4p-1076 4LL : 0xb.504f333f9de6484597d89b3758p-272 : inexact-ok
+= rootn downward intel96 0x8p-16448 4LL : 0x1.ae89f995ad3ad5e8p-4112 : inexact-ok
+= rootn tonearest intel96 0x8p-16448 4LL : 0x1.ae89f995ad3ad5e8p-4112 : inexact-ok
+= rootn towardzero intel96 0x8p-16448 4LL : 0x1.ae89f995ad3ad5e8p-4112 : inexact-ok
+= rootn upward intel96 0x8p-16448 4LL : 0x1.ae89f995ad3ad5eap-4112 : inexact-ok
+= rootn downward m68k96 0x8p-16448 4LL : 0x1.ae89f995ad3ad5e8p-4112 : inexact-ok
+= rootn tonearest m68k96 0x8p-16448 4LL : 0x1.ae89f995ad3ad5e8p-4112 : inexact-ok
+= rootn towardzero m68k96 0x8p-16448 4LL : 0x1.ae89f995ad3ad5e8p-4112 : inexact-ok
+= rootn upward m68k96 0x8p-16448 4LL : 0x1.ae89f995ad3ad5eap-4112 : inexact-ok
+= rootn downward binary128 0x8p-16448 4LL : 0x1.ae89f995ad3ad5e8734d1773205ap-4112 : inexact-ok
+= rootn tonearest binary128 0x8p-16448 4LL : 0x1.ae89f995ad3ad5e8734d1773205ap-4112 : inexact-ok
+= rootn towardzero binary128 0x8p-16448 4LL : 0x1.ae89f995ad3ad5e8734d1773205ap-4112 : inexact-ok
+= rootn upward binary128 0x8p-16448 4LL : 0x1.ae89f995ad3ad5e8734d1773205bp-4112 : inexact-ok
+= rootn downward m68k96 0x4p-16448 4LL : 0x1.6a09e667f3bcc908p-4112 : inexact-ok
+= rootn tonearest m68k96 0x4p-16448 4LL : 0x1.6a09e667f3bcc908p-4112 : inexact-ok
+= rootn towardzero m68k96 0x4p-16448 4LL : 0x1.6a09e667f3bcc908p-4112 : inexact-ok
+= rootn upward m68k96 0x4p-16448 4LL : 0x1.6a09e667f3bcc90ap-4112 : inexact-ok
+= rootn downward binary128 0x4p-16448 4LL : 0x1.6a09e667f3bcc908b2fb1366ea95p-4112 : inexact-ok
+= rootn tonearest binary128 0x4p-16448 4LL : 0x1.6a09e667f3bcc908b2fb1366ea95p-4112 : inexact-ok
+= rootn towardzero binary128 0x4p-16448 4LL : 0x1.6a09e667f3bcc908b2fb1366ea95p-4112 : inexact-ok
+= rootn upward binary128 0x4p-16448 4LL : 0x1.6a09e667f3bcc908b2fb1366ea96p-4112 : inexact-ok
+= rootn downward binary128 0x4p-16496 4LL : 0x1.6a09e667f3bcc908b2fb1366ea95p-4124 : inexact-ok
+= rootn tonearest binary128 0x4p-16496 4LL : 0x1.6a09e667f3bcc908b2fb1366ea95p-4124 : inexact-ok
+= rootn towardzero binary128 0x4p-16496 4LL : 0x1.6a09e667f3bcc908b2fb1366ea95p-4124 : inexact-ok
+= rootn upward binary128 0x4p-16496 4LL : 0x1.6a09e667f3bcc908b2fb1366ea96p-4124 : inexact-ok
+rootn min_subnorm 5
+= rootn downward binary32 0x8p-152 5LL : 0x4.98446p-32 : inexact-ok
+= rootn tonearest binary32 0x8p-152 5LL : 0x4.98446p-32 : inexact-ok
+= rootn towardzero binary32 0x8p-152 5LL : 0x4.98446p-32 : inexact-ok
+= rootn upward binary32 0x8p-152 5LL : 0x4.984468p-32 : inexact-ok
+= rootn downward binary64 0x8p-152 5LL : 0x4.984461aeb99dp-32 : inexact-ok
+= rootn tonearest binary64 0x8p-152 5LL : 0x4.984461aeb99d4p-32 : inexact-ok
+= rootn towardzero binary64 0x8p-152 5LL : 0x4.984461aeb99dp-32 : inexact-ok
+= rootn upward binary64 0x8p-152 5LL : 0x4.984461aeb99d4p-32 : inexact-ok
+= rootn downward intel96 0x8p-152 5LL : 0x4.984461aeb99d25a8p-32 : inexact-ok
+= rootn tonearest intel96 0x8p-152 5LL : 0x4.984461aeb99d25a8p-32 : inexact-ok
+= rootn towardzero intel96 0x8p-152 5LL : 0x4.984461aeb99d25a8p-32 : inexact-ok
+= rootn upward intel96 0x8p-152 5LL : 0x4.984461aeb99d25bp-32 : inexact-ok
+= rootn downward m68k96 0x8p-152 5LL : 0x4.984461aeb99d25a8p-32 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 5LL : 0x4.984461aeb99d25a8p-32 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 5LL : 0x4.984461aeb99d25a8p-32 : inexact-ok
+= rootn upward m68k96 0x8p-152 5LL : 0x4.984461aeb99d25bp-32 : inexact-ok
+= rootn downward binary128 0x8p-152 5LL : 0x4.984461aeb99d25a94879081d8384p-32 : inexact-ok
+= rootn tonearest binary128 0x8p-152 5LL : 0x4.984461aeb99d25a94879081d8388p-32 : inexact-ok
+= rootn towardzero binary128 0x8p-152 5LL : 0x4.984461aeb99d25a94879081d8384p-32 : inexact-ok
+= rootn upward binary128 0x8p-152 5LL : 0x4.984461aeb99d25a94879081d8388p-32 : inexact-ok
+= rootn downward ibm128 0x8p-152 5LL : 0x4.984461aeb99d25a94879081d82p-32 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 5LL : 0x4.984461aeb99d25a94879081d84p-32 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 5LL : 0x4.984461aeb99d25a94879081d82p-32 : inexact-ok
+= rootn upward ibm128 0x8p-152 5LL : 0x4.984461aeb99d25a94879081d84p-32 : inexact-ok
+= rootn downward binary64 0x4p-1076 5LL : 0x2.4c2230d75cce8p-216 : inexact-ok
+= rootn tonearest binary64 0x4p-1076 5LL : 0x2.4c2230d75cceap-216 : inexact-ok
+= rootn towardzero binary64 0x4p-1076 5LL : 0x2.4c2230d75cce8p-216 : inexact-ok
+= rootn upward binary64 0x4p-1076 5LL : 0x2.4c2230d75cceap-216 : inexact-ok
+= rootn downward intel96 0x4p-1076 5LL : 0x2.4c2230d75cce92d4p-216 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 5LL : 0x2.4c2230d75cce92d4p-216 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 5LL : 0x2.4c2230d75cce92d4p-216 : inexact-ok
+= rootn upward intel96 0x4p-1076 5LL : 0x2.4c2230d75cce92d8p-216 : inexact-ok
+= rootn downward m68k96 0x4p-1076 5LL : 0x2.4c2230d75cce92d4p-216 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 5LL : 0x2.4c2230d75cce92d4p-216 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 5LL : 0x2.4c2230d75cce92d4p-216 : inexact-ok
+= rootn upward m68k96 0x4p-1076 5LL : 0x2.4c2230d75cce92d8p-216 : inexact-ok
+= rootn downward binary128 0x4p-1076 5LL : 0x2.4c2230d75cce92d4a43c840ec1c2p-216 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 5LL : 0x2.4c2230d75cce92d4a43c840ec1c4p-216 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 5LL : 0x2.4c2230d75cce92d4a43c840ec1c2p-216 : inexact-ok
+= rootn upward binary128 0x4p-1076 5LL : 0x2.4c2230d75cce92d4a43c840ec1c4p-216 : inexact-ok
+= rootn downward ibm128 0x4p-1076 5LL : 0x2.4c2230d75cce92d4a43c840ec1p-216 : inexact-ok
+= rootn tonearest ibm128 0x4p-1076 5LL : 0x2.4c2230d75cce92d4a43c840ec2p-216 : inexact-ok
+= rootn towardzero ibm128 0x4p-1076 5LL : 0x2.4c2230d75cce92d4a43c840ec1p-216 : inexact-ok
+= rootn upward ibm128 0x4p-1076 5LL : 0x2.4c2230d75cce92d4a43c840ec2p-216 : inexact-ok
+= rootn downward intel96 0x8p-16448 5LL : 0x8p-3292 : inexact-ok
+= rootn tonearest intel96 0x8p-16448 5LL : 0x8p-3292 : inexact-ok
+= rootn towardzero intel96 0x8p-16448 5LL : 0x8p-3292 : inexact-ok
+= rootn upward intel96 0x8p-16448 5LL : 0x8p-3292 : inexact-ok
+= rootn downward m68k96 0x8p-16448 5LL : 0x8p-3292 : inexact-ok
+= rootn tonearest m68k96 0x8p-16448 5LL : 0x8p-3292 : inexact-ok
+= rootn towardzero m68k96 0x8p-16448 5LL : 0x8p-3292 : inexact-ok
+= rootn upward m68k96 0x8p-16448 5LL : 0x8p-3292 : inexact-ok
+= rootn downward binary128 0x8p-16448 5LL : 0x8p-3292 : inexact-ok
+= rootn tonearest binary128 0x8p-16448 5LL : 0x8p-3292 : inexact-ok
+= rootn towardzero binary128 0x8p-16448 5LL : 0x8p-3292 : inexact-ok
+= rootn upward binary128 0x8p-16448 5LL : 0x8p-3292 : inexact-ok
+= rootn downward m68k96 0x4p-16448 5LL : 0x6.f6e336b6f848085p-3292 : inexact-ok
+= rootn tonearest m68k96 0x4p-16448 5LL : 0x6.f6e336b6f848085p-3292 : inexact-ok
+= rootn towardzero m68k96 0x4p-16448 5LL : 0x6.f6e336b6f848085p-3292 : inexact-ok
+= rootn upward m68k96 0x4p-16448 5LL : 0x6.f6e336b6f8480858p-3292 : inexact-ok
+= rootn downward binary128 0x4p-16448 5LL : 0x6.f6e336b6f8480853d874c2c9fea4p-3292 : inexact-ok
+= rootn tonearest binary128 0x4p-16448 5LL : 0x6.f6e336b6f8480853d874c2c9fea4p-3292 : inexact-ok
+= rootn towardzero binary128 0x4p-16448 5LL : 0x6.f6e336b6f8480853d874c2c9fea4p-3292 : inexact-ok
+= rootn upward binary128 0x4p-16448 5LL : 0x6.f6e336b6f8480853d874c2c9fea8p-3292 : inexact-ok
+= rootn downward binary128 0x4p-16496 5LL : 0x2.4c2230d75cce92d4a43c840ec1c2p-3300 : inexact-ok
+= rootn tonearest binary128 0x4p-16496 5LL : 0x2.4c2230d75cce92d4a43c840ec1c4p-3300 : inexact-ok
+= rootn towardzero binary128 0x4p-16496 5LL : 0x2.4c2230d75cce92d4a43c840ec1c2p-3300 : inexact-ok
+= rootn upward binary128 0x4p-16496 5LL : 0x2.4c2230d75cce92d4a43c840ec1c4p-3300 : inexact-ok
+rootn min_subnorm 63
+= rootn downward binary32 0x8p-152 63LL : 0x3.1b0f74p-4 : inexact-ok
+= rootn tonearest binary32 0x8p-152 63LL : 0x3.1b0f74p-4 : inexact-ok
+= rootn towardzero binary32 0x8p-152 63LL : 0x3.1b0f74p-4 : inexact-ok
+= rootn upward binary32 0x8p-152 63LL : 0x3.1b0f78p-4 : inexact-ok
+= rootn downward binary64 0x8p-152 63LL : 0x3.1b0f75aa79eecp-4 : inexact-ok
+= rootn tonearest binary64 0x8p-152 63LL : 0x3.1b0f75aa79eecp-4 : inexact-ok
+= rootn towardzero binary64 0x8p-152 63LL : 0x3.1b0f75aa79eecp-4 : inexact-ok
+= rootn upward binary64 0x8p-152 63LL : 0x3.1b0f75aa79eeep-4 : inexact-ok
+= rootn downward intel96 0x8p-152 63LL : 0x3.1b0f75aa79eec7a4p-4 : inexact-ok
+= rootn tonearest intel96 0x8p-152 63LL : 0x3.1b0f75aa79eec7a4p-4 : inexact-ok
+= rootn towardzero intel96 0x8p-152 63LL : 0x3.1b0f75aa79eec7a4p-4 : inexact-ok
+= rootn upward intel96 0x8p-152 63LL : 0x3.1b0f75aa79eec7a8p-4 : inexact-ok
+= rootn downward m68k96 0x8p-152 63LL : 0x3.1b0f75aa79eec7a4p-4 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 63LL : 0x3.1b0f75aa79eec7a4p-4 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 63LL : 0x3.1b0f75aa79eec7a4p-4 : inexact-ok
+= rootn upward m68k96 0x8p-152 63LL : 0x3.1b0f75aa79eec7a8p-4 : inexact-ok
+= rootn downward binary128 0x8p-152 63LL : 0x3.1b0f75aa79eec7a45abc01b85628p-4 : inexact-ok
+= rootn tonearest binary128 0x8p-152 63LL : 0x3.1b0f75aa79eec7a45abc01b8562ap-4 : inexact-ok
+= rootn towardzero binary128 0x8p-152 63LL : 0x3.1b0f75aa79eec7a45abc01b85628p-4 : inexact-ok
+= rootn upward binary128 0x8p-152 63LL : 0x3.1b0f75aa79eec7a45abc01b8562ap-4 : inexact-ok
+= rootn downward ibm128 0x8p-152 63LL : 0x3.1b0f75aa79eec7a45abc01b856p-4 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 63LL : 0x3.1b0f75aa79eec7a45abc01b856p-4 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 63LL : 0x3.1b0f75aa79eec7a45abc01b856p-4 : inexact-ok
+= rootn upward ibm128 0x8p-152 63LL : 0x3.1b0f75aa79eec7a45abc01b857p-4 : inexact-ok
+= rootn downward binary64 0x4p-1076 63LL : 0x7.bd814d14ce7fcp-20 : inexact-ok
+= rootn tonearest binary64 0x4p-1076 63LL : 0x7.bd814d14ce7fcp-20 : inexact-ok
+= rootn towardzero binary64 0x4p-1076 63LL : 0x7.bd814d14ce7fcp-20 : inexact-ok
+= rootn upward binary64 0x4p-1076 63LL : 0x7.bd814d14ce8p-20 : inexact-ok
+= rootn downward intel96 0x4p-1076 63LL : 0x7.bd814d14ce7fcfp-20 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 63LL : 0x7.bd814d14ce7fcfp-20 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 63LL : 0x7.bd814d14ce7fcfp-20 : inexact-ok
+= rootn upward intel96 0x4p-1076 63LL : 0x7.bd814d14ce7fcf08p-20 : inexact-ok
+= rootn downward m68k96 0x4p-1076 63LL : 0x7.bd814d14ce7fcfp-20 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 63LL : 0x7.bd814d14ce7fcfp-20 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 63LL : 0x7.bd814d14ce7fcfp-20 : inexact-ok
+= rootn upward m68k96 0x4p-1076 63LL : 0x7.bd814d14ce7fcf08p-20 : inexact-ok
+= rootn downward binary128 0x4p-1076 63LL : 0x7.bd814d14ce7fcf0093ec45b5178cp-20 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 63LL : 0x7.bd814d14ce7fcf0093ec45b5178cp-20 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 63LL : 0x7.bd814d14ce7fcf0093ec45b5178cp-20 : inexact-ok
+= rootn upward binary128 0x4p-1076 63LL : 0x7.bd814d14ce7fcf0093ec45b5179p-20 : inexact-ok
+= rootn downward ibm128 0x4p-1076 63LL : 0x7.bd814d14ce7fcf0093ec45b516p-20 : inexact-ok
+= rootn tonearest ibm128 0x4p-1076 63LL : 0x7.bd814d14ce7fcf0093ec45b518p-20 : inexact-ok
+= rootn towardzero ibm128 0x4p-1076 63LL : 0x7.bd814d14ce7fcf0093ec45b516p-20 : inexact-ok
+= rootn upward ibm128 0x4p-1076 63LL : 0x7.bd814d14ce7fcf0093ec45b518p-20 : inexact-ok
+= rootn downward intel96 0x8p-16448 63LL : 0x7.d36d3850be891cfp-264 : inexact-ok
+= rootn tonearest intel96 0x8p-16448 63LL : 0x7.d36d3850be891cf8p-264 : inexact-ok
+= rootn towardzero intel96 0x8p-16448 63LL : 0x7.d36d3850be891cfp-264 : inexact-ok
+= rootn upward intel96 0x8p-16448 63LL : 0x7.d36d3850be891cf8p-264 : inexact-ok
+= rootn downward m68k96 0x8p-16448 63LL : 0x7.d36d3850be891cfp-264 : inexact-ok
+= rootn tonearest m68k96 0x8p-16448 63LL : 0x7.d36d3850be891cf8p-264 : inexact-ok
+= rootn towardzero m68k96 0x8p-16448 63LL : 0x7.d36d3850be891cfp-264 : inexact-ok
+= rootn upward m68k96 0x8p-16448 63LL : 0x7.d36d3850be891cf8p-264 : inexact-ok
+= rootn downward binary128 0x8p-16448 63LL : 0x7.d36d3850be891cf5fca6461e963cp-264 : inexact-ok
+= rootn tonearest binary128 0x8p-16448 63LL : 0x7.d36d3850be891cf5fca6461e963cp-264 : inexact-ok
+= rootn towardzero binary128 0x8p-16448 63LL : 0x7.d36d3850be891cf5fca6461e963cp-264 : inexact-ok
+= rootn upward binary128 0x8p-16448 63LL : 0x7.d36d3850be891cf5fca6461e964p-264 : inexact-ok
+= rootn downward m68k96 0x4p-16448 63LL : 0x7.bd814d14ce7fcfp-264 : inexact-ok
+= rootn tonearest m68k96 0x4p-16448 63LL : 0x7.bd814d14ce7fcfp-264 : inexact-ok
+= rootn towardzero m68k96 0x4p-16448 63LL : 0x7.bd814d14ce7fcfp-264 : inexact-ok
+= rootn upward m68k96 0x4p-16448 63LL : 0x7.bd814d14ce7fcf08p-264 : inexact-ok
+= rootn downward binary128 0x4p-16448 63LL : 0x7.bd814d14ce7fcf0093ec45b5178cp-264 : inexact-ok
+= rootn tonearest binary128 0x4p-16448 63LL : 0x7.bd814d14ce7fcf0093ec45b5178cp-264 : inexact-ok
+= rootn towardzero binary128 0x4p-16448 63LL : 0x7.bd814d14ce7fcf0093ec45b5178cp-264 : inexact-ok
+= rootn upward binary128 0x4p-16448 63LL : 0x7.bd814d14ce7fcf0093ec45b5179p-264 : inexact-ok
+= rootn downward binary128 0x4p-16496 63LL : 0x4.908715de494e34e7113a312fd058p-264 : inexact-ok
+= rootn tonearest binary128 0x4p-16496 63LL : 0x4.908715de494e34e7113a312fd05cp-264 : inexact-ok
+= rootn towardzero binary128 0x4p-16496 63LL : 0x4.908715de494e34e7113a312fd058p-264 : inexact-ok
+= rootn upward binary128 0x4p-16496 63LL : 0x4.908715de494e34e7113a312fd05cp-264 : inexact-ok
+rootn min_subnorm 127
+= rootn downward binary32 0x8p-152 127LL : 0x7.1847e8p-4 : inexact-ok
+= rootn tonearest binary32 0x8p-152 127LL : 0x7.1847e8p-4 : inexact-ok
+= rootn towardzero binary32 0x8p-152 127LL : 0x7.1847e8p-4 : inexact-ok
+= rootn upward binary32 0x8p-152 127LL : 0x7.1847fp-4 : inexact-ok
+= rootn downward binary64 0x8p-152 127LL : 0x7.1847eb40c661p-4 : inexact-ok
+= rootn tonearest binary64 0x8p-152 127LL : 0x7.1847eb40c6614p-4 : inexact-ok
+= rootn towardzero binary64 0x8p-152 127LL : 0x7.1847eb40c661p-4 : inexact-ok
+= rootn upward binary64 0x8p-152 127LL : 0x7.1847eb40c6614p-4 : inexact-ok
+= rootn downward intel96 0x8p-152 127LL : 0x7.1847eb40c6613f78p-4 : inexact-ok
+= rootn tonearest intel96 0x8p-152 127LL : 0x7.1847eb40c6613f78p-4 : inexact-ok
+= rootn towardzero intel96 0x8p-152 127LL : 0x7.1847eb40c6613f78p-4 : inexact-ok
+= rootn upward intel96 0x8p-152 127LL : 0x7.1847eb40c6613f8p-4 : inexact-ok
+= rootn downward m68k96 0x8p-152 127LL : 0x7.1847eb40c6613f78p-4 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 127LL : 0x7.1847eb40c6613f78p-4 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 127LL : 0x7.1847eb40c6613f78p-4 : inexact-ok
+= rootn upward m68k96 0x8p-152 127LL : 0x7.1847eb40c6613f8p-4 : inexact-ok
+= rootn downward binary128 0x8p-152 127LL : 0x7.1847eb40c6613f79342e49725734p-4 : inexact-ok
+= rootn tonearest binary128 0x8p-152 127LL : 0x7.1847eb40c6613f79342e49725734p-4 : inexact-ok
+= rootn towardzero binary128 0x8p-152 127LL : 0x7.1847eb40c6613f79342e49725734p-4 : inexact-ok
+= rootn upward binary128 0x8p-152 127LL : 0x7.1847eb40c6613f79342e49725738p-4 : inexact-ok
+= rootn downward ibm128 0x8p-152 127LL : 0x7.1847eb40c6613f79342e497256p-4 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 127LL : 0x7.1847eb40c6613f79342e497258p-4 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 127LL : 0x7.1847eb40c6613f79342e497256p-4 : inexact-ok
+= rootn upward ibm128 0x8p-152 127LL : 0x7.1847eb40c6613f79342e497258p-4 : inexact-ok
+= rootn downward binary64 0x4p-1076 127LL : 0xb.a891c45150b38p-12 : inexact-ok
+= rootn tonearest binary64 0x4p-1076 127LL : 0xb.a891c45150b4p-12 : inexact-ok
+= rootn towardzero binary64 0x4p-1076 127LL : 0xb.a891c45150b38p-12 : inexact-ok
+= rootn upward binary64 0x4p-1076 127LL : 0xb.a891c45150b4p-12 : inexact-ok
+= rootn downward intel96 0x4p-1076 127LL : 0xb.a891c45150b3e77p-12 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 127LL : 0xb.a891c45150b3e78p-12 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 127LL : 0xb.a891c45150b3e77p-12 : inexact-ok
+= rootn upward intel96 0x4p-1076 127LL : 0xb.a891c45150b3e78p-12 : inexact-ok
+= rootn downward m68k96 0x4p-1076 127LL : 0xb.a891c45150b3e77p-12 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 127LL : 0xb.a891c45150b3e78p-12 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 127LL : 0xb.a891c45150b3e77p-12 : inexact-ok
+= rootn upward m68k96 0x4p-1076 127LL : 0xb.a891c45150b3e78p-12 : inexact-ok
+= rootn downward binary128 0x4p-1076 127LL : 0xb.a891c45150b3e77c88d20d544438p-12 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 127LL : 0xb.a891c45150b3e77c88d20d544438p-12 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 127LL : 0xb.a891c45150b3e77c88d20d544438p-12 : inexact-ok
+= rootn upward binary128 0x4p-1076 127LL : 0xb.a891c45150b3e77c88d20d54444p-12 : inexact-ok
+= rootn downward ibm128 0x4p-1076 127LL : 0xb.a891c45150b3e77c88d20d5444p-12 : inexact-ok
+= rootn tonearest ibm128 0x4p-1076 127LL : 0xb.a891c45150b3e77c88d20d5444p-12 : inexact-ok
+= rootn towardzero ibm128 0x4p-1076 127LL : 0xb.a891c45150b3e77c88d20d5444p-12 : inexact-ok
+= rootn upward ibm128 0x4p-1076 127LL : 0xb.a891c45150b3e77c88d20d5448p-12 : inexact-ok
+= rootn downward intel96 0x8p-16448 127LL : 0x5.b40f1f4a19f7cde8p-132 : inexact-ok
+= rootn tonearest intel96 0x8p-16448 127LL : 0x5.b40f1f4a19f7cdfp-132 : inexact-ok
+= rootn towardzero intel96 0x8p-16448 127LL : 0x5.b40f1f4a19f7cde8p-132 : inexact-ok
+= rootn upward intel96 0x8p-16448 127LL : 0x5.b40f1f4a19f7cdfp-132 : inexact-ok
+= rootn downward m68k96 0x8p-16448 127LL : 0x5.b40f1f4a19f7cde8p-132 : inexact-ok
+= rootn tonearest m68k96 0x8p-16448 127LL : 0x5.b40f1f4a19f7cdfp-132 : inexact-ok
+= rootn towardzero m68k96 0x8p-16448 127LL : 0x5.b40f1f4a19f7cde8p-132 : inexact-ok
+= rootn upward m68k96 0x8p-16448 127LL : 0x5.b40f1f4a19f7cdfp-132 : inexact-ok
+= rootn downward binary128 0x8p-16448 127LL : 0x5.b40f1f4a19f7cdec5093b73e0254p-132 : inexact-ok
+= rootn tonearest binary128 0x8p-16448 127LL : 0x5.b40f1f4a19f7cdec5093b73e0254p-132 : inexact-ok
+= rootn towardzero binary128 0x8p-16448 127LL : 0x5.b40f1f4a19f7cdec5093b73e0254p-132 : inexact-ok
+= rootn upward binary128 0x8p-16448 127LL : 0x5.b40f1f4a19f7cdec5093b73e0258p-132 : inexact-ok
+= rootn downward m68k96 0x4p-16448 127LL : 0x5.ac1cab7f8a9edf18p-132 : inexact-ok
+= rootn tonearest m68k96 0x4p-16448 127LL : 0x5.ac1cab7f8a9edf2p-132 : inexact-ok
+= rootn towardzero m68k96 0x4p-16448 127LL : 0x5.ac1cab7f8a9edf18p-132 : inexact-ok
+= rootn upward m68k96 0x4p-16448 127LL : 0x5.ac1cab7f8a9edf2p-132 : inexact-ok
+= rootn downward binary128 0x4p-16448 127LL : 0x5.ac1cab7f8a9edf1c062f2e888564p-132 : inexact-ok
+= rootn tonearest binary128 0x4p-16448 127LL : 0x5.ac1cab7f8a9edf1c062f2e888564p-132 : inexact-ok
+= rootn towardzero binary128 0x4p-16448 127LL : 0x5.ac1cab7f8a9edf1c062f2e888564p-132 : inexact-ok
+= rootn upward binary128 0x4p-16448 127LL : 0x5.ac1cab7f8a9edf1c062f2e888568p-132 : inexact-ok
+= rootn downward binary128 0x4p-16496 127LL : 0x4.5d7127b909842956595da64bcf24p-132 : inexact-ok
+= rootn tonearest binary128 0x4p-16496 127LL : 0x4.5d7127b909842956595da64bcf28p-132 : inexact-ok
+= rootn towardzero binary128 0x4p-16496 127LL : 0x4.5d7127b909842956595da64bcf24p-132 : inexact-ok
+= rootn upward binary128 0x4p-16496 127LL : 0x4.5d7127b909842956595da64bcf28p-132 : inexact-ok
+rootn min_subnorm 255
+= rootn downward binary32 0x8p-152 255LL : 0xa.abe51p-4 : inexact-ok
+= rootn tonearest binary32 0x8p-152 255LL : 0xa.abe52p-4 : inexact-ok
+= rootn towardzero binary32 0x8p-152 255LL : 0xa.abe51p-4 : inexact-ok
+= rootn upward binary32 0x8p-152 255LL : 0xa.abe52p-4 : inexact-ok
+= rootn downward binary64 0x8p-152 255LL : 0xa.abe51920a21d8p-4 : inexact-ok
+= rootn tonearest binary64 0x8p-152 255LL : 0xa.abe51920a21ep-4 : inexact-ok
+= rootn towardzero binary64 0x8p-152 255LL : 0xa.abe51920a21d8p-4 : inexact-ok
+= rootn upward binary64 0x8p-152 255LL : 0xa.abe51920a21ep-4 : inexact-ok
+= rootn downward intel96 0x8p-152 255LL : 0xa.abe51920a21df62p-4 : inexact-ok
+= rootn tonearest intel96 0x8p-152 255LL : 0xa.abe51920a21df62p-4 : inexact-ok
+= rootn towardzero intel96 0x8p-152 255LL : 0xa.abe51920a21df62p-4 : inexact-ok
+= rootn upward intel96 0x8p-152 255LL : 0xa.abe51920a21df63p-4 : inexact-ok
+= rootn downward m68k96 0x8p-152 255LL : 0xa.abe51920a21df62p-4 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 255LL : 0xa.abe51920a21df62p-4 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 255LL : 0xa.abe51920a21df62p-4 : inexact-ok
+= rootn upward m68k96 0x8p-152 255LL : 0xa.abe51920a21df63p-4 : inexact-ok
+= rootn downward binary128 0x8p-152 255LL : 0xa.abe51920a21df62695ea33c1e0e8p-4 : inexact-ok
+= rootn tonearest binary128 0x8p-152 255LL : 0xa.abe51920a21df62695ea33c1e0fp-4 : inexact-ok
+= rootn towardzero binary128 0x8p-152 255LL : 0xa.abe51920a21df62695ea33c1e0e8p-4 : inexact-ok
+= rootn upward binary128 0x8p-152 255LL : 0xa.abe51920a21df62695ea33c1e0fp-4 : inexact-ok
+= rootn downward ibm128 0x8p-152 255LL : 0xa.abe51920a21df62695ea33c1ep-4 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 255LL : 0xa.abe51920a21df62695ea33c1ep-4 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 255LL : 0xa.abe51920a21df62695ea33c1ep-4 : inexact-ok
+= rootn upward ibm128 0x8p-152 255LL : 0xa.abe51920a21df62695ea33c1e4p-4 : inexact-ok
+= rootn downward binary64 0x4p-1076 255LL : 0xd.d0d0cc3bda9e8p-8 : inexact-ok
+= rootn tonearest binary64 0x4p-1076 255LL : 0xd.d0d0cc3bda9fp-8 : inexact-ok
+= rootn towardzero binary64 0x4p-1076 255LL : 0xd.d0d0cc3bda9e8p-8 : inexact-ok
+= rootn upward binary64 0x4p-1076 255LL : 0xd.d0d0cc3bda9fp-8 : inexact-ok
+= rootn downward intel96 0x4p-1076 255LL : 0xd.d0d0cc3bda9eea9p-8 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 255LL : 0xd.d0d0cc3bda9eea9p-8 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 255LL : 0xd.d0d0cc3bda9eea9p-8 : inexact-ok
+= rootn upward intel96 0x4p-1076 255LL : 0xd.d0d0cc3bda9eeaap-8 : inexact-ok
+= rootn downward m68k96 0x4p-1076 255LL : 0xd.d0d0cc3bda9eea9p-8 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 255LL : 0xd.d0d0cc3bda9eea9p-8 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 255LL : 0xd.d0d0cc3bda9eea9p-8 : inexact-ok
+= rootn upward m68k96 0x4p-1076 255LL : 0xd.d0d0cc3bda9eeaap-8 : inexact-ok
+= rootn downward binary128 0x4p-1076 255LL : 0xd.d0d0cc3bda9eea978ba2613f716p-8 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 255LL : 0xd.d0d0cc3bda9eea978ba2613f716p-8 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 255LL : 0xd.d0d0cc3bda9eea978ba2613f716p-8 : inexact-ok
+= rootn upward binary128 0x4p-1076 255LL : 0xd.d0d0cc3bda9eea978ba2613f7168p-8 : inexact-ok
+= rootn downward ibm128 0x4p-1076 255LL : 0xd.d0d0cc3bda9eea978ba2613f7p-8 : inexact-ok
+= rootn tonearest ibm128 0x4p-1076 255LL : 0xd.d0d0cc3bda9eea978ba2613f7p-8 : inexact-ok
+= rootn towardzero ibm128 0x4p-1076 255LL : 0xd.d0d0cc3bda9eea978ba2613f7p-8 : inexact-ok
+= rootn upward ibm128 0x4p-1076 255LL : 0xd.d0d0cc3bda9eea978ba2613f74p-8 : inexact-ok
+= rootn downward intel96 0x8p-16448 255LL : 0xb.640ef67cfa935a2p-68 : inexact-ok
+= rootn tonearest intel96 0x8p-16448 255LL : 0xb.640ef67cfa935a2p-68 : inexact-ok
+= rootn towardzero intel96 0x8p-16448 255LL : 0xb.640ef67cfa935a2p-68 : inexact-ok
+= rootn upward intel96 0x8p-16448 255LL : 0xb.640ef67cfa935a3p-68 : inexact-ok
+= rootn downward m68k96 0x8p-16448 255LL : 0xb.640ef67cfa935a2p-68 : inexact-ok
+= rootn tonearest m68k96 0x8p-16448 255LL : 0xb.640ef67cfa935a2p-68 : inexact-ok
+= rootn towardzero m68k96 0x8p-16448 255LL : 0xb.640ef67cfa935a2p-68 : inexact-ok
+= rootn upward m68k96 0x8p-16448 255LL : 0xb.640ef67cfa935a3p-68 : inexact-ok
+= rootn downward binary128 0x8p-16448 255LL : 0xb.640ef67cfa935a2664b44179f41p-68 : inexact-ok
+= rootn tonearest binary128 0x8p-16448 255LL : 0xb.640ef67cfa935a2664b44179f418p-68 : inexact-ok
+= rootn towardzero binary128 0x8p-16448 255LL : 0xb.640ef67cfa935a2664b44179f41p-68 : inexact-ok
+= rootn upward binary128 0x8p-16448 255LL : 0xb.640ef67cfa935a2664b44179f418p-68 : inexact-ok
+= rootn downward m68k96 0x4p-16448 255LL : 0xb.5c2488b712283dcp-68 : inexact-ok
+= rootn tonearest m68k96 0x4p-16448 255LL : 0xb.5c2488b712283dcp-68 : inexact-ok
+= rootn towardzero m68k96 0x4p-16448 255LL : 0xb.5c2488b712283dcp-68 : inexact-ok
+= rootn upward m68k96 0x4p-16448 255LL : 0xb.5c2488b712283ddp-68 : inexact-ok
+= rootn downward binary128 0x4p-16448 255LL : 0xb.5c2488b712283dc0b0d2f0690608p-68 : inexact-ok
+= rootn tonearest binary128 0x4p-16448 255LL : 0xb.5c2488b712283dc0b0d2f0690608p-68 : inexact-ok
+= rootn towardzero binary128 0x4p-16448 255LL : 0xb.5c2488b712283dc0b0d2f0690608p-68 : inexact-ok
+= rootn upward binary128 0x4p-16448 255LL : 0xb.5c2488b712283dc0b0d2f069061p-68 : inexact-ok
+= rootn downward binary128 0x4p-16496 255LL : 0x9.f86a2ccffa7558fe1a5be8720bd8p-68 : inexact-ok
+= rootn tonearest binary128 0x4p-16496 255LL : 0x9.f86a2ccffa7558fe1a5be8720bd8p-68 : inexact-ok
+= rootn towardzero binary128 0x4p-16496 255LL : 0x9.f86a2ccffa7558fe1a5be8720bd8p-68 : inexact-ok
+= rootn upward binary128 0x4p-16496 255LL : 0x9.f86a2ccffa7558fe1a5be8720bep-68 : inexact-ok
+rootn min_subnorm 511
+= rootn downward binary32 0x8p-152 511LL : 0xd.1272ap-4 : inexact-ok
+= rootn tonearest binary32 0x8p-152 511LL : 0xd.1272bp-4 : inexact-ok
+= rootn towardzero binary32 0x8p-152 511LL : 0xd.1272ap-4 : inexact-ok
+= rootn upward binary32 0x8p-152 511LL : 0xd.1272bp-4 : inexact-ok
+= rootn downward binary64 0x8p-152 511LL : 0xd.1272aed603948p-4 : inexact-ok
+= rootn tonearest binary64 0x8p-152 511LL : 0xd.1272aed60395p-4 : inexact-ok
+= rootn towardzero binary64 0x8p-152 511LL : 0xd.1272aed603948p-4 : inexact-ok
+= rootn upward binary64 0x8p-152 511LL : 0xd.1272aed60395p-4 : inexact-ok
+= rootn downward intel96 0x8p-152 511LL : 0xd.1272aed60394fe3p-4 : inexact-ok
+= rootn tonearest intel96 0x8p-152 511LL : 0xd.1272aed60394fe4p-4 : inexact-ok
+= rootn towardzero intel96 0x8p-152 511LL : 0xd.1272aed60394fe3p-4 : inexact-ok
+= rootn upward intel96 0x8p-152 511LL : 0xd.1272aed60394fe4p-4 : inexact-ok
+= rootn downward m68k96 0x8p-152 511LL : 0xd.1272aed60394fe3p-4 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 511LL : 0xd.1272aed60394fe4p-4 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 511LL : 0xd.1272aed60394fe3p-4 : inexact-ok
+= rootn upward m68k96 0x8p-152 511LL : 0xd.1272aed60394fe4p-4 : inexact-ok
+= rootn downward binary128 0x8p-152 511LL : 0xd.1272aed60394fe3d1ad7b58574cp-4 : inexact-ok
+= rootn tonearest binary128 0x8p-152 511LL : 0xd.1272aed60394fe3d1ad7b58574c8p-4 : inexact-ok
+= rootn towardzero binary128 0x8p-152 511LL : 0xd.1272aed60394fe3d1ad7b58574cp-4 : inexact-ok
+= rootn upward binary128 0x8p-152 511LL : 0xd.1272aed60394fe3d1ad7b58574c8p-4 : inexact-ok
+= rootn downward ibm128 0x8p-152 511LL : 0xd.1272aed60394fe3d1ad7b58574p-4 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 511LL : 0xd.1272aed60394fe3d1ad7b58574p-4 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 511LL : 0xd.1272aed60394fe3d1ad7b58574p-4 : inexact-ok
+= rootn upward ibm128 0x8p-152 511LL : 0xd.1272aed60394fe3d1ad7b58578p-4 : inexact-ok
+= rootn downward binary64 0x4p-1076 511LL : 0x3.ba4296332e25p-4 : inexact-ok
+= rootn tonearest binary64 0x4p-1076 511LL : 0x3.ba4296332e252p-4 : inexact-ok
+= rootn towardzero binary64 0x4p-1076 511LL : 0x3.ba4296332e25p-4 : inexact-ok
+= rootn upward binary64 0x4p-1076 511LL : 0x3.ba4296332e252p-4 : inexact-ok
+= rootn downward intel96 0x4p-1076 511LL : 0x3.ba4296332e251478p-4 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 511LL : 0x3.ba4296332e25147cp-4 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 511LL : 0x3.ba4296332e251478p-4 : inexact-ok
+= rootn upward intel96 0x4p-1076 511LL : 0x3.ba4296332e25147cp-4 : inexact-ok
+= rootn downward m68k96 0x4p-1076 511LL : 0x3.ba4296332e251478p-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 511LL : 0x3.ba4296332e25147cp-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 511LL : 0x3.ba4296332e251478p-4 : inexact-ok
+= rootn upward m68k96 0x4p-1076 511LL : 0x3.ba4296332e25147cp-4 : inexact-ok
+= rootn downward binary128 0x4p-1076 511LL : 0x3.ba4296332e25147b287e7dbc7b1ep-4 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 511LL : 0x3.ba4296332e25147b287e7dbc7b2p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 511LL : 0x3.ba4296332e25147b287e7dbc7b1ep-4 : inexact-ok
+= rootn upward binary128 0x4p-1076 511LL : 0x3.ba4296332e25147b287e7dbc7b2p-4 : inexact-ok
+= rootn downward ibm128 0x4p-1076 511LL : 0x3.ba4296332e25147b287e7dbc7bp-4 : inexact-ok
+= rootn tonearest ibm128 0x4p-1076 511LL : 0x3.ba4296332e25147b287e7dbc7bp-4 : inexact-ok
+= rootn towardzero ibm128 0x4p-1076 511LL : 0x3.ba4296332e25147b287e7dbc7bp-4 : inexact-ok
+= rootn upward ibm128 0x4p-1076 511LL : 0x3.ba4296332e25147b287e7dbc7cp-4 : inexact-ok
+= rootn downward intel96 0x8p-16448 511LL : 0xe.1a8d721296336b5p-36 : inexact-ok
+= rootn tonearest intel96 0x8p-16448 511LL : 0xe.1a8d721296336b6p-36 : inexact-ok
+= rootn towardzero intel96 0x8p-16448 511LL : 0xe.1a8d721296336b5p-36 : inexact-ok
+= rootn upward intel96 0x8p-16448 511LL : 0xe.1a8d721296336b6p-36 : inexact-ok
+= rootn downward m68k96 0x8p-16448 511LL : 0xe.1a8d721296336b5p-36 : inexact-ok
+= rootn tonearest m68k96 0x8p-16448 511LL : 0xe.1a8d721296336b6p-36 : inexact-ok
+= rootn towardzero m68k96 0x8p-16448 511LL : 0xe.1a8d721296336b5p-36 : inexact-ok
+= rootn upward m68k96 0x8p-16448 511LL : 0xe.1a8d721296336b6p-36 : inexact-ok
+= rootn downward binary128 0x8p-16448 511LL : 0xe.1a8d721296336b587a9a2c4158p-36 : inexact-ok
+= rootn tonearest binary128 0x8p-16448 511LL : 0xe.1a8d721296336b587a9a2c4158p-36 : inexact-ok
+= rootn towardzero binary128 0x8p-16448 511LL : 0xe.1a8d721296336b587a9a2c4158p-36 : inexact-ok
+= rootn upward binary128 0x8p-16448 511LL : 0xe.1a8d721296336b587a9a2c415808p-36 : inexact-ok
+= rootn downward m68k96 0x4p-16448 511LL : 0xe.15a8864e2c49c72p-36 : inexact-ok
+= rootn tonearest m68k96 0x4p-16448 511LL : 0xe.15a8864e2c49c73p-36 : inexact-ok
+= rootn towardzero m68k96 0x4p-16448 511LL : 0xe.15a8864e2c49c72p-36 : inexact-ok
+= rootn upward m68k96 0x4p-16448 511LL : 0xe.15a8864e2c49c73p-36 : inexact-ok
+= rootn downward binary128 0x4p-16448 511LL : 0xe.15a8864e2c49c72e840285ec1ddp-36 : inexact-ok
+= rootn tonearest binary128 0x4p-16448 511LL : 0xe.15a8864e2c49c72e840285ec1ddp-36 : inexact-ok
+= rootn towardzero binary128 0x4p-16448 511LL : 0xe.15a8864e2c49c72e840285ec1ddp-36 : inexact-ok
+= rootn upward binary128 0x4p-16448 511LL : 0xe.15a8864e2c49c72e840285ec1dd8p-36 : inexact-ok
+= rootn downward binary128 0x4p-16496 511LL : 0xd.325fd865566584676de4286b5f38p-36 : inexact-ok
+= rootn tonearest binary128 0x4p-16496 511LL : 0xd.325fd865566584676de4286b5f4p-36 : inexact-ok
+= rootn towardzero binary128 0x4p-16496 511LL : 0xd.325fd865566584676de4286b5f38p-36 : inexact-ok
+= rootn upward binary128 0x4p-16496 511LL : 0xd.325fd865566584676de4286b5f4p-36 : inexact-ok
+rootn min_subnorm 1023
+= rootn downward binary32 0x8p-152 1023LL : 0xe.76ab5p-4 : inexact-ok
+= rootn tonearest binary32 0x8p-152 1023LL : 0xe.76ab5p-4 : inexact-ok
+= rootn towardzero binary32 0x8p-152 1023LL : 0xe.76ab5p-4 : inexact-ok
+= rootn upward binary32 0x8p-152 1023LL : 0xe.76ab6p-4 : inexact-ok
+= rootn downward binary64 0x8p-152 1023LL : 0xe.76ab512fd752p-4 : inexact-ok
+= rootn tonearest binary64 0x8p-152 1023LL : 0xe.76ab512fd752p-4 : inexact-ok
+= rootn towardzero binary64 0x8p-152 1023LL : 0xe.76ab512fd752p-4 : inexact-ok
+= rootn upward binary64 0x8p-152 1023LL : 0xe.76ab512fd7528p-4 : inexact-ok
+= rootn downward intel96 0x8p-152 1023LL : 0xe.76ab512fd752354p-4 : inexact-ok
+= rootn tonearest intel96 0x8p-152 1023LL : 0xe.76ab512fd752355p-4 : inexact-ok
+= rootn towardzero intel96 0x8p-152 1023LL : 0xe.76ab512fd752354p-4 : inexact-ok
+= rootn upward intel96 0x8p-152 1023LL : 0xe.76ab512fd752355p-4 : inexact-ok
+= rootn downward m68k96 0x8p-152 1023LL : 0xe.76ab512fd752354p-4 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 1023LL : 0xe.76ab512fd752355p-4 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 1023LL : 0xe.76ab512fd752354p-4 : inexact-ok
+= rootn upward m68k96 0x8p-152 1023LL : 0xe.76ab512fd752355p-4 : inexact-ok
+= rootn downward binary128 0x8p-152 1023LL : 0xe.76ab512fd752354b743a335eb3f8p-4 : inexact-ok
+= rootn tonearest binary128 0x8p-152 1023LL : 0xe.76ab512fd752354b743a335eb4p-4 : inexact-ok
+= rootn towardzero binary128 0x8p-152 1023LL : 0xe.76ab512fd752354b743a335eb3f8p-4 : inexact-ok
+= rootn upward binary128 0x8p-152 1023LL : 0xe.76ab512fd752354b743a335eb4p-4 : inexact-ok
+= rootn downward ibm128 0x8p-152 1023LL : 0xe.76ab512fd752354b743a335ebp-4 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 1023LL : 0xe.76ab512fd752354b743a335eb4p-4 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 1023LL : 0xe.76ab512fd752354b743a335ebp-4 : inexact-ok
+= rootn upward ibm128 0x8p-152 1023LL : 0xe.76ab512fd752354b743a335eb4p-4 : inexact-ok
+= rootn downward binary64 0x4p-1076 1023LL : 0x7.ba704c9cca3b4p-4 : inexact-ok
+= rootn tonearest binary64 0x4p-1076 1023LL : 0x7.ba704c9cca3b4p-4 : inexact-ok
+= rootn towardzero binary64 0x4p-1076 1023LL : 0x7.ba704c9cca3b4p-4 : inexact-ok
+= rootn upward binary64 0x4p-1076 1023LL : 0x7.ba704c9cca3b8p-4 : inexact-ok
+= rootn downward intel96 0x4p-1076 1023LL : 0x7.ba704c9cca3b5edp-4 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 1023LL : 0x7.ba704c9cca3b5ed8p-4 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 1023LL : 0x7.ba704c9cca3b5edp-4 : inexact-ok
+= rootn upward intel96 0x4p-1076 1023LL : 0x7.ba704c9cca3b5ed8p-4 : inexact-ok
+= rootn downward m68k96 0x4p-1076 1023LL : 0x7.ba704c9cca3b5edp-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 1023LL : 0x7.ba704c9cca3b5ed8p-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 1023LL : 0x7.ba704c9cca3b5edp-4 : inexact-ok
+= rootn upward m68k96 0x4p-1076 1023LL : 0x7.ba704c9cca3b5ed8p-4 : inexact-ok
+= rootn downward binary128 0x4p-1076 1023LL : 0x7.ba704c9cca3b5ed58058036a5b6p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 1023LL : 0x7.ba704c9cca3b5ed58058036a5b64p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 1023LL : 0x7.ba704c9cca3b5ed58058036a5b6p-4 : inexact-ok
+= rootn upward binary128 0x4p-1076 1023LL : 0x7.ba704c9cca3b5ed58058036a5b64p-4 : inexact-ok
+= rootn downward ibm128 0x4p-1076 1023LL : 0x7.ba704c9cca3b5ed58058036a5ap-4 : inexact-ok
+= rootn tonearest ibm128 0x4p-1076 1023LL : 0x7.ba704c9cca3b5ed58058036a5cp-4 : inexact-ok
+= rootn towardzero ibm128 0x4p-1076 1023LL : 0x7.ba704c9cca3b5ed58058036a5ap-4 : inexact-ok
+= rootn upward ibm128 0x4p-1076 1023LL : 0x7.ba704c9cca3b5ed58058036a5cp-4 : inexact-ok
+= rootn downward intel96 0x8p-16448 1023LL : 0xf.2fc7e5cbaa4bfddp-20 : inexact-ok
+= rootn tonearest intel96 0x8p-16448 1023LL : 0xf.2fc7e5cbaa4bfdep-20 : inexact-ok
+= rootn towardzero intel96 0x8p-16448 1023LL : 0xf.2fc7e5cbaa4bfddp-20 : inexact-ok
+= rootn upward intel96 0x8p-16448 1023LL : 0xf.2fc7e5cbaa4bfdep-20 : inexact-ok
+= rootn downward m68k96 0x8p-16448 1023LL : 0xf.2fc7e5cbaa4bfddp-20 : inexact-ok
+= rootn tonearest m68k96 0x8p-16448 1023LL : 0xf.2fc7e5cbaa4bfdep-20 : inexact-ok
+= rootn towardzero m68k96 0x8p-16448 1023LL : 0xf.2fc7e5cbaa4bfddp-20 : inexact-ok
+= rootn upward m68k96 0x8p-16448 1023LL : 0xf.2fc7e5cbaa4bfdep-20 : inexact-ok
+= rootn downward binary128 0x8p-16448 1023LL : 0xf.2fc7e5cbaa4bfdd8801e6fc74fc8p-20 : inexact-ok
+= rootn tonearest binary128 0x8p-16448 1023LL : 0xf.2fc7e5cbaa4bfdd8801e6fc74fc8p-20 : inexact-ok
+= rootn towardzero binary128 0x8p-16448 1023LL : 0xf.2fc7e5cbaa4bfdd8801e6fc74fc8p-20 : inexact-ok
+= rootn upward binary128 0x8p-16448 1023LL : 0xf.2fc7e5cbaa4bfdd8801e6fc74fdp-20 : inexact-ok
+= rootn downward m68k96 0x4p-16448 1023LL : 0xf.2d25c43370e42d1p-20 : inexact-ok
+= rootn tonearest m68k96 0x4p-16448 1023LL : 0xf.2d25c43370e42d2p-20 : inexact-ok
+= rootn towardzero m68k96 0x4p-16448 1023LL : 0xf.2d25c43370e42d1p-20 : inexact-ok
+= rootn upward m68k96 0x4p-16448 1023LL : 0xf.2d25c43370e42d2p-20 : inexact-ok
+= rootn downward binary128 0x4p-16448 1023LL : 0xf.2d25c43370e42d1c0d70f7dab79p-20 : inexact-ok
+= rootn tonearest binary128 0x4p-16448 1023LL : 0xf.2d25c43370e42d1c0d70f7dab79p-20 : inexact-ok
+= rootn towardzero binary128 0x4p-16448 1023LL : 0xf.2d25c43370e42d1c0d70f7dab79p-20 : inexact-ok
+= rootn upward binary128 0x4p-16448 1023LL : 0xf.2d25c43370e42d1c0d70f7dab798p-20 : inexact-ok
+= rootn downward binary128 0x4p-16496 1023LL : 0xe.b0d2c9f4744156948c9451345998p-20 : inexact-ok
+= rootn tonearest binary128 0x4p-16496 1023LL : 0xe.b0d2c9f4744156948c9451345998p-20 : inexact-ok
+= rootn towardzero binary128 0x4p-16496 1023LL : 0xe.b0d2c9f4744156948c9451345998p-20 : inexact-ok
+= rootn upward binary128 0x4p-16496 1023LL : 0xe.b0d2c9f4744156948c94513459ap-20 : inexact-ok
+rootn min_subnorm 16383
+= rootn downward binary32 0x8p-152 16383LL : 0xf.e6428p-4 : inexact-ok
+= rootn tonearest binary32 0x8p-152 16383LL : 0xf.e6429p-4 : inexact-ok
+= rootn towardzero binary32 0x8p-152 16383LL : 0xf.e6428p-4 : inexact-ok
+= rootn upward binary32 0x8p-152 16383LL : 0xf.e6429p-4 : inexact-ok
+= rootn downward binary64 0x8p-152 16383LL : 0xf.e6428974cca18p-4 : inexact-ok
+= rootn tonearest binary64 0x8p-152 16383LL : 0xf.e6428974cca2p-4 : inexact-ok
+= rootn towardzero binary64 0x8p-152 16383LL : 0xf.e6428974cca18p-4 : inexact-ok
+= rootn upward binary64 0x8p-152 16383LL : 0xf.e6428974cca2p-4 : inexact-ok
+= rootn downward intel96 0x8p-152 16383LL : 0xf.e6428974cca1d0fp-4 : inexact-ok
+= rootn tonearest intel96 0x8p-152 16383LL : 0xf.e6428974cca1d1p-4 : inexact-ok
+= rootn towardzero intel96 0x8p-152 16383LL : 0xf.e6428974cca1d0fp-4 : inexact-ok
+= rootn upward intel96 0x8p-152 16383LL : 0xf.e6428974cca1d1p-4 : inexact-ok
+= rootn downward m68k96 0x8p-152 16383LL : 0xf.e6428974cca1d0fp-4 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 16383LL : 0xf.e6428974cca1d1p-4 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 16383LL : 0xf.e6428974cca1d0fp-4 : inexact-ok
+= rootn upward m68k96 0x8p-152 16383LL : 0xf.e6428974cca1d1p-4 : inexact-ok
+= rootn downward binary128 0x8p-152 16383LL : 0xf.e6428974cca1d0f910259f16af68p-4 : inexact-ok
+= rootn tonearest binary128 0x8p-152 16383LL : 0xf.e6428974cca1d0f910259f16af68p-4 : inexact-ok
+= rootn towardzero binary128 0x8p-152 16383LL : 0xf.e6428974cca1d0f910259f16af68p-4 : inexact-ok
+= rootn upward binary128 0x8p-152 16383LL : 0xf.e6428974cca1d0f910259f16af7p-4 : inexact-ok
+= rootn downward ibm128 0x8p-152 16383LL : 0xf.e6428974cca1d0f910259f16acp-4 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 16383LL : 0xf.e6428974cca1d0f910259f16bp-4 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 16383LL : 0xf.e6428974cca1d0f910259f16acp-4 : inexact-ok
+= rootn upward ibm128 0x8p-152 16383LL : 0xf.e6428974cca1d0f910259f16bp-4 : inexact-ok
+= rootn downward binary64 0x4p-1076 16383LL : 0xf.4a0b406708518p-4 : inexact-ok
+= rootn tonearest binary64 0x4p-1076 16383LL : 0xf.4a0b406708518p-4 : inexact-ok
+= rootn towardzero binary64 0x4p-1076 16383LL : 0xf.4a0b406708518p-4 : inexact-ok
+= rootn upward binary64 0x4p-1076 16383LL : 0xf.4a0b40670852p-4 : inexact-ok
+= rootn downward intel96 0x4p-1076 16383LL : 0xf.4a0b40670851a94p-4 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 16383LL : 0xf.4a0b40670851a95p-4 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 16383LL : 0xf.4a0b40670851a94p-4 : inexact-ok
+= rootn upward intel96 0x4p-1076 16383LL : 0xf.4a0b40670851a95p-4 : inexact-ok
+= rootn downward m68k96 0x4p-1076 16383LL : 0xf.4a0b40670851a94p-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 16383LL : 0xf.4a0b40670851a95p-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 16383LL : 0xf.4a0b40670851a94p-4 : inexact-ok
+= rootn upward m68k96 0x4p-1076 16383LL : 0xf.4a0b40670851a95p-4 : inexact-ok
+= rootn downward binary128 0x4p-1076 16383LL : 0xf.4a0b40670851a94edb8d8d7ce4d8p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 16383LL : 0xf.4a0b40670851a94edb8d8d7ce4d8p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 16383LL : 0xf.4a0b40670851a94edb8d8d7ce4d8p-4 : inexact-ok
+= rootn upward binary128 0x4p-1076 16383LL : 0xf.4a0b40670851a94edb8d8d7ce4ep-4 : inexact-ok
+= rootn downward ibm128 0x4p-1076 16383LL : 0xf.4a0b40670851a94edb8d8d7ce4p-4 : inexact-ok
+= rootn tonearest ibm128 0x4p-1076 16383LL : 0xf.4a0b40670851a94edb8d8d7ce4p-4 : inexact-ok
+= rootn towardzero ibm128 0x4p-1076 16383LL : 0xf.4a0b40670851a94edb8d8d7ce4p-4 : inexact-ok
+= rootn upward ibm128 0x4p-1076 16383LL : 0xf.4a0b40670851a94edb8d8d7ce8p-4 : inexact-ok
+= rootn downward intel96 0x8p-16448 16383LL : 0x7.faa283a75bac8b9p-4 : inexact-ok
+= rootn tonearest intel96 0x8p-16448 16383LL : 0x7.faa283a75bac8b9p-4 : inexact-ok
+= rootn towardzero intel96 0x8p-16448 16383LL : 0x7.faa283a75bac8b9p-4 : inexact-ok
+= rootn upward intel96 0x8p-16448 16383LL : 0x7.faa283a75bac8b98p-4 : inexact-ok
+= rootn downward m68k96 0x8p-16448 16383LL : 0x7.faa283a75bac8b9p-4 : inexact-ok
+= rootn tonearest m68k96 0x8p-16448 16383LL : 0x7.faa283a75bac8b9p-4 : inexact-ok
+= rootn towardzero m68k96 0x8p-16448 16383LL : 0x7.faa283a75bac8b9p-4 : inexact-ok
+= rootn upward m68k96 0x8p-16448 16383LL : 0x7.faa283a75bac8b98p-4 : inexact-ok
+= rootn downward binary128 0x8p-16448 16383LL : 0x7.faa283a75bac8b93dbf27246eebcp-4 : inexact-ok
+= rootn tonearest binary128 0x8p-16448 16383LL : 0x7.faa283a75bac8b93dbf27246eebcp-4 : inexact-ok
+= rootn towardzero binary128 0x8p-16448 16383LL : 0x7.faa283a75bac8b93dbf27246eebcp-4 : inexact-ok
+= rootn upward binary128 0x8p-16448 16383LL : 0x7.faa283a75bac8b93dbf27246eecp-4 : inexact-ok
+= rootn downward m68k96 0x4p-16448 16383LL : 0x7.fa8c640aa629aa7p-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-16448 16383LL : 0x7.fa8c640aa629aa78p-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-16448 16383LL : 0x7.fa8c640aa629aa7p-4 : inexact-ok
+= rootn upward m68k96 0x4p-16448 16383LL : 0x7.fa8c640aa629aa78p-4 : inexact-ok
+= rootn downward binary128 0x4p-16448 16383LL : 0x7.fa8c640aa629aa75cec7cbb1ff2cp-4 : inexact-ok
+= rootn tonearest binary128 0x4p-16448 16383LL : 0x7.fa8c640aa629aa75cec7cbb1ff2cp-4 : inexact-ok
+= rootn towardzero binary128 0x4p-16448 16383LL : 0x7.fa8c640aa629aa75cec7cbb1ff2cp-4 : inexact-ok
+= rootn upward binary128 0x4p-16448 16383LL : 0x7.fa8c640aa629aa75cec7cbb1ff3p-4 : inexact-ok
+= rootn downward binary128 0x4p-16496 16383LL : 0x7.f6679042bf419508ce0dd9368284p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-16496 16383LL : 0x7.f6679042bf419508ce0dd9368284p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-16496 16383LL : 0x7.f6679042bf419508ce0dd9368284p-4 : inexact-ok
+= rootn upward binary128 0x4p-16496 16383LL : 0x7.f6679042bf419508ce0dd9368288p-4 : inexact-ok
+rootn min_subnorm 0x1000001
+= rootn downward binary32 0x8p-152 16777217LL : 0xf.fff98p-4 : inexact-ok
+= rootn tonearest binary32 0x8p-152 16777217LL : 0xf.fff99p-4 : inexact-ok
+= rootn towardzero binary32 0x8p-152 16777217LL : 0xf.fff98p-4 : inexact-ok
+= rootn upward binary32 0x8p-152 16777217LL : 0xf.fff99p-4 : inexact-ok
+= rootn downward binary64 0x8p-152 16777217LL : 0xf.fff98b8ad4948p-4 : inexact-ok
+= rootn tonearest binary64 0x8p-152 16777217LL : 0xf.fff98b8ad495p-4 : inexact-ok
+= rootn towardzero binary64 0x8p-152 16777217LL : 0xf.fff98b8ad4948p-4 : inexact-ok
+= rootn upward binary64 0x8p-152 16777217LL : 0xf.fff98b8ad495p-4 : inexact-ok
+= rootn downward intel96 0x8p-152 16777217LL : 0xf.fff98b8ad494c1bp-4 : inexact-ok
+= rootn tonearest intel96 0x8p-152 16777217LL : 0xf.fff98b8ad494c1bp-4 : inexact-ok
+= rootn towardzero intel96 0x8p-152 16777217LL : 0xf.fff98b8ad494c1bp-4 : inexact-ok
+= rootn upward intel96 0x8p-152 16777217LL : 0xf.fff98b8ad494c1cp-4 : inexact-ok
+= rootn downward m68k96 0x8p-152 16777217LL : 0xf.fff98b8ad494c1bp-4 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 16777217LL : 0xf.fff98b8ad494c1bp-4 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 16777217LL : 0xf.fff98b8ad494c1bp-4 : inexact-ok
+= rootn upward m68k96 0x8p-152 16777217LL : 0xf.fff98b8ad494c1cp-4 : inexact-ok
+= rootn downward binary128 0x8p-152 16777217LL : 0xf.fff98b8ad494c1b325121ef485dp-4 : inexact-ok
+= rootn tonearest binary128 0x8p-152 16777217LL : 0xf.fff98b8ad494c1b325121ef485dp-4 : inexact-ok
+= rootn towardzero binary128 0x8p-152 16777217LL : 0xf.fff98b8ad494c1b325121ef485dp-4 : inexact-ok
+= rootn upward binary128 0x8p-152 16777217LL : 0xf.fff98b8ad494c1b325121ef485d8p-4 : inexact-ok
+= rootn downward ibm128 0x8p-152 16777217LL : 0xf.fff98b8ad494c1b325121ef484p-4 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 16777217LL : 0xf.fff98b8ad494c1b325121ef484p-4 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 16777217LL : 0xf.fff98b8ad494c1b325121ef484p-4 : inexact-ok
+= rootn upward ibm128 0x8p-152 16777217LL : 0xf.fff98b8ad494c1b325121ef488p-4 : inexact-ok
+= rootn downward binary64 0x4p-1076 16777217LL : 0xf.ffd179394be2p-4 : inexact-ok
+= rootn tonearest binary64 0x4p-1076 16777217LL : 0xf.ffd179394be2p-4 : inexact-ok
+= rootn towardzero binary64 0x4p-1076 16777217LL : 0xf.ffd179394be2p-4 : inexact-ok
+= rootn upward binary64 0x4p-1076 16777217LL : 0xf.ffd179394be28p-4 : inexact-ok
+= rootn downward intel96 0x4p-1076 16777217LL : 0xf.ffd179394be236ep-4 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 16777217LL : 0xf.ffd179394be236ep-4 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 16777217LL : 0xf.ffd179394be236ep-4 : inexact-ok
+= rootn upward intel96 0x4p-1076 16777217LL : 0xf.ffd179394be236fp-4 : inexact-ok
+= rootn downward m68k96 0x4p-1076 16777217LL : 0xf.ffd179394be236ep-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 16777217LL : 0xf.ffd179394be236ep-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 16777217LL : 0xf.ffd179394be236ep-4 : inexact-ok
+= rootn upward m68k96 0x4p-1076 16777217LL : 0xf.ffd179394be236fp-4 : inexact-ok
+= rootn downward binary128 0x4p-1076 16777217LL : 0xf.ffd179394be236e1aca04305926p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 16777217LL : 0xf.ffd179394be236e1aca043059268p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 16777217LL : 0xf.ffd179394be236e1aca04305926p-4 : inexact-ok
+= rootn upward binary128 0x4p-1076 16777217LL : 0xf.ffd179394be236e1aca043059268p-4 : inexact-ok
+= rootn downward ibm128 0x4p-1076 16777217LL : 0xf.ffd179394be236e1aca043059p-4 : inexact-ok
+= rootn tonearest ibm128 0x4p-1076 16777217LL : 0xf.ffd179394be236e1aca0430594p-4 : inexact-ok
+= rootn towardzero ibm128 0x4p-1076 16777217LL : 0xf.ffd179394be236e1aca043059p-4 : inexact-ok
+= rootn upward ibm128 0x4p-1076 16777217LL : 0xf.ffd179394be236e1aca0430594p-4 : inexact-ok
+= rootn downward intel96 0x8p-16448 16777217LL : 0xf.fd37d11144bf63fp-4 : inexact-ok
+= rootn tonearest intel96 0x8p-16448 16777217LL : 0xf.fd37d11144bf63fp-4 : inexact-ok
+= rootn towardzero intel96 0x8p-16448 16777217LL : 0xf.fd37d11144bf63fp-4 : inexact-ok
+= rootn upward intel96 0x8p-16448 16777217LL : 0xf.fd37d11144bf64p-4 : inexact-ok
+= rootn downward m68k96 0x8p-16448 16777217LL : 0xf.fd37d11144bf63fp-4 : inexact-ok
+= rootn tonearest m68k96 0x8p-16448 16777217LL : 0xf.fd37d11144bf63fp-4 : inexact-ok
+= rootn towardzero m68k96 0x8p-16448 16777217LL : 0xf.fd37d11144bf63fp-4 : inexact-ok
+= rootn upward m68k96 0x8p-16448 16777217LL : 0xf.fd37d11144bf64p-4 : inexact-ok
+= rootn downward binary128 0x8p-16448 16777217LL : 0xf.fd37d11144bf63f1314474d33db8p-4 : inexact-ok
+= rootn tonearest binary128 0x8p-16448 16777217LL : 0xf.fd37d11144bf63f1314474d33dcp-4 : inexact-ok
+= rootn towardzero binary128 0x8p-16448 16777217LL : 0xf.fd37d11144bf63f1314474d33db8p-4 : inexact-ok
+= rootn upward binary128 0x8p-16448 16777217LL : 0xf.fd37d11144bf63f1314474d33dcp-4 : inexact-ok
+= rootn downward m68k96 0x4p-16448 16777217LL : 0xf.fd37c5fc10f4adfp-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-16448 16777217LL : 0xf.fd37c5fc10f4aep-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-16448 16777217LL : 0xf.fd37c5fc10f4adfp-4 : inexact-ok
+= rootn upward m68k96 0x4p-16448 16777217LL : 0xf.fd37c5fc10f4aep-4 : inexact-ok
+= rootn downward binary128 0x4p-16448 16777217LL : 0xf.fd37c5fc10f4adf81537c41a05c8p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-16448 16777217LL : 0xf.fd37c5fc10f4adf81537c41a05dp-4 : inexact-ok
+= rootn towardzero binary128 0x4p-16448 16777217LL : 0xf.fd37c5fc10f4adf81537c41a05c8p-4 : inexact-ok
+= rootn upward binary128 0x4p-16448 16777217LL : 0xf.fd37c5fc10f4adf81537c41a05dp-4 : inexact-ok
+= rootn downward binary128 0x4p-16496 16777217LL : 0xf.fd35b2027e3c9dbf58f0e8a8435p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-16496 16777217LL : 0xf.fd35b2027e3c9dbf58f0e8a8435p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-16496 16777217LL : 0xf.fd35b2027e3c9dbf58f0e8a8435p-4 : inexact-ok
+= rootn upward binary128 0x4p-16496 16777217LL : 0xf.fd35b2027e3c9dbf58f0e8a84358p-4 : inexact-ok
+rootn min_subnorm 0x10000000000001
+= rootn downward binary32 0x8p-152 4503599627370497LL : 0xf.fffffp-4 : inexact-ok
+= rootn tonearest binary32 0x8p-152 4503599627370497LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary32 0x8p-152 4503599627370497LL : 0xf.fffffp-4 : inexact-ok
+= rootn upward binary32 0x8p-152 4503599627370497LL : 0x1p+0 : inexact-ok
+= rootn downward binary64 0x8p-152 4503599627370497LL : 0xf.ffffffffff988p-4 : inexact-ok
+= rootn tonearest binary64 0x8p-152 4503599627370497LL : 0xf.ffffffffff988p-4 : inexact-ok
+= rootn towardzero binary64 0x8p-152 4503599627370497LL : 0xf.ffffffffff988p-4 : inexact-ok
+= rootn upward binary64 0x8p-152 4503599627370497LL : 0xf.ffffffffff99p-4 : inexact-ok
+= rootn downward intel96 0x8p-152 4503599627370497LL : 0xf.ffffffffff98b89p-4 : inexact-ok
+= rootn tonearest intel96 0x8p-152 4503599627370497LL : 0xf.ffffffffff98b8ap-4 : inexact-ok
+= rootn towardzero intel96 0x8p-152 4503599627370497LL : 0xf.ffffffffff98b89p-4 : inexact-ok
+= rootn upward intel96 0x8p-152 4503599627370497LL : 0xf.ffffffffff98b8ap-4 : inexact-ok
+= rootn downward m68k96 0x8p-152 4503599627370497LL : 0xf.ffffffffff98b89p-4 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 4503599627370497LL : 0xf.ffffffffff98b8ap-4 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 4503599627370497LL : 0xf.ffffffffff98b89p-4 : inexact-ok
+= rootn upward m68k96 0x8p-152 4503599627370497LL : 0xf.ffffffffff98b8ap-4 : inexact-ok
+= rootn downward binary128 0x8p-152 4503599627370497LL : 0xf.ffffffffff98b8980cc2e391f7cp-4 : inexact-ok
+= rootn tonearest binary128 0x8p-152 4503599627370497LL : 0xf.ffffffffff98b8980cc2e391f7c8p-4 : inexact-ok
+= rootn towardzero binary128 0x8p-152 4503599627370497LL : 0xf.ffffffffff98b8980cc2e391f7cp-4 : inexact-ok
+= rootn upward binary128 0x8p-152 4503599627370497LL : 0xf.ffffffffff98b8980cc2e391f7c8p-4 : inexact-ok
+= rootn downward ibm128 0x8p-152 4503599627370497LL : 0xf.ffffffffff98b8980cc2e391f4p-4 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 4503599627370497LL : 0xf.ffffffffff98b8980cc2e391f8p-4 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 4503599627370497LL : 0xf.ffffffffff98b8980cc2e391f4p-4 : inexact-ok
+= rootn upward ibm128 0x8p-152 4503599627370497LL : 0xf.ffffffffff98b8980cc2e391f8p-4 : inexact-ok
+= rootn downward binary64 0x4p-1076 4503599627370497LL : 0xf.fffffffffd178p-4 : inexact-ok
+= rootn tonearest binary64 0x4p-1076 4503599627370497LL : 0xf.fffffffffd178p-4 : inexact-ok
+= rootn towardzero binary64 0x4p-1076 4503599627370497LL : 0xf.fffffffffd178p-4 : inexact-ok
+= rootn upward binary64 0x4p-1076 4503599627370497LL : 0xf.fffffffffd18p-4 : inexact-ok
+= rootn downward intel96 0x4p-1076 4503599627370497LL : 0xf.fffffffffd178f5p-4 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 4503599627370497LL : 0xf.fffffffffd178f5p-4 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 4503599627370497LL : 0xf.fffffffffd178f5p-4 : inexact-ok
+= rootn upward intel96 0x4p-1076 4503599627370497LL : 0xf.fffffffffd178f6p-4 : inexact-ok
+= rootn downward m68k96 0x4p-1076 4503599627370497LL : 0xf.fffffffffd178f5p-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 4503599627370497LL : 0xf.fffffffffd178f5p-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 4503599627370497LL : 0xf.fffffffffd178f5p-4 : inexact-ok
+= rootn upward m68k96 0x4p-1076 4503599627370497LL : 0xf.fffffffffd178f6p-4 : inexact-ok
+= rootn downward binary128 0x4p-1076 4503599627370497LL : 0xf.fffffffffd178f5772520b688c78p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 4503599627370497LL : 0xf.fffffffffd178f5772520b688c8p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 4503599627370497LL : 0xf.fffffffffd178f5772520b688c78p-4 : inexact-ok
+= rootn upward binary128 0x4p-1076 4503599627370497LL : 0xf.fffffffffd178f5772520b688c8p-4 : inexact-ok
+= rootn downward ibm128 0x4p-1076 4503599627370497LL : 0xf.fffffffffd178f5772520b688cp-4 : inexact-ok
+= rootn tonearest ibm128 0x4p-1076 4503599627370497LL : 0xf.fffffffffd178f5772520b688cp-4 : inexact-ok
+= rootn towardzero ibm128 0x4p-1076 4503599627370497LL : 0xf.fffffffffd178f5772520b688cp-4 : inexact-ok
+= rootn upward ibm128 0x4p-1076 4503599627370497LL : 0xf.fffffffffd178f5772520b689p-4 : inexact-ok
+= rootn downward intel96 0x8p-16448 4503599627370497LL : 0xf.ffffffffd37931dp-4 : inexact-ok
+= rootn tonearest intel96 0x8p-16448 4503599627370497LL : 0xf.ffffffffd37931dp-4 : inexact-ok
+= rootn towardzero intel96 0x8p-16448 4503599627370497LL : 0xf.ffffffffd37931dp-4 : inexact-ok
+= rootn upward intel96 0x8p-16448 4503599627370497LL : 0xf.ffffffffd37931ep-4 : inexact-ok
+= rootn downward m68k96 0x8p-16448 4503599627370497LL : 0xf.ffffffffd37931dp-4 : inexact-ok
+= rootn tonearest m68k96 0x8p-16448 4503599627370497LL : 0xf.ffffffffd37931dp-4 : inexact-ok
+= rootn towardzero m68k96 0x8p-16448 4503599627370497LL : 0xf.ffffffffd37931dp-4 : inexact-ok
+= rootn upward m68k96 0x8p-16448 4503599627370497LL : 0xf.ffffffffd37931ep-4 : inexact-ok
+= rootn downward binary128 0x8p-16448 4503599627370497LL : 0xf.ffffffffd37931d255bd1adc5df8p-4 : inexact-ok
+= rootn tonearest binary128 0x8p-16448 4503599627370497LL : 0xf.ffffffffd37931d255bd1adc5ep-4 : inexact-ok
+= rootn towardzero binary128 0x8p-16448 4503599627370497LL : 0xf.ffffffffd37931d255bd1adc5df8p-4 : inexact-ok
+= rootn upward binary128 0x8p-16448 4503599627370497LL : 0xf.ffffffffd37931d255bd1adc5ep-4 : inexact-ok
+= rootn downward m68k96 0x4p-16448 4503599627370497LL : 0xf.ffffffffd378806p-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-16448 4503599627370497LL : 0xf.ffffffffd378806p-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-16448 4503599627370497LL : 0xf.ffffffffd378806p-4 : inexact-ok
+= rootn upward m68k96 0x4p-16448 4503599627370497LL : 0xf.ffffffffd378807p-4 : inexact-ok
+= rootn downward binary128 0x4p-16448 4503599627370497LL : 0xf.ffffffffd37880603dc54afac408p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-16448 4503599627370497LL : 0xf.ffffffffd37880603dc54afac41p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-16448 4503599627370497LL : 0xf.ffffffffd37880603dc54afac408p-4 : inexact-ok
+= rootn upward binary128 0x4p-16448 4503599627370497LL : 0xf.ffffffffd37880603dc54afac41p-4 : inexact-ok
+= rootn downward binary128 0x4p-16496 4503599627370497LL : 0xf.ffffffffd3573afbbf4e50d1372p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-16496 4503599627370497LL : 0xf.ffffffffd3573afbbf4e50d1372p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-16496 4503599627370497LL : 0xf.ffffffffd3573afbbf4e50d1372p-4 : inexact-ok
+= rootn upward binary128 0x4p-16496 4503599627370497LL : 0xf.ffffffffd3573afbbf4e50d13728p-4 : inexact-ok
+rootn min_subnorm 0x7fffffffffffffff
+= rootn downward binary32 0x8p-152 9223372036854775807LL : 0xf.fffffp-4 : inexact-ok
+= rootn tonearest binary32 0x8p-152 9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary32 0x8p-152 9223372036854775807LL : 0xf.fffffp-4 : inexact-ok
+= rootn upward binary32 0x8p-152 9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn downward binary64 0x8p-152 9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= rootn tonearest binary64 0x8p-152 9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary64 0x8p-152 9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= rootn upward binary64 0x8p-152 9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn downward intel96 0x8p-152 9223372036854775807LL : 0xf.fffffffffffff31p-4 : inexact-ok
+= rootn tonearest intel96 0x8p-152 9223372036854775807LL : 0xf.fffffffffffff31p-4 : inexact-ok
+= rootn towardzero intel96 0x8p-152 9223372036854775807LL : 0xf.fffffffffffff31p-4 : inexact-ok
+= rootn upward intel96 0x8p-152 9223372036854775807LL : 0xf.fffffffffffff32p-4 : inexact-ok
+= rootn downward m68k96 0x8p-152 9223372036854775807LL : 0xf.fffffffffffff31p-4 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 9223372036854775807LL : 0xf.fffffffffffff31p-4 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 9223372036854775807LL : 0xf.fffffffffffff31p-4 : inexact-ok
+= rootn upward m68k96 0x8p-152 9223372036854775807LL : 0xf.fffffffffffff32p-4 : inexact-ok
+= rootn downward binary128 0x8p-152 9223372036854775807LL : 0xf.fffffffffffff3171301985c47c8p-4 : inexact-ok
+= rootn tonearest binary128 0x8p-152 9223372036854775807LL : 0xf.fffffffffffff3171301985c47c8p-4 : inexact-ok
+= rootn towardzero binary128 0x8p-152 9223372036854775807LL : 0xf.fffffffffffff3171301985c47c8p-4 : inexact-ok
+= rootn upward binary128 0x8p-152 9223372036854775807LL : 0xf.fffffffffffff3171301985c47dp-4 : inexact-ok
+= rootn downward ibm128 0x8p-152 9223372036854775807LL : 0xf.fffffffffffff3171301985c44p-4 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 9223372036854775807LL : 0xf.fffffffffffff3171301985c48p-4 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 9223372036854775807LL : 0xf.fffffffffffff3171301985c44p-4 : inexact-ok
+= rootn upward ibm128 0x8p-152 9223372036854775807LL : 0xf.fffffffffffff3171301985c48p-4 : inexact-ok
+= rootn downward binary64 0x4p-1076 9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= rootn tonearest binary64 0x4p-1076 9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= rootn towardzero binary64 0x4p-1076 9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= rootn upward binary64 0x4p-1076 9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn downward intel96 0x4p-1076 9223372036854775807LL : 0xf.ffffffffffffa2fp-4 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 9223372036854775807LL : 0xf.ffffffffffffa2fp-4 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 9223372036854775807LL : 0xf.ffffffffffffa2fp-4 : inexact-ok
+= rootn upward intel96 0x4p-1076 9223372036854775807LL : 0xf.ffffffffffffa3p-4 : inexact-ok
+= rootn downward m68k96 0x4p-1076 9223372036854775807LL : 0xf.ffffffffffffa2fp-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 9223372036854775807LL : 0xf.ffffffffffffa2fp-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 9223372036854775807LL : 0xf.ffffffffffffa2fp-4 : inexact-ok
+= rootn upward m68k96 0x4p-1076 9223372036854775807LL : 0xf.ffffffffffffa3p-4 : inexact-ok
+= rootn downward binary128 0x4p-1076 9223372036854775807LL : 0xf.ffffffffffffa2f1eaee4a38f378p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 9223372036854775807LL : 0xf.ffffffffffffa2f1eaee4a38f38p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 9223372036854775807LL : 0xf.ffffffffffffa2f1eaee4a38f378p-4 : inexact-ok
+= rootn upward binary128 0x4p-1076 9223372036854775807LL : 0xf.ffffffffffffa2f1eaee4a38f38p-4 : inexact-ok
+= rootn downward ibm128 0x4p-1076 9223372036854775807LL : 0xf.ffffffffffffa2f1eaee4a38fp-4 : inexact-ok
+= rootn tonearest ibm128 0x4p-1076 9223372036854775807LL : 0xf.ffffffffffffa2f1eaee4a38f4p-4 : inexact-ok
+= rootn towardzero ibm128 0x4p-1076 9223372036854775807LL : 0xf.ffffffffffffa2f1eaee4a38fp-4 : inexact-ok
+= rootn upward ibm128 0x4p-1076 9223372036854775807LL : 0xf.ffffffffffffa2f1eaee4a38f4p-4 : inexact-ok
+= rootn downward intel96 0x8p-16448 9223372036854775807LL : 0xf.fffffffffffa6f2p-4 : inexact-ok
+= rootn tonearest intel96 0x8p-16448 9223372036854775807LL : 0xf.fffffffffffa6f2p-4 : inexact-ok
+= rootn towardzero intel96 0x8p-16448 9223372036854775807LL : 0xf.fffffffffffa6f2p-4 : inexact-ok
+= rootn upward intel96 0x8p-16448 9223372036854775807LL : 0xf.fffffffffffa6f3p-4 : inexact-ok
+= rootn downward m68k96 0x8p-16448 9223372036854775807LL : 0xf.fffffffffffa6f2p-4 : inexact-ok
+= rootn tonearest m68k96 0x8p-16448 9223372036854775807LL : 0xf.fffffffffffa6f2p-4 : inexact-ok
+= rootn towardzero m68k96 0x8p-16448 9223372036854775807LL : 0xf.fffffffffffa6f2p-4 : inexact-ok
+= rootn upward m68k96 0x8p-16448 9223372036854775807LL : 0xf.fffffffffffa6f3p-4 : inexact-ok
+= rootn downward binary128 0x8p-16448 9223372036854775807LL : 0xf.fffffffffffa6f263a4aafe55c68p-4 : inexact-ok
+= rootn tonearest binary128 0x8p-16448 9223372036854775807LL : 0xf.fffffffffffa6f263a4aafe55c68p-4 : inexact-ok
+= rootn towardzero binary128 0x8p-16448 9223372036854775807LL : 0xf.fffffffffffa6f263a4aafe55c68p-4 : inexact-ok
+= rootn upward binary128 0x8p-16448 9223372036854775807LL : 0xf.fffffffffffa6f263a4aafe55c7p-4 : inexact-ok
+= rootn downward m68k96 0x4p-16448 9223372036854775807LL : 0xf.fffffffffffa6f1p-4 : inexact-ok
+= rootn tonearest m68k96 0x4p-16448 9223372036854775807LL : 0xf.fffffffffffa6f1p-4 : inexact-ok
+= rootn towardzero m68k96 0x4p-16448 9223372036854775807LL : 0xf.fffffffffffa6f1p-4 : inexact-ok
+= rootn upward m68k96 0x4p-16448 9223372036854775807LL : 0xf.fffffffffffa6f2p-4 : inexact-ok
+= rootn downward binary128 0x4p-16448 9223372036854775807LL : 0xf.fffffffffffa6f100c07b0eb228p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-16448 9223372036854775807LL : 0xf.fffffffffffa6f100c07b0eb228p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-16448 9223372036854775807LL : 0xf.fffffffffffa6f100c07b0eb228p-4 : inexact-ok
+= rootn upward binary128 0x4p-16448 9223372036854775807LL : 0xf.fffffffffffa6f100c07b0eb2288p-4 : inexact-ok
+= rootn downward binary128 0x4p-16496 9223372036854775807LL : 0xf.fffffffffffa6ae75f77e2004718p-4 : inexact-ok
+= rootn tonearest binary128 0x4p-16496 9223372036854775807LL : 0xf.fffffffffffa6ae75f77e2004718p-4 : inexact-ok
+= rootn towardzero binary128 0x4p-16496 9223372036854775807LL : 0xf.fffffffffffa6ae75f77e2004718p-4 : inexact-ok
+= rootn upward binary128 0x4p-16496 9223372036854775807LL : 0xf.fffffffffffa6ae75f77e200472p-4 : inexact-ok
+rootn -min_subnorm 1
+= rootn downward binary32 -0x8p-152 1LL : -0x8p-152 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest binary32 -0x8p-152 1LL : -0x8p-152 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero binary32 -0x8p-152 1LL : -0x8p-152 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward binary32 -0x8p-152 1LL : -0x8p-152 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward binary64 -0x8p-152 1LL : -0x8p-152 : inexact-ok
+= rootn tonearest binary64 -0x8p-152 1LL : -0x8p-152 : inexact-ok
+= rootn towardzero binary64 -0x8p-152 1LL : -0x8p-152 : inexact-ok
+= rootn upward binary64 -0x8p-152 1LL : -0x8p-152 : inexact-ok
+= rootn downward intel96 -0x8p-152 1LL : -0x8p-152 : inexact-ok
+= rootn tonearest intel96 -0x8p-152 1LL : -0x8p-152 : inexact-ok
+= rootn towardzero intel96 -0x8p-152 1LL : -0x8p-152 : inexact-ok
+= rootn upward intel96 -0x8p-152 1LL : -0x8p-152 : inexact-ok
+= rootn downward m68k96 -0x8p-152 1LL : -0x8p-152 : inexact-ok
+= rootn tonearest m68k96 -0x8p-152 1LL : -0x8p-152 : inexact-ok
+= rootn towardzero m68k96 -0x8p-152 1LL : -0x8p-152 : inexact-ok
+= rootn upward m68k96 -0x8p-152 1LL : -0x8p-152 : inexact-ok
+= rootn downward binary128 -0x8p-152 1LL : -0x8p-152 : inexact-ok
+= rootn tonearest binary128 -0x8p-152 1LL : -0x8p-152 : inexact-ok
+= rootn towardzero binary128 -0x8p-152 1LL : -0x8p-152 : inexact-ok
+= rootn upward binary128 -0x8p-152 1LL : -0x8p-152 : inexact-ok
+= rootn downward ibm128 -0x8p-152 1LL : -0x8p-152 : inexact-ok
+= rootn tonearest ibm128 -0x8p-152 1LL : -0x8p-152 : inexact-ok
+= rootn towardzero ibm128 -0x8p-152 1LL : -0x8p-152 : inexact-ok
+= rootn upward ibm128 -0x8p-152 1LL : -0x8p-152 : inexact-ok
+= rootn downward binary64 -0x4p-1076 1LL : -0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest binary64 -0x4p-1076 1LL : -0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero binary64 -0x4p-1076 1LL : -0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward binary64 -0x4p-1076 1LL : -0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward intel96 -0x4p-1076 1LL : -0x4p-1076 : inexact-ok
+= rootn tonearest intel96 -0x4p-1076 1LL : -0x4p-1076 : inexact-ok
+= rootn towardzero intel96 -0x4p-1076 1LL : -0x4p-1076 : inexact-ok
+= rootn upward intel96 -0x4p-1076 1LL : -0x4p-1076 : inexact-ok
+= rootn downward m68k96 -0x4p-1076 1LL : -0x4p-1076 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1076 1LL : -0x4p-1076 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1076 1LL : -0x4p-1076 : inexact-ok
+= rootn upward m68k96 -0x4p-1076 1LL : -0x4p-1076 : inexact-ok
+= rootn downward binary128 -0x4p-1076 1LL : -0x4p-1076 : inexact-ok
+= rootn tonearest binary128 -0x4p-1076 1LL : -0x4p-1076 : inexact-ok
+= rootn towardzero binary128 -0x4p-1076 1LL : -0x4p-1076 : inexact-ok
+= rootn upward binary128 -0x4p-1076 1LL : -0x4p-1076 : inexact-ok
+= rootn downward ibm128 -0x4p-1076 1LL : -0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest ibm128 -0x4p-1076 1LL : -0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero ibm128 -0x4p-1076 1LL : -0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward ibm128 -0x4p-1076 1LL : -0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward intel96 -0x8p-16448 1LL : -0x8p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest intel96 -0x8p-16448 1LL : -0x8p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero intel96 -0x8p-16448 1LL : -0x8p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward intel96 -0x8p-16448 1LL : -0x8p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward m68k96 -0x8p-16448 1LL : -0x8p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest m68k96 -0x8p-16448 1LL : -0x8p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero m68k96 -0x8p-16448 1LL : -0x8p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward m68k96 -0x8p-16448 1LL : -0x8p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward binary128 -0x8p-16448 1LL : -0x8p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest binary128 -0x8p-16448 1LL : -0x8p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero binary128 -0x8p-16448 1LL : -0x8p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward binary128 -0x8p-16448 1LL : -0x8p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward m68k96 -0x4p-16448 1LL : -0x4p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest m68k96 -0x4p-16448 1LL : -0x4p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero m68k96 -0x4p-16448 1LL : -0x4p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward m68k96 -0x4p-16448 1LL : -0x4p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward binary128 -0x4p-16448 1LL : -0x4p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest binary128 -0x4p-16448 1LL : -0x4p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero binary128 -0x4p-16448 1LL : -0x4p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward binary128 -0x4p-16448 1LL : -0x4p-16448 : inexact-ok underflow-ok errno-erange-ok
+= rootn downward binary128 -0x4p-16496 1LL : -0x4p-16496 : inexact-ok underflow-ok errno-erange-ok
+= rootn tonearest binary128 -0x4p-16496 1LL : -0x4p-16496 : inexact-ok underflow-ok errno-erange-ok
+= rootn towardzero binary128 -0x4p-16496 1LL : -0x4p-16496 : inexact-ok underflow-ok errno-erange-ok
+= rootn upward binary128 -0x4p-16496 1LL : -0x4p-16496 : inexact-ok underflow-ok errno-erange-ok
+rootn -min_subnorm 3
+= rootn downward binary32 -0x8p-152 3LL : -0x5.0a28cp-52 : inexact-ok
+= rootn tonearest binary32 -0x8p-152 3LL : -0x5.0a28cp-52 : inexact-ok
+= rootn towardzero binary32 -0x8p-152 3LL : -0x5.0a28b8p-52 : inexact-ok
+= rootn upward binary32 -0x8p-152 3LL : -0x5.0a28b8p-52 : inexact-ok
+= rootn downward binary64 -0x8p-152 3LL : -0x5.0a28be635ca2cp-52 : inexact-ok
+= rootn tonearest binary64 -0x8p-152 3LL : -0x5.0a28be635ca2cp-52 : inexact-ok
+= rootn towardzero binary64 -0x8p-152 3LL : -0x5.0a28be635ca28p-52 : inexact-ok
+= rootn upward binary64 -0x8p-152 3LL : -0x5.0a28be635ca28p-52 : inexact-ok
+= rootn downward intel96 -0x8p-152 3LL : -0x5.0a28be635ca2b89p-52 : inexact-ok
+= rootn tonearest intel96 -0x8p-152 3LL : -0x5.0a28be635ca2b888p-52 : inexact-ok
+= rootn towardzero intel96 -0x8p-152 3LL : -0x5.0a28be635ca2b888p-52 : inexact-ok
+= rootn upward intel96 -0x8p-152 3LL : -0x5.0a28be635ca2b888p-52 : inexact-ok
+= rootn downward m68k96 -0x8p-152 3LL : -0x5.0a28be635ca2b89p-52 : inexact-ok
+= rootn tonearest m68k96 -0x8p-152 3LL : -0x5.0a28be635ca2b888p-52 : inexact-ok
+= rootn towardzero m68k96 -0x8p-152 3LL : -0x5.0a28be635ca2b888p-52 : inexact-ok
+= rootn upward m68k96 -0x8p-152 3LL : -0x5.0a28be635ca2b888p-52 : inexact-ok
+= rootn downward binary128 -0x8p-152 3LL : -0x5.0a28be635ca2b888f76adc56f898p-52 : inexact-ok
+= rootn tonearest binary128 -0x8p-152 3LL : -0x5.0a28be635ca2b888f76adc56f894p-52 : inexact-ok
+= rootn towardzero binary128 -0x8p-152 3LL : -0x5.0a28be635ca2b888f76adc56f894p-52 : inexact-ok
+= rootn upward binary128 -0x8p-152 3LL : -0x5.0a28be635ca2b888f76adc56f894p-52 : inexact-ok
+= rootn downward ibm128 -0x8p-152 3LL : -0x5.0a28be635ca2b888f76adc56fap-52 : inexact-ok
+= rootn tonearest ibm128 -0x8p-152 3LL : -0x5.0a28be635ca2b888f76adc56f8p-52 : inexact-ok
+= rootn towardzero ibm128 -0x8p-152 3LL : -0x5.0a28be635ca2b888f76adc56f8p-52 : inexact-ok
+= rootn upward ibm128 -0x8p-152 3LL : -0x5.0a28be635ca2b888f76adc56f8p-52 : inexact-ok
+= rootn downward binary64 -0x4p-1076 3LL : -0x4p-360 : inexact-ok
+= rootn tonearest binary64 -0x4p-1076 3LL : -0x4p-360 : inexact-ok
+= rootn towardzero binary64 -0x4p-1076 3LL : -0x4p-360 : inexact-ok
+= rootn upward binary64 -0x4p-1076 3LL : -0x4p-360 : inexact-ok
+= rootn downward intel96 -0x4p-1076 3LL : -0x4p-360 : inexact-ok
+= rootn tonearest intel96 -0x4p-1076 3LL : -0x4p-360 : inexact-ok
+= rootn towardzero intel96 -0x4p-1076 3LL : -0x4p-360 : inexact-ok
+= rootn upward intel96 -0x4p-1076 3LL : -0x4p-360 : inexact-ok
+= rootn downward m68k96 -0x4p-1076 3LL : -0x4p-360 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1076 3LL : -0x4p-360 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1076 3LL : -0x4p-360 : inexact-ok
+= rootn upward m68k96 -0x4p-1076 3LL : -0x4p-360 : inexact-ok
+= rootn downward binary128 -0x4p-1076 3LL : -0x4p-360 : inexact-ok
+= rootn tonearest binary128 -0x4p-1076 3LL : -0x4p-360 : inexact-ok
+= rootn towardzero binary128 -0x4p-1076 3LL : -0x4p-360 : inexact-ok
+= rootn upward binary128 -0x4p-1076 3LL : -0x4p-360 : inexact-ok
+= rootn downward ibm128 -0x4p-1076 3LL : -0x4p-360 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1076 3LL : -0x4p-360 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1076 3LL : -0x4p-360 : inexact-ok
+= rootn upward ibm128 -0x4p-1076 3LL : -0x4p-360 : inexact-ok
+= rootn downward intel96 -0x8p-16448 3LL : -0x5.0a28be635ca2b89p-5484 : inexact-ok
+= rootn tonearest intel96 -0x8p-16448 3LL : -0x5.0a28be635ca2b888p-5484 : inexact-ok
+= rootn towardzero intel96 -0x8p-16448 3LL : -0x5.0a28be635ca2b888p-5484 : inexact-ok
+= rootn upward intel96 -0x8p-16448 3LL : -0x5.0a28be635ca2b888p-5484 : inexact-ok
+= rootn downward m68k96 -0x8p-16448 3LL : -0x5.0a28be635ca2b89p-5484 : inexact-ok
+= rootn tonearest m68k96 -0x8p-16448 3LL : -0x5.0a28be635ca2b888p-5484 : inexact-ok
+= rootn towardzero m68k96 -0x8p-16448 3LL : -0x5.0a28be635ca2b888p-5484 : inexact-ok
+= rootn upward m68k96 -0x8p-16448 3LL : -0x5.0a28be635ca2b888p-5484 : inexact-ok
+= rootn downward binary128 -0x8p-16448 3LL : -0x5.0a28be635ca2b888f76adc56f898p-5484 : inexact-ok
+= rootn tonearest binary128 -0x8p-16448 3LL : -0x5.0a28be635ca2b888f76adc56f894p-5484 : inexact-ok
+= rootn towardzero binary128 -0x8p-16448 3LL : -0x5.0a28be635ca2b888f76adc56f894p-5484 : inexact-ok
+= rootn upward binary128 -0x8p-16448 3LL : -0x5.0a28be635ca2b888f76adc56f894p-5484 : inexact-ok
+= rootn downward m68k96 -0x4p-16448 3LL : -0x4p-5484 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16448 3LL : -0x4p-5484 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16448 3LL : -0x4p-5484 : inexact-ok
+= rootn upward m68k96 -0x4p-16448 3LL : -0x4p-5484 : inexact-ok
+= rootn downward binary128 -0x4p-16448 3LL : -0x4p-5484 : inexact-ok
+= rootn tonearest binary128 -0x4p-16448 3LL : -0x4p-5484 : inexact-ok
+= rootn towardzero binary128 -0x4p-16448 3LL : -0x4p-5484 : inexact-ok
+= rootn upward binary128 -0x4p-16448 3LL : -0x4p-5484 : inexact-ok
+= rootn downward binary128 -0x4p-16496 3LL : -0x4p-5500 : inexact-ok
+= rootn tonearest binary128 -0x4p-16496 3LL : -0x4p-5500 : inexact-ok
+= rootn towardzero binary128 -0x4p-16496 3LL : -0x4p-5500 : inexact-ok
+= rootn upward binary128 -0x4p-16496 3LL : -0x4p-5500 : inexact-ok
+rootn -min_subnorm 5
+= rootn downward binary32 -0x8p-152 5LL : -0x4.984468p-32 : inexact-ok
+= rootn tonearest binary32 -0x8p-152 5LL : -0x4.98446p-32 : inexact-ok
+= rootn towardzero binary32 -0x8p-152 5LL : -0x4.98446p-32 : inexact-ok
+= rootn upward binary32 -0x8p-152 5LL : -0x4.98446p-32 : inexact-ok
+= rootn downward binary64 -0x8p-152 5LL : -0x4.984461aeb99d4p-32 : inexact-ok
+= rootn tonearest binary64 -0x8p-152 5LL : -0x4.984461aeb99d4p-32 : inexact-ok
+= rootn towardzero binary64 -0x8p-152 5LL : -0x4.984461aeb99dp-32 : inexact-ok
+= rootn upward binary64 -0x8p-152 5LL : -0x4.984461aeb99dp-32 : inexact-ok
+= rootn downward intel96 -0x8p-152 5LL : -0x4.984461aeb99d25bp-32 : inexact-ok
+= rootn tonearest intel96 -0x8p-152 5LL : -0x4.984461aeb99d25a8p-32 : inexact-ok
+= rootn towardzero intel96 -0x8p-152 5LL : -0x4.984461aeb99d25a8p-32 : inexact-ok
+= rootn upward intel96 -0x8p-152 5LL : -0x4.984461aeb99d25a8p-32 : inexact-ok
+= rootn downward m68k96 -0x8p-152 5LL : -0x4.984461aeb99d25bp-32 : inexact-ok
+= rootn tonearest m68k96 -0x8p-152 5LL : -0x4.984461aeb99d25a8p-32 : inexact-ok
+= rootn towardzero m68k96 -0x8p-152 5LL : -0x4.984461aeb99d25a8p-32 : inexact-ok
+= rootn upward m68k96 -0x8p-152 5LL : -0x4.984461aeb99d25a8p-32 : inexact-ok
+= rootn downward binary128 -0x8p-152 5LL : -0x4.984461aeb99d25a94879081d8388p-32 : inexact-ok
+= rootn tonearest binary128 -0x8p-152 5LL : -0x4.984461aeb99d25a94879081d8388p-32 : inexact-ok
+= rootn towardzero binary128 -0x8p-152 5LL : -0x4.984461aeb99d25a94879081d8384p-32 : inexact-ok
+= rootn upward binary128 -0x8p-152 5LL : -0x4.984461aeb99d25a94879081d8384p-32 : inexact-ok
+= rootn downward ibm128 -0x8p-152 5LL : -0x4.984461aeb99d25a94879081d84p-32 : inexact-ok
+= rootn tonearest ibm128 -0x8p-152 5LL : -0x4.984461aeb99d25a94879081d84p-32 : inexact-ok
+= rootn towardzero ibm128 -0x8p-152 5LL : -0x4.984461aeb99d25a94879081d82p-32 : inexact-ok
+= rootn upward ibm128 -0x8p-152 5LL : -0x4.984461aeb99d25a94879081d82p-32 : inexact-ok
+= rootn downward binary64 -0x4p-1076 5LL : -0x2.4c2230d75cceap-216 : inexact-ok
+= rootn tonearest binary64 -0x4p-1076 5LL : -0x2.4c2230d75cceap-216 : inexact-ok
+= rootn towardzero binary64 -0x4p-1076 5LL : -0x2.4c2230d75cce8p-216 : inexact-ok
+= rootn upward binary64 -0x4p-1076 5LL : -0x2.4c2230d75cce8p-216 : inexact-ok
+= rootn downward intel96 -0x4p-1076 5LL : -0x2.4c2230d75cce92d8p-216 : inexact-ok
+= rootn tonearest intel96 -0x4p-1076 5LL : -0x2.4c2230d75cce92d4p-216 : inexact-ok
+= rootn towardzero intel96 -0x4p-1076 5LL : -0x2.4c2230d75cce92d4p-216 : inexact-ok
+= rootn upward intel96 -0x4p-1076 5LL : -0x2.4c2230d75cce92d4p-216 : inexact-ok
+= rootn downward m68k96 -0x4p-1076 5LL : -0x2.4c2230d75cce92d8p-216 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1076 5LL : -0x2.4c2230d75cce92d4p-216 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1076 5LL : -0x2.4c2230d75cce92d4p-216 : inexact-ok
+= rootn upward m68k96 -0x4p-1076 5LL : -0x2.4c2230d75cce92d4p-216 : inexact-ok
+= rootn downward binary128 -0x4p-1076 5LL : -0x2.4c2230d75cce92d4a43c840ec1c4p-216 : inexact-ok
+= rootn tonearest binary128 -0x4p-1076 5LL : -0x2.4c2230d75cce92d4a43c840ec1c4p-216 : inexact-ok
+= rootn towardzero binary128 -0x4p-1076 5LL : -0x2.4c2230d75cce92d4a43c840ec1c2p-216 : inexact-ok
+= rootn upward binary128 -0x4p-1076 5LL : -0x2.4c2230d75cce92d4a43c840ec1c2p-216 : inexact-ok
+= rootn downward ibm128 -0x4p-1076 5LL : -0x2.4c2230d75cce92d4a43c840ec2p-216 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1076 5LL : -0x2.4c2230d75cce92d4a43c840ec2p-216 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1076 5LL : -0x2.4c2230d75cce92d4a43c840ec1p-216 : inexact-ok
+= rootn upward ibm128 -0x4p-1076 5LL : -0x2.4c2230d75cce92d4a43c840ec1p-216 : inexact-ok
+= rootn downward intel96 -0x8p-16448 5LL : -0x8p-3292 : inexact-ok
+= rootn tonearest intel96 -0x8p-16448 5LL : -0x8p-3292 : inexact-ok
+= rootn towardzero intel96 -0x8p-16448 5LL : -0x8p-3292 : inexact-ok
+= rootn upward intel96 -0x8p-16448 5LL : -0x8p-3292 : inexact-ok
+= rootn downward m68k96 -0x8p-16448 5LL : -0x8p-3292 : inexact-ok
+= rootn tonearest m68k96 -0x8p-16448 5LL : -0x8p-3292 : inexact-ok
+= rootn towardzero m68k96 -0x8p-16448 5LL : -0x8p-3292 : inexact-ok
+= rootn upward m68k96 -0x8p-16448 5LL : -0x8p-3292 : inexact-ok
+= rootn downward binary128 -0x8p-16448 5LL : -0x8p-3292 : inexact-ok
+= rootn tonearest binary128 -0x8p-16448 5LL : -0x8p-3292 : inexact-ok
+= rootn towardzero binary128 -0x8p-16448 5LL : -0x8p-3292 : inexact-ok
+= rootn upward binary128 -0x8p-16448 5LL : -0x8p-3292 : inexact-ok
+= rootn downward m68k96 -0x4p-16448 5LL : -0x6.f6e336b6f8480858p-3292 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16448 5LL : -0x6.f6e336b6f848085p-3292 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16448 5LL : -0x6.f6e336b6f848085p-3292 : inexact-ok
+= rootn upward m68k96 -0x4p-16448 5LL : -0x6.f6e336b6f848085p-3292 : inexact-ok
+= rootn downward binary128 -0x4p-16448 5LL : -0x6.f6e336b6f8480853d874c2c9fea8p-3292 : inexact-ok
+= rootn tonearest binary128 -0x4p-16448 5LL : -0x6.f6e336b6f8480853d874c2c9fea4p-3292 : inexact-ok
+= rootn towardzero binary128 -0x4p-16448 5LL : -0x6.f6e336b6f8480853d874c2c9fea4p-3292 : inexact-ok
+= rootn upward binary128 -0x4p-16448 5LL : -0x6.f6e336b6f8480853d874c2c9fea4p-3292 : inexact-ok
+= rootn downward binary128 -0x4p-16496 5LL : -0x2.4c2230d75cce92d4a43c840ec1c4p-3300 : inexact-ok
+= rootn tonearest binary128 -0x4p-16496 5LL : -0x2.4c2230d75cce92d4a43c840ec1c4p-3300 : inexact-ok
+= rootn towardzero binary128 -0x4p-16496 5LL : -0x2.4c2230d75cce92d4a43c840ec1c2p-3300 : inexact-ok
+= rootn upward binary128 -0x4p-16496 5LL : -0x2.4c2230d75cce92d4a43c840ec1c2p-3300 : inexact-ok
+rootn -min_subnorm 63
+= rootn downward binary32 -0x8p-152 63LL : -0x3.1b0f78p-4 : inexact-ok
+= rootn tonearest binary32 -0x8p-152 63LL : -0x3.1b0f74p-4 : inexact-ok
+= rootn towardzero binary32 -0x8p-152 63LL : -0x3.1b0f74p-4 : inexact-ok
+= rootn upward binary32 -0x8p-152 63LL : -0x3.1b0f74p-4 : inexact-ok
+= rootn downward binary64 -0x8p-152 63LL : -0x3.1b0f75aa79eeep-4 : inexact-ok
+= rootn tonearest binary64 -0x8p-152 63LL : -0x3.1b0f75aa79eecp-4 : inexact-ok
+= rootn towardzero binary64 -0x8p-152 63LL : -0x3.1b0f75aa79eecp-4 : inexact-ok
+= rootn upward binary64 -0x8p-152 63LL : -0x3.1b0f75aa79eecp-4 : inexact-ok
+= rootn downward intel96 -0x8p-152 63LL : -0x3.1b0f75aa79eec7a8p-4 : inexact-ok
+= rootn tonearest intel96 -0x8p-152 63LL : -0x3.1b0f75aa79eec7a4p-4 : inexact-ok
+= rootn towardzero intel96 -0x8p-152 63LL : -0x3.1b0f75aa79eec7a4p-4 : inexact-ok
+= rootn upward intel96 -0x8p-152 63LL : -0x3.1b0f75aa79eec7a4p-4 : inexact-ok
+= rootn downward m68k96 -0x8p-152 63LL : -0x3.1b0f75aa79eec7a8p-4 : inexact-ok
+= rootn tonearest m68k96 -0x8p-152 63LL : -0x3.1b0f75aa79eec7a4p-4 : inexact-ok
+= rootn towardzero m68k96 -0x8p-152 63LL : -0x3.1b0f75aa79eec7a4p-4 : inexact-ok
+= rootn upward m68k96 -0x8p-152 63LL : -0x3.1b0f75aa79eec7a4p-4 : inexact-ok
+= rootn downward binary128 -0x8p-152 63LL : -0x3.1b0f75aa79eec7a45abc01b8562ap-4 : inexact-ok
+= rootn tonearest binary128 -0x8p-152 63LL : -0x3.1b0f75aa79eec7a45abc01b8562ap-4 : inexact-ok
+= rootn towardzero binary128 -0x8p-152 63LL : -0x3.1b0f75aa79eec7a45abc01b85628p-4 : inexact-ok
+= rootn upward binary128 -0x8p-152 63LL : -0x3.1b0f75aa79eec7a45abc01b85628p-4 : inexact-ok
+= rootn downward ibm128 -0x8p-152 63LL : -0x3.1b0f75aa79eec7a45abc01b857p-4 : inexact-ok
+= rootn tonearest ibm128 -0x8p-152 63LL : -0x3.1b0f75aa79eec7a45abc01b856p-4 : inexact-ok
+= rootn towardzero ibm128 -0x8p-152 63LL : -0x3.1b0f75aa79eec7a45abc01b856p-4 : inexact-ok
+= rootn upward ibm128 -0x8p-152 63LL : -0x3.1b0f75aa79eec7a45abc01b856p-4 : inexact-ok
+= rootn downward binary64 -0x4p-1076 63LL : -0x7.bd814d14ce8p-20 : inexact-ok
+= rootn tonearest binary64 -0x4p-1076 63LL : -0x7.bd814d14ce7fcp-20 : inexact-ok
+= rootn towardzero binary64 -0x4p-1076 63LL : -0x7.bd814d14ce7fcp-20 : inexact-ok
+= rootn upward binary64 -0x4p-1076 63LL : -0x7.bd814d14ce7fcp-20 : inexact-ok
+= rootn downward intel96 -0x4p-1076 63LL : -0x7.bd814d14ce7fcf08p-20 : inexact-ok
+= rootn tonearest intel96 -0x4p-1076 63LL : -0x7.bd814d14ce7fcfp-20 : inexact-ok
+= rootn towardzero intel96 -0x4p-1076 63LL : -0x7.bd814d14ce7fcfp-20 : inexact-ok
+= rootn upward intel96 -0x4p-1076 63LL : -0x7.bd814d14ce7fcfp-20 : inexact-ok
+= rootn downward m68k96 -0x4p-1076 63LL : -0x7.bd814d14ce7fcf08p-20 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1076 63LL : -0x7.bd814d14ce7fcfp-20 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1076 63LL : -0x7.bd814d14ce7fcfp-20 : inexact-ok
+= rootn upward m68k96 -0x4p-1076 63LL : -0x7.bd814d14ce7fcfp-20 : inexact-ok
+= rootn downward binary128 -0x4p-1076 63LL : -0x7.bd814d14ce7fcf0093ec45b5179p-20 : inexact-ok
+= rootn tonearest binary128 -0x4p-1076 63LL : -0x7.bd814d14ce7fcf0093ec45b5178cp-20 : inexact-ok
+= rootn towardzero binary128 -0x4p-1076 63LL : -0x7.bd814d14ce7fcf0093ec45b5178cp-20 : inexact-ok
+= rootn upward binary128 -0x4p-1076 63LL : -0x7.bd814d14ce7fcf0093ec45b5178cp-20 : inexact-ok
+= rootn downward ibm128 -0x4p-1076 63LL : -0x7.bd814d14ce7fcf0093ec45b518p-20 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1076 63LL : -0x7.bd814d14ce7fcf0093ec45b518p-20 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1076 63LL : -0x7.bd814d14ce7fcf0093ec45b516p-20 : inexact-ok
+= rootn upward ibm128 -0x4p-1076 63LL : -0x7.bd814d14ce7fcf0093ec45b516p-20 : inexact-ok
+= rootn downward intel96 -0x8p-16448 63LL : -0x7.d36d3850be891cf8p-264 : inexact-ok
+= rootn tonearest intel96 -0x8p-16448 63LL : -0x7.d36d3850be891cf8p-264 : inexact-ok
+= rootn towardzero intel96 -0x8p-16448 63LL : -0x7.d36d3850be891cfp-264 : inexact-ok
+= rootn upward intel96 -0x8p-16448 63LL : -0x7.d36d3850be891cfp-264 : inexact-ok
+= rootn downward m68k96 -0x8p-16448 63LL : -0x7.d36d3850be891cf8p-264 : inexact-ok
+= rootn tonearest m68k96 -0x8p-16448 63LL : -0x7.d36d3850be891cf8p-264 : inexact-ok
+= rootn towardzero m68k96 -0x8p-16448 63LL : -0x7.d36d3850be891cfp-264 : inexact-ok
+= rootn upward m68k96 -0x8p-16448 63LL : -0x7.d36d3850be891cfp-264 : inexact-ok
+= rootn downward binary128 -0x8p-16448 63LL : -0x7.d36d3850be891cf5fca6461e964p-264 : inexact-ok
+= rootn tonearest binary128 -0x8p-16448 63LL : -0x7.d36d3850be891cf5fca6461e963cp-264 : inexact-ok
+= rootn towardzero binary128 -0x8p-16448 63LL : -0x7.d36d3850be891cf5fca6461e963cp-264 : inexact-ok
+= rootn upward binary128 -0x8p-16448 63LL : -0x7.d36d3850be891cf5fca6461e963cp-264 : inexact-ok
+= rootn downward m68k96 -0x4p-16448 63LL : -0x7.bd814d14ce7fcf08p-264 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16448 63LL : -0x7.bd814d14ce7fcfp-264 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16448 63LL : -0x7.bd814d14ce7fcfp-264 : inexact-ok
+= rootn upward m68k96 -0x4p-16448 63LL : -0x7.bd814d14ce7fcfp-264 : inexact-ok
+= rootn downward binary128 -0x4p-16448 63LL : -0x7.bd814d14ce7fcf0093ec45b5179p-264 : inexact-ok
+= rootn tonearest binary128 -0x4p-16448 63LL : -0x7.bd814d14ce7fcf0093ec45b5178cp-264 : inexact-ok
+= rootn towardzero binary128 -0x4p-16448 63LL : -0x7.bd814d14ce7fcf0093ec45b5178cp-264 : inexact-ok
+= rootn upward binary128 -0x4p-16448 63LL : -0x7.bd814d14ce7fcf0093ec45b5178cp-264 : inexact-ok
+= rootn downward binary128 -0x4p-16496 63LL : -0x4.908715de494e34e7113a312fd05cp-264 : inexact-ok
+= rootn tonearest binary128 -0x4p-16496 63LL : -0x4.908715de494e34e7113a312fd05cp-264 : inexact-ok
+= rootn towardzero binary128 -0x4p-16496 63LL : -0x4.908715de494e34e7113a312fd058p-264 : inexact-ok
+= rootn upward binary128 -0x4p-16496 63LL : -0x4.908715de494e34e7113a312fd058p-264 : inexact-ok
+rootn -min_subnorm 127
+= rootn downward binary32 -0x8p-152 127LL : -0x7.1847fp-4 : inexact-ok
+= rootn tonearest binary32 -0x8p-152 127LL : -0x7.1847e8p-4 : inexact-ok
+= rootn towardzero binary32 -0x8p-152 127LL : -0x7.1847e8p-4 : inexact-ok
+= rootn upward binary32 -0x8p-152 127LL : -0x7.1847e8p-4 : inexact-ok
+= rootn downward binary64 -0x8p-152 127LL : -0x7.1847eb40c6614p-4 : inexact-ok
+= rootn tonearest binary64 -0x8p-152 127LL : -0x7.1847eb40c6614p-4 : inexact-ok
+= rootn towardzero binary64 -0x8p-152 127LL : -0x7.1847eb40c661p-4 : inexact-ok
+= rootn upward binary64 -0x8p-152 127LL : -0x7.1847eb40c661p-4 : inexact-ok
+= rootn downward intel96 -0x8p-152 127LL : -0x7.1847eb40c6613f8p-4 : inexact-ok
+= rootn tonearest intel96 -0x8p-152 127LL : -0x7.1847eb40c6613f78p-4 : inexact-ok
+= rootn towardzero intel96 -0x8p-152 127LL : -0x7.1847eb40c6613f78p-4 : inexact-ok
+= rootn upward intel96 -0x8p-152 127LL : -0x7.1847eb40c6613f78p-4 : inexact-ok
+= rootn downward m68k96 -0x8p-152 127LL : -0x7.1847eb40c6613f8p-4 : inexact-ok
+= rootn tonearest m68k96 -0x8p-152 127LL : -0x7.1847eb40c6613f78p-4 : inexact-ok
+= rootn towardzero m68k96 -0x8p-152 127LL : -0x7.1847eb40c6613f78p-4 : inexact-ok
+= rootn upward m68k96 -0x8p-152 127LL : -0x7.1847eb40c6613f78p-4 : inexact-ok
+= rootn downward binary128 -0x8p-152 127LL : -0x7.1847eb40c6613f79342e49725738p-4 : inexact-ok
+= rootn tonearest binary128 -0x8p-152 127LL : -0x7.1847eb40c6613f79342e49725734p-4 : inexact-ok
+= rootn towardzero binary128 -0x8p-152 127LL : -0x7.1847eb40c6613f79342e49725734p-4 : inexact-ok
+= rootn upward binary128 -0x8p-152 127LL : -0x7.1847eb40c6613f79342e49725734p-4 : inexact-ok
+= rootn downward ibm128 -0x8p-152 127LL : -0x7.1847eb40c6613f79342e497258p-4 : inexact-ok
+= rootn tonearest ibm128 -0x8p-152 127LL : -0x7.1847eb40c6613f79342e497258p-4 : inexact-ok
+= rootn towardzero ibm128 -0x8p-152 127LL : -0x7.1847eb40c6613f79342e497256p-4 : inexact-ok
+= rootn upward ibm128 -0x8p-152 127LL : -0x7.1847eb40c6613f79342e497256p-4 : inexact-ok
+= rootn downward binary64 -0x4p-1076 127LL : -0xb.a891c45150b4p-12 : inexact-ok
+= rootn tonearest binary64 -0x4p-1076 127LL : -0xb.a891c45150b4p-12 : inexact-ok
+= rootn towardzero binary64 -0x4p-1076 127LL : -0xb.a891c45150b38p-12 : inexact-ok
+= rootn upward binary64 -0x4p-1076 127LL : -0xb.a891c45150b38p-12 : inexact-ok
+= rootn downward intel96 -0x4p-1076 127LL : -0xb.a891c45150b3e78p-12 : inexact-ok
+= rootn tonearest intel96 -0x4p-1076 127LL : -0xb.a891c45150b3e78p-12 : inexact-ok
+= rootn towardzero intel96 -0x4p-1076 127LL : -0xb.a891c45150b3e77p-12 : inexact-ok
+= rootn upward intel96 -0x4p-1076 127LL : -0xb.a891c45150b3e77p-12 : inexact-ok
+= rootn downward m68k96 -0x4p-1076 127LL : -0xb.a891c45150b3e78p-12 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1076 127LL : -0xb.a891c45150b3e78p-12 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1076 127LL : -0xb.a891c45150b3e77p-12 : inexact-ok
+= rootn upward m68k96 -0x4p-1076 127LL : -0xb.a891c45150b3e77p-12 : inexact-ok
+= rootn downward binary128 -0x4p-1076 127LL : -0xb.a891c45150b3e77c88d20d54444p-12 : inexact-ok
+= rootn tonearest binary128 -0x4p-1076 127LL : -0xb.a891c45150b3e77c88d20d544438p-12 : inexact-ok
+= rootn towardzero binary128 -0x4p-1076 127LL : -0xb.a891c45150b3e77c88d20d544438p-12 : inexact-ok
+= rootn upward binary128 -0x4p-1076 127LL : -0xb.a891c45150b3e77c88d20d544438p-12 : inexact-ok
+= rootn downward ibm128 -0x4p-1076 127LL : -0xb.a891c45150b3e77c88d20d5448p-12 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1076 127LL : -0xb.a891c45150b3e77c88d20d5444p-12 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1076 127LL : -0xb.a891c45150b3e77c88d20d5444p-12 : inexact-ok
+= rootn upward ibm128 -0x4p-1076 127LL : -0xb.a891c45150b3e77c88d20d5444p-12 : inexact-ok
+= rootn downward intel96 -0x8p-16448 127LL : -0x5.b40f1f4a19f7cdfp-132 : inexact-ok
+= rootn tonearest intel96 -0x8p-16448 127LL : -0x5.b40f1f4a19f7cdfp-132 : inexact-ok
+= rootn towardzero intel96 -0x8p-16448 127LL : -0x5.b40f1f4a19f7cde8p-132 : inexact-ok
+= rootn upward intel96 -0x8p-16448 127LL : -0x5.b40f1f4a19f7cde8p-132 : inexact-ok
+= rootn downward m68k96 -0x8p-16448 127LL : -0x5.b40f1f4a19f7cdfp-132 : inexact-ok
+= rootn tonearest m68k96 -0x8p-16448 127LL : -0x5.b40f1f4a19f7cdfp-132 : inexact-ok
+= rootn towardzero m68k96 -0x8p-16448 127LL : -0x5.b40f1f4a19f7cde8p-132 : inexact-ok
+= rootn upward m68k96 -0x8p-16448 127LL : -0x5.b40f1f4a19f7cde8p-132 : inexact-ok
+= rootn downward binary128 -0x8p-16448 127LL : -0x5.b40f1f4a19f7cdec5093b73e0258p-132 : inexact-ok
+= rootn tonearest binary128 -0x8p-16448 127LL : -0x5.b40f1f4a19f7cdec5093b73e0254p-132 : inexact-ok
+= rootn towardzero binary128 -0x8p-16448 127LL : -0x5.b40f1f4a19f7cdec5093b73e0254p-132 : inexact-ok
+= rootn upward binary128 -0x8p-16448 127LL : -0x5.b40f1f4a19f7cdec5093b73e0254p-132 : inexact-ok
+= rootn downward m68k96 -0x4p-16448 127LL : -0x5.ac1cab7f8a9edf2p-132 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16448 127LL : -0x5.ac1cab7f8a9edf2p-132 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16448 127LL : -0x5.ac1cab7f8a9edf18p-132 : inexact-ok
+= rootn upward m68k96 -0x4p-16448 127LL : -0x5.ac1cab7f8a9edf18p-132 : inexact-ok
+= rootn downward binary128 -0x4p-16448 127LL : -0x5.ac1cab7f8a9edf1c062f2e888568p-132 : inexact-ok
+= rootn tonearest binary128 -0x4p-16448 127LL : -0x5.ac1cab7f8a9edf1c062f2e888564p-132 : inexact-ok
+= rootn towardzero binary128 -0x4p-16448 127LL : -0x5.ac1cab7f8a9edf1c062f2e888564p-132 : inexact-ok
+= rootn upward binary128 -0x4p-16448 127LL : -0x5.ac1cab7f8a9edf1c062f2e888564p-132 : inexact-ok
+= rootn downward binary128 -0x4p-16496 127LL : -0x4.5d7127b909842956595da64bcf28p-132 : inexact-ok
+= rootn tonearest binary128 -0x4p-16496 127LL : -0x4.5d7127b909842956595da64bcf28p-132 : inexact-ok
+= rootn towardzero binary128 -0x4p-16496 127LL : -0x4.5d7127b909842956595da64bcf24p-132 : inexact-ok
+= rootn upward binary128 -0x4p-16496 127LL : -0x4.5d7127b909842956595da64bcf24p-132 : inexact-ok
+rootn -min_subnorm 255
+= rootn downward binary32 -0x8p-152 255LL : -0xa.abe52p-4 : inexact-ok
+= rootn tonearest binary32 -0x8p-152 255LL : -0xa.abe52p-4 : inexact-ok
+= rootn towardzero binary32 -0x8p-152 255LL : -0xa.abe51p-4 : inexact-ok
+= rootn upward binary32 -0x8p-152 255LL : -0xa.abe51p-4 : inexact-ok
+= rootn downward binary64 -0x8p-152 255LL : -0xa.abe51920a21ep-4 : inexact-ok
+= rootn tonearest binary64 -0x8p-152 255LL : -0xa.abe51920a21ep-4 : inexact-ok
+= rootn towardzero binary64 -0x8p-152 255LL : -0xa.abe51920a21d8p-4 : inexact-ok
+= rootn upward binary64 -0x8p-152 255LL : -0xa.abe51920a21d8p-4 : inexact-ok
+= rootn downward intel96 -0x8p-152 255LL : -0xa.abe51920a21df63p-4 : inexact-ok
+= rootn tonearest intel96 -0x8p-152 255LL : -0xa.abe51920a21df62p-4 : inexact-ok
+= rootn towardzero intel96 -0x8p-152 255LL : -0xa.abe51920a21df62p-4 : inexact-ok
+= rootn upward intel96 -0x8p-152 255LL : -0xa.abe51920a21df62p-4 : inexact-ok
+= rootn downward m68k96 -0x8p-152 255LL : -0xa.abe51920a21df63p-4 : inexact-ok
+= rootn tonearest m68k96 -0x8p-152 255LL : -0xa.abe51920a21df62p-4 : inexact-ok
+= rootn towardzero m68k96 -0x8p-152 255LL : -0xa.abe51920a21df62p-4 : inexact-ok
+= rootn upward m68k96 -0x8p-152 255LL : -0xa.abe51920a21df62p-4 : inexact-ok
+= rootn downward binary128 -0x8p-152 255LL : -0xa.abe51920a21df62695ea33c1e0fp-4 : inexact-ok
+= rootn tonearest binary128 -0x8p-152 255LL : -0xa.abe51920a21df62695ea33c1e0fp-4 : inexact-ok
+= rootn towardzero binary128 -0x8p-152 255LL : -0xa.abe51920a21df62695ea33c1e0e8p-4 : inexact-ok
+= rootn upward binary128 -0x8p-152 255LL : -0xa.abe51920a21df62695ea33c1e0e8p-4 : inexact-ok
+= rootn downward ibm128 -0x8p-152 255LL : -0xa.abe51920a21df62695ea33c1e4p-4 : inexact-ok
+= rootn tonearest ibm128 -0x8p-152 255LL : -0xa.abe51920a21df62695ea33c1ep-4 : inexact-ok
+= rootn towardzero ibm128 -0x8p-152 255LL : -0xa.abe51920a21df62695ea33c1ep-4 : inexact-ok
+= rootn upward ibm128 -0x8p-152 255LL : -0xa.abe51920a21df62695ea33c1ep-4 : inexact-ok
+= rootn downward binary64 -0x4p-1076 255LL : -0xd.d0d0cc3bda9fp-8 : inexact-ok
+= rootn tonearest binary64 -0x4p-1076 255LL : -0xd.d0d0cc3bda9fp-8 : inexact-ok
+= rootn towardzero binary64 -0x4p-1076 255LL : -0xd.d0d0cc3bda9e8p-8 : inexact-ok
+= rootn upward binary64 -0x4p-1076 255LL : -0xd.d0d0cc3bda9e8p-8 : inexact-ok
+= rootn downward intel96 -0x4p-1076 255LL : -0xd.d0d0cc3bda9eeaap-8 : inexact-ok
+= rootn tonearest intel96 -0x4p-1076 255LL : -0xd.d0d0cc3bda9eea9p-8 : inexact-ok
+= rootn towardzero intel96 -0x4p-1076 255LL : -0xd.d0d0cc3bda9eea9p-8 : inexact-ok
+= rootn upward intel96 -0x4p-1076 255LL : -0xd.d0d0cc3bda9eea9p-8 : inexact-ok
+= rootn downward m68k96 -0x4p-1076 255LL : -0xd.d0d0cc3bda9eeaap-8 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1076 255LL : -0xd.d0d0cc3bda9eea9p-8 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1076 255LL : -0xd.d0d0cc3bda9eea9p-8 : inexact-ok
+= rootn upward m68k96 -0x4p-1076 255LL : -0xd.d0d0cc3bda9eea9p-8 : inexact-ok
+= rootn downward binary128 -0x4p-1076 255LL : -0xd.d0d0cc3bda9eea978ba2613f7168p-8 : inexact-ok
+= rootn tonearest binary128 -0x4p-1076 255LL : -0xd.d0d0cc3bda9eea978ba2613f716p-8 : inexact-ok
+= rootn towardzero binary128 -0x4p-1076 255LL : -0xd.d0d0cc3bda9eea978ba2613f716p-8 : inexact-ok
+= rootn upward binary128 -0x4p-1076 255LL : -0xd.d0d0cc3bda9eea978ba2613f716p-8 : inexact-ok
+= rootn downward ibm128 -0x4p-1076 255LL : -0xd.d0d0cc3bda9eea978ba2613f74p-8 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1076 255LL : -0xd.d0d0cc3bda9eea978ba2613f7p-8 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1076 255LL : -0xd.d0d0cc3bda9eea978ba2613f7p-8 : inexact-ok
+= rootn upward ibm128 -0x4p-1076 255LL : -0xd.d0d0cc3bda9eea978ba2613f7p-8 : inexact-ok
+= rootn downward intel96 -0x8p-16448 255LL : -0xb.640ef67cfa935a3p-68 : inexact-ok
+= rootn tonearest intel96 -0x8p-16448 255LL : -0xb.640ef67cfa935a2p-68 : inexact-ok
+= rootn towardzero intel96 -0x8p-16448 255LL : -0xb.640ef67cfa935a2p-68 : inexact-ok
+= rootn upward intel96 -0x8p-16448 255LL : -0xb.640ef67cfa935a2p-68 : inexact-ok
+= rootn downward m68k96 -0x8p-16448 255LL : -0xb.640ef67cfa935a3p-68 : inexact-ok
+= rootn tonearest m68k96 -0x8p-16448 255LL : -0xb.640ef67cfa935a2p-68 : inexact-ok
+= rootn towardzero m68k96 -0x8p-16448 255LL : -0xb.640ef67cfa935a2p-68 : inexact-ok
+= rootn upward m68k96 -0x8p-16448 255LL : -0xb.640ef67cfa935a2p-68 : inexact-ok
+= rootn downward binary128 -0x8p-16448 255LL : -0xb.640ef67cfa935a2664b44179f418p-68 : inexact-ok
+= rootn tonearest binary128 -0x8p-16448 255LL : -0xb.640ef67cfa935a2664b44179f418p-68 : inexact-ok
+= rootn towardzero binary128 -0x8p-16448 255LL : -0xb.640ef67cfa935a2664b44179f41p-68 : inexact-ok
+= rootn upward binary128 -0x8p-16448 255LL : -0xb.640ef67cfa935a2664b44179f41p-68 : inexact-ok
+= rootn downward m68k96 -0x4p-16448 255LL : -0xb.5c2488b712283ddp-68 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16448 255LL : -0xb.5c2488b712283dcp-68 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16448 255LL : -0xb.5c2488b712283dcp-68 : inexact-ok
+= rootn upward m68k96 -0x4p-16448 255LL : -0xb.5c2488b712283dcp-68 : inexact-ok
+= rootn downward binary128 -0x4p-16448 255LL : -0xb.5c2488b712283dc0b0d2f069061p-68 : inexact-ok
+= rootn tonearest binary128 -0x4p-16448 255LL : -0xb.5c2488b712283dc0b0d2f0690608p-68 : inexact-ok
+= rootn towardzero binary128 -0x4p-16448 255LL : -0xb.5c2488b712283dc0b0d2f0690608p-68 : inexact-ok
+= rootn upward binary128 -0x4p-16448 255LL : -0xb.5c2488b712283dc0b0d2f0690608p-68 : inexact-ok
+= rootn downward binary128 -0x4p-16496 255LL : -0x9.f86a2ccffa7558fe1a5be8720bep-68 : inexact-ok
+= rootn tonearest binary128 -0x4p-16496 255LL : -0x9.f86a2ccffa7558fe1a5be8720bd8p-68 : inexact-ok
+= rootn towardzero binary128 -0x4p-16496 255LL : -0x9.f86a2ccffa7558fe1a5be8720bd8p-68 : inexact-ok
+= rootn upward binary128 -0x4p-16496 255LL : -0x9.f86a2ccffa7558fe1a5be8720bd8p-68 : inexact-ok
+rootn -min_subnorm 511
+= rootn downward binary32 -0x8p-152 511LL : -0xd.1272bp-4 : inexact-ok
+= rootn tonearest binary32 -0x8p-152 511LL : -0xd.1272bp-4 : inexact-ok
+= rootn towardzero binary32 -0x8p-152 511LL : -0xd.1272ap-4 : inexact-ok
+= rootn upward binary32 -0x8p-152 511LL : -0xd.1272ap-4 : inexact-ok
+= rootn downward binary64 -0x8p-152 511LL : -0xd.1272aed60395p-4 : inexact-ok
+= rootn tonearest binary64 -0x8p-152 511LL : -0xd.1272aed60395p-4 : inexact-ok
+= rootn towardzero binary64 -0x8p-152 511LL : -0xd.1272aed603948p-4 : inexact-ok
+= rootn upward binary64 -0x8p-152 511LL : -0xd.1272aed603948p-4 : inexact-ok
+= rootn downward intel96 -0x8p-152 511LL : -0xd.1272aed60394fe4p-4 : inexact-ok
+= rootn tonearest intel96 -0x8p-152 511LL : -0xd.1272aed60394fe4p-4 : inexact-ok
+= rootn towardzero intel96 -0x8p-152 511LL : -0xd.1272aed60394fe3p-4 : inexact-ok
+= rootn upward intel96 -0x8p-152 511LL : -0xd.1272aed60394fe3p-4 : inexact-ok
+= rootn downward m68k96 -0x8p-152 511LL : -0xd.1272aed60394fe4p-4 : inexact-ok
+= rootn tonearest m68k96 -0x8p-152 511LL : -0xd.1272aed60394fe4p-4 : inexact-ok
+= rootn towardzero m68k96 -0x8p-152 511LL : -0xd.1272aed60394fe3p-4 : inexact-ok
+= rootn upward m68k96 -0x8p-152 511LL : -0xd.1272aed60394fe3p-4 : inexact-ok
+= rootn downward binary128 -0x8p-152 511LL : -0xd.1272aed60394fe3d1ad7b58574c8p-4 : inexact-ok
+= rootn tonearest binary128 -0x8p-152 511LL : -0xd.1272aed60394fe3d1ad7b58574c8p-4 : inexact-ok
+= rootn towardzero binary128 -0x8p-152 511LL : -0xd.1272aed60394fe3d1ad7b58574cp-4 : inexact-ok
+= rootn upward binary128 -0x8p-152 511LL : -0xd.1272aed60394fe3d1ad7b58574cp-4 : inexact-ok
+= rootn downward ibm128 -0x8p-152 511LL : -0xd.1272aed60394fe3d1ad7b58578p-4 : inexact-ok
+= rootn tonearest ibm128 -0x8p-152 511LL : -0xd.1272aed60394fe3d1ad7b58574p-4 : inexact-ok
+= rootn towardzero ibm128 -0x8p-152 511LL : -0xd.1272aed60394fe3d1ad7b58574p-4 : inexact-ok
+= rootn upward ibm128 -0x8p-152 511LL : -0xd.1272aed60394fe3d1ad7b58574p-4 : inexact-ok
+= rootn downward binary64 -0x4p-1076 511LL : -0x3.ba4296332e252p-4 : inexact-ok
+= rootn tonearest binary64 -0x4p-1076 511LL : -0x3.ba4296332e252p-4 : inexact-ok
+= rootn towardzero binary64 -0x4p-1076 511LL : -0x3.ba4296332e25p-4 : inexact-ok
+= rootn upward binary64 -0x4p-1076 511LL : -0x3.ba4296332e25p-4 : inexact-ok
+= rootn downward intel96 -0x4p-1076 511LL : -0x3.ba4296332e25147cp-4 : inexact-ok
+= rootn tonearest intel96 -0x4p-1076 511LL : -0x3.ba4296332e25147cp-4 : inexact-ok
+= rootn towardzero intel96 -0x4p-1076 511LL : -0x3.ba4296332e251478p-4 : inexact-ok
+= rootn upward intel96 -0x4p-1076 511LL : -0x3.ba4296332e251478p-4 : inexact-ok
+= rootn downward m68k96 -0x4p-1076 511LL : -0x3.ba4296332e25147cp-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1076 511LL : -0x3.ba4296332e25147cp-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1076 511LL : -0x3.ba4296332e251478p-4 : inexact-ok
+= rootn upward m68k96 -0x4p-1076 511LL : -0x3.ba4296332e251478p-4 : inexact-ok
+= rootn downward binary128 -0x4p-1076 511LL : -0x3.ba4296332e25147b287e7dbc7b2p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-1076 511LL : -0x3.ba4296332e25147b287e7dbc7b2p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-1076 511LL : -0x3.ba4296332e25147b287e7dbc7b1ep-4 : inexact-ok
+= rootn upward binary128 -0x4p-1076 511LL : -0x3.ba4296332e25147b287e7dbc7b1ep-4 : inexact-ok
+= rootn downward ibm128 -0x4p-1076 511LL : -0x3.ba4296332e25147b287e7dbc7cp-4 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1076 511LL : -0x3.ba4296332e25147b287e7dbc7bp-4 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1076 511LL : -0x3.ba4296332e25147b287e7dbc7bp-4 : inexact-ok
+= rootn upward ibm128 -0x4p-1076 511LL : -0x3.ba4296332e25147b287e7dbc7bp-4 : inexact-ok
+= rootn downward intel96 -0x8p-16448 511LL : -0xe.1a8d721296336b6p-36 : inexact-ok
+= rootn tonearest intel96 -0x8p-16448 511LL : -0xe.1a8d721296336b6p-36 : inexact-ok
+= rootn towardzero intel96 -0x8p-16448 511LL : -0xe.1a8d721296336b5p-36 : inexact-ok
+= rootn upward intel96 -0x8p-16448 511LL : -0xe.1a8d721296336b5p-36 : inexact-ok
+= rootn downward m68k96 -0x8p-16448 511LL : -0xe.1a8d721296336b6p-36 : inexact-ok
+= rootn tonearest m68k96 -0x8p-16448 511LL : -0xe.1a8d721296336b6p-36 : inexact-ok
+= rootn towardzero m68k96 -0x8p-16448 511LL : -0xe.1a8d721296336b5p-36 : inexact-ok
+= rootn upward m68k96 -0x8p-16448 511LL : -0xe.1a8d721296336b5p-36 : inexact-ok
+= rootn downward binary128 -0x8p-16448 511LL : -0xe.1a8d721296336b587a9a2c415808p-36 : inexact-ok
+= rootn tonearest binary128 -0x8p-16448 511LL : -0xe.1a8d721296336b587a9a2c4158p-36 : inexact-ok
+= rootn towardzero binary128 -0x8p-16448 511LL : -0xe.1a8d721296336b587a9a2c4158p-36 : inexact-ok
+= rootn upward binary128 -0x8p-16448 511LL : -0xe.1a8d721296336b587a9a2c4158p-36 : inexact-ok
+= rootn downward m68k96 -0x4p-16448 511LL : -0xe.15a8864e2c49c73p-36 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16448 511LL : -0xe.15a8864e2c49c73p-36 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16448 511LL : -0xe.15a8864e2c49c72p-36 : inexact-ok
+= rootn upward m68k96 -0x4p-16448 511LL : -0xe.15a8864e2c49c72p-36 : inexact-ok
+= rootn downward binary128 -0x4p-16448 511LL : -0xe.15a8864e2c49c72e840285ec1dd8p-36 : inexact-ok
+= rootn tonearest binary128 -0x4p-16448 511LL : -0xe.15a8864e2c49c72e840285ec1ddp-36 : inexact-ok
+= rootn towardzero binary128 -0x4p-16448 511LL : -0xe.15a8864e2c49c72e840285ec1ddp-36 : inexact-ok
+= rootn upward binary128 -0x4p-16448 511LL : -0xe.15a8864e2c49c72e840285ec1ddp-36 : inexact-ok
+= rootn downward binary128 -0x4p-16496 511LL : -0xd.325fd865566584676de4286b5f4p-36 : inexact-ok
+= rootn tonearest binary128 -0x4p-16496 511LL : -0xd.325fd865566584676de4286b5f4p-36 : inexact-ok
+= rootn towardzero binary128 -0x4p-16496 511LL : -0xd.325fd865566584676de4286b5f38p-36 : inexact-ok
+= rootn upward binary128 -0x4p-16496 511LL : -0xd.325fd865566584676de4286b5f38p-36 : inexact-ok
+rootn -min_subnorm 1023
+= rootn downward binary32 -0x8p-152 1023LL : -0xe.76ab6p-4 : inexact-ok
+= rootn tonearest binary32 -0x8p-152 1023LL : -0xe.76ab5p-4 : inexact-ok
+= rootn towardzero binary32 -0x8p-152 1023LL : -0xe.76ab5p-4 : inexact-ok
+= rootn upward binary32 -0x8p-152 1023LL : -0xe.76ab5p-4 : inexact-ok
+= rootn downward binary64 -0x8p-152 1023LL : -0xe.76ab512fd7528p-4 : inexact-ok
+= rootn tonearest binary64 -0x8p-152 1023LL : -0xe.76ab512fd752p-4 : inexact-ok
+= rootn towardzero binary64 -0x8p-152 1023LL : -0xe.76ab512fd752p-4 : inexact-ok
+= rootn upward binary64 -0x8p-152 1023LL : -0xe.76ab512fd752p-4 : inexact-ok
+= rootn downward intel96 -0x8p-152 1023LL : -0xe.76ab512fd752355p-4 : inexact-ok
+= rootn tonearest intel96 -0x8p-152 1023LL : -0xe.76ab512fd752355p-4 : inexact-ok
+= rootn towardzero intel96 -0x8p-152 1023LL : -0xe.76ab512fd752354p-4 : inexact-ok
+= rootn upward intel96 -0x8p-152 1023LL : -0xe.76ab512fd752354p-4 : inexact-ok
+= rootn downward m68k96 -0x8p-152 1023LL : -0xe.76ab512fd752355p-4 : inexact-ok
+= rootn tonearest m68k96 -0x8p-152 1023LL : -0xe.76ab512fd752355p-4 : inexact-ok
+= rootn towardzero m68k96 -0x8p-152 1023LL : -0xe.76ab512fd752354p-4 : inexact-ok
+= rootn upward m68k96 -0x8p-152 1023LL : -0xe.76ab512fd752354p-4 : inexact-ok
+= rootn downward binary128 -0x8p-152 1023LL : -0xe.76ab512fd752354b743a335eb4p-4 : inexact-ok
+= rootn tonearest binary128 -0x8p-152 1023LL : -0xe.76ab512fd752354b743a335eb4p-4 : inexact-ok
+= rootn towardzero binary128 -0x8p-152 1023LL : -0xe.76ab512fd752354b743a335eb3f8p-4 : inexact-ok
+= rootn upward binary128 -0x8p-152 1023LL : -0xe.76ab512fd752354b743a335eb3f8p-4 : inexact-ok
+= rootn downward ibm128 -0x8p-152 1023LL : -0xe.76ab512fd752354b743a335eb4p-4 : inexact-ok
+= rootn tonearest ibm128 -0x8p-152 1023LL : -0xe.76ab512fd752354b743a335eb4p-4 : inexact-ok
+= rootn towardzero ibm128 -0x8p-152 1023LL : -0xe.76ab512fd752354b743a335ebp-4 : inexact-ok
+= rootn upward ibm128 -0x8p-152 1023LL : -0xe.76ab512fd752354b743a335ebp-4 : inexact-ok
+= rootn downward binary64 -0x4p-1076 1023LL : -0x7.ba704c9cca3b8p-4 : inexact-ok
+= rootn tonearest binary64 -0x4p-1076 1023LL : -0x7.ba704c9cca3b4p-4 : inexact-ok
+= rootn towardzero binary64 -0x4p-1076 1023LL : -0x7.ba704c9cca3b4p-4 : inexact-ok
+= rootn upward binary64 -0x4p-1076 1023LL : -0x7.ba704c9cca3b4p-4 : inexact-ok
+= rootn downward intel96 -0x4p-1076 1023LL : -0x7.ba704c9cca3b5ed8p-4 : inexact-ok
+= rootn tonearest intel96 -0x4p-1076 1023LL : -0x7.ba704c9cca3b5ed8p-4 : inexact-ok
+= rootn towardzero intel96 -0x4p-1076 1023LL : -0x7.ba704c9cca3b5edp-4 : inexact-ok
+= rootn upward intel96 -0x4p-1076 1023LL : -0x7.ba704c9cca3b5edp-4 : inexact-ok
+= rootn downward m68k96 -0x4p-1076 1023LL : -0x7.ba704c9cca3b5ed8p-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1076 1023LL : -0x7.ba704c9cca3b5ed8p-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1076 1023LL : -0x7.ba704c9cca3b5edp-4 : inexact-ok
+= rootn upward m68k96 -0x4p-1076 1023LL : -0x7.ba704c9cca3b5edp-4 : inexact-ok
+= rootn downward binary128 -0x4p-1076 1023LL : -0x7.ba704c9cca3b5ed58058036a5b64p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-1076 1023LL : -0x7.ba704c9cca3b5ed58058036a5b64p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-1076 1023LL : -0x7.ba704c9cca3b5ed58058036a5b6p-4 : inexact-ok
+= rootn upward binary128 -0x4p-1076 1023LL : -0x7.ba704c9cca3b5ed58058036a5b6p-4 : inexact-ok
+= rootn downward ibm128 -0x4p-1076 1023LL : -0x7.ba704c9cca3b5ed58058036a5cp-4 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1076 1023LL : -0x7.ba704c9cca3b5ed58058036a5cp-4 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1076 1023LL : -0x7.ba704c9cca3b5ed58058036a5ap-4 : inexact-ok
+= rootn upward ibm128 -0x4p-1076 1023LL : -0x7.ba704c9cca3b5ed58058036a5ap-4 : inexact-ok
+= rootn downward intel96 -0x8p-16448 1023LL : -0xf.2fc7e5cbaa4bfdep-20 : inexact-ok
+= rootn tonearest intel96 -0x8p-16448 1023LL : -0xf.2fc7e5cbaa4bfdep-20 : inexact-ok
+= rootn towardzero intel96 -0x8p-16448 1023LL : -0xf.2fc7e5cbaa4bfddp-20 : inexact-ok
+= rootn upward intel96 -0x8p-16448 1023LL : -0xf.2fc7e5cbaa4bfddp-20 : inexact-ok
+= rootn downward m68k96 -0x8p-16448 1023LL : -0xf.2fc7e5cbaa4bfdep-20 : inexact-ok
+= rootn tonearest m68k96 -0x8p-16448 1023LL : -0xf.2fc7e5cbaa4bfdep-20 : inexact-ok
+= rootn towardzero m68k96 -0x8p-16448 1023LL : -0xf.2fc7e5cbaa4bfddp-20 : inexact-ok
+= rootn upward m68k96 -0x8p-16448 1023LL : -0xf.2fc7e5cbaa4bfddp-20 : inexact-ok
+= rootn downward binary128 -0x8p-16448 1023LL : -0xf.2fc7e5cbaa4bfdd8801e6fc74fdp-20 : inexact-ok
+= rootn tonearest binary128 -0x8p-16448 1023LL : -0xf.2fc7e5cbaa4bfdd8801e6fc74fc8p-20 : inexact-ok
+= rootn towardzero binary128 -0x8p-16448 1023LL : -0xf.2fc7e5cbaa4bfdd8801e6fc74fc8p-20 : inexact-ok
+= rootn upward binary128 -0x8p-16448 1023LL : -0xf.2fc7e5cbaa4bfdd8801e6fc74fc8p-20 : inexact-ok
+= rootn downward m68k96 -0x4p-16448 1023LL : -0xf.2d25c43370e42d2p-20 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16448 1023LL : -0xf.2d25c43370e42d2p-20 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16448 1023LL : -0xf.2d25c43370e42d1p-20 : inexact-ok
+= rootn upward m68k96 -0x4p-16448 1023LL : -0xf.2d25c43370e42d1p-20 : inexact-ok
+= rootn downward binary128 -0x4p-16448 1023LL : -0xf.2d25c43370e42d1c0d70f7dab798p-20 : inexact-ok
+= rootn tonearest binary128 -0x4p-16448 1023LL : -0xf.2d25c43370e42d1c0d70f7dab79p-20 : inexact-ok
+= rootn towardzero binary128 -0x4p-16448 1023LL : -0xf.2d25c43370e42d1c0d70f7dab79p-20 : inexact-ok
+= rootn upward binary128 -0x4p-16448 1023LL : -0xf.2d25c43370e42d1c0d70f7dab79p-20 : inexact-ok
+= rootn downward binary128 -0x4p-16496 1023LL : -0xe.b0d2c9f4744156948c94513459ap-20 : inexact-ok
+= rootn tonearest binary128 -0x4p-16496 1023LL : -0xe.b0d2c9f4744156948c9451345998p-20 : inexact-ok
+= rootn towardzero binary128 -0x4p-16496 1023LL : -0xe.b0d2c9f4744156948c9451345998p-20 : inexact-ok
+= rootn upward binary128 -0x4p-16496 1023LL : -0xe.b0d2c9f4744156948c9451345998p-20 : inexact-ok
+rootn -min_subnorm 16383
+= rootn downward binary32 -0x8p-152 16383LL : -0xf.e6429p-4 : inexact-ok
+= rootn tonearest binary32 -0x8p-152 16383LL : -0xf.e6429p-4 : inexact-ok
+= rootn towardzero binary32 -0x8p-152 16383LL : -0xf.e6428p-4 : inexact-ok
+= rootn upward binary32 -0x8p-152 16383LL : -0xf.e6428p-4 : inexact-ok
+= rootn downward binary64 -0x8p-152 16383LL : -0xf.e6428974cca2p-4 : inexact-ok
+= rootn tonearest binary64 -0x8p-152 16383LL : -0xf.e6428974cca2p-4 : inexact-ok
+= rootn towardzero binary64 -0x8p-152 16383LL : -0xf.e6428974cca18p-4 : inexact-ok
+= rootn upward binary64 -0x8p-152 16383LL : -0xf.e6428974cca18p-4 : inexact-ok
+= rootn downward intel96 -0x8p-152 16383LL : -0xf.e6428974cca1d1p-4 : inexact-ok
+= rootn tonearest intel96 -0x8p-152 16383LL : -0xf.e6428974cca1d1p-4 : inexact-ok
+= rootn towardzero intel96 -0x8p-152 16383LL : -0xf.e6428974cca1d0fp-4 : inexact-ok
+= rootn upward intel96 -0x8p-152 16383LL : -0xf.e6428974cca1d0fp-4 : inexact-ok
+= rootn downward m68k96 -0x8p-152 16383LL : -0xf.e6428974cca1d1p-4 : inexact-ok
+= rootn tonearest m68k96 -0x8p-152 16383LL : -0xf.e6428974cca1d1p-4 : inexact-ok
+= rootn towardzero m68k96 -0x8p-152 16383LL : -0xf.e6428974cca1d0fp-4 : inexact-ok
+= rootn upward m68k96 -0x8p-152 16383LL : -0xf.e6428974cca1d0fp-4 : inexact-ok
+= rootn downward binary128 -0x8p-152 16383LL : -0xf.e6428974cca1d0f910259f16af7p-4 : inexact-ok
+= rootn tonearest binary128 -0x8p-152 16383LL : -0xf.e6428974cca1d0f910259f16af68p-4 : inexact-ok
+= rootn towardzero binary128 -0x8p-152 16383LL : -0xf.e6428974cca1d0f910259f16af68p-4 : inexact-ok
+= rootn upward binary128 -0x8p-152 16383LL : -0xf.e6428974cca1d0f910259f16af68p-4 : inexact-ok
+= rootn downward ibm128 -0x8p-152 16383LL : -0xf.e6428974cca1d0f910259f16bp-4 : inexact-ok
+= rootn tonearest ibm128 -0x8p-152 16383LL : -0xf.e6428974cca1d0f910259f16bp-4 : inexact-ok
+= rootn towardzero ibm128 -0x8p-152 16383LL : -0xf.e6428974cca1d0f910259f16acp-4 : inexact-ok
+= rootn upward ibm128 -0x8p-152 16383LL : -0xf.e6428974cca1d0f910259f16acp-4 : inexact-ok
+= rootn downward binary64 -0x4p-1076 16383LL : -0xf.4a0b40670852p-4 : inexact-ok
+= rootn tonearest binary64 -0x4p-1076 16383LL : -0xf.4a0b406708518p-4 : inexact-ok
+= rootn towardzero binary64 -0x4p-1076 16383LL : -0xf.4a0b406708518p-4 : inexact-ok
+= rootn upward binary64 -0x4p-1076 16383LL : -0xf.4a0b406708518p-4 : inexact-ok
+= rootn downward intel96 -0x4p-1076 16383LL : -0xf.4a0b40670851a95p-4 : inexact-ok
+= rootn tonearest intel96 -0x4p-1076 16383LL : -0xf.4a0b40670851a95p-4 : inexact-ok
+= rootn towardzero intel96 -0x4p-1076 16383LL : -0xf.4a0b40670851a94p-4 : inexact-ok
+= rootn upward intel96 -0x4p-1076 16383LL : -0xf.4a0b40670851a94p-4 : inexact-ok
+= rootn downward m68k96 -0x4p-1076 16383LL : -0xf.4a0b40670851a95p-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1076 16383LL : -0xf.4a0b40670851a95p-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1076 16383LL : -0xf.4a0b40670851a94p-4 : inexact-ok
+= rootn upward m68k96 -0x4p-1076 16383LL : -0xf.4a0b40670851a94p-4 : inexact-ok
+= rootn downward binary128 -0x4p-1076 16383LL : -0xf.4a0b40670851a94edb8d8d7ce4ep-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-1076 16383LL : -0xf.4a0b40670851a94edb8d8d7ce4d8p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-1076 16383LL : -0xf.4a0b40670851a94edb8d8d7ce4d8p-4 : inexact-ok
+= rootn upward binary128 -0x4p-1076 16383LL : -0xf.4a0b40670851a94edb8d8d7ce4d8p-4 : inexact-ok
+= rootn downward ibm128 -0x4p-1076 16383LL : -0xf.4a0b40670851a94edb8d8d7ce8p-4 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1076 16383LL : -0xf.4a0b40670851a94edb8d8d7ce4p-4 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1076 16383LL : -0xf.4a0b40670851a94edb8d8d7ce4p-4 : inexact-ok
+= rootn upward ibm128 -0x4p-1076 16383LL : -0xf.4a0b40670851a94edb8d8d7ce4p-4 : inexact-ok
+= rootn downward intel96 -0x8p-16448 16383LL : -0x7.faa283a75bac8b98p-4 : inexact-ok
+= rootn tonearest intel96 -0x8p-16448 16383LL : -0x7.faa283a75bac8b9p-4 : inexact-ok
+= rootn towardzero intel96 -0x8p-16448 16383LL : -0x7.faa283a75bac8b9p-4 : inexact-ok
+= rootn upward intel96 -0x8p-16448 16383LL : -0x7.faa283a75bac8b9p-4 : inexact-ok
+= rootn downward m68k96 -0x8p-16448 16383LL : -0x7.faa283a75bac8b98p-4 : inexact-ok
+= rootn tonearest m68k96 -0x8p-16448 16383LL : -0x7.faa283a75bac8b9p-4 : inexact-ok
+= rootn towardzero m68k96 -0x8p-16448 16383LL : -0x7.faa283a75bac8b9p-4 : inexact-ok
+= rootn upward m68k96 -0x8p-16448 16383LL : -0x7.faa283a75bac8b9p-4 : inexact-ok
+= rootn downward binary128 -0x8p-16448 16383LL : -0x7.faa283a75bac8b93dbf27246eecp-4 : inexact-ok
+= rootn tonearest binary128 -0x8p-16448 16383LL : -0x7.faa283a75bac8b93dbf27246eebcp-4 : inexact-ok
+= rootn towardzero binary128 -0x8p-16448 16383LL : -0x7.faa283a75bac8b93dbf27246eebcp-4 : inexact-ok
+= rootn upward binary128 -0x8p-16448 16383LL : -0x7.faa283a75bac8b93dbf27246eebcp-4 : inexact-ok
+= rootn downward m68k96 -0x4p-16448 16383LL : -0x7.fa8c640aa629aa78p-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16448 16383LL : -0x7.fa8c640aa629aa78p-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16448 16383LL : -0x7.fa8c640aa629aa7p-4 : inexact-ok
+= rootn upward m68k96 -0x4p-16448 16383LL : -0x7.fa8c640aa629aa7p-4 : inexact-ok
+= rootn downward binary128 -0x4p-16448 16383LL : -0x7.fa8c640aa629aa75cec7cbb1ff3p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-16448 16383LL : -0x7.fa8c640aa629aa75cec7cbb1ff2cp-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-16448 16383LL : -0x7.fa8c640aa629aa75cec7cbb1ff2cp-4 : inexact-ok
+= rootn upward binary128 -0x4p-16448 16383LL : -0x7.fa8c640aa629aa75cec7cbb1ff2cp-4 : inexact-ok
+= rootn downward binary128 -0x4p-16496 16383LL : -0x7.f6679042bf419508ce0dd9368288p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-16496 16383LL : -0x7.f6679042bf419508ce0dd9368284p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-16496 16383LL : -0x7.f6679042bf419508ce0dd9368284p-4 : inexact-ok
+= rootn upward binary128 -0x4p-16496 16383LL : -0x7.f6679042bf419508ce0dd9368284p-4 : inexact-ok
+rootn -min_subnorm 0x1000001
+= rootn downward binary32 -0x8p-152 16777217LL : -0xf.fff99p-4 : inexact-ok
+= rootn tonearest binary32 -0x8p-152 16777217LL : -0xf.fff99p-4 : inexact-ok
+= rootn towardzero binary32 -0x8p-152 16777217LL : -0xf.fff98p-4 : inexact-ok
+= rootn upward binary32 -0x8p-152 16777217LL : -0xf.fff98p-4 : inexact-ok
+= rootn downward binary64 -0x8p-152 16777217LL : -0xf.fff98b8ad495p-4 : inexact-ok
+= rootn tonearest binary64 -0x8p-152 16777217LL : -0xf.fff98b8ad495p-4 : inexact-ok
+= rootn towardzero binary64 -0x8p-152 16777217LL : -0xf.fff98b8ad4948p-4 : inexact-ok
+= rootn upward binary64 -0x8p-152 16777217LL : -0xf.fff98b8ad4948p-4 : inexact-ok
+= rootn downward intel96 -0x8p-152 16777217LL : -0xf.fff98b8ad494c1cp-4 : inexact-ok
+= rootn tonearest intel96 -0x8p-152 16777217LL : -0xf.fff98b8ad494c1bp-4 : inexact-ok
+= rootn towardzero intel96 -0x8p-152 16777217LL : -0xf.fff98b8ad494c1bp-4 : inexact-ok
+= rootn upward intel96 -0x8p-152 16777217LL : -0xf.fff98b8ad494c1bp-4 : inexact-ok
+= rootn downward m68k96 -0x8p-152 16777217LL : -0xf.fff98b8ad494c1cp-4 : inexact-ok
+= rootn tonearest m68k96 -0x8p-152 16777217LL : -0xf.fff98b8ad494c1bp-4 : inexact-ok
+= rootn towardzero m68k96 -0x8p-152 16777217LL : -0xf.fff98b8ad494c1bp-4 : inexact-ok
+= rootn upward m68k96 -0x8p-152 16777217LL : -0xf.fff98b8ad494c1bp-4 : inexact-ok
+= rootn downward binary128 -0x8p-152 16777217LL : -0xf.fff98b8ad494c1b325121ef485d8p-4 : inexact-ok
+= rootn tonearest binary128 -0x8p-152 16777217LL : -0xf.fff98b8ad494c1b325121ef485dp-4 : inexact-ok
+= rootn towardzero binary128 -0x8p-152 16777217LL : -0xf.fff98b8ad494c1b325121ef485dp-4 : inexact-ok
+= rootn upward binary128 -0x8p-152 16777217LL : -0xf.fff98b8ad494c1b325121ef485dp-4 : inexact-ok
+= rootn downward ibm128 -0x8p-152 16777217LL : -0xf.fff98b8ad494c1b325121ef488p-4 : inexact-ok
+= rootn tonearest ibm128 -0x8p-152 16777217LL : -0xf.fff98b8ad494c1b325121ef484p-4 : inexact-ok
+= rootn towardzero ibm128 -0x8p-152 16777217LL : -0xf.fff98b8ad494c1b325121ef484p-4 : inexact-ok
+= rootn upward ibm128 -0x8p-152 16777217LL : -0xf.fff98b8ad494c1b325121ef484p-4 : inexact-ok
+= rootn downward binary64 -0x4p-1076 16777217LL : -0xf.ffd179394be28p-4 : inexact-ok
+= rootn tonearest binary64 -0x4p-1076 16777217LL : -0xf.ffd179394be2p-4 : inexact-ok
+= rootn towardzero binary64 -0x4p-1076 16777217LL : -0xf.ffd179394be2p-4 : inexact-ok
+= rootn upward binary64 -0x4p-1076 16777217LL : -0xf.ffd179394be2p-4 : inexact-ok
+= rootn downward intel96 -0x4p-1076 16777217LL : -0xf.ffd179394be236fp-4 : inexact-ok
+= rootn tonearest intel96 -0x4p-1076 16777217LL : -0xf.ffd179394be236ep-4 : inexact-ok
+= rootn towardzero intel96 -0x4p-1076 16777217LL : -0xf.ffd179394be236ep-4 : inexact-ok
+= rootn upward intel96 -0x4p-1076 16777217LL : -0xf.ffd179394be236ep-4 : inexact-ok
+= rootn downward m68k96 -0x4p-1076 16777217LL : -0xf.ffd179394be236fp-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1076 16777217LL : -0xf.ffd179394be236ep-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1076 16777217LL : -0xf.ffd179394be236ep-4 : inexact-ok
+= rootn upward m68k96 -0x4p-1076 16777217LL : -0xf.ffd179394be236ep-4 : inexact-ok
+= rootn downward binary128 -0x4p-1076 16777217LL : -0xf.ffd179394be236e1aca043059268p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-1076 16777217LL : -0xf.ffd179394be236e1aca043059268p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-1076 16777217LL : -0xf.ffd179394be236e1aca04305926p-4 : inexact-ok
+= rootn upward binary128 -0x4p-1076 16777217LL : -0xf.ffd179394be236e1aca04305926p-4 : inexact-ok
+= rootn downward ibm128 -0x4p-1076 16777217LL : -0xf.ffd179394be236e1aca0430594p-4 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1076 16777217LL : -0xf.ffd179394be236e1aca0430594p-4 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1076 16777217LL : -0xf.ffd179394be236e1aca043059p-4 : inexact-ok
+= rootn upward ibm128 -0x4p-1076 16777217LL : -0xf.ffd179394be236e1aca043059p-4 : inexact-ok
+= rootn downward intel96 -0x8p-16448 16777217LL : -0xf.fd37d11144bf64p-4 : inexact-ok
+= rootn tonearest intel96 -0x8p-16448 16777217LL : -0xf.fd37d11144bf63fp-4 : inexact-ok
+= rootn towardzero intel96 -0x8p-16448 16777217LL : -0xf.fd37d11144bf63fp-4 : inexact-ok
+= rootn upward intel96 -0x8p-16448 16777217LL : -0xf.fd37d11144bf63fp-4 : inexact-ok
+= rootn downward m68k96 -0x8p-16448 16777217LL : -0xf.fd37d11144bf64p-4 : inexact-ok
+= rootn tonearest m68k96 -0x8p-16448 16777217LL : -0xf.fd37d11144bf63fp-4 : inexact-ok
+= rootn towardzero m68k96 -0x8p-16448 16777217LL : -0xf.fd37d11144bf63fp-4 : inexact-ok
+= rootn upward m68k96 -0x8p-16448 16777217LL : -0xf.fd37d11144bf63fp-4 : inexact-ok
+= rootn downward binary128 -0x8p-16448 16777217LL : -0xf.fd37d11144bf63f1314474d33dcp-4 : inexact-ok
+= rootn tonearest binary128 -0x8p-16448 16777217LL : -0xf.fd37d11144bf63f1314474d33dcp-4 : inexact-ok
+= rootn towardzero binary128 -0x8p-16448 16777217LL : -0xf.fd37d11144bf63f1314474d33db8p-4 : inexact-ok
+= rootn upward binary128 -0x8p-16448 16777217LL : -0xf.fd37d11144bf63f1314474d33db8p-4 : inexact-ok
+= rootn downward m68k96 -0x4p-16448 16777217LL : -0xf.fd37c5fc10f4aep-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16448 16777217LL : -0xf.fd37c5fc10f4aep-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16448 16777217LL : -0xf.fd37c5fc10f4adfp-4 : inexact-ok
+= rootn upward m68k96 -0x4p-16448 16777217LL : -0xf.fd37c5fc10f4adfp-4 : inexact-ok
+= rootn downward binary128 -0x4p-16448 16777217LL : -0xf.fd37c5fc10f4adf81537c41a05dp-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-16448 16777217LL : -0xf.fd37c5fc10f4adf81537c41a05dp-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-16448 16777217LL : -0xf.fd37c5fc10f4adf81537c41a05c8p-4 : inexact-ok
+= rootn upward binary128 -0x4p-16448 16777217LL : -0xf.fd37c5fc10f4adf81537c41a05c8p-4 : inexact-ok
+= rootn downward binary128 -0x4p-16496 16777217LL : -0xf.fd35b2027e3c9dbf58f0e8a84358p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-16496 16777217LL : -0xf.fd35b2027e3c9dbf58f0e8a8435p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-16496 16777217LL : -0xf.fd35b2027e3c9dbf58f0e8a8435p-4 : inexact-ok
+= rootn upward binary128 -0x4p-16496 16777217LL : -0xf.fd35b2027e3c9dbf58f0e8a8435p-4 : inexact-ok
+rootn -min_subnorm 0x10000000000001
+= rootn downward binary32 -0x8p-152 4503599627370497LL : -0x1p+0 : inexact-ok
+= rootn tonearest binary32 -0x8p-152 4503599627370497LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary32 -0x8p-152 4503599627370497LL : -0xf.fffffp-4 : inexact-ok
+= rootn upward binary32 -0x8p-152 4503599627370497LL : -0xf.fffffp-4 : inexact-ok
+= rootn downward binary64 -0x8p-152 4503599627370497LL : -0xf.ffffffffff99p-4 : inexact-ok
+= rootn tonearest binary64 -0x8p-152 4503599627370497LL : -0xf.ffffffffff988p-4 : inexact-ok
+= rootn towardzero binary64 -0x8p-152 4503599627370497LL : -0xf.ffffffffff988p-4 : inexact-ok
+= rootn upward binary64 -0x8p-152 4503599627370497LL : -0xf.ffffffffff988p-4 : inexact-ok
+= rootn downward intel96 -0x8p-152 4503599627370497LL : -0xf.ffffffffff98b8ap-4 : inexact-ok
+= rootn tonearest intel96 -0x8p-152 4503599627370497LL : -0xf.ffffffffff98b8ap-4 : inexact-ok
+= rootn towardzero intel96 -0x8p-152 4503599627370497LL : -0xf.ffffffffff98b89p-4 : inexact-ok
+= rootn upward intel96 -0x8p-152 4503599627370497LL : -0xf.ffffffffff98b89p-4 : inexact-ok
+= rootn downward m68k96 -0x8p-152 4503599627370497LL : -0xf.ffffffffff98b8ap-4 : inexact-ok
+= rootn tonearest m68k96 -0x8p-152 4503599627370497LL : -0xf.ffffffffff98b8ap-4 : inexact-ok
+= rootn towardzero m68k96 -0x8p-152 4503599627370497LL : -0xf.ffffffffff98b89p-4 : inexact-ok
+= rootn upward m68k96 -0x8p-152 4503599627370497LL : -0xf.ffffffffff98b89p-4 : inexact-ok
+= rootn downward binary128 -0x8p-152 4503599627370497LL : -0xf.ffffffffff98b8980cc2e391f7c8p-4 : inexact-ok
+= rootn tonearest binary128 -0x8p-152 4503599627370497LL : -0xf.ffffffffff98b8980cc2e391f7c8p-4 : inexact-ok
+= rootn towardzero binary128 -0x8p-152 4503599627370497LL : -0xf.ffffffffff98b8980cc2e391f7cp-4 : inexact-ok
+= rootn upward binary128 -0x8p-152 4503599627370497LL : -0xf.ffffffffff98b8980cc2e391f7cp-4 : inexact-ok
+= rootn downward ibm128 -0x8p-152 4503599627370497LL : -0xf.ffffffffff98b8980cc2e391f8p-4 : inexact-ok
+= rootn tonearest ibm128 -0x8p-152 4503599627370497LL : -0xf.ffffffffff98b8980cc2e391f8p-4 : inexact-ok
+= rootn towardzero ibm128 -0x8p-152 4503599627370497LL : -0xf.ffffffffff98b8980cc2e391f4p-4 : inexact-ok
+= rootn upward ibm128 -0x8p-152 4503599627370497LL : -0xf.ffffffffff98b8980cc2e391f4p-4 : inexact-ok
+= rootn downward binary64 -0x4p-1076 4503599627370497LL : -0xf.fffffffffd18p-4 : inexact-ok
+= rootn tonearest binary64 -0x4p-1076 4503599627370497LL : -0xf.fffffffffd178p-4 : inexact-ok
+= rootn towardzero binary64 -0x4p-1076 4503599627370497LL : -0xf.fffffffffd178p-4 : inexact-ok
+= rootn upward binary64 -0x4p-1076 4503599627370497LL : -0xf.fffffffffd178p-4 : inexact-ok
+= rootn downward intel96 -0x4p-1076 4503599627370497LL : -0xf.fffffffffd178f6p-4 : inexact-ok
+= rootn tonearest intel96 -0x4p-1076 4503599627370497LL : -0xf.fffffffffd178f5p-4 : inexact-ok
+= rootn towardzero intel96 -0x4p-1076 4503599627370497LL : -0xf.fffffffffd178f5p-4 : inexact-ok
+= rootn upward intel96 -0x4p-1076 4503599627370497LL : -0xf.fffffffffd178f5p-4 : inexact-ok
+= rootn downward m68k96 -0x4p-1076 4503599627370497LL : -0xf.fffffffffd178f6p-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1076 4503599627370497LL : -0xf.fffffffffd178f5p-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1076 4503599627370497LL : -0xf.fffffffffd178f5p-4 : inexact-ok
+= rootn upward m68k96 -0x4p-1076 4503599627370497LL : -0xf.fffffffffd178f5p-4 : inexact-ok
+= rootn downward binary128 -0x4p-1076 4503599627370497LL : -0xf.fffffffffd178f5772520b688c8p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-1076 4503599627370497LL : -0xf.fffffffffd178f5772520b688c8p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-1076 4503599627370497LL : -0xf.fffffffffd178f5772520b688c78p-4 : inexact-ok
+= rootn upward binary128 -0x4p-1076 4503599627370497LL : -0xf.fffffffffd178f5772520b688c78p-4 : inexact-ok
+= rootn downward ibm128 -0x4p-1076 4503599627370497LL : -0xf.fffffffffd178f5772520b689p-4 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1076 4503599627370497LL : -0xf.fffffffffd178f5772520b688cp-4 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1076 4503599627370497LL : -0xf.fffffffffd178f5772520b688cp-4 : inexact-ok
+= rootn upward ibm128 -0x4p-1076 4503599627370497LL : -0xf.fffffffffd178f5772520b688cp-4 : inexact-ok
+= rootn downward intel96 -0x8p-16448 4503599627370497LL : -0xf.ffffffffd37931ep-4 : inexact-ok
+= rootn tonearest intel96 -0x8p-16448 4503599627370497LL : -0xf.ffffffffd37931dp-4 : inexact-ok
+= rootn towardzero intel96 -0x8p-16448 4503599627370497LL : -0xf.ffffffffd37931dp-4 : inexact-ok
+= rootn upward intel96 -0x8p-16448 4503599627370497LL : -0xf.ffffffffd37931dp-4 : inexact-ok
+= rootn downward m68k96 -0x8p-16448 4503599627370497LL : -0xf.ffffffffd37931ep-4 : inexact-ok
+= rootn tonearest m68k96 -0x8p-16448 4503599627370497LL : -0xf.ffffffffd37931dp-4 : inexact-ok
+= rootn towardzero m68k96 -0x8p-16448 4503599627370497LL : -0xf.ffffffffd37931dp-4 : inexact-ok
+= rootn upward m68k96 -0x8p-16448 4503599627370497LL : -0xf.ffffffffd37931dp-4 : inexact-ok
+= rootn downward binary128 -0x8p-16448 4503599627370497LL : -0xf.ffffffffd37931d255bd1adc5ep-4 : inexact-ok
+= rootn tonearest binary128 -0x8p-16448 4503599627370497LL : -0xf.ffffffffd37931d255bd1adc5ep-4 : inexact-ok
+= rootn towardzero binary128 -0x8p-16448 4503599627370497LL : -0xf.ffffffffd37931d255bd1adc5df8p-4 : inexact-ok
+= rootn upward binary128 -0x8p-16448 4503599627370497LL : -0xf.ffffffffd37931d255bd1adc5df8p-4 : inexact-ok
+= rootn downward m68k96 -0x4p-16448 4503599627370497LL : -0xf.ffffffffd378807p-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16448 4503599627370497LL : -0xf.ffffffffd378806p-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16448 4503599627370497LL : -0xf.ffffffffd378806p-4 : inexact-ok
+= rootn upward m68k96 -0x4p-16448 4503599627370497LL : -0xf.ffffffffd378806p-4 : inexact-ok
+= rootn downward binary128 -0x4p-16448 4503599627370497LL : -0xf.ffffffffd37880603dc54afac41p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-16448 4503599627370497LL : -0xf.ffffffffd37880603dc54afac41p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-16448 4503599627370497LL : -0xf.ffffffffd37880603dc54afac408p-4 : inexact-ok
+= rootn upward binary128 -0x4p-16448 4503599627370497LL : -0xf.ffffffffd37880603dc54afac408p-4 : inexact-ok
+= rootn downward binary128 -0x4p-16496 4503599627370497LL : -0xf.ffffffffd3573afbbf4e50d13728p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-16496 4503599627370497LL : -0xf.ffffffffd3573afbbf4e50d1372p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-16496 4503599627370497LL : -0xf.ffffffffd3573afbbf4e50d1372p-4 : inexact-ok
+= rootn upward binary128 -0x4p-16496 4503599627370497LL : -0xf.ffffffffd3573afbbf4e50d1372p-4 : inexact-ok
+rootn -min_subnorm 0x7fffffffffffffff
+= rootn downward binary32 -0x8p-152 9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn tonearest binary32 -0x8p-152 9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary32 -0x8p-152 9223372036854775807LL : -0xf.fffffp-4 : inexact-ok
+= rootn upward binary32 -0x8p-152 9223372036854775807LL : -0xf.fffffp-4 : inexact-ok
+= rootn downward binary64 -0x8p-152 9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn tonearest binary64 -0x8p-152 9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary64 -0x8p-152 9223372036854775807LL : -0xf.ffffffffffff8p-4 : inexact-ok
+= rootn upward binary64 -0x8p-152 9223372036854775807LL : -0xf.ffffffffffff8p-4 : inexact-ok
+= rootn downward intel96 -0x8p-152 9223372036854775807LL : -0xf.fffffffffffff32p-4 : inexact-ok
+= rootn tonearest intel96 -0x8p-152 9223372036854775807LL : -0xf.fffffffffffff31p-4 : inexact-ok
+= rootn towardzero intel96 -0x8p-152 9223372036854775807LL : -0xf.fffffffffffff31p-4 : inexact-ok
+= rootn upward intel96 -0x8p-152 9223372036854775807LL : -0xf.fffffffffffff31p-4 : inexact-ok
+= rootn downward m68k96 -0x8p-152 9223372036854775807LL : -0xf.fffffffffffff32p-4 : inexact-ok
+= rootn tonearest m68k96 -0x8p-152 9223372036854775807LL : -0xf.fffffffffffff31p-4 : inexact-ok
+= rootn towardzero m68k96 -0x8p-152 9223372036854775807LL : -0xf.fffffffffffff31p-4 : inexact-ok
+= rootn upward m68k96 -0x8p-152 9223372036854775807LL : -0xf.fffffffffffff31p-4 : inexact-ok
+= rootn downward binary128 -0x8p-152 9223372036854775807LL : -0xf.fffffffffffff3171301985c47dp-4 : inexact-ok
+= rootn tonearest binary128 -0x8p-152 9223372036854775807LL : -0xf.fffffffffffff3171301985c47c8p-4 : inexact-ok
+= rootn towardzero binary128 -0x8p-152 9223372036854775807LL : -0xf.fffffffffffff3171301985c47c8p-4 : inexact-ok
+= rootn upward binary128 -0x8p-152 9223372036854775807LL : -0xf.fffffffffffff3171301985c47c8p-4 : inexact-ok
+= rootn downward ibm128 -0x8p-152 9223372036854775807LL : -0xf.fffffffffffff3171301985c48p-4 : inexact-ok
+= rootn tonearest ibm128 -0x8p-152 9223372036854775807LL : -0xf.fffffffffffff3171301985c48p-4 : inexact-ok
+= rootn towardzero ibm128 -0x8p-152 9223372036854775807LL : -0xf.fffffffffffff3171301985c44p-4 : inexact-ok
+= rootn upward ibm128 -0x8p-152 9223372036854775807LL : -0xf.fffffffffffff3171301985c44p-4 : inexact-ok
+= rootn downward binary64 -0x4p-1076 9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn tonearest binary64 -0x4p-1076 9223372036854775807LL : -0xf.ffffffffffff8p-4 : inexact-ok
+= rootn towardzero binary64 -0x4p-1076 9223372036854775807LL : -0xf.ffffffffffff8p-4 : inexact-ok
+= rootn upward binary64 -0x4p-1076 9223372036854775807LL : -0xf.ffffffffffff8p-4 : inexact-ok
+= rootn downward intel96 -0x4p-1076 9223372036854775807LL : -0xf.ffffffffffffa3p-4 : inexact-ok
+= rootn tonearest intel96 -0x4p-1076 9223372036854775807LL : -0xf.ffffffffffffa2fp-4 : inexact-ok
+= rootn towardzero intel96 -0x4p-1076 9223372036854775807LL : -0xf.ffffffffffffa2fp-4 : inexact-ok
+= rootn upward intel96 -0x4p-1076 9223372036854775807LL : -0xf.ffffffffffffa2fp-4 : inexact-ok
+= rootn downward m68k96 -0x4p-1076 9223372036854775807LL : -0xf.ffffffffffffa3p-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1076 9223372036854775807LL : -0xf.ffffffffffffa2fp-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1076 9223372036854775807LL : -0xf.ffffffffffffa2fp-4 : inexact-ok
+= rootn upward m68k96 -0x4p-1076 9223372036854775807LL : -0xf.ffffffffffffa2fp-4 : inexact-ok
+= rootn downward binary128 -0x4p-1076 9223372036854775807LL : -0xf.ffffffffffffa2f1eaee4a38f38p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-1076 9223372036854775807LL : -0xf.ffffffffffffa2f1eaee4a38f38p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-1076 9223372036854775807LL : -0xf.ffffffffffffa2f1eaee4a38f378p-4 : inexact-ok
+= rootn upward binary128 -0x4p-1076 9223372036854775807LL : -0xf.ffffffffffffa2f1eaee4a38f378p-4 : inexact-ok
+= rootn downward ibm128 -0x4p-1076 9223372036854775807LL : -0xf.ffffffffffffa2f1eaee4a38f4p-4 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1076 9223372036854775807LL : -0xf.ffffffffffffa2f1eaee4a38f4p-4 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1076 9223372036854775807LL : -0xf.ffffffffffffa2f1eaee4a38fp-4 : inexact-ok
+= rootn upward ibm128 -0x4p-1076 9223372036854775807LL : -0xf.ffffffffffffa2f1eaee4a38fp-4 : inexact-ok
+= rootn downward intel96 -0x8p-16448 9223372036854775807LL : -0xf.fffffffffffa6f3p-4 : inexact-ok
+= rootn tonearest intel96 -0x8p-16448 9223372036854775807LL : -0xf.fffffffffffa6f2p-4 : inexact-ok
+= rootn towardzero intel96 -0x8p-16448 9223372036854775807LL : -0xf.fffffffffffa6f2p-4 : inexact-ok
+= rootn upward intel96 -0x8p-16448 9223372036854775807LL : -0xf.fffffffffffa6f2p-4 : inexact-ok
+= rootn downward m68k96 -0x8p-16448 9223372036854775807LL : -0xf.fffffffffffa6f3p-4 : inexact-ok
+= rootn tonearest m68k96 -0x8p-16448 9223372036854775807LL : -0xf.fffffffffffa6f2p-4 : inexact-ok
+= rootn towardzero m68k96 -0x8p-16448 9223372036854775807LL : -0xf.fffffffffffa6f2p-4 : inexact-ok
+= rootn upward m68k96 -0x8p-16448 9223372036854775807LL : -0xf.fffffffffffa6f2p-4 : inexact-ok
+= rootn downward binary128 -0x8p-16448 9223372036854775807LL : -0xf.fffffffffffa6f263a4aafe55c7p-4 : inexact-ok
+= rootn tonearest binary128 -0x8p-16448 9223372036854775807LL : -0xf.fffffffffffa6f263a4aafe55c68p-4 : inexact-ok
+= rootn towardzero binary128 -0x8p-16448 9223372036854775807LL : -0xf.fffffffffffa6f263a4aafe55c68p-4 : inexact-ok
+= rootn upward binary128 -0x8p-16448 9223372036854775807LL : -0xf.fffffffffffa6f263a4aafe55c68p-4 : inexact-ok
+= rootn downward m68k96 -0x4p-16448 9223372036854775807LL : -0xf.fffffffffffa6f2p-4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16448 9223372036854775807LL : -0xf.fffffffffffa6f1p-4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16448 9223372036854775807LL : -0xf.fffffffffffa6f1p-4 : inexact-ok
+= rootn upward m68k96 -0x4p-16448 9223372036854775807LL : -0xf.fffffffffffa6f1p-4 : inexact-ok
+= rootn downward binary128 -0x4p-16448 9223372036854775807LL : -0xf.fffffffffffa6f100c07b0eb2288p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-16448 9223372036854775807LL : -0xf.fffffffffffa6f100c07b0eb228p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-16448 9223372036854775807LL : -0xf.fffffffffffa6f100c07b0eb228p-4 : inexact-ok
+= rootn upward binary128 -0x4p-16448 9223372036854775807LL : -0xf.fffffffffffa6f100c07b0eb228p-4 : inexact-ok
+= rootn downward binary128 -0x4p-16496 9223372036854775807LL : -0xf.fffffffffffa6ae75f77e200472p-4 : inexact-ok
+= rootn tonearest binary128 -0x4p-16496 9223372036854775807LL : -0xf.fffffffffffa6ae75f77e2004718p-4 : inexact-ok
+= rootn towardzero binary128 -0x4p-16496 9223372036854775807LL : -0xf.fffffffffffa6ae75f77e2004718p-4 : inexact-ok
+= rootn upward binary128 -0x4p-16496 9223372036854775807LL : -0xf.fffffffffffa6ae75f77e2004718p-4 : inexact-ok
+rootn min_subnorm -1
+= rootn downward binary32 0x8p-152 -1LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= rootn tonearest binary32 0x8p-152 -1LL : plus_infty : inexact-ok overflow errno-erange
+= rootn towardzero binary32 0x8p-152 -1LL : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= rootn upward binary32 0x8p-152 -1LL : plus_infty : inexact-ok overflow errno-erange
+= rootn downward binary64 0x8p-152 -1LL : 0x2p+148 : inexact-ok
+= rootn tonearest binary64 0x8p-152 -1LL : 0x2p+148 : inexact-ok
+= rootn towardzero binary64 0x8p-152 -1LL : 0x2p+148 : inexact-ok
+= rootn upward binary64 0x8p-152 -1LL : 0x2p+148 : inexact-ok
+= rootn downward intel96 0x8p-152 -1LL : 0x2p+148 : inexact-ok
+= rootn tonearest intel96 0x8p-152 -1LL : 0x2p+148 : inexact-ok
+= rootn towardzero intel96 0x8p-152 -1LL : 0x2p+148 : inexact-ok
+= rootn upward intel96 0x8p-152 -1LL : 0x2p+148 : inexact-ok
+= rootn downward m68k96 0x8p-152 -1LL : 0x2p+148 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 -1LL : 0x2p+148 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 -1LL : 0x2p+148 : inexact-ok
+= rootn upward m68k96 0x8p-152 -1LL : 0x2p+148 : inexact-ok
+= rootn downward binary128 0x8p-152 -1LL : 0x2p+148 : inexact-ok
+= rootn tonearest binary128 0x8p-152 -1LL : 0x2p+148 : inexact-ok
+= rootn towardzero binary128 0x8p-152 -1LL : 0x2p+148 : inexact-ok
+= rootn upward binary128 0x8p-152 -1LL : 0x2p+148 : inexact-ok
+= rootn downward ibm128 0x8p-152 -1LL : 0x2p+148 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 -1LL : 0x2p+148 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 -1LL : 0x2p+148 : inexact-ok
+= rootn upward ibm128 0x8p-152 -1LL : 0x2p+148 : inexact-ok
+= rootn downward binary64 0x4p-1076 -1LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= rootn tonearest binary64 0x4p-1076 -1LL : plus_infty : inexact-ok overflow errno-erange
+= rootn towardzero binary64 0x4p-1076 -1LL : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= rootn upward binary64 0x4p-1076 -1LL : plus_infty : inexact-ok overflow errno-erange
+= rootn downward intel96 0x4p-1076 -1LL : 0x4p+1072 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 -1LL : 0x4p+1072 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 -1LL : 0x4p+1072 : inexact-ok
+= rootn upward intel96 0x4p-1076 -1LL : 0x4p+1072 : inexact-ok
+= rootn downward m68k96 0x4p-1076 -1LL : 0x4p+1072 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 -1LL : 0x4p+1072 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 -1LL : 0x4p+1072 : inexact-ok
+= rootn upward m68k96 0x4p-1076 -1LL : 0x4p+1072 : inexact-ok
+= rootn downward binary128 0x4p-1076 -1LL : 0x4p+1072 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 -1LL : 0x4p+1072 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 -1LL : 0x4p+1072 : inexact-ok
+= rootn upward binary128 0x4p-1076 -1LL : 0x4p+1072 : inexact-ok
+= rootn downward ibm128 0x4p-1076 -1LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= rootn tonearest ibm128 0x4p-1076 -1LL : plus_infty : inexact-ok overflow errno-erange
+= rootn towardzero ibm128 0x4p-1076 -1LL : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= rootn upward ibm128 0x4p-1076 -1LL : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= rootn downward intel96 0x8p-16448 -1LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= rootn tonearest intel96 0x8p-16448 -1LL : plus_infty : inexact-ok overflow errno-erange
+= rootn towardzero intel96 0x8p-16448 -1LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= rootn upward intel96 0x8p-16448 -1LL : plus_infty : inexact-ok overflow errno-erange
+= rootn downward m68k96 0x8p-16448 -1LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= rootn tonearest m68k96 0x8p-16448 -1LL : plus_infty : inexact-ok overflow errno-erange
+= rootn towardzero m68k96 0x8p-16448 -1LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= rootn upward m68k96 0x8p-16448 -1LL : plus_infty : inexact-ok overflow errno-erange
+= rootn downward binary128 0x8p-16448 -1LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= rootn tonearest binary128 0x8p-16448 -1LL : plus_infty : inexact-ok overflow errno-erange
+= rootn towardzero binary128 0x8p-16448 -1LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= rootn upward binary128 0x8p-16448 -1LL : plus_infty : inexact-ok overflow errno-erange
+= rootn downward m68k96 0x4p-16448 -1LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= rootn tonearest m68k96 0x4p-16448 -1LL : plus_infty : inexact-ok overflow errno-erange
+= rootn towardzero m68k96 0x4p-16448 -1LL : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= rootn upward m68k96 0x4p-16448 -1LL : plus_infty : inexact-ok overflow errno-erange
+= rootn downward binary128 0x4p-16448 -1LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= rootn tonearest binary128 0x4p-16448 -1LL : plus_infty : inexact-ok overflow errno-erange
+= rootn towardzero binary128 0x4p-16448 -1LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= rootn upward binary128 0x4p-16448 -1LL : plus_infty : inexact-ok overflow errno-erange
+= rootn downward binary128 0x4p-16496 -1LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= rootn tonearest binary128 0x4p-16496 -1LL : plus_infty : inexact-ok overflow errno-erange
+= rootn towardzero binary128 0x4p-16496 -1LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= rootn upward binary128 0x4p-16496 -1LL : plus_infty : inexact-ok overflow errno-erange
+rootn min_subnorm -2
+= rootn downward binary32 0x8p-152 -2LL : 0x5.a82798p+72 : inexact-ok
+= rootn tonearest binary32 0x8p-152 -2LL : 0x5.a82798p+72 : inexact-ok
+= rootn towardzero binary32 0x8p-152 -2LL : 0x5.a82798p+72 : inexact-ok
+= rootn upward binary32 0x8p-152 -2LL : 0x5.a827ap+72 : inexact-ok
+= rootn downward binary64 0x8p-152 -2LL : 0x5.a827999fcef3p+72 : inexact-ok
+= rootn tonearest binary64 0x8p-152 -2LL : 0x5.a827999fcef34p+72 : inexact-ok
+= rootn towardzero binary64 0x8p-152 -2LL : 0x5.a827999fcef3p+72 : inexact-ok
+= rootn upward binary64 0x8p-152 -2LL : 0x5.a827999fcef34p+72 : inexact-ok
+= rootn downward intel96 0x8p-152 -2LL : 0x5.a827999fcef3242p+72 : inexact-ok
+= rootn tonearest intel96 0x8p-152 -2LL : 0x5.a827999fcef3242p+72 : inexact-ok
+= rootn towardzero intel96 0x8p-152 -2LL : 0x5.a827999fcef3242p+72 : inexact-ok
+= rootn upward intel96 0x8p-152 -2LL : 0x5.a827999fcef32428p+72 : inexact-ok
+= rootn downward m68k96 0x8p-152 -2LL : 0x5.a827999fcef3242p+72 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 -2LL : 0x5.a827999fcef3242p+72 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 -2LL : 0x5.a827999fcef3242p+72 : inexact-ok
+= rootn upward m68k96 0x8p-152 -2LL : 0x5.a827999fcef32428p+72 : inexact-ok
+= rootn downward binary128 0x8p-152 -2LL : 0x5.a827999fcef32422cbec4d9baa54p+72 : inexact-ok
+= rootn tonearest binary128 0x8p-152 -2LL : 0x5.a827999fcef32422cbec4d9baa54p+72 : inexact-ok
+= rootn towardzero binary128 0x8p-152 -2LL : 0x5.a827999fcef32422cbec4d9baa54p+72 : inexact-ok
+= rootn upward binary128 0x8p-152 -2LL : 0x5.a827999fcef32422cbec4d9baa58p+72 : inexact-ok
+= rootn downward ibm128 0x8p-152 -2LL : 0x5.a827999fcef32422cbec4d9baap+72 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 -2LL : 0x5.a827999fcef32422cbec4d9baap+72 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 -2LL : 0x5.a827999fcef32422cbec4d9baap+72 : inexact-ok
+= rootn upward ibm128 0x8p-152 -2LL : 0x5.a827999fcef32422cbec4d9bacp+72 : inexact-ok
+= rootn downward binary64 0x4p-1076 -2LL : 0x2p+536 : inexact-ok
+= rootn tonearest binary64 0x4p-1076 -2LL : 0x2p+536 : inexact-ok
+= rootn towardzero binary64 0x4p-1076 -2LL : 0x2p+536 : inexact-ok
+= rootn upward binary64 0x4p-1076 -2LL : 0x2p+536 : inexact-ok
+= rootn downward intel96 0x4p-1076 -2LL : 0x2p+536 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 -2LL : 0x2p+536 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 -2LL : 0x2p+536 : inexact-ok
+= rootn upward intel96 0x4p-1076 -2LL : 0x2p+536 : inexact-ok
+= rootn downward m68k96 0x4p-1076 -2LL : 0x2p+536 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 -2LL : 0x2p+536 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 -2LL : 0x2p+536 : inexact-ok
+= rootn upward m68k96 0x4p-1076 -2LL : 0x2p+536 : inexact-ok
+= rootn downward binary128 0x4p-1076 -2LL : 0x2p+536 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 -2LL : 0x2p+536 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 -2LL : 0x2p+536 : inexact-ok
+= rootn upward binary128 0x4p-1076 -2LL : 0x2p+536 : inexact-ok
+= rootn downward ibm128 0x4p-1076 -2LL : 0x2p+536 : inexact-ok
+= rootn tonearest ibm128 0x4p-1076 -2LL : 0x2p+536 : inexact-ok
+= rootn towardzero ibm128 0x4p-1076 -2LL : 0x2p+536 : inexact-ok
+= rootn upward ibm128 0x4p-1076 -2LL : 0x2p+536 : inexact-ok
+= rootn downward intel96 0x8p-16448 -2LL : 0x5.a827999fcef3242p+8220 : inexact-ok
+= rootn tonearest intel96 0x8p-16448 -2LL : 0x5.a827999fcef3242p+8220 : inexact-ok
+= rootn towardzero intel96 0x8p-16448 -2LL : 0x5.a827999fcef3242p+8220 : inexact-ok
+= rootn upward intel96 0x8p-16448 -2LL : 0x5.a827999fcef32428p+8220 : inexact-ok
+= rootn downward m68k96 0x8p-16448 -2LL : 0x5.a827999fcef3242p+8220 : inexact-ok
+= rootn tonearest m68k96 0x8p-16448 -2LL : 0x5.a827999fcef3242p+8220 : inexact-ok
+= rootn towardzero m68k96 0x8p-16448 -2LL : 0x5.a827999fcef3242p+8220 : inexact-ok
+= rootn upward m68k96 0x8p-16448 -2LL : 0x5.a827999fcef32428p+8220 : inexact-ok
+= rootn downward binary128 0x8p-16448 -2LL : 0x5.a827999fcef32422cbec4d9baa54p+8220 : inexact-ok
+= rootn tonearest binary128 0x8p-16448 -2LL : 0x5.a827999fcef32422cbec4d9baa54p+8220 : inexact-ok
+= rootn towardzero binary128 0x8p-16448 -2LL : 0x5.a827999fcef32422cbec4d9baa54p+8220 : inexact-ok
+= rootn upward binary128 0x8p-16448 -2LL : 0x5.a827999fcef32422cbec4d9baa58p+8220 : inexact-ok
+= rootn downward m68k96 0x4p-16448 -2LL : 0x8p+8220 : inexact-ok
+= rootn tonearest m68k96 0x4p-16448 -2LL : 0x8p+8220 : inexact-ok
+= rootn towardzero m68k96 0x4p-16448 -2LL : 0x8p+8220 : inexact-ok
+= rootn upward m68k96 0x4p-16448 -2LL : 0x8p+8220 : inexact-ok
+= rootn downward binary128 0x4p-16448 -2LL : 0x8p+8220 : inexact-ok
+= rootn tonearest binary128 0x4p-16448 -2LL : 0x8p+8220 : inexact-ok
+= rootn towardzero binary128 0x4p-16448 -2LL : 0x8p+8220 : inexact-ok
+= rootn upward binary128 0x4p-16448 -2LL : 0x8p+8220 : inexact-ok
+= rootn downward binary128 0x4p-16496 -2LL : 0x8p+8244 : inexact-ok
+= rootn tonearest binary128 0x4p-16496 -2LL : 0x8p+8244 : inexact-ok
+= rootn towardzero binary128 0x4p-16496 -2LL : 0x8p+8244 : inexact-ok
+= rootn upward binary128 0x4p-16496 -2LL : 0x8p+8244 : inexact-ok
+rootn min_subnorm -3
+= rootn downward binary32 0x8p-152 -3LL : 0x3.2cbfd4p+48 : inexact-ok
+= rootn tonearest binary32 0x8p-152 -3LL : 0x3.2cbfd4p+48 : inexact-ok
+= rootn towardzero binary32 0x8p-152 -3LL : 0x3.2cbfd4p+48 : inexact-ok
+= rootn upward binary32 0x8p-152 -3LL : 0x3.2cbfd8p+48 : inexact-ok
+= rootn downward binary64 0x8p-152 -3LL : 0x3.2cbfd4a7adc78p+48 : inexact-ok
+= rootn tonearest binary64 0x8p-152 -3LL : 0x3.2cbfd4a7adc7ap+48 : inexact-ok
+= rootn towardzero binary64 0x8p-152 -3LL : 0x3.2cbfd4a7adc78p+48 : inexact-ok
+= rootn upward binary64 0x8p-152 -3LL : 0x3.2cbfd4a7adc7ap+48 : inexact-ok
+= rootn downward intel96 0x8p-152 -3LL : 0x3.2cbfd4a7adc79054p+48 : inexact-ok
+= rootn tonearest intel96 0x8p-152 -3LL : 0x3.2cbfd4a7adc79058p+48 : inexact-ok
+= rootn towardzero intel96 0x8p-152 -3LL : 0x3.2cbfd4a7adc79054p+48 : inexact-ok
+= rootn upward intel96 0x8p-152 -3LL : 0x3.2cbfd4a7adc79058p+48 : inexact-ok
+= rootn downward m68k96 0x8p-152 -3LL : 0x3.2cbfd4a7adc79054p+48 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 -3LL : 0x3.2cbfd4a7adc79058p+48 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 -3LL : 0x3.2cbfd4a7adc79054p+48 : inexact-ok
+= rootn upward m68k96 0x8p-152 -3LL : 0x3.2cbfd4a7adc79058p+48 : inexact-ok
+= rootn downward binary128 0x8p-152 -3LL : 0x3.2cbfd4a7adc790560b3335687b88p+48 : inexact-ok
+= rootn tonearest binary128 0x8p-152 -3LL : 0x3.2cbfd4a7adc790560b3335687b8ap+48 : inexact-ok
+= rootn towardzero binary128 0x8p-152 -3LL : 0x3.2cbfd4a7adc790560b3335687b88p+48 : inexact-ok
+= rootn upward binary128 0x8p-152 -3LL : 0x3.2cbfd4a7adc790560b3335687b8ap+48 : inexact-ok
+= rootn downward ibm128 0x8p-152 -3LL : 0x3.2cbfd4a7adc790560b3335687bp+48 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 -3LL : 0x3.2cbfd4a7adc790560b3335687cp+48 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 -3LL : 0x3.2cbfd4a7adc790560b3335687bp+48 : inexact-ok
+= rootn upward ibm128 0x8p-152 -3LL : 0x3.2cbfd4a7adc790560b3335687cp+48 : inexact-ok
+= rootn downward binary64 0x4p-1076 -3LL : 0x4p+356 : inexact-ok
+= rootn tonearest binary64 0x4p-1076 -3LL : 0x4p+356 : inexact-ok
+= rootn towardzero binary64 0x4p-1076 -3LL : 0x4p+356 : inexact-ok
+= rootn upward binary64 0x4p-1076 -3LL : 0x4p+356 : inexact-ok
+= rootn downward intel96 0x4p-1076 -3LL : 0x4p+356 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 -3LL : 0x4p+356 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 -3LL : 0x4p+356 : inexact-ok
+= rootn upward intel96 0x4p-1076 -3LL : 0x4p+356 : inexact-ok
+= rootn downward m68k96 0x4p-1076 -3LL : 0x4p+356 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 -3LL : 0x4p+356 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 -3LL : 0x4p+356 : inexact-ok
+= rootn upward m68k96 0x4p-1076 -3LL : 0x4p+356 : inexact-ok
+= rootn downward binary128 0x4p-1076 -3LL : 0x4p+356 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 -3LL : 0x4p+356 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 -3LL : 0x4p+356 : inexact-ok
+= rootn upward binary128 0x4p-1076 -3LL : 0x4p+356 : inexact-ok
+= rootn downward ibm128 0x4p-1076 -3LL : 0x4p+356 : inexact-ok
+= rootn tonearest ibm128 0x4p-1076 -3LL : 0x4p+356 : inexact-ok
+= rootn towardzero ibm128 0x4p-1076 -3LL : 0x4p+356 : inexact-ok
+= rootn upward ibm128 0x4p-1076 -3LL : 0x4p+356 : inexact-ok
+= rootn downward intel96 0x8p-16448 -3LL : 0x3.2cbfd4a7adc79054p+5480 : inexact-ok
+= rootn tonearest intel96 0x8p-16448 -3LL : 0x3.2cbfd4a7adc79058p+5480 : inexact-ok
+= rootn towardzero intel96 0x8p-16448 -3LL : 0x3.2cbfd4a7adc79054p+5480 : inexact-ok
+= rootn upward intel96 0x8p-16448 -3LL : 0x3.2cbfd4a7adc79058p+5480 : inexact-ok
+= rootn downward m68k96 0x8p-16448 -3LL : 0x3.2cbfd4a7adc79054p+5480 : inexact-ok
+= rootn tonearest m68k96 0x8p-16448 -3LL : 0x3.2cbfd4a7adc79058p+5480 : inexact-ok
+= rootn towardzero m68k96 0x8p-16448 -3LL : 0x3.2cbfd4a7adc79054p+5480 : inexact-ok
+= rootn upward m68k96 0x8p-16448 -3LL : 0x3.2cbfd4a7adc79058p+5480 : inexact-ok
+= rootn downward binary128 0x8p-16448 -3LL : 0x3.2cbfd4a7adc790560b3335687b88p+5480 : inexact-ok
+= rootn tonearest binary128 0x8p-16448 -3LL : 0x3.2cbfd4a7adc790560b3335687b8ap+5480 : inexact-ok
+= rootn towardzero binary128 0x8p-16448 -3LL : 0x3.2cbfd4a7adc790560b3335687b88p+5480 : inexact-ok
+= rootn upward binary128 0x8p-16448 -3LL : 0x3.2cbfd4a7adc790560b3335687b8ap+5480 : inexact-ok
+= rootn downward m68k96 0x4p-16448 -3LL : 0x4p+5480 : inexact-ok
+= rootn tonearest m68k96 0x4p-16448 -3LL : 0x4p+5480 : inexact-ok
+= rootn towardzero m68k96 0x4p-16448 -3LL : 0x4p+5480 : inexact-ok
+= rootn upward m68k96 0x4p-16448 -3LL : 0x4p+5480 : inexact-ok
+= rootn downward binary128 0x4p-16448 -3LL : 0x4p+5480 : inexact-ok
+= rootn tonearest binary128 0x4p-16448 -3LL : 0x4p+5480 : inexact-ok
+= rootn towardzero binary128 0x4p-16448 -3LL : 0x4p+5480 : inexact-ok
+= rootn upward binary128 0x4p-16448 -3LL : 0x4p+5480 : inexact-ok
+= rootn downward binary128 0x4p-16496 -3LL : 0x4p+5496 : inexact-ok
+= rootn tonearest binary128 0x4p-16496 -3LL : 0x4p+5496 : inexact-ok
+= rootn towardzero binary128 0x4p-16496 -3LL : 0x4p+5496 : inexact-ok
+= rootn upward binary128 0x4p-16496 -3LL : 0x4p+5496 : inexact-ok
+rootn min_subnorm -4
+= rootn downward binary32 0x8p-152 -4LL : 0x2.60dfcp+36 : inexact-ok
+= rootn tonearest binary32 0x8p-152 -4LL : 0x2.60dfcp+36 : inexact-ok
+= rootn towardzero binary32 0x8p-152 -4LL : 0x2.60dfcp+36 : inexact-ok
+= rootn upward binary32 0x8p-152 -4LL : 0x2.60dfc4p+36 : inexact-ok
+= rootn downward binary64 0x8p-152 -4LL : 0x2.60dfc14636e2ap+36 : inexact-ok
+= rootn tonearest binary64 0x8p-152 -4LL : 0x2.60dfc14636e2ap+36 : inexact-ok
+= rootn towardzero binary64 0x8p-152 -4LL : 0x2.60dfc14636e2ap+36 : inexact-ok
+= rootn upward binary64 0x8p-152 -4LL : 0x2.60dfc14636e2cp+36 : inexact-ok
+= rootn downward intel96 0x8p-152 -4LL : 0x2.60dfc14636e2a5bcp+36 : inexact-ok
+= rootn tonearest intel96 0x8p-152 -4LL : 0x2.60dfc14636e2a5bcp+36 : inexact-ok
+= rootn towardzero intel96 0x8p-152 -4LL : 0x2.60dfc14636e2a5bcp+36 : inexact-ok
+= rootn upward intel96 0x8p-152 -4LL : 0x2.60dfc14636e2a5cp+36 : inexact-ok
+= rootn downward m68k96 0x8p-152 -4LL : 0x2.60dfc14636e2a5bcp+36 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 -4LL : 0x2.60dfc14636e2a5bcp+36 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 -4LL : 0x2.60dfc14636e2a5bcp+36 : inexact-ok
+= rootn upward m68k96 0x8p-152 -4LL : 0x2.60dfc14636e2a5cp+36 : inexact-ok
+= rootn downward binary128 0x8p-152 -4LL : 0x2.60dfc14636e2a5bd1ab48c60b90ap+36 : inexact-ok
+= rootn tonearest binary128 0x8p-152 -4LL : 0x2.60dfc14636e2a5bd1ab48c60b90cp+36 : inexact-ok
+= rootn towardzero binary128 0x8p-152 -4LL : 0x2.60dfc14636e2a5bd1ab48c60b90ap+36 : inexact-ok
+= rootn upward binary128 0x8p-152 -4LL : 0x2.60dfc14636e2a5bd1ab48c60b90cp+36 : inexact-ok
+= rootn downward ibm128 0x8p-152 -4LL : 0x2.60dfc14636e2a5bd1ab48c60b9p+36 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 -4LL : 0x2.60dfc14636e2a5bd1ab48c60b9p+36 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 -4LL : 0x2.60dfc14636e2a5bd1ab48c60b9p+36 : inexact-ok
+= rootn upward ibm128 0x8p-152 -4LL : 0x2.60dfc14636e2a5bd1ab48c60bap+36 : inexact-ok
+= rootn downward binary64 0x4p-1076 -4LL : 0x1.6a09e667f3bccp+268 : inexact-ok
+= rootn tonearest binary64 0x4p-1076 -4LL : 0x1.6a09e667f3bcdp+268 : inexact-ok
+= rootn towardzero binary64 0x4p-1076 -4LL : 0x1.6a09e667f3bccp+268 : inexact-ok
+= rootn upward binary64 0x4p-1076 -4LL : 0x1.6a09e667f3bcdp+268 : inexact-ok
+= rootn downward intel96 0x4p-1076 -4LL : 0x1.6a09e667f3bcc908p+268 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 -4LL : 0x1.6a09e667f3bcc908p+268 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 -4LL : 0x1.6a09e667f3bcc908p+268 : inexact-ok
+= rootn upward intel96 0x4p-1076 -4LL : 0x1.6a09e667f3bcc90ap+268 : inexact-ok
+= rootn downward m68k96 0x4p-1076 -4LL : 0x1.6a09e667f3bcc908p+268 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 -4LL : 0x1.6a09e667f3bcc908p+268 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 -4LL : 0x1.6a09e667f3bcc908p+268 : inexact-ok
+= rootn upward m68k96 0x4p-1076 -4LL : 0x1.6a09e667f3bcc90ap+268 : inexact-ok
+= rootn downward binary128 0x4p-1076 -4LL : 0x1.6a09e667f3bcc908b2fb1366ea95p+268 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 -4LL : 0x1.6a09e667f3bcc908b2fb1366ea95p+268 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 -4LL : 0x1.6a09e667f3bcc908b2fb1366ea95p+268 : inexact-ok
+= rootn upward binary128 0x4p-1076 -4LL : 0x1.6a09e667f3bcc908b2fb1366ea96p+268 : inexact-ok
+= rootn downward ibm128 0x4p-1076 -4LL : 0x1.6a09e667f3bcc908b2fb1366ea8p+268 : inexact-ok
+= rootn tonearest ibm128 0x4p-1076 -4LL : 0x1.6a09e667f3bcc908b2fb1366ea8p+268 : inexact-ok
+= rootn towardzero ibm128 0x4p-1076 -4LL : 0x1.6a09e667f3bcc908b2fb1366ea8p+268 : inexact-ok
+= rootn upward ibm128 0x4p-1076 -4LL : 0x1.6a09e667f3bcc908b2fb1366ebp+268 : inexact-ok
+= rootn downward intel96 0x8p-16448 -4LL : 0x9.837f0518db8a96fp+4108 : inexact-ok
+= rootn tonearest intel96 0x8p-16448 -4LL : 0x9.837f0518db8a96fp+4108 : inexact-ok
+= rootn towardzero intel96 0x8p-16448 -4LL : 0x9.837f0518db8a96fp+4108 : inexact-ok
+= rootn upward intel96 0x8p-16448 -4LL : 0x9.837f0518db8a97p+4108 : inexact-ok
+= rootn downward m68k96 0x8p-16448 -4LL : 0x9.837f0518db8a96fp+4108 : inexact-ok
+= rootn tonearest m68k96 0x8p-16448 -4LL : 0x9.837f0518db8a96fp+4108 : inexact-ok
+= rootn towardzero m68k96 0x8p-16448 -4LL : 0x9.837f0518db8a96fp+4108 : inexact-ok
+= rootn upward m68k96 0x8p-16448 -4LL : 0x9.837f0518db8a97p+4108 : inexact-ok
+= rootn downward binary128 0x8p-16448 -4LL : 0x9.837f0518db8a96f46ad23182e428p+4108 : inexact-ok
+= rootn tonearest binary128 0x8p-16448 -4LL : 0x9.837f0518db8a96f46ad23182e43p+4108 : inexact-ok
+= rootn towardzero binary128 0x8p-16448 -4LL : 0x9.837f0518db8a96f46ad23182e428p+4108 : inexact-ok
+= rootn upward binary128 0x8p-16448 -4LL : 0x9.837f0518db8a96f46ad23182e43p+4108 : inexact-ok
+= rootn downward m68k96 0x4p-16448 -4LL : 0xb.504f333f9de6484p+4108 : inexact-ok
+= rootn tonearest m68k96 0x4p-16448 -4LL : 0xb.504f333f9de6484p+4108 : inexact-ok
+= rootn towardzero m68k96 0x4p-16448 -4LL : 0xb.504f333f9de6484p+4108 : inexact-ok
+= rootn upward m68k96 0x4p-16448 -4LL : 0xb.504f333f9de6485p+4108 : inexact-ok
+= rootn downward binary128 0x4p-16448 -4LL : 0xb.504f333f9de6484597d89b3754a8p+4108 : inexact-ok
+= rootn tonearest binary128 0x4p-16448 -4LL : 0xb.504f333f9de6484597d89b3754a8p+4108 : inexact-ok
+= rootn towardzero binary128 0x4p-16448 -4LL : 0xb.504f333f9de6484597d89b3754a8p+4108 : inexact-ok
+= rootn upward binary128 0x4p-16448 -4LL : 0xb.504f333f9de6484597d89b3754bp+4108 : inexact-ok
+= rootn downward binary128 0x4p-16496 -4LL : 0xb.504f333f9de6484597d89b3754a8p+4120 : inexact-ok
+= rootn tonearest binary128 0x4p-16496 -4LL : 0xb.504f333f9de6484597d89b3754a8p+4120 : inexact-ok
+= rootn towardzero binary128 0x4p-16496 -4LL : 0xb.504f333f9de6484597d89b3754a8p+4120 : inexact-ok
+= rootn upward binary128 0x4p-16496 -4LL : 0xb.504f333f9de6484597d89b3754bp+4120 : inexact-ok
+rootn min_subnorm -5
+= rootn downward binary32 0x8p-152 -5LL : 0x3.7b7198p+28 : inexact-ok
+= rootn tonearest binary32 0x8p-152 -5LL : 0x3.7b719cp+28 : inexact-ok
+= rootn towardzero binary32 0x8p-152 -5LL : 0x3.7b7198p+28 : inexact-ok
+= rootn upward binary32 0x8p-152 -5LL : 0x3.7b719cp+28 : inexact-ok
+= rootn downward binary64 0x8p-152 -5LL : 0x3.7b719b5b7c24p+28 : inexact-ok
+= rootn tonearest binary64 0x8p-152 -5LL : 0x3.7b719b5b7c24p+28 : inexact-ok
+= rootn towardzero binary64 0x8p-152 -5LL : 0x3.7b719b5b7c24p+28 : inexact-ok
+= rootn upward binary64 0x8p-152 -5LL : 0x3.7b719b5b7c242p+28 : inexact-ok
+= rootn downward intel96 0x8p-152 -5LL : 0x3.7b719b5b7c240428p+28 : inexact-ok
+= rootn tonearest intel96 0x8p-152 -5LL : 0x3.7b719b5b7c240428p+28 : inexact-ok
+= rootn towardzero intel96 0x8p-152 -5LL : 0x3.7b719b5b7c240428p+28 : inexact-ok
+= rootn upward intel96 0x8p-152 -5LL : 0x3.7b719b5b7c24042cp+28 : inexact-ok
+= rootn downward m68k96 0x8p-152 -5LL : 0x3.7b719b5b7c240428p+28 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 -5LL : 0x3.7b719b5b7c240428p+28 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 -5LL : 0x3.7b719b5b7c240428p+28 : inexact-ok
+= rootn upward m68k96 0x8p-152 -5LL : 0x3.7b719b5b7c24042cp+28 : inexact-ok
+= rootn downward binary128 0x8p-152 -5LL : 0x3.7b719b5b7c240429ec3a6164ff52p+28 : inexact-ok
+= rootn tonearest binary128 0x8p-152 -5LL : 0x3.7b719b5b7c240429ec3a6164ff52p+28 : inexact-ok
+= rootn towardzero binary128 0x8p-152 -5LL : 0x3.7b719b5b7c240429ec3a6164ff52p+28 : inexact-ok
+= rootn upward binary128 0x8p-152 -5LL : 0x3.7b719b5b7c240429ec3a6164ff54p+28 : inexact-ok
+= rootn downward ibm128 0x8p-152 -5LL : 0x3.7b719b5b7c240429ec3a6164ffp+28 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 -5LL : 0x3.7b719b5b7c240429ec3a6164ffp+28 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 -5LL : 0x3.7b719b5b7c240429ec3a6164ffp+28 : inexact-ok
+= rootn upward ibm128 0x8p-152 -5LL : 0x3.7b719b5b7c240429ec3a6165p+28 : inexact-ok
+= rootn downward binary64 0x4p-1076 -5LL : 0x6.f6e336b6f848p+212 : inexact-ok
+= rootn tonearest binary64 0x4p-1076 -5LL : 0x6.f6e336b6f848p+212 : inexact-ok
+= rootn towardzero binary64 0x4p-1076 -5LL : 0x6.f6e336b6f848p+212 : inexact-ok
+= rootn upward binary64 0x4p-1076 -5LL : 0x6.f6e336b6f8484p+212 : inexact-ok
+= rootn downward intel96 0x4p-1076 -5LL : 0x6.f6e336b6f848085p+212 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 -5LL : 0x6.f6e336b6f848085p+212 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 -5LL : 0x6.f6e336b6f848085p+212 : inexact-ok
+= rootn upward intel96 0x4p-1076 -5LL : 0x6.f6e336b6f8480858p+212 : inexact-ok
+= rootn downward m68k96 0x4p-1076 -5LL : 0x6.f6e336b6f848085p+212 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 -5LL : 0x6.f6e336b6f848085p+212 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 -5LL : 0x6.f6e336b6f848085p+212 : inexact-ok
+= rootn upward m68k96 0x4p-1076 -5LL : 0x6.f6e336b6f8480858p+212 : inexact-ok
+= rootn downward binary128 0x4p-1076 -5LL : 0x6.f6e336b6f8480853d874c2c9fea4p+212 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 -5LL : 0x6.f6e336b6f8480853d874c2c9fea4p+212 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 -5LL : 0x6.f6e336b6f8480853d874c2c9fea4p+212 : inexact-ok
+= rootn upward binary128 0x4p-1076 -5LL : 0x6.f6e336b6f8480853d874c2c9fea8p+212 : inexact-ok
+= rootn downward ibm128 0x4p-1076 -5LL : 0x6.f6e336b6f8480853d874c2c9fep+212 : inexact-ok
+= rootn tonearest ibm128 0x4p-1076 -5LL : 0x6.f6e336b6f8480853d874c2c9fep+212 : inexact-ok
+= rootn towardzero ibm128 0x4p-1076 -5LL : 0x6.f6e336b6f8480853d874c2c9fep+212 : inexact-ok
+= rootn upward ibm128 0x4p-1076 -5LL : 0x6.f6e336b6f8480853d874c2cap+212 : inexact-ok
+= rootn downward intel96 0x8p-16448 -5LL : 0x2p+3288 : inexact-ok
+= rootn tonearest intel96 0x8p-16448 -5LL : 0x2p+3288 : inexact-ok
+= rootn towardzero intel96 0x8p-16448 -5LL : 0x2p+3288 : inexact-ok
+= rootn upward intel96 0x8p-16448 -5LL : 0x2p+3288 : inexact-ok
+= rootn downward m68k96 0x8p-16448 -5LL : 0x2p+3288 : inexact-ok
+= rootn tonearest m68k96 0x8p-16448 -5LL : 0x2p+3288 : inexact-ok
+= rootn towardzero m68k96 0x8p-16448 -5LL : 0x2p+3288 : inexact-ok
+= rootn upward m68k96 0x8p-16448 -5LL : 0x2p+3288 : inexact-ok
+= rootn downward binary128 0x8p-16448 -5LL : 0x2p+3288 : inexact-ok
+= rootn tonearest binary128 0x8p-16448 -5LL : 0x2p+3288 : inexact-ok
+= rootn towardzero binary128 0x8p-16448 -5LL : 0x2p+3288 : inexact-ok
+= rootn upward binary128 0x8p-16448 -5LL : 0x2p+3288 : inexact-ok
+= rootn downward m68k96 0x4p-16448 -5LL : 0x2.4c2230d75cce92d4p+3288 : inexact-ok
+= rootn tonearest m68k96 0x4p-16448 -5LL : 0x2.4c2230d75cce92d4p+3288 : inexact-ok
+= rootn towardzero m68k96 0x4p-16448 -5LL : 0x2.4c2230d75cce92d4p+3288 : inexact-ok
+= rootn upward m68k96 0x4p-16448 -5LL : 0x2.4c2230d75cce92d8p+3288 : inexact-ok
+= rootn downward binary128 0x4p-16448 -5LL : 0x2.4c2230d75cce92d4a43c840ec1c2p+3288 : inexact-ok
+= rootn tonearest binary128 0x4p-16448 -5LL : 0x2.4c2230d75cce92d4a43c840ec1c4p+3288 : inexact-ok
+= rootn towardzero binary128 0x4p-16448 -5LL : 0x2.4c2230d75cce92d4a43c840ec1c2p+3288 : inexact-ok
+= rootn upward binary128 0x4p-16448 -5LL : 0x2.4c2230d75cce92d4a43c840ec1c4p+3288 : inexact-ok
+= rootn downward binary128 0x4p-16496 -5LL : 0x6.f6e336b6f8480853d874c2c9fea4p+3296 : inexact-ok
+= rootn tonearest binary128 0x4p-16496 -5LL : 0x6.f6e336b6f8480853d874c2c9fea4p+3296 : inexact-ok
+= rootn towardzero binary128 0x4p-16496 -5LL : 0x6.f6e336b6f8480853d874c2c9fea4p+3296 : inexact-ok
+= rootn upward binary128 0x4p-16496 -5LL : 0x6.f6e336b6f8480853d874c2c9fea8p+3296 : inexact-ok
+rootn min_subnorm -63
+= rootn downward binary32 0x8p-152 -63LL : 0x5.26ddp+0 : inexact-ok
+= rootn tonearest binary32 0x8p-152 -63LL : 0x5.26ddp+0 : inexact-ok
+= rootn towardzero binary32 0x8p-152 -63LL : 0x5.26ddp+0 : inexact-ok
+= rootn upward binary32 0x8p-152 -63LL : 0x5.26dd08p+0 : inexact-ok
+= rootn downward binary64 0x8p-152 -63LL : 0x5.26dd03d17872p+0 : inexact-ok
+= rootn tonearest binary64 0x8p-152 -63LL : 0x5.26dd03d17872p+0 : inexact-ok
+= rootn towardzero binary64 0x8p-152 -63LL : 0x5.26dd03d17872p+0 : inexact-ok
+= rootn upward binary64 0x8p-152 -63LL : 0x5.26dd03d178724p+0 : inexact-ok
+= rootn downward intel96 0x8p-152 -63LL : 0x5.26dd03d1787203p+0 : inexact-ok
+= rootn tonearest intel96 0x8p-152 -63LL : 0x5.26dd03d178720308p+0 : inexact-ok
+= rootn towardzero intel96 0x8p-152 -63LL : 0x5.26dd03d1787203p+0 : inexact-ok
+= rootn upward intel96 0x8p-152 -63LL : 0x5.26dd03d178720308p+0 : inexact-ok
+= rootn downward m68k96 0x8p-152 -63LL : 0x5.26dd03d1787203p+0 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 -63LL : 0x5.26dd03d178720308p+0 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 -63LL : 0x5.26dd03d1787203p+0 : inexact-ok
+= rootn upward m68k96 0x8p-152 -63LL : 0x5.26dd03d178720308p+0 : inexact-ok
+= rootn downward binary128 0x8p-152 -63LL : 0x5.26dd03d178720304b788bfab2e14p+0 : inexact-ok
+= rootn tonearest binary128 0x8p-152 -63LL : 0x5.26dd03d178720304b788bfab2e14p+0 : inexact-ok
+= rootn towardzero binary128 0x8p-152 -63LL : 0x5.26dd03d178720304b788bfab2e14p+0 : inexact-ok
+= rootn upward binary128 0x8p-152 -63LL : 0x5.26dd03d178720304b788bfab2e18p+0 : inexact-ok
+= rootn downward ibm128 0x8p-152 -63LL : 0x5.26dd03d178720304b788bfab2ep+0 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 -63LL : 0x5.26dd03d178720304b788bfab2ep+0 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 -63LL : 0x5.26dd03d178720304b788bfab2ep+0 : inexact-ok
+= rootn upward ibm128 0x8p-152 -63LL : 0x5.26dd03d178720304b788bfab3p+0 : inexact-ok
+= rootn downward binary64 0x4p-1076 -63LL : 0x2.112e7c591538cp+16 : inexact-ok
+= rootn tonearest binary64 0x4p-1076 -63LL : 0x2.112e7c591538cp+16 : inexact-ok
+= rootn towardzero binary64 0x4p-1076 -63LL : 0x2.112e7c591538cp+16 : inexact-ok
+= rootn upward binary64 0x4p-1076 -63LL : 0x2.112e7c591538ep+16 : inexact-ok
+= rootn downward intel96 0x4p-1076 -63LL : 0x2.112e7c591538c194p+16 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 -63LL : 0x2.112e7c591538c198p+16 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 -63LL : 0x2.112e7c591538c194p+16 : inexact-ok
+= rootn upward intel96 0x4p-1076 -63LL : 0x2.112e7c591538c198p+16 : inexact-ok
+= rootn downward m68k96 0x4p-1076 -63LL : 0x2.112e7c591538c194p+16 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 -63LL : 0x2.112e7c591538c198p+16 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 -63LL : 0x2.112e7c591538c194p+16 : inexact-ok
+= rootn upward m68k96 0x4p-1076 -63LL : 0x2.112e7c591538c198p+16 : inexact-ok
+= rootn downward binary128 0x4p-1076 -63LL : 0x2.112e7c591538c1967e80a6b18664p+16 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 -63LL : 0x2.112e7c591538c1967e80a6b18666p+16 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 -63LL : 0x2.112e7c591538c1967e80a6b18664p+16 : inexact-ok
+= rootn upward binary128 0x4p-1076 -63LL : 0x2.112e7c591538c1967e80a6b18666p+16 : inexact-ok
+= rootn downward ibm128 0x4p-1076 -63LL : 0x2.112e7c591538c1967e80a6b186p+16 : inexact-ok
+= rootn tonearest ibm128 0x4p-1076 -63LL : 0x2.112e7c591538c1967e80a6b186p+16 : inexact-ok
+= rootn towardzero ibm128 0x4p-1076 -63LL : 0x2.112e7c591538c1967e80a6b186p+16 : inexact-ok
+= rootn upward ibm128 0x4p-1076 -63LL : 0x2.112e7c591538c1967e80a6b187p+16 : inexact-ok
+= rootn downward intel96 0x8p-16448 -63LL : 0x2.0b6429d2247e1dap+260 : inexact-ok
+= rootn tonearest intel96 0x8p-16448 -63LL : 0x2.0b6429d2247e1dap+260 : inexact-ok
+= rootn towardzero intel96 0x8p-16448 -63LL : 0x2.0b6429d2247e1dap+260 : inexact-ok
+= rootn upward intel96 0x8p-16448 -63LL : 0x2.0b6429d2247e1da4p+260 : inexact-ok
+= rootn downward m68k96 0x8p-16448 -63LL : 0x2.0b6429d2247e1dap+260 : inexact-ok
+= rootn tonearest m68k96 0x8p-16448 -63LL : 0x2.0b6429d2247e1dap+260 : inexact-ok
+= rootn towardzero m68k96 0x8p-16448 -63LL : 0x2.0b6429d2247e1dap+260 : inexact-ok
+= rootn upward m68k96 0x8p-16448 -63LL : 0x2.0b6429d2247e1da4p+260 : inexact-ok
+= rootn downward binary128 0x8p-16448 -63LL : 0x2.0b6429d2247e1da02a7b95057b6ep+260 : inexact-ok
+= rootn tonearest binary128 0x8p-16448 -63LL : 0x2.0b6429d2247e1da02a7b95057b6ep+260 : inexact-ok
+= rootn towardzero binary128 0x8p-16448 -63LL : 0x2.0b6429d2247e1da02a7b95057b6ep+260 : inexact-ok
+= rootn upward binary128 0x8p-16448 -63LL : 0x2.0b6429d2247e1da02a7b95057b7p+260 : inexact-ok
+= rootn downward m68k96 0x4p-16448 -63LL : 0x2.112e7c591538c194p+260 : inexact-ok
+= rootn tonearest m68k96 0x4p-16448 -63LL : 0x2.112e7c591538c198p+260 : inexact-ok
+= rootn towardzero m68k96 0x4p-16448 -63LL : 0x2.112e7c591538c194p+260 : inexact-ok
+= rootn upward m68k96 0x4p-16448 -63LL : 0x2.112e7c591538c198p+260 : inexact-ok
+= rootn downward binary128 0x4p-16448 -63LL : 0x2.112e7c591538c1967e80a6b18664p+260 : inexact-ok
+= rootn tonearest binary128 0x4p-16448 -63LL : 0x2.112e7c591538c1967e80a6b18666p+260 : inexact-ok
+= rootn towardzero binary128 0x4p-16448 -63LL : 0x2.112e7c591538c1967e80a6b18664p+260 : inexact-ok
+= rootn upward binary128 0x4p-16448 -63LL : 0x2.112e7c591538c1967e80a6b18666p+260 : inexact-ok
+= rootn downward binary128 0x4p-16496 -63LL : 0x3.815917f84d57c8e7269b280406c6p+260 : inexact-ok
+= rootn tonearest binary128 0x4p-16496 -63LL : 0x3.815917f84d57c8e7269b280406c6p+260 : inexact-ok
+= rootn towardzero binary128 0x4p-16496 -63LL : 0x3.815917f84d57c8e7269b280406c6p+260 : inexact-ok
+= rootn upward binary128 0x4p-16496 -63LL : 0x3.815917f84d57c8e7269b280406c8p+260 : inexact-ok
+rootn min_subnorm -127
+= rootn downward binary32 0x8p-152 -127LL : 0x2.415204p+0 : inexact-ok
+= rootn tonearest binary32 0x8p-152 -127LL : 0x2.415204p+0 : inexact-ok
+= rootn towardzero binary32 0x8p-152 -127LL : 0x2.415204p+0 : inexact-ok
+= rootn upward binary32 0x8p-152 -127LL : 0x2.415208p+0 : inexact-ok
+= rootn downward binary64 0x8p-152 -127LL : 0x2.41520478b997p+0 : inexact-ok
+= rootn tonearest binary64 0x8p-152 -127LL : 0x2.41520478b9972p+0 : inexact-ok
+= rootn towardzero binary64 0x8p-152 -127LL : 0x2.41520478b997p+0 : inexact-ok
+= rootn upward binary64 0x8p-152 -127LL : 0x2.41520478b9972p+0 : inexact-ok
+= rootn downward intel96 0x8p-152 -127LL : 0x2.41520478b99718c8p+0 : inexact-ok
+= rootn tonearest intel96 0x8p-152 -127LL : 0x2.41520478b99718ccp+0 : inexact-ok
+= rootn towardzero intel96 0x8p-152 -127LL : 0x2.41520478b99718c8p+0 : inexact-ok
+= rootn upward intel96 0x8p-152 -127LL : 0x2.41520478b99718ccp+0 : inexact-ok
+= rootn downward m68k96 0x8p-152 -127LL : 0x2.41520478b99718c8p+0 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 -127LL : 0x2.41520478b99718ccp+0 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 -127LL : 0x2.41520478b99718c8p+0 : inexact-ok
+= rootn upward m68k96 0x8p-152 -127LL : 0x2.41520478b99718ccp+0 : inexact-ok
+= rootn downward binary128 0x8p-152 -127LL : 0x2.41520478b99718cac68a82246df4p+0 : inexact-ok
+= rootn tonearest binary128 0x8p-152 -127LL : 0x2.41520478b99718cac68a82246df6p+0 : inexact-ok
+= rootn towardzero binary128 0x8p-152 -127LL : 0x2.41520478b99718cac68a82246df4p+0 : inexact-ok
+= rootn upward binary128 0x8p-152 -127LL : 0x2.41520478b99718cac68a82246df6p+0 : inexact-ok
+= rootn downward ibm128 0x8p-152 -127LL : 0x2.41520478b99718cac68a82246dp+0 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 -127LL : 0x2.41520478b99718cac68a82246ep+0 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 -127LL : 0x2.41520478b99718cac68a82246dp+0 : inexact-ok
+= rootn upward ibm128 0x8p-152 -127LL : 0x2.41520478b99718cac68a82246ep+0 : inexact-ok
+= rootn downward binary64 0x4p-1076 -127LL : 0x1.5f5519aefcdf3p+8 : inexact-ok
+= rootn tonearest binary64 0x4p-1076 -127LL : 0x1.5f5519aefcdf4p+8 : inexact-ok
+= rootn towardzero binary64 0x4p-1076 -127LL : 0x1.5f5519aefcdf3p+8 : inexact-ok
+= rootn upward binary64 0x4p-1076 -127LL : 0x1.5f5519aefcdf4p+8 : inexact-ok
+= rootn downward intel96 0x4p-1076 -127LL : 0x1.5f5519aefcdf3e3ap+8 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 -127LL : 0x1.5f5519aefcdf3e3ap+8 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 -127LL : 0x1.5f5519aefcdf3e3ap+8 : inexact-ok
+= rootn upward intel96 0x4p-1076 -127LL : 0x1.5f5519aefcdf3e3cp+8 : inexact-ok
+= rootn downward m68k96 0x4p-1076 -127LL : 0x1.5f5519aefcdf3e3ap+8 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 -127LL : 0x1.5f5519aefcdf3e3ap+8 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 -127LL : 0x1.5f5519aefcdf3e3ap+8 : inexact-ok
+= rootn upward m68k96 0x4p-1076 -127LL : 0x1.5f5519aefcdf3e3cp+8 : inexact-ok
+= rootn downward binary128 0x4p-1076 -127LL : 0x1.5f5519aefcdf3e3ab8df3f96a128p+8 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 -127LL : 0x1.5f5519aefcdf3e3ab8df3f96a129p+8 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 -127LL : 0x1.5f5519aefcdf3e3ab8df3f96a128p+8 : inexact-ok
+= rootn upward binary128 0x4p-1076 -127LL : 0x1.5f5519aefcdf3e3ab8df3f96a129p+8 : inexact-ok
+= rootn downward ibm128 0x4p-1076 -127LL : 0x1.5f5519aefcdf3e3ab8df3f96a1p+8 : inexact-ok
+= rootn tonearest ibm128 0x4p-1076 -127LL : 0x1.5f5519aefcdf3e3ab8df3f96a1p+8 : inexact-ok
+= rootn towardzero ibm128 0x4p-1076 -127LL : 0x1.5f5519aefcdf3e3ab8df3f96a1p+8 : inexact-ok
+= rootn upward ibm128 0x4p-1076 -127LL : 0x1.5f5519aefcdf3e3ab8df3f96a18p+8 : inexact-ok
+= rootn downward intel96 0x8p-16448 -127LL : 0x2.ce2c7676d88bc65p+128 : inexact-ok
+= rootn tonearest intel96 0x8p-16448 -127LL : 0x2.ce2c7676d88bc654p+128 : inexact-ok
+= rootn towardzero intel96 0x8p-16448 -127LL : 0x2.ce2c7676d88bc65p+128 : inexact-ok
+= rootn upward intel96 0x8p-16448 -127LL : 0x2.ce2c7676d88bc654p+128 : inexact-ok
+= rootn downward m68k96 0x8p-16448 -127LL : 0x2.ce2c7676d88bc65p+128 : inexact-ok
+= rootn tonearest m68k96 0x8p-16448 -127LL : 0x2.ce2c7676d88bc654p+128 : inexact-ok
+= rootn towardzero m68k96 0x8p-16448 -127LL : 0x2.ce2c7676d88bc65p+128 : inexact-ok
+= rootn upward m68k96 0x8p-16448 -127LL : 0x2.ce2c7676d88bc654p+128 : inexact-ok
+= rootn downward binary128 0x8p-16448 -127LL : 0x2.ce2c7676d88bc6535b867b1d1f4ep+128 : inexact-ok
+= rootn tonearest binary128 0x8p-16448 -127LL : 0x2.ce2c7676d88bc6535b867b1d1f5p+128 : inexact-ok
+= rootn towardzero binary128 0x8p-16448 -127LL : 0x2.ce2c7676d88bc6535b867b1d1f4ep+128 : inexact-ok
+= rootn upward binary128 0x8p-16448 -127LL : 0x2.ce2c7676d88bc6535b867b1d1f5p+128 : inexact-ok
+= rootn downward m68k96 0x4p-16448 -127LL : 0x2.d21aa542b59cee78p+128 : inexact-ok
+= rootn tonearest m68k96 0x4p-16448 -127LL : 0x2.d21aa542b59cee78p+128 : inexact-ok
+= rootn towardzero m68k96 0x4p-16448 -127LL : 0x2.d21aa542b59cee78p+128 : inexact-ok
+= rootn upward m68k96 0x4p-16448 -127LL : 0x2.d21aa542b59cee7cp+128 : inexact-ok
+= rootn downward binary128 0x4p-16448 -127LL : 0x2.d21aa542b59cee7834114d019038p+128 : inexact-ok
+= rootn tonearest binary128 0x4p-16448 -127LL : 0x2.d21aa542b59cee7834114d01903ap+128 : inexact-ok
+= rootn towardzero binary128 0x4p-16448 -127LL : 0x2.d21aa542b59cee7834114d019038p+128 : inexact-ok
+= rootn upward binary128 0x4p-16448 -127LL : 0x2.d21aa542b59cee7834114d01903ap+128 : inexact-ok
+= rootn downward binary128 0x4p-16496 -127LL : 0x3.aa5f2a07b8d898c56524b9945d6ap+128 : inexact-ok
+= rootn tonearest binary128 0x4p-16496 -127LL : 0x3.aa5f2a07b8d898c56524b9945d6cp+128 : inexact-ok
+= rootn towardzero binary128 0x4p-16496 -127LL : 0x3.aa5f2a07b8d898c56524b9945d6ap+128 : inexact-ok
+= rootn upward binary128 0x4p-16496 -127LL : 0x3.aa5f2a07b8d898c56524b9945d6cp+128 : inexact-ok
+rootn min_subnorm -255
+= rootn downward binary32 0x8p-152 -255LL : 0x1.7fd3ccp+0 : inexact-ok
+= rootn tonearest binary32 0x8p-152 -255LL : 0x1.7fd3cep+0 : inexact-ok
+= rootn towardzero binary32 0x8p-152 -255LL : 0x1.7fd3ccp+0 : inexact-ok
+= rootn upward binary32 0x8p-152 -255LL : 0x1.7fd3cep+0 : inexact-ok
+= rootn downward binary64 0x8p-152 -255LL : 0x1.7fd3cd8e3fd95p+0 : inexact-ok
+= rootn tonearest binary64 0x8p-152 -255LL : 0x1.7fd3cd8e3fd95p+0 : inexact-ok
+= rootn towardzero binary64 0x8p-152 -255LL : 0x1.7fd3cd8e3fd95p+0 : inexact-ok
+= rootn upward binary64 0x8p-152 -255LL : 0x1.7fd3cd8e3fd96p+0 : inexact-ok
+= rootn downward intel96 0x8p-152 -255LL : 0x1.7fd3cd8e3fd9518p+0 : inexact-ok
+= rootn tonearest intel96 0x8p-152 -255LL : 0x1.7fd3cd8e3fd9518p+0 : inexact-ok
+= rootn towardzero intel96 0x8p-152 -255LL : 0x1.7fd3cd8e3fd9518p+0 : inexact-ok
+= rootn upward intel96 0x8p-152 -255LL : 0x1.7fd3cd8e3fd95182p+0 : inexact-ok
+= rootn downward m68k96 0x8p-152 -255LL : 0x1.7fd3cd8e3fd9518p+0 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 -255LL : 0x1.7fd3cd8e3fd9518p+0 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 -255LL : 0x1.7fd3cd8e3fd9518p+0 : inexact-ok
+= rootn upward m68k96 0x8p-152 -255LL : 0x1.7fd3cd8e3fd95182p+0 : inexact-ok
+= rootn downward binary128 0x8p-152 -255LL : 0x1.7fd3cd8e3fd9518058f0a896793dp+0 : inexact-ok
+= rootn tonearest binary128 0x8p-152 -255LL : 0x1.7fd3cd8e3fd9518058f0a896793ep+0 : inexact-ok
+= rootn towardzero binary128 0x8p-152 -255LL : 0x1.7fd3cd8e3fd9518058f0a896793dp+0 : inexact-ok
+= rootn upward binary128 0x8p-152 -255LL : 0x1.7fd3cd8e3fd9518058f0a896793ep+0 : inexact-ok
+= rootn downward ibm128 0x8p-152 -255LL : 0x1.7fd3cd8e3fd9518058f0a89679p+0 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 -255LL : 0x1.7fd3cd8e3fd9518058f0a89679p+0 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 -255LL : 0x1.7fd3cd8e3fd9518058f0a89679p+0 : inexact-ok
+= rootn upward ibm128 0x8p-152 -255LL : 0x1.7fd3cd8e3fd9518058f0a896798p+0 : inexact-ok
+= rootn downward binary64 0x4p-1076 -255LL : 0x1.28797f79cb756p+4 : inexact-ok
+= rootn tonearest binary64 0x4p-1076 -255LL : 0x1.28797f79cb757p+4 : inexact-ok
+= rootn towardzero binary64 0x4p-1076 -255LL : 0x1.28797f79cb756p+4 : inexact-ok
+= rootn upward binary64 0x4p-1076 -255LL : 0x1.28797f79cb757p+4 : inexact-ok
+= rootn downward intel96 0x4p-1076 -255LL : 0x1.28797f79cb75696cp+4 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 -255LL : 0x1.28797f79cb75696cp+4 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 -255LL : 0x1.28797f79cb75696cp+4 : inexact-ok
+= rootn upward intel96 0x4p-1076 -255LL : 0x1.28797f79cb75696ep+4 : inexact-ok
+= rootn downward m68k96 0x4p-1076 -255LL : 0x1.28797f79cb75696cp+4 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 -255LL : 0x1.28797f79cb75696cp+4 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 -255LL : 0x1.28797f79cb75696cp+4 : inexact-ok
+= rootn upward m68k96 0x4p-1076 -255LL : 0x1.28797f79cb75696ep+4 : inexact-ok
+= rootn downward binary128 0x4p-1076 -255LL : 0x1.28797f79cb75696cbcc2b8a76259p+4 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 -255LL : 0x1.28797f79cb75696cbcc2b8a7625ap+4 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 -255LL : 0x1.28797f79cb75696cbcc2b8a76259p+4 : inexact-ok
+= rootn upward binary128 0x4p-1076 -255LL : 0x1.28797f79cb75696cbcc2b8a7625ap+4 : inexact-ok
+= rootn downward ibm128 0x4p-1076 -255LL : 0x1.28797f79cb75696cbcc2b8a762p+4 : inexact-ok
+= rootn tonearest ibm128 0x4p-1076 -255LL : 0x1.28797f79cb75696cbcc2b8a7628p+4 : inexact-ok
+= rootn towardzero ibm128 0x4p-1076 -255LL : 0x1.28797f79cb75696cbcc2b8a762p+4 : inexact-ok
+= rootn upward ibm128 0x4p-1076 -255LL : 0x1.28797f79cb75696cbcc2b8a7628p+4 : inexact-ok
+= rootn downward intel96 0x8p-16448 -255LL : 0x1.679635b09054dfc2p+64 : inexact-ok
+= rootn tonearest intel96 0x8p-16448 -255LL : 0x1.679635b09054dfc4p+64 : inexact-ok
+= rootn towardzero intel96 0x8p-16448 -255LL : 0x1.679635b09054dfc2p+64 : inexact-ok
+= rootn upward intel96 0x8p-16448 -255LL : 0x1.679635b09054dfc4p+64 : inexact-ok
+= rootn downward m68k96 0x8p-16448 -255LL : 0x1.679635b09054dfc2p+64 : inexact-ok
+= rootn tonearest m68k96 0x8p-16448 -255LL : 0x1.679635b09054dfc4p+64 : inexact-ok
+= rootn towardzero m68k96 0x8p-16448 -255LL : 0x1.679635b09054dfc2p+64 : inexact-ok
+= rootn upward m68k96 0x8p-16448 -255LL : 0x1.679635b09054dfc4p+64 : inexact-ok
+= rootn downward binary128 0x8p-16448 -255LL : 0x1.679635b09054dfc3fa2268a72232p+64 : inexact-ok
+= rootn tonearest binary128 0x8p-16448 -255LL : 0x1.679635b09054dfc3fa2268a72233p+64 : inexact-ok
+= rootn towardzero binary128 0x8p-16448 -255LL : 0x1.679635b09054dfc3fa2268a72232p+64 : inexact-ok
+= rootn upward binary128 0x8p-16448 -255LL : 0x1.679635b09054dfc3fa2268a72233p+64 : inexact-ok
+= rootn downward m68k96 0x4p-16448 -255LL : 0x1.6890c62b6ee1c9d6p+64 : inexact-ok
+= rootn tonearest m68k96 0x4p-16448 -255LL : 0x1.6890c62b6ee1c9d6p+64 : inexact-ok
+= rootn towardzero m68k96 0x4p-16448 -255LL : 0x1.6890c62b6ee1c9d6p+64 : inexact-ok
+= rootn upward m68k96 0x4p-16448 -255LL : 0x1.6890c62b6ee1c9d8p+64 : inexact-ok
+= rootn downward binary128 0x4p-16448 -255LL : 0x1.6890c62b6ee1c9d6c1792ff0f025p+64 : inexact-ok
+= rootn tonearest binary128 0x4p-16448 -255LL : 0x1.6890c62b6ee1c9d6c1792ff0f025p+64 : inexact-ok
+= rootn towardzero binary128 0x4p-16448 -255LL : 0x1.6890c62b6ee1c9d6c1792ff0f025p+64 : inexact-ok
+= rootn upward binary128 0x4p-16448 -255LL : 0x1.6890c62b6ee1c9d6c1792ff0f026p+64 : inexact-ok
+= rootn downward binary128 0x4p-16496 -255LL : 0x1.9ad1371e3daf0dc380d3dbba56c6p+64 : inexact-ok
+= rootn tonearest binary128 0x4p-16496 -255LL : 0x1.9ad1371e3daf0dc380d3dbba56c7p+64 : inexact-ok
+= rootn towardzero binary128 0x4p-16496 -255LL : 0x1.9ad1371e3daf0dc380d3dbba56c6p+64 : inexact-ok
+= rootn upward binary128 0x4p-16496 -255LL : 0x1.9ad1371e3daf0dc380d3dbba56c7p+64 : inexact-ok
+rootn min_subnorm -511
+= rootn downward binary32 0x8p-152 -511LL : 0x1.39570ap+0 : inexact-ok
+= rootn tonearest binary32 0x8p-152 -511LL : 0x1.39570ap+0 : inexact-ok
+= rootn towardzero binary32 0x8p-152 -511LL : 0x1.39570ap+0 : inexact-ok
+= rootn upward binary32 0x8p-152 -511LL : 0x1.39570cp+0 : inexact-ok
+= rootn downward binary64 0x8p-152 -511LL : 0x1.39570a0a97214p+0 : inexact-ok
+= rootn tonearest binary64 0x8p-152 -511LL : 0x1.39570a0a97214p+0 : inexact-ok
+= rootn towardzero binary64 0x8p-152 -511LL : 0x1.39570a0a97214p+0 : inexact-ok
+= rootn upward binary64 0x8p-152 -511LL : 0x1.39570a0a97215p+0 : inexact-ok
+= rootn downward intel96 0x8p-152 -511LL : 0x1.39570a0a972142a2p+0 : inexact-ok
+= rootn tonearest intel96 0x8p-152 -511LL : 0x1.39570a0a972142a4p+0 : inexact-ok
+= rootn towardzero intel96 0x8p-152 -511LL : 0x1.39570a0a972142a2p+0 : inexact-ok
+= rootn upward intel96 0x8p-152 -511LL : 0x1.39570a0a972142a4p+0 : inexact-ok
+= rootn downward m68k96 0x8p-152 -511LL : 0x1.39570a0a972142a2p+0 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 -511LL : 0x1.39570a0a972142a4p+0 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 -511LL : 0x1.39570a0a972142a2p+0 : inexact-ok
+= rootn upward m68k96 0x8p-152 -511LL : 0x1.39570a0a972142a4p+0 : inexact-ok
+= rootn downward binary128 0x8p-152 -511LL : 0x1.39570a0a972142a3999991308fcap+0 : inexact-ok
+= rootn tonearest binary128 0x8p-152 -511LL : 0x1.39570a0a972142a3999991308fcbp+0 : inexact-ok
+= rootn towardzero binary128 0x8p-152 -511LL : 0x1.39570a0a972142a3999991308fcap+0 : inexact-ok
+= rootn upward binary128 0x8p-152 -511LL : 0x1.39570a0a972142a3999991308fcbp+0 : inexact-ok
+= rootn downward ibm128 0x8p-152 -511LL : 0x1.39570a0a972142a3999991308f8p+0 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 -511LL : 0x1.39570a0a972142a3999991309p+0 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 -511LL : 0x1.39570a0a972142a3999991308f8p+0 : inexact-ok
+= rootn upward ibm128 0x8p-152 -511LL : 0x1.39570a0a972142a3999991309p+0 : inexact-ok
+= rootn downward binary64 0x4p-1076 -511LL : 0x4.4ad63052359ap+0 : inexact-ok
+= rootn tonearest binary64 0x4p-1076 -511LL : 0x4.4ad63052359a4p+0 : inexact-ok
+= rootn towardzero binary64 0x4p-1076 -511LL : 0x4.4ad63052359ap+0 : inexact-ok
+= rootn upward binary64 0x4p-1076 -511LL : 0x4.4ad63052359a4p+0 : inexact-ok
+= rootn downward intel96 0x4p-1076 -511LL : 0x4.4ad63052359a3a3p+0 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 -511LL : 0x4.4ad63052359a3a38p+0 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 -511LL : 0x4.4ad63052359a3a3p+0 : inexact-ok
+= rootn upward intel96 0x4p-1076 -511LL : 0x4.4ad63052359a3a38p+0 : inexact-ok
+= rootn downward m68k96 0x4p-1076 -511LL : 0x4.4ad63052359a3a3p+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 -511LL : 0x4.4ad63052359a3a38p+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 -511LL : 0x4.4ad63052359a3a3p+0 : inexact-ok
+= rootn upward m68k96 0x4p-1076 -511LL : 0x4.4ad63052359a3a38p+0 : inexact-ok
+= rootn downward binary128 0x4p-1076 -511LL : 0x4.4ad63052359a3a34478fc84ff7f8p+0 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 -511LL : 0x4.4ad63052359a3a34478fc84ff7f8p+0 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 -511LL : 0x4.4ad63052359a3a34478fc84ff7f8p+0 : inexact-ok
+= rootn upward binary128 0x4p-1076 -511LL : 0x4.4ad63052359a3a34478fc84ff7fcp+0 : inexact-ok
+= rootn downward ibm128 0x4p-1076 -511LL : 0x4.4ad63052359a3a34478fc84ff6p+0 : inexact-ok
+= rootn tonearest ibm128 0x4p-1076 -511LL : 0x4.4ad63052359a3a34478fc84ff8p+0 : inexact-ok
+= rootn towardzero ibm128 0x4p-1076 -511LL : 0x4.4ad63052359a3a34478fc84ff6p+0 : inexact-ok
+= rootn upward ibm128 0x4p-1076 -511LL : 0x4.4ad63052359a3a34478fc84ff8p+0 : inexact-ok
+= rootn downward intel96 0x8p-16448 -511LL : 0x1.226b79141841cc9cp+32 : inexact-ok
+= rootn tonearest intel96 0x8p-16448 -511LL : 0x1.226b79141841cc9ep+32 : inexact-ok
+= rootn towardzero intel96 0x8p-16448 -511LL : 0x1.226b79141841cc9cp+32 : inexact-ok
+= rootn upward intel96 0x8p-16448 -511LL : 0x1.226b79141841cc9ep+32 : inexact-ok
+= rootn downward m68k96 0x8p-16448 -511LL : 0x1.226b79141841cc9cp+32 : inexact-ok
+= rootn tonearest m68k96 0x8p-16448 -511LL : 0x1.226b79141841cc9ep+32 : inexact-ok
+= rootn towardzero m68k96 0x8p-16448 -511LL : 0x1.226b79141841cc9cp+32 : inexact-ok
+= rootn upward m68k96 0x8p-16448 -511LL : 0x1.226b79141841cc9ep+32 : inexact-ok
+= rootn downward binary128 0x8p-16448 -511LL : 0x1.226b79141841cc9dca90d3104e5bp+32 : inexact-ok
+= rootn tonearest binary128 0x8p-16448 -511LL : 0x1.226b79141841cc9dca90d3104e5cp+32 : inexact-ok
+= rootn towardzero binary128 0x8p-16448 -511LL : 0x1.226b79141841cc9dca90d3104e5bp+32 : inexact-ok
+= rootn upward binary128 0x8p-16448 -511LL : 0x1.226b79141841cc9dca90d3104e5cp+32 : inexact-ok
+= rootn downward m68k96 0x4p-16448 -511LL : 0x1.22d063e433fde548p+32 : inexact-ok
+= rootn tonearest m68k96 0x4p-16448 -511LL : 0x1.22d063e433fde548p+32 : inexact-ok
+= rootn towardzero m68k96 0x4p-16448 -511LL : 0x1.22d063e433fde548p+32 : inexact-ok
+= rootn upward m68k96 0x4p-16448 -511LL : 0x1.22d063e433fde54ap+32 : inexact-ok
+= rootn downward binary128 0x4p-16448 -511LL : 0x1.22d063e433fde548859274c57396p+32 : inexact-ok
+= rootn tonearest binary128 0x4p-16448 -511LL : 0x1.22d063e433fde548859274c57396p+32 : inexact-ok
+= rootn towardzero binary128 0x4p-16448 -511LL : 0x1.22d063e433fde548859274c57396p+32 : inexact-ok
+= rootn upward binary128 0x4p-16448 -511LL : 0x1.22d063e433fde548859274c57397p+32 : inexact-ok
+= rootn downward binary128 0x4p-16496 -511LL : 0x1.3660fd17e6a7c40ba029e833beecp+32 : inexact-ok
+= rootn tonearest binary128 0x4p-16496 -511LL : 0x1.3660fd17e6a7c40ba029e833beedp+32 : inexact-ok
+= rootn towardzero binary128 0x4p-16496 -511LL : 0x1.3660fd17e6a7c40ba029e833beecp+32 : inexact-ok
+= rootn upward binary128 0x4p-16496 -511LL : 0x1.3660fd17e6a7c40ba029e833beedp+32 : inexact-ok
+rootn min_subnorm -1023
+= rootn downward binary32 0x8p-152 -1023LL : 0x1.1b31d2p+0 : inexact-ok
+= rootn tonearest binary32 0x8p-152 -1023LL : 0x1.1b31d2p+0 : inexact-ok
+= rootn towardzero binary32 0x8p-152 -1023LL : 0x1.1b31d2p+0 : inexact-ok
+= rootn upward binary32 0x8p-152 -1023LL : 0x1.1b31d4p+0 : inexact-ok
+= rootn downward binary64 0x8p-152 -1023LL : 0x1.1b31d2a14e058p+0 : inexact-ok
+= rootn tonearest binary64 0x8p-152 -1023LL : 0x1.1b31d2a14e059p+0 : inexact-ok
+= rootn towardzero binary64 0x8p-152 -1023LL : 0x1.1b31d2a14e058p+0 : inexact-ok
+= rootn upward binary64 0x8p-152 -1023LL : 0x1.1b31d2a14e059p+0 : inexact-ok
+= rootn downward intel96 0x8p-152 -1023LL : 0x1.1b31d2a14e058f28p+0 : inexact-ok
+= rootn tonearest intel96 0x8p-152 -1023LL : 0x1.1b31d2a14e058f28p+0 : inexact-ok
+= rootn towardzero intel96 0x8p-152 -1023LL : 0x1.1b31d2a14e058f28p+0 : inexact-ok
+= rootn upward intel96 0x8p-152 -1023LL : 0x1.1b31d2a14e058f2ap+0 : inexact-ok
+= rootn downward m68k96 0x8p-152 -1023LL : 0x1.1b31d2a14e058f28p+0 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 -1023LL : 0x1.1b31d2a14e058f28p+0 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 -1023LL : 0x1.1b31d2a14e058f28p+0 : inexact-ok
+= rootn upward m68k96 0x8p-152 -1023LL : 0x1.1b31d2a14e058f2ap+0 : inexact-ok
+= rootn downward binary128 0x8p-152 -1023LL : 0x1.1b31d2a14e058f280259ac7790b8p+0 : inexact-ok
+= rootn tonearest binary128 0x8p-152 -1023LL : 0x1.1b31d2a14e058f280259ac7790b8p+0 : inexact-ok
+= rootn towardzero binary128 0x8p-152 -1023LL : 0x1.1b31d2a14e058f280259ac7790b8p+0 : inexact-ok
+= rootn upward binary128 0x8p-152 -1023LL : 0x1.1b31d2a14e058f280259ac7790b9p+0 : inexact-ok
+= rootn downward ibm128 0x8p-152 -1023LL : 0x1.1b31d2a14e058f280259ac77908p+0 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 -1023LL : 0x1.1b31d2a14e058f280259ac77908p+0 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 -1023LL : 0x1.1b31d2a14e058f280259ac77908p+0 : inexact-ok
+= rootn upward ibm128 0x8p-152 -1023LL : 0x1.1b31d2a14e058f280259ac7791p+0 : inexact-ok
+= rootn downward binary64 0x4p-1076 -1023LL : 0x2.1200741e15eccp+0 : inexact-ok
+= rootn tonearest binary64 0x4p-1076 -1023LL : 0x2.1200741e15eccp+0 : inexact-ok
+= rootn towardzero binary64 0x4p-1076 -1023LL : 0x2.1200741e15eccp+0 : inexact-ok
+= rootn upward binary64 0x4p-1076 -1023LL : 0x2.1200741e15ecep+0 : inexact-ok
+= rootn downward intel96 0x4p-1076 -1023LL : 0x2.1200741e15ecc5f4p+0 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 -1023LL : 0x2.1200741e15ecc5f4p+0 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 -1023LL : 0x2.1200741e15ecc5f4p+0 : inexact-ok
+= rootn upward intel96 0x4p-1076 -1023LL : 0x2.1200741e15ecc5f8p+0 : inexact-ok
+= rootn downward m68k96 0x4p-1076 -1023LL : 0x2.1200741e15ecc5f4p+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 -1023LL : 0x2.1200741e15ecc5f4p+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 -1023LL : 0x2.1200741e15ecc5f4p+0 : inexact-ok
+= rootn upward m68k96 0x4p-1076 -1023LL : 0x2.1200741e15ecc5f8p+0 : inexact-ok
+= rootn downward binary128 0x4p-1076 -1023LL : 0x2.1200741e15ecc5f43ae7cfdf1558p+0 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 -1023LL : 0x2.1200741e15ecc5f43ae7cfdf1558p+0 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 -1023LL : 0x2.1200741e15ecc5f43ae7cfdf1558p+0 : inexact-ok
+= rootn upward binary128 0x4p-1076 -1023LL : 0x2.1200741e15ecc5f43ae7cfdf155ap+0 : inexact-ok
+= rootn downward ibm128 0x4p-1076 -1023LL : 0x2.1200741e15ecc5f43ae7cfdf15p+0 : inexact-ok
+= rootn tonearest ibm128 0x4p-1076 -1023LL : 0x2.1200741e15ecc5f43ae7cfdf15p+0 : inexact-ok
+= rootn towardzero ibm128 0x4p-1076 -1023LL : 0x2.1200741e15ecc5f43ae7cfdf15p+0 : inexact-ok
+= rootn upward ibm128 0x4p-1076 -1023LL : 0x2.1200741e15ecc5f43ae7cfdf16p+0 : inexact-ok
+= rootn downward intel96 0x8p-16448 -1023LL : 0x1.0db5eed76e653dbcp+16 : inexact-ok
+= rootn tonearest intel96 0x8p-16448 -1023LL : 0x1.0db5eed76e653dbcp+16 : inexact-ok
+= rootn towardzero intel96 0x8p-16448 -1023LL : 0x1.0db5eed76e653dbcp+16 : inexact-ok
+= rootn upward intel96 0x8p-16448 -1023LL : 0x1.0db5eed76e653dbep+16 : inexact-ok
+= rootn downward m68k96 0x8p-16448 -1023LL : 0x1.0db5eed76e653dbcp+16 : inexact-ok
+= rootn tonearest m68k96 0x8p-16448 -1023LL : 0x1.0db5eed76e653dbcp+16 : inexact-ok
+= rootn towardzero m68k96 0x8p-16448 -1023LL : 0x1.0db5eed76e653dbcp+16 : inexact-ok
+= rootn upward m68k96 0x8p-16448 -1023LL : 0x1.0db5eed76e653dbep+16 : inexact-ok
+= rootn downward binary128 0x8p-16448 -1023LL : 0x1.0db5eed76e653dbc5c14bdf2f2bbp+16 : inexact-ok
+= rootn tonearest binary128 0x8p-16448 -1023LL : 0x1.0db5eed76e653dbc5c14bdf2f2bbp+16 : inexact-ok
+= rootn towardzero binary128 0x8p-16448 -1023LL : 0x1.0db5eed76e653dbc5c14bdf2f2bbp+16 : inexact-ok
+= rootn upward binary128 0x8p-16448 -1023LL : 0x1.0db5eed76e653dbc5c14bdf2f2bcp+16 : inexact-ok
+= rootn downward m68k96 0x4p-16448 -1023LL : 0x1.0de4bb58128865c2p+16 : inexact-ok
+= rootn tonearest m68k96 0x4p-16448 -1023LL : 0x1.0de4bb58128865c4p+16 : inexact-ok
+= rootn towardzero m68k96 0x4p-16448 -1023LL : 0x1.0de4bb58128865c2p+16 : inexact-ok
+= rootn upward m68k96 0x4p-16448 -1023LL : 0x1.0de4bb58128865c4p+16 : inexact-ok
+= rootn downward binary128 0x4p-16448 -1023LL : 0x1.0de4bb58128865c30c429a69edfep+16 : inexact-ok
+= rootn tonearest binary128 0x4p-16448 -1023LL : 0x1.0de4bb58128865c30c429a69edffp+16 : inexact-ok
+= rootn towardzero binary128 0x4p-16448 -1023LL : 0x1.0de4bb58128865c30c429a69edfep+16 : inexact-ok
+= rootn upward binary128 0x4p-16448 -1023LL : 0x1.0de4bb58128865c30c429a69edffp+16 : inexact-ok
+= rootn downward binary128 0x4p-16496 -1023LL : 0x1.16d0c722590bceb6f5f68d1fe41bp+16 : inexact-ok
+= rootn tonearest binary128 0x4p-16496 -1023LL : 0x1.16d0c722590bceb6f5f68d1fe41bp+16 : inexact-ok
+= rootn towardzero binary128 0x4p-16496 -1023LL : 0x1.16d0c722590bceb6f5f68d1fe41bp+16 : inexact-ok
+= rootn upward binary128 0x4p-16496 -1023LL : 0x1.16d0c722590bceb6f5f68d1fe41cp+16 : inexact-ok
+rootn min_subnorm -16383
+= rootn downward binary32 0x8p-152 -16383LL : 0x1.019e72p+0 : inexact-ok
+= rootn tonearest binary32 0x8p-152 -16383LL : 0x1.019e72p+0 : inexact-ok
+= rootn towardzero binary32 0x8p-152 -16383LL : 0x1.019e72p+0 : inexact-ok
+= rootn upward binary32 0x8p-152 -16383LL : 0x1.019e74p+0 : inexact-ok
+= rootn downward binary64 0x8p-152 -16383LL : 0x1.019e7226b2b5cp+0 : inexact-ok
+= rootn tonearest binary64 0x8p-152 -16383LL : 0x1.019e7226b2b5dp+0 : inexact-ok
+= rootn towardzero binary64 0x8p-152 -16383LL : 0x1.019e7226b2b5cp+0 : inexact-ok
+= rootn upward binary64 0x8p-152 -16383LL : 0x1.019e7226b2b5dp+0 : inexact-ok
+= rootn downward intel96 0x8p-152 -16383LL : 0x1.019e7226b2b5cdaep+0 : inexact-ok
+= rootn tonearest intel96 0x8p-152 -16383LL : 0x1.019e7226b2b5cdbp+0 : inexact-ok
+= rootn towardzero intel96 0x8p-152 -16383LL : 0x1.019e7226b2b5cdaep+0 : inexact-ok
+= rootn upward intel96 0x8p-152 -16383LL : 0x1.019e7226b2b5cdbp+0 : inexact-ok
+= rootn downward m68k96 0x8p-152 -16383LL : 0x1.019e7226b2b5cdaep+0 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 -16383LL : 0x1.019e7226b2b5cdbp+0 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 -16383LL : 0x1.019e7226b2b5cdaep+0 : inexact-ok
+= rootn upward m68k96 0x8p-152 -16383LL : 0x1.019e7226b2b5cdbp+0 : inexact-ok
+= rootn downward binary128 0x8p-152 -16383LL : 0x1.019e7226b2b5cdaf07955d868a7cp+0 : inexact-ok
+= rootn tonearest binary128 0x8p-152 -16383LL : 0x1.019e7226b2b5cdaf07955d868a7cp+0 : inexact-ok
+= rootn towardzero binary128 0x8p-152 -16383LL : 0x1.019e7226b2b5cdaf07955d868a7cp+0 : inexact-ok
+= rootn upward binary128 0x8p-152 -16383LL : 0x1.019e7226b2b5cdaf07955d868a7dp+0 : inexact-ok
+= rootn downward ibm128 0x8p-152 -16383LL : 0x1.019e7226b2b5cdaf07955d868ap+0 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 -16383LL : 0x1.019e7226b2b5cdaf07955d868a8p+0 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 -16383LL : 0x1.019e7226b2b5cdaf07955d868ap+0 : inexact-ok
+= rootn upward ibm128 0x8p-152 -16383LL : 0x1.019e7226b2b5cdaf07955d868a8p+0 : inexact-ok
+= rootn downward binary64 0x4p-1076 -16383LL : 0x1.0be6a31a645f2p+0 : inexact-ok
+= rootn tonearest binary64 0x4p-1076 -16383LL : 0x1.0be6a31a645f2p+0 : inexact-ok
+= rootn towardzero binary64 0x4p-1076 -16383LL : 0x1.0be6a31a645f2p+0 : inexact-ok
+= rootn upward binary64 0x4p-1076 -16383LL : 0x1.0be6a31a645f3p+0 : inexact-ok
+= rootn downward intel96 0x4p-1076 -16383LL : 0x1.0be6a31a645f272cp+0 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 -16383LL : 0x1.0be6a31a645f272cp+0 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 -16383LL : 0x1.0be6a31a645f272cp+0 : inexact-ok
+= rootn upward intel96 0x4p-1076 -16383LL : 0x1.0be6a31a645f272ep+0 : inexact-ok
+= rootn downward m68k96 0x4p-1076 -16383LL : 0x1.0be6a31a645f272cp+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 -16383LL : 0x1.0be6a31a645f272cp+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 -16383LL : 0x1.0be6a31a645f272cp+0 : inexact-ok
+= rootn upward m68k96 0x4p-1076 -16383LL : 0x1.0be6a31a645f272ep+0 : inexact-ok
+= rootn downward binary128 0x4p-1076 -16383LL : 0x1.0be6a31a645f272ccc8333dd2954p+0 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 -16383LL : 0x1.0be6a31a645f272ccc8333dd2954p+0 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 -16383LL : 0x1.0be6a31a645f272ccc8333dd2954p+0 : inexact-ok
+= rootn upward binary128 0x4p-1076 -16383LL : 0x1.0be6a31a645f272ccc8333dd2955p+0 : inexact-ok
+= rootn downward ibm128 0x4p-1076 -16383LL : 0x1.0be6a31a645f272ccc8333dd29p+0 : inexact-ok
+= rootn tonearest ibm128 0x4p-1076 -16383LL : 0x1.0be6a31a645f272ccc8333dd298p+0 : inexact-ok
+= rootn towardzero ibm128 0x4p-1076 -16383LL : 0x1.0be6a31a645f272ccc8333dd29p+0 : inexact-ok
+= rootn upward ibm128 0x4p-1076 -16383LL : 0x1.0be6a31a645f272ccc8333dd298p+0 : inexact-ok
+= rootn downward intel96 0x8p-16448 -16383LL : 0x2.015845f8f9422c84p+0 : inexact-ok
+= rootn tonearest intel96 0x8p-16448 -16383LL : 0x2.015845f8f9422c84p+0 : inexact-ok
+= rootn towardzero intel96 0x8p-16448 -16383LL : 0x2.015845f8f9422c84p+0 : inexact-ok
+= rootn upward intel96 0x8p-16448 -16383LL : 0x2.015845f8f9422c88p+0 : inexact-ok
+= rootn downward m68k96 0x8p-16448 -16383LL : 0x2.015845f8f9422c84p+0 : inexact-ok
+= rootn tonearest m68k96 0x8p-16448 -16383LL : 0x2.015845f8f9422c84p+0 : inexact-ok
+= rootn towardzero m68k96 0x8p-16448 -16383LL : 0x2.015845f8f9422c84p+0 : inexact-ok
+= rootn upward m68k96 0x8p-16448 -16383LL : 0x2.015845f8f9422c88p+0 : inexact-ok
+= rootn downward binary128 0x8p-16448 -16383LL : 0x2.015845f8f9422c8430bdbc23c822p+0 : inexact-ok
+= rootn tonearest binary128 0x8p-16448 -16383LL : 0x2.015845f8f9422c8430bdbc23c822p+0 : inexact-ok
+= rootn towardzero binary128 0x8p-16448 -16383LL : 0x2.015845f8f9422c8430bdbc23c822p+0 : inexact-ok
+= rootn upward binary128 0x8p-16448 -16383LL : 0x2.015845f8f9422c8430bdbc23c824p+0 : inexact-ok
+= rootn downward m68k96 0x4p-16448 -16383LL : 0x2.015dd56233287c14p+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-16448 -16383LL : 0x2.015dd56233287c18p+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-16448 -16383LL : 0x2.015dd56233287c14p+0 : inexact-ok
+= rootn upward m68k96 0x4p-16448 -16383LL : 0x2.015dd56233287c18p+0 : inexact-ok
+= rootn downward binary128 0x4p-16448 -16383LL : 0x2.015dd56233287c172ec6daa8ae8cp+0 : inexact-ok
+= rootn tonearest binary128 0x4p-16448 -16383LL : 0x2.015dd56233287c172ec6daa8ae8ep+0 : inexact-ok
+= rootn towardzero binary128 0x4p-16448 -16383LL : 0x2.015dd56233287c172ec6daa8ae8cp+0 : inexact-ok
+= rootn upward binary128 0x4p-16448 -16383LL : 0x2.015dd56233287c172ec6daa8ae8ep+0 : inexact-ok
+= rootn downward binary128 0x4p-16496 -16383LL : 0x2.0268fffbf53a98ec17310d0fd88ep+0 : inexact-ok
+= rootn tonearest binary128 0x4p-16496 -16383LL : 0x2.0268fffbf53a98ec17310d0fd89p+0 : inexact-ok
+= rootn towardzero binary128 0x4p-16496 -16383LL : 0x2.0268fffbf53a98ec17310d0fd88ep+0 : inexact-ok
+= rootn upward binary128 0x4p-16496 -16383LL : 0x2.0268fffbf53a98ec17310d0fd89p+0 : inexact-ok
+rootn min_subnorm -0x1000001
+= rootn downward binary32 0x8p-152 -16777217LL : 0x1.000066p+0 : inexact-ok
+= rootn tonearest binary32 0x8p-152 -16777217LL : 0x1.000068p+0 : inexact-ok
+= rootn towardzero binary32 0x8p-152 -16777217LL : 0x1.000066p+0 : inexact-ok
+= rootn upward binary32 0x8p-152 -16777217LL : 0x1.000068p+0 : inexact-ok
+= rootn downward binary64 0x8p-152 -16777217LL : 0x1.000067477c613p+0 : inexact-ok
+= rootn tonearest binary64 0x8p-152 -16777217LL : 0x1.000067477c614p+0 : inexact-ok
+= rootn towardzero binary64 0x8p-152 -16777217LL : 0x1.000067477c613p+0 : inexact-ok
+= rootn upward binary64 0x8p-152 -16777217LL : 0x1.000067477c614p+0 : inexact-ok
+= rootn downward intel96 0x8p-152 -16777217LL : 0x1.000067477c613d22p+0 : inexact-ok
+= rootn tonearest intel96 0x8p-152 -16777217LL : 0x1.000067477c613d22p+0 : inexact-ok
+= rootn towardzero intel96 0x8p-152 -16777217LL : 0x1.000067477c613d22p+0 : inexact-ok
+= rootn upward intel96 0x8p-152 -16777217LL : 0x1.000067477c613d24p+0 : inexact-ok
+= rootn downward m68k96 0x8p-152 -16777217LL : 0x1.000067477c613d22p+0 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 -16777217LL : 0x1.000067477c613d22p+0 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 -16777217LL : 0x1.000067477c613d22p+0 : inexact-ok
+= rootn upward m68k96 0x8p-152 -16777217LL : 0x1.000067477c613d24p+0 : inexact-ok
+= rootn downward binary128 0x8p-152 -16777217LL : 0x1.000067477c613d22077c60d7c1dp+0 : inexact-ok
+= rootn tonearest binary128 0x8p-152 -16777217LL : 0x1.000067477c613d22077c60d7c1dp+0 : inexact-ok
+= rootn towardzero binary128 0x8p-152 -16777217LL : 0x1.000067477c613d22077c60d7c1dp+0 : inexact-ok
+= rootn upward binary128 0x8p-152 -16777217LL : 0x1.000067477c613d22077c60d7c1d1p+0 : inexact-ok
+= rootn downward ibm128 0x8p-152 -16777217LL : 0x1.000067477c613d22077c60d7c18p+0 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 -16777217LL : 0x1.000067477c613d22077c60d7c2p+0 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 -16777217LL : 0x1.000067477c613d22077c60d7c18p+0 : inexact-ok
+= rootn upward ibm128 0x8p-152 -16777217LL : 0x1.000067477c613d22077c60d7c2p+0 : inexact-ok
+= rootn downward binary64 0x4p-1076 -16777217LL : 0x1.0002e874e010dp+0 : inexact-ok
+= rootn tonearest binary64 0x4p-1076 -16777217LL : 0x1.0002e874e010dp+0 : inexact-ok
+= rootn towardzero binary64 0x4p-1076 -16777217LL : 0x1.0002e874e010dp+0 : inexact-ok
+= rootn upward binary64 0x4p-1076 -16777217LL : 0x1.0002e874e010ep+0 : inexact-ok
+= rootn downward intel96 0x4p-1076 -16777217LL : 0x1.0002e874e010d0f8p+0 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 -16777217LL : 0x1.0002e874e010d0fap+0 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 -16777217LL : 0x1.0002e874e010d0f8p+0 : inexact-ok
+= rootn upward intel96 0x4p-1076 -16777217LL : 0x1.0002e874e010d0fap+0 : inexact-ok
+= rootn downward m68k96 0x4p-1076 -16777217LL : 0x1.0002e874e010d0f8p+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 -16777217LL : 0x1.0002e874e010d0fap+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 -16777217LL : 0x1.0002e874e010d0f8p+0 : inexact-ok
+= rootn upward m68k96 0x4p-1076 -16777217LL : 0x1.0002e874e010d0fap+0 : inexact-ok
+= rootn downward binary128 0x4p-1076 -16777217LL : 0x1.0002e874e010d0f9ac646314719ep+0 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 -16777217LL : 0x1.0002e874e010d0f9ac646314719ep+0 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 -16777217LL : 0x1.0002e874e010d0f9ac646314719ep+0 : inexact-ok
+= rootn upward binary128 0x4p-1076 -16777217LL : 0x1.0002e874e010d0f9ac646314719fp+0 : inexact-ok
+= rootn downward ibm128 0x4p-1076 -16777217LL : 0x1.0002e874e010d0f9ac646314718p+0 : inexact-ok
+= rootn tonearest ibm128 0x4p-1076 -16777217LL : 0x1.0002e874e010d0f9ac646314718p+0 : inexact-ok
+= rootn towardzero ibm128 0x4p-1076 -16777217LL : 0x1.0002e874e010d0f9ac646314718p+0 : inexact-ok
+= rootn upward ibm128 0x4p-1076 -16777217LL : 0x1.0002e874e010d0f9ac64631472p+0 : inexact-ok
+= rootn downward intel96 0x8p-16448 -16777217LL : 0x1.002c8aad8985bc88p+0 : inexact-ok
+= rootn tonearest intel96 0x8p-16448 -16777217LL : 0x1.002c8aad8985bc8ap+0 : inexact-ok
+= rootn towardzero intel96 0x8p-16448 -16777217LL : 0x1.002c8aad8985bc88p+0 : inexact-ok
+= rootn upward intel96 0x8p-16448 -16777217LL : 0x1.002c8aad8985bc8ap+0 : inexact-ok
+= rootn downward m68k96 0x8p-16448 -16777217LL : 0x1.002c8aad8985bc88p+0 : inexact-ok
+= rootn tonearest m68k96 0x8p-16448 -16777217LL : 0x1.002c8aad8985bc8ap+0 : inexact-ok
+= rootn towardzero m68k96 0x8p-16448 -16777217LL : 0x1.002c8aad8985bc88p+0 : inexact-ok
+= rootn upward m68k96 0x8p-16448 -16777217LL : 0x1.002c8aad8985bc8ap+0 : inexact-ok
+= rootn downward binary128 0x8p-16448 -16777217LL : 0x1.002c8aad8985bc899a5933498bfcp+0 : inexact-ok
+= rootn tonearest binary128 0x8p-16448 -16777217LL : 0x1.002c8aad8985bc899a5933498bfdp+0 : inexact-ok
+= rootn towardzero binary128 0x8p-16448 -16777217LL : 0x1.002c8aad8985bc899a5933498bfcp+0 : inexact-ok
+= rootn upward binary128 0x8p-16448 -16777217LL : 0x1.002c8aad8985bc899a5933498bfdp+0 : inexact-ok
+= rootn downward m68k96 0x4p-16448 -16777217LL : 0x1.002c8b5f1a7cfc3cp+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-16448 -16777217LL : 0x1.002c8b5f1a7cfc3ep+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-16448 -16777217LL : 0x1.002c8b5f1a7cfc3cp+0 : inexact-ok
+= rootn upward m68k96 0x4p-16448 -16777217LL : 0x1.002c8b5f1a7cfc3ep+0 : inexact-ok
+= rootn downward binary128 0x4p-16448 -16777217LL : 0x1.002c8b5f1a7cfc3d92379c197c21p+0 : inexact-ok
+= rootn tonearest binary128 0x4p-16448 -16777217LL : 0x1.002c8b5f1a7cfc3d92379c197c22p+0 : inexact-ok
+= rootn towardzero binary128 0x4p-16448 -16777217LL : 0x1.002c8b5f1a7cfc3d92379c197c21p+0 : inexact-ok
+= rootn upward binary128 0x4p-16448 -16777217LL : 0x1.002c8b5f1a7cfc3d92379c197c22p+0 : inexact-ok
+= rootn downward binary128 0x4p-16496 -16777217LL : 0x1.002cacaa4b0e53a2fe2e3996fd56p+0 : inexact-ok
+= rootn tonearest binary128 0x4p-16496 -16777217LL : 0x1.002cacaa4b0e53a2fe2e3996fd56p+0 : inexact-ok
+= rootn towardzero binary128 0x4p-16496 -16777217LL : 0x1.002cacaa4b0e53a2fe2e3996fd56p+0 : inexact-ok
+= rootn upward binary128 0x4p-16496 -16777217LL : 0x1.002cacaa4b0e53a2fe2e3996fd57p+0 : inexact-ok
+rootn min_subnorm -0x10000000000001
+= rootn downward binary32 0x8p-152 -4503599627370497LL : 0x1p+0 : inexact-ok
+= rootn tonearest binary32 0x8p-152 -4503599627370497LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary32 0x8p-152 -4503599627370497LL : 0x1p+0 : inexact-ok
+= rootn upward binary32 0x8p-152 -4503599627370497LL : 0x1.000002p+0 : inexact-ok
+= rootn downward binary64 0x8p-152 -4503599627370497LL : 0x1.0000000000067p+0 : inexact-ok
+= rootn tonearest binary64 0x8p-152 -4503599627370497LL : 0x1.0000000000067p+0 : inexact-ok
+= rootn towardzero binary64 0x8p-152 -4503599627370497LL : 0x1.0000000000067p+0 : inexact-ok
+= rootn upward binary64 0x8p-152 -4503599627370497LL : 0x1.0000000000068p+0 : inexact-ok
+= rootn downward intel96 0x8p-152 -4503599627370497LL : 0x1.0000000000067476p+0 : inexact-ok
+= rootn tonearest intel96 0x8p-152 -4503599627370497LL : 0x1.0000000000067476p+0 : inexact-ok
+= rootn towardzero intel96 0x8p-152 -4503599627370497LL : 0x1.0000000000067476p+0 : inexact-ok
+= rootn upward intel96 0x8p-152 -4503599627370497LL : 0x1.0000000000067478p+0 : inexact-ok
+= rootn downward m68k96 0x8p-152 -4503599627370497LL : 0x1.0000000000067476p+0 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 -4503599627370497LL : 0x1.0000000000067476p+0 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 -4503599627370497LL : 0x1.0000000000067476p+0 : inexact-ok
+= rootn upward m68k96 0x8p-152 -4503599627370497LL : 0x1.0000000000067478p+0 : inexact-ok
+= rootn downward binary128 0x8p-152 -4503599627370497LL : 0x1.00000000000674767f33d1f08b0dp+0 : inexact-ok
+= rootn tonearest binary128 0x8p-152 -4503599627370497LL : 0x1.00000000000674767f33d1f08b0dp+0 : inexact-ok
+= rootn towardzero binary128 0x8p-152 -4503599627370497LL : 0x1.00000000000674767f33d1f08b0dp+0 : inexact-ok
+= rootn upward binary128 0x8p-152 -4503599627370497LL : 0x1.00000000000674767f33d1f08b0ep+0 : inexact-ok
+= rootn downward ibm128 0x8p-152 -4503599627370497LL : 0x1.00000000000674767f33d1f08bp+0 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 -4503599627370497LL : 0x1.00000000000674767f33d1f08bp+0 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 -4503599627370497LL : 0x1.00000000000674767f33d1f08bp+0 : inexact-ok
+= rootn upward ibm128 0x8p-152 -4503599627370497LL : 0x1.00000000000674767f33d1f08b8p+0 : inexact-ok
+= rootn downward binary64 0x4p-1076 -4503599627370497LL : 0x1.00000000002e8p+0 : inexact-ok
+= rootn tonearest binary64 0x4p-1076 -4503599627370497LL : 0x1.00000000002e8p+0 : inexact-ok
+= rootn towardzero binary64 0x4p-1076 -4503599627370497LL : 0x1.00000000002e8p+0 : inexact-ok
+= rootn upward binary64 0x4p-1076 -4503599627370497LL : 0x1.00000000002e9p+0 : inexact-ok
+= rootn downward intel96 0x4p-1076 -4503599627370497LL : 0x1.00000000002e870ap+0 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 -4503599627370497LL : 0x1.00000000002e870ap+0 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 -4503599627370497LL : 0x1.00000000002e870ap+0 : inexact-ok
+= rootn upward intel96 0x4p-1076 -4503599627370497LL : 0x1.00000000002e870cp+0 : inexact-ok
+= rootn downward m68k96 0x4p-1076 -4503599627370497LL : 0x1.00000000002e870ap+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 -4503599627370497LL : 0x1.00000000002e870ap+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 -4503599627370497LL : 0x1.00000000002e870ap+0 : inexact-ok
+= rootn upward m68k96 0x4p-1076 -4503599627370497LL : 0x1.00000000002e870cp+0 : inexact-ok
+= rootn downward binary128 0x4p-1076 -4503599627370497LL : 0x1.00000000002e870a88dae7be463dp+0 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 -4503599627370497LL : 0x1.00000000002e870a88dae7be463dp+0 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 -4503599627370497LL : 0x1.00000000002e870a88dae7be463dp+0 : inexact-ok
+= rootn upward binary128 0x4p-1076 -4503599627370497LL : 0x1.00000000002e870a88dae7be463ep+0 : inexact-ok
+= rootn downward ibm128 0x4p-1076 -4503599627370497LL : 0x1.00000000002e870a88dae7be46p+0 : inexact-ok
+= rootn tonearest ibm128 0x4p-1076 -4503599627370497LL : 0x1.00000000002e870a88dae7be46p+0 : inexact-ok
+= rootn towardzero ibm128 0x4p-1076 -4503599627370497LL : 0x1.00000000002e870a88dae7be46p+0 : inexact-ok
+= rootn upward ibm128 0x4p-1076 -4503599627370497LL : 0x1.00000000002e870a88dae7be468p+0 : inexact-ok
+= rootn downward intel96 0x8p-16448 -4503599627370497LL : 0x1.0000000002c86ce2p+0 : inexact-ok
+= rootn tonearest intel96 0x8p-16448 -4503599627370497LL : 0x1.0000000002c86ce2p+0 : inexact-ok
+= rootn towardzero intel96 0x8p-16448 -4503599627370497LL : 0x1.0000000002c86ce2p+0 : inexact-ok
+= rootn upward intel96 0x8p-16448 -4503599627370497LL : 0x1.0000000002c86ce4p+0 : inexact-ok
+= rootn downward m68k96 0x8p-16448 -4503599627370497LL : 0x1.0000000002c86ce2p+0 : inexact-ok
+= rootn tonearest m68k96 0x8p-16448 -4503599627370497LL : 0x1.0000000002c86ce2p+0 : inexact-ok
+= rootn towardzero m68k96 0x8p-16448 -4503599627370497LL : 0x1.0000000002c86ce2p+0 : inexact-ok
+= rootn upward m68k96 0x8p-16448 -4503599627370497LL : 0x1.0000000002c86ce4p+0 : inexact-ok
+= rootn downward binary128 0x8p-16448 -4503599627370497LL : 0x1.0000000002c86ce2daabecf0165p+0 : inexact-ok
+= rootn tonearest binary128 0x8p-16448 -4503599627370497LL : 0x1.0000000002c86ce2daabecf01651p+0 : inexact-ok
+= rootn towardzero binary128 0x8p-16448 -4503599627370497LL : 0x1.0000000002c86ce2daabecf0165p+0 : inexact-ok
+= rootn upward binary128 0x8p-16448 -4503599627370497LL : 0x1.0000000002c86ce2daabecf01651p+0 : inexact-ok
+= rootn downward m68k96 0x4p-16448 -4503599627370497LL : 0x1.0000000002c877f8p+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-16448 -4503599627370497LL : 0x1.0000000002c877fap+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-16448 -4503599627370497LL : 0x1.0000000002c877f8p+0 : inexact-ok
+= rootn upward m68k96 0x4p-16448 -4503599627370497LL : 0x1.0000000002c877fap+0 : inexact-ok
+= rootn downward binary128 0x4p-16448 -4503599627370497LL : 0x1.0000000002c877f9fc2b6a2bea84p+0 : inexact-ok
+= rootn tonearest binary128 0x4p-16448 -4503599627370497LL : 0x1.0000000002c877f9fc2b6a2bea84p+0 : inexact-ok
+= rootn towardzero binary128 0x4p-16448 -4503599627370497LL : 0x1.0000000002c877f9fc2b6a2bea84p+0 : inexact-ok
+= rootn upward binary128 0x4p-16448 -4503599627370497LL : 0x1.0000000002c877f9fc2b6a2bea85p+0 : inexact-ok
+= rootn downward binary128 0x4p-16496 -4503599627370497LL : 0x1.0000000002ca8c504412e565e931p+0 : inexact-ok
+= rootn tonearest binary128 0x4p-16496 -4503599627370497LL : 0x1.0000000002ca8c504412e565e931p+0 : inexact-ok
+= rootn towardzero binary128 0x4p-16496 -4503599627370497LL : 0x1.0000000002ca8c504412e565e931p+0 : inexact-ok
+= rootn upward binary128 0x4p-16496 -4503599627370497LL : 0x1.0000000002ca8c504412e565e932p+0 : inexact-ok
+rootn min_subnorm -0x7fffffffffffffff
+= rootn downward binary32 0x8p-152 -9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn tonearest binary32 0x8p-152 -9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary32 0x8p-152 -9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn upward binary32 0x8p-152 -9223372036854775807LL : 0x1.000002p+0 : inexact-ok
+= rootn downward binary64 0x8p-152 -9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn tonearest binary64 0x8p-152 -9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary64 0x8p-152 -9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn upward binary64 0x8p-152 -9223372036854775807LL : 0x1.0000000000001p+0 : inexact-ok
+= rootn downward intel96 0x8p-152 -9223372036854775807LL : 0x1.00000000000000cep+0 : inexact-ok
+= rootn tonearest intel96 0x8p-152 -9223372036854775807LL : 0x1.00000000000000cep+0 : inexact-ok
+= rootn towardzero intel96 0x8p-152 -9223372036854775807LL : 0x1.00000000000000cep+0 : inexact-ok
+= rootn upward intel96 0x8p-152 -9223372036854775807LL : 0x1.00000000000000dp+0 : inexact-ok
+= rootn downward m68k96 0x8p-152 -9223372036854775807LL : 0x1.00000000000000cep+0 : inexact-ok
+= rootn tonearest m68k96 0x8p-152 -9223372036854775807LL : 0x1.00000000000000cep+0 : inexact-ok
+= rootn towardzero m68k96 0x8p-152 -9223372036854775807LL : 0x1.00000000000000cep+0 : inexact-ok
+= rootn upward m68k96 0x8p-152 -9223372036854775807LL : 0x1.00000000000000dp+0 : inexact-ok
+= rootn downward binary128 0x8p-152 -9223372036854775807LL : 0x1.00000000000000ce8ecfe67a3b83p+0 : inexact-ok
+= rootn tonearest binary128 0x8p-152 -9223372036854775807LL : 0x1.00000000000000ce8ecfe67a3b84p+0 : inexact-ok
+= rootn towardzero binary128 0x8p-152 -9223372036854775807LL : 0x1.00000000000000ce8ecfe67a3b83p+0 : inexact-ok
+= rootn upward binary128 0x8p-152 -9223372036854775807LL : 0x1.00000000000000ce8ecfe67a3b84p+0 : inexact-ok
+= rootn downward ibm128 0x8p-152 -9223372036854775807LL : 0x1.00000000000000ce8ecfe67a3b8p+0 : inexact-ok
+= rootn tonearest ibm128 0x8p-152 -9223372036854775807LL : 0x1.00000000000000ce8ecfe67a3b8p+0 : inexact-ok
+= rootn towardzero ibm128 0x8p-152 -9223372036854775807LL : 0x1.00000000000000ce8ecfe67a3b8p+0 : inexact-ok
+= rootn upward ibm128 0x8p-152 -9223372036854775807LL : 0x1.00000000000000ce8ecfe67a3cp+0 : inexact-ok
+= rootn downward binary64 0x4p-1076 -9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn tonearest binary64 0x4p-1076 -9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary64 0x4p-1076 -9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn upward binary64 0x4p-1076 -9223372036854775807LL : 0x1.0000000000001p+0 : inexact-ok
+= rootn downward intel96 0x4p-1076 -9223372036854775807LL : 0x1.00000000000005dp+0 : inexact-ok
+= rootn tonearest intel96 0x4p-1076 -9223372036854775807LL : 0x1.00000000000005dp+0 : inexact-ok
+= rootn towardzero intel96 0x4p-1076 -9223372036854775807LL : 0x1.00000000000005dp+0 : inexact-ok
+= rootn upward intel96 0x4p-1076 -9223372036854775807LL : 0x1.00000000000005d2p+0 : inexact-ok
+= rootn downward m68k96 0x4p-1076 -9223372036854775807LL : 0x1.00000000000005dp+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-1076 -9223372036854775807LL : 0x1.00000000000005dp+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-1076 -9223372036854775807LL : 0x1.00000000000005dp+0 : inexact-ok
+= rootn upward m68k96 0x4p-1076 -9223372036854775807LL : 0x1.00000000000005d2p+0 : inexact-ok
+= rootn downward binary128 0x4p-1076 -9223372036854775807LL : 0x1.00000000000005d0e1511b5c70e9p+0 : inexact-ok
+= rootn tonearest binary128 0x4p-1076 -9223372036854775807LL : 0x1.00000000000005d0e1511b5c70eap+0 : inexact-ok
+= rootn towardzero binary128 0x4p-1076 -9223372036854775807LL : 0x1.00000000000005d0e1511b5c70e9p+0 : inexact-ok
+= rootn upward binary128 0x4p-1076 -9223372036854775807LL : 0x1.00000000000005d0e1511b5c70eap+0 : inexact-ok
+= rootn downward ibm128 0x4p-1076 -9223372036854775807LL : 0x1.00000000000005d0e1511b5c708p+0 : inexact-ok
+= rootn tonearest ibm128 0x4p-1076 -9223372036854775807LL : 0x1.00000000000005d0e1511b5c71p+0 : inexact-ok
+= rootn towardzero ibm128 0x4p-1076 -9223372036854775807LL : 0x1.00000000000005d0e1511b5c708p+0 : inexact-ok
+= rootn upward ibm128 0x4p-1076 -9223372036854775807LL : 0x1.00000000000005d0e1511b5c71p+0 : inexact-ok
+= rootn downward intel96 0x8p-16448 -9223372036854775807LL : 0x1.000000000000590cp+0 : inexact-ok
+= rootn tonearest intel96 0x8p-16448 -9223372036854775807LL : 0x1.000000000000590ep+0 : inexact-ok
+= rootn towardzero intel96 0x8p-16448 -9223372036854775807LL : 0x1.000000000000590cp+0 : inexact-ok
+= rootn upward intel96 0x8p-16448 -9223372036854775807LL : 0x1.000000000000590ep+0 : inexact-ok
+= rootn downward m68k96 0x8p-16448 -9223372036854775807LL : 0x1.000000000000590cp+0 : inexact-ok
+= rootn tonearest m68k96 0x8p-16448 -9223372036854775807LL : 0x1.000000000000590ep+0 : inexact-ok
+= rootn towardzero m68k96 0x8p-16448 -9223372036854775807LL : 0x1.000000000000590cp+0 : inexact-ok
+= rootn upward m68k96 0x8p-16448 -9223372036854775807LL : 0x1.000000000000590ep+0 : inexact-ok
+= rootn downward binary128 0x8p-16448 -9223372036854775807LL : 0x1.000000000000590d9c5b5501c933p+0 : inexact-ok
+= rootn tonearest binary128 0x8p-16448 -9223372036854775807LL : 0x1.000000000000590d9c5b5501c934p+0 : inexact-ok
+= rootn towardzero binary128 0x8p-16448 -9223372036854775807LL : 0x1.000000000000590d9c5b5501c933p+0 : inexact-ok
+= rootn upward binary128 0x8p-16448 -9223372036854775807LL : 0x1.000000000000590d9c5b5501c934p+0 : inexact-ok
+= rootn downward m68k96 0x4p-16448 -9223372036854775807LL : 0x1.000000000000590ep+0 : inexact-ok
+= rootn tonearest m68k96 0x4p-16448 -9223372036854775807LL : 0x1.000000000000590ep+0 : inexact-ok
+= rootn towardzero m68k96 0x4p-16448 -9223372036854775807LL : 0x1.000000000000590ep+0 : inexact-ok
+= rootn upward m68k96 0x4p-16448 -9223372036854775807LL : 0x1.000000000000591p+0 : inexact-ok
+= rootn downward binary128 0x4p-16448 -9223372036854775807LL : 0x1.000000000000590eff3f84f16cd3p+0 : inexact-ok
+= rootn tonearest binary128 0x4p-16448 -9223372036854775807LL : 0x1.000000000000590eff3f84f16cd3p+0 : inexact-ok
+= rootn towardzero binary128 0x4p-16448 -9223372036854775807LL : 0x1.000000000000590eff3f84f16cd3p+0 : inexact-ok
+= rootn upward binary128 0x4p-16448 -9223372036854775807LL : 0x1.000000000000590eff3f84f16cd4p+0 : inexact-ok
+= rootn downward binary128 0x4p-16496 -9223372036854775807LL : 0x1.00000000000059518a0881e01ab8p+0 : inexact-ok
+= rootn tonearest binary128 0x4p-16496 -9223372036854775807LL : 0x1.00000000000059518a0881e01ab8p+0 : inexact-ok
+= rootn towardzero binary128 0x4p-16496 -9223372036854775807LL : 0x1.00000000000059518a0881e01ab8p+0 : inexact-ok
+= rootn upward binary128 0x4p-16496 -9223372036854775807LL : 0x1.00000000000059518a0881e01ab9p+0 : inexact-ok
+rootn -min_subnorm -1
+= rootn downward binary32 -0x8p-152 -1LL : minus_infty : inexact-ok overflow errno-erange
+= rootn tonearest binary32 -0x8p-152 -1LL : minus_infty : inexact-ok overflow errno-erange
+= rootn towardzero binary32 -0x8p-152 -1LL : -0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= rootn upward binary32 -0x8p-152 -1LL : -0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= rootn downward binary64 -0x8p-152 -1LL : -0x2p+148 : inexact-ok
+= rootn tonearest binary64 -0x8p-152 -1LL : -0x2p+148 : inexact-ok
+= rootn towardzero binary64 -0x8p-152 -1LL : -0x2p+148 : inexact-ok
+= rootn upward binary64 -0x8p-152 -1LL : -0x2p+148 : inexact-ok
+= rootn downward intel96 -0x8p-152 -1LL : -0x2p+148 : inexact-ok
+= rootn tonearest intel96 -0x8p-152 -1LL : -0x2p+148 : inexact-ok
+= rootn towardzero intel96 -0x8p-152 -1LL : -0x2p+148 : inexact-ok
+= rootn upward intel96 -0x8p-152 -1LL : -0x2p+148 : inexact-ok
+= rootn downward m68k96 -0x8p-152 -1LL : -0x2p+148 : inexact-ok
+= rootn tonearest m68k96 -0x8p-152 -1LL : -0x2p+148 : inexact-ok
+= rootn towardzero m68k96 -0x8p-152 -1LL : -0x2p+148 : inexact-ok
+= rootn upward m68k96 -0x8p-152 -1LL : -0x2p+148 : inexact-ok
+= rootn downward binary128 -0x8p-152 -1LL : -0x2p+148 : inexact-ok
+= rootn tonearest binary128 -0x8p-152 -1LL : -0x2p+148 : inexact-ok
+= rootn towardzero binary128 -0x8p-152 -1LL : -0x2p+148 : inexact-ok
+= rootn upward binary128 -0x8p-152 -1LL : -0x2p+148 : inexact-ok
+= rootn downward ibm128 -0x8p-152 -1LL : -0x2p+148 : inexact-ok
+= rootn tonearest ibm128 -0x8p-152 -1LL : -0x2p+148 : inexact-ok
+= rootn towardzero ibm128 -0x8p-152 -1LL : -0x2p+148 : inexact-ok
+= rootn upward ibm128 -0x8p-152 -1LL : -0x2p+148 : inexact-ok
+= rootn downward binary64 -0x4p-1076 -1LL : minus_infty : inexact-ok overflow errno-erange
+= rootn tonearest binary64 -0x4p-1076 -1LL : minus_infty : inexact-ok overflow errno-erange
+= rootn towardzero binary64 -0x4p-1076 -1LL : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= rootn upward binary64 -0x4p-1076 -1LL : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= rootn downward intel96 -0x4p-1076 -1LL : -0x4p+1072 : inexact-ok
+= rootn tonearest intel96 -0x4p-1076 -1LL : -0x4p+1072 : inexact-ok
+= rootn towardzero intel96 -0x4p-1076 -1LL : -0x4p+1072 : inexact-ok
+= rootn upward intel96 -0x4p-1076 -1LL : -0x4p+1072 : inexact-ok
+= rootn downward m68k96 -0x4p-1076 -1LL : -0x4p+1072 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1076 -1LL : -0x4p+1072 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1076 -1LL : -0x4p+1072 : inexact-ok
+= rootn upward m68k96 -0x4p-1076 -1LL : -0x4p+1072 : inexact-ok
+= rootn downward binary128 -0x4p-1076 -1LL : -0x4p+1072 : inexact-ok
+= rootn tonearest binary128 -0x4p-1076 -1LL : -0x4p+1072 : inexact-ok
+= rootn towardzero binary128 -0x4p-1076 -1LL : -0x4p+1072 : inexact-ok
+= rootn upward binary128 -0x4p-1076 -1LL : -0x4p+1072 : inexact-ok
+= rootn downward ibm128 -0x4p-1076 -1LL : minus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= rootn tonearest ibm128 -0x4p-1076 -1LL : minus_infty : inexact-ok overflow errno-erange
+= rootn towardzero ibm128 -0x4p-1076 -1LL : -0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= rootn upward ibm128 -0x4p-1076 -1LL : -0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= rootn downward intel96 -0x8p-16448 -1LL : minus_infty : inexact-ok overflow errno-erange
+= rootn tonearest intel96 -0x8p-16448 -1LL : minus_infty : inexact-ok overflow errno-erange
+= rootn towardzero intel96 -0x8p-16448 -1LL : -0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= rootn upward intel96 -0x8p-16448 -1LL : -0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= rootn downward m68k96 -0x8p-16448 -1LL : minus_infty : inexact-ok overflow errno-erange
+= rootn tonearest m68k96 -0x8p-16448 -1LL : minus_infty : inexact-ok overflow errno-erange
+= rootn towardzero m68k96 -0x8p-16448 -1LL : -0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= rootn upward m68k96 -0x8p-16448 -1LL : -0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= rootn downward binary128 -0x8p-16448 -1LL : minus_infty : inexact-ok overflow errno-erange
+= rootn tonearest binary128 -0x8p-16448 -1LL : minus_infty : inexact-ok overflow errno-erange
+= rootn towardzero binary128 -0x8p-16448 -1LL : -0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= rootn upward binary128 -0x8p-16448 -1LL : -0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= rootn downward m68k96 -0x4p-16448 -1LL : minus_infty : inexact-ok overflow errno-erange
+= rootn tonearest m68k96 -0x4p-16448 -1LL : minus_infty : inexact-ok overflow errno-erange
+= rootn towardzero m68k96 -0x4p-16448 -1LL : -0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= rootn upward m68k96 -0x4p-16448 -1LL : -0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= rootn downward binary128 -0x4p-16448 -1LL : minus_infty : inexact-ok overflow errno-erange
+= rootn tonearest binary128 -0x4p-16448 -1LL : minus_infty : inexact-ok overflow errno-erange
+= rootn towardzero binary128 -0x4p-16448 -1LL : -0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= rootn upward binary128 -0x4p-16448 -1LL : -0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= rootn downward binary128 -0x4p-16496 -1LL : minus_infty : inexact-ok overflow errno-erange
+= rootn tonearest binary128 -0x4p-16496 -1LL : minus_infty : inexact-ok overflow errno-erange
+= rootn towardzero binary128 -0x4p-16496 -1LL : -0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= rootn upward binary128 -0x4p-16496 -1LL : -0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+rootn -min_subnorm -3
+= rootn downward binary32 -0x8p-152 -3LL : -0x3.2cbfd8p+48 : inexact-ok
+= rootn tonearest binary32 -0x8p-152 -3LL : -0x3.2cbfd4p+48 : inexact-ok
+= rootn towardzero binary32 -0x8p-152 -3LL : -0x3.2cbfd4p+48 : inexact-ok
+= rootn upward binary32 -0x8p-152 -3LL : -0x3.2cbfd4p+48 : inexact-ok
+= rootn downward binary64 -0x8p-152 -3LL : -0x3.2cbfd4a7adc7ap+48 : inexact-ok
+= rootn tonearest binary64 -0x8p-152 -3LL : -0x3.2cbfd4a7adc7ap+48 : inexact-ok
+= rootn towardzero binary64 -0x8p-152 -3LL : -0x3.2cbfd4a7adc78p+48 : inexact-ok
+= rootn upward binary64 -0x8p-152 -3LL : -0x3.2cbfd4a7adc78p+48 : inexact-ok
+= rootn downward intel96 -0x8p-152 -3LL : -0x3.2cbfd4a7adc79058p+48 : inexact-ok
+= rootn tonearest intel96 -0x8p-152 -3LL : -0x3.2cbfd4a7adc79058p+48 : inexact-ok
+= rootn towardzero intel96 -0x8p-152 -3LL : -0x3.2cbfd4a7adc79054p+48 : inexact-ok
+= rootn upward intel96 -0x8p-152 -3LL : -0x3.2cbfd4a7adc79054p+48 : inexact-ok
+= rootn downward m68k96 -0x8p-152 -3LL : -0x3.2cbfd4a7adc79058p+48 : inexact-ok
+= rootn tonearest m68k96 -0x8p-152 -3LL : -0x3.2cbfd4a7adc79058p+48 : inexact-ok
+= rootn towardzero m68k96 -0x8p-152 -3LL : -0x3.2cbfd4a7adc79054p+48 : inexact-ok
+= rootn upward m68k96 -0x8p-152 -3LL : -0x3.2cbfd4a7adc79054p+48 : inexact-ok
+= rootn downward binary128 -0x8p-152 -3LL : -0x3.2cbfd4a7adc790560b3335687b8ap+48 : inexact-ok
+= rootn tonearest binary128 -0x8p-152 -3LL : -0x3.2cbfd4a7adc790560b3335687b8ap+48 : inexact-ok
+= rootn towardzero binary128 -0x8p-152 -3LL : -0x3.2cbfd4a7adc790560b3335687b88p+48 : inexact-ok
+= rootn upward binary128 -0x8p-152 -3LL : -0x3.2cbfd4a7adc790560b3335687b88p+48 : inexact-ok
+= rootn downward ibm128 -0x8p-152 -3LL : -0x3.2cbfd4a7adc790560b3335687cp+48 : inexact-ok
+= rootn tonearest ibm128 -0x8p-152 -3LL : -0x3.2cbfd4a7adc790560b3335687cp+48 : inexact-ok
+= rootn towardzero ibm128 -0x8p-152 -3LL : -0x3.2cbfd4a7adc790560b3335687bp+48 : inexact-ok
+= rootn upward ibm128 -0x8p-152 -3LL : -0x3.2cbfd4a7adc790560b3335687bp+48 : inexact-ok
+= rootn downward binary64 -0x4p-1076 -3LL : -0x4p+356 : inexact-ok
+= rootn tonearest binary64 -0x4p-1076 -3LL : -0x4p+356 : inexact-ok
+= rootn towardzero binary64 -0x4p-1076 -3LL : -0x4p+356 : inexact-ok
+= rootn upward binary64 -0x4p-1076 -3LL : -0x4p+356 : inexact-ok
+= rootn downward intel96 -0x4p-1076 -3LL : -0x4p+356 : inexact-ok
+= rootn tonearest intel96 -0x4p-1076 -3LL : -0x4p+356 : inexact-ok
+= rootn towardzero intel96 -0x4p-1076 -3LL : -0x4p+356 : inexact-ok
+= rootn upward intel96 -0x4p-1076 -3LL : -0x4p+356 : inexact-ok
+= rootn downward m68k96 -0x4p-1076 -3LL : -0x4p+356 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1076 -3LL : -0x4p+356 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1076 -3LL : -0x4p+356 : inexact-ok
+= rootn upward m68k96 -0x4p-1076 -3LL : -0x4p+356 : inexact-ok
+= rootn downward binary128 -0x4p-1076 -3LL : -0x4p+356 : inexact-ok
+= rootn tonearest binary128 -0x4p-1076 -3LL : -0x4p+356 : inexact-ok
+= rootn towardzero binary128 -0x4p-1076 -3LL : -0x4p+356 : inexact-ok
+= rootn upward binary128 -0x4p-1076 -3LL : -0x4p+356 : inexact-ok
+= rootn downward ibm128 -0x4p-1076 -3LL : -0x4p+356 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1076 -3LL : -0x4p+356 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1076 -3LL : -0x4p+356 : inexact-ok
+= rootn upward ibm128 -0x4p-1076 -3LL : -0x4p+356 : inexact-ok
+= rootn downward intel96 -0x8p-16448 -3LL : -0x3.2cbfd4a7adc79058p+5480 : inexact-ok
+= rootn tonearest intel96 -0x8p-16448 -3LL : -0x3.2cbfd4a7adc79058p+5480 : inexact-ok
+= rootn towardzero intel96 -0x8p-16448 -3LL : -0x3.2cbfd4a7adc79054p+5480 : inexact-ok
+= rootn upward intel96 -0x8p-16448 -3LL : -0x3.2cbfd4a7adc79054p+5480 : inexact-ok
+= rootn downward m68k96 -0x8p-16448 -3LL : -0x3.2cbfd4a7adc79058p+5480 : inexact-ok
+= rootn tonearest m68k96 -0x8p-16448 -3LL : -0x3.2cbfd4a7adc79058p+5480 : inexact-ok
+= rootn towardzero m68k96 -0x8p-16448 -3LL : -0x3.2cbfd4a7adc79054p+5480 : inexact-ok
+= rootn upward m68k96 -0x8p-16448 -3LL : -0x3.2cbfd4a7adc79054p+5480 : inexact-ok
+= rootn downward binary128 -0x8p-16448 -3LL : -0x3.2cbfd4a7adc790560b3335687b8ap+5480 : inexact-ok
+= rootn tonearest binary128 -0x8p-16448 -3LL : -0x3.2cbfd4a7adc790560b3335687b8ap+5480 : inexact-ok
+= rootn towardzero binary128 -0x8p-16448 -3LL : -0x3.2cbfd4a7adc790560b3335687b88p+5480 : inexact-ok
+= rootn upward binary128 -0x8p-16448 -3LL : -0x3.2cbfd4a7adc790560b3335687b88p+5480 : inexact-ok
+= rootn downward m68k96 -0x4p-16448 -3LL : -0x4p+5480 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16448 -3LL : -0x4p+5480 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16448 -3LL : -0x4p+5480 : inexact-ok
+= rootn upward m68k96 -0x4p-16448 -3LL : -0x4p+5480 : inexact-ok
+= rootn downward binary128 -0x4p-16448 -3LL : -0x4p+5480 : inexact-ok
+= rootn tonearest binary128 -0x4p-16448 -3LL : -0x4p+5480 : inexact-ok
+= rootn towardzero binary128 -0x4p-16448 -3LL : -0x4p+5480 : inexact-ok
+= rootn upward binary128 -0x4p-16448 -3LL : -0x4p+5480 : inexact-ok
+= rootn downward binary128 -0x4p-16496 -3LL : -0x4p+5496 : inexact-ok
+= rootn tonearest binary128 -0x4p-16496 -3LL : -0x4p+5496 : inexact-ok
+= rootn towardzero binary128 -0x4p-16496 -3LL : -0x4p+5496 : inexact-ok
+= rootn upward binary128 -0x4p-16496 -3LL : -0x4p+5496 : inexact-ok
+rootn -min_subnorm -5
+= rootn downward binary32 -0x8p-152 -5LL : -0x3.7b719cp+28 : inexact-ok
+= rootn tonearest binary32 -0x8p-152 -5LL : -0x3.7b719cp+28 : inexact-ok
+= rootn towardzero binary32 -0x8p-152 -5LL : -0x3.7b7198p+28 : inexact-ok
+= rootn upward binary32 -0x8p-152 -5LL : -0x3.7b7198p+28 : inexact-ok
+= rootn downward binary64 -0x8p-152 -5LL : -0x3.7b719b5b7c242p+28 : inexact-ok
+= rootn tonearest binary64 -0x8p-152 -5LL : -0x3.7b719b5b7c24p+28 : inexact-ok
+= rootn towardzero binary64 -0x8p-152 -5LL : -0x3.7b719b5b7c24p+28 : inexact-ok
+= rootn upward binary64 -0x8p-152 -5LL : -0x3.7b719b5b7c24p+28 : inexact-ok
+= rootn downward intel96 -0x8p-152 -5LL : -0x3.7b719b5b7c24042cp+28 : inexact-ok
+= rootn tonearest intel96 -0x8p-152 -5LL : -0x3.7b719b5b7c240428p+28 : inexact-ok
+= rootn towardzero intel96 -0x8p-152 -5LL : -0x3.7b719b5b7c240428p+28 : inexact-ok
+= rootn upward intel96 -0x8p-152 -5LL : -0x3.7b719b5b7c240428p+28 : inexact-ok
+= rootn downward m68k96 -0x8p-152 -5LL : -0x3.7b719b5b7c24042cp+28 : inexact-ok
+= rootn tonearest m68k96 -0x8p-152 -5LL : -0x3.7b719b5b7c240428p+28 : inexact-ok
+= rootn towardzero m68k96 -0x8p-152 -5LL : -0x3.7b719b5b7c240428p+28 : inexact-ok
+= rootn upward m68k96 -0x8p-152 -5LL : -0x3.7b719b5b7c240428p+28 : inexact-ok
+= rootn downward binary128 -0x8p-152 -5LL : -0x3.7b719b5b7c240429ec3a6164ff54p+28 : inexact-ok
+= rootn tonearest binary128 -0x8p-152 -5LL : -0x3.7b719b5b7c240429ec3a6164ff52p+28 : inexact-ok
+= rootn towardzero binary128 -0x8p-152 -5LL : -0x3.7b719b5b7c240429ec3a6164ff52p+28 : inexact-ok
+= rootn upward binary128 -0x8p-152 -5LL : -0x3.7b719b5b7c240429ec3a6164ff52p+28 : inexact-ok
+= rootn downward ibm128 -0x8p-152 -5LL : -0x3.7b719b5b7c240429ec3a6165p+28 : inexact-ok
+= rootn tonearest ibm128 -0x8p-152 -5LL : -0x3.7b719b5b7c240429ec3a6164ffp+28 : inexact-ok
+= rootn towardzero ibm128 -0x8p-152 -5LL : -0x3.7b719b5b7c240429ec3a6164ffp+28 : inexact-ok
+= rootn upward ibm128 -0x8p-152 -5LL : -0x3.7b719b5b7c240429ec3a6164ffp+28 : inexact-ok
+= rootn downward binary64 -0x4p-1076 -5LL : -0x6.f6e336b6f8484p+212 : inexact-ok
+= rootn tonearest binary64 -0x4p-1076 -5LL : -0x6.f6e336b6f848p+212 : inexact-ok
+= rootn towardzero binary64 -0x4p-1076 -5LL : -0x6.f6e336b6f848p+212 : inexact-ok
+= rootn upward binary64 -0x4p-1076 -5LL : -0x6.f6e336b6f848p+212 : inexact-ok
+= rootn downward intel96 -0x4p-1076 -5LL : -0x6.f6e336b6f8480858p+212 : inexact-ok
+= rootn tonearest intel96 -0x4p-1076 -5LL : -0x6.f6e336b6f848085p+212 : inexact-ok
+= rootn towardzero intel96 -0x4p-1076 -5LL : -0x6.f6e336b6f848085p+212 : inexact-ok
+= rootn upward intel96 -0x4p-1076 -5LL : -0x6.f6e336b6f848085p+212 : inexact-ok
+= rootn downward m68k96 -0x4p-1076 -5LL : -0x6.f6e336b6f8480858p+212 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1076 -5LL : -0x6.f6e336b6f848085p+212 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1076 -5LL : -0x6.f6e336b6f848085p+212 : inexact-ok
+= rootn upward m68k96 -0x4p-1076 -5LL : -0x6.f6e336b6f848085p+212 : inexact-ok
+= rootn downward binary128 -0x4p-1076 -5LL : -0x6.f6e336b6f8480853d874c2c9fea8p+212 : inexact-ok
+= rootn tonearest binary128 -0x4p-1076 -5LL : -0x6.f6e336b6f8480853d874c2c9fea4p+212 : inexact-ok
+= rootn towardzero binary128 -0x4p-1076 -5LL : -0x6.f6e336b6f8480853d874c2c9fea4p+212 : inexact-ok
+= rootn upward binary128 -0x4p-1076 -5LL : -0x6.f6e336b6f8480853d874c2c9fea4p+212 : inexact-ok
+= rootn downward ibm128 -0x4p-1076 -5LL : -0x6.f6e336b6f8480853d874c2cap+212 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1076 -5LL : -0x6.f6e336b6f8480853d874c2c9fep+212 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1076 -5LL : -0x6.f6e336b6f8480853d874c2c9fep+212 : inexact-ok
+= rootn upward ibm128 -0x4p-1076 -5LL : -0x6.f6e336b6f8480853d874c2c9fep+212 : inexact-ok
+= rootn downward intel96 -0x8p-16448 -5LL : -0x2p+3288 : inexact-ok
+= rootn tonearest intel96 -0x8p-16448 -5LL : -0x2p+3288 : inexact-ok
+= rootn towardzero intel96 -0x8p-16448 -5LL : -0x2p+3288 : inexact-ok
+= rootn upward intel96 -0x8p-16448 -5LL : -0x2p+3288 : inexact-ok
+= rootn downward m68k96 -0x8p-16448 -5LL : -0x2p+3288 : inexact-ok
+= rootn tonearest m68k96 -0x8p-16448 -5LL : -0x2p+3288 : inexact-ok
+= rootn towardzero m68k96 -0x8p-16448 -5LL : -0x2p+3288 : inexact-ok
+= rootn upward m68k96 -0x8p-16448 -5LL : -0x2p+3288 : inexact-ok
+= rootn downward binary128 -0x8p-16448 -5LL : -0x2p+3288 : inexact-ok
+= rootn tonearest binary128 -0x8p-16448 -5LL : -0x2p+3288 : inexact-ok
+= rootn towardzero binary128 -0x8p-16448 -5LL : -0x2p+3288 : inexact-ok
+= rootn upward binary128 -0x8p-16448 -5LL : -0x2p+3288 : inexact-ok
+= rootn downward m68k96 -0x4p-16448 -5LL : -0x2.4c2230d75cce92d8p+3288 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16448 -5LL : -0x2.4c2230d75cce92d4p+3288 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16448 -5LL : -0x2.4c2230d75cce92d4p+3288 : inexact-ok
+= rootn upward m68k96 -0x4p-16448 -5LL : -0x2.4c2230d75cce92d4p+3288 : inexact-ok
+= rootn downward binary128 -0x4p-16448 -5LL : -0x2.4c2230d75cce92d4a43c840ec1c4p+3288 : inexact-ok
+= rootn tonearest binary128 -0x4p-16448 -5LL : -0x2.4c2230d75cce92d4a43c840ec1c4p+3288 : inexact-ok
+= rootn towardzero binary128 -0x4p-16448 -5LL : -0x2.4c2230d75cce92d4a43c840ec1c2p+3288 : inexact-ok
+= rootn upward binary128 -0x4p-16448 -5LL : -0x2.4c2230d75cce92d4a43c840ec1c2p+3288 : inexact-ok
+= rootn downward binary128 -0x4p-16496 -5LL : -0x6.f6e336b6f8480853d874c2c9fea8p+3296 : inexact-ok
+= rootn tonearest binary128 -0x4p-16496 -5LL : -0x6.f6e336b6f8480853d874c2c9fea4p+3296 : inexact-ok
+= rootn towardzero binary128 -0x4p-16496 -5LL : -0x6.f6e336b6f8480853d874c2c9fea4p+3296 : inexact-ok
+= rootn upward binary128 -0x4p-16496 -5LL : -0x6.f6e336b6f8480853d874c2c9fea4p+3296 : inexact-ok
+rootn -min_subnorm -63
+= rootn downward binary32 -0x8p-152 -63LL : -0x5.26dd08p+0 : inexact-ok
+= rootn tonearest binary32 -0x8p-152 -63LL : -0x5.26ddp+0 : inexact-ok
+= rootn towardzero binary32 -0x8p-152 -63LL : -0x5.26ddp+0 : inexact-ok
+= rootn upward binary32 -0x8p-152 -63LL : -0x5.26ddp+0 : inexact-ok
+= rootn downward binary64 -0x8p-152 -63LL : -0x5.26dd03d178724p+0 : inexact-ok
+= rootn tonearest binary64 -0x8p-152 -63LL : -0x5.26dd03d17872p+0 : inexact-ok
+= rootn towardzero binary64 -0x8p-152 -63LL : -0x5.26dd03d17872p+0 : inexact-ok
+= rootn upward binary64 -0x8p-152 -63LL : -0x5.26dd03d17872p+0 : inexact-ok
+= rootn downward intel96 -0x8p-152 -63LL : -0x5.26dd03d178720308p+0 : inexact-ok
+= rootn tonearest intel96 -0x8p-152 -63LL : -0x5.26dd03d178720308p+0 : inexact-ok
+= rootn towardzero intel96 -0x8p-152 -63LL : -0x5.26dd03d1787203p+0 : inexact-ok
+= rootn upward intel96 -0x8p-152 -63LL : -0x5.26dd03d1787203p+0 : inexact-ok
+= rootn downward m68k96 -0x8p-152 -63LL : -0x5.26dd03d178720308p+0 : inexact-ok
+= rootn tonearest m68k96 -0x8p-152 -63LL : -0x5.26dd03d178720308p+0 : inexact-ok
+= rootn towardzero m68k96 -0x8p-152 -63LL : -0x5.26dd03d1787203p+0 : inexact-ok
+= rootn upward m68k96 -0x8p-152 -63LL : -0x5.26dd03d1787203p+0 : inexact-ok
+= rootn downward binary128 -0x8p-152 -63LL : -0x5.26dd03d178720304b788bfab2e18p+0 : inexact-ok
+= rootn tonearest binary128 -0x8p-152 -63LL : -0x5.26dd03d178720304b788bfab2e14p+0 : inexact-ok
+= rootn towardzero binary128 -0x8p-152 -63LL : -0x5.26dd03d178720304b788bfab2e14p+0 : inexact-ok
+= rootn upward binary128 -0x8p-152 -63LL : -0x5.26dd03d178720304b788bfab2e14p+0 : inexact-ok
+= rootn downward ibm128 -0x8p-152 -63LL : -0x5.26dd03d178720304b788bfab3p+0 : inexact-ok
+= rootn tonearest ibm128 -0x8p-152 -63LL : -0x5.26dd03d178720304b788bfab2ep+0 : inexact-ok
+= rootn towardzero ibm128 -0x8p-152 -63LL : -0x5.26dd03d178720304b788bfab2ep+0 : inexact-ok
+= rootn upward ibm128 -0x8p-152 -63LL : -0x5.26dd03d178720304b788bfab2ep+0 : inexact-ok
+= rootn downward binary64 -0x4p-1076 -63LL : -0x2.112e7c591538ep+16 : inexact-ok
+= rootn tonearest binary64 -0x4p-1076 -63LL : -0x2.112e7c591538cp+16 : inexact-ok
+= rootn towardzero binary64 -0x4p-1076 -63LL : -0x2.112e7c591538cp+16 : inexact-ok
+= rootn upward binary64 -0x4p-1076 -63LL : -0x2.112e7c591538cp+16 : inexact-ok
+= rootn downward intel96 -0x4p-1076 -63LL : -0x2.112e7c591538c198p+16 : inexact-ok
+= rootn tonearest intel96 -0x4p-1076 -63LL : -0x2.112e7c591538c198p+16 : inexact-ok
+= rootn towardzero intel96 -0x4p-1076 -63LL : -0x2.112e7c591538c194p+16 : inexact-ok
+= rootn upward intel96 -0x4p-1076 -63LL : -0x2.112e7c591538c194p+16 : inexact-ok
+= rootn downward m68k96 -0x4p-1076 -63LL : -0x2.112e7c591538c198p+16 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1076 -63LL : -0x2.112e7c591538c198p+16 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1076 -63LL : -0x2.112e7c591538c194p+16 : inexact-ok
+= rootn upward m68k96 -0x4p-1076 -63LL : -0x2.112e7c591538c194p+16 : inexact-ok
+= rootn downward binary128 -0x4p-1076 -63LL : -0x2.112e7c591538c1967e80a6b18666p+16 : inexact-ok
+= rootn tonearest binary128 -0x4p-1076 -63LL : -0x2.112e7c591538c1967e80a6b18666p+16 : inexact-ok
+= rootn towardzero binary128 -0x4p-1076 -63LL : -0x2.112e7c591538c1967e80a6b18664p+16 : inexact-ok
+= rootn upward binary128 -0x4p-1076 -63LL : -0x2.112e7c591538c1967e80a6b18664p+16 : inexact-ok
+= rootn downward ibm128 -0x4p-1076 -63LL : -0x2.112e7c591538c1967e80a6b187p+16 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1076 -63LL : -0x2.112e7c591538c1967e80a6b186p+16 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1076 -63LL : -0x2.112e7c591538c1967e80a6b186p+16 : inexact-ok
+= rootn upward ibm128 -0x4p-1076 -63LL : -0x2.112e7c591538c1967e80a6b186p+16 : inexact-ok
+= rootn downward intel96 -0x8p-16448 -63LL : -0x2.0b6429d2247e1da4p+260 : inexact-ok
+= rootn tonearest intel96 -0x8p-16448 -63LL : -0x2.0b6429d2247e1dap+260 : inexact-ok
+= rootn towardzero intel96 -0x8p-16448 -63LL : -0x2.0b6429d2247e1dap+260 : inexact-ok
+= rootn upward intel96 -0x8p-16448 -63LL : -0x2.0b6429d2247e1dap+260 : inexact-ok
+= rootn downward m68k96 -0x8p-16448 -63LL : -0x2.0b6429d2247e1da4p+260 : inexact-ok
+= rootn tonearest m68k96 -0x8p-16448 -63LL : -0x2.0b6429d2247e1dap+260 : inexact-ok
+= rootn towardzero m68k96 -0x8p-16448 -63LL : -0x2.0b6429d2247e1dap+260 : inexact-ok
+= rootn upward m68k96 -0x8p-16448 -63LL : -0x2.0b6429d2247e1dap+260 : inexact-ok
+= rootn downward binary128 -0x8p-16448 -63LL : -0x2.0b6429d2247e1da02a7b95057b7p+260 : inexact-ok
+= rootn tonearest binary128 -0x8p-16448 -63LL : -0x2.0b6429d2247e1da02a7b95057b6ep+260 : inexact-ok
+= rootn towardzero binary128 -0x8p-16448 -63LL : -0x2.0b6429d2247e1da02a7b95057b6ep+260 : inexact-ok
+= rootn upward binary128 -0x8p-16448 -63LL : -0x2.0b6429d2247e1da02a7b95057b6ep+260 : inexact-ok
+= rootn downward m68k96 -0x4p-16448 -63LL : -0x2.112e7c591538c198p+260 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16448 -63LL : -0x2.112e7c591538c198p+260 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16448 -63LL : -0x2.112e7c591538c194p+260 : inexact-ok
+= rootn upward m68k96 -0x4p-16448 -63LL : -0x2.112e7c591538c194p+260 : inexact-ok
+= rootn downward binary128 -0x4p-16448 -63LL : -0x2.112e7c591538c1967e80a6b18666p+260 : inexact-ok
+= rootn tonearest binary128 -0x4p-16448 -63LL : -0x2.112e7c591538c1967e80a6b18666p+260 : inexact-ok
+= rootn towardzero binary128 -0x4p-16448 -63LL : -0x2.112e7c591538c1967e80a6b18664p+260 : inexact-ok
+= rootn upward binary128 -0x4p-16448 -63LL : -0x2.112e7c591538c1967e80a6b18664p+260 : inexact-ok
+= rootn downward binary128 -0x4p-16496 -63LL : -0x3.815917f84d57c8e7269b280406c8p+260 : inexact-ok
+= rootn tonearest binary128 -0x4p-16496 -63LL : -0x3.815917f84d57c8e7269b280406c6p+260 : inexact-ok
+= rootn towardzero binary128 -0x4p-16496 -63LL : -0x3.815917f84d57c8e7269b280406c6p+260 : inexact-ok
+= rootn upward binary128 -0x4p-16496 -63LL : -0x3.815917f84d57c8e7269b280406c6p+260 : inexact-ok
+rootn -min_subnorm -127
+= rootn downward binary32 -0x8p-152 -127LL : -0x2.415208p+0 : inexact-ok
+= rootn tonearest binary32 -0x8p-152 -127LL : -0x2.415204p+0 : inexact-ok
+= rootn towardzero binary32 -0x8p-152 -127LL : -0x2.415204p+0 : inexact-ok
+= rootn upward binary32 -0x8p-152 -127LL : -0x2.415204p+0 : inexact-ok
+= rootn downward binary64 -0x8p-152 -127LL : -0x2.41520478b9972p+0 : inexact-ok
+= rootn tonearest binary64 -0x8p-152 -127LL : -0x2.41520478b9972p+0 : inexact-ok
+= rootn towardzero binary64 -0x8p-152 -127LL : -0x2.41520478b997p+0 : inexact-ok
+= rootn upward binary64 -0x8p-152 -127LL : -0x2.41520478b997p+0 : inexact-ok
+= rootn downward intel96 -0x8p-152 -127LL : -0x2.41520478b99718ccp+0 : inexact-ok
+= rootn tonearest intel96 -0x8p-152 -127LL : -0x2.41520478b99718ccp+0 : inexact-ok
+= rootn towardzero intel96 -0x8p-152 -127LL : -0x2.41520478b99718c8p+0 : inexact-ok
+= rootn upward intel96 -0x8p-152 -127LL : -0x2.41520478b99718c8p+0 : inexact-ok
+= rootn downward m68k96 -0x8p-152 -127LL : -0x2.41520478b99718ccp+0 : inexact-ok
+= rootn tonearest m68k96 -0x8p-152 -127LL : -0x2.41520478b99718ccp+0 : inexact-ok
+= rootn towardzero m68k96 -0x8p-152 -127LL : -0x2.41520478b99718c8p+0 : inexact-ok
+= rootn upward m68k96 -0x8p-152 -127LL : -0x2.41520478b99718c8p+0 : inexact-ok
+= rootn downward binary128 -0x8p-152 -127LL : -0x2.41520478b99718cac68a82246df6p+0 : inexact-ok
+= rootn tonearest binary128 -0x8p-152 -127LL : -0x2.41520478b99718cac68a82246df6p+0 : inexact-ok
+= rootn towardzero binary128 -0x8p-152 -127LL : -0x2.41520478b99718cac68a82246df4p+0 : inexact-ok
+= rootn upward binary128 -0x8p-152 -127LL : -0x2.41520478b99718cac68a82246df4p+0 : inexact-ok
+= rootn downward ibm128 -0x8p-152 -127LL : -0x2.41520478b99718cac68a82246ep+0 : inexact-ok
+= rootn tonearest ibm128 -0x8p-152 -127LL : -0x2.41520478b99718cac68a82246ep+0 : inexact-ok
+= rootn towardzero ibm128 -0x8p-152 -127LL : -0x2.41520478b99718cac68a82246dp+0 : inexact-ok
+= rootn upward ibm128 -0x8p-152 -127LL : -0x2.41520478b99718cac68a82246dp+0 : inexact-ok
+= rootn downward binary64 -0x4p-1076 -127LL : -0x1.5f5519aefcdf4p+8 : inexact-ok
+= rootn tonearest binary64 -0x4p-1076 -127LL : -0x1.5f5519aefcdf4p+8 : inexact-ok
+= rootn towardzero binary64 -0x4p-1076 -127LL : -0x1.5f5519aefcdf3p+8 : inexact-ok
+= rootn upward binary64 -0x4p-1076 -127LL : -0x1.5f5519aefcdf3p+8 : inexact-ok
+= rootn downward intel96 -0x4p-1076 -127LL : -0x1.5f5519aefcdf3e3cp+8 : inexact-ok
+= rootn tonearest intel96 -0x4p-1076 -127LL : -0x1.5f5519aefcdf3e3ap+8 : inexact-ok
+= rootn towardzero intel96 -0x4p-1076 -127LL : -0x1.5f5519aefcdf3e3ap+8 : inexact-ok
+= rootn upward intel96 -0x4p-1076 -127LL : -0x1.5f5519aefcdf3e3ap+8 : inexact-ok
+= rootn downward m68k96 -0x4p-1076 -127LL : -0x1.5f5519aefcdf3e3cp+8 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1076 -127LL : -0x1.5f5519aefcdf3e3ap+8 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1076 -127LL : -0x1.5f5519aefcdf3e3ap+8 : inexact-ok
+= rootn upward m68k96 -0x4p-1076 -127LL : -0x1.5f5519aefcdf3e3ap+8 : inexact-ok
+= rootn downward binary128 -0x4p-1076 -127LL : -0x1.5f5519aefcdf3e3ab8df3f96a129p+8 : inexact-ok
+= rootn tonearest binary128 -0x4p-1076 -127LL : -0x1.5f5519aefcdf3e3ab8df3f96a129p+8 : inexact-ok
+= rootn towardzero binary128 -0x4p-1076 -127LL : -0x1.5f5519aefcdf3e3ab8df3f96a128p+8 : inexact-ok
+= rootn upward binary128 -0x4p-1076 -127LL : -0x1.5f5519aefcdf3e3ab8df3f96a128p+8 : inexact-ok
+= rootn downward ibm128 -0x4p-1076 -127LL : -0x1.5f5519aefcdf3e3ab8df3f96a18p+8 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1076 -127LL : -0x1.5f5519aefcdf3e3ab8df3f96a1p+8 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1076 -127LL : -0x1.5f5519aefcdf3e3ab8df3f96a1p+8 : inexact-ok
+= rootn upward ibm128 -0x4p-1076 -127LL : -0x1.5f5519aefcdf3e3ab8df3f96a1p+8 : inexact-ok
+= rootn downward intel96 -0x8p-16448 -127LL : -0x2.ce2c7676d88bc654p+128 : inexact-ok
+= rootn tonearest intel96 -0x8p-16448 -127LL : -0x2.ce2c7676d88bc654p+128 : inexact-ok
+= rootn towardzero intel96 -0x8p-16448 -127LL : -0x2.ce2c7676d88bc65p+128 : inexact-ok
+= rootn upward intel96 -0x8p-16448 -127LL : -0x2.ce2c7676d88bc65p+128 : inexact-ok
+= rootn downward m68k96 -0x8p-16448 -127LL : -0x2.ce2c7676d88bc654p+128 : inexact-ok
+= rootn tonearest m68k96 -0x8p-16448 -127LL : -0x2.ce2c7676d88bc654p+128 : inexact-ok
+= rootn towardzero m68k96 -0x8p-16448 -127LL : -0x2.ce2c7676d88bc65p+128 : inexact-ok
+= rootn upward m68k96 -0x8p-16448 -127LL : -0x2.ce2c7676d88bc65p+128 : inexact-ok
+= rootn downward binary128 -0x8p-16448 -127LL : -0x2.ce2c7676d88bc6535b867b1d1f5p+128 : inexact-ok
+= rootn tonearest binary128 -0x8p-16448 -127LL : -0x2.ce2c7676d88bc6535b867b1d1f5p+128 : inexact-ok
+= rootn towardzero binary128 -0x8p-16448 -127LL : -0x2.ce2c7676d88bc6535b867b1d1f4ep+128 : inexact-ok
+= rootn upward binary128 -0x8p-16448 -127LL : -0x2.ce2c7676d88bc6535b867b1d1f4ep+128 : inexact-ok
+= rootn downward m68k96 -0x4p-16448 -127LL : -0x2.d21aa542b59cee7cp+128 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16448 -127LL : -0x2.d21aa542b59cee78p+128 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16448 -127LL : -0x2.d21aa542b59cee78p+128 : inexact-ok
+= rootn upward m68k96 -0x4p-16448 -127LL : -0x2.d21aa542b59cee78p+128 : inexact-ok
+= rootn downward binary128 -0x4p-16448 -127LL : -0x2.d21aa542b59cee7834114d01903ap+128 : inexact-ok
+= rootn tonearest binary128 -0x4p-16448 -127LL : -0x2.d21aa542b59cee7834114d01903ap+128 : inexact-ok
+= rootn towardzero binary128 -0x4p-16448 -127LL : -0x2.d21aa542b59cee7834114d019038p+128 : inexact-ok
+= rootn upward binary128 -0x4p-16448 -127LL : -0x2.d21aa542b59cee7834114d019038p+128 : inexact-ok
+= rootn downward binary128 -0x4p-16496 -127LL : -0x3.aa5f2a07b8d898c56524b9945d6cp+128 : inexact-ok
+= rootn tonearest binary128 -0x4p-16496 -127LL : -0x3.aa5f2a07b8d898c56524b9945d6cp+128 : inexact-ok
+= rootn towardzero binary128 -0x4p-16496 -127LL : -0x3.aa5f2a07b8d898c56524b9945d6ap+128 : inexact-ok
+= rootn upward binary128 -0x4p-16496 -127LL : -0x3.aa5f2a07b8d898c56524b9945d6ap+128 : inexact-ok
+rootn -min_subnorm -255
+= rootn downward binary32 -0x8p-152 -255LL : -0x1.7fd3cep+0 : inexact-ok
+= rootn tonearest binary32 -0x8p-152 -255LL : -0x1.7fd3cep+0 : inexact-ok
+= rootn towardzero binary32 -0x8p-152 -255LL : -0x1.7fd3ccp+0 : inexact-ok
+= rootn upward binary32 -0x8p-152 -255LL : -0x1.7fd3ccp+0 : inexact-ok
+= rootn downward binary64 -0x8p-152 -255LL : -0x1.7fd3cd8e3fd96p+0 : inexact-ok
+= rootn tonearest binary64 -0x8p-152 -255LL : -0x1.7fd3cd8e3fd95p+0 : inexact-ok
+= rootn towardzero binary64 -0x8p-152 -255LL : -0x1.7fd3cd8e3fd95p+0 : inexact-ok
+= rootn upward binary64 -0x8p-152 -255LL : -0x1.7fd3cd8e3fd95p+0 : inexact-ok
+= rootn downward intel96 -0x8p-152 -255LL : -0x1.7fd3cd8e3fd95182p+0 : inexact-ok
+= rootn tonearest intel96 -0x8p-152 -255LL : -0x1.7fd3cd8e3fd9518p+0 : inexact-ok
+= rootn towardzero intel96 -0x8p-152 -255LL : -0x1.7fd3cd8e3fd9518p+0 : inexact-ok
+= rootn upward intel96 -0x8p-152 -255LL : -0x1.7fd3cd8e3fd9518p+0 : inexact-ok
+= rootn downward m68k96 -0x8p-152 -255LL : -0x1.7fd3cd8e3fd95182p+0 : inexact-ok
+= rootn tonearest m68k96 -0x8p-152 -255LL : -0x1.7fd3cd8e3fd9518p+0 : inexact-ok
+= rootn towardzero m68k96 -0x8p-152 -255LL : -0x1.7fd3cd8e3fd9518p+0 : inexact-ok
+= rootn upward m68k96 -0x8p-152 -255LL : -0x1.7fd3cd8e3fd9518p+0 : inexact-ok
+= rootn downward binary128 -0x8p-152 -255LL : -0x1.7fd3cd8e3fd9518058f0a896793ep+0 : inexact-ok
+= rootn tonearest binary128 -0x8p-152 -255LL : -0x1.7fd3cd8e3fd9518058f0a896793ep+0 : inexact-ok
+= rootn towardzero binary128 -0x8p-152 -255LL : -0x1.7fd3cd8e3fd9518058f0a896793dp+0 : inexact-ok
+= rootn upward binary128 -0x8p-152 -255LL : -0x1.7fd3cd8e3fd9518058f0a896793dp+0 : inexact-ok
+= rootn downward ibm128 -0x8p-152 -255LL : -0x1.7fd3cd8e3fd9518058f0a896798p+0 : inexact-ok
+= rootn tonearest ibm128 -0x8p-152 -255LL : -0x1.7fd3cd8e3fd9518058f0a89679p+0 : inexact-ok
+= rootn towardzero ibm128 -0x8p-152 -255LL : -0x1.7fd3cd8e3fd9518058f0a89679p+0 : inexact-ok
+= rootn upward ibm128 -0x8p-152 -255LL : -0x1.7fd3cd8e3fd9518058f0a89679p+0 : inexact-ok
+= rootn downward binary64 -0x4p-1076 -255LL : -0x1.28797f79cb757p+4 : inexact-ok
+= rootn tonearest binary64 -0x4p-1076 -255LL : -0x1.28797f79cb757p+4 : inexact-ok
+= rootn towardzero binary64 -0x4p-1076 -255LL : -0x1.28797f79cb756p+4 : inexact-ok
+= rootn upward binary64 -0x4p-1076 -255LL : -0x1.28797f79cb756p+4 : inexact-ok
+= rootn downward intel96 -0x4p-1076 -255LL : -0x1.28797f79cb75696ep+4 : inexact-ok
+= rootn tonearest intel96 -0x4p-1076 -255LL : -0x1.28797f79cb75696cp+4 : inexact-ok
+= rootn towardzero intel96 -0x4p-1076 -255LL : -0x1.28797f79cb75696cp+4 : inexact-ok
+= rootn upward intel96 -0x4p-1076 -255LL : -0x1.28797f79cb75696cp+4 : inexact-ok
+= rootn downward m68k96 -0x4p-1076 -255LL : -0x1.28797f79cb75696ep+4 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1076 -255LL : -0x1.28797f79cb75696cp+4 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1076 -255LL : -0x1.28797f79cb75696cp+4 : inexact-ok
+= rootn upward m68k96 -0x4p-1076 -255LL : -0x1.28797f79cb75696cp+4 : inexact-ok
+= rootn downward binary128 -0x4p-1076 -255LL : -0x1.28797f79cb75696cbcc2b8a7625ap+4 : inexact-ok
+= rootn tonearest binary128 -0x4p-1076 -255LL : -0x1.28797f79cb75696cbcc2b8a7625ap+4 : inexact-ok
+= rootn towardzero binary128 -0x4p-1076 -255LL : -0x1.28797f79cb75696cbcc2b8a76259p+4 : inexact-ok
+= rootn upward binary128 -0x4p-1076 -255LL : -0x1.28797f79cb75696cbcc2b8a76259p+4 : inexact-ok
+= rootn downward ibm128 -0x4p-1076 -255LL : -0x1.28797f79cb75696cbcc2b8a7628p+4 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1076 -255LL : -0x1.28797f79cb75696cbcc2b8a7628p+4 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1076 -255LL : -0x1.28797f79cb75696cbcc2b8a762p+4 : inexact-ok
+= rootn upward ibm128 -0x4p-1076 -255LL : -0x1.28797f79cb75696cbcc2b8a762p+4 : inexact-ok
+= rootn downward intel96 -0x8p-16448 -255LL : -0x1.679635b09054dfc4p+64 : inexact-ok
+= rootn tonearest intel96 -0x8p-16448 -255LL : -0x1.679635b09054dfc4p+64 : inexact-ok
+= rootn towardzero intel96 -0x8p-16448 -255LL : -0x1.679635b09054dfc2p+64 : inexact-ok
+= rootn upward intel96 -0x8p-16448 -255LL : -0x1.679635b09054dfc2p+64 : inexact-ok
+= rootn downward m68k96 -0x8p-16448 -255LL : -0x1.679635b09054dfc4p+64 : inexact-ok
+= rootn tonearest m68k96 -0x8p-16448 -255LL : -0x1.679635b09054dfc4p+64 : inexact-ok
+= rootn towardzero m68k96 -0x8p-16448 -255LL : -0x1.679635b09054dfc2p+64 : inexact-ok
+= rootn upward m68k96 -0x8p-16448 -255LL : -0x1.679635b09054dfc2p+64 : inexact-ok
+= rootn downward binary128 -0x8p-16448 -255LL : -0x1.679635b09054dfc3fa2268a72233p+64 : inexact-ok
+= rootn tonearest binary128 -0x8p-16448 -255LL : -0x1.679635b09054dfc3fa2268a72233p+64 : inexact-ok
+= rootn towardzero binary128 -0x8p-16448 -255LL : -0x1.679635b09054dfc3fa2268a72232p+64 : inexact-ok
+= rootn upward binary128 -0x8p-16448 -255LL : -0x1.679635b09054dfc3fa2268a72232p+64 : inexact-ok
+= rootn downward m68k96 -0x4p-16448 -255LL : -0x1.6890c62b6ee1c9d8p+64 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16448 -255LL : -0x1.6890c62b6ee1c9d6p+64 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16448 -255LL : -0x1.6890c62b6ee1c9d6p+64 : inexact-ok
+= rootn upward m68k96 -0x4p-16448 -255LL : -0x1.6890c62b6ee1c9d6p+64 : inexact-ok
+= rootn downward binary128 -0x4p-16448 -255LL : -0x1.6890c62b6ee1c9d6c1792ff0f026p+64 : inexact-ok
+= rootn tonearest binary128 -0x4p-16448 -255LL : -0x1.6890c62b6ee1c9d6c1792ff0f025p+64 : inexact-ok
+= rootn towardzero binary128 -0x4p-16448 -255LL : -0x1.6890c62b6ee1c9d6c1792ff0f025p+64 : inexact-ok
+= rootn upward binary128 -0x4p-16448 -255LL : -0x1.6890c62b6ee1c9d6c1792ff0f025p+64 : inexact-ok
+= rootn downward binary128 -0x4p-16496 -255LL : -0x1.9ad1371e3daf0dc380d3dbba56c7p+64 : inexact-ok
+= rootn tonearest binary128 -0x4p-16496 -255LL : -0x1.9ad1371e3daf0dc380d3dbba56c7p+64 : inexact-ok
+= rootn towardzero binary128 -0x4p-16496 -255LL : -0x1.9ad1371e3daf0dc380d3dbba56c6p+64 : inexact-ok
+= rootn upward binary128 -0x4p-16496 -255LL : -0x1.9ad1371e3daf0dc380d3dbba56c6p+64 : inexact-ok
+rootn -min_subnorm -511
+= rootn downward binary32 -0x8p-152 -511LL : -0x1.39570cp+0 : inexact-ok
+= rootn tonearest binary32 -0x8p-152 -511LL : -0x1.39570ap+0 : inexact-ok
+= rootn towardzero binary32 -0x8p-152 -511LL : -0x1.39570ap+0 : inexact-ok
+= rootn upward binary32 -0x8p-152 -511LL : -0x1.39570ap+0 : inexact-ok
+= rootn downward binary64 -0x8p-152 -511LL : -0x1.39570a0a97215p+0 : inexact-ok
+= rootn tonearest binary64 -0x8p-152 -511LL : -0x1.39570a0a97214p+0 : inexact-ok
+= rootn towardzero binary64 -0x8p-152 -511LL : -0x1.39570a0a97214p+0 : inexact-ok
+= rootn upward binary64 -0x8p-152 -511LL : -0x1.39570a0a97214p+0 : inexact-ok
+= rootn downward intel96 -0x8p-152 -511LL : -0x1.39570a0a972142a4p+0 : inexact-ok
+= rootn tonearest intel96 -0x8p-152 -511LL : -0x1.39570a0a972142a4p+0 : inexact-ok
+= rootn towardzero intel96 -0x8p-152 -511LL : -0x1.39570a0a972142a2p+0 : inexact-ok
+= rootn upward intel96 -0x8p-152 -511LL : -0x1.39570a0a972142a2p+0 : inexact-ok
+= rootn downward m68k96 -0x8p-152 -511LL : -0x1.39570a0a972142a4p+0 : inexact-ok
+= rootn tonearest m68k96 -0x8p-152 -511LL : -0x1.39570a0a972142a4p+0 : inexact-ok
+= rootn towardzero m68k96 -0x8p-152 -511LL : -0x1.39570a0a972142a2p+0 : inexact-ok
+= rootn upward m68k96 -0x8p-152 -511LL : -0x1.39570a0a972142a2p+0 : inexact-ok
+= rootn downward binary128 -0x8p-152 -511LL : -0x1.39570a0a972142a3999991308fcbp+0 : inexact-ok
+= rootn tonearest binary128 -0x8p-152 -511LL : -0x1.39570a0a972142a3999991308fcbp+0 : inexact-ok
+= rootn towardzero binary128 -0x8p-152 -511LL : -0x1.39570a0a972142a3999991308fcap+0 : inexact-ok
+= rootn upward binary128 -0x8p-152 -511LL : -0x1.39570a0a972142a3999991308fcap+0 : inexact-ok
+= rootn downward ibm128 -0x8p-152 -511LL : -0x1.39570a0a972142a3999991309p+0 : inexact-ok
+= rootn tonearest ibm128 -0x8p-152 -511LL : -0x1.39570a0a972142a3999991309p+0 : inexact-ok
+= rootn towardzero ibm128 -0x8p-152 -511LL : -0x1.39570a0a972142a3999991308f8p+0 : inexact-ok
+= rootn upward ibm128 -0x8p-152 -511LL : -0x1.39570a0a972142a3999991308f8p+0 : inexact-ok
+= rootn downward binary64 -0x4p-1076 -511LL : -0x4.4ad63052359a4p+0 : inexact-ok
+= rootn tonearest binary64 -0x4p-1076 -511LL : -0x4.4ad63052359a4p+0 : inexact-ok
+= rootn towardzero binary64 -0x4p-1076 -511LL : -0x4.4ad63052359ap+0 : inexact-ok
+= rootn upward binary64 -0x4p-1076 -511LL : -0x4.4ad63052359ap+0 : inexact-ok
+= rootn downward intel96 -0x4p-1076 -511LL : -0x4.4ad63052359a3a38p+0 : inexact-ok
+= rootn tonearest intel96 -0x4p-1076 -511LL : -0x4.4ad63052359a3a38p+0 : inexact-ok
+= rootn towardzero intel96 -0x4p-1076 -511LL : -0x4.4ad63052359a3a3p+0 : inexact-ok
+= rootn upward intel96 -0x4p-1076 -511LL : -0x4.4ad63052359a3a3p+0 : inexact-ok
+= rootn downward m68k96 -0x4p-1076 -511LL : -0x4.4ad63052359a3a38p+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1076 -511LL : -0x4.4ad63052359a3a38p+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1076 -511LL : -0x4.4ad63052359a3a3p+0 : inexact-ok
+= rootn upward m68k96 -0x4p-1076 -511LL : -0x4.4ad63052359a3a3p+0 : inexact-ok
+= rootn downward binary128 -0x4p-1076 -511LL : -0x4.4ad63052359a3a34478fc84ff7fcp+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-1076 -511LL : -0x4.4ad63052359a3a34478fc84ff7f8p+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-1076 -511LL : -0x4.4ad63052359a3a34478fc84ff7f8p+0 : inexact-ok
+= rootn upward binary128 -0x4p-1076 -511LL : -0x4.4ad63052359a3a34478fc84ff7f8p+0 : inexact-ok
+= rootn downward ibm128 -0x4p-1076 -511LL : -0x4.4ad63052359a3a34478fc84ff8p+0 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1076 -511LL : -0x4.4ad63052359a3a34478fc84ff8p+0 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1076 -511LL : -0x4.4ad63052359a3a34478fc84ff6p+0 : inexact-ok
+= rootn upward ibm128 -0x4p-1076 -511LL : -0x4.4ad63052359a3a34478fc84ff6p+0 : inexact-ok
+= rootn downward intel96 -0x8p-16448 -511LL : -0x1.226b79141841cc9ep+32 : inexact-ok
+= rootn tonearest intel96 -0x8p-16448 -511LL : -0x1.226b79141841cc9ep+32 : inexact-ok
+= rootn towardzero intel96 -0x8p-16448 -511LL : -0x1.226b79141841cc9cp+32 : inexact-ok
+= rootn upward intel96 -0x8p-16448 -511LL : -0x1.226b79141841cc9cp+32 : inexact-ok
+= rootn downward m68k96 -0x8p-16448 -511LL : -0x1.226b79141841cc9ep+32 : inexact-ok
+= rootn tonearest m68k96 -0x8p-16448 -511LL : -0x1.226b79141841cc9ep+32 : inexact-ok
+= rootn towardzero m68k96 -0x8p-16448 -511LL : -0x1.226b79141841cc9cp+32 : inexact-ok
+= rootn upward m68k96 -0x8p-16448 -511LL : -0x1.226b79141841cc9cp+32 : inexact-ok
+= rootn downward binary128 -0x8p-16448 -511LL : -0x1.226b79141841cc9dca90d3104e5cp+32 : inexact-ok
+= rootn tonearest binary128 -0x8p-16448 -511LL : -0x1.226b79141841cc9dca90d3104e5cp+32 : inexact-ok
+= rootn towardzero binary128 -0x8p-16448 -511LL : -0x1.226b79141841cc9dca90d3104e5bp+32 : inexact-ok
+= rootn upward binary128 -0x8p-16448 -511LL : -0x1.226b79141841cc9dca90d3104e5bp+32 : inexact-ok
+= rootn downward m68k96 -0x4p-16448 -511LL : -0x1.22d063e433fde54ap+32 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16448 -511LL : -0x1.22d063e433fde548p+32 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16448 -511LL : -0x1.22d063e433fde548p+32 : inexact-ok
+= rootn upward m68k96 -0x4p-16448 -511LL : -0x1.22d063e433fde548p+32 : inexact-ok
+= rootn downward binary128 -0x4p-16448 -511LL : -0x1.22d063e433fde548859274c57397p+32 : inexact-ok
+= rootn tonearest binary128 -0x4p-16448 -511LL : -0x1.22d063e433fde548859274c57396p+32 : inexact-ok
+= rootn towardzero binary128 -0x4p-16448 -511LL : -0x1.22d063e433fde548859274c57396p+32 : inexact-ok
+= rootn upward binary128 -0x4p-16448 -511LL : -0x1.22d063e433fde548859274c57396p+32 : inexact-ok
+= rootn downward binary128 -0x4p-16496 -511LL : -0x1.3660fd17e6a7c40ba029e833beedp+32 : inexact-ok
+= rootn tonearest binary128 -0x4p-16496 -511LL : -0x1.3660fd17e6a7c40ba029e833beedp+32 : inexact-ok
+= rootn towardzero binary128 -0x4p-16496 -511LL : -0x1.3660fd17e6a7c40ba029e833beecp+32 : inexact-ok
+= rootn upward binary128 -0x4p-16496 -511LL : -0x1.3660fd17e6a7c40ba029e833beecp+32 : inexact-ok
+rootn -min_subnorm -1023
+= rootn downward binary32 -0x8p-152 -1023LL : -0x1.1b31d4p+0 : inexact-ok
+= rootn tonearest binary32 -0x8p-152 -1023LL : -0x1.1b31d2p+0 : inexact-ok
+= rootn towardzero binary32 -0x8p-152 -1023LL : -0x1.1b31d2p+0 : inexact-ok
+= rootn upward binary32 -0x8p-152 -1023LL : -0x1.1b31d2p+0 : inexact-ok
+= rootn downward binary64 -0x8p-152 -1023LL : -0x1.1b31d2a14e059p+0 : inexact-ok
+= rootn tonearest binary64 -0x8p-152 -1023LL : -0x1.1b31d2a14e059p+0 : inexact-ok
+= rootn towardzero binary64 -0x8p-152 -1023LL : -0x1.1b31d2a14e058p+0 : inexact-ok
+= rootn upward binary64 -0x8p-152 -1023LL : -0x1.1b31d2a14e058p+0 : inexact-ok
+= rootn downward intel96 -0x8p-152 -1023LL : -0x1.1b31d2a14e058f2ap+0 : inexact-ok
+= rootn tonearest intel96 -0x8p-152 -1023LL : -0x1.1b31d2a14e058f28p+0 : inexact-ok
+= rootn towardzero intel96 -0x8p-152 -1023LL : -0x1.1b31d2a14e058f28p+0 : inexact-ok
+= rootn upward intel96 -0x8p-152 -1023LL : -0x1.1b31d2a14e058f28p+0 : inexact-ok
+= rootn downward m68k96 -0x8p-152 -1023LL : -0x1.1b31d2a14e058f2ap+0 : inexact-ok
+= rootn tonearest m68k96 -0x8p-152 -1023LL : -0x1.1b31d2a14e058f28p+0 : inexact-ok
+= rootn towardzero m68k96 -0x8p-152 -1023LL : -0x1.1b31d2a14e058f28p+0 : inexact-ok
+= rootn upward m68k96 -0x8p-152 -1023LL : -0x1.1b31d2a14e058f28p+0 : inexact-ok
+= rootn downward binary128 -0x8p-152 -1023LL : -0x1.1b31d2a14e058f280259ac7790b9p+0 : inexact-ok
+= rootn tonearest binary128 -0x8p-152 -1023LL : -0x1.1b31d2a14e058f280259ac7790b8p+0 : inexact-ok
+= rootn towardzero binary128 -0x8p-152 -1023LL : -0x1.1b31d2a14e058f280259ac7790b8p+0 : inexact-ok
+= rootn upward binary128 -0x8p-152 -1023LL : -0x1.1b31d2a14e058f280259ac7790b8p+0 : inexact-ok
+= rootn downward ibm128 -0x8p-152 -1023LL : -0x1.1b31d2a14e058f280259ac7791p+0 : inexact-ok
+= rootn tonearest ibm128 -0x8p-152 -1023LL : -0x1.1b31d2a14e058f280259ac77908p+0 : inexact-ok
+= rootn towardzero ibm128 -0x8p-152 -1023LL : -0x1.1b31d2a14e058f280259ac77908p+0 : inexact-ok
+= rootn upward ibm128 -0x8p-152 -1023LL : -0x1.1b31d2a14e058f280259ac77908p+0 : inexact-ok
+= rootn downward binary64 -0x4p-1076 -1023LL : -0x2.1200741e15ecep+0 : inexact-ok
+= rootn tonearest binary64 -0x4p-1076 -1023LL : -0x2.1200741e15eccp+0 : inexact-ok
+= rootn towardzero binary64 -0x4p-1076 -1023LL : -0x2.1200741e15eccp+0 : inexact-ok
+= rootn upward binary64 -0x4p-1076 -1023LL : -0x2.1200741e15eccp+0 : inexact-ok
+= rootn downward intel96 -0x4p-1076 -1023LL : -0x2.1200741e15ecc5f8p+0 : inexact-ok
+= rootn tonearest intel96 -0x4p-1076 -1023LL : -0x2.1200741e15ecc5f4p+0 : inexact-ok
+= rootn towardzero intel96 -0x4p-1076 -1023LL : -0x2.1200741e15ecc5f4p+0 : inexact-ok
+= rootn upward intel96 -0x4p-1076 -1023LL : -0x2.1200741e15ecc5f4p+0 : inexact-ok
+= rootn downward m68k96 -0x4p-1076 -1023LL : -0x2.1200741e15ecc5f8p+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1076 -1023LL : -0x2.1200741e15ecc5f4p+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1076 -1023LL : -0x2.1200741e15ecc5f4p+0 : inexact-ok
+= rootn upward m68k96 -0x4p-1076 -1023LL : -0x2.1200741e15ecc5f4p+0 : inexact-ok
+= rootn downward binary128 -0x4p-1076 -1023LL : -0x2.1200741e15ecc5f43ae7cfdf155ap+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-1076 -1023LL : -0x2.1200741e15ecc5f43ae7cfdf1558p+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-1076 -1023LL : -0x2.1200741e15ecc5f43ae7cfdf1558p+0 : inexact-ok
+= rootn upward binary128 -0x4p-1076 -1023LL : -0x2.1200741e15ecc5f43ae7cfdf1558p+0 : inexact-ok
+= rootn downward ibm128 -0x4p-1076 -1023LL : -0x2.1200741e15ecc5f43ae7cfdf16p+0 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1076 -1023LL : -0x2.1200741e15ecc5f43ae7cfdf15p+0 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1076 -1023LL : -0x2.1200741e15ecc5f43ae7cfdf15p+0 : inexact-ok
+= rootn upward ibm128 -0x4p-1076 -1023LL : -0x2.1200741e15ecc5f43ae7cfdf15p+0 : inexact-ok
+= rootn downward intel96 -0x8p-16448 -1023LL : -0x1.0db5eed76e653dbep+16 : inexact-ok
+= rootn tonearest intel96 -0x8p-16448 -1023LL : -0x1.0db5eed76e653dbcp+16 : inexact-ok
+= rootn towardzero intel96 -0x8p-16448 -1023LL : -0x1.0db5eed76e653dbcp+16 : inexact-ok
+= rootn upward intel96 -0x8p-16448 -1023LL : -0x1.0db5eed76e653dbcp+16 : inexact-ok
+= rootn downward m68k96 -0x8p-16448 -1023LL : -0x1.0db5eed76e653dbep+16 : inexact-ok
+= rootn tonearest m68k96 -0x8p-16448 -1023LL : -0x1.0db5eed76e653dbcp+16 : inexact-ok
+= rootn towardzero m68k96 -0x8p-16448 -1023LL : -0x1.0db5eed76e653dbcp+16 : inexact-ok
+= rootn upward m68k96 -0x8p-16448 -1023LL : -0x1.0db5eed76e653dbcp+16 : inexact-ok
+= rootn downward binary128 -0x8p-16448 -1023LL : -0x1.0db5eed76e653dbc5c14bdf2f2bcp+16 : inexact-ok
+= rootn tonearest binary128 -0x8p-16448 -1023LL : -0x1.0db5eed76e653dbc5c14bdf2f2bbp+16 : inexact-ok
+= rootn towardzero binary128 -0x8p-16448 -1023LL : -0x1.0db5eed76e653dbc5c14bdf2f2bbp+16 : inexact-ok
+= rootn upward binary128 -0x8p-16448 -1023LL : -0x1.0db5eed76e653dbc5c14bdf2f2bbp+16 : inexact-ok
+= rootn downward m68k96 -0x4p-16448 -1023LL : -0x1.0de4bb58128865c4p+16 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16448 -1023LL : -0x1.0de4bb58128865c4p+16 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16448 -1023LL : -0x1.0de4bb58128865c2p+16 : inexact-ok
+= rootn upward m68k96 -0x4p-16448 -1023LL : -0x1.0de4bb58128865c2p+16 : inexact-ok
+= rootn downward binary128 -0x4p-16448 -1023LL : -0x1.0de4bb58128865c30c429a69edffp+16 : inexact-ok
+= rootn tonearest binary128 -0x4p-16448 -1023LL : -0x1.0de4bb58128865c30c429a69edffp+16 : inexact-ok
+= rootn towardzero binary128 -0x4p-16448 -1023LL : -0x1.0de4bb58128865c30c429a69edfep+16 : inexact-ok
+= rootn upward binary128 -0x4p-16448 -1023LL : -0x1.0de4bb58128865c30c429a69edfep+16 : inexact-ok
+= rootn downward binary128 -0x4p-16496 -1023LL : -0x1.16d0c722590bceb6f5f68d1fe41cp+16 : inexact-ok
+= rootn tonearest binary128 -0x4p-16496 -1023LL : -0x1.16d0c722590bceb6f5f68d1fe41bp+16 : inexact-ok
+= rootn towardzero binary128 -0x4p-16496 -1023LL : -0x1.16d0c722590bceb6f5f68d1fe41bp+16 : inexact-ok
+= rootn upward binary128 -0x4p-16496 -1023LL : -0x1.16d0c722590bceb6f5f68d1fe41bp+16 : inexact-ok
+rootn -min_subnorm -16383
+= rootn downward binary32 -0x8p-152 -16383LL : -0x1.019e74p+0 : inexact-ok
+= rootn tonearest binary32 -0x8p-152 -16383LL : -0x1.019e72p+0 : inexact-ok
+= rootn towardzero binary32 -0x8p-152 -16383LL : -0x1.019e72p+0 : inexact-ok
+= rootn upward binary32 -0x8p-152 -16383LL : -0x1.019e72p+0 : inexact-ok
+= rootn downward binary64 -0x8p-152 -16383LL : -0x1.019e7226b2b5dp+0 : inexact-ok
+= rootn tonearest binary64 -0x8p-152 -16383LL : -0x1.019e7226b2b5dp+0 : inexact-ok
+= rootn towardzero binary64 -0x8p-152 -16383LL : -0x1.019e7226b2b5cp+0 : inexact-ok
+= rootn upward binary64 -0x8p-152 -16383LL : -0x1.019e7226b2b5cp+0 : inexact-ok
+= rootn downward intel96 -0x8p-152 -16383LL : -0x1.019e7226b2b5cdbp+0 : inexact-ok
+= rootn tonearest intel96 -0x8p-152 -16383LL : -0x1.019e7226b2b5cdbp+0 : inexact-ok
+= rootn towardzero intel96 -0x8p-152 -16383LL : -0x1.019e7226b2b5cdaep+0 : inexact-ok
+= rootn upward intel96 -0x8p-152 -16383LL : -0x1.019e7226b2b5cdaep+0 : inexact-ok
+= rootn downward m68k96 -0x8p-152 -16383LL : -0x1.019e7226b2b5cdbp+0 : inexact-ok
+= rootn tonearest m68k96 -0x8p-152 -16383LL : -0x1.019e7226b2b5cdbp+0 : inexact-ok
+= rootn towardzero m68k96 -0x8p-152 -16383LL : -0x1.019e7226b2b5cdaep+0 : inexact-ok
+= rootn upward m68k96 -0x8p-152 -16383LL : -0x1.019e7226b2b5cdaep+0 : inexact-ok
+= rootn downward binary128 -0x8p-152 -16383LL : -0x1.019e7226b2b5cdaf07955d868a7dp+0 : inexact-ok
+= rootn tonearest binary128 -0x8p-152 -16383LL : -0x1.019e7226b2b5cdaf07955d868a7cp+0 : inexact-ok
+= rootn towardzero binary128 -0x8p-152 -16383LL : -0x1.019e7226b2b5cdaf07955d868a7cp+0 : inexact-ok
+= rootn upward binary128 -0x8p-152 -16383LL : -0x1.019e7226b2b5cdaf07955d868a7cp+0 : inexact-ok
+= rootn downward ibm128 -0x8p-152 -16383LL : -0x1.019e7226b2b5cdaf07955d868a8p+0 : inexact-ok
+= rootn tonearest ibm128 -0x8p-152 -16383LL : -0x1.019e7226b2b5cdaf07955d868a8p+0 : inexact-ok
+= rootn towardzero ibm128 -0x8p-152 -16383LL : -0x1.019e7226b2b5cdaf07955d868ap+0 : inexact-ok
+= rootn upward ibm128 -0x8p-152 -16383LL : -0x1.019e7226b2b5cdaf07955d868ap+0 : inexact-ok
+= rootn downward binary64 -0x4p-1076 -16383LL : -0x1.0be6a31a645f3p+0 : inexact-ok
+= rootn tonearest binary64 -0x4p-1076 -16383LL : -0x1.0be6a31a645f2p+0 : inexact-ok
+= rootn towardzero binary64 -0x4p-1076 -16383LL : -0x1.0be6a31a645f2p+0 : inexact-ok
+= rootn upward binary64 -0x4p-1076 -16383LL : -0x1.0be6a31a645f2p+0 : inexact-ok
+= rootn downward intel96 -0x4p-1076 -16383LL : -0x1.0be6a31a645f272ep+0 : inexact-ok
+= rootn tonearest intel96 -0x4p-1076 -16383LL : -0x1.0be6a31a645f272cp+0 : inexact-ok
+= rootn towardzero intel96 -0x4p-1076 -16383LL : -0x1.0be6a31a645f272cp+0 : inexact-ok
+= rootn upward intel96 -0x4p-1076 -16383LL : -0x1.0be6a31a645f272cp+0 : inexact-ok
+= rootn downward m68k96 -0x4p-1076 -16383LL : -0x1.0be6a31a645f272ep+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1076 -16383LL : -0x1.0be6a31a645f272cp+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1076 -16383LL : -0x1.0be6a31a645f272cp+0 : inexact-ok
+= rootn upward m68k96 -0x4p-1076 -16383LL : -0x1.0be6a31a645f272cp+0 : inexact-ok
+= rootn downward binary128 -0x4p-1076 -16383LL : -0x1.0be6a31a645f272ccc8333dd2955p+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-1076 -16383LL : -0x1.0be6a31a645f272ccc8333dd2954p+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-1076 -16383LL : -0x1.0be6a31a645f272ccc8333dd2954p+0 : inexact-ok
+= rootn upward binary128 -0x4p-1076 -16383LL : -0x1.0be6a31a645f272ccc8333dd2954p+0 : inexact-ok
+= rootn downward ibm128 -0x4p-1076 -16383LL : -0x1.0be6a31a645f272ccc8333dd298p+0 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1076 -16383LL : -0x1.0be6a31a645f272ccc8333dd298p+0 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1076 -16383LL : -0x1.0be6a31a645f272ccc8333dd29p+0 : inexact-ok
+= rootn upward ibm128 -0x4p-1076 -16383LL : -0x1.0be6a31a645f272ccc8333dd29p+0 : inexact-ok
+= rootn downward intel96 -0x8p-16448 -16383LL : -0x2.015845f8f9422c88p+0 : inexact-ok
+= rootn tonearest intel96 -0x8p-16448 -16383LL : -0x2.015845f8f9422c84p+0 : inexact-ok
+= rootn towardzero intel96 -0x8p-16448 -16383LL : -0x2.015845f8f9422c84p+0 : inexact-ok
+= rootn upward intel96 -0x8p-16448 -16383LL : -0x2.015845f8f9422c84p+0 : inexact-ok
+= rootn downward m68k96 -0x8p-16448 -16383LL : -0x2.015845f8f9422c88p+0 : inexact-ok
+= rootn tonearest m68k96 -0x8p-16448 -16383LL : -0x2.015845f8f9422c84p+0 : inexact-ok
+= rootn towardzero m68k96 -0x8p-16448 -16383LL : -0x2.015845f8f9422c84p+0 : inexact-ok
+= rootn upward m68k96 -0x8p-16448 -16383LL : -0x2.015845f8f9422c84p+0 : inexact-ok
+= rootn downward binary128 -0x8p-16448 -16383LL : -0x2.015845f8f9422c8430bdbc23c824p+0 : inexact-ok
+= rootn tonearest binary128 -0x8p-16448 -16383LL : -0x2.015845f8f9422c8430bdbc23c822p+0 : inexact-ok
+= rootn towardzero binary128 -0x8p-16448 -16383LL : -0x2.015845f8f9422c8430bdbc23c822p+0 : inexact-ok
+= rootn upward binary128 -0x8p-16448 -16383LL : -0x2.015845f8f9422c8430bdbc23c822p+0 : inexact-ok
+= rootn downward m68k96 -0x4p-16448 -16383LL : -0x2.015dd56233287c18p+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16448 -16383LL : -0x2.015dd56233287c18p+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16448 -16383LL : -0x2.015dd56233287c14p+0 : inexact-ok
+= rootn upward m68k96 -0x4p-16448 -16383LL : -0x2.015dd56233287c14p+0 : inexact-ok
+= rootn downward binary128 -0x4p-16448 -16383LL : -0x2.015dd56233287c172ec6daa8ae8ep+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-16448 -16383LL : -0x2.015dd56233287c172ec6daa8ae8ep+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-16448 -16383LL : -0x2.015dd56233287c172ec6daa8ae8cp+0 : inexact-ok
+= rootn upward binary128 -0x4p-16448 -16383LL : -0x2.015dd56233287c172ec6daa8ae8cp+0 : inexact-ok
+= rootn downward binary128 -0x4p-16496 -16383LL : -0x2.0268fffbf53a98ec17310d0fd89p+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-16496 -16383LL : -0x2.0268fffbf53a98ec17310d0fd89p+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-16496 -16383LL : -0x2.0268fffbf53a98ec17310d0fd88ep+0 : inexact-ok
+= rootn upward binary128 -0x4p-16496 -16383LL : -0x2.0268fffbf53a98ec17310d0fd88ep+0 : inexact-ok
+rootn -min_subnorm -0x1000001
+= rootn downward binary32 -0x8p-152 -16777217LL : -0x1.000068p+0 : inexact-ok
+= rootn tonearest binary32 -0x8p-152 -16777217LL : -0x1.000068p+0 : inexact-ok
+= rootn towardzero binary32 -0x8p-152 -16777217LL : -0x1.000066p+0 : inexact-ok
+= rootn upward binary32 -0x8p-152 -16777217LL : -0x1.000066p+0 : inexact-ok
+= rootn downward binary64 -0x8p-152 -16777217LL : -0x1.000067477c614p+0 : inexact-ok
+= rootn tonearest binary64 -0x8p-152 -16777217LL : -0x1.000067477c614p+0 : inexact-ok
+= rootn towardzero binary64 -0x8p-152 -16777217LL : -0x1.000067477c613p+0 : inexact-ok
+= rootn upward binary64 -0x8p-152 -16777217LL : -0x1.000067477c613p+0 : inexact-ok
+= rootn downward intel96 -0x8p-152 -16777217LL : -0x1.000067477c613d24p+0 : inexact-ok
+= rootn tonearest intel96 -0x8p-152 -16777217LL : -0x1.000067477c613d22p+0 : inexact-ok
+= rootn towardzero intel96 -0x8p-152 -16777217LL : -0x1.000067477c613d22p+0 : inexact-ok
+= rootn upward intel96 -0x8p-152 -16777217LL : -0x1.000067477c613d22p+0 : inexact-ok
+= rootn downward m68k96 -0x8p-152 -16777217LL : -0x1.000067477c613d24p+0 : inexact-ok
+= rootn tonearest m68k96 -0x8p-152 -16777217LL : -0x1.000067477c613d22p+0 : inexact-ok
+= rootn towardzero m68k96 -0x8p-152 -16777217LL : -0x1.000067477c613d22p+0 : inexact-ok
+= rootn upward m68k96 -0x8p-152 -16777217LL : -0x1.000067477c613d22p+0 : inexact-ok
+= rootn downward binary128 -0x8p-152 -16777217LL : -0x1.000067477c613d22077c60d7c1d1p+0 : inexact-ok
+= rootn tonearest binary128 -0x8p-152 -16777217LL : -0x1.000067477c613d22077c60d7c1dp+0 : inexact-ok
+= rootn towardzero binary128 -0x8p-152 -16777217LL : -0x1.000067477c613d22077c60d7c1dp+0 : inexact-ok
+= rootn upward binary128 -0x8p-152 -16777217LL : -0x1.000067477c613d22077c60d7c1dp+0 : inexact-ok
+= rootn downward ibm128 -0x8p-152 -16777217LL : -0x1.000067477c613d22077c60d7c2p+0 : inexact-ok
+= rootn tonearest ibm128 -0x8p-152 -16777217LL : -0x1.000067477c613d22077c60d7c2p+0 : inexact-ok
+= rootn towardzero ibm128 -0x8p-152 -16777217LL : -0x1.000067477c613d22077c60d7c18p+0 : inexact-ok
+= rootn upward ibm128 -0x8p-152 -16777217LL : -0x1.000067477c613d22077c60d7c18p+0 : inexact-ok
+= rootn downward binary64 -0x4p-1076 -16777217LL : -0x1.0002e874e010ep+0 : inexact-ok
+= rootn tonearest binary64 -0x4p-1076 -16777217LL : -0x1.0002e874e010dp+0 : inexact-ok
+= rootn towardzero binary64 -0x4p-1076 -16777217LL : -0x1.0002e874e010dp+0 : inexact-ok
+= rootn upward binary64 -0x4p-1076 -16777217LL : -0x1.0002e874e010dp+0 : inexact-ok
+= rootn downward intel96 -0x4p-1076 -16777217LL : -0x1.0002e874e010d0fap+0 : inexact-ok
+= rootn tonearest intel96 -0x4p-1076 -16777217LL : -0x1.0002e874e010d0fap+0 : inexact-ok
+= rootn towardzero intel96 -0x4p-1076 -16777217LL : -0x1.0002e874e010d0f8p+0 : inexact-ok
+= rootn upward intel96 -0x4p-1076 -16777217LL : -0x1.0002e874e010d0f8p+0 : inexact-ok
+= rootn downward m68k96 -0x4p-1076 -16777217LL : -0x1.0002e874e010d0fap+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1076 -16777217LL : -0x1.0002e874e010d0fap+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1076 -16777217LL : -0x1.0002e874e010d0f8p+0 : inexact-ok
+= rootn upward m68k96 -0x4p-1076 -16777217LL : -0x1.0002e874e010d0f8p+0 : inexact-ok
+= rootn downward binary128 -0x4p-1076 -16777217LL : -0x1.0002e874e010d0f9ac646314719fp+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-1076 -16777217LL : -0x1.0002e874e010d0f9ac646314719ep+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-1076 -16777217LL : -0x1.0002e874e010d0f9ac646314719ep+0 : inexact-ok
+= rootn upward binary128 -0x4p-1076 -16777217LL : -0x1.0002e874e010d0f9ac646314719ep+0 : inexact-ok
+= rootn downward ibm128 -0x4p-1076 -16777217LL : -0x1.0002e874e010d0f9ac64631472p+0 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1076 -16777217LL : -0x1.0002e874e010d0f9ac646314718p+0 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1076 -16777217LL : -0x1.0002e874e010d0f9ac646314718p+0 : inexact-ok
+= rootn upward ibm128 -0x4p-1076 -16777217LL : -0x1.0002e874e010d0f9ac646314718p+0 : inexact-ok
+= rootn downward intel96 -0x8p-16448 -16777217LL : -0x1.002c8aad8985bc8ap+0 : inexact-ok
+= rootn tonearest intel96 -0x8p-16448 -16777217LL : -0x1.002c8aad8985bc8ap+0 : inexact-ok
+= rootn towardzero intel96 -0x8p-16448 -16777217LL : -0x1.002c8aad8985bc88p+0 : inexact-ok
+= rootn upward intel96 -0x8p-16448 -16777217LL : -0x1.002c8aad8985bc88p+0 : inexact-ok
+= rootn downward m68k96 -0x8p-16448 -16777217LL : -0x1.002c8aad8985bc8ap+0 : inexact-ok
+= rootn tonearest m68k96 -0x8p-16448 -16777217LL : -0x1.002c8aad8985bc8ap+0 : inexact-ok
+= rootn towardzero m68k96 -0x8p-16448 -16777217LL : -0x1.002c8aad8985bc88p+0 : inexact-ok
+= rootn upward m68k96 -0x8p-16448 -16777217LL : -0x1.002c8aad8985bc88p+0 : inexact-ok
+= rootn downward binary128 -0x8p-16448 -16777217LL : -0x1.002c8aad8985bc899a5933498bfdp+0 : inexact-ok
+= rootn tonearest binary128 -0x8p-16448 -16777217LL : -0x1.002c8aad8985bc899a5933498bfdp+0 : inexact-ok
+= rootn towardzero binary128 -0x8p-16448 -16777217LL : -0x1.002c8aad8985bc899a5933498bfcp+0 : inexact-ok
+= rootn upward binary128 -0x8p-16448 -16777217LL : -0x1.002c8aad8985bc899a5933498bfcp+0 : inexact-ok
+= rootn downward m68k96 -0x4p-16448 -16777217LL : -0x1.002c8b5f1a7cfc3ep+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16448 -16777217LL : -0x1.002c8b5f1a7cfc3ep+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16448 -16777217LL : -0x1.002c8b5f1a7cfc3cp+0 : inexact-ok
+= rootn upward m68k96 -0x4p-16448 -16777217LL : -0x1.002c8b5f1a7cfc3cp+0 : inexact-ok
+= rootn downward binary128 -0x4p-16448 -16777217LL : -0x1.002c8b5f1a7cfc3d92379c197c22p+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-16448 -16777217LL : -0x1.002c8b5f1a7cfc3d92379c197c22p+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-16448 -16777217LL : -0x1.002c8b5f1a7cfc3d92379c197c21p+0 : inexact-ok
+= rootn upward binary128 -0x4p-16448 -16777217LL : -0x1.002c8b5f1a7cfc3d92379c197c21p+0 : inexact-ok
+= rootn downward binary128 -0x4p-16496 -16777217LL : -0x1.002cacaa4b0e53a2fe2e3996fd57p+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-16496 -16777217LL : -0x1.002cacaa4b0e53a2fe2e3996fd56p+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-16496 -16777217LL : -0x1.002cacaa4b0e53a2fe2e3996fd56p+0 : inexact-ok
+= rootn upward binary128 -0x4p-16496 -16777217LL : -0x1.002cacaa4b0e53a2fe2e3996fd56p+0 : inexact-ok
+rootn -min_subnorm -0x10000000000001
+= rootn downward binary32 -0x8p-152 -4503599627370497LL : -0x1.000002p+0 : inexact-ok
+= rootn tonearest binary32 -0x8p-152 -4503599627370497LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary32 -0x8p-152 -4503599627370497LL : -0x1p+0 : inexact-ok
+= rootn upward binary32 -0x8p-152 -4503599627370497LL : -0x1p+0 : inexact-ok
+= rootn downward binary64 -0x8p-152 -4503599627370497LL : -0x1.0000000000068p+0 : inexact-ok
+= rootn tonearest binary64 -0x8p-152 -4503599627370497LL : -0x1.0000000000067p+0 : inexact-ok
+= rootn towardzero binary64 -0x8p-152 -4503599627370497LL : -0x1.0000000000067p+0 : inexact-ok
+= rootn upward binary64 -0x8p-152 -4503599627370497LL : -0x1.0000000000067p+0 : inexact-ok
+= rootn downward intel96 -0x8p-152 -4503599627370497LL : -0x1.0000000000067478p+0 : inexact-ok
+= rootn tonearest intel96 -0x8p-152 -4503599627370497LL : -0x1.0000000000067476p+0 : inexact-ok
+= rootn towardzero intel96 -0x8p-152 -4503599627370497LL : -0x1.0000000000067476p+0 : inexact-ok
+= rootn upward intel96 -0x8p-152 -4503599627370497LL : -0x1.0000000000067476p+0 : inexact-ok
+= rootn downward m68k96 -0x8p-152 -4503599627370497LL : -0x1.0000000000067478p+0 : inexact-ok
+= rootn tonearest m68k96 -0x8p-152 -4503599627370497LL : -0x1.0000000000067476p+0 : inexact-ok
+= rootn towardzero m68k96 -0x8p-152 -4503599627370497LL : -0x1.0000000000067476p+0 : inexact-ok
+= rootn upward m68k96 -0x8p-152 -4503599627370497LL : -0x1.0000000000067476p+0 : inexact-ok
+= rootn downward binary128 -0x8p-152 -4503599627370497LL : -0x1.00000000000674767f33d1f08b0ep+0 : inexact-ok
+= rootn tonearest binary128 -0x8p-152 -4503599627370497LL : -0x1.00000000000674767f33d1f08b0dp+0 : inexact-ok
+= rootn towardzero binary128 -0x8p-152 -4503599627370497LL : -0x1.00000000000674767f33d1f08b0dp+0 : inexact-ok
+= rootn upward binary128 -0x8p-152 -4503599627370497LL : -0x1.00000000000674767f33d1f08b0dp+0 : inexact-ok
+= rootn downward ibm128 -0x8p-152 -4503599627370497LL : -0x1.00000000000674767f33d1f08b8p+0 : inexact-ok
+= rootn tonearest ibm128 -0x8p-152 -4503599627370497LL : -0x1.00000000000674767f33d1f08bp+0 : inexact-ok
+= rootn towardzero ibm128 -0x8p-152 -4503599627370497LL : -0x1.00000000000674767f33d1f08bp+0 : inexact-ok
+= rootn upward ibm128 -0x8p-152 -4503599627370497LL : -0x1.00000000000674767f33d1f08bp+0 : inexact-ok
+= rootn downward binary64 -0x4p-1076 -4503599627370497LL : -0x1.00000000002e9p+0 : inexact-ok
+= rootn tonearest binary64 -0x4p-1076 -4503599627370497LL : -0x1.00000000002e8p+0 : inexact-ok
+= rootn towardzero binary64 -0x4p-1076 -4503599627370497LL : -0x1.00000000002e8p+0 : inexact-ok
+= rootn upward binary64 -0x4p-1076 -4503599627370497LL : -0x1.00000000002e8p+0 : inexact-ok
+= rootn downward intel96 -0x4p-1076 -4503599627370497LL : -0x1.00000000002e870cp+0 : inexact-ok
+= rootn tonearest intel96 -0x4p-1076 -4503599627370497LL : -0x1.00000000002e870ap+0 : inexact-ok
+= rootn towardzero intel96 -0x4p-1076 -4503599627370497LL : -0x1.00000000002e870ap+0 : inexact-ok
+= rootn upward intel96 -0x4p-1076 -4503599627370497LL : -0x1.00000000002e870ap+0 : inexact-ok
+= rootn downward m68k96 -0x4p-1076 -4503599627370497LL : -0x1.00000000002e870cp+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1076 -4503599627370497LL : -0x1.00000000002e870ap+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1076 -4503599627370497LL : -0x1.00000000002e870ap+0 : inexact-ok
+= rootn upward m68k96 -0x4p-1076 -4503599627370497LL : -0x1.00000000002e870ap+0 : inexact-ok
+= rootn downward binary128 -0x4p-1076 -4503599627370497LL : -0x1.00000000002e870a88dae7be463ep+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-1076 -4503599627370497LL : -0x1.00000000002e870a88dae7be463dp+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-1076 -4503599627370497LL : -0x1.00000000002e870a88dae7be463dp+0 : inexact-ok
+= rootn upward binary128 -0x4p-1076 -4503599627370497LL : -0x1.00000000002e870a88dae7be463dp+0 : inexact-ok
+= rootn downward ibm128 -0x4p-1076 -4503599627370497LL : -0x1.00000000002e870a88dae7be468p+0 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1076 -4503599627370497LL : -0x1.00000000002e870a88dae7be46p+0 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1076 -4503599627370497LL : -0x1.00000000002e870a88dae7be46p+0 : inexact-ok
+= rootn upward ibm128 -0x4p-1076 -4503599627370497LL : -0x1.00000000002e870a88dae7be46p+0 : inexact-ok
+= rootn downward intel96 -0x8p-16448 -4503599627370497LL : -0x1.0000000002c86ce4p+0 : inexact-ok
+= rootn tonearest intel96 -0x8p-16448 -4503599627370497LL : -0x1.0000000002c86ce2p+0 : inexact-ok
+= rootn towardzero intel96 -0x8p-16448 -4503599627370497LL : -0x1.0000000002c86ce2p+0 : inexact-ok
+= rootn upward intel96 -0x8p-16448 -4503599627370497LL : -0x1.0000000002c86ce2p+0 : inexact-ok
+= rootn downward m68k96 -0x8p-16448 -4503599627370497LL : -0x1.0000000002c86ce4p+0 : inexact-ok
+= rootn tonearest m68k96 -0x8p-16448 -4503599627370497LL : -0x1.0000000002c86ce2p+0 : inexact-ok
+= rootn towardzero m68k96 -0x8p-16448 -4503599627370497LL : -0x1.0000000002c86ce2p+0 : inexact-ok
+= rootn upward m68k96 -0x8p-16448 -4503599627370497LL : -0x1.0000000002c86ce2p+0 : inexact-ok
+= rootn downward binary128 -0x8p-16448 -4503599627370497LL : -0x1.0000000002c86ce2daabecf01651p+0 : inexact-ok
+= rootn tonearest binary128 -0x8p-16448 -4503599627370497LL : -0x1.0000000002c86ce2daabecf01651p+0 : inexact-ok
+= rootn towardzero binary128 -0x8p-16448 -4503599627370497LL : -0x1.0000000002c86ce2daabecf0165p+0 : inexact-ok
+= rootn upward binary128 -0x8p-16448 -4503599627370497LL : -0x1.0000000002c86ce2daabecf0165p+0 : inexact-ok
+= rootn downward m68k96 -0x4p-16448 -4503599627370497LL : -0x1.0000000002c877fap+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16448 -4503599627370497LL : -0x1.0000000002c877fap+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16448 -4503599627370497LL : -0x1.0000000002c877f8p+0 : inexact-ok
+= rootn upward m68k96 -0x4p-16448 -4503599627370497LL : -0x1.0000000002c877f8p+0 : inexact-ok
+= rootn downward binary128 -0x4p-16448 -4503599627370497LL : -0x1.0000000002c877f9fc2b6a2bea85p+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-16448 -4503599627370497LL : -0x1.0000000002c877f9fc2b6a2bea84p+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-16448 -4503599627370497LL : -0x1.0000000002c877f9fc2b6a2bea84p+0 : inexact-ok
+= rootn upward binary128 -0x4p-16448 -4503599627370497LL : -0x1.0000000002c877f9fc2b6a2bea84p+0 : inexact-ok
+= rootn downward binary128 -0x4p-16496 -4503599627370497LL : -0x1.0000000002ca8c504412e565e932p+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-16496 -4503599627370497LL : -0x1.0000000002ca8c504412e565e931p+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-16496 -4503599627370497LL : -0x1.0000000002ca8c504412e565e931p+0 : inexact-ok
+= rootn upward binary128 -0x4p-16496 -4503599627370497LL : -0x1.0000000002ca8c504412e565e931p+0 : inexact-ok
+rootn -min_subnorm -0x7fffffffffffffff
+= rootn downward binary32 -0x8p-152 -9223372036854775807LL : -0x1.000002p+0 : inexact-ok
+= rootn tonearest binary32 -0x8p-152 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary32 -0x8p-152 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn upward binary32 -0x8p-152 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn downward binary64 -0x8p-152 -9223372036854775807LL : -0x1.0000000000001p+0 : inexact-ok
+= rootn tonearest binary64 -0x8p-152 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary64 -0x8p-152 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn upward binary64 -0x8p-152 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn downward intel96 -0x8p-152 -9223372036854775807LL : -0x1.00000000000000dp+0 : inexact-ok
+= rootn tonearest intel96 -0x8p-152 -9223372036854775807LL : -0x1.00000000000000cep+0 : inexact-ok
+= rootn towardzero intel96 -0x8p-152 -9223372036854775807LL : -0x1.00000000000000cep+0 : inexact-ok
+= rootn upward intel96 -0x8p-152 -9223372036854775807LL : -0x1.00000000000000cep+0 : inexact-ok
+= rootn downward m68k96 -0x8p-152 -9223372036854775807LL : -0x1.00000000000000dp+0 : inexact-ok
+= rootn tonearest m68k96 -0x8p-152 -9223372036854775807LL : -0x1.00000000000000cep+0 : inexact-ok
+= rootn towardzero m68k96 -0x8p-152 -9223372036854775807LL : -0x1.00000000000000cep+0 : inexact-ok
+= rootn upward m68k96 -0x8p-152 -9223372036854775807LL : -0x1.00000000000000cep+0 : inexact-ok
+= rootn downward binary128 -0x8p-152 -9223372036854775807LL : -0x1.00000000000000ce8ecfe67a3b84p+0 : inexact-ok
+= rootn tonearest binary128 -0x8p-152 -9223372036854775807LL : -0x1.00000000000000ce8ecfe67a3b84p+0 : inexact-ok
+= rootn towardzero binary128 -0x8p-152 -9223372036854775807LL : -0x1.00000000000000ce8ecfe67a3b83p+0 : inexact-ok
+= rootn upward binary128 -0x8p-152 -9223372036854775807LL : -0x1.00000000000000ce8ecfe67a3b83p+0 : inexact-ok
+= rootn downward ibm128 -0x8p-152 -9223372036854775807LL : -0x1.00000000000000ce8ecfe67a3cp+0 : inexact-ok
+= rootn tonearest ibm128 -0x8p-152 -9223372036854775807LL : -0x1.00000000000000ce8ecfe67a3b8p+0 : inexact-ok
+= rootn towardzero ibm128 -0x8p-152 -9223372036854775807LL : -0x1.00000000000000ce8ecfe67a3b8p+0 : inexact-ok
+= rootn upward ibm128 -0x8p-152 -9223372036854775807LL : -0x1.00000000000000ce8ecfe67a3b8p+0 : inexact-ok
+= rootn downward binary64 -0x4p-1076 -9223372036854775807LL : -0x1.0000000000001p+0 : inexact-ok
+= rootn tonearest binary64 -0x4p-1076 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary64 -0x4p-1076 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn upward binary64 -0x4p-1076 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn downward intel96 -0x4p-1076 -9223372036854775807LL : -0x1.00000000000005d2p+0 : inexact-ok
+= rootn tonearest intel96 -0x4p-1076 -9223372036854775807LL : -0x1.00000000000005dp+0 : inexact-ok
+= rootn towardzero intel96 -0x4p-1076 -9223372036854775807LL : -0x1.00000000000005dp+0 : inexact-ok
+= rootn upward intel96 -0x4p-1076 -9223372036854775807LL : -0x1.00000000000005dp+0 : inexact-ok
+= rootn downward m68k96 -0x4p-1076 -9223372036854775807LL : -0x1.00000000000005d2p+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-1076 -9223372036854775807LL : -0x1.00000000000005dp+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-1076 -9223372036854775807LL : -0x1.00000000000005dp+0 : inexact-ok
+= rootn upward m68k96 -0x4p-1076 -9223372036854775807LL : -0x1.00000000000005dp+0 : inexact-ok
+= rootn downward binary128 -0x4p-1076 -9223372036854775807LL : -0x1.00000000000005d0e1511b5c70eap+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-1076 -9223372036854775807LL : -0x1.00000000000005d0e1511b5c70eap+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-1076 -9223372036854775807LL : -0x1.00000000000005d0e1511b5c70e9p+0 : inexact-ok
+= rootn upward binary128 -0x4p-1076 -9223372036854775807LL : -0x1.00000000000005d0e1511b5c70e9p+0 : inexact-ok
+= rootn downward ibm128 -0x4p-1076 -9223372036854775807LL : -0x1.00000000000005d0e1511b5c71p+0 : inexact-ok
+= rootn tonearest ibm128 -0x4p-1076 -9223372036854775807LL : -0x1.00000000000005d0e1511b5c71p+0 : inexact-ok
+= rootn towardzero ibm128 -0x4p-1076 -9223372036854775807LL : -0x1.00000000000005d0e1511b5c708p+0 : inexact-ok
+= rootn upward ibm128 -0x4p-1076 -9223372036854775807LL : -0x1.00000000000005d0e1511b5c708p+0 : inexact-ok
+= rootn downward intel96 -0x8p-16448 -9223372036854775807LL : -0x1.000000000000590ep+0 : inexact-ok
+= rootn tonearest intel96 -0x8p-16448 -9223372036854775807LL : -0x1.000000000000590ep+0 : inexact-ok
+= rootn towardzero intel96 -0x8p-16448 -9223372036854775807LL : -0x1.000000000000590cp+0 : inexact-ok
+= rootn upward intel96 -0x8p-16448 -9223372036854775807LL : -0x1.000000000000590cp+0 : inexact-ok
+= rootn downward m68k96 -0x8p-16448 -9223372036854775807LL : -0x1.000000000000590ep+0 : inexact-ok
+= rootn tonearest m68k96 -0x8p-16448 -9223372036854775807LL : -0x1.000000000000590ep+0 : inexact-ok
+= rootn towardzero m68k96 -0x8p-16448 -9223372036854775807LL : -0x1.000000000000590cp+0 : inexact-ok
+= rootn upward m68k96 -0x8p-16448 -9223372036854775807LL : -0x1.000000000000590cp+0 : inexact-ok
+= rootn downward binary128 -0x8p-16448 -9223372036854775807LL : -0x1.000000000000590d9c5b5501c934p+0 : inexact-ok
+= rootn tonearest binary128 -0x8p-16448 -9223372036854775807LL : -0x1.000000000000590d9c5b5501c934p+0 : inexact-ok
+= rootn towardzero binary128 -0x8p-16448 -9223372036854775807LL : -0x1.000000000000590d9c5b5501c933p+0 : inexact-ok
+= rootn upward binary128 -0x8p-16448 -9223372036854775807LL : -0x1.000000000000590d9c5b5501c933p+0 : inexact-ok
+= rootn downward m68k96 -0x4p-16448 -9223372036854775807LL : -0x1.000000000000591p+0 : inexact-ok
+= rootn tonearest m68k96 -0x4p-16448 -9223372036854775807LL : -0x1.000000000000590ep+0 : inexact-ok
+= rootn towardzero m68k96 -0x4p-16448 -9223372036854775807LL : -0x1.000000000000590ep+0 : inexact-ok
+= rootn upward m68k96 -0x4p-16448 -9223372036854775807LL : -0x1.000000000000590ep+0 : inexact-ok
+= rootn downward binary128 -0x4p-16448 -9223372036854775807LL : -0x1.000000000000590eff3f84f16cd4p+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-16448 -9223372036854775807LL : -0x1.000000000000590eff3f84f16cd3p+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-16448 -9223372036854775807LL : -0x1.000000000000590eff3f84f16cd3p+0 : inexact-ok
+= rootn upward binary128 -0x4p-16448 -9223372036854775807LL : -0x1.000000000000590eff3f84f16cd3p+0 : inexact-ok
+= rootn downward binary128 -0x4p-16496 -9223372036854775807LL : -0x1.00000000000059518a0881e01ab9p+0 : inexact-ok
+= rootn tonearest binary128 -0x4p-16496 -9223372036854775807LL : -0x1.00000000000059518a0881e01ab8p+0 : inexact-ok
+= rootn towardzero binary128 -0x4p-16496 -9223372036854775807LL : -0x1.00000000000059518a0881e01ab8p+0 : inexact-ok
+= rootn upward binary128 -0x4p-16496 -9223372036854775807LL : -0x1.00000000000059518a0881e01ab8p+0 : inexact-ok
+rootn max 1
+= rootn downward binary32 0xf.fffffp+124 1LL : 0xf.fffffp+124 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 1LL : 0xf.fffffp+124 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 1LL : 0xf.fffffp+124 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 1LL : 0xf.fffffp+124 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 1LL : 0xf.fffffp+124 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 1LL : 0xf.fffffp+124 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 1LL : 0xf.fffffp+124 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 1LL : 0xf.fffffp+124 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 1LL : 0xf.fffffp+124 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 1LL : 0xf.fffffp+124 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 1LL : 0xf.fffffp+124 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 1LL : 0xf.fffffp+124 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 1LL : 0xf.fffffp+124 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 1LL : 0xf.fffffp+124 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 1LL : 0xf.fffffp+124 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 1LL : 0xf.fffffp+124 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 1LL : 0xf.fffffp+124 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 1LL : 0xf.fffffp+124 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 1LL : 0xf.fffffp+124 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 1LL : 0xf.fffffp+124 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 1LL : 0xf.fffffp+124 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 1LL : 0xf.fffffp+124 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 1LL : 0xf.fffffp+124 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 1LL : 0xf.fffffp+124 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 1LL : 0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 1LL : 0xf.fffffffffffffffp+16380 : inexact-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 1LL : 0xf.fffffffffffffffp+16380 : inexact-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 1LL : 0xf.fffffffffffffffp+16380 : inexact-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 1LL : 0xf.fffffffffffffffp+16380 : inexact-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 1LL : 0xf.fffffffffffffffp+16380 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 1LL : 0xf.fffffffffffffffp+16380 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 1LL : 0xf.fffffffffffffffp+16380 : inexact-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 1LL : 0xf.fffffffffffffffp+16380 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 1LL : 0xf.fffffffffffffffp+16380 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 1LL : 0xf.fffffffffffffffp+16380 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 1LL : 0xf.fffffffffffffffp+16380 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 1LL : 0xf.fffffffffffffffp+16380 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 1LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 1LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 1LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 1LL : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 1LL : 0xf.ffffffffffffbffffffffffffcp+1020 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 1LL : 0xf.ffffffffffffbffffffffffffcp+1020 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 1LL : 0xf.ffffffffffffbffffffffffffcp+1020 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 1LL : 0xf.ffffffffffffbffffffffffffcp+1020 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 1LL : 0xf.ffffffffffffbffffffffffffcp+1020 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 1LL : 0xf.ffffffffffffbffffffffffffcp+1020 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 1LL : 0xf.ffffffffffffbffffffffffffcp+1020 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 1LL : 0xf.ffffffffffffbffffffffffffcp+1020 : inexact-ok
+rootn max 2
+= rootn downward binary32 0xf.fffffp+124 2LL : 0xf.fffffp+60 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 2LL : 0xf.fffffp+60 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 2LL : 0xf.fffffp+60 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 2LL : 0x1p+64 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 2LL : 0xf.fffff7fffffd8p+60 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 2LL : 0xf.fffff7fffffep+60 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 2LL : 0xf.fffff7fffffd8p+60 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 2LL : 0xf.fffff7fffffep+60 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 2LL : 0xf.fffff7fffffdfffp+60 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 2LL : 0xf.fffff7fffffep+60 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 2LL : 0xf.fffff7fffffdfffp+60 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 2LL : 0xf.fffff7fffffep+60 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 2LL : 0xf.fffff7fffffdfffp+60 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 2LL : 0xf.fffff7fffffep+60 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 2LL : 0xf.fffff7fffffdfffp+60 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 2LL : 0xf.fffff7fffffep+60 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 2LL : 0xf.fffff7fffffdfffffeffffff5ff8p+60 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 2LL : 0xf.fffff7fffffdfffffeffffff6p+60 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 2LL : 0xf.fffff7fffffdfffffeffffff5ff8p+60 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 2LL : 0xf.fffff7fffffdfffffeffffff6p+60 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 2LL : 0xf.fffff7fffffdfffffeffffff5cp+60 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 2LL : 0xf.fffff7fffffdfffffeffffff6p+60 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 2LL : 0xf.fffff7fffffdfffffeffffff5cp+60 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 2LL : 0xf.fffff7fffffdfffffeffffff6p+60 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffff8p+508 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffff8p+508 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffff8p+508 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 2LL : 0x1p+512 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffffbffp+508 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffffcp+508 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffffbffp+508 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffffcp+508 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffffbffp+508 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffffcp+508 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffffbffp+508 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffffcp+508 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffffbfffffffffffff78p+508 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffffbfffffffffffff8p+508 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffffbfffffffffffff78p+508 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffffbfffffffffffff8p+508 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffffbffffffffffffcp+508 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffffcp+508 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffffbffffffffffffcp+508 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 2LL : 0xf.ffffffffffffcp+508 : inexact-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 2LL : 0xf.fffffffffffffffp+8188 : inexact-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 2LL : 0xf.fffffffffffffffp+8188 : inexact-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 2LL : 0xf.fffffffffffffffp+8188 : inexact-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 2LL : 0x1p+8192 : inexact-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 2LL : 0xf.fffffffffffffffp+8188 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 2LL : 0xf.fffffffffffffffp+8188 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 2LL : 0xf.fffffffffffffffp+8188 : inexact-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 2LL : 0x1p+8192 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 2LL : 0xf.fffffffffffffff7fffffffffff8p+8188 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 2LL : 0xf.fffffffffffffff8p+8188 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 2LL : 0xf.fffffffffffffff7fffffffffff8p+8188 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 2LL : 0xf.fffffffffffffff8p+8188 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 2LL : 0xf.fffffffffffffffffffffffffff8p+8188 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 2LL : 0xf.fffffffffffffffffffffffffff8p+8188 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 2LL : 0xf.fffffffffffffffffffffffffff8p+8188 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 2LL : 0x1p+8192 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 2LL : 0xf.ffffffffffffdffffffffffffdd8p+508 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 2LL : 0xf.ffffffffffffdffffffffffffdep+508 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 2LL : 0xf.ffffffffffffdffffffffffffdd8p+508 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 2LL : 0xf.ffffffffffffdffffffffffffdep+508 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 2LL : 0xf.ffffffffffffdffffffffffffcp+508 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 2LL : 0xf.ffffffffffffdffffffffffffcp+508 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 2LL : 0xf.ffffffffffffdffffffffffffcp+508 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 2LL : 0xf.ffffffffffffep+508 : inexact-ok
+rootn max 3
+= rootn downward binary32 0xf.fffffp+124 3LL : 0x6.597fap+40 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 3LL : 0x6.597fa8p+40 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 3LL : 0x6.597fap+40 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 3LL : 0x6.597fa8p+40 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 3LL : 0x6.597fa7318655cp+40 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 3LL : 0x6.597fa7318656p+40 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 3LL : 0x6.597fa7318655cp+40 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 3LL : 0x6.597fa7318656p+40 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 3LL : 0x6.597fa7318655fc4p+40 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 3LL : 0x6.597fa7318655fc48p+40 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 3LL : 0x6.597fa7318655fc4p+40 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 3LL : 0x6.597fa7318655fc48p+40 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 3LL : 0x6.597fa7318655fc4p+40 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 3LL : 0x6.597fa7318655fc48p+40 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 3LL : 0x6.597fa7318655fc4p+40 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 3LL : 0x6.597fa7318655fc48p+40 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 3LL : 0x6.597fa7318655fc467e27422a246p+40 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 3LL : 0x6.597fa7318655fc467e27422a246p+40 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 3LL : 0x6.597fa7318655fc467e27422a246p+40 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 3LL : 0x6.597fa7318655fc467e27422a2464p+40 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 3LL : 0x6.597fa7318655fc467e27422a24p+40 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 3LL : 0x6.597fa7318655fc467e27422a24p+40 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 3LL : 0x6.597fa7318655fc467e27422a24p+40 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 3LL : 0x6.597fa7318655fc467e27422a26p+40 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 3LL : 0x2.85145f31ae514p+340 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 3LL : 0x2.85145f31ae516p+340 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 3LL : 0x2.85145f31ae514p+340 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 3LL : 0x2.85145f31ae516p+340 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 3LL : 0x2.85145f31ae51558cp+340 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 3LL : 0x2.85145f31ae51558cp+340 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 3LL : 0x2.85145f31ae51558cp+340 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 3LL : 0x2.85145f31ae51559p+340 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 3LL : 0x2.85145f31ae51558cp+340 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 3LL : 0x2.85145f31ae51558cp+340 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 3LL : 0x2.85145f31ae51558cp+340 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 3LL : 0x2.85145f31ae51559p+340 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 3LL : 0x2.85145f31ae51558c45623f054decp+340 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 3LL : 0x2.85145f31ae51558c45623f054decp+340 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 3LL : 0x2.85145f31ae51558c45623f054decp+340 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 3LL : 0x2.85145f31ae51558c45623f054deep+340 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 3LL : 0x2.85145f31ae51558c45623f054dp+340 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 3LL : 0x2.85145f31ae51558c45623f054ep+340 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 3LL : 0x2.85145f31ae51558c45623f054dp+340 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 3LL : 0x2.85145f31ae51558c45623f054ep+340 : inexact-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 3LL : 0x2.85145f31ae515c4p+5460 : inexact-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 3LL : 0x2.85145f31ae515c44p+5460 : inexact-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 3LL : 0x2.85145f31ae515c4p+5460 : inexact-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 3LL : 0x2.85145f31ae515c44p+5460 : inexact-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 3LL : 0x2.85145f31ae515c4p+5460 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 3LL : 0x2.85145f31ae515c44p+5460 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 3LL : 0x2.85145f31ae515c4p+5460 : inexact-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 3LL : 0x2.85145f31ae515c44p+5460 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 3LL : 0x2.85145f31ae515c43a4aea3c59784p+5460 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 3LL : 0x2.85145f31ae515c43a4aea3c59784p+5460 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 3LL : 0x2.85145f31ae515c43a4aea3c59784p+5460 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 3LL : 0x2.85145f31ae515c43a4aea3c59786p+5460 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 3LL : 0x2.85145f31ae515c447bb56e2b7c48p+5460 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 3LL : 0x2.85145f31ae515c447bb56e2b7c4ap+5460 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 3LL : 0x2.85145f31ae515c447bb56e2b7c48p+5460 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 3LL : 0x2.85145f31ae515c447bb56e2b7c4ap+5460 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 3LL : 0x2.85145f31ae5158e8608bd69864eap+340 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 3LL : 0x2.85145f31ae5158e8608bd69864eap+340 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 3LL : 0x2.85145f31ae5158e8608bd69864eap+340 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 3LL : 0x2.85145f31ae5158e8608bd69864ecp+340 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 3LL : 0x2.85145f31ae5158e8608bd69864p+340 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 3LL : 0x2.85145f31ae5158e8608bd69865p+340 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 3LL : 0x2.85145f31ae5158e8608bd69864p+340 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 3LL : 0x2.85145f31ae5158e8608bd69865p+340 : inexact-ok
+rootn max 4
+= rootn downward binary32 0xf.fffffp+124 4LL : 0xf.fffffp+28 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 4LL : 0x1p+32 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 4LL : 0xf.fffffp+28 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 4LL : 0x1p+32 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 4LL : 0xf.fffffbfffffep+28 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 4LL : 0xf.fffffbfffffe8p+28 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 4LL : 0xf.fffffbfffffep+28 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 4LL : 0xf.fffffbfffffe8p+28 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 4LL : 0xf.fffffbfffffe7ffp+28 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 4LL : 0xf.fffffbfffffe8p+28 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 4LL : 0xf.fffffbfffffe7ffp+28 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 4LL : 0xf.fffffbfffffe8p+28 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 4LL : 0xf.fffffbfffffe7ffp+28 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 4LL : 0xf.fffffbfffffe8p+28 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 4LL : 0xf.fffffbfffffe7ffp+28 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 4LL : 0xf.fffffbfffffe8p+28 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 4LL : 0xf.fffffbfffffe7fffff1fffff65f8p+28 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 4LL : 0xf.fffffbfffffe7fffff1fffff66p+28 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 4LL : 0xf.fffffbfffffe7fffff1fffff65f8p+28 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 4LL : 0xf.fffffbfffffe7fffff1fffff66p+28 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 4LL : 0xf.fffffbfffffe7fffff1fffff64p+28 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 4LL : 0xf.fffffbfffffe7fffff1fffff64p+28 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 4LL : 0xf.fffffbfffffe7fffff1fffff64p+28 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 4LL : 0xf.fffffbfffffe7fffff1fffff68p+28 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 4LL : 0xf.ffffffffffff8p+252 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 4LL : 0x1p+256 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 4LL : 0xf.ffffffffffff8p+252 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 4LL : 0x1p+256 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 4LL : 0xf.ffffffffffffdffp+252 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 4LL : 0xf.ffffffffffffep+252 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 4LL : 0xf.ffffffffffffdffp+252 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 4LL : 0xf.ffffffffffffep+252 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 4LL : 0xf.ffffffffffffdffp+252 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 4LL : 0xf.ffffffffffffep+252 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 4LL : 0xf.ffffffffffffdffp+252 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 4LL : 0xf.ffffffffffffep+252 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 4LL : 0xf.ffffffffffffdfffffffffffff98p+252 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 4LL : 0xf.ffffffffffffdfffffffffffffap+252 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 4LL : 0xf.ffffffffffffdfffffffffffff98p+252 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 4LL : 0xf.ffffffffffffdfffffffffffffap+252 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 4LL : 0xf.ffffffffffffdffffffffffffcp+252 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 4LL : 0xf.ffffffffffffep+252 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 4LL : 0xf.ffffffffffffdffffffffffffcp+252 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 4LL : 0xf.ffffffffffffep+252 : inexact-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 4LL : 0xf.fffffffffffffffp+4092 : inexact-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 4LL : 0x1p+4096 : inexact-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 4LL : 0xf.fffffffffffffffp+4092 : inexact-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 4LL : 0x1p+4096 : inexact-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 4LL : 0xf.fffffffffffffffp+4092 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 4LL : 0x1p+4096 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 4LL : 0xf.fffffffffffffffp+4092 : inexact-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 4LL : 0x1p+4096 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 4LL : 0xf.fffffffffffffffbfffffffffff8p+4092 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 4LL : 0xf.fffffffffffffffcp+4092 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 4LL : 0xf.fffffffffffffffbfffffffffff8p+4092 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 4LL : 0xf.fffffffffffffffcp+4092 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 4LL : 0xf.fffffffffffffffffffffffffff8p+4092 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 4LL : 0x1p+4096 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 4LL : 0xf.fffffffffffffffffffffffffff8p+4092 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 4LL : 0x1p+4096 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 4LL : 0xf.ffffffffffffeffffffffffffeep+252 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 4LL : 0xf.ffffffffffffeffffffffffffee8p+252 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 4LL : 0xf.ffffffffffffeffffffffffffeep+252 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 4LL : 0xf.ffffffffffffeffffffffffffee8p+252 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 4LL : 0xf.ffffffffffffeffffffffffffcp+252 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 4LL : 0xf.fffffffffffffp+252 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 4LL : 0xf.ffffffffffffeffffffffffffcp+252 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 4LL : 0xf.fffffffffffffp+252 : inexact-ok
+rootn max 5
+= rootn downward binary32 0xf.fffffp+124 5LL : 0x3.080bfcp+24 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 5LL : 0x3.080cp+24 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 5LL : 0x3.080bfcp+24 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 5LL : 0x3.080cp+24 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 5LL : 0x3.080bffdb20318p+24 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 5LL : 0x3.080bffdb2031ap+24 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 5LL : 0x3.080bffdb20318p+24 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 5LL : 0x3.080bffdb2031ap+24 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 5LL : 0x3.080bffdb20319e18p+24 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 5LL : 0x3.080bffdb20319e18p+24 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 5LL : 0x3.080bffdb20319e18p+24 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 5LL : 0x3.080bffdb20319e1cp+24 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 5LL : 0x3.080bffdb20319e18p+24 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 5LL : 0x3.080bffdb20319e18p+24 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 5LL : 0x3.080bffdb20319e18p+24 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 5LL : 0x3.080bffdb20319e1cp+24 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 5LL : 0x3.080bffdb20319e1959d2be79f9fap+24 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 5LL : 0x3.080bffdb20319e1959d2be79f9fap+24 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 5LL : 0x3.080bffdb20319e1959d2be79f9fap+24 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 5LL : 0x3.080bffdb20319e1959d2be79f9fcp+24 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 5LL : 0x3.080bffdb20319e1959d2be79f9p+24 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 5LL : 0x3.080bffdb20319e1959d2be79fap+24 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 5LL : 0x3.080bffdb20319e1959d2be79f9p+24 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 5LL : 0x3.080bffdb20319e1959d2be79fap+24 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 5LL : 0x1.bdb8cdadbe11fp+204 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 5LL : 0x1.bdb8cdadbe12p+204 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 5LL : 0x1.bdb8cdadbe11fp+204 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 5LL : 0x1.bdb8cdadbe12p+204 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 5LL : 0x1.bdb8cdadbe11ff4ap+204 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 5LL : 0x1.bdb8cdadbe11ff4cp+204 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 5LL : 0x1.bdb8cdadbe11ff4ap+204 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 5LL : 0x1.bdb8cdadbe11ff4cp+204 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 5LL : 0x1.bdb8cdadbe11ff4ap+204 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 5LL : 0x1.bdb8cdadbe11ff4cp+204 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 5LL : 0x1.bdb8cdadbe11ff4ap+204 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 5LL : 0x1.bdb8cdadbe11ff4cp+204 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 5LL : 0x1.bdb8cdadbe11ff4bce6db44f2f9dp+204 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 5LL : 0x1.bdb8cdadbe11ff4bce6db44f2f9dp+204 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 5LL : 0x1.bdb8cdadbe11ff4bce6db44f2f9dp+204 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 5LL : 0x1.bdb8cdadbe11ff4bce6db44f2f9ep+204 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 5LL : 0x1.bdb8cdadbe11ff4bce6db44f2f8p+204 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 5LL : 0x1.bdb8cdadbe11ff4bce6db44f2f8p+204 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 5LL : 0x1.bdb8cdadbe11ff4bce6db44f2f8p+204 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 5LL : 0x1.bdb8cdadbe11ff4bce6db44f3p+204 : inexact-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 5LL : 0x1.bdb8cdadbe120214p+3276 : inexact-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 5LL : 0x1.bdb8cdadbe120214p+3276 : inexact-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 5LL : 0x1.bdb8cdadbe120214p+3276 : inexact-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 5LL : 0x1.bdb8cdadbe120216p+3276 : inexact-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 5LL : 0x1.bdb8cdadbe120214p+3276 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 5LL : 0x1.bdb8cdadbe120214p+3276 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 5LL : 0x1.bdb8cdadbe120214p+3276 : inexact-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 5LL : 0x1.bdb8cdadbe120216p+3276 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 5LL : 0x1.bdb8cdadbe1202149cf83ac2f33fp+3276 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 5LL : 0x1.bdb8cdadbe1202149cf83ac2f33fp+3276 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 5LL : 0x1.bdb8cdadbe1202149cf83ac2f33fp+3276 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 5LL : 0x1.bdb8cdadbe1202149cf83ac2f34p+3276 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 5LL : 0x1.bdb8cdadbe120214f61d30b27fa9p+3276 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 5LL : 0x1.bdb8cdadbe120214f61d30b27fa9p+3276 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 5LL : 0x1.bdb8cdadbe120214f61d30b27fa9p+3276 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 5LL : 0x1.bdb8cdadbe120214f61d30b27faap+3276 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 5LL : 0x1.bdb8cdadbe1200b062457280d78fp+204 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 5LL : 0x1.bdb8cdadbe1200b062457280d78fp+204 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 5LL : 0x1.bdb8cdadbe1200b062457280d78fp+204 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 5LL : 0x1.bdb8cdadbe1200b062457280d79p+204 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 5LL : 0x1.bdb8cdadbe1200b062457280d78p+204 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 5LL : 0x1.bdb8cdadbe1200b062457280d78p+204 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 5LL : 0x1.bdb8cdadbe1200b062457280d78p+204 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 5LL : 0x1.bdb8cdadbe1200b062457280d8p+204 : inexact-ok
+rootn max 63
+= rootn downward binary32 0xf.fffffp+124 63LL : 0x4.16c85p+0 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 63LL : 0x4.16c85p+0 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 63LL : 0x4.16c85p+0 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 63LL : 0x4.16c858p+0 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 63LL : 0x4.16c85393ab648p+0 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 63LL : 0x4.16c85393ab648p+0 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 63LL : 0x4.16c85393ab648p+0 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 63LL : 0x4.16c85393ab64cp+0 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 63LL : 0x4.16c85393ab6485c8p+0 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 63LL : 0x4.16c85393ab6485dp+0 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 63LL : 0x4.16c85393ab6485c8p+0 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 63LL : 0x4.16c85393ab6485dp+0 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 63LL : 0x4.16c85393ab6485c8p+0 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 63LL : 0x4.16c85393ab6485dp+0 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 63LL : 0x4.16c85393ab6485c8p+0 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 63LL : 0x4.16c85393ab6485dp+0 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 63LL : 0x4.16c85393ab6485cd0e6edb20df84p+0 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 63LL : 0x4.16c85393ab6485cd0e6edb20df88p+0 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 63LL : 0x4.16c85393ab6485cd0e6edb20df84p+0 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 63LL : 0x4.16c85393ab6485cd0e6edb20df88p+0 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 63LL : 0x4.16c85393ab6485cd0e6edb20dep+0 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 63LL : 0x4.16c85393ab6485cd0e6edb20ep+0 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 63LL : 0x4.16c85393ab6485cd0e6edb20dep+0 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 63LL : 0x4.16c85393ab6485cd0e6edb20ep+0 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 63LL : 0x1.31468ab0da7fcp+16 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 63LL : 0x1.31468ab0da7fcp+16 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 63LL : 0x1.31468ab0da7fcp+16 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 63LL : 0x1.31468ab0da7fdp+16 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 63LL : 0x1.31468ab0da7fc484p+16 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 63LL : 0x1.31468ab0da7fc486p+16 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 63LL : 0x1.31468ab0da7fc484p+16 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 63LL : 0x1.31468ab0da7fc486p+16 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 63LL : 0x1.31468ab0da7fc484p+16 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 63LL : 0x1.31468ab0da7fc486p+16 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 63LL : 0x1.31468ab0da7fc484p+16 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 63LL : 0x1.31468ab0da7fc486p+16 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 63LL : 0x1.31468ab0da7fc485afb86c9b9f73p+16 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 63LL : 0x1.31468ab0da7fc485afb86c9b9f73p+16 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 63LL : 0x1.31468ab0da7fc485afb86c9b9f73p+16 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 63LL : 0x1.31468ab0da7fc485afb86c9b9f74p+16 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 63LL : 0x1.31468ab0da7fc485afb86c9b9fp+16 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 63LL : 0x1.31468ab0da7fc485afb86c9b9f8p+16 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 63LL : 0x1.31468ab0da7fc485afb86c9b9fp+16 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 63LL : 0x1.31468ab0da7fc485afb86c9b9f8p+16 : inexact-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 63LL : 0x1.0b849a84550732fp+260 : inexact-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 63LL : 0x1.0b849a84550732fp+260 : inexact-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 63LL : 0x1.0b849a84550732fp+260 : inexact-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 63LL : 0x1.0b849a84550732f2p+260 : inexact-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 63LL : 0x1.0b849a84550732fp+260 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 63LL : 0x1.0b849a84550732fp+260 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 63LL : 0x1.0b849a84550732fp+260 : inexact-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 63LL : 0x1.0b849a84550732f2p+260 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 63LL : 0x1.0b849a84550732f0f2d4e1ed7125p+260 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 63LL : 0x1.0b849a84550732f0f2d4e1ed7125p+260 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 63LL : 0x1.0b849a84550732f0f2d4e1ed7125p+260 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 63LL : 0x1.0b849a84550732f0f2d4e1ed7126p+260 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 63LL : 0x1.0b849a84550732f0f713f0921508p+260 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 63LL : 0x1.0b849a84550732f0f713f0921509p+260 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 63LL : 0x1.0b849a84550732f0f713f0921508p+260 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 63LL : 0x1.0b849a84550732f0f713f0921509p+260 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 63LL : 0x1.31468ab0da7fc49911a8d95c4a19p+16 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 63LL : 0x1.31468ab0da7fc49911a8d95c4a19p+16 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 63LL : 0x1.31468ab0da7fc49911a8d95c4a19p+16 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 63LL : 0x1.31468ab0da7fc49911a8d95c4a1ap+16 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 63LL : 0x1.31468ab0da7fc49911a8d95c4ap+16 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 63LL : 0x1.31468ab0da7fc49911a8d95c4ap+16 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 63LL : 0x1.31468ab0da7fc49911a8d95c4ap+16 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 63LL : 0x1.31468ab0da7fc49911a8d95c4a8p+16 : inexact-ok
+rootn max 127
+= rootn downward binary32 0xf.fffffp+124 127LL : 0x2.02cd5p+0 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 127LL : 0x2.02cd54p+0 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 127LL : 0x2.02cd5p+0 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 127LL : 0x2.02cd54p+0 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 127LL : 0x2.02cd53c63e7e2p+0 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 127LL : 0x2.02cd53c63e7e2p+0 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 127LL : 0x2.02cd53c63e7e2p+0 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 127LL : 0x2.02cd53c63e7e4p+0 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 127LL : 0x2.02cd53c63e7e2cc4p+0 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 127LL : 0x2.02cd53c63e7e2cc8p+0 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 127LL : 0x2.02cd53c63e7e2cc4p+0 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 127LL : 0x2.02cd53c63e7e2cc8p+0 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 127LL : 0x2.02cd53c63e7e2cc4p+0 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 127LL : 0x2.02cd53c63e7e2cc8p+0 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 127LL : 0x2.02cd53c63e7e2cc4p+0 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 127LL : 0x2.02cd53c63e7e2cc8p+0 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 127LL : 0x2.02cd53c63e7e2cc746bd9c07db9p+0 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 127LL : 0x2.02cd53c63e7e2cc746bd9c07db9p+0 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 127LL : 0x2.02cd53c63e7e2cc746bd9c07db9p+0 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 127LL : 0x2.02cd53c63e7e2cc746bd9c07db92p+0 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 127LL : 0x2.02cd53c63e7e2cc746bd9c07dbp+0 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 127LL : 0x2.02cd53c63e7e2cc746bd9c07dcp+0 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 127LL : 0x2.02cd53c63e7e2cc746bd9c07dbp+0 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 127LL : 0x2.02cd53c63e7e2cc746bd9c07dcp+0 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 127LL : 0x1.0b6ce02e2f817p+8 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 127LL : 0x1.0b6ce02e2f818p+8 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 127LL : 0x1.0b6ce02e2f817p+8 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 127LL : 0x1.0b6ce02e2f818p+8 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 127LL : 0x1.0b6ce02e2f817c64p+8 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 127LL : 0x1.0b6ce02e2f817c64p+8 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 127LL : 0x1.0b6ce02e2f817c64p+8 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 127LL : 0x1.0b6ce02e2f817c66p+8 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 127LL : 0x1.0b6ce02e2f817c64p+8 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 127LL : 0x1.0b6ce02e2f817c64p+8 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 127LL : 0x1.0b6ce02e2f817c64p+8 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 127LL : 0x1.0b6ce02e2f817c66p+8 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 127LL : 0x1.0b6ce02e2f817c648b4982a5ff97p+8 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 127LL : 0x1.0b6ce02e2f817c648b4982a5ff98p+8 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 127LL : 0x1.0b6ce02e2f817c648b4982a5ff97p+8 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 127LL : 0x1.0b6ce02e2f817c648b4982a5ff98p+8 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 127LL : 0x1.0b6ce02e2f817c648b4982a5ff8p+8 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 127LL : 0x1.0b6ce02e2f817c648b4982a5ff8p+8 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 127LL : 0x1.0b6ce02e2f817c648b4982a5ff8p+8 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 127LL : 0x1.0b6ce02e2f817c648b4982a6p+8 : inexact-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 127LL : 0x2.02cd53ca4c344284p+128 : inexact-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 127LL : 0x2.02cd53ca4c344288p+128 : inexact-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 127LL : 0x2.02cd53ca4c344284p+128 : inexact-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 127LL : 0x2.02cd53ca4c344288p+128 : inexact-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 127LL : 0x2.02cd53ca4c344284p+128 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 127LL : 0x2.02cd53ca4c344288p+128 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 127LL : 0x2.02cd53ca4c344284p+128 : inexact-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 127LL : 0x2.02cd53ca4c344288p+128 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 127LL : 0x2.02cd53ca4c3442861862daa26a0ap+128 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 127LL : 0x2.02cd53ca4c3442861862daa26a0cp+128 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 127LL : 0x2.02cd53ca4c3442861862daa26a0ap+128 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 127LL : 0x2.02cd53ca4c3442861862daa26a0cp+128 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 127LL : 0x2.02cd53ca4c3442861c7090b6261cp+128 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 127LL : 0x2.02cd53ca4c3442861c7090b6261cp+128 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 127LL : 0x2.02cd53ca4c3442861c7090b6261cp+128 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 127LL : 0x2.02cd53ca4c3442861c7090b6261ep+128 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 127LL : 0x1.0b6ce02e2f817c6cf78903186064p+8 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 127LL : 0x1.0b6ce02e2f817c6cf78903186065p+8 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 127LL : 0x1.0b6ce02e2f817c6cf78903186064p+8 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 127LL : 0x1.0b6ce02e2f817c6cf78903186065p+8 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 127LL : 0x1.0b6ce02e2f817c6cf78903186p+8 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 127LL : 0x1.0b6ce02e2f817c6cf7890318608p+8 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 127LL : 0x1.0b6ce02e2f817c6cf78903186p+8 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 127LL : 0x1.0b6ce02e2f817c6cf7890318608p+8 : inexact-ok
+rootn max 255
+= rootn downward binary32 0xf.fffffp+124 255LL : 0x1.6a87f2p+0 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 255LL : 0x1.6a87f4p+0 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 255LL : 0x1.6a87f2p+0 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 255LL : 0x1.6a87f4p+0 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 255LL : 0x1.6a87f3635859fp+0 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 255LL : 0x1.6a87f363585ap+0 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 255LL : 0x1.6a87f3635859fp+0 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 255LL : 0x1.6a87f363585ap+0 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 255LL : 0x1.6a87f3635859fffap+0 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 255LL : 0x1.6a87f3635859fffap+0 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 255LL : 0x1.6a87f3635859fffap+0 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 255LL : 0x1.6a87f3635859fffcp+0 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 255LL : 0x1.6a87f3635859fffap+0 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 255LL : 0x1.6a87f3635859fffap+0 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 255LL : 0x1.6a87f3635859fffap+0 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 255LL : 0x1.6a87f3635859fffcp+0 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 255LL : 0x1.6a87f3635859fffa62107ae62e8fp+0 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 255LL : 0x1.6a87f3635859fffa62107ae62e9p+0 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 255LL : 0x1.6a87f3635859fffa62107ae62e8fp+0 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 255LL : 0x1.6a87f3635859fffa62107ae62e9p+0 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 255LL : 0x1.6a87f3635859fffa62107ae62e8p+0 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 255LL : 0x1.6a87f3635859fffa62107ae62e8p+0 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 255LL : 0x1.6a87f3635859fffa62107ae62e8p+0 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 255LL : 0x1.6a87f3635859fffa62107ae62fp+0 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 255LL : 0x1.02cc743eb740dp+4 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 255LL : 0x1.02cc743eb740ep+4 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 255LL : 0x1.02cc743eb740dp+4 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 255LL : 0x1.02cc743eb740ep+4 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 255LL : 0x1.02cc743eb740da28p+4 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 255LL : 0x1.02cc743eb740da28p+4 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 255LL : 0x1.02cc743eb740da28p+4 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 255LL : 0x1.02cc743eb740da2ap+4 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 255LL : 0x1.02cc743eb740da28p+4 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 255LL : 0x1.02cc743eb740da28p+4 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 255LL : 0x1.02cc743eb740da28p+4 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 255LL : 0x1.02cc743eb740da2ap+4 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 255LL : 0x1.02cc743eb740da28817589885541p+4 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 255LL : 0x1.02cc743eb740da28817589885542p+4 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 255LL : 0x1.02cc743eb740da28817589885541p+4 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 255LL : 0x1.02cc743eb740da28817589885542p+4 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 255LL : 0x1.02cc743eb740da288175898855p+4 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 255LL : 0x1.02cc743eb740da2881758988558p+4 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 255LL : 0x1.02cc743eb740da288175898855p+4 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 255LL : 0x1.02cc743eb740da2881758988558p+4 : inexact-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 255LL : 0x1.30a4db7717664b92p+64 : inexact-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 255LL : 0x1.30a4db7717664b92p+64 : inexact-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 255LL : 0x1.30a4db7717664b92p+64 : inexact-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 255LL : 0x1.30a4db7717664b94p+64 : inexact-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 255LL : 0x1.30a4db7717664b92p+64 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 255LL : 0x1.30a4db7717664b92p+64 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 255LL : 0x1.30a4db7717664b92p+64 : inexact-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 255LL : 0x1.30a4db7717664b94p+64 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 255LL : 0x1.30a4db7717664b9224a90f2d0543p+64 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 255LL : 0x1.30a4db7717664b9224a90f2d0543p+64 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 255LL : 0x1.30a4db7717664b9224a90f2d0543p+64 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 255LL : 0x1.30a4db7717664b9224a90f2d0544p+64 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 255LL : 0x1.30a4db7717664b9225dae5df2e84p+64 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 255LL : 0x1.30a4db7717664b9225dae5df2e84p+64 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 255LL : 0x1.30a4db7717664b9225dae5df2e84p+64 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 255LL : 0x1.30a4db7717664b9225dae5df2e85p+64 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 255LL : 0x1.02cc743eb740da2c90b69b953f2fp+4 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 255LL : 0x1.02cc743eb740da2c90b69b953f2fp+4 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 255LL : 0x1.02cc743eb740da2c90b69b953f2fp+4 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 255LL : 0x1.02cc743eb740da2c90b69b953f3p+4 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 255LL : 0x1.02cc743eb740da2c90b69b953fp+4 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 255LL : 0x1.02cc743eb740da2c90b69b953fp+4 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 255LL : 0x1.02cc743eb740da2c90b69b953fp+4 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 255LL : 0x1.02cc743eb740da2c90b69b953f8p+4 : inexact-ok
+rootn max 511
+= rootn downward binary32 0xf.fffffp+124 511LL : 0x1.308a4ep+0 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 511LL : 0x1.308a5p+0 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 511LL : 0x1.308a4ep+0 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 511LL : 0x1.308a5p+0 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 511LL : 0x1.308a4fa03a45p+0 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 511LL : 0x1.308a4fa03a45p+0 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 511LL : 0x1.308a4fa03a45p+0 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 511LL : 0x1.308a4fa03a451p+0 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 511LL : 0x1.308a4fa03a450564p+0 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 511LL : 0x1.308a4fa03a450564p+0 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 511LL : 0x1.308a4fa03a450564p+0 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 511LL : 0x1.308a4fa03a450566p+0 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 511LL : 0x1.308a4fa03a450564p+0 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 511LL : 0x1.308a4fa03a450564p+0 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 511LL : 0x1.308a4fa03a450564p+0 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 511LL : 0x1.308a4fa03a450566p+0 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 511LL : 0x1.308a4fa03a4505649afebb6a2c26p+0 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 511LL : 0x1.308a4fa03a4505649afebb6a2c26p+0 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 511LL : 0x1.308a4fa03a4505649afebb6a2c26p+0 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 511LL : 0x1.308a4fa03a4505649afebb6a2c27p+0 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 511LL : 0x1.308a4fa03a4505649afebb6a2cp+0 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 511LL : 0x1.308a4fa03a4505649afebb6a2cp+0 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 511LL : 0x1.308a4fa03a4505649afebb6a2cp+0 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 511LL : 0x1.308a4fa03a4505649afebb6a2c8p+0 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 511LL : 0x4.02c82323b6b0cp+0 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 511LL : 0x4.02c82323b6b1p+0 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 511LL : 0x4.02c82323b6b0cp+0 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 511LL : 0x4.02c82323b6b1p+0 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 511LL : 0x4.02c82323b6b0fd68p+0 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 511LL : 0x4.02c82323b6b0fd7p+0 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 511LL : 0x4.02c82323b6b0fd68p+0 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 511LL : 0x4.02c82323b6b0fd7p+0 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 511LL : 0x4.02c82323b6b0fd68p+0 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 511LL : 0x4.02c82323b6b0fd7p+0 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 511LL : 0x4.02c82323b6b0fd68p+0 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 511LL : 0x4.02c82323b6b0fd7p+0 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 511LL : 0x4.02c82323b6b0fd6cf26badddbc7cp+0 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 511LL : 0x4.02c82323b6b0fd6cf26badddbc8p+0 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 511LL : 0x4.02c82323b6b0fd6cf26badddbc7cp+0 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 511LL : 0x4.02c82323b6b0fd6cf26badddbc8p+0 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 511LL : 0x4.02c82323b6b0fd6cf26badddbcp+0 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 511LL : 0x4.02c82323b6b0fd6cf26badddbcp+0 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 511LL : 0x4.02c82323b6b0fd6cf26badddbcp+0 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 511LL : 0x4.02c82323b6b0fd6cf26badddbep+0 : inexact-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 511LL : 0x1.0b5b543099f35ff2p+32 : inexact-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 511LL : 0x1.0b5b543099f35ff4p+32 : inexact-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 511LL : 0x1.0b5b543099f35ff2p+32 : inexact-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 511LL : 0x1.0b5b543099f35ff4p+32 : inexact-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 511LL : 0x1.0b5b543099f35ff2p+32 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 511LL : 0x1.0b5b543099f35ff4p+32 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 511LL : 0x1.0b5b543099f35ff2p+32 : inexact-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 511LL : 0x1.0b5b543099f35ff4p+32 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 511LL : 0x1.0b5b543099f35ff320e74e770928p+32 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 511LL : 0x1.0b5b543099f35ff320e74e770928p+32 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 511LL : 0x1.0b5b543099f35ff320e74e770928p+32 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 511LL : 0x1.0b5b543099f35ff320e74e770929p+32 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 511LL : 0x1.0b5b543099f35ff3216d3f1972a9p+32 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 511LL : 0x1.0b5b543099f35ff3216d3f1972aap+32 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 511LL : 0x1.0b5b543099f35ff3216d3f1972a9p+32 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 511LL : 0x1.0b5b543099f35ff3216d3f1972aap+32 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 511LL : 0x4.02c82323b6b0fd74fc00bead91c8p+0 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 511LL : 0x4.02c82323b6b0fd74fc00bead91ccp+0 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 511LL : 0x4.02c82323b6b0fd74fc00bead91c8p+0 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 511LL : 0x4.02c82323b6b0fd74fc00bead91ccp+0 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 511LL : 0x4.02c82323b6b0fd74fc00bead9p+0 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 511LL : 0x4.02c82323b6b0fd74fc00bead92p+0 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 511LL : 0x4.02c82323b6b0fd74fc00bead9p+0 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 511LL : 0x4.02c82323b6b0fd74fc00bead92p+0 : inexact-ok
+rootn max 1023
+= rootn downward binary32 0xf.fffffp+124 1023LL : 0x1.17319p+0 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 1023LL : 0x1.173192p+0 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 1023LL : 0x1.17319p+0 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 1023LL : 0x1.173192p+0 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 1023LL : 0x1.17319167ccbb6p+0 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 1023LL : 0x1.17319167ccbb7p+0 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 1023LL : 0x1.17319167ccbb6p+0 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 1023LL : 0x1.17319167ccbb7p+0 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 1023LL : 0x1.17319167ccbb6f04p+0 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 1023LL : 0x1.17319167ccbb6f06p+0 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 1023LL : 0x1.17319167ccbb6f04p+0 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 1023LL : 0x1.17319167ccbb6f06p+0 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 1023LL : 0x1.17319167ccbb6f04p+0 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 1023LL : 0x1.17319167ccbb6f06p+0 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 1023LL : 0x1.17319167ccbb6f04p+0 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 1023LL : 0x1.17319167ccbb6f06p+0 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 1023LL : 0x1.17319167ccbb6f05999d9c57ed17p+0 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 1023LL : 0x1.17319167ccbb6f05999d9c57ed17p+0 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 1023LL : 0x1.17319167ccbb6f05999d9c57ed17p+0 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 1023LL : 0x1.17319167ccbb6f05999d9c57ed18p+0 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 1023LL : 0x1.17319167ccbb6f05999d9c57edp+0 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 1023LL : 0x1.17319167ccbb6f05999d9c57edp+0 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 1023LL : 0x1.17319167ccbb6f05999d9c57edp+0 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 1023LL : 0x1.17319167ccbb6f05999d9c57ed8p+0 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 1023LL : 0x2.0058d6f406cb6p+0 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 1023LL : 0x2.0058d6f406cb8p+0 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 1023LL : 0x2.0058d6f406cb6p+0 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 1023LL : 0x2.0058d6f406cb8p+0 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 1023LL : 0x2.0058d6f406cb784cp+0 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 1023LL : 0x2.0058d6f406cb785p+0 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 1023LL : 0x2.0058d6f406cb784cp+0 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 1023LL : 0x2.0058d6f406cb785p+0 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 1023LL : 0x2.0058d6f406cb784cp+0 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 1023LL : 0x2.0058d6f406cb785p+0 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 1023LL : 0x2.0058d6f406cb784cp+0 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 1023LL : 0x2.0058d6f406cb785p+0 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 1023LL : 0x2.0058d6f406cb784f1eb6f71fb03p+0 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 1023LL : 0x2.0058d6f406cb784f1eb6f71fb032p+0 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 1023LL : 0x2.0058d6f406cb784f1eb6f71fb03p+0 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 1023LL : 0x2.0058d6f406cb784f1eb6f71fb032p+0 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 1023LL : 0x2.0058d6f406cb784f1eb6f71fbp+0 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 1023LL : 0x2.0058d6f406cb784f1eb6f71fbp+0 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 1023LL : 0x2.0058d6f406cb784f1eb6f71fbp+0 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 1023LL : 0x2.0058d6f406cb784f1eb6f71fb1p+0 : inexact-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 1023LL : 0x1.02ca57755a11c3b4p+16 : inexact-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 1023LL : 0x1.02ca57755a11c3b6p+16 : inexact-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 1023LL : 0x1.02ca57755a11c3b4p+16 : inexact-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 1023LL : 0x1.02ca57755a11c3b6p+16 : inexact-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 1023LL : 0x1.02ca57755a11c3b4p+16 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 1023LL : 0x1.02ca57755a11c3b6p+16 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 1023LL : 0x1.02ca57755a11c3b4p+16 : inexact-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 1023LL : 0x1.02ca57755a11c3b6p+16 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 1023LL : 0x1.02ca57755a11c3b5166b261cf79ap+16 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 1023LL : 0x1.02ca57755a11c3b5166b261cf79bp+16 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 1023LL : 0x1.02ca57755a11c3b5166b261cf79ap+16 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 1023LL : 0x1.02ca57755a11c3b5166b261cf79bp+16 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 1023LL : 0x1.02ca57755a11c3b516abe8e38694p+16 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 1023LL : 0x1.02ca57755a11c3b516abe8e38695p+16 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 1023LL : 0x1.02ca57755a11c3b516abe8e38694p+16 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 1023LL : 0x1.02ca57755a11c3b516abe8e38695p+16 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 1023LL : 0x2.0058d6f406cb78511f90045704d2p+0 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 1023LL : 0x2.0058d6f406cb78511f90045704d2p+0 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 1023LL : 0x2.0058d6f406cb78511f90045704d2p+0 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 1023LL : 0x2.0058d6f406cb78511f90045704d4p+0 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 1023LL : 0x2.0058d6f406cb78511f90045704p+0 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 1023LL : 0x2.0058d6f406cb78511f90045705p+0 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 1023LL : 0x2.0058d6f406cb78511f90045704p+0 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 1023LL : 0x2.0058d6f406cb78511f90045705p+0 : inexact-ok
+rootn max 16383
+= rootn downward binary32 0xf.fffffp+124 16383LL : 0x1.0163ep+0 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 16383LL : 0x1.0163ep+0 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 16383LL : 0x1.0163ep+0 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 16383LL : 0x1.0163e2p+0 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 16383LL : 0x1.0163e0330b906p+0 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 16383LL : 0x1.0163e0330b906p+0 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 16383LL : 0x1.0163e0330b906p+0 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 16383LL : 0x1.0163e0330b907p+0 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 16383LL : 0x1.0163e0330b90658cp+0 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 16383LL : 0x1.0163e0330b90658ep+0 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 16383LL : 0x1.0163e0330b90658cp+0 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 16383LL : 0x1.0163e0330b90658ep+0 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 16383LL : 0x1.0163e0330b90658cp+0 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 16383LL : 0x1.0163e0330b90658ep+0 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 16383LL : 0x1.0163e0330b90658cp+0 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 16383LL : 0x1.0163e0330b90658ep+0 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 16383LL : 0x1.0163e0330b90658d599e663f0effp+0 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 16383LL : 0x1.0163e0330b90658d599e663f0fp+0 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 16383LL : 0x1.0163e0330b90658d599e663f0effp+0 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 16383LL : 0x1.0163e0330b90658d599e663f0fp+0 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 16383LL : 0x1.0163e0330b90658d599e663f0e8p+0 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 16383LL : 0x1.0163e0330b90658d599e663f0fp+0 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 16383LL : 0x1.0163e0330b90658d599e663f0e8p+0 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 16383LL : 0x1.0163e0330b90658d599e663f0fp+0 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 16383LL : 0x1.0b55b523a7b98p+0 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 16383LL : 0x1.0b55b523a7b99p+0 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 16383LL : 0x1.0b55b523a7b98p+0 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 16383LL : 0x1.0b55b523a7b99p+0 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 16383LL : 0x1.0b55b523a7b98dep+0 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 16383LL : 0x1.0b55b523a7b98dep+0 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 16383LL : 0x1.0b55b523a7b98dep+0 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 16383LL : 0x1.0b55b523a7b98de2p+0 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 16383LL : 0x1.0b55b523a7b98dep+0 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 16383LL : 0x1.0b55b523a7b98dep+0 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 16383LL : 0x1.0b55b523a7b98dep+0 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 16383LL : 0x1.0b55b523a7b98de2p+0 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 16383LL : 0x1.0b55b523a7b98de079e20a316479p+0 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 16383LL : 0x1.0b55b523a7b98de079e20a316479p+0 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 16383LL : 0x1.0b55b523a7b98de079e20a316479p+0 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 16383LL : 0x1.0b55b523a7b98de079e20a31647ap+0 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 16383LL : 0x1.0b55b523a7b98de079e20a3164p+0 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 16383LL : 0x1.0b55b523a7b98de079e20a31648p+0 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 16383LL : 0x1.0b55b523a7b98de079e20a3164p+0 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 16383LL : 0x1.0b55b523a7b98de079e20a31648p+0 : inexact-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 16383LL : 0x2.00058bae9e8e63ccp+0 : inexact-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 16383LL : 0x2.00058bae9e8e63dp+0 : inexact-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 16383LL : 0x2.00058bae9e8e63ccp+0 : inexact-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 16383LL : 0x2.00058bae9e8e63dp+0 : inexact-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 16383LL : 0x2.00058bae9e8e63ccp+0 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 16383LL : 0x2.00058bae9e8e63dp+0 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 16383LL : 0x2.00058bae9e8e63ccp+0 : inexact-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 16383LL : 0x2.00058bae9e8e63dp+0 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 16383LL : 0x2.00058bae9e8e63cf086d74c78c1cp+0 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 16383LL : 0x2.00058bae9e8e63cf086d74c78c1ep+0 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 16383LL : 0x2.00058bae9e8e63cf086d74c78c1cp+0 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 16383LL : 0x2.00058bae9e8e63cf086d74c78c1ep+0 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 16383LL : 0x2.00058bae9e8e63cf087574fdbbbp+0 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 16383LL : 0x2.00058bae9e8e63cf087574fdbbb2p+0 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 16383LL : 0x2.00058bae9e8e63cf087574fdbbbp+0 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 16383LL : 0x2.00058bae9e8e63cf087574fdbbb2p+0 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 16383LL : 0x1.0b55b523a7b98de08a97a85a1797p+0 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 16383LL : 0x1.0b55b523a7b98de08a97a85a1798p+0 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 16383LL : 0x1.0b55b523a7b98de08a97a85a1797p+0 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 16383LL : 0x1.0b55b523a7b98de08a97a85a1798p+0 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 16383LL : 0x1.0b55b523a7b98de08a97a85a178p+0 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 16383LL : 0x1.0b55b523a7b98de08a97a85a178p+0 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 16383LL : 0x1.0b55b523a7b98de08a97a85a178p+0 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 16383LL : 0x1.0b55b523a7b98de08a97a85a18p+0 : inexact-ok
+rootn max 0x1000001
+= rootn downward binary32 0xf.fffffp+124 16777217LL : 0x1.000058p+0 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 16777217LL : 0x1.000058p+0 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 16777217LL : 0x1.000058p+0 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 16777217LL : 0x1.00005ap+0 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 16777217LL : 0x1.000058b91b021p+0 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 16777217LL : 0x1.000058b91b021p+0 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 16777217LL : 0x1.000058b91b021p+0 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 16777217LL : 0x1.000058b91b022p+0 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 16777217LL : 0x1.000058b91b021082p+0 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 16777217LL : 0x1.000058b91b021084p+0 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 16777217LL : 0x1.000058b91b021082p+0 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 16777217LL : 0x1.000058b91b021084p+0 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 16777217LL : 0x1.000058b91b021082p+0 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 16777217LL : 0x1.000058b91b021084p+0 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 16777217LL : 0x1.000058b91b021082p+0 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 16777217LL : 0x1.000058b91b021084p+0 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 16777217LL : 0x1.000058b91b02108373c16583a475p+0 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 16777217LL : 0x1.000058b91b02108373c16583a475p+0 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 16777217LL : 0x1.000058b91b02108373c16583a475p+0 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 16777217LL : 0x1.000058b91b02108373c16583a476p+0 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 16777217LL : 0x1.000058b91b02108373c16583a4p+0 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 16777217LL : 0x1.000058b91b02108373c16583a48p+0 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 16777217LL : 0x1.000058b91b02108373c16583a4p+0 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 16777217LL : 0x1.000058b91b02108373c16583a48p+0 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 16777217LL : 0x1.0002c5cc3514cp+0 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 16777217LL : 0x1.0002c5cc3514cp+0 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 16777217LL : 0x1.0002c5cc3514cp+0 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 16777217LL : 0x1.0002c5cc3514dp+0 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 16777217LL : 0x1.0002c5cc3514c484p+0 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 16777217LL : 0x1.0002c5cc3514c484p+0 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 16777217LL : 0x1.0002c5cc3514c484p+0 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 16777217LL : 0x1.0002c5cc3514c486p+0 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 16777217LL : 0x1.0002c5cc3514c484p+0 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 16777217LL : 0x1.0002c5cc3514c484p+0 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 16777217LL : 0x1.0002c5cc3514c484p+0 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 16777217LL : 0x1.0002c5cc3514c486p+0 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 16777217LL : 0x1.0002c5cc3514c484bcf4f572549ep+0 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 16777217LL : 0x1.0002c5cc3514c484bcf4f572549fp+0 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 16777217LL : 0x1.0002c5cc3514c484bcf4f572549ep+0 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 16777217LL : 0x1.0002c5cc3514c484bcf4f572549fp+0 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 16777217LL : 0x1.0002c5cc3514c484bcf4f572548p+0 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 16777217LL : 0x1.0002c5cc3514c484bcf4f572548p+0 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 16777217LL : 0x1.0002c5cc3514c484bcf4f572548p+0 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 16777217LL : 0x1.0002c5cc3514c484bcf4f57255p+0 : inexact-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 16777217LL : 0x1.002c605e0228b5e4p+0 : inexact-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 16777217LL : 0x1.002c605e0228b5e4p+0 : inexact-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 16777217LL : 0x1.002c605e0228b5e4p+0 : inexact-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 16777217LL : 0x1.002c605e0228b5e6p+0 : inexact-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 16777217LL : 0x1.002c605e0228b5e4p+0 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 16777217LL : 0x1.002c605e0228b5e4p+0 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 16777217LL : 0x1.002c605e0228b5e4p+0 : inexact-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 16777217LL : 0x1.002c605e0228b5e6p+0 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 16777217LL : 0x1.002c605e0228b5e4d4cd6fcd4e7fp+0 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 16777217LL : 0x1.002c605e0228b5e4d4cd6fcd4e8p+0 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 16777217LL : 0x1.002c605e0228b5e4d4cd6fcd4e7fp+0 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 16777217LL : 0x1.002c605e0228b5e4d4cd6fcd4e8p+0 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 16777217LL : 0x1.002c605e0228b5e4d4cd70cd7adfp+0 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 16777217LL : 0x1.002c605e0228b5e4d4cd70cd7adfp+0 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 16777217LL : 0x1.002c605e0228b5e4d4cd70cd7adfp+0 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 16777217LL : 0x1.002c605e0228b5e4d4cd70cd7aep+0 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 16777217LL : 0x1.0002c5cc3514c484bcf8f57d67cfp+0 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 16777217LL : 0x1.0002c5cc3514c484bcf8f57d67dp+0 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 16777217LL : 0x1.0002c5cc3514c484bcf8f57d67cfp+0 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 16777217LL : 0x1.0002c5cc3514c484bcf8f57d67dp+0 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 16777217LL : 0x1.0002c5cc3514c484bcf8f57d678p+0 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 16777217LL : 0x1.0002c5cc3514c484bcf8f57d68p+0 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 16777217LL : 0x1.0002c5cc3514c484bcf8f57d678p+0 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 16777217LL : 0x1.0002c5cc3514c484bcf8f57d68p+0 : inexact-ok
+rootn max 0x10000000000001
+= rootn downward binary32 0xf.fffffp+124 4503599627370497LL : 0x1p+0 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 4503599627370497LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 4503599627370497LL : 0x1p+0 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 4503599627370497LL : 0x1.000002p+0 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 4503599627370497LL : 0x1.0000000000058p+0 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 4503599627370497LL : 0x1.0000000000059p+0 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 4503599627370497LL : 0x1.0000000000058p+0 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 4503599627370497LL : 0x1.0000000000059p+0 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 4503599627370497LL : 0x1.0000000000058b9p+0 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 4503599627370497LL : 0x1.0000000000058b9p+0 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 4503599627370497LL : 0x1.0000000000058b9p+0 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 4503599627370497LL : 0x1.0000000000058b92p+0 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 4503599627370497LL : 0x1.0000000000058b9p+0 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 4503599627370497LL : 0x1.0000000000058b9p+0 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 4503599627370497LL : 0x1.0000000000058b9p+0 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 4503599627370497LL : 0x1.0000000000058b92p+0 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 4503599627370497LL : 0x1.0000000000058b90bfae8e8acc84p+0 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 4503599627370497LL : 0x1.0000000000058b90bfae8e8acc84p+0 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 4503599627370497LL : 0x1.0000000000058b90bfae8e8acc84p+0 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 4503599627370497LL : 0x1.0000000000058b90bfae8e8acc85p+0 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 4503599627370497LL : 0x1.0000000000058b90bfae8e8acc8p+0 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 4503599627370497LL : 0x1.0000000000058b90bfae8e8acc8p+0 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 4503599627370497LL : 0x1.0000000000058b90bfae8e8acc8p+0 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 4503599627370497LL : 0x1.0000000000058b90bfae8e8acdp+0 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 4503599627370497LL : 0x1.00000000002c5p+0 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 4503599627370497LL : 0x1.00000000002c6p+0 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 4503599627370497LL : 0x1.00000000002c5p+0 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 4503599627370497LL : 0x1.00000000002c6p+0 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 4503599627370497LL : 0x1.00000000002c5c84p+0 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 4503599627370497LL : 0x1.00000000002c5c86p+0 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 4503599627370497LL : 0x1.00000000002c5c84p+0 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 4503599627370497LL : 0x1.00000000002c5c86p+0 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 4503599627370497LL : 0x1.00000000002c5c84p+0 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 4503599627370497LL : 0x1.00000000002c5c86p+0 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 4503599627370497LL : 0x1.00000000002c5c84p+0 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 4503599627370497LL : 0x1.00000000002c5c86p+0 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 4503599627370497LL : 0x1.00000000002c5c85fdf477b39c6ap+0 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 4503599627370497LL : 0x1.00000000002c5c85fdf477b39c6ap+0 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 4503599627370497LL : 0x1.00000000002c5c85fdf477b39c6ap+0 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 4503599627370497LL : 0x1.00000000002c5c85fdf477b39c6bp+0 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 4503599627370497LL : 0x1.00000000002c5c85fdf477b39cp+0 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 4503599627370497LL : 0x1.00000000002c5c85fdf477b39c8p+0 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 4503599627370497LL : 0x1.00000000002c5c85fdf477b39cp+0 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 4503599627370497LL : 0x1.00000000002c5c85fdf477b39c8p+0 : inexact-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 4503599627370497LL : 0x1.0000000002c5c85ep+0 : inexact-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 4503599627370497LL : 0x1.0000000002c5c86p+0 : inexact-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 4503599627370497LL : 0x1.0000000002c5c85ep+0 : inexact-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 4503599627370497LL : 0x1.0000000002c5c86p+0 : inexact-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 4503599627370497LL : 0x1.0000000002c5c85ep+0 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 4503599627370497LL : 0x1.0000000002c5c86p+0 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 4503599627370497LL : 0x1.0000000002c5c85ep+0 : inexact-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 4503599627370497LL : 0x1.0000000002c5c86p+0 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 4503599627370497LL : 0x1.0000000002c5c85fdf4b15b21291p+0 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 4503599627370497LL : 0x1.0000000002c5c85fdf4b15b21292p+0 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 4503599627370497LL : 0x1.0000000002c5c85fdf4b15b21291p+0 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 4503599627370497LL : 0x1.0000000002c5c85fdf4b15b21292p+0 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 4503599627370497LL : 0x1.0000000002c5c85fdf4b15b21291p+0 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 4503599627370497LL : 0x1.0000000002c5c85fdf4b15b21292p+0 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 4503599627370497LL : 0x1.0000000002c5c85fdf4b15b21291p+0 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 4503599627370497LL : 0x1.0000000002c5c85fdf4b15b21292p+0 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 4503599627370497LL : 0x1.00000000002c5c85fdf477b39caap+0 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 4503599627370497LL : 0x1.00000000002c5c85fdf477b39caap+0 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 4503599627370497LL : 0x1.00000000002c5c85fdf477b39caap+0 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 4503599627370497LL : 0x1.00000000002c5c85fdf477b39cabp+0 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 4503599627370497LL : 0x1.00000000002c5c85fdf477b39c8p+0 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 4503599627370497LL : 0x1.00000000002c5c85fdf477b39c8p+0 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 4503599627370497LL : 0x1.00000000002c5c85fdf477b39c8p+0 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 4503599627370497LL : 0x1.00000000002c5c85fdf477b39dp+0 : inexact-ok
+rootn max 0x7fffffffffffffff
+= rootn downward binary32 0xf.fffffp+124 9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 9223372036854775807LL : 0x1.000002p+0 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 9223372036854775807LL : 0x1.0000000000001p+0 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 9223372036854775807LL : 0x1.00000000000000bp+0 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 9223372036854775807LL : 0x1.00000000000000b2p+0 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 9223372036854775807LL : 0x1.00000000000000bp+0 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 9223372036854775807LL : 0x1.00000000000000b2p+0 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 9223372036854775807LL : 0x1.00000000000000bp+0 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 9223372036854775807LL : 0x1.00000000000000b2p+0 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 9223372036854775807LL : 0x1.00000000000000bp+0 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 9223372036854775807LL : 0x1.00000000000000b2p+0 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 9223372036854775807LL : 0x1.00000000000000b17217f5d1cf78p+0 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 9223372036854775807LL : 0x1.00000000000000b17217f5d1cf79p+0 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 9223372036854775807LL : 0x1.00000000000000b17217f5d1cf78p+0 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 9223372036854775807LL : 0x1.00000000000000b17217f5d1cf79p+0 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 9223372036854775807LL : 0x1.00000000000000b17217f5d1cfp+0 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 9223372036854775807LL : 0x1.00000000000000b17217f5d1cf8p+0 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 9223372036854775807LL : 0x1.00000000000000b17217f5d1cfp+0 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 9223372036854775807LL : 0x1.00000000000000b17217f5d1cf8p+0 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0x1.0000000000001p+0 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0x1.000000000000058ap+0 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0x1.000000000000058cp+0 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0x1.000000000000058ap+0 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0x1.000000000000058cp+0 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0x1.000000000000058ap+0 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0x1.000000000000058cp+0 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0x1.000000000000058ap+0 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0x1.000000000000058cp+0 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0x1.000000000000058b90bfbe8e7bdcp+0 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0x1.000000000000058b90bfbe8e7bddp+0 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0x1.000000000000058b90bfbe8e7bdcp+0 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0x1.000000000000058b90bfbe8e7bddp+0 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0x1.000000000000058b90bfbe8e7b8p+0 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0x1.000000000000058b90bfbe8e7cp+0 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0x1.000000000000058b90bfbe8e7b8p+0 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 9223372036854775807LL : 0x1.000000000000058b90bfbe8e7cp+0 : inexact-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 9223372036854775807LL : 0x1.00000000000058b8p+0 : inexact-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 9223372036854775807LL : 0x1.00000000000058bap+0 : inexact-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 9223372036854775807LL : 0x1.00000000000058b8p+0 : inexact-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 9223372036854775807LL : 0x1.00000000000058bap+0 : inexact-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 9223372036854775807LL : 0x1.00000000000058b8p+0 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 9223372036854775807LL : 0x1.00000000000058bap+0 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 9223372036854775807LL : 0x1.00000000000058b8p+0 : inexact-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 9223372036854775807LL : 0x1.00000000000058bap+0 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 9223372036854775807LL : 0x1.00000000000058b90bfbe8e7cc36p+0 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 9223372036854775807LL : 0x1.00000000000058b90bfbe8e7cc36p+0 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 9223372036854775807LL : 0x1.00000000000058b90bfbe8e7cc36p+0 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 9223372036854775807LL : 0x1.00000000000058b90bfbe8e7cc37p+0 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 9223372036854775807LL : 0x1.00000000000058b90bfbe8e7cc36p+0 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 9223372036854775807LL : 0x1.00000000000058b90bfbe8e7cc36p+0 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 9223372036854775807LL : 0x1.00000000000058b90bfbe8e7cc36p+0 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 9223372036854775807LL : 0x1.00000000000058b90bfbe8e7cc37p+0 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 9223372036854775807LL : 0x1.000000000000058b90bfbe8e7bdcp+0 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 9223372036854775807LL : 0x1.000000000000058b90bfbe8e7bddp+0 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 9223372036854775807LL : 0x1.000000000000058b90bfbe8e7bdcp+0 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 9223372036854775807LL : 0x1.000000000000058b90bfbe8e7bddp+0 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 9223372036854775807LL : 0x1.000000000000058b90bfbe8e7b8p+0 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 9223372036854775807LL : 0x1.000000000000058b90bfbe8e7cp+0 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 9223372036854775807LL : 0x1.000000000000058b90bfbe8e7b8p+0 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 9223372036854775807LL : 0x1.000000000000058b90bfbe8e7cp+0 : inexact-ok
+rootn -max 1
+= rootn downward binary32 -0xf.fffffp+124 1LL : -0xf.fffffp+124 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 1LL : -0xf.fffffp+124 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 1LL : -0xf.fffffp+124 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 1LL : -0xf.fffffp+124 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 1LL : -0xf.fffffp+124 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 1LL : -0xf.fffffp+124 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 1LL : -0xf.fffffp+124 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 1LL : -0xf.fffffp+124 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 1LL : -0xf.fffffp+124 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 1LL : -0xf.fffffp+124 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 1LL : -0xf.fffffp+124 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 1LL : -0xf.fffffp+124 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 1LL : -0xf.fffffp+124 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 1LL : -0xf.fffffp+124 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 1LL : -0xf.fffffp+124 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 1LL : -0xf.fffffp+124 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 1LL : -0xf.fffffp+124 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 1LL : -0xf.fffffp+124 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 1LL : -0xf.fffffp+124 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 1LL : -0xf.fffffp+124 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 1LL : -0xf.fffffp+124 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 1LL : -0xf.fffffp+124 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 1LL : -0xf.fffffp+124 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 1LL : -0xf.fffffp+124 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 1LL : -0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 1LL : -0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 1LL : -0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 1LL : -0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 1LL : -0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 1LL : -0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 1LL : -0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 1LL : -0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 1LL : -0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 1LL : -0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 1LL : -0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 1LL : -0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 1LL : -0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 1LL : -0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 1LL : -0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 1LL : -0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 1LL : -0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 1LL : -0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 1LL : -0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 1LL : -0xf.ffffffffffff8p+1020 : inexact-ok
+= rootn downward intel96 -0xf.fffffffffffffffp+16380 1LL : -0xf.fffffffffffffffp+16380 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffffffffffffp+16380 1LL : -0xf.fffffffffffffffp+16380 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffffffffffffp+16380 1LL : -0xf.fffffffffffffffp+16380 : inexact-ok
+= rootn upward intel96 -0xf.fffffffffffffffp+16380 1LL : -0xf.fffffffffffffffp+16380 : inexact-ok
+= rootn downward m68k96 -0xf.fffffffffffffffp+16380 1LL : -0xf.fffffffffffffffp+16380 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffffffffffffp+16380 1LL : -0xf.fffffffffffffffp+16380 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffffffffffffp+16380 1LL : -0xf.fffffffffffffffp+16380 : inexact-ok
+= rootn upward m68k96 -0xf.fffffffffffffffp+16380 1LL : -0xf.fffffffffffffffp+16380 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffp+16380 1LL : -0xf.fffffffffffffffp+16380 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffp+16380 1LL : -0xf.fffffffffffffffp+16380 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffp+16380 1LL : -0xf.fffffffffffffffp+16380 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffp+16380 1LL : -0xf.fffffffffffffffp+16380 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 1LL : -0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffffffffffffff8p+16380 1LL : -0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffffffffffffff8p+16380 1LL : -0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 1LL : -0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 1LL : -0xf.ffffffffffffbffffffffffffcp+1020 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 1LL : -0xf.ffffffffffffbffffffffffffcp+1020 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 1LL : -0xf.ffffffffffffbffffffffffffcp+1020 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 1LL : -0xf.ffffffffffffbffffffffffffcp+1020 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 1LL : -0xf.ffffffffffffbffffffffffffcp+1020 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 1LL : -0xf.ffffffffffffbffffffffffffcp+1020 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 1LL : -0xf.ffffffffffffbffffffffffffcp+1020 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 1LL : -0xf.ffffffffffffbffffffffffffcp+1020 : inexact-ok
+rootn -max 3
+= rootn downward binary32 -0xf.fffffp+124 3LL : -0x6.597fa8p+40 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 3LL : -0x6.597fa8p+40 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 3LL : -0x6.597fap+40 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 3LL : -0x6.597fap+40 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 3LL : -0x6.597fa7318656p+40 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 3LL : -0x6.597fa7318656p+40 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 3LL : -0x6.597fa7318655cp+40 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 3LL : -0x6.597fa7318655cp+40 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 3LL : -0x6.597fa7318655fc48p+40 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 3LL : -0x6.597fa7318655fc48p+40 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 3LL : -0x6.597fa7318655fc4p+40 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 3LL : -0x6.597fa7318655fc4p+40 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 3LL : -0x6.597fa7318655fc48p+40 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 3LL : -0x6.597fa7318655fc48p+40 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 3LL : -0x6.597fa7318655fc4p+40 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 3LL : -0x6.597fa7318655fc4p+40 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 3LL : -0x6.597fa7318655fc467e27422a2464p+40 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 3LL : -0x6.597fa7318655fc467e27422a246p+40 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 3LL : -0x6.597fa7318655fc467e27422a246p+40 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 3LL : -0x6.597fa7318655fc467e27422a246p+40 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 3LL : -0x6.597fa7318655fc467e27422a26p+40 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 3LL : -0x6.597fa7318655fc467e27422a24p+40 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 3LL : -0x6.597fa7318655fc467e27422a24p+40 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 3LL : -0x6.597fa7318655fc467e27422a24p+40 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 3LL : -0x2.85145f31ae516p+340 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 3LL : -0x2.85145f31ae516p+340 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 3LL : -0x2.85145f31ae514p+340 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 3LL : -0x2.85145f31ae514p+340 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 3LL : -0x2.85145f31ae51559p+340 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 3LL : -0x2.85145f31ae51558cp+340 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 3LL : -0x2.85145f31ae51558cp+340 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 3LL : -0x2.85145f31ae51558cp+340 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 3LL : -0x2.85145f31ae51559p+340 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 3LL : -0x2.85145f31ae51558cp+340 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 3LL : -0x2.85145f31ae51558cp+340 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 3LL : -0x2.85145f31ae51558cp+340 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 3LL : -0x2.85145f31ae51558c45623f054deep+340 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 3LL : -0x2.85145f31ae51558c45623f054decp+340 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 3LL : -0x2.85145f31ae51558c45623f054decp+340 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 3LL : -0x2.85145f31ae51558c45623f054decp+340 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 3LL : -0x2.85145f31ae51558c45623f054ep+340 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 3LL : -0x2.85145f31ae51558c45623f054ep+340 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 3LL : -0x2.85145f31ae51558c45623f054dp+340 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 3LL : -0x2.85145f31ae51558c45623f054dp+340 : inexact-ok
+= rootn downward intel96 -0xf.fffffffffffffffp+16380 3LL : -0x2.85145f31ae515c44p+5460 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffffffffffffp+16380 3LL : -0x2.85145f31ae515c44p+5460 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffffffffffffp+16380 3LL : -0x2.85145f31ae515c4p+5460 : inexact-ok
+= rootn upward intel96 -0xf.fffffffffffffffp+16380 3LL : -0x2.85145f31ae515c4p+5460 : inexact-ok
+= rootn downward m68k96 -0xf.fffffffffffffffp+16380 3LL : -0x2.85145f31ae515c44p+5460 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffffffffffffp+16380 3LL : -0x2.85145f31ae515c44p+5460 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffffffffffffp+16380 3LL : -0x2.85145f31ae515c4p+5460 : inexact-ok
+= rootn upward m68k96 -0xf.fffffffffffffffp+16380 3LL : -0x2.85145f31ae515c4p+5460 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffp+16380 3LL : -0x2.85145f31ae515c43a4aea3c59786p+5460 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffp+16380 3LL : -0x2.85145f31ae515c43a4aea3c59784p+5460 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffp+16380 3LL : -0x2.85145f31ae515c43a4aea3c59784p+5460 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffp+16380 3LL : -0x2.85145f31ae515c43a4aea3c59784p+5460 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 3LL : -0x2.85145f31ae515c447bb56e2b7c4ap+5460 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffffffffffffff8p+16380 3LL : -0x2.85145f31ae515c447bb56e2b7c4ap+5460 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffffffffffffff8p+16380 3LL : -0x2.85145f31ae515c447bb56e2b7c48p+5460 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 3LL : -0x2.85145f31ae515c447bb56e2b7c48p+5460 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 3LL : -0x2.85145f31ae5158e8608bd69864ecp+340 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 3LL : -0x2.85145f31ae5158e8608bd69864eap+340 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 3LL : -0x2.85145f31ae5158e8608bd69864eap+340 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 3LL : -0x2.85145f31ae5158e8608bd69864eap+340 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 3LL : -0x2.85145f31ae5158e8608bd69865p+340 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 3LL : -0x2.85145f31ae5158e8608bd69865p+340 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 3LL : -0x2.85145f31ae5158e8608bd69864p+340 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 3LL : -0x2.85145f31ae5158e8608bd69864p+340 : inexact-ok
+rootn -max 5
+= rootn downward binary32 -0xf.fffffp+124 5LL : -0x3.080cp+24 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 5LL : -0x3.080cp+24 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 5LL : -0x3.080bfcp+24 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 5LL : -0x3.080bfcp+24 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 5LL : -0x3.080bffdb2031ap+24 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 5LL : -0x3.080bffdb2031ap+24 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 5LL : -0x3.080bffdb20318p+24 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 5LL : -0x3.080bffdb20318p+24 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 5LL : -0x3.080bffdb20319e1cp+24 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 5LL : -0x3.080bffdb20319e18p+24 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 5LL : -0x3.080bffdb20319e18p+24 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 5LL : -0x3.080bffdb20319e18p+24 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 5LL : -0x3.080bffdb20319e1cp+24 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 5LL : -0x3.080bffdb20319e18p+24 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 5LL : -0x3.080bffdb20319e18p+24 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 5LL : -0x3.080bffdb20319e18p+24 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 5LL : -0x3.080bffdb20319e1959d2be79f9fcp+24 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 5LL : -0x3.080bffdb20319e1959d2be79f9fap+24 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 5LL : -0x3.080bffdb20319e1959d2be79f9fap+24 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 5LL : -0x3.080bffdb20319e1959d2be79f9fap+24 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 5LL : -0x3.080bffdb20319e1959d2be79fap+24 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 5LL : -0x3.080bffdb20319e1959d2be79fap+24 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 5LL : -0x3.080bffdb20319e1959d2be79f9p+24 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 5LL : -0x3.080bffdb20319e1959d2be79f9p+24 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 5LL : -0x1.bdb8cdadbe12p+204 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 5LL : -0x1.bdb8cdadbe12p+204 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 5LL : -0x1.bdb8cdadbe11fp+204 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 5LL : -0x1.bdb8cdadbe11fp+204 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 5LL : -0x1.bdb8cdadbe11ff4cp+204 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 5LL : -0x1.bdb8cdadbe11ff4cp+204 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 5LL : -0x1.bdb8cdadbe11ff4ap+204 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 5LL : -0x1.bdb8cdadbe11ff4ap+204 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 5LL : -0x1.bdb8cdadbe11ff4cp+204 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 5LL : -0x1.bdb8cdadbe11ff4cp+204 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 5LL : -0x1.bdb8cdadbe11ff4ap+204 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 5LL : -0x1.bdb8cdadbe11ff4ap+204 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 5LL : -0x1.bdb8cdadbe11ff4bce6db44f2f9ep+204 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 5LL : -0x1.bdb8cdadbe11ff4bce6db44f2f9dp+204 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 5LL : -0x1.bdb8cdadbe11ff4bce6db44f2f9dp+204 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 5LL : -0x1.bdb8cdadbe11ff4bce6db44f2f9dp+204 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 5LL : -0x1.bdb8cdadbe11ff4bce6db44f3p+204 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 5LL : -0x1.bdb8cdadbe11ff4bce6db44f2f8p+204 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 5LL : -0x1.bdb8cdadbe11ff4bce6db44f2f8p+204 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 5LL : -0x1.bdb8cdadbe11ff4bce6db44f2f8p+204 : inexact-ok
+= rootn downward intel96 -0xf.fffffffffffffffp+16380 5LL : -0x1.bdb8cdadbe120216p+3276 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffffffffffffp+16380 5LL : -0x1.bdb8cdadbe120214p+3276 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffffffffffffp+16380 5LL : -0x1.bdb8cdadbe120214p+3276 : inexact-ok
+= rootn upward intel96 -0xf.fffffffffffffffp+16380 5LL : -0x1.bdb8cdadbe120214p+3276 : inexact-ok
+= rootn downward m68k96 -0xf.fffffffffffffffp+16380 5LL : -0x1.bdb8cdadbe120216p+3276 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffffffffffffp+16380 5LL : -0x1.bdb8cdadbe120214p+3276 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffffffffffffp+16380 5LL : -0x1.bdb8cdadbe120214p+3276 : inexact-ok
+= rootn upward m68k96 -0xf.fffffffffffffffp+16380 5LL : -0x1.bdb8cdadbe120214p+3276 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffp+16380 5LL : -0x1.bdb8cdadbe1202149cf83ac2f34p+3276 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffp+16380 5LL : -0x1.bdb8cdadbe1202149cf83ac2f33fp+3276 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffp+16380 5LL : -0x1.bdb8cdadbe1202149cf83ac2f33fp+3276 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffp+16380 5LL : -0x1.bdb8cdadbe1202149cf83ac2f33fp+3276 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 5LL : -0x1.bdb8cdadbe120214f61d30b27faap+3276 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffffffffffffff8p+16380 5LL : -0x1.bdb8cdadbe120214f61d30b27fa9p+3276 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffffffffffffff8p+16380 5LL : -0x1.bdb8cdadbe120214f61d30b27fa9p+3276 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 5LL : -0x1.bdb8cdadbe120214f61d30b27fa9p+3276 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 5LL : -0x1.bdb8cdadbe1200b062457280d79p+204 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 5LL : -0x1.bdb8cdadbe1200b062457280d78fp+204 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 5LL : -0x1.bdb8cdadbe1200b062457280d78fp+204 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 5LL : -0x1.bdb8cdadbe1200b062457280d78fp+204 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 5LL : -0x1.bdb8cdadbe1200b062457280d8p+204 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 5LL : -0x1.bdb8cdadbe1200b062457280d78p+204 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 5LL : -0x1.bdb8cdadbe1200b062457280d78p+204 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 5LL : -0x1.bdb8cdadbe1200b062457280d78p+204 : inexact-ok
+rootn -max 63
+= rootn downward binary32 -0xf.fffffp+124 63LL : -0x4.16c858p+0 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 63LL : -0x4.16c85p+0 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 63LL : -0x4.16c85p+0 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 63LL : -0x4.16c85p+0 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 63LL : -0x4.16c85393ab64cp+0 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 63LL : -0x4.16c85393ab648p+0 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 63LL : -0x4.16c85393ab648p+0 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 63LL : -0x4.16c85393ab648p+0 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 63LL : -0x4.16c85393ab6485dp+0 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 63LL : -0x4.16c85393ab6485dp+0 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 63LL : -0x4.16c85393ab6485c8p+0 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 63LL : -0x4.16c85393ab6485c8p+0 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 63LL : -0x4.16c85393ab6485dp+0 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 63LL : -0x4.16c85393ab6485dp+0 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 63LL : -0x4.16c85393ab6485c8p+0 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 63LL : -0x4.16c85393ab6485c8p+0 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 63LL : -0x4.16c85393ab6485cd0e6edb20df88p+0 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 63LL : -0x4.16c85393ab6485cd0e6edb20df88p+0 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 63LL : -0x4.16c85393ab6485cd0e6edb20df84p+0 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 63LL : -0x4.16c85393ab6485cd0e6edb20df84p+0 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 63LL : -0x4.16c85393ab6485cd0e6edb20ep+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 63LL : -0x4.16c85393ab6485cd0e6edb20ep+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 63LL : -0x4.16c85393ab6485cd0e6edb20dep+0 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 63LL : -0x4.16c85393ab6485cd0e6edb20dep+0 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 63LL : -0x1.31468ab0da7fdp+16 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 63LL : -0x1.31468ab0da7fcp+16 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 63LL : -0x1.31468ab0da7fcp+16 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 63LL : -0x1.31468ab0da7fcp+16 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 63LL : -0x1.31468ab0da7fc486p+16 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 63LL : -0x1.31468ab0da7fc486p+16 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 63LL : -0x1.31468ab0da7fc484p+16 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 63LL : -0x1.31468ab0da7fc484p+16 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 63LL : -0x1.31468ab0da7fc486p+16 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 63LL : -0x1.31468ab0da7fc486p+16 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 63LL : -0x1.31468ab0da7fc484p+16 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 63LL : -0x1.31468ab0da7fc484p+16 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 63LL : -0x1.31468ab0da7fc485afb86c9b9f74p+16 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 63LL : -0x1.31468ab0da7fc485afb86c9b9f73p+16 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 63LL : -0x1.31468ab0da7fc485afb86c9b9f73p+16 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 63LL : -0x1.31468ab0da7fc485afb86c9b9f73p+16 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 63LL : -0x1.31468ab0da7fc485afb86c9b9f8p+16 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 63LL : -0x1.31468ab0da7fc485afb86c9b9f8p+16 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 63LL : -0x1.31468ab0da7fc485afb86c9b9fp+16 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 63LL : -0x1.31468ab0da7fc485afb86c9b9fp+16 : inexact-ok
+= rootn downward intel96 -0xf.fffffffffffffffp+16380 63LL : -0x1.0b849a84550732f2p+260 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffffffffffffp+16380 63LL : -0x1.0b849a84550732fp+260 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffffffffffffp+16380 63LL : -0x1.0b849a84550732fp+260 : inexact-ok
+= rootn upward intel96 -0xf.fffffffffffffffp+16380 63LL : -0x1.0b849a84550732fp+260 : inexact-ok
+= rootn downward m68k96 -0xf.fffffffffffffffp+16380 63LL : -0x1.0b849a84550732f2p+260 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffffffffffffp+16380 63LL : -0x1.0b849a84550732fp+260 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffffffffffffp+16380 63LL : -0x1.0b849a84550732fp+260 : inexact-ok
+= rootn upward m68k96 -0xf.fffffffffffffffp+16380 63LL : -0x1.0b849a84550732fp+260 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffp+16380 63LL : -0x1.0b849a84550732f0f2d4e1ed7126p+260 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffp+16380 63LL : -0x1.0b849a84550732f0f2d4e1ed7125p+260 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffp+16380 63LL : -0x1.0b849a84550732f0f2d4e1ed7125p+260 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffp+16380 63LL : -0x1.0b849a84550732f0f2d4e1ed7125p+260 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 63LL : -0x1.0b849a84550732f0f713f0921509p+260 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffffffffffffff8p+16380 63LL : -0x1.0b849a84550732f0f713f0921509p+260 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffffffffffffff8p+16380 63LL : -0x1.0b849a84550732f0f713f0921508p+260 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 63LL : -0x1.0b849a84550732f0f713f0921508p+260 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 63LL : -0x1.31468ab0da7fc49911a8d95c4a1ap+16 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 63LL : -0x1.31468ab0da7fc49911a8d95c4a19p+16 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 63LL : -0x1.31468ab0da7fc49911a8d95c4a19p+16 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 63LL : -0x1.31468ab0da7fc49911a8d95c4a19p+16 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 63LL : -0x1.31468ab0da7fc49911a8d95c4a8p+16 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 63LL : -0x1.31468ab0da7fc49911a8d95c4ap+16 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 63LL : -0x1.31468ab0da7fc49911a8d95c4ap+16 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 63LL : -0x1.31468ab0da7fc49911a8d95c4ap+16 : inexact-ok
+rootn -max 127
+= rootn downward binary32 -0xf.fffffp+124 127LL : -0x2.02cd54p+0 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 127LL : -0x2.02cd54p+0 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 127LL : -0x2.02cd5p+0 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 127LL : -0x2.02cd5p+0 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 127LL : -0x2.02cd53c63e7e4p+0 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 127LL : -0x2.02cd53c63e7e2p+0 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 127LL : -0x2.02cd53c63e7e2p+0 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 127LL : -0x2.02cd53c63e7e2p+0 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 127LL : -0x2.02cd53c63e7e2cc8p+0 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 127LL : -0x2.02cd53c63e7e2cc8p+0 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 127LL : -0x2.02cd53c63e7e2cc4p+0 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 127LL : -0x2.02cd53c63e7e2cc4p+0 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 127LL : -0x2.02cd53c63e7e2cc8p+0 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 127LL : -0x2.02cd53c63e7e2cc8p+0 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 127LL : -0x2.02cd53c63e7e2cc4p+0 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 127LL : -0x2.02cd53c63e7e2cc4p+0 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 127LL : -0x2.02cd53c63e7e2cc746bd9c07db92p+0 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 127LL : -0x2.02cd53c63e7e2cc746bd9c07db9p+0 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 127LL : -0x2.02cd53c63e7e2cc746bd9c07db9p+0 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 127LL : -0x2.02cd53c63e7e2cc746bd9c07db9p+0 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 127LL : -0x2.02cd53c63e7e2cc746bd9c07dcp+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 127LL : -0x2.02cd53c63e7e2cc746bd9c07dcp+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 127LL : -0x2.02cd53c63e7e2cc746bd9c07dbp+0 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 127LL : -0x2.02cd53c63e7e2cc746bd9c07dbp+0 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 127LL : -0x1.0b6ce02e2f818p+8 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 127LL : -0x1.0b6ce02e2f818p+8 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 127LL : -0x1.0b6ce02e2f817p+8 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 127LL : -0x1.0b6ce02e2f817p+8 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 127LL : -0x1.0b6ce02e2f817c66p+8 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 127LL : -0x1.0b6ce02e2f817c64p+8 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 127LL : -0x1.0b6ce02e2f817c64p+8 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 127LL : -0x1.0b6ce02e2f817c64p+8 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 127LL : -0x1.0b6ce02e2f817c66p+8 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 127LL : -0x1.0b6ce02e2f817c64p+8 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 127LL : -0x1.0b6ce02e2f817c64p+8 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 127LL : -0x1.0b6ce02e2f817c64p+8 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 127LL : -0x1.0b6ce02e2f817c648b4982a5ff98p+8 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 127LL : -0x1.0b6ce02e2f817c648b4982a5ff98p+8 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 127LL : -0x1.0b6ce02e2f817c648b4982a5ff97p+8 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 127LL : -0x1.0b6ce02e2f817c648b4982a5ff97p+8 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 127LL : -0x1.0b6ce02e2f817c648b4982a6p+8 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 127LL : -0x1.0b6ce02e2f817c648b4982a5ff8p+8 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 127LL : -0x1.0b6ce02e2f817c648b4982a5ff8p+8 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 127LL : -0x1.0b6ce02e2f817c648b4982a5ff8p+8 : inexact-ok
+= rootn downward intel96 -0xf.fffffffffffffffp+16380 127LL : -0x2.02cd53ca4c344288p+128 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffffffffffffp+16380 127LL : -0x2.02cd53ca4c344288p+128 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffffffffffffp+16380 127LL : -0x2.02cd53ca4c344284p+128 : inexact-ok
+= rootn upward intel96 -0xf.fffffffffffffffp+16380 127LL : -0x2.02cd53ca4c344284p+128 : inexact-ok
+= rootn downward m68k96 -0xf.fffffffffffffffp+16380 127LL : -0x2.02cd53ca4c344288p+128 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffffffffffffp+16380 127LL : -0x2.02cd53ca4c344288p+128 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffffffffffffp+16380 127LL : -0x2.02cd53ca4c344284p+128 : inexact-ok
+= rootn upward m68k96 -0xf.fffffffffffffffp+16380 127LL : -0x2.02cd53ca4c344284p+128 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffp+16380 127LL : -0x2.02cd53ca4c3442861862daa26a0cp+128 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffp+16380 127LL : -0x2.02cd53ca4c3442861862daa26a0cp+128 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffp+16380 127LL : -0x2.02cd53ca4c3442861862daa26a0ap+128 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffp+16380 127LL : -0x2.02cd53ca4c3442861862daa26a0ap+128 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 127LL : -0x2.02cd53ca4c3442861c7090b6261ep+128 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffffffffffffff8p+16380 127LL : -0x2.02cd53ca4c3442861c7090b6261cp+128 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffffffffffffff8p+16380 127LL : -0x2.02cd53ca4c3442861c7090b6261cp+128 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 127LL : -0x2.02cd53ca4c3442861c7090b6261cp+128 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 127LL : -0x1.0b6ce02e2f817c6cf78903186065p+8 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 127LL : -0x1.0b6ce02e2f817c6cf78903186065p+8 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 127LL : -0x1.0b6ce02e2f817c6cf78903186064p+8 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 127LL : -0x1.0b6ce02e2f817c6cf78903186064p+8 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 127LL : -0x1.0b6ce02e2f817c6cf7890318608p+8 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 127LL : -0x1.0b6ce02e2f817c6cf7890318608p+8 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 127LL : -0x1.0b6ce02e2f817c6cf78903186p+8 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 127LL : -0x1.0b6ce02e2f817c6cf78903186p+8 : inexact-ok
+rootn -max 255
+= rootn downward binary32 -0xf.fffffp+124 255LL : -0x1.6a87f4p+0 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 255LL : -0x1.6a87f4p+0 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 255LL : -0x1.6a87f2p+0 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 255LL : -0x1.6a87f2p+0 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 255LL : -0x1.6a87f363585ap+0 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 255LL : -0x1.6a87f363585ap+0 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 255LL : -0x1.6a87f3635859fp+0 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 255LL : -0x1.6a87f3635859fp+0 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 255LL : -0x1.6a87f3635859fffcp+0 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 255LL : -0x1.6a87f3635859fffap+0 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 255LL : -0x1.6a87f3635859fffap+0 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 255LL : -0x1.6a87f3635859fffap+0 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 255LL : -0x1.6a87f3635859fffcp+0 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 255LL : -0x1.6a87f3635859fffap+0 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 255LL : -0x1.6a87f3635859fffap+0 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 255LL : -0x1.6a87f3635859fffap+0 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 255LL : -0x1.6a87f3635859fffa62107ae62e9p+0 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 255LL : -0x1.6a87f3635859fffa62107ae62e9p+0 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 255LL : -0x1.6a87f3635859fffa62107ae62e8fp+0 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 255LL : -0x1.6a87f3635859fffa62107ae62e8fp+0 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 255LL : -0x1.6a87f3635859fffa62107ae62fp+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 255LL : -0x1.6a87f3635859fffa62107ae62e8p+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 255LL : -0x1.6a87f3635859fffa62107ae62e8p+0 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 255LL : -0x1.6a87f3635859fffa62107ae62e8p+0 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 255LL : -0x1.02cc743eb740ep+4 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 255LL : -0x1.02cc743eb740ep+4 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 255LL : -0x1.02cc743eb740dp+4 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 255LL : -0x1.02cc743eb740dp+4 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 255LL : -0x1.02cc743eb740da2ap+4 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 255LL : -0x1.02cc743eb740da28p+4 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 255LL : -0x1.02cc743eb740da28p+4 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 255LL : -0x1.02cc743eb740da28p+4 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 255LL : -0x1.02cc743eb740da2ap+4 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 255LL : -0x1.02cc743eb740da28p+4 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 255LL : -0x1.02cc743eb740da28p+4 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 255LL : -0x1.02cc743eb740da28p+4 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 255LL : -0x1.02cc743eb740da28817589885542p+4 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 255LL : -0x1.02cc743eb740da28817589885542p+4 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 255LL : -0x1.02cc743eb740da28817589885541p+4 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 255LL : -0x1.02cc743eb740da28817589885541p+4 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 255LL : -0x1.02cc743eb740da2881758988558p+4 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 255LL : -0x1.02cc743eb740da2881758988558p+4 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 255LL : -0x1.02cc743eb740da288175898855p+4 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 255LL : -0x1.02cc743eb740da288175898855p+4 : inexact-ok
+= rootn downward intel96 -0xf.fffffffffffffffp+16380 255LL : -0x1.30a4db7717664b94p+64 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffffffffffffp+16380 255LL : -0x1.30a4db7717664b92p+64 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffffffffffffp+16380 255LL : -0x1.30a4db7717664b92p+64 : inexact-ok
+= rootn upward intel96 -0xf.fffffffffffffffp+16380 255LL : -0x1.30a4db7717664b92p+64 : inexact-ok
+= rootn downward m68k96 -0xf.fffffffffffffffp+16380 255LL : -0x1.30a4db7717664b94p+64 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffffffffffffp+16380 255LL : -0x1.30a4db7717664b92p+64 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffffffffffffp+16380 255LL : -0x1.30a4db7717664b92p+64 : inexact-ok
+= rootn upward m68k96 -0xf.fffffffffffffffp+16380 255LL : -0x1.30a4db7717664b92p+64 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffp+16380 255LL : -0x1.30a4db7717664b9224a90f2d0544p+64 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffp+16380 255LL : -0x1.30a4db7717664b9224a90f2d0543p+64 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffp+16380 255LL : -0x1.30a4db7717664b9224a90f2d0543p+64 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffp+16380 255LL : -0x1.30a4db7717664b9224a90f2d0543p+64 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 255LL : -0x1.30a4db7717664b9225dae5df2e85p+64 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffffffffffffff8p+16380 255LL : -0x1.30a4db7717664b9225dae5df2e84p+64 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffffffffffffff8p+16380 255LL : -0x1.30a4db7717664b9225dae5df2e84p+64 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 255LL : -0x1.30a4db7717664b9225dae5df2e84p+64 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 255LL : -0x1.02cc743eb740da2c90b69b953f3p+4 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 255LL : -0x1.02cc743eb740da2c90b69b953f2fp+4 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 255LL : -0x1.02cc743eb740da2c90b69b953f2fp+4 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 255LL : -0x1.02cc743eb740da2c90b69b953f2fp+4 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 255LL : -0x1.02cc743eb740da2c90b69b953f8p+4 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 255LL : -0x1.02cc743eb740da2c90b69b953fp+4 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 255LL : -0x1.02cc743eb740da2c90b69b953fp+4 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 255LL : -0x1.02cc743eb740da2c90b69b953fp+4 : inexact-ok
+rootn -max 511
+= rootn downward binary32 -0xf.fffffp+124 511LL : -0x1.308a5p+0 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 511LL : -0x1.308a5p+0 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 511LL : -0x1.308a4ep+0 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 511LL : -0x1.308a4ep+0 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 511LL : -0x1.308a4fa03a451p+0 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 511LL : -0x1.308a4fa03a45p+0 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 511LL : -0x1.308a4fa03a45p+0 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 511LL : -0x1.308a4fa03a45p+0 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 511LL : -0x1.308a4fa03a450566p+0 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 511LL : -0x1.308a4fa03a450564p+0 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 511LL : -0x1.308a4fa03a450564p+0 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 511LL : -0x1.308a4fa03a450564p+0 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 511LL : -0x1.308a4fa03a450566p+0 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 511LL : -0x1.308a4fa03a450564p+0 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 511LL : -0x1.308a4fa03a450564p+0 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 511LL : -0x1.308a4fa03a450564p+0 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 511LL : -0x1.308a4fa03a4505649afebb6a2c27p+0 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 511LL : -0x1.308a4fa03a4505649afebb6a2c26p+0 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 511LL : -0x1.308a4fa03a4505649afebb6a2c26p+0 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 511LL : -0x1.308a4fa03a4505649afebb6a2c26p+0 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 511LL : -0x1.308a4fa03a4505649afebb6a2c8p+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 511LL : -0x1.308a4fa03a4505649afebb6a2cp+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 511LL : -0x1.308a4fa03a4505649afebb6a2cp+0 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 511LL : -0x1.308a4fa03a4505649afebb6a2cp+0 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 511LL : -0x4.02c82323b6b1p+0 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 511LL : -0x4.02c82323b6b1p+0 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 511LL : -0x4.02c82323b6b0cp+0 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 511LL : -0x4.02c82323b6b0cp+0 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 511LL : -0x4.02c82323b6b0fd7p+0 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 511LL : -0x4.02c82323b6b0fd7p+0 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 511LL : -0x4.02c82323b6b0fd68p+0 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 511LL : -0x4.02c82323b6b0fd68p+0 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 511LL : -0x4.02c82323b6b0fd7p+0 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 511LL : -0x4.02c82323b6b0fd7p+0 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 511LL : -0x4.02c82323b6b0fd68p+0 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 511LL : -0x4.02c82323b6b0fd68p+0 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 511LL : -0x4.02c82323b6b0fd6cf26badddbc8p+0 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 511LL : -0x4.02c82323b6b0fd6cf26badddbc8p+0 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 511LL : -0x4.02c82323b6b0fd6cf26badddbc7cp+0 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 511LL : -0x4.02c82323b6b0fd6cf26badddbc7cp+0 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 511LL : -0x4.02c82323b6b0fd6cf26badddbep+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 511LL : -0x4.02c82323b6b0fd6cf26badddbcp+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 511LL : -0x4.02c82323b6b0fd6cf26badddbcp+0 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 511LL : -0x4.02c82323b6b0fd6cf26badddbcp+0 : inexact-ok
+= rootn downward intel96 -0xf.fffffffffffffffp+16380 511LL : -0x1.0b5b543099f35ff4p+32 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffffffffffffp+16380 511LL : -0x1.0b5b543099f35ff4p+32 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffffffffffffp+16380 511LL : -0x1.0b5b543099f35ff2p+32 : inexact-ok
+= rootn upward intel96 -0xf.fffffffffffffffp+16380 511LL : -0x1.0b5b543099f35ff2p+32 : inexact-ok
+= rootn downward m68k96 -0xf.fffffffffffffffp+16380 511LL : -0x1.0b5b543099f35ff4p+32 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffffffffffffp+16380 511LL : -0x1.0b5b543099f35ff4p+32 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffffffffffffp+16380 511LL : -0x1.0b5b543099f35ff2p+32 : inexact-ok
+= rootn upward m68k96 -0xf.fffffffffffffffp+16380 511LL : -0x1.0b5b543099f35ff2p+32 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffp+16380 511LL : -0x1.0b5b543099f35ff320e74e770929p+32 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffp+16380 511LL : -0x1.0b5b543099f35ff320e74e770928p+32 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffp+16380 511LL : -0x1.0b5b543099f35ff320e74e770928p+32 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffp+16380 511LL : -0x1.0b5b543099f35ff320e74e770928p+32 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 511LL : -0x1.0b5b543099f35ff3216d3f1972aap+32 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffffffffffffff8p+16380 511LL : -0x1.0b5b543099f35ff3216d3f1972aap+32 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffffffffffffff8p+16380 511LL : -0x1.0b5b543099f35ff3216d3f1972a9p+32 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 511LL : -0x1.0b5b543099f35ff3216d3f1972a9p+32 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 511LL : -0x4.02c82323b6b0fd74fc00bead91ccp+0 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 511LL : -0x4.02c82323b6b0fd74fc00bead91ccp+0 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 511LL : -0x4.02c82323b6b0fd74fc00bead91c8p+0 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 511LL : -0x4.02c82323b6b0fd74fc00bead91c8p+0 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 511LL : -0x4.02c82323b6b0fd74fc00bead92p+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 511LL : -0x4.02c82323b6b0fd74fc00bead92p+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 511LL : -0x4.02c82323b6b0fd74fc00bead9p+0 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 511LL : -0x4.02c82323b6b0fd74fc00bead9p+0 : inexact-ok
+rootn -max 1023
+= rootn downward binary32 -0xf.fffffp+124 1023LL : -0x1.173192p+0 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 1023LL : -0x1.173192p+0 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 1023LL : -0x1.17319p+0 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 1023LL : -0x1.17319p+0 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 1023LL : -0x1.17319167ccbb7p+0 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 1023LL : -0x1.17319167ccbb7p+0 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 1023LL : -0x1.17319167ccbb6p+0 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 1023LL : -0x1.17319167ccbb6p+0 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 1023LL : -0x1.17319167ccbb6f06p+0 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 1023LL : -0x1.17319167ccbb6f06p+0 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 1023LL : -0x1.17319167ccbb6f04p+0 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 1023LL : -0x1.17319167ccbb6f04p+0 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 1023LL : -0x1.17319167ccbb6f06p+0 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 1023LL : -0x1.17319167ccbb6f06p+0 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 1023LL : -0x1.17319167ccbb6f04p+0 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 1023LL : -0x1.17319167ccbb6f04p+0 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 1023LL : -0x1.17319167ccbb6f05999d9c57ed18p+0 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 1023LL : -0x1.17319167ccbb6f05999d9c57ed17p+0 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 1023LL : -0x1.17319167ccbb6f05999d9c57ed17p+0 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 1023LL : -0x1.17319167ccbb6f05999d9c57ed17p+0 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 1023LL : -0x1.17319167ccbb6f05999d9c57ed8p+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 1023LL : -0x1.17319167ccbb6f05999d9c57edp+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 1023LL : -0x1.17319167ccbb6f05999d9c57edp+0 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 1023LL : -0x1.17319167ccbb6f05999d9c57edp+0 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 1023LL : -0x2.0058d6f406cb8p+0 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 1023LL : -0x2.0058d6f406cb8p+0 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 1023LL : -0x2.0058d6f406cb6p+0 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 1023LL : -0x2.0058d6f406cb6p+0 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 1023LL : -0x2.0058d6f406cb785p+0 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 1023LL : -0x2.0058d6f406cb785p+0 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 1023LL : -0x2.0058d6f406cb784cp+0 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 1023LL : -0x2.0058d6f406cb784cp+0 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 1023LL : -0x2.0058d6f406cb785p+0 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 1023LL : -0x2.0058d6f406cb785p+0 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 1023LL : -0x2.0058d6f406cb784cp+0 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 1023LL : -0x2.0058d6f406cb784cp+0 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 1023LL : -0x2.0058d6f406cb784f1eb6f71fb032p+0 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 1023LL : -0x2.0058d6f406cb784f1eb6f71fb032p+0 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 1023LL : -0x2.0058d6f406cb784f1eb6f71fb03p+0 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 1023LL : -0x2.0058d6f406cb784f1eb6f71fb03p+0 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 1023LL : -0x2.0058d6f406cb784f1eb6f71fb1p+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 1023LL : -0x2.0058d6f406cb784f1eb6f71fbp+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 1023LL : -0x2.0058d6f406cb784f1eb6f71fbp+0 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 1023LL : -0x2.0058d6f406cb784f1eb6f71fbp+0 : inexact-ok
+= rootn downward intel96 -0xf.fffffffffffffffp+16380 1023LL : -0x1.02ca57755a11c3b6p+16 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffffffffffffp+16380 1023LL : -0x1.02ca57755a11c3b6p+16 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffffffffffffp+16380 1023LL : -0x1.02ca57755a11c3b4p+16 : inexact-ok
+= rootn upward intel96 -0xf.fffffffffffffffp+16380 1023LL : -0x1.02ca57755a11c3b4p+16 : inexact-ok
+= rootn downward m68k96 -0xf.fffffffffffffffp+16380 1023LL : -0x1.02ca57755a11c3b6p+16 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffffffffffffp+16380 1023LL : -0x1.02ca57755a11c3b6p+16 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffffffffffffp+16380 1023LL : -0x1.02ca57755a11c3b4p+16 : inexact-ok
+= rootn upward m68k96 -0xf.fffffffffffffffp+16380 1023LL : -0x1.02ca57755a11c3b4p+16 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffp+16380 1023LL : -0x1.02ca57755a11c3b5166b261cf79bp+16 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffp+16380 1023LL : -0x1.02ca57755a11c3b5166b261cf79bp+16 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffp+16380 1023LL : -0x1.02ca57755a11c3b5166b261cf79ap+16 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffp+16380 1023LL : -0x1.02ca57755a11c3b5166b261cf79ap+16 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 1023LL : -0x1.02ca57755a11c3b516abe8e38695p+16 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffffffffffffff8p+16380 1023LL : -0x1.02ca57755a11c3b516abe8e38695p+16 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffffffffffffff8p+16380 1023LL : -0x1.02ca57755a11c3b516abe8e38694p+16 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 1023LL : -0x1.02ca57755a11c3b516abe8e38694p+16 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 1023LL : -0x2.0058d6f406cb78511f90045704d4p+0 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 1023LL : -0x2.0058d6f406cb78511f90045704d2p+0 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 1023LL : -0x2.0058d6f406cb78511f90045704d2p+0 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 1023LL : -0x2.0058d6f406cb78511f90045704d2p+0 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 1023LL : -0x2.0058d6f406cb78511f90045705p+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 1023LL : -0x2.0058d6f406cb78511f90045705p+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 1023LL : -0x2.0058d6f406cb78511f90045704p+0 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 1023LL : -0x2.0058d6f406cb78511f90045704p+0 : inexact-ok
+rootn -max 16383
+= rootn downward binary32 -0xf.fffffp+124 16383LL : -0x1.0163e2p+0 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 16383LL : -0x1.0163ep+0 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 16383LL : -0x1.0163ep+0 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 16383LL : -0x1.0163ep+0 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 16383LL : -0x1.0163e0330b907p+0 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 16383LL : -0x1.0163e0330b906p+0 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 16383LL : -0x1.0163e0330b906p+0 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 16383LL : -0x1.0163e0330b906p+0 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 16383LL : -0x1.0163e0330b90658ep+0 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 16383LL : -0x1.0163e0330b90658ep+0 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 16383LL : -0x1.0163e0330b90658cp+0 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 16383LL : -0x1.0163e0330b90658cp+0 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 16383LL : -0x1.0163e0330b90658ep+0 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 16383LL : -0x1.0163e0330b90658ep+0 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 16383LL : -0x1.0163e0330b90658cp+0 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 16383LL : -0x1.0163e0330b90658cp+0 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 16383LL : -0x1.0163e0330b90658d599e663f0fp+0 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 16383LL : -0x1.0163e0330b90658d599e663f0fp+0 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 16383LL : -0x1.0163e0330b90658d599e663f0effp+0 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 16383LL : -0x1.0163e0330b90658d599e663f0effp+0 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 16383LL : -0x1.0163e0330b90658d599e663f0fp+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 16383LL : -0x1.0163e0330b90658d599e663f0fp+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 16383LL : -0x1.0163e0330b90658d599e663f0e8p+0 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 16383LL : -0x1.0163e0330b90658d599e663f0e8p+0 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 16383LL : -0x1.0b55b523a7b99p+0 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 16383LL : -0x1.0b55b523a7b99p+0 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 16383LL : -0x1.0b55b523a7b98p+0 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 16383LL : -0x1.0b55b523a7b98p+0 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 16383LL : -0x1.0b55b523a7b98de2p+0 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 16383LL : -0x1.0b55b523a7b98dep+0 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 16383LL : -0x1.0b55b523a7b98dep+0 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 16383LL : -0x1.0b55b523a7b98dep+0 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 16383LL : -0x1.0b55b523a7b98de2p+0 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 16383LL : -0x1.0b55b523a7b98dep+0 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 16383LL : -0x1.0b55b523a7b98dep+0 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 16383LL : -0x1.0b55b523a7b98dep+0 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 16383LL : -0x1.0b55b523a7b98de079e20a31647ap+0 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 16383LL : -0x1.0b55b523a7b98de079e20a316479p+0 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 16383LL : -0x1.0b55b523a7b98de079e20a316479p+0 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 16383LL : -0x1.0b55b523a7b98de079e20a316479p+0 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 16383LL : -0x1.0b55b523a7b98de079e20a31648p+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 16383LL : -0x1.0b55b523a7b98de079e20a31648p+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 16383LL : -0x1.0b55b523a7b98de079e20a3164p+0 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 16383LL : -0x1.0b55b523a7b98de079e20a3164p+0 : inexact-ok
+= rootn downward intel96 -0xf.fffffffffffffffp+16380 16383LL : -0x2.00058bae9e8e63dp+0 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffffffffffffp+16380 16383LL : -0x2.00058bae9e8e63dp+0 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffffffffffffp+16380 16383LL : -0x2.00058bae9e8e63ccp+0 : inexact-ok
+= rootn upward intel96 -0xf.fffffffffffffffp+16380 16383LL : -0x2.00058bae9e8e63ccp+0 : inexact-ok
+= rootn downward m68k96 -0xf.fffffffffffffffp+16380 16383LL : -0x2.00058bae9e8e63dp+0 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffffffffffffp+16380 16383LL : -0x2.00058bae9e8e63dp+0 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffffffffffffp+16380 16383LL : -0x2.00058bae9e8e63ccp+0 : inexact-ok
+= rootn upward m68k96 -0xf.fffffffffffffffp+16380 16383LL : -0x2.00058bae9e8e63ccp+0 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffp+16380 16383LL : -0x2.00058bae9e8e63cf086d74c78c1ep+0 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffp+16380 16383LL : -0x2.00058bae9e8e63cf086d74c78c1ep+0 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffp+16380 16383LL : -0x2.00058bae9e8e63cf086d74c78c1cp+0 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffp+16380 16383LL : -0x2.00058bae9e8e63cf086d74c78c1cp+0 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 16383LL : -0x2.00058bae9e8e63cf087574fdbbb2p+0 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffffffffffffff8p+16380 16383LL : -0x2.00058bae9e8e63cf087574fdbbb2p+0 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffffffffffffff8p+16380 16383LL : -0x2.00058bae9e8e63cf087574fdbbbp+0 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 16383LL : -0x2.00058bae9e8e63cf087574fdbbbp+0 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 16383LL : -0x1.0b55b523a7b98de08a97a85a1798p+0 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 16383LL : -0x1.0b55b523a7b98de08a97a85a1798p+0 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 16383LL : -0x1.0b55b523a7b98de08a97a85a1797p+0 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 16383LL : -0x1.0b55b523a7b98de08a97a85a1797p+0 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 16383LL : -0x1.0b55b523a7b98de08a97a85a18p+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 16383LL : -0x1.0b55b523a7b98de08a97a85a178p+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 16383LL : -0x1.0b55b523a7b98de08a97a85a178p+0 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 16383LL : -0x1.0b55b523a7b98de08a97a85a178p+0 : inexact-ok
+rootn -max 0x1000001
+= rootn downward binary32 -0xf.fffffp+124 16777217LL : -0x1.00005ap+0 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 16777217LL : -0x1.000058p+0 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 16777217LL : -0x1.000058p+0 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 16777217LL : -0x1.000058p+0 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 16777217LL : -0x1.000058b91b022p+0 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 16777217LL : -0x1.000058b91b021p+0 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 16777217LL : -0x1.000058b91b021p+0 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 16777217LL : -0x1.000058b91b021p+0 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 16777217LL : -0x1.000058b91b021084p+0 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 16777217LL : -0x1.000058b91b021084p+0 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 16777217LL : -0x1.000058b91b021082p+0 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 16777217LL : -0x1.000058b91b021082p+0 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 16777217LL : -0x1.000058b91b021084p+0 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 16777217LL : -0x1.000058b91b021084p+0 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 16777217LL : -0x1.000058b91b021082p+0 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 16777217LL : -0x1.000058b91b021082p+0 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 16777217LL : -0x1.000058b91b02108373c16583a476p+0 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 16777217LL : -0x1.000058b91b02108373c16583a475p+0 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 16777217LL : -0x1.000058b91b02108373c16583a475p+0 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 16777217LL : -0x1.000058b91b02108373c16583a475p+0 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 16777217LL : -0x1.000058b91b02108373c16583a48p+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 16777217LL : -0x1.000058b91b02108373c16583a48p+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 16777217LL : -0x1.000058b91b02108373c16583a4p+0 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 16777217LL : -0x1.000058b91b02108373c16583a4p+0 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 16777217LL : -0x1.0002c5cc3514dp+0 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 16777217LL : -0x1.0002c5cc3514cp+0 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 16777217LL : -0x1.0002c5cc3514cp+0 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 16777217LL : -0x1.0002c5cc3514cp+0 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 16777217LL : -0x1.0002c5cc3514c486p+0 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 16777217LL : -0x1.0002c5cc3514c484p+0 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 16777217LL : -0x1.0002c5cc3514c484p+0 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 16777217LL : -0x1.0002c5cc3514c484p+0 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 16777217LL : -0x1.0002c5cc3514c486p+0 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 16777217LL : -0x1.0002c5cc3514c484p+0 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 16777217LL : -0x1.0002c5cc3514c484p+0 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 16777217LL : -0x1.0002c5cc3514c484p+0 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 16777217LL : -0x1.0002c5cc3514c484bcf4f572549fp+0 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 16777217LL : -0x1.0002c5cc3514c484bcf4f572549fp+0 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 16777217LL : -0x1.0002c5cc3514c484bcf4f572549ep+0 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 16777217LL : -0x1.0002c5cc3514c484bcf4f572549ep+0 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 16777217LL : -0x1.0002c5cc3514c484bcf4f57255p+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 16777217LL : -0x1.0002c5cc3514c484bcf4f572548p+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 16777217LL : -0x1.0002c5cc3514c484bcf4f572548p+0 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 16777217LL : -0x1.0002c5cc3514c484bcf4f572548p+0 : inexact-ok
+= rootn downward intel96 -0xf.fffffffffffffffp+16380 16777217LL : -0x1.002c605e0228b5e6p+0 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffffffffffffp+16380 16777217LL : -0x1.002c605e0228b5e4p+0 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffffffffffffp+16380 16777217LL : -0x1.002c605e0228b5e4p+0 : inexact-ok
+= rootn upward intel96 -0xf.fffffffffffffffp+16380 16777217LL : -0x1.002c605e0228b5e4p+0 : inexact-ok
+= rootn downward m68k96 -0xf.fffffffffffffffp+16380 16777217LL : -0x1.002c605e0228b5e6p+0 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffffffffffffp+16380 16777217LL : -0x1.002c605e0228b5e4p+0 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffffffffffffp+16380 16777217LL : -0x1.002c605e0228b5e4p+0 : inexact-ok
+= rootn upward m68k96 -0xf.fffffffffffffffp+16380 16777217LL : -0x1.002c605e0228b5e4p+0 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffp+16380 16777217LL : -0x1.002c605e0228b5e4d4cd6fcd4e8p+0 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffp+16380 16777217LL : -0x1.002c605e0228b5e4d4cd6fcd4e8p+0 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffp+16380 16777217LL : -0x1.002c605e0228b5e4d4cd6fcd4e7fp+0 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffp+16380 16777217LL : -0x1.002c605e0228b5e4d4cd6fcd4e7fp+0 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 16777217LL : -0x1.002c605e0228b5e4d4cd70cd7aep+0 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffffffffffffff8p+16380 16777217LL : -0x1.002c605e0228b5e4d4cd70cd7adfp+0 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffffffffffffff8p+16380 16777217LL : -0x1.002c605e0228b5e4d4cd70cd7adfp+0 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 16777217LL : -0x1.002c605e0228b5e4d4cd70cd7adfp+0 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 16777217LL : -0x1.0002c5cc3514c484bcf8f57d67dp+0 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 16777217LL : -0x1.0002c5cc3514c484bcf8f57d67dp+0 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 16777217LL : -0x1.0002c5cc3514c484bcf8f57d67cfp+0 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 16777217LL : -0x1.0002c5cc3514c484bcf8f57d67cfp+0 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 16777217LL : -0x1.0002c5cc3514c484bcf8f57d68p+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 16777217LL : -0x1.0002c5cc3514c484bcf8f57d68p+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 16777217LL : -0x1.0002c5cc3514c484bcf8f57d678p+0 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 16777217LL : -0x1.0002c5cc3514c484bcf8f57d678p+0 : inexact-ok
+rootn -max 0x10000000000001
+= rootn downward binary32 -0xf.fffffp+124 4503599627370497LL : -0x1.000002p+0 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 4503599627370497LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 4503599627370497LL : -0x1p+0 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 4503599627370497LL : -0x1p+0 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 4503599627370497LL : -0x1.0000000000059p+0 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 4503599627370497LL : -0x1.0000000000059p+0 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 4503599627370497LL : -0x1.0000000000058p+0 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 4503599627370497LL : -0x1.0000000000058p+0 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 4503599627370497LL : -0x1.0000000000058b92p+0 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 4503599627370497LL : -0x1.0000000000058b9p+0 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 4503599627370497LL : -0x1.0000000000058b9p+0 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 4503599627370497LL : -0x1.0000000000058b9p+0 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 4503599627370497LL : -0x1.0000000000058b92p+0 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 4503599627370497LL : -0x1.0000000000058b9p+0 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 4503599627370497LL : -0x1.0000000000058b9p+0 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 4503599627370497LL : -0x1.0000000000058b9p+0 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 4503599627370497LL : -0x1.0000000000058b90bfae8e8acc85p+0 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 4503599627370497LL : -0x1.0000000000058b90bfae8e8acc84p+0 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 4503599627370497LL : -0x1.0000000000058b90bfae8e8acc84p+0 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 4503599627370497LL : -0x1.0000000000058b90bfae8e8acc84p+0 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 4503599627370497LL : -0x1.0000000000058b90bfae8e8acdp+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 4503599627370497LL : -0x1.0000000000058b90bfae8e8acc8p+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 4503599627370497LL : -0x1.0000000000058b90bfae8e8acc8p+0 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 4503599627370497LL : -0x1.0000000000058b90bfae8e8acc8p+0 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 4503599627370497LL : -0x1.00000000002c6p+0 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 4503599627370497LL : -0x1.00000000002c6p+0 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 4503599627370497LL : -0x1.00000000002c5p+0 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 4503599627370497LL : -0x1.00000000002c5p+0 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 4503599627370497LL : -0x1.00000000002c5c86p+0 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 4503599627370497LL : -0x1.00000000002c5c86p+0 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 4503599627370497LL : -0x1.00000000002c5c84p+0 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 4503599627370497LL : -0x1.00000000002c5c84p+0 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 4503599627370497LL : -0x1.00000000002c5c86p+0 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 4503599627370497LL : -0x1.00000000002c5c86p+0 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 4503599627370497LL : -0x1.00000000002c5c84p+0 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 4503599627370497LL : -0x1.00000000002c5c84p+0 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 4503599627370497LL : -0x1.00000000002c5c85fdf477b39c6bp+0 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 4503599627370497LL : -0x1.00000000002c5c85fdf477b39c6ap+0 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 4503599627370497LL : -0x1.00000000002c5c85fdf477b39c6ap+0 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 4503599627370497LL : -0x1.00000000002c5c85fdf477b39c6ap+0 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 4503599627370497LL : -0x1.00000000002c5c85fdf477b39c8p+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 4503599627370497LL : -0x1.00000000002c5c85fdf477b39c8p+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 4503599627370497LL : -0x1.00000000002c5c85fdf477b39cp+0 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 4503599627370497LL : -0x1.00000000002c5c85fdf477b39cp+0 : inexact-ok
+= rootn downward intel96 -0xf.fffffffffffffffp+16380 4503599627370497LL : -0x1.0000000002c5c86p+0 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffffffffffffp+16380 4503599627370497LL : -0x1.0000000002c5c86p+0 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffffffffffffp+16380 4503599627370497LL : -0x1.0000000002c5c85ep+0 : inexact-ok
+= rootn upward intel96 -0xf.fffffffffffffffp+16380 4503599627370497LL : -0x1.0000000002c5c85ep+0 : inexact-ok
+= rootn downward m68k96 -0xf.fffffffffffffffp+16380 4503599627370497LL : -0x1.0000000002c5c86p+0 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffffffffffffp+16380 4503599627370497LL : -0x1.0000000002c5c86p+0 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffffffffffffp+16380 4503599627370497LL : -0x1.0000000002c5c85ep+0 : inexact-ok
+= rootn upward m68k96 -0xf.fffffffffffffffp+16380 4503599627370497LL : -0x1.0000000002c5c85ep+0 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffp+16380 4503599627370497LL : -0x1.0000000002c5c85fdf4b15b21292p+0 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffp+16380 4503599627370497LL : -0x1.0000000002c5c85fdf4b15b21292p+0 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffp+16380 4503599627370497LL : -0x1.0000000002c5c85fdf4b15b21291p+0 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffp+16380 4503599627370497LL : -0x1.0000000002c5c85fdf4b15b21291p+0 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 4503599627370497LL : -0x1.0000000002c5c85fdf4b15b21292p+0 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffffffffffffff8p+16380 4503599627370497LL : -0x1.0000000002c5c85fdf4b15b21292p+0 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffffffffffffff8p+16380 4503599627370497LL : -0x1.0000000002c5c85fdf4b15b21291p+0 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 4503599627370497LL : -0x1.0000000002c5c85fdf4b15b21291p+0 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 4503599627370497LL : -0x1.00000000002c5c85fdf477b39cabp+0 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 4503599627370497LL : -0x1.00000000002c5c85fdf477b39caap+0 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 4503599627370497LL : -0x1.00000000002c5c85fdf477b39caap+0 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 4503599627370497LL : -0x1.00000000002c5c85fdf477b39caap+0 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 4503599627370497LL : -0x1.00000000002c5c85fdf477b39dp+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 4503599627370497LL : -0x1.00000000002c5c85fdf477b39c8p+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 4503599627370497LL : -0x1.00000000002c5c85fdf477b39c8p+0 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 4503599627370497LL : -0x1.00000000002c5c85fdf477b39c8p+0 : inexact-ok
+rootn -max 0x7fffffffffffffff
+= rootn downward binary32 -0xf.fffffp+124 9223372036854775807LL : -0x1.000002p+0 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 9223372036854775807LL : -0x1.0000000000001p+0 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 9223372036854775807LL : -0x1.00000000000000b2p+0 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 9223372036854775807LL : -0x1.00000000000000b2p+0 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 9223372036854775807LL : -0x1.00000000000000bp+0 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 9223372036854775807LL : -0x1.00000000000000bp+0 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 9223372036854775807LL : -0x1.00000000000000b2p+0 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 9223372036854775807LL : -0x1.00000000000000b2p+0 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 9223372036854775807LL : -0x1.00000000000000bp+0 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 9223372036854775807LL : -0x1.00000000000000bp+0 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 9223372036854775807LL : -0x1.00000000000000b17217f5d1cf79p+0 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 9223372036854775807LL : -0x1.00000000000000b17217f5d1cf79p+0 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 9223372036854775807LL : -0x1.00000000000000b17217f5d1cf78p+0 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 9223372036854775807LL : -0x1.00000000000000b17217f5d1cf78p+0 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 9223372036854775807LL : -0x1.00000000000000b17217f5d1cf8p+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 9223372036854775807LL : -0x1.00000000000000b17217f5d1cf8p+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 9223372036854775807LL : -0x1.00000000000000b17217f5d1cfp+0 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 9223372036854775807LL : -0x1.00000000000000b17217f5d1cfp+0 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 9223372036854775807LL : -0x1.0000000000001p+0 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 9223372036854775807LL : -0x1.000000000000058cp+0 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 9223372036854775807LL : -0x1.000000000000058cp+0 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 9223372036854775807LL : -0x1.000000000000058ap+0 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 9223372036854775807LL : -0x1.000000000000058ap+0 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 9223372036854775807LL : -0x1.000000000000058cp+0 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 9223372036854775807LL : -0x1.000000000000058cp+0 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 9223372036854775807LL : -0x1.000000000000058ap+0 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 9223372036854775807LL : -0x1.000000000000058ap+0 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 9223372036854775807LL : -0x1.000000000000058b90bfbe8e7bddp+0 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 9223372036854775807LL : -0x1.000000000000058b90bfbe8e7bddp+0 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 9223372036854775807LL : -0x1.000000000000058b90bfbe8e7bdcp+0 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 9223372036854775807LL : -0x1.000000000000058b90bfbe8e7bdcp+0 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 9223372036854775807LL : -0x1.000000000000058b90bfbe8e7cp+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 9223372036854775807LL : -0x1.000000000000058b90bfbe8e7cp+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 9223372036854775807LL : -0x1.000000000000058b90bfbe8e7b8p+0 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 9223372036854775807LL : -0x1.000000000000058b90bfbe8e7b8p+0 : inexact-ok
+= rootn downward intel96 -0xf.fffffffffffffffp+16380 9223372036854775807LL : -0x1.00000000000058bap+0 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffffffffffffp+16380 9223372036854775807LL : -0x1.00000000000058bap+0 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffffffffffffp+16380 9223372036854775807LL : -0x1.00000000000058b8p+0 : inexact-ok
+= rootn upward intel96 -0xf.fffffffffffffffp+16380 9223372036854775807LL : -0x1.00000000000058b8p+0 : inexact-ok
+= rootn downward m68k96 -0xf.fffffffffffffffp+16380 9223372036854775807LL : -0x1.00000000000058bap+0 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffffffffffffp+16380 9223372036854775807LL : -0x1.00000000000058bap+0 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffffffffffffp+16380 9223372036854775807LL : -0x1.00000000000058b8p+0 : inexact-ok
+= rootn upward m68k96 -0xf.fffffffffffffffp+16380 9223372036854775807LL : -0x1.00000000000058b8p+0 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffp+16380 9223372036854775807LL : -0x1.00000000000058b90bfbe8e7cc37p+0 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffp+16380 9223372036854775807LL : -0x1.00000000000058b90bfbe8e7cc36p+0 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffp+16380 9223372036854775807LL : -0x1.00000000000058b90bfbe8e7cc36p+0 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffp+16380 9223372036854775807LL : -0x1.00000000000058b90bfbe8e7cc36p+0 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 9223372036854775807LL : -0x1.00000000000058b90bfbe8e7cc37p+0 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffffffffffffff8p+16380 9223372036854775807LL : -0x1.00000000000058b90bfbe8e7cc36p+0 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffffffffffffff8p+16380 9223372036854775807LL : -0x1.00000000000058b90bfbe8e7cc36p+0 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 9223372036854775807LL : -0x1.00000000000058b90bfbe8e7cc36p+0 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 9223372036854775807LL : -0x1.000000000000058b90bfbe8e7bddp+0 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 9223372036854775807LL : -0x1.000000000000058b90bfbe8e7bddp+0 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 9223372036854775807LL : -0x1.000000000000058b90bfbe8e7bdcp+0 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 9223372036854775807LL : -0x1.000000000000058b90bfbe8e7bdcp+0 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 9223372036854775807LL : -0x1.000000000000058b90bfbe8e7cp+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 9223372036854775807LL : -0x1.000000000000058b90bfbe8e7cp+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 9223372036854775807LL : -0x1.000000000000058b90bfbe8e7b8p+0 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 9223372036854775807LL : -0x1.000000000000058b90bfbe8e7b8p+0 : inexact-ok
+rootn max -1
+= rootn downward binary32 0xf.fffffp+124 -1LL : 0x1p-128 : inexact-ok underflow errno-erange-ok
+= rootn tonearest binary32 0xf.fffffp+124 -1LL : 0x1p-128 : inexact-ok underflow errno-erange-ok
+= rootn towardzero binary32 0xf.fffffp+124 -1LL : 0x1p-128 : inexact-ok underflow errno-erange-ok
+= rootn upward binary32 0xf.fffffp+124 -1LL : 0x1.000008p-128 : inexact-ok underflow errno-erange-ok
+= rootn downward binary64 0xf.fffffp+124 -1LL : 0x1.000001000001p-128 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 -1LL : 0x1.000001000001p-128 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 -1LL : 0x1.000001000001p-128 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 -1LL : 0x1.0000010000011p-128 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 -1LL : 0x1.000001000001p-128 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 -1LL : 0x1.000001000001p-128 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 -1LL : 0x1.000001000001p-128 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 -1LL : 0x1.0000010000010002p-128 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 -1LL : 0x1.000001000001p-128 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 -1LL : 0x1.000001000001p-128 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 -1LL : 0x1.000001000001p-128 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 -1LL : 0x1.0000010000010002p-128 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 -1LL : 0x1.000001000001000001000001p-128 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 -1LL : 0x1.000001000001000001000001p-128 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 -1LL : 0x1.000001000001000001000001p-128 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 -1LL : 0x1.0000010000010000010000010001p-128 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 -1LL : 0x1.000001000001000001000001p-128 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 -1LL : 0x1.000001000001000001000001p-128 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 -1LL : 0x1.000001000001000001000001p-128 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 -1LL : 0x1.000001000001000001000001008p-128 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 -1LL : 0x1p-1024 : inexact-ok underflow errno-erange-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 -1LL : 0x1p-1024 : inexact-ok underflow errno-erange-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 -1LL : 0x1p-1024 : inexact-ok underflow errno-erange-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 -1LL : 0x1.0000000000004p-1024 : inexact-ok underflow errno-erange-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 -1LL : 0x1.00000000000008p-1024 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 -1LL : 0x1.00000000000008p-1024 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 -1LL : 0x1.00000000000008p-1024 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 -1LL : 0x1.0000000000000802p-1024 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 -1LL : 0x1.00000000000008p-1024 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 -1LL : 0x1.00000000000008p-1024 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 -1LL : 0x1.00000000000008p-1024 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 -1LL : 0x1.0000000000000802p-1024 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 -1LL : 0x1.000000000000080000000000004p-1024 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 -1LL : 0x1.000000000000080000000000004p-1024 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 -1LL : 0x1.000000000000080000000000004p-1024 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 -1LL : 0x1.0000000000000800000000000041p-1024 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 -1LL : 0x1p-1024 : inexact-ok underflow errno-erange-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 -1LL : 0x1p-1024 : inexact-ok underflow errno-erange-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 -1LL : 0x1p-1024 : inexact-ok underflow errno-erange-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 -1LL : 0x1.0000000000004p-1024 : inexact-ok underflow errno-erange-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 -1LL : 0x1p-16384 : inexact-ok underflow errno-erange-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 -1LL : 0x1p-16384 : inexact-ok underflow errno-erange-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 -1LL : 0x1p-16384 : inexact-ok underflow errno-erange-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 -1LL : 0x1.0000000000000008p-16384 : inexact-ok underflow errno-erange-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 -1LL : 0x1p-16384 : inexact-ok underflow errno-erange-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 -1LL : 0x1p-16384 : inexact-ok underflow errno-erange-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 -1LL : 0x1p-16384 : inexact-ok underflow errno-erange-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 -1LL : 0x1.0000000000000004p-16384 : inexact-ok underflow errno-erange-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 -1LL : 0x1.0000000000000001p-16384 : inexact-ok underflow errno-erange-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 -1LL : 0x1.0000000000000001p-16384 : inexact-ok underflow errno-erange-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 -1LL : 0x1.0000000000000001p-16384 : inexact-ok underflow errno-erange-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 -1LL : 0x1.0000000000000001000000000004p-16384 : inexact-ok underflow errno-erange-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -1LL : 0x1p-16384 : inexact-ok underflow errno-erange-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 -1LL : 0x1p-16384 : inexact-ok underflow errno-erange-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 -1LL : 0x1p-16384 : inexact-ok underflow errno-erange-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -1LL : 0x1.0000000000000000000000000004p-16384 : inexact-ok underflow errno-erange-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -1LL : 0x1.000000000000040000000000005p-1024 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 -1LL : 0x1.000000000000040000000000005p-1024 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 -1LL : 0x1.000000000000040000000000005p-1024 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -1LL : 0x1.0000000000000400000000000051p-1024 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -1LL : 0x1p-1024 : inexact-ok underflow errno-erange-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -1LL : 0x1p-1024 : inexact-ok underflow errno-erange-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -1LL : 0x1p-1024 : inexact-ok underflow errno-erange-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -1LL : 0x1.0000000000004p-1024 : inexact-ok underflow errno-erange-ok
+rootn max -2
+= rootn downward binary32 0xf.fffffp+124 -2LL : 0x1p-64 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 -2LL : 0x1p-64 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 -2LL : 0x1p-64 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 -2LL : 0x1.000002p-64 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 -2LL : 0x1.0000008000006p-64 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 -2LL : 0x1.0000008000006p-64 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 -2LL : 0x1.0000008000006p-64 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 -2LL : 0x1.0000008000007p-64 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 -2LL : 0x1.0000008000006p-64 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 -2LL : 0x1.0000008000006p-64 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 -2LL : 0x1.0000008000006p-64 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 -2LL : 0x1.0000008000006002p-64 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 -2LL : 0x1.0000008000006p-64 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 -2LL : 0x1.0000008000006p-64 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 -2LL : 0x1.0000008000006p-64 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 -2LL : 0x1.0000008000006002p-64 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 -2LL : 0x1.00000080000060000050000046p-64 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 -2LL : 0x1.00000080000060000050000046p-64 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 -2LL : 0x1.00000080000060000050000046p-64 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 -2LL : 0x1.0000008000006000005000004601p-64 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 -2LL : 0x1.00000080000060000050000046p-64 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 -2LL : 0x1.00000080000060000050000046p-64 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 -2LL : 0x1.00000080000060000050000046p-64 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 -2LL : 0x1.000000800000600000500000468p-64 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 -2LL : 0x1p-512 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 -2LL : 0x1p-512 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 -2LL : 0x1p-512 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 -2LL : 0x1.0000000000001p-512 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 -2LL : 0x1.00000000000004p-512 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 -2LL : 0x1.00000000000004p-512 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 -2LL : 0x1.00000000000004p-512 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 -2LL : 0x1.0000000000000402p-512 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 -2LL : 0x1.00000000000004p-512 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 -2LL : 0x1.00000000000004p-512 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 -2LL : 0x1.00000000000004p-512 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 -2LL : 0x1.0000000000000402p-512 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 -2LL : 0x1.0000000000000400000000000018p-512 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 -2LL : 0x1.0000000000000400000000000018p-512 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 -2LL : 0x1.0000000000000400000000000018p-512 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 -2LL : 0x1.0000000000000400000000000019p-512 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 -2LL : 0x1.00000000000004p-512 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 -2LL : 0x1.00000000000004p-512 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 -2LL : 0x1.00000000000004p-512 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 -2LL : 0x1.000000000000040000000000008p-512 : inexact-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 -2LL : 0x1p-8192 : inexact-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 -2LL : 0x1p-8192 : inexact-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 -2LL : 0x1p-8192 : inexact-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 -2LL : 0x1.0000000000000002p-8192 : inexact-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 -2LL : 0x1p-8192 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 -2LL : 0x1p-8192 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 -2LL : 0x1p-8192 : inexact-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 -2LL : 0x1.0000000000000002p-8192 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 -2LL : 0x1.00000000000000008p-8192 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 -2LL : 0x1.00000000000000008p-8192 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 -2LL : 0x1.00000000000000008p-8192 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 -2LL : 0x1.0000000000000000800000000001p-8192 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -2LL : 0x1p-8192 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 -2LL : 0x1p-8192 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 -2LL : 0x1p-8192 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -2LL : 0x1.0000000000000000000000000001p-8192 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -2LL : 0x1.0000000000000200000000000026p-512 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 -2LL : 0x1.0000000000000200000000000026p-512 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 -2LL : 0x1.0000000000000200000000000026p-512 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -2LL : 0x1.0000000000000200000000000027p-512 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -2LL : 0x1.00000000000002p-512 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -2LL : 0x1.00000000000002p-512 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -2LL : 0x1.00000000000002p-512 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -2LL : 0x1.000000000000020000000000008p-512 : inexact-ok
+rootn max -3
+= rootn downward binary32 0xf.fffffp+124 -3LL : 0x2.85146p-44 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 -3LL : 0x2.85146p-44 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 -3LL : 0x2.85146p-44 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 -3LL : 0x2.851464p-44 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 -3LL : 0x2.85146008b51c4p-44 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 -3LL : 0x2.85146008b51c6p-44 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 -3LL : 0x2.85146008b51c4p-44 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 -3LL : 0x2.85146008b51c6p-44 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 -3LL : 0x2.85146008b51c518p-44 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 -3LL : 0x2.85146008b51c5184p-44 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 -3LL : 0x2.85146008b51c518p-44 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 -3LL : 0x2.85146008b51c5184p-44 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 -3LL : 0x2.85146008b51c518p-44 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 -3LL : 0x2.85146008b51c5184p-44 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 -3LL : 0x2.85146008b51c518p-44 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 -3LL : 0x2.85146008b51c5184p-44 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 -3LL : 0x2.85146008b51c51831e3246f609aep-44 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 -3LL : 0x2.85146008b51c51831e3246f609aep-44 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 -3LL : 0x2.85146008b51c51831e3246f609aep-44 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 -3LL : 0x2.85146008b51c51831e3246f609bp-44 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 -3LL : 0x2.85146008b51c51831e3246f609p-44 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 -3LL : 0x2.85146008b51c51831e3246f60ap-44 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 -3LL : 0x2.85146008b51c51831e3246f609p-44 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 -3LL : 0x2.85146008b51c51831e3246f60ap-44 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 -3LL : 0x6.597fa94f5b8fp-344 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 -3LL : 0x6.597fa94f5b8f4p-344 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 -3LL : 0x6.597fa94f5b8fp-344 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 -3LL : 0x6.597fa94f5b8f4p-344 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 -3LL : 0x6.597fa94f5b8f3198p-344 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 -3LL : 0x6.597fa94f5b8f3198p-344 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 -3LL : 0x6.597fa94f5b8f3198p-344 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 -3LL : 0x6.597fa94f5b8f31ap-344 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 -3LL : 0x6.597fa94f5b8f3198p-344 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 -3LL : 0x6.597fa94f5b8f3198p-344 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 -3LL : 0x6.597fa94f5b8f3198p-344 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 -3LL : 0x6.597fa94f5b8f31ap-344 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 -3LL : 0x6.597fa94f5b8f319ac029e91a7518p-344 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 -3LL : 0x6.597fa94f5b8f319ac029e91a751cp-344 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 -3LL : 0x6.597fa94f5b8f319ac029e91a7518p-344 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 -3LL : 0x6.597fa94f5b8f319ac029e91a751cp-344 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 -3LL : 0x6.597fa94f5b8f319ac029e91a74p-344 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 -3LL : 0x6.597fa94f5b8f319ac029e91a76p-344 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 -3LL : 0x6.597fa94f5b8f319ac029e91a74p-344 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 -3LL : 0x6.597fa94f5b8f319ac029e91a76p-344 : inexact-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 -3LL : 0x6.597fa94f5b8f20a8p-5464 : inexact-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 -3LL : 0x6.597fa94f5b8f20bp-5464 : inexact-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 -3LL : 0x6.597fa94f5b8f20a8p-5464 : inexact-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 -3LL : 0x6.597fa94f5b8f20bp-5464 : inexact-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 -3LL : 0x6.597fa94f5b8f20a8p-5464 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 -3LL : 0x6.597fa94f5b8f20bp-5464 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 -3LL : 0x6.597fa94f5b8f20a8p-5464 : inexact-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 -3LL : 0x6.597fa94f5b8f20bp-5464 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 -3LL : 0x6.597fa94f5b8f20ae343ba340c04p-5464 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 -3LL : 0x6.597fa94f5b8f20ae343ba340c044p-5464 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 -3LL : 0x6.597fa94f5b8f20ae343ba340c04p-5464 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 -3LL : 0x6.597fa94f5b8f20ae343ba340c044p-5464 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -3LL : 0x6.597fa94f5b8f20ac16666ad0f714p-5464 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 -3LL : 0x6.597fa94f5b8f20ac16666ad0f714p-5464 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 -3LL : 0x6.597fa94f5b8f20ac16666ad0f714p-5464 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -3LL : 0x6.597fa94f5b8f20ac16666ad0f718p-5464 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -3LL : 0x6.597fa94f5b8f29236b4829f5b684p-344 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 -3LL : 0x6.597fa94f5b8f29236b4829f5b688p-344 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 -3LL : 0x6.597fa94f5b8f29236b4829f5b684p-344 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -3LL : 0x6.597fa94f5b8f29236b4829f5b688p-344 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -3LL : 0x6.597fa94f5b8f29236b4829f5b6p-344 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -3LL : 0x6.597fa94f5b8f29236b4829f5b6p-344 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -3LL : 0x6.597fa94f5b8f29236b4829f5b6p-344 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -3LL : 0x6.597fa94f5b8f29236b4829f5b8p-344 : inexact-ok
+rootn max -4
+= rootn downward binary32 0xf.fffffp+124 -4LL : 0x1p-32 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 -4LL : 0x1p-32 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 -4LL : 0x1p-32 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 -4LL : 0x1.000002p-32 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 -4LL : 0x1.0000004000002p-32 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 -4LL : 0x1.0000004000003p-32 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 -4LL : 0x1.0000004000002p-32 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 -4LL : 0x1.0000004000003p-32 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 -4LL : 0x1.00000040000028p-32 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 -4LL : 0x1.00000040000028p-32 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 -4LL : 0x1.00000040000028p-32 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 -4LL : 0x1.0000004000002802p-32 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 -4LL : 0x1.00000040000028p-32 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 -4LL : 0x1.00000040000028p-32 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 -4LL : 0x1.00000040000028p-32 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 -4LL : 0x1.0000004000002802p-32 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 -4LL : 0x1.0000004000002800001e0000186p-32 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 -4LL : 0x1.0000004000002800001e0000186p-32 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 -4LL : 0x1.0000004000002800001e0000186p-32 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 -4LL : 0x1.0000004000002800001e00001861p-32 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 -4LL : 0x1.0000004000002800001e000018p-32 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 -4LL : 0x1.0000004000002800001e0000188p-32 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 -4LL : 0x1.0000004000002800001e000018p-32 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 -4LL : 0x1.0000004000002800001e0000188p-32 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 -4LL : 0x1p-256 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 -4LL : 0x1p-256 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 -4LL : 0x1p-256 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 -4LL : 0x1.0000000000001p-256 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 -4LL : 0x1.00000000000002p-256 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 -4LL : 0x1.00000000000002p-256 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 -4LL : 0x1.00000000000002p-256 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 -4LL : 0x1.0000000000000202p-256 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 -4LL : 0x1.00000000000002p-256 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 -4LL : 0x1.00000000000002p-256 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 -4LL : 0x1.00000000000002p-256 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 -4LL : 0x1.0000000000000202p-256 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 -4LL : 0x1.000000000000020000000000000ap-256 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 -4LL : 0x1.000000000000020000000000000ap-256 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 -4LL : 0x1.000000000000020000000000000ap-256 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 -4LL : 0x1.000000000000020000000000000bp-256 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 -4LL : 0x1.00000000000002p-256 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 -4LL : 0x1.00000000000002p-256 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 -4LL : 0x1.00000000000002p-256 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 -4LL : 0x1.000000000000020000000000008p-256 : inexact-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 -4LL : 0x1p-4096 : inexact-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 -4LL : 0x1p-4096 : inexact-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 -4LL : 0x1p-4096 : inexact-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 -4LL : 0x1.0000000000000002p-4096 : inexact-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 -4LL : 0x1p-4096 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 -4LL : 0x1p-4096 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 -4LL : 0x1p-4096 : inexact-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 -4LL : 0x1.0000000000000002p-4096 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 -4LL : 0x1.00000000000000004p-4096 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 -4LL : 0x1.00000000000000004p-4096 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 -4LL : 0x1.00000000000000004p-4096 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 -4LL : 0x1.0000000000000000400000000001p-4096 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -4LL : 0x1p-4096 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 -4LL : 0x1p-4096 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 -4LL : 0x1p-4096 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -4LL : 0x1.0000000000000000000000000001p-4096 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -4LL : 0x1.0000000000000100000000000012p-256 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 -4LL : 0x1.0000000000000100000000000013p-256 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 -4LL : 0x1.0000000000000100000000000012p-256 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -4LL : 0x1.0000000000000100000000000013p-256 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -4LL : 0x1.00000000000001p-256 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -4LL : 0x1.00000000000001p-256 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -4LL : 0x1.00000000000001p-256 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -4LL : 0x1.000000000000010000000000008p-256 : inexact-ok
+rootn max -5
+= rootn downward binary32 0xf.fffffp+124 -5LL : 0x5.472d1p-28 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 -5LL : 0x5.472d18p-28 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 -5LL : 0x5.472d1p-28 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 -5LL : 0x5.472d18p-28 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 -5LL : 0x5.472d15fc9113p-28 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 -5LL : 0x5.472d15fc9113p-28 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 -5LL : 0x5.472d15fc9113p-28 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 -5LL : 0x5.472d15fc91134p-28 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 -5LL : 0x5.472d15fc91131658p-28 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 -5LL : 0x5.472d15fc9113166p-28 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 -5LL : 0x5.472d15fc91131658p-28 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 -5LL : 0x5.472d15fc9113166p-28 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 -5LL : 0x5.472d15fc91131658p-28 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 -5LL : 0x5.472d15fc9113166p-28 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 -5LL : 0x5.472d15fc91131658p-28 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 -5LL : 0x5.472d15fc9113166p-28 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 -5LL : 0x5.472d15fc9113165c35bd35b8367p-28 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 -5LL : 0x5.472d15fc9113165c35bd35b83674p-28 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 -5LL : 0x5.472d15fc9113165c35bd35b8367p-28 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 -5LL : 0x5.472d15fc9113165c35bd35b83674p-28 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 -5LL : 0x5.472d15fc9113165c35bd35b836p-28 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 -5LL : 0x5.472d15fc9113165c35bd35b836p-28 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 -5LL : 0x5.472d15fc9113165c35bd35b836p-28 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 -5LL : 0x5.472d15fc9113165c35bd35b838p-28 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 -5LL : 0x9.3088c35d733ap-208 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 -5LL : 0x9.3088c35d733a8p-208 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 -5LL : 0x9.3088c35d733ap-208 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 -5LL : 0x9.3088c35d733a8p-208 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 -5LL : 0x9.3088c35d733a5ap-208 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 -5LL : 0x9.3088c35d733a5ap-208 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 -5LL : 0x9.3088c35d733a5ap-208 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 -5LL : 0x9.3088c35d733a5a1p-208 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 -5LL : 0x9.3088c35d733a5ap-208 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 -5LL : 0x9.3088c35d733a5ap-208 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 -5LL : 0x9.3088c35d733a5ap-208 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 -5LL : 0x9.3088c35d733a5a1p-208 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 -5LL : 0x9.3088c35d733a5a069ef7728cfe3p-208 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 -5LL : 0x9.3088c35d733a5a069ef7728cfe38p-208 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 -5LL : 0x9.3088c35d733a5a069ef7728cfe3p-208 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 -5LL : 0x9.3088c35d733a5a069ef7728cfe38p-208 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 -5LL : 0x9.3088c35d733a5a069ef7728cfcp-208 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 -5LL : 0x9.3088c35d733a5a069ef7728dp-208 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 -5LL : 0x9.3088c35d733a5a069ef7728cfcp-208 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 -5LL : 0x9.3088c35d733a5a069ef7728dp-208 : inexact-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 -5LL : 0x9.3088c35d733a4b5p-3280 : inexact-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 -5LL : 0x9.3088c35d733a4b5p-3280 : inexact-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 -5LL : 0x9.3088c35d733a4b5p-3280 : inexact-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 -5LL : 0x9.3088c35d733a4b6p-3280 : inexact-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 -5LL : 0x9.3088c35d733a4b5p-3280 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 -5LL : 0x9.3088c35d733a4b5p-3280 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 -5LL : 0x9.3088c35d733a4b5p-3280 : inexact-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 -5LL : 0x9.3088c35d733a4b6p-3280 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 -5LL : 0x9.3088c35d733a4b546773d0e75148p-3280 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 -5LL : 0x9.3088c35d733a4b546773d0e7515p-3280 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 -5LL : 0x9.3088c35d733a4b546773d0e75148p-3280 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 -5LL : 0x9.3088c35d733a4b546773d0e7515p-3280 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -5LL : 0x9.3088c35d733a4b5290f2103b071p-3280 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 -5LL : 0x9.3088c35d733a4b5290f2103b071p-3280 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 -5LL : 0x9.3088c35d733a4b5290f2103b071p-3280 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -5LL : 0x9.3088c35d733a4b5290f2103b0718p-3280 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -5LL : 0x9.3088c35d733a52ac97f4c16403p-208 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 -5LL : 0x9.3088c35d733a52ac97f4c1640308p-208 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 -5LL : 0x9.3088c35d733a52ac97f4c16403p-208 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -5LL : 0x9.3088c35d733a52ac97f4c1640308p-208 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -5LL : 0x9.3088c35d733a52ac97f4c164p-208 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -5LL : 0x9.3088c35d733a52ac97f4c16404p-208 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -5LL : 0x9.3088c35d733a52ac97f4c164p-208 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -5LL : 0x9.3088c35d733a52ac97f4c16404p-208 : inexact-ok
+rootn max -63
+= rootn downward binary32 0xf.fffffp+124 -63LL : 0x3.e9b69cp-4 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 -63LL : 0x3.e9b69cp-4 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 -63LL : 0x3.e9b69cp-4 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 -63LL : 0x3.e9b6ap-4 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 -63LL : 0x3.e9b69c3845b8cp-4 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 -63LL : 0x3.e9b69c3845b8ep-4 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 -63LL : 0x3.e9b69c3845b8cp-4 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 -63LL : 0x3.e9b69c3845b8ep-4 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 -63LL : 0x3.e9b69c3845b8d834p-4 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 -63LL : 0x3.e9b69c3845b8d838p-4 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 -63LL : 0x3.e9b69c3845b8d834p-4 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 -63LL : 0x3.e9b69c3845b8d838p-4 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 -63LL : 0x3.e9b69c3845b8d834p-4 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 -63LL : 0x3.e9b69c3845b8d838p-4 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 -63LL : 0x3.e9b69c3845b8d834p-4 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 -63LL : 0x3.e9b69c3845b8d838p-4 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 -63LL : 0x3.e9b69c3845b8d836a422c730b324p-4 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 -63LL : 0x3.e9b69c3845b8d836a422c730b324p-4 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 -63LL : 0x3.e9b69c3845b8d836a422c730b324p-4 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 -63LL : 0x3.e9b69c3845b8d836a422c730b326p-4 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 -63LL : 0x3.e9b69c3845b8d836a422c730b3p-4 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 -63LL : 0x3.e9b69c3845b8d836a422c730b3p-4 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 -63LL : 0x3.e9b69c3845b8d836a422c730b3p-4 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 -63LL : 0x3.e9b69c3845b8d836a422c730b4p-4 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 -63LL : 0xd.6ad9d250b63c8p-20 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 -63LL : 0xd.6ad9d250b63c8p-20 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 -63LL : 0xd.6ad9d250b63c8p-20 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 -63LL : 0xd.6ad9d250b63dp-20 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 -63LL : 0xd.6ad9d250b63ca94p-20 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 -63LL : 0xd.6ad9d250b63ca95p-20 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 -63LL : 0xd.6ad9d250b63ca94p-20 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 -63LL : 0xd.6ad9d250b63ca95p-20 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 -63LL : 0xd.6ad9d250b63ca94p-20 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 -63LL : 0xd.6ad9d250b63ca95p-20 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 -63LL : 0xd.6ad9d250b63ca94p-20 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 -63LL : 0xd.6ad9d250b63ca95p-20 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 -63LL : 0xd.6ad9d250b63ca94f07cd1793ab78p-20 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 -63LL : 0xd.6ad9d250b63ca94f07cd1793ab8p-20 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 -63LL : 0xd.6ad9d250b63ca94f07cd1793ab78p-20 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 -63LL : 0xd.6ad9d250b63ca94f07cd1793ab8p-20 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 -63LL : 0xd.6ad9d250b63ca94f07cd1793a8p-20 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 -63LL : 0xd.6ad9d250b63ca94f07cd1793acp-20 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 -63LL : 0xd.6ad9d250b63ca94f07cd1793a8p-20 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 -63LL : 0xd.6ad9d250b63ca94f07cd1793acp-20 : inexact-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 -63LL : 0xf.4fa5937621aed23p-264 : inexact-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 -63LL : 0xf.4fa5937621aed23p-264 : inexact-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 -63LL : 0xf.4fa5937621aed23p-264 : inexact-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 -63LL : 0xf.4fa5937621aed24p-264 : inexact-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 -63LL : 0xf.4fa5937621aed23p-264 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 -63LL : 0xf.4fa5937621aed23p-264 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 -63LL : 0xf.4fa5937621aed23p-264 : inexact-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 -63LL : 0xf.4fa5937621aed24p-264 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 -63LL : 0xf.4fa5937621aed23224859b01db18p-264 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 -63LL : 0xf.4fa5937621aed23224859b01db18p-264 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 -63LL : 0xf.4fa5937621aed23224859b01db18p-264 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 -63LL : 0xf.4fa5937621aed23224859b01db2p-264 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -63LL : 0xf.4fa5937621aed231e64e26e38948p-264 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 -63LL : 0xf.4fa5937621aed231e64e26e3895p-264 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 -63LL : 0xf.4fa5937621aed231e64e26e38948p-264 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -63LL : 0xf.4fa5937621aed231e64e26e3895p-264 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -63LL : 0xd.6ad9d250b63ca874f1d81ea48b38p-20 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 -63LL : 0xd.6ad9d250b63ca874f1d81ea48b38p-20 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 -63LL : 0xd.6ad9d250b63ca874f1d81ea48b38p-20 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -63LL : 0xd.6ad9d250b63ca874f1d81ea48b4p-20 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -63LL : 0xd.6ad9d250b63ca874f1d81ea488p-20 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -63LL : 0xd.6ad9d250b63ca874f1d81ea48cp-20 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -63LL : 0xd.6ad9d250b63ca874f1d81ea488p-20 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -63LL : 0xd.6ad9d250b63ca874f1d81ea48cp-20 : inexact-ok
+rootn max -127
+= rootn downward binary32 0xf.fffffp+124 -127LL : 0x7.f4da48p-4 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 -127LL : 0x7.f4da5p-4 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 -127LL : 0x7.f4da48p-4 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 -127LL : 0x7.f4da5p-4 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 -127LL : 0x7.f4da4f024e6d4p-4 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 -127LL : 0x7.f4da4f024e6d4p-4 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 -127LL : 0x7.f4da4f024e6d4p-4 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 -127LL : 0x7.f4da4f024e6d8p-4 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 -127LL : 0x7.f4da4f024e6d5adp-4 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 -127LL : 0x7.f4da4f024e6d5adp-4 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 -127LL : 0x7.f4da4f024e6d5adp-4 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 -127LL : 0x7.f4da4f024e6d5ad8p-4 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 -127LL : 0x7.f4da4f024e6d5adp-4 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 -127LL : 0x7.f4da4f024e6d5adp-4 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 -127LL : 0x7.f4da4f024e6d5adp-4 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 -127LL : 0x7.f4da4f024e6d5ad8p-4 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 -127LL : 0x7.f4da4f024e6d5ad300df57d4eb44p-4 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 -127LL : 0x7.f4da4f024e6d5ad300df57d4eb48p-4 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 -127LL : 0x7.f4da4f024e6d5ad300df57d4eb44p-4 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 -127LL : 0x7.f4da4f024e6d5ad300df57d4eb48p-4 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 -127LL : 0x7.f4da4f024e6d5ad300df57d4eap-4 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 -127LL : 0x7.f4da4f024e6d5ad300df57d4ecp-4 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 -127LL : 0x7.f4da4f024e6d5ad300df57d4eap-4 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 -127LL : 0x7.f4da4f024e6d5ad300df57d4ecp-4 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 -127LL : 0xf.51015ae16439p-12 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 -127LL : 0xf.51015ae16439p-12 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 -127LL : 0xf.51015ae16439p-12 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 -127LL : 0xf.51015ae164398p-12 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 -127LL : 0xf.51015ae1643933dp-12 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 -127LL : 0xf.51015ae1643933dp-12 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 -127LL : 0xf.51015ae1643933dp-12 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 -127LL : 0xf.51015ae1643933ep-12 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 -127LL : 0xf.51015ae1643933dp-12 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 -127LL : 0xf.51015ae1643933dp-12 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 -127LL : 0xf.51015ae1643933dp-12 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 -127LL : 0xf.51015ae1643933ep-12 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 -127LL : 0xf.51015ae1643933d33140fde60d2p-12 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 -127LL : 0xf.51015ae1643933d33140fde60d28p-12 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 -127LL : 0xf.51015ae1643933d33140fde60d2p-12 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 -127LL : 0xf.51015ae1643933d33140fde60d28p-12 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 -127LL : 0xf.51015ae1643933d33140fde60cp-12 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 -127LL : 0xf.51015ae1643933d33140fde60cp-12 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 -127LL : 0xf.51015ae1643933d33140fde60cp-12 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 -127LL : 0xf.51015ae1643933d33140fde61p-12 : inexact-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 -127LL : 0x7.f4da4ef244a52478p-132 : inexact-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 -127LL : 0x7.f4da4ef244a5248p-132 : inexact-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 -127LL : 0x7.f4da4ef244a52478p-132 : inexact-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 -127LL : 0x7.f4da4ef244a5248p-132 : inexact-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 -127LL : 0x7.f4da4ef244a52478p-132 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 -127LL : 0x7.f4da4ef244a5248p-132 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 -127LL : 0x7.f4da4ef244a52478p-132 : inexact-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 -127LL : 0x7.f4da4ef244a5248p-132 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 -127LL : 0x7.f4da4ef244a5247cf74f24915754p-132 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 -127LL : 0x7.f4da4ef244a5247cf74f24915758p-132 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 -127LL : 0x7.f4da4ef244a5247cf74f24915754p-132 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 -127LL : 0x7.f4da4ef244a5247cf74f24915758p-132 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -127LL : 0x7.f4da4ef244a5247ce7455c631648p-132 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 -127LL : 0x7.f4da4ef244a5247ce7455c63164cp-132 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 -127LL : 0x7.f4da4ef244a5247ce7455c631648p-132 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -127LL : 0x7.f4da4ef244a5247ce7455c63164cp-132 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -127LL : 0xf.51015ae164393357b238150931a8p-12 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 -127LL : 0xf.51015ae164393357b238150931a8p-12 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 -127LL : 0xf.51015ae164393357b238150931a8p-12 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -127LL : 0xf.51015ae164393357b238150931bp-12 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -127LL : 0xf.51015ae164393357b23815093p-12 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -127LL : 0xf.51015ae164393357b23815093p-12 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -127LL : 0xf.51015ae164393357b23815093p-12 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -127LL : 0xf.51015ae164393357b238150934p-12 : inexact-ok
+rootn max -255
+= rootn downward binary32 0xf.fffffp+124 -255LL : 0xb.4c602p-4 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 -255LL : 0xb.4c603p-4 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 -255LL : 0xb.4c602p-4 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 -255LL : 0xb.4c603p-4 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 -255LL : 0xb.4c602a02eb9cp-4 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 -255LL : 0xb.4c602a02eb9cp-4 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 -255LL : 0xb.4c602a02eb9cp-4 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 -255LL : 0xb.4c602a02eb9c8p-4 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 -255LL : 0xb.4c602a02eb9c2a5p-4 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 -255LL : 0xb.4c602a02eb9c2a5p-4 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 -255LL : 0xb.4c602a02eb9c2a5p-4 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 -255LL : 0xb.4c602a02eb9c2a6p-4 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 -255LL : 0xb.4c602a02eb9c2a5p-4 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 -255LL : 0xb.4c602a02eb9c2a5p-4 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 -255LL : 0xb.4c602a02eb9c2a5p-4 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 -255LL : 0xb.4c602a02eb9c2a6p-4 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 -255LL : 0xb.4c602a02eb9c2a56fdbf6f62f078p-4 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 -255LL : 0xb.4c602a02eb9c2a56fdbf6f62f078p-4 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 -255LL : 0xb.4c602a02eb9c2a56fdbf6f62f078p-4 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 -255LL : 0xb.4c602a02eb9c2a56fdbf6f62f08p-4 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 -255LL : 0xb.4c602a02eb9c2a56fdbf6f62fp-4 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 -255LL : 0xb.4c602a02eb9c2a56fdbf6f62fp-4 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 -255LL : 0xb.4c602a02eb9c2a56fdbf6f62fp-4 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 -255LL : 0xb.4c602a02eb9c2a56fdbf6f62f4p-4 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 -255LL : 0xf.d3b4b2cd6e4e8p-8 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 -255LL : 0xf.d3b4b2cd6e4e8p-8 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 -255LL : 0xf.d3b4b2cd6e4e8p-8 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 -255LL : 0xf.d3b4b2cd6e4fp-8 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 -255LL : 0xf.d3b4b2cd6e4e82ep-8 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 -255LL : 0xf.d3b4b2cd6e4e82ep-8 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 -255LL : 0xf.d3b4b2cd6e4e82ep-8 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 -255LL : 0xf.d3b4b2cd6e4e82fp-8 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 -255LL : 0xf.d3b4b2cd6e4e82ep-8 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 -255LL : 0xf.d3b4b2cd6e4e82ep-8 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 -255LL : 0xf.d3b4b2cd6e4e82ep-8 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 -255LL : 0xf.d3b4b2cd6e4e82fp-8 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 -255LL : 0xf.d3b4b2cd6e4e82e714b6c3d5c248p-8 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 -255LL : 0xf.d3b4b2cd6e4e82e714b6c3d5c25p-8 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 -255LL : 0xf.d3b4b2cd6e4e82e714b6c3d5c248p-8 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 -255LL : 0xf.d3b4b2cd6e4e82e714b6c3d5c25p-8 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 -255LL : 0xf.d3b4b2cd6e4e82e714b6c3d5cp-8 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 -255LL : 0xf.d3b4b2cd6e4e82e714b6c3d5c4p-8 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 -255LL : 0xf.d3b4b2cd6e4e82e714b6c3d5cp-8 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 -255LL : 0xf.d3b4b2cd6e4e82e714b6c3d5c4p-8 : inexact-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 -255LL : 0xd.71f8cf08af34831p-68 : inexact-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 -255LL : 0xd.71f8cf08af34831p-68 : inexact-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 -255LL : 0xd.71f8cf08af34831p-68 : inexact-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 -255LL : 0xd.71f8cf08af34832p-68 : inexact-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 -255LL : 0xd.71f8cf08af34831p-68 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 -255LL : 0xd.71f8cf08af34831p-68 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 -255LL : 0xd.71f8cf08af34831p-68 : inexact-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 -255LL : 0xd.71f8cf08af34832p-68 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 -255LL : 0xd.71f8cf08af3483107dadb6dbd18p-68 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 -255LL : 0xd.71f8cf08af3483107dadb6dbd18p-68 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 -255LL : 0xd.71f8cf08af3483107dadb6dbd18p-68 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 -255LL : 0xd.71f8cf08af3483107dadb6dbd188p-68 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -255LL : 0xd.71f8cf08af348310702e3e94818p-68 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 -255LL : 0xd.71f8cf08af348310702e3e94818p-68 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 -255LL : 0xd.71f8cf08af348310702e3e94818p-68 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -255LL : 0xd.71f8cf08af348310702e3e948188p-68 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -255LL : 0xf.d3b4b2cd6e4e82a786559773a6f8p-8 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 -255LL : 0xf.d3b4b2cd6e4e82a786559773a6f8p-8 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 -255LL : 0xf.d3b4b2cd6e4e82a786559773a6f8p-8 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -255LL : 0xf.d3b4b2cd6e4e82a786559773a7p-8 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -255LL : 0xf.d3b4b2cd6e4e82a786559773a4p-8 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -255LL : 0xf.d3b4b2cd6e4e82a786559773a8p-8 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -255LL : 0xf.d3b4b2cd6e4e82a786559773a4p-8 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -255LL : 0xf.d3b4b2cd6e4e82a786559773a8p-8 : inexact-ok
+rootn max -511
+= rootn downward binary32 0xf.fffffp+124 -511LL : 0xd.7324dp-4 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 -511LL : 0xd.7324dp-4 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 -511LL : 0xd.7324dp-4 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 -511LL : 0xd.7324ep-4 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 -511LL : 0xd.7324d6e5b1cap-4 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 -511LL : 0xd.7324d6e5b1ca8p-4 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 -511LL : 0xd.7324d6e5b1cap-4 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 -511LL : 0xd.7324d6e5b1ca8p-4 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 -511LL : 0xd.7324d6e5b1ca5c1p-4 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 -511LL : 0xd.7324d6e5b1ca5c1p-4 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 -511LL : 0xd.7324d6e5b1ca5c1p-4 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 -511LL : 0xd.7324d6e5b1ca5c2p-4 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 -511LL : 0xd.7324d6e5b1ca5c1p-4 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 -511LL : 0xd.7324d6e5b1ca5c1p-4 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 -511LL : 0xd.7324d6e5b1ca5c1p-4 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 -511LL : 0xd.7324d6e5b1ca5c2p-4 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 -511LL : 0xd.7324d6e5b1ca5c135dadeb0cc5ap-4 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 -511LL : 0xd.7324d6e5b1ca5c135dadeb0cc5a8p-4 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 -511LL : 0xd.7324d6e5b1ca5c135dadeb0cc5ap-4 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 -511LL : 0xd.7324d6e5b1ca5c135dadeb0cc5a8p-4 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 -511LL : 0xd.7324d6e5b1ca5c135dadeb0cc4p-4 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 -511LL : 0xd.7324d6e5b1ca5c135dadeb0cc4p-4 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 -511LL : 0xd.7324d6e5b1ca5c135dadeb0cc4p-4 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 -511LL : 0xd.7324d6e5b1ca5c135dadeb0cc8p-4 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 -511LL : 0x3.fd39cac5aaf4ep-4 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 -511LL : 0x3.fd39cac5aaf4ep-4 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 -511LL : 0x3.fd39cac5aaf4ep-4 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 -511LL : 0x3.fd39cac5aaf5p-4 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 -511LL : 0x3.fd39cac5aaf4e9a4p-4 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 -511LL : 0x3.fd39cac5aaf4e9a4p-4 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 -511LL : 0x3.fd39cac5aaf4e9a4p-4 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 -511LL : 0x3.fd39cac5aaf4e9a8p-4 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 -511LL : 0x3.fd39cac5aaf4e9a4p-4 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 -511LL : 0x3.fd39cac5aaf4e9a4p-4 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 -511LL : 0x3.fd39cac5aaf4e9a4p-4 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 -511LL : 0x3.fd39cac5aaf4e9a8p-4 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 -511LL : 0x3.fd39cac5aaf4e9a5e9b6e819e32ep-4 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 -511LL : 0x3.fd39cac5aaf4e9a5e9b6e819e32ep-4 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 -511LL : 0x3.fd39cac5aaf4e9a5e9b6e819e32ep-4 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 -511LL : 0x3.fd39cac5aaf4e9a5e9b6e819e33p-4 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 -511LL : 0x3.fd39cac5aaf4e9a5e9b6e819e3p-4 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 -511LL : 0x3.fd39cac5aaf4e9a5e9b6e819e3p-4 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 -511LL : 0x3.fd39cac5aaf4e9a5e9b6e819e3p-4 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 -511LL : 0x3.fd39cac5aaf4e9a5e9b6e819e4p-4 : inexact-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 -511LL : 0xf.5202b197df1293bp-36 : inexact-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 -511LL : 0xf.5202b197df1293bp-36 : inexact-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 -511LL : 0xf.5202b197df1293bp-36 : inexact-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 -511LL : 0xf.5202b197df1293cp-36 : inexact-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 -511LL : 0xf.5202b197df1293bp-36 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 -511LL : 0xf.5202b197df1293bp-36 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 -511LL : 0xf.5202b197df1293bp-36 : inexact-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 -511LL : 0xf.5202b197df1293cp-36 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 -511LL : 0xf.5202b197df1293b2bd58b9452b4p-36 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 -511LL : 0xf.5202b197df1293b2bd58b9452b48p-36 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 -511LL : 0xf.5202b197df1293b2bd58b9452b4p-36 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 -511LL : 0xf.5202b197df1293b2bd58b9452b48p-36 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -511LL : 0xf.5202b197df1293b2b5abe1807dp-36 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 -511LL : 0xf.5202b197df1293b2b5abe1807dp-36 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 -511LL : 0xf.5202b197df1293b2b5abe1807dp-36 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -511LL : 0xf.5202b197df1293b2b5abe1807d08p-36 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -511LL : 0x3.fd39cac5aaf4e99deb44192713dcp-4 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 -511LL : 0x3.fd39cac5aaf4e99deb44192713dep-4 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 -511LL : 0x3.fd39cac5aaf4e99deb44192713dcp-4 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -511LL : 0x3.fd39cac5aaf4e99deb44192713dep-4 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -511LL : 0x3.fd39cac5aaf4e99deb44192713p-4 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -511LL : 0x3.fd39cac5aaf4e99deb44192714p-4 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -511LL : 0x3.fd39cac5aaf4e99deb44192713p-4 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -511LL : 0x3.fd39cac5aaf4e99deb44192714p-4 : inexact-ok
+rootn max -1023
+= rootn downward binary32 0xf.fffffp+124 -1023LL : 0xe.abbafp-4 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 -1023LL : 0xe.abbbp-4 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 -1023LL : 0xe.abbafp-4 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 -1023LL : 0xe.abbbp-4 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 -1023LL : 0xe.abbaff12bfdfp-4 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 -1023LL : 0xe.abbaff12bfdfp-4 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 -1023LL : 0xe.abbaff12bfdfp-4 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 -1023LL : 0xe.abbaff12bfdf8p-4 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 -1023LL : 0xe.abbaff12bfdf28cp-4 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 -1023LL : 0xe.abbaff12bfdf28cp-4 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 -1023LL : 0xe.abbaff12bfdf28cp-4 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 -1023LL : 0xe.abbaff12bfdf28dp-4 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 -1023LL : 0xe.abbaff12bfdf28cp-4 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 -1023LL : 0xe.abbaff12bfdf28cp-4 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 -1023LL : 0xe.abbaff12bfdf28cp-4 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 -1023LL : 0xe.abbaff12bfdf28dp-4 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 -1023LL : 0xe.abbaff12bfdf28c387f85f56eb9p-4 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 -1023LL : 0xe.abbaff12bfdf28c387f85f56eb9p-4 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 -1023LL : 0xe.abbaff12bfdf28c387f85f56eb9p-4 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 -1023LL : 0xe.abbaff12bfdf28c387f85f56eb98p-4 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 -1023LL : 0xe.abbaff12bfdf28c387f85f56e8p-4 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 -1023LL : 0xe.abbaff12bfdf28c387f85f56ecp-4 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 -1023LL : 0xe.abbaff12bfdf28c387f85f56e8p-4 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 -1023LL : 0xe.abbaff12bfdf28c387f85f56ecp-4 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 -1023LL : 0x7.fe9ce1ce2c424p-4 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 -1023LL : 0x7.fe9ce1ce2c428p-4 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 -1023LL : 0x7.fe9ce1ce2c424p-4 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 -1023LL : 0x7.fe9ce1ce2c428p-4 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 -1023LL : 0x7.fe9ce1ce2c42711p-4 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 -1023LL : 0x7.fe9ce1ce2c42711p-4 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 -1023LL : 0x7.fe9ce1ce2c42711p-4 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 -1023LL : 0x7.fe9ce1ce2c427118p-4 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 -1023LL : 0x7.fe9ce1ce2c42711p-4 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 -1023LL : 0x7.fe9ce1ce2c42711p-4 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 -1023LL : 0x7.fe9ce1ce2c42711p-4 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 -1023LL : 0x7.fe9ce1ce2c427118p-4 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 -1023LL : 0x7.fe9ce1ce2c427111b95cccf3833p-4 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 -1023LL : 0x7.fe9ce1ce2c427111b95cccf38334p-4 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 -1023LL : 0x7.fe9ce1ce2c427111b95cccf3833p-4 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 -1023LL : 0x7.fe9ce1ce2c427111b95cccf38334p-4 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 -1023LL : 0x7.fe9ce1ce2c427111b95cccf382p-4 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 -1023LL : 0x7.fe9ce1ce2c427111b95cccf384p-4 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 -1023LL : 0x7.fe9ce1ce2c427111b95cccf382p-4 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 -1023LL : 0x7.fe9ce1ce2c427111b95cccf384p-4 : inexact-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 -1023LL : 0xf.d3d5c5880a2cca4p-20 : inexact-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 -1023LL : 0xf.d3d5c5880a2cca4p-20 : inexact-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 -1023LL : 0xf.d3d5c5880a2cca4p-20 : inexact-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 -1023LL : 0xf.d3d5c5880a2cca5p-20 : inexact-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 -1023LL : 0xf.d3d5c5880a2cca4p-20 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 -1023LL : 0xf.d3d5c5880a2cca4p-20 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 -1023LL : 0xf.d3d5c5880a2cca4p-20 : inexact-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 -1023LL : 0xf.d3d5c5880a2cca5p-20 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 -1023LL : 0xf.d3d5c5880a2cca4019f762560ep-20 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 -1023LL : 0xf.d3d5c5880a2cca4019f762560ep-20 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 -1023LL : 0xf.d3d5c5880a2cca4019f762560ep-20 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 -1023LL : 0xf.d3d5c5880a2cca4019f762560e08p-20 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -1023LL : 0xf.d3d5c5880a2cca4016016f67f078p-20 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 -1023LL : 0xf.d3d5c5880a2cca4016016f67f078p-20 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 -1023LL : 0xf.d3d5c5880a2cca4016016f67f078p-20 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -1023LL : 0xf.d3d5c5880a2cca4016016f67f08p-20 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -1023LL : 0x7.fe9ce1ce2c427109b8bfc3e312d4p-4 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 -1023LL : 0x7.fe9ce1ce2c427109b8bfc3e312d4p-4 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 -1023LL : 0x7.fe9ce1ce2c427109b8bfc3e312d4p-4 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -1023LL : 0x7.fe9ce1ce2c427109b8bfc3e312d8p-4 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -1023LL : 0x7.fe9ce1ce2c427109b8bfc3e312p-4 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -1023LL : 0x7.fe9ce1ce2c427109b8bfc3e312p-4 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -1023LL : 0x7.fe9ce1ce2c427109b8bfc3e312p-4 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -1023LL : 0x7.fe9ce1ce2c427109b8bfc3e314p-4 : inexact-ok
+rootn max -16383
+= rootn downward binary32 0xf.fffffp+124 -16383LL : 0xf.e9e0bp-4 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 -16383LL : 0xf.e9e0cp-4 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 -16383LL : 0xf.e9e0bp-4 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 -16383LL : 0xf.e9e0cp-4 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 -16383LL : 0xf.e9e0bd8836788p-4 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 -16383LL : 0xf.e9e0bd883679p-4 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 -16383LL : 0xf.e9e0bd8836788p-4 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 -16383LL : 0xf.e9e0bd883679p-4 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 -16383LL : 0xf.e9e0bd883678fdcp-4 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 -16383LL : 0xf.e9e0bd883678fddp-4 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 -16383LL : 0xf.e9e0bd883678fdcp-4 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 -16383LL : 0xf.e9e0bd883678fddp-4 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 -16383LL : 0xf.e9e0bd883678fdcp-4 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 -16383LL : 0xf.e9e0bd883678fddp-4 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 -16383LL : 0xf.e9e0bd883678fdcp-4 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 -16383LL : 0xf.e9e0bd883678fddp-4 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 -16383LL : 0xf.e9e0bd883678fdccd020ce68eeep-4 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 -16383LL : 0xf.e9e0bd883678fdccd020ce68eee8p-4 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 -16383LL : 0xf.e9e0bd883678fdccd020ce68eeep-4 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 -16383LL : 0xf.e9e0bd883678fdccd020ce68eee8p-4 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 -16383LL : 0xf.e9e0bd883678fdccd020ce68ecp-4 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 -16383LL : 0xf.e9e0bd883678fdccd020ce68fp-4 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 -16383LL : 0xf.e9e0bd883678fdccd020ce68ecp-4 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 -16383LL : 0xf.e9e0bd883678fdccd020ce68fp-4 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 -16383LL : 0xf.525529972fe1p-4 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 -16383LL : 0xf.525529972fe18p-4 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 -16383LL : 0xf.525529972fe1p-4 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 -16383LL : 0xf.525529972fe18p-4 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 -16383LL : 0xf.525529972fe14bfp-4 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 -16383LL : 0xf.525529972fe14bfp-4 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 -16383LL : 0xf.525529972fe14bfp-4 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 -16383LL : 0xf.525529972fe14cp-4 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 -16383LL : 0xf.525529972fe14bfp-4 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 -16383LL : 0xf.525529972fe14bfp-4 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 -16383LL : 0xf.525529972fe14bfp-4 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 -16383LL : 0xf.525529972fe14cp-4 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 -16383LL : 0xf.525529972fe14bf38e29a4458fb8p-4 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 -16383LL : 0xf.525529972fe14bf38e29a4458fb8p-4 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 -16383LL : 0xf.525529972fe14bf38e29a4458fb8p-4 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 -16383LL : 0xf.525529972fe14bf38e29a4458fcp-4 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 -16383LL : 0xf.525529972fe14bf38e29a4458cp-4 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 -16383LL : 0xf.525529972fe14bf38e29a4459p-4 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 -16383LL : 0xf.525529972fe14bf38e29a4458cp-4 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 -16383LL : 0xf.525529972fe14bf38e29a4459p-4 : inexact-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 -16383LL : 0x7.ffe9d183072e7758p-4 : inexact-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 -16383LL : 0x7.ffe9d183072e7758p-4 : inexact-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 -16383LL : 0x7.ffe9d183072e7758p-4 : inexact-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 -16383LL : 0x7.ffe9d183072e776p-4 : inexact-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 -16383LL : 0x7.ffe9d183072e7758p-4 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 -16383LL : 0x7.ffe9d183072e7758p-4 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 -16383LL : 0x7.ffe9d183072e7758p-4 : inexact-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 -16383LL : 0x7.ffe9d183072e776p-4 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 -16383LL : 0x7.ffe9d183072e7758ee21a4122008p-4 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 -16383LL : 0x7.ffe9d183072e7758ee21a4122008p-4 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 -16383LL : 0x7.ffe9d183072e7758ee21a4122008p-4 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 -16383LL : 0x7.ffe9d183072e7758ee21a412200cp-4 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -16383LL : 0x7.ffe9d183072e7758ee01a3ead96p-4 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 -16383LL : 0x7.ffe9d183072e7758ee01a3ead96p-4 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 -16383LL : 0x7.ffe9d183072e7758ee01a3ead96p-4 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -16383LL : 0x7.ffe9d183072e7758ee01a3ead964p-4 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -16383LL : 0xf.525529972fe14bf299007d077fcp-4 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 -16383LL : 0xf.525529972fe14bf299007d077fcp-4 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 -16383LL : 0xf.525529972fe14bf299007d077fcp-4 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -16383LL : 0xf.525529972fe14bf299007d077fc8p-4 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -16383LL : 0xf.525529972fe14bf299007d077cp-4 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -16383LL : 0xf.525529972fe14bf299007d078p-4 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -16383LL : 0xf.525529972fe14bf299007d077cp-4 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -16383LL : 0xf.525529972fe14bf299007d078p-4 : inexact-ok
+rootn max -0x1000001
+= rootn downward binary32 0xf.fffffp+124 -16777217LL : 0xf.fffa7p-4 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 -16777217LL : 0xf.fffa7p-4 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 -16777217LL : 0xf.fffa7p-4 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 -16777217LL : 0xf.fffa8p-4 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 -16777217LL : 0xf.fffa74703bda8p-4 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 -16777217LL : 0xf.fffa74703bdbp-4 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 -16777217LL : 0xf.fffa74703bda8p-4 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 -16777217LL : 0xf.fffa74703bdbp-4 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 -16777217LL : 0xf.fffa74703bdad3dp-4 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 -16777217LL : 0xf.fffa74703bdad3ep-4 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 -16777217LL : 0xf.fffa74703bdad3dp-4 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 -16777217LL : 0xf.fffa74703bdad3ep-4 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 -16777217LL : 0xf.fffa74703bdad3dp-4 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 -16777217LL : 0xf.fffa74703bdad3ep-4 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 -16777217LL : 0xf.fffa74703bdad3dp-4 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 -16777217LL : 0xf.fffa74703bdad3ep-4 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 -16777217LL : 0xf.fffa74703bdad3dde653a1e528cp-4 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 -16777217LL : 0xf.fffa74703bdad3dde653a1e528cp-4 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 -16777217LL : 0xf.fffa74703bdad3dde653a1e528cp-4 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 -16777217LL : 0xf.fffa74703bdad3dde653a1e528c8p-4 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 -16777217LL : 0xf.fffa74703bdad3dde653a1e528p-4 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 -16777217LL : 0xf.fffa74703bdad3dde653a1e528p-4 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 -16777217LL : 0xf.fffa74703bdad3dde653a1e528p-4 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 -16777217LL : 0xf.fffa74703bdad3dde653a1e52cp-4 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 -16777217LL : 0xf.ffd3a3b7adaa8p-4 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 -16777217LL : 0xf.ffd3a3b7adabp-4 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 -16777217LL : 0xf.ffd3a3b7adaa8p-4 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 -16777217LL : 0xf.ffd3a3b7adabp-4 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 -16777217LL : 0xf.ffd3a3b7adaac01p-4 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 -16777217LL : 0xf.ffd3a3b7adaac01p-4 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 -16777217LL : 0xf.ffd3a3b7adaac01p-4 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 -16777217LL : 0xf.ffd3a3b7adaac02p-4 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 -16777217LL : 0xf.ffd3a3b7adaac01p-4 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 -16777217LL : 0xf.ffd3a3b7adaac01p-4 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 -16777217LL : 0xf.ffd3a3b7adaac01p-4 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 -16777217LL : 0xf.ffd3a3b7adaac02p-4 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 -16777217LL : 0xf.ffd3a3b7adaac010230cb25d97d8p-4 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 -16777217LL : 0xf.ffd3a3b7adaac010230cb25d97ep-4 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 -16777217LL : 0xf.ffd3a3b7adaac010230cb25d97d8p-4 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 -16777217LL : 0xf.ffd3a3b7adaac010230cb25d97ep-4 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 -16777217LL : 0xf.ffd3a3b7adaac010230cb25d94p-4 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 -16777217LL : 0xf.ffd3a3b7adaac010230cb25d98p-4 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 -16777217LL : 0xf.ffd3a3b7adaac010230cb25d94p-4 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 -16777217LL : 0xf.ffd3a3b7adaac010230cb25d98p-4 : inexact-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 -16777217LL : 0xf.fd3a751ed4cb798p-4 : inexact-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 -16777217LL : 0xf.fd3a751ed4cb798p-4 : inexact-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 -16777217LL : 0xf.fd3a751ed4cb798p-4 : inexact-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 -16777217LL : 0xf.fd3a751ed4cb799p-4 : inexact-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 -16777217LL : 0xf.fd3a751ed4cb798p-4 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 -16777217LL : 0xf.fd3a751ed4cb798p-4 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 -16777217LL : 0xf.fd3a751ed4cb798p-4 : inexact-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 -16777217LL : 0xf.fd3a751ed4cb799p-4 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 -16777217LL : 0xf.fd3a751ed4cb7986faa08fc74608p-4 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 -16777217LL : 0xf.fd3a751ed4cb7986faa08fc74608p-4 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 -16777217LL : 0xf.fd3a751ed4cb7986faa08fc74608p-4 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 -16777217LL : 0xf.fd3a751ed4cb7986faa08fc7461p-4 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -16777217LL : 0xf.fd3a751ed4cb7986faa07fca0bap-4 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 -16777217LL : 0xf.fd3a751ed4cb7986faa07fca0ba8p-4 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 -16777217LL : 0xf.fd3a751ed4cb7986faa07fca0bap-4 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -16777217LL : 0xf.fd3a751ed4cb7986faa07fca0ba8p-4 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -16777217LL : 0xf.ffd3a3b7adaac01022ccb30f49p-4 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 -16777217LL : 0xf.ffd3a3b7adaac01022ccb30f49p-4 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 -16777217LL : 0xf.ffd3a3b7adaac01022ccb30f49p-4 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -16777217LL : 0xf.ffd3a3b7adaac01022ccb30f4908p-4 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -16777217LL : 0xf.ffd3a3b7adaac01022ccb30f48p-4 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -16777217LL : 0xf.ffd3a3b7adaac01022ccb30f48p-4 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -16777217LL : 0xf.ffd3a3b7adaac01022ccb30f48p-4 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -16777217LL : 0xf.ffd3a3b7adaac01022ccb30f4cp-4 : inexact-ok
+rootn max -0x10000000000001
+= rootn downward binary32 0xf.fffffp+124 -4503599627370497LL : 0xf.fffffp-4 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 -4503599627370497LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 -4503599627370497LL : 0xf.fffffp-4 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 -4503599627370497LL : 0x1p+0 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 -4503599627370497LL : 0xf.ffffffffffa7p-4 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 -4503599627370497LL : 0xf.ffffffffffa78p-4 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 -4503599627370497LL : 0xf.ffffffffffa7p-4 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 -4503599627370497LL : 0xf.ffffffffffa78p-4 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 -4503599627370497LL : 0xf.ffffffffffa746fp-4 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 -4503599627370497LL : 0xf.ffffffffffa746fp-4 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 -4503599627370497LL : 0xf.ffffffffffa746fp-4 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 -4503599627370497LL : 0xf.ffffffffffa747p-4 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 -4503599627370497LL : 0xf.ffffffffffa746fp-4 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 -4503599627370497LL : 0xf.ffffffffffa746fp-4 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 -4503599627370497LL : 0xf.ffffffffffa746fp-4 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 -4503599627370497LL : 0xf.ffffffffffa747p-4 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 -4503599627370497LL : 0xf.ffffffffffa746f40517193f3398p-4 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 -4503599627370497LL : 0xf.ffffffffffa746f40517193f3398p-4 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 -4503599627370497LL : 0xf.ffffffffffa746f40517193f3398p-4 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 -4503599627370497LL : 0xf.ffffffffffa746f40517193f33ap-4 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 -4503599627370497LL : 0xf.ffffffffffa746f40517193f3p-4 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 -4503599627370497LL : 0xf.ffffffffffa746f40517193f34p-4 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 -4503599627370497LL : 0xf.ffffffffffa746f40517193f3p-4 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 -4503599627370497LL : 0xf.ffffffffffa746f40517193f34p-4 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 -4503599627370497LL : 0xf.fffffffffd3ap-4 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 -4503599627370497LL : 0xf.fffffffffd3ap-4 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 -4503599627370497LL : 0xf.fffffffffd3ap-4 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 -4503599627370497LL : 0xf.fffffffffd3a8p-4 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 -4503599627370497LL : 0xf.fffffffffd3a37ap-4 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 -4503599627370497LL : 0xf.fffffffffd3a37ap-4 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 -4503599627370497LL : 0xf.fffffffffd3a37ap-4 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 -4503599627370497LL : 0xf.fffffffffd3a37bp-4 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 -4503599627370497LL : 0xf.fffffffffd3a37ap-4 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 -4503599627370497LL : 0xf.fffffffffd3a37ap-4 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 -4503599627370497LL : 0xf.fffffffffd3a37ap-4 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 -4503599627370497LL : 0xf.fffffffffd3a37bp-4 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 -4503599627370497LL : 0xf.fffffffffd3a37a020b8ffc53158p-4 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 -4503599627370497LL : 0xf.fffffffffd3a37a020b8ffc5316p-4 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 -4503599627370497LL : 0xf.fffffffffd3a37a020b8ffc53158p-4 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 -4503599627370497LL : 0xf.fffffffffd3a37a020b8ffc5316p-4 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 -4503599627370497LL : 0xf.fffffffffd3a37a020b8ffc53p-4 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 -4503599627370497LL : 0xf.fffffffffd3a37a020b8ffc53p-4 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 -4503599627370497LL : 0xf.fffffffffd3a37a020b8ffc53p-4 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 -4503599627370497LL : 0xf.fffffffffd3a37a020b8ffc534p-4 : inexact-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 -4503599627370497LL : 0xf.ffffffffd3a37ap-4 : inexact-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 -4503599627370497LL : 0xf.ffffffffd3a37ap-4 : inexact-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 -4503599627370497LL : 0xf.ffffffffd3a37ap-4 : inexact-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 -4503599627370497LL : 0xf.ffffffffd3a37a1p-4 : inexact-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 -4503599627370497LL : 0xf.ffffffffd3a37ap-4 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 -4503599627370497LL : 0xf.ffffffffd3a37ap-4 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 -4503599627370497LL : 0xf.ffffffffd3a37ap-4 : inexact-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 -4503599627370497LL : 0xf.ffffffffd3a37a1p-4 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 -4503599627370497LL : 0xf.ffffffffd3a37a020bc9a3d6d4e8p-4 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 -4503599627370497LL : 0xf.ffffffffd3a37a020bc9a3d6d4fp-4 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 -4503599627370497LL : 0xf.ffffffffd3a37a020bc9a3d6d4e8p-4 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 -4503599627370497LL : 0xf.ffffffffd3a37a020bc9a3d6d4fp-4 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -4503599627370497LL : 0xf.ffffffffd3a37a020bc9a3d6d4e8p-4 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 -4503599627370497LL : 0xf.ffffffffd3a37a020bc9a3d6d4fp-4 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 -4503599627370497LL : 0xf.ffffffffd3a37a020bc9a3d6d4e8p-4 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -4503599627370497LL : 0xf.ffffffffd3a37a020bc9a3d6d4fp-4 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -4503599627370497LL : 0xf.fffffffffd3a37a020b8ffc52d58p-4 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 -4503599627370497LL : 0xf.fffffffffd3a37a020b8ffc52d6p-4 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 -4503599627370497LL : 0xf.fffffffffd3a37a020b8ffc52d58p-4 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -4503599627370497LL : 0xf.fffffffffd3a37a020b8ffc52d6p-4 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -4503599627370497LL : 0xf.fffffffffd3a37a020b8ffc52cp-4 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -4503599627370497LL : 0xf.fffffffffd3a37a020b8ffc52cp-4 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -4503599627370497LL : 0xf.fffffffffd3a37a020b8ffc52cp-4 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -4503599627370497LL : 0xf.fffffffffd3a37a020b8ffc53p-4 : inexact-ok
+rootn max -0x7fffffffffffffff
+= rootn downward binary32 0xf.fffffp+124 -9223372036854775807LL : 0xf.fffffp-4 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 -9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 -9223372036854775807LL : 0xf.fffffp-4 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 -9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 -9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 -9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 -9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 -9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 -9223372036854775807LL : 0xf.fffffffffffff4ep-4 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 -9223372036854775807LL : 0xf.fffffffffffff4fp-4 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 -9223372036854775807LL : 0xf.fffffffffffff4ep-4 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 -9223372036854775807LL : 0xf.fffffffffffff4fp-4 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 -9223372036854775807LL : 0xf.fffffffffffff4ep-4 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 -9223372036854775807LL : 0xf.fffffffffffff4fp-4 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 -9223372036854775807LL : 0xf.fffffffffffff4ep-4 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 -9223372036854775807LL : 0xf.fffffffffffff4fp-4 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 -9223372036854775807LL : 0xf.fffffffffffff4e8de80a2e30878p-4 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 -9223372036854775807LL : 0xf.fffffffffffff4e8de80a2e30878p-4 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 -9223372036854775807LL : 0xf.fffffffffffff4e8de80a2e30878p-4 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 -9223372036854775807LL : 0xf.fffffffffffff4e8de80a2e3088p-4 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 -9223372036854775807LL : 0xf.fffffffffffff4e8de80a2e308p-4 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 -9223372036854775807LL : 0xf.fffffffffffff4e8de80a2e308p-4 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 -9223372036854775807LL : 0xf.fffffffffffff4e8de80a2e308p-4 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 -9223372036854775807LL : 0xf.fffffffffffff4e8de80a2e30cp-4 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 -9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 -9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 -9223372036854775807LL : 0xf.ffffffffffff8p-4 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 -9223372036854775807LL : 0x1p+0 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 -9223372036854775807LL : 0xf.ffffffffffffa74p-4 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 -9223372036854775807LL : 0xf.ffffffffffffa74p-4 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 -9223372036854775807LL : 0xf.ffffffffffffa74p-4 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 -9223372036854775807LL : 0xf.ffffffffffffa75p-4 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 -9223372036854775807LL : 0xf.ffffffffffffa74p-4 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 -9223372036854775807LL : 0xf.ffffffffffffa74p-4 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 -9223372036854775807LL : 0xf.ffffffffffffa74p-4 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 -9223372036854775807LL : 0xf.ffffffffffffa75p-4 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 -9223372036854775807LL : 0xf.ffffffffffffa746f4041718442p-4 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 -9223372036854775807LL : 0xf.ffffffffffffa746f4041718442p-4 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 -9223372036854775807LL : 0xf.ffffffffffffa746f4041718442p-4 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 -9223372036854775807LL : 0xf.ffffffffffffa746f40417184428p-4 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 -9223372036854775807LL : 0xf.ffffffffffffa746f404171844p-4 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 -9223372036854775807LL : 0xf.ffffffffffffa746f404171844p-4 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 -9223372036854775807LL : 0xf.ffffffffffffa746f404171844p-4 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 -9223372036854775807LL : 0xf.ffffffffffffa746f404171848p-4 : inexact-ok
+= rootn downward intel96 0xf.fffffffffffffffp+16380 -9223372036854775807LL : 0xf.fffffffffffa746p-4 : inexact-ok
+= rootn tonearest intel96 0xf.fffffffffffffffp+16380 -9223372036854775807LL : 0xf.fffffffffffa747p-4 : inexact-ok
+= rootn towardzero intel96 0xf.fffffffffffffffp+16380 -9223372036854775807LL : 0xf.fffffffffffa746p-4 : inexact-ok
+= rootn upward intel96 0xf.fffffffffffffffp+16380 -9223372036854775807LL : 0xf.fffffffffffa747p-4 : inexact-ok
+= rootn downward m68k96 0xf.fffffffffffffffp+16380 -9223372036854775807LL : 0xf.fffffffffffa746p-4 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffffffffffffp+16380 -9223372036854775807LL : 0xf.fffffffffffa747p-4 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffffffffffffp+16380 -9223372036854775807LL : 0xf.fffffffffffa746p-4 : inexact-ok
+= rootn upward m68k96 0xf.fffffffffffffffp+16380 -9223372036854775807LL : 0xf.fffffffffffa747p-4 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffp+16380 -9223372036854775807LL : 0xf.fffffffffffa746f40417185289p-4 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffp+16380 -9223372036854775807LL : 0xf.fffffffffffa746f404171852898p-4 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffp+16380 -9223372036854775807LL : 0xf.fffffffffffa746f40417185289p-4 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffp+16380 -9223372036854775807LL : 0xf.fffffffffffa746f404171852898p-4 : inexact-ok
+= rootn downward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -9223372036854775807LL : 0xf.fffffffffffa746f40417185289p-4 : inexact-ok
+= rootn tonearest binary128 0xf.fffffffffffffffffffffffffff8p+16380 -9223372036854775807LL : 0xf.fffffffffffa746f404171852898p-4 : inexact-ok
+= rootn towardzero binary128 0xf.fffffffffffffffffffffffffff8p+16380 -9223372036854775807LL : 0xf.fffffffffffa746f40417185289p-4 : inexact-ok
+= rootn upward binary128 0xf.fffffffffffffffffffffffffff8p+16380 -9223372036854775807LL : 0xf.fffffffffffa746f404171852898p-4 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -9223372036854775807LL : 0xf.ffffffffffffa746f40417184418p-4 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 -9223372036854775807LL : 0xf.ffffffffffffa746f4041718442p-4 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 -9223372036854775807LL : 0xf.ffffffffffffa746f40417184418p-4 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -9223372036854775807LL : 0xf.ffffffffffffa746f4041718442p-4 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -9223372036854775807LL : 0xf.ffffffffffffa746f404171844p-4 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -9223372036854775807LL : 0xf.ffffffffffffa746f404171844p-4 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -9223372036854775807LL : 0xf.ffffffffffffa746f404171844p-4 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -9223372036854775807LL : 0xf.ffffffffffffa746f404171848p-4 : inexact-ok
+rootn -max -1
+= rootn downward binary32 -0xf.fffffp+124 -1LL : -0x1.000008p-128 : inexact-ok underflow errno-erange-ok
+= rootn tonearest binary32 -0xf.fffffp+124 -1LL : -0x1p-128 : inexact-ok underflow errno-erange-ok
+= rootn towardzero binary32 -0xf.fffffp+124 -1LL : -0x1p-128 : inexact-ok underflow errno-erange-ok
+= rootn upward binary32 -0xf.fffffp+124 -1LL : -0x1p-128 : inexact-ok underflow errno-erange-ok
+= rootn downward binary64 -0xf.fffffp+124 -1LL : -0x1.0000010000011p-128 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 -1LL : -0x1.000001000001p-128 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 -1LL : -0x1.000001000001p-128 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 -1LL : -0x1.000001000001p-128 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 -1LL : -0x1.0000010000010002p-128 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 -1LL : -0x1.000001000001p-128 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 -1LL : -0x1.000001000001p-128 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 -1LL : -0x1.000001000001p-128 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 -1LL : -0x1.0000010000010002p-128 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 -1LL : -0x1.000001000001p-128 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 -1LL : -0x1.000001000001p-128 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 -1LL : -0x1.000001000001p-128 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 -1LL : -0x1.0000010000010000010000010001p-128 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 -1LL : -0x1.000001000001000001000001p-128 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 -1LL : -0x1.000001000001000001000001p-128 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 -1LL : -0x1.000001000001000001000001p-128 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 -1LL : -0x1.000001000001000001000001008p-128 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 -1LL : -0x1.000001000001000001000001p-128 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 -1LL : -0x1.000001000001000001000001p-128 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 -1LL : -0x1.000001000001000001000001p-128 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 -1LL : -0x1.0000000000004p-1024 : inexact-ok underflow errno-erange-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 -1LL : -0x1p-1024 : inexact-ok underflow errno-erange-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 -1LL : -0x1p-1024 : inexact-ok underflow errno-erange-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 -1LL : -0x1p-1024 : inexact-ok underflow errno-erange-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 -1LL : -0x1.0000000000000802p-1024 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 -1LL : -0x1.00000000000008p-1024 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 -1LL : -0x1.00000000000008p-1024 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 -1LL : -0x1.00000000000008p-1024 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 -1LL : -0x1.0000000000000802p-1024 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 -1LL : -0x1.00000000000008p-1024 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 -1LL : -0x1.00000000000008p-1024 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 -1LL : -0x1.00000000000008p-1024 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 -1LL : -0x1.0000000000000800000000000041p-1024 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 -1LL : -0x1.000000000000080000000000004p-1024 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 -1LL : -0x1.000000000000080000000000004p-1024 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 -1LL : -0x1.000000000000080000000000004p-1024 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 -1LL : -0x1.0000000000004p-1024 : inexact-ok underflow errno-erange-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 -1LL : -0x1p-1024 : inexact-ok underflow errno-erange-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 -1LL : -0x1p-1024 : inexact-ok underflow errno-erange-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 -1LL : -0x1p-1024 : inexact-ok underflow errno-erange-ok
+= rootn downward intel96 -0xf.fffffffffffffffp+16380 -1LL : -0x1.0000000000000008p-16384 : inexact-ok underflow errno-erange-ok
+= rootn tonearest intel96 -0xf.fffffffffffffffp+16380 -1LL : -0x1p-16384 : inexact-ok underflow errno-erange-ok
+= rootn towardzero intel96 -0xf.fffffffffffffffp+16380 -1LL : -0x1p-16384 : inexact-ok underflow errno-erange-ok
+= rootn upward intel96 -0xf.fffffffffffffffp+16380 -1LL : -0x1p-16384 : inexact-ok underflow errno-erange-ok
+= rootn downward m68k96 -0xf.fffffffffffffffp+16380 -1LL : -0x1.0000000000000004p-16384 : inexact-ok underflow errno-erange-ok
+= rootn tonearest m68k96 -0xf.fffffffffffffffp+16380 -1LL : -0x1p-16384 : inexact-ok underflow errno-erange-ok
+= rootn towardzero m68k96 -0xf.fffffffffffffffp+16380 -1LL : -0x1p-16384 : inexact-ok underflow errno-erange-ok
+= rootn upward m68k96 -0xf.fffffffffffffffp+16380 -1LL : -0x1p-16384 : inexact-ok underflow errno-erange-ok
+= rootn downward binary128 -0xf.fffffffffffffffp+16380 -1LL : -0x1.0000000000000001000000000004p-16384 : inexact-ok underflow errno-erange-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffp+16380 -1LL : -0x1.0000000000000001p-16384 : inexact-ok underflow errno-erange-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffp+16380 -1LL : -0x1.0000000000000001p-16384 : inexact-ok underflow errno-erange-ok
+= rootn upward binary128 -0xf.fffffffffffffffp+16380 -1LL : -0x1.0000000000000001p-16384 : inexact-ok underflow errno-erange-ok
+= rootn downward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -1LL : -0x1.0000000000000000000000000004p-16384 : inexact-ok underflow errno-erange-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -1LL : -0x1p-16384 : inexact-ok underflow errno-erange-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -1LL : -0x1p-16384 : inexact-ok underflow errno-erange-ok
+= rootn upward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -1LL : -0x1p-16384 : inexact-ok underflow errno-erange-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -1LL : -0x1.0000000000000400000000000051p-1024 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -1LL : -0x1.000000000000040000000000005p-1024 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -1LL : -0x1.000000000000040000000000005p-1024 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -1LL : -0x1.000000000000040000000000005p-1024 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -1LL : -0x1.0000000000004p-1024 : inexact-ok underflow errno-erange-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -1LL : -0x1p-1024 : inexact-ok underflow errno-erange-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -1LL : -0x1p-1024 : inexact-ok underflow errno-erange-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -1LL : -0x1p-1024 : inexact-ok underflow errno-erange-ok
+rootn -max -3
+= rootn downward binary32 -0xf.fffffp+124 -3LL : -0x2.851464p-44 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 -3LL : -0x2.85146p-44 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 -3LL : -0x2.85146p-44 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 -3LL : -0x2.85146p-44 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 -3LL : -0x2.85146008b51c6p-44 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 -3LL : -0x2.85146008b51c6p-44 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 -3LL : -0x2.85146008b51c4p-44 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 -3LL : -0x2.85146008b51c4p-44 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 -3LL : -0x2.85146008b51c5184p-44 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 -3LL : -0x2.85146008b51c5184p-44 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 -3LL : -0x2.85146008b51c518p-44 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 -3LL : -0x2.85146008b51c518p-44 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 -3LL : -0x2.85146008b51c5184p-44 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 -3LL : -0x2.85146008b51c5184p-44 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 -3LL : -0x2.85146008b51c518p-44 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 -3LL : -0x2.85146008b51c518p-44 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 -3LL : -0x2.85146008b51c51831e3246f609bp-44 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 -3LL : -0x2.85146008b51c51831e3246f609aep-44 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 -3LL : -0x2.85146008b51c51831e3246f609aep-44 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 -3LL : -0x2.85146008b51c51831e3246f609aep-44 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 -3LL : -0x2.85146008b51c51831e3246f60ap-44 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 -3LL : -0x2.85146008b51c51831e3246f60ap-44 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 -3LL : -0x2.85146008b51c51831e3246f609p-44 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 -3LL : -0x2.85146008b51c51831e3246f609p-44 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 -3LL : -0x6.597fa94f5b8f4p-344 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 -3LL : -0x6.597fa94f5b8f4p-344 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 -3LL : -0x6.597fa94f5b8fp-344 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 -3LL : -0x6.597fa94f5b8fp-344 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 -3LL : -0x6.597fa94f5b8f31ap-344 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 -3LL : -0x6.597fa94f5b8f3198p-344 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 -3LL : -0x6.597fa94f5b8f3198p-344 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 -3LL : -0x6.597fa94f5b8f3198p-344 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 -3LL : -0x6.597fa94f5b8f31ap-344 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 -3LL : -0x6.597fa94f5b8f3198p-344 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 -3LL : -0x6.597fa94f5b8f3198p-344 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 -3LL : -0x6.597fa94f5b8f3198p-344 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 -3LL : -0x6.597fa94f5b8f319ac029e91a751cp-344 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 -3LL : -0x6.597fa94f5b8f319ac029e91a751cp-344 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 -3LL : -0x6.597fa94f5b8f319ac029e91a7518p-344 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 -3LL : -0x6.597fa94f5b8f319ac029e91a7518p-344 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 -3LL : -0x6.597fa94f5b8f319ac029e91a76p-344 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 -3LL : -0x6.597fa94f5b8f319ac029e91a76p-344 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 -3LL : -0x6.597fa94f5b8f319ac029e91a74p-344 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 -3LL : -0x6.597fa94f5b8f319ac029e91a74p-344 : inexact-ok
+= rootn downward intel96 -0xf.fffffffffffffffp+16380 -3LL : -0x6.597fa94f5b8f20bp-5464 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffffffffffffp+16380 -3LL : -0x6.597fa94f5b8f20bp-5464 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffffffffffffp+16380 -3LL : -0x6.597fa94f5b8f20a8p-5464 : inexact-ok
+= rootn upward intel96 -0xf.fffffffffffffffp+16380 -3LL : -0x6.597fa94f5b8f20a8p-5464 : inexact-ok
+= rootn downward m68k96 -0xf.fffffffffffffffp+16380 -3LL : -0x6.597fa94f5b8f20bp-5464 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffffffffffffp+16380 -3LL : -0x6.597fa94f5b8f20bp-5464 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffffffffffffp+16380 -3LL : -0x6.597fa94f5b8f20a8p-5464 : inexact-ok
+= rootn upward m68k96 -0xf.fffffffffffffffp+16380 -3LL : -0x6.597fa94f5b8f20a8p-5464 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffp+16380 -3LL : -0x6.597fa94f5b8f20ae343ba340c044p-5464 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffp+16380 -3LL : -0x6.597fa94f5b8f20ae343ba340c044p-5464 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffp+16380 -3LL : -0x6.597fa94f5b8f20ae343ba340c04p-5464 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffp+16380 -3LL : -0x6.597fa94f5b8f20ae343ba340c04p-5464 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -3LL : -0x6.597fa94f5b8f20ac16666ad0f718p-5464 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -3LL : -0x6.597fa94f5b8f20ac16666ad0f714p-5464 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -3LL : -0x6.597fa94f5b8f20ac16666ad0f714p-5464 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -3LL : -0x6.597fa94f5b8f20ac16666ad0f714p-5464 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -3LL : -0x6.597fa94f5b8f29236b4829f5b688p-344 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -3LL : -0x6.597fa94f5b8f29236b4829f5b688p-344 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -3LL : -0x6.597fa94f5b8f29236b4829f5b684p-344 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -3LL : -0x6.597fa94f5b8f29236b4829f5b684p-344 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -3LL : -0x6.597fa94f5b8f29236b4829f5b8p-344 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -3LL : -0x6.597fa94f5b8f29236b4829f5b6p-344 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -3LL : -0x6.597fa94f5b8f29236b4829f5b6p-344 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -3LL : -0x6.597fa94f5b8f29236b4829f5b6p-344 : inexact-ok
+rootn -max -5
+= rootn downward binary32 -0xf.fffffp+124 -5LL : -0x5.472d18p-28 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 -5LL : -0x5.472d18p-28 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 -5LL : -0x5.472d1p-28 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 -5LL : -0x5.472d1p-28 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 -5LL : -0x5.472d15fc91134p-28 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 -5LL : -0x5.472d15fc9113p-28 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 -5LL : -0x5.472d15fc9113p-28 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 -5LL : -0x5.472d15fc9113p-28 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 -5LL : -0x5.472d15fc9113166p-28 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 -5LL : -0x5.472d15fc9113166p-28 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 -5LL : -0x5.472d15fc91131658p-28 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 -5LL : -0x5.472d15fc91131658p-28 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 -5LL : -0x5.472d15fc9113166p-28 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 -5LL : -0x5.472d15fc9113166p-28 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 -5LL : -0x5.472d15fc91131658p-28 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 -5LL : -0x5.472d15fc91131658p-28 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 -5LL : -0x5.472d15fc9113165c35bd35b83674p-28 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 -5LL : -0x5.472d15fc9113165c35bd35b83674p-28 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 -5LL : -0x5.472d15fc9113165c35bd35b8367p-28 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 -5LL : -0x5.472d15fc9113165c35bd35b8367p-28 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 -5LL : -0x5.472d15fc9113165c35bd35b838p-28 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 -5LL : -0x5.472d15fc9113165c35bd35b836p-28 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 -5LL : -0x5.472d15fc9113165c35bd35b836p-28 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 -5LL : -0x5.472d15fc9113165c35bd35b836p-28 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 -5LL : -0x9.3088c35d733a8p-208 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 -5LL : -0x9.3088c35d733a8p-208 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 -5LL : -0x9.3088c35d733ap-208 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 -5LL : -0x9.3088c35d733ap-208 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 -5LL : -0x9.3088c35d733a5a1p-208 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 -5LL : -0x9.3088c35d733a5ap-208 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 -5LL : -0x9.3088c35d733a5ap-208 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 -5LL : -0x9.3088c35d733a5ap-208 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 -5LL : -0x9.3088c35d733a5a1p-208 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 -5LL : -0x9.3088c35d733a5ap-208 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 -5LL : -0x9.3088c35d733a5ap-208 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 -5LL : -0x9.3088c35d733a5ap-208 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 -5LL : -0x9.3088c35d733a5a069ef7728cfe38p-208 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 -5LL : -0x9.3088c35d733a5a069ef7728cfe38p-208 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 -5LL : -0x9.3088c35d733a5a069ef7728cfe3p-208 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 -5LL : -0x9.3088c35d733a5a069ef7728cfe3p-208 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 -5LL : -0x9.3088c35d733a5a069ef7728dp-208 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 -5LL : -0x9.3088c35d733a5a069ef7728dp-208 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 -5LL : -0x9.3088c35d733a5a069ef7728cfcp-208 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 -5LL : -0x9.3088c35d733a5a069ef7728cfcp-208 : inexact-ok
+= rootn downward intel96 -0xf.fffffffffffffffp+16380 -5LL : -0x9.3088c35d733a4b6p-3280 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffffffffffffp+16380 -5LL : -0x9.3088c35d733a4b5p-3280 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffffffffffffp+16380 -5LL : -0x9.3088c35d733a4b5p-3280 : inexact-ok
+= rootn upward intel96 -0xf.fffffffffffffffp+16380 -5LL : -0x9.3088c35d733a4b5p-3280 : inexact-ok
+= rootn downward m68k96 -0xf.fffffffffffffffp+16380 -5LL : -0x9.3088c35d733a4b6p-3280 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffffffffffffp+16380 -5LL : -0x9.3088c35d733a4b5p-3280 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffffffffffffp+16380 -5LL : -0x9.3088c35d733a4b5p-3280 : inexact-ok
+= rootn upward m68k96 -0xf.fffffffffffffffp+16380 -5LL : -0x9.3088c35d733a4b5p-3280 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffp+16380 -5LL : -0x9.3088c35d733a4b546773d0e7515p-3280 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffp+16380 -5LL : -0x9.3088c35d733a4b546773d0e7515p-3280 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffp+16380 -5LL : -0x9.3088c35d733a4b546773d0e75148p-3280 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffp+16380 -5LL : -0x9.3088c35d733a4b546773d0e75148p-3280 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -5LL : -0x9.3088c35d733a4b5290f2103b0718p-3280 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -5LL : -0x9.3088c35d733a4b5290f2103b071p-3280 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -5LL : -0x9.3088c35d733a4b5290f2103b071p-3280 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -5LL : -0x9.3088c35d733a4b5290f2103b071p-3280 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -5LL : -0x9.3088c35d733a52ac97f4c1640308p-208 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -5LL : -0x9.3088c35d733a52ac97f4c1640308p-208 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -5LL : -0x9.3088c35d733a52ac97f4c16403p-208 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -5LL : -0x9.3088c35d733a52ac97f4c16403p-208 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -5LL : -0x9.3088c35d733a52ac97f4c16404p-208 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -5LL : -0x9.3088c35d733a52ac97f4c16404p-208 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -5LL : -0x9.3088c35d733a52ac97f4c164p-208 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -5LL : -0x9.3088c35d733a52ac97f4c164p-208 : inexact-ok
+rootn -max -63
+= rootn downward binary32 -0xf.fffffp+124 -63LL : -0x3.e9b6ap-4 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 -63LL : -0x3.e9b69cp-4 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 -63LL : -0x3.e9b69cp-4 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 -63LL : -0x3.e9b69cp-4 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 -63LL : -0x3.e9b69c3845b8ep-4 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 -63LL : -0x3.e9b69c3845b8ep-4 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 -63LL : -0x3.e9b69c3845b8cp-4 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 -63LL : -0x3.e9b69c3845b8cp-4 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 -63LL : -0x3.e9b69c3845b8d838p-4 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 -63LL : -0x3.e9b69c3845b8d838p-4 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 -63LL : -0x3.e9b69c3845b8d834p-4 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 -63LL : -0x3.e9b69c3845b8d834p-4 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 -63LL : -0x3.e9b69c3845b8d838p-4 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 -63LL : -0x3.e9b69c3845b8d838p-4 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 -63LL : -0x3.e9b69c3845b8d834p-4 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 -63LL : -0x3.e9b69c3845b8d834p-4 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 -63LL : -0x3.e9b69c3845b8d836a422c730b326p-4 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 -63LL : -0x3.e9b69c3845b8d836a422c730b324p-4 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 -63LL : -0x3.e9b69c3845b8d836a422c730b324p-4 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 -63LL : -0x3.e9b69c3845b8d836a422c730b324p-4 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 -63LL : -0x3.e9b69c3845b8d836a422c730b4p-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 -63LL : -0x3.e9b69c3845b8d836a422c730b3p-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 -63LL : -0x3.e9b69c3845b8d836a422c730b3p-4 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 -63LL : -0x3.e9b69c3845b8d836a422c730b3p-4 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 -63LL : -0xd.6ad9d250b63dp-20 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 -63LL : -0xd.6ad9d250b63c8p-20 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 -63LL : -0xd.6ad9d250b63c8p-20 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 -63LL : -0xd.6ad9d250b63c8p-20 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 -63LL : -0xd.6ad9d250b63ca95p-20 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 -63LL : -0xd.6ad9d250b63ca95p-20 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 -63LL : -0xd.6ad9d250b63ca94p-20 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 -63LL : -0xd.6ad9d250b63ca94p-20 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 -63LL : -0xd.6ad9d250b63ca95p-20 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 -63LL : -0xd.6ad9d250b63ca95p-20 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 -63LL : -0xd.6ad9d250b63ca94p-20 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 -63LL : -0xd.6ad9d250b63ca94p-20 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 -63LL : -0xd.6ad9d250b63ca94f07cd1793ab8p-20 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 -63LL : -0xd.6ad9d250b63ca94f07cd1793ab8p-20 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 -63LL : -0xd.6ad9d250b63ca94f07cd1793ab78p-20 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 -63LL : -0xd.6ad9d250b63ca94f07cd1793ab78p-20 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 -63LL : -0xd.6ad9d250b63ca94f07cd1793acp-20 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 -63LL : -0xd.6ad9d250b63ca94f07cd1793acp-20 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 -63LL : -0xd.6ad9d250b63ca94f07cd1793a8p-20 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 -63LL : -0xd.6ad9d250b63ca94f07cd1793a8p-20 : inexact-ok
+= rootn downward intel96 -0xf.fffffffffffffffp+16380 -63LL : -0xf.4fa5937621aed24p-264 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffffffffffffp+16380 -63LL : -0xf.4fa5937621aed23p-264 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffffffffffffp+16380 -63LL : -0xf.4fa5937621aed23p-264 : inexact-ok
+= rootn upward intel96 -0xf.fffffffffffffffp+16380 -63LL : -0xf.4fa5937621aed23p-264 : inexact-ok
+= rootn downward m68k96 -0xf.fffffffffffffffp+16380 -63LL : -0xf.4fa5937621aed24p-264 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffffffffffffp+16380 -63LL : -0xf.4fa5937621aed23p-264 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffffffffffffp+16380 -63LL : -0xf.4fa5937621aed23p-264 : inexact-ok
+= rootn upward m68k96 -0xf.fffffffffffffffp+16380 -63LL : -0xf.4fa5937621aed23p-264 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffp+16380 -63LL : -0xf.4fa5937621aed23224859b01db2p-264 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffp+16380 -63LL : -0xf.4fa5937621aed23224859b01db18p-264 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffp+16380 -63LL : -0xf.4fa5937621aed23224859b01db18p-264 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffp+16380 -63LL : -0xf.4fa5937621aed23224859b01db18p-264 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -63LL : -0xf.4fa5937621aed231e64e26e3895p-264 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -63LL : -0xf.4fa5937621aed231e64e26e3895p-264 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -63LL : -0xf.4fa5937621aed231e64e26e38948p-264 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -63LL : -0xf.4fa5937621aed231e64e26e38948p-264 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -63LL : -0xd.6ad9d250b63ca874f1d81ea48b4p-20 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -63LL : -0xd.6ad9d250b63ca874f1d81ea48b38p-20 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -63LL : -0xd.6ad9d250b63ca874f1d81ea48b38p-20 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -63LL : -0xd.6ad9d250b63ca874f1d81ea48b38p-20 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -63LL : -0xd.6ad9d250b63ca874f1d81ea48cp-20 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -63LL : -0xd.6ad9d250b63ca874f1d81ea48cp-20 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -63LL : -0xd.6ad9d250b63ca874f1d81ea488p-20 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -63LL : -0xd.6ad9d250b63ca874f1d81ea488p-20 : inexact-ok
+rootn -max -127
+= rootn downward binary32 -0xf.fffffp+124 -127LL : -0x7.f4da5p-4 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 -127LL : -0x7.f4da5p-4 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 -127LL : -0x7.f4da48p-4 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 -127LL : -0x7.f4da48p-4 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 -127LL : -0x7.f4da4f024e6d8p-4 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 -127LL : -0x7.f4da4f024e6d4p-4 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 -127LL : -0x7.f4da4f024e6d4p-4 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 -127LL : -0x7.f4da4f024e6d4p-4 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 -127LL : -0x7.f4da4f024e6d5ad8p-4 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 -127LL : -0x7.f4da4f024e6d5adp-4 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 -127LL : -0x7.f4da4f024e6d5adp-4 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 -127LL : -0x7.f4da4f024e6d5adp-4 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 -127LL : -0x7.f4da4f024e6d5ad8p-4 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 -127LL : -0x7.f4da4f024e6d5adp-4 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 -127LL : -0x7.f4da4f024e6d5adp-4 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 -127LL : -0x7.f4da4f024e6d5adp-4 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 -127LL : -0x7.f4da4f024e6d5ad300df57d4eb48p-4 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 -127LL : -0x7.f4da4f024e6d5ad300df57d4eb48p-4 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 -127LL : -0x7.f4da4f024e6d5ad300df57d4eb44p-4 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 -127LL : -0x7.f4da4f024e6d5ad300df57d4eb44p-4 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 -127LL : -0x7.f4da4f024e6d5ad300df57d4ecp-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 -127LL : -0x7.f4da4f024e6d5ad300df57d4ecp-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 -127LL : -0x7.f4da4f024e6d5ad300df57d4eap-4 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 -127LL : -0x7.f4da4f024e6d5ad300df57d4eap-4 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 -127LL : -0xf.51015ae164398p-12 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 -127LL : -0xf.51015ae16439p-12 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 -127LL : -0xf.51015ae16439p-12 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 -127LL : -0xf.51015ae16439p-12 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 -127LL : -0xf.51015ae1643933ep-12 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 -127LL : -0xf.51015ae1643933dp-12 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 -127LL : -0xf.51015ae1643933dp-12 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 -127LL : -0xf.51015ae1643933dp-12 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 -127LL : -0xf.51015ae1643933ep-12 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 -127LL : -0xf.51015ae1643933dp-12 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 -127LL : -0xf.51015ae1643933dp-12 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 -127LL : -0xf.51015ae1643933dp-12 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 -127LL : -0xf.51015ae1643933d33140fde60d28p-12 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 -127LL : -0xf.51015ae1643933d33140fde60d28p-12 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 -127LL : -0xf.51015ae1643933d33140fde60d2p-12 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 -127LL : -0xf.51015ae1643933d33140fde60d2p-12 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 -127LL : -0xf.51015ae1643933d33140fde61p-12 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 -127LL : -0xf.51015ae1643933d33140fde60cp-12 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 -127LL : -0xf.51015ae1643933d33140fde60cp-12 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 -127LL : -0xf.51015ae1643933d33140fde60cp-12 : inexact-ok
+= rootn downward intel96 -0xf.fffffffffffffffp+16380 -127LL : -0x7.f4da4ef244a5248p-132 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffffffffffffp+16380 -127LL : -0x7.f4da4ef244a5248p-132 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffffffffffffp+16380 -127LL : -0x7.f4da4ef244a52478p-132 : inexact-ok
+= rootn upward intel96 -0xf.fffffffffffffffp+16380 -127LL : -0x7.f4da4ef244a52478p-132 : inexact-ok
+= rootn downward m68k96 -0xf.fffffffffffffffp+16380 -127LL : -0x7.f4da4ef244a5248p-132 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffffffffffffp+16380 -127LL : -0x7.f4da4ef244a5248p-132 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffffffffffffp+16380 -127LL : -0x7.f4da4ef244a52478p-132 : inexact-ok
+= rootn upward m68k96 -0xf.fffffffffffffffp+16380 -127LL : -0x7.f4da4ef244a52478p-132 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffp+16380 -127LL : -0x7.f4da4ef244a5247cf74f24915758p-132 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffp+16380 -127LL : -0x7.f4da4ef244a5247cf74f24915758p-132 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffp+16380 -127LL : -0x7.f4da4ef244a5247cf74f24915754p-132 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffp+16380 -127LL : -0x7.f4da4ef244a5247cf74f24915754p-132 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -127LL : -0x7.f4da4ef244a5247ce7455c63164cp-132 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -127LL : -0x7.f4da4ef244a5247ce7455c63164cp-132 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -127LL : -0x7.f4da4ef244a5247ce7455c631648p-132 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -127LL : -0x7.f4da4ef244a5247ce7455c631648p-132 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -127LL : -0xf.51015ae164393357b238150931bp-12 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -127LL : -0xf.51015ae164393357b238150931a8p-12 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -127LL : -0xf.51015ae164393357b238150931a8p-12 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -127LL : -0xf.51015ae164393357b238150931a8p-12 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -127LL : -0xf.51015ae164393357b238150934p-12 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -127LL : -0xf.51015ae164393357b23815093p-12 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -127LL : -0xf.51015ae164393357b23815093p-12 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -127LL : -0xf.51015ae164393357b23815093p-12 : inexact-ok
+rootn -max -255
+= rootn downward binary32 -0xf.fffffp+124 -255LL : -0xb.4c603p-4 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 -255LL : -0xb.4c603p-4 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 -255LL : -0xb.4c602p-4 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 -255LL : -0xb.4c602p-4 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 -255LL : -0xb.4c602a02eb9c8p-4 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 -255LL : -0xb.4c602a02eb9cp-4 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 -255LL : -0xb.4c602a02eb9cp-4 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 -255LL : -0xb.4c602a02eb9cp-4 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 -255LL : -0xb.4c602a02eb9c2a6p-4 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 -255LL : -0xb.4c602a02eb9c2a5p-4 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 -255LL : -0xb.4c602a02eb9c2a5p-4 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 -255LL : -0xb.4c602a02eb9c2a5p-4 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 -255LL : -0xb.4c602a02eb9c2a6p-4 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 -255LL : -0xb.4c602a02eb9c2a5p-4 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 -255LL : -0xb.4c602a02eb9c2a5p-4 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 -255LL : -0xb.4c602a02eb9c2a5p-4 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 -255LL : -0xb.4c602a02eb9c2a56fdbf6f62f08p-4 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 -255LL : -0xb.4c602a02eb9c2a56fdbf6f62f078p-4 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 -255LL : -0xb.4c602a02eb9c2a56fdbf6f62f078p-4 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 -255LL : -0xb.4c602a02eb9c2a56fdbf6f62f078p-4 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 -255LL : -0xb.4c602a02eb9c2a56fdbf6f62f4p-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 -255LL : -0xb.4c602a02eb9c2a56fdbf6f62fp-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 -255LL : -0xb.4c602a02eb9c2a56fdbf6f62fp-4 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 -255LL : -0xb.4c602a02eb9c2a56fdbf6f62fp-4 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 -255LL : -0xf.d3b4b2cd6e4fp-8 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 -255LL : -0xf.d3b4b2cd6e4e8p-8 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 -255LL : -0xf.d3b4b2cd6e4e8p-8 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 -255LL : -0xf.d3b4b2cd6e4e8p-8 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 -255LL : -0xf.d3b4b2cd6e4e82fp-8 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 -255LL : -0xf.d3b4b2cd6e4e82ep-8 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 -255LL : -0xf.d3b4b2cd6e4e82ep-8 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 -255LL : -0xf.d3b4b2cd6e4e82ep-8 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 -255LL : -0xf.d3b4b2cd6e4e82fp-8 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 -255LL : -0xf.d3b4b2cd6e4e82ep-8 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 -255LL : -0xf.d3b4b2cd6e4e82ep-8 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 -255LL : -0xf.d3b4b2cd6e4e82ep-8 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 -255LL : -0xf.d3b4b2cd6e4e82e714b6c3d5c25p-8 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 -255LL : -0xf.d3b4b2cd6e4e82e714b6c3d5c25p-8 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 -255LL : -0xf.d3b4b2cd6e4e82e714b6c3d5c248p-8 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 -255LL : -0xf.d3b4b2cd6e4e82e714b6c3d5c248p-8 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 -255LL : -0xf.d3b4b2cd6e4e82e714b6c3d5c4p-8 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 -255LL : -0xf.d3b4b2cd6e4e82e714b6c3d5c4p-8 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 -255LL : -0xf.d3b4b2cd6e4e82e714b6c3d5cp-8 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 -255LL : -0xf.d3b4b2cd6e4e82e714b6c3d5cp-8 : inexact-ok
+= rootn downward intel96 -0xf.fffffffffffffffp+16380 -255LL : -0xd.71f8cf08af34832p-68 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffffffffffffp+16380 -255LL : -0xd.71f8cf08af34831p-68 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffffffffffffp+16380 -255LL : -0xd.71f8cf08af34831p-68 : inexact-ok
+= rootn upward intel96 -0xf.fffffffffffffffp+16380 -255LL : -0xd.71f8cf08af34831p-68 : inexact-ok
+= rootn downward m68k96 -0xf.fffffffffffffffp+16380 -255LL : -0xd.71f8cf08af34832p-68 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffffffffffffp+16380 -255LL : -0xd.71f8cf08af34831p-68 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffffffffffffp+16380 -255LL : -0xd.71f8cf08af34831p-68 : inexact-ok
+= rootn upward m68k96 -0xf.fffffffffffffffp+16380 -255LL : -0xd.71f8cf08af34831p-68 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffp+16380 -255LL : -0xd.71f8cf08af3483107dadb6dbd188p-68 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffp+16380 -255LL : -0xd.71f8cf08af3483107dadb6dbd18p-68 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffp+16380 -255LL : -0xd.71f8cf08af3483107dadb6dbd18p-68 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffp+16380 -255LL : -0xd.71f8cf08af3483107dadb6dbd18p-68 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -255LL : -0xd.71f8cf08af348310702e3e948188p-68 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -255LL : -0xd.71f8cf08af348310702e3e94818p-68 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -255LL : -0xd.71f8cf08af348310702e3e94818p-68 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -255LL : -0xd.71f8cf08af348310702e3e94818p-68 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -255LL : -0xf.d3b4b2cd6e4e82a786559773a7p-8 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -255LL : -0xf.d3b4b2cd6e4e82a786559773a6f8p-8 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -255LL : -0xf.d3b4b2cd6e4e82a786559773a6f8p-8 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -255LL : -0xf.d3b4b2cd6e4e82a786559773a6f8p-8 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -255LL : -0xf.d3b4b2cd6e4e82a786559773a8p-8 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -255LL : -0xf.d3b4b2cd6e4e82a786559773a8p-8 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -255LL : -0xf.d3b4b2cd6e4e82a786559773a4p-8 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -255LL : -0xf.d3b4b2cd6e4e82a786559773a4p-8 : inexact-ok
+rootn -max -511
+= rootn downward binary32 -0xf.fffffp+124 -511LL : -0xd.7324ep-4 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 -511LL : -0xd.7324dp-4 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 -511LL : -0xd.7324dp-4 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 -511LL : -0xd.7324dp-4 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 -511LL : -0xd.7324d6e5b1ca8p-4 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 -511LL : -0xd.7324d6e5b1ca8p-4 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 -511LL : -0xd.7324d6e5b1cap-4 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 -511LL : -0xd.7324d6e5b1cap-4 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 -511LL : -0xd.7324d6e5b1ca5c2p-4 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 -511LL : -0xd.7324d6e5b1ca5c1p-4 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 -511LL : -0xd.7324d6e5b1ca5c1p-4 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 -511LL : -0xd.7324d6e5b1ca5c1p-4 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 -511LL : -0xd.7324d6e5b1ca5c2p-4 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 -511LL : -0xd.7324d6e5b1ca5c1p-4 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 -511LL : -0xd.7324d6e5b1ca5c1p-4 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 -511LL : -0xd.7324d6e5b1ca5c1p-4 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 -511LL : -0xd.7324d6e5b1ca5c135dadeb0cc5a8p-4 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 -511LL : -0xd.7324d6e5b1ca5c135dadeb0cc5a8p-4 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 -511LL : -0xd.7324d6e5b1ca5c135dadeb0cc5ap-4 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 -511LL : -0xd.7324d6e5b1ca5c135dadeb0cc5ap-4 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 -511LL : -0xd.7324d6e5b1ca5c135dadeb0cc8p-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 -511LL : -0xd.7324d6e5b1ca5c135dadeb0cc4p-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 -511LL : -0xd.7324d6e5b1ca5c135dadeb0cc4p-4 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 -511LL : -0xd.7324d6e5b1ca5c135dadeb0cc4p-4 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 -511LL : -0x3.fd39cac5aaf5p-4 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 -511LL : -0x3.fd39cac5aaf4ep-4 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 -511LL : -0x3.fd39cac5aaf4ep-4 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 -511LL : -0x3.fd39cac5aaf4ep-4 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 -511LL : -0x3.fd39cac5aaf4e9a8p-4 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 -511LL : -0x3.fd39cac5aaf4e9a4p-4 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 -511LL : -0x3.fd39cac5aaf4e9a4p-4 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 -511LL : -0x3.fd39cac5aaf4e9a4p-4 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 -511LL : -0x3.fd39cac5aaf4e9a8p-4 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 -511LL : -0x3.fd39cac5aaf4e9a4p-4 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 -511LL : -0x3.fd39cac5aaf4e9a4p-4 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 -511LL : -0x3.fd39cac5aaf4e9a4p-4 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 -511LL : -0x3.fd39cac5aaf4e9a5e9b6e819e33p-4 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 -511LL : -0x3.fd39cac5aaf4e9a5e9b6e819e32ep-4 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 -511LL : -0x3.fd39cac5aaf4e9a5e9b6e819e32ep-4 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 -511LL : -0x3.fd39cac5aaf4e9a5e9b6e819e32ep-4 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 -511LL : -0x3.fd39cac5aaf4e9a5e9b6e819e4p-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 -511LL : -0x3.fd39cac5aaf4e9a5e9b6e819e3p-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 -511LL : -0x3.fd39cac5aaf4e9a5e9b6e819e3p-4 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 -511LL : -0x3.fd39cac5aaf4e9a5e9b6e819e3p-4 : inexact-ok
+= rootn downward intel96 -0xf.fffffffffffffffp+16380 -511LL : -0xf.5202b197df1293cp-36 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffffffffffffp+16380 -511LL : -0xf.5202b197df1293bp-36 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffffffffffffp+16380 -511LL : -0xf.5202b197df1293bp-36 : inexact-ok
+= rootn upward intel96 -0xf.fffffffffffffffp+16380 -511LL : -0xf.5202b197df1293bp-36 : inexact-ok
+= rootn downward m68k96 -0xf.fffffffffffffffp+16380 -511LL : -0xf.5202b197df1293cp-36 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffffffffffffp+16380 -511LL : -0xf.5202b197df1293bp-36 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffffffffffffp+16380 -511LL : -0xf.5202b197df1293bp-36 : inexact-ok
+= rootn upward m68k96 -0xf.fffffffffffffffp+16380 -511LL : -0xf.5202b197df1293bp-36 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffp+16380 -511LL : -0xf.5202b197df1293b2bd58b9452b48p-36 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffp+16380 -511LL : -0xf.5202b197df1293b2bd58b9452b48p-36 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffp+16380 -511LL : -0xf.5202b197df1293b2bd58b9452b4p-36 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffp+16380 -511LL : -0xf.5202b197df1293b2bd58b9452b4p-36 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -511LL : -0xf.5202b197df1293b2b5abe1807d08p-36 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -511LL : -0xf.5202b197df1293b2b5abe1807dp-36 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -511LL : -0xf.5202b197df1293b2b5abe1807dp-36 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -511LL : -0xf.5202b197df1293b2b5abe1807dp-36 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -511LL : -0x3.fd39cac5aaf4e99deb44192713dep-4 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -511LL : -0x3.fd39cac5aaf4e99deb44192713dep-4 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -511LL : -0x3.fd39cac5aaf4e99deb44192713dcp-4 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -511LL : -0x3.fd39cac5aaf4e99deb44192713dcp-4 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -511LL : -0x3.fd39cac5aaf4e99deb44192714p-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -511LL : -0x3.fd39cac5aaf4e99deb44192714p-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -511LL : -0x3.fd39cac5aaf4e99deb44192713p-4 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -511LL : -0x3.fd39cac5aaf4e99deb44192713p-4 : inexact-ok
+rootn -max -1023
+= rootn downward binary32 -0xf.fffffp+124 -1023LL : -0xe.abbbp-4 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 -1023LL : -0xe.abbbp-4 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 -1023LL : -0xe.abbafp-4 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 -1023LL : -0xe.abbafp-4 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 -1023LL : -0xe.abbaff12bfdf8p-4 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 -1023LL : -0xe.abbaff12bfdfp-4 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 -1023LL : -0xe.abbaff12bfdfp-4 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 -1023LL : -0xe.abbaff12bfdfp-4 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 -1023LL : -0xe.abbaff12bfdf28dp-4 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 -1023LL : -0xe.abbaff12bfdf28cp-4 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 -1023LL : -0xe.abbaff12bfdf28cp-4 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 -1023LL : -0xe.abbaff12bfdf28cp-4 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 -1023LL : -0xe.abbaff12bfdf28dp-4 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 -1023LL : -0xe.abbaff12bfdf28cp-4 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 -1023LL : -0xe.abbaff12bfdf28cp-4 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 -1023LL : -0xe.abbaff12bfdf28cp-4 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 -1023LL : -0xe.abbaff12bfdf28c387f85f56eb98p-4 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 -1023LL : -0xe.abbaff12bfdf28c387f85f56eb9p-4 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 -1023LL : -0xe.abbaff12bfdf28c387f85f56eb9p-4 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 -1023LL : -0xe.abbaff12bfdf28c387f85f56eb9p-4 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 -1023LL : -0xe.abbaff12bfdf28c387f85f56ecp-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 -1023LL : -0xe.abbaff12bfdf28c387f85f56ecp-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 -1023LL : -0xe.abbaff12bfdf28c387f85f56e8p-4 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 -1023LL : -0xe.abbaff12bfdf28c387f85f56e8p-4 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 -1023LL : -0x7.fe9ce1ce2c428p-4 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 -1023LL : -0x7.fe9ce1ce2c428p-4 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 -1023LL : -0x7.fe9ce1ce2c424p-4 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 -1023LL : -0x7.fe9ce1ce2c424p-4 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 -1023LL : -0x7.fe9ce1ce2c427118p-4 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 -1023LL : -0x7.fe9ce1ce2c42711p-4 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 -1023LL : -0x7.fe9ce1ce2c42711p-4 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 -1023LL : -0x7.fe9ce1ce2c42711p-4 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 -1023LL : -0x7.fe9ce1ce2c427118p-4 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 -1023LL : -0x7.fe9ce1ce2c42711p-4 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 -1023LL : -0x7.fe9ce1ce2c42711p-4 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 -1023LL : -0x7.fe9ce1ce2c42711p-4 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 -1023LL : -0x7.fe9ce1ce2c427111b95cccf38334p-4 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 -1023LL : -0x7.fe9ce1ce2c427111b95cccf38334p-4 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 -1023LL : -0x7.fe9ce1ce2c427111b95cccf3833p-4 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 -1023LL : -0x7.fe9ce1ce2c427111b95cccf3833p-4 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 -1023LL : -0x7.fe9ce1ce2c427111b95cccf384p-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 -1023LL : -0x7.fe9ce1ce2c427111b95cccf384p-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 -1023LL : -0x7.fe9ce1ce2c427111b95cccf382p-4 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 -1023LL : -0x7.fe9ce1ce2c427111b95cccf382p-4 : inexact-ok
+= rootn downward intel96 -0xf.fffffffffffffffp+16380 -1023LL : -0xf.d3d5c5880a2cca5p-20 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffffffffffffp+16380 -1023LL : -0xf.d3d5c5880a2cca4p-20 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffffffffffffp+16380 -1023LL : -0xf.d3d5c5880a2cca4p-20 : inexact-ok
+= rootn upward intel96 -0xf.fffffffffffffffp+16380 -1023LL : -0xf.d3d5c5880a2cca4p-20 : inexact-ok
+= rootn downward m68k96 -0xf.fffffffffffffffp+16380 -1023LL : -0xf.d3d5c5880a2cca5p-20 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffffffffffffp+16380 -1023LL : -0xf.d3d5c5880a2cca4p-20 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffffffffffffp+16380 -1023LL : -0xf.d3d5c5880a2cca4p-20 : inexact-ok
+= rootn upward m68k96 -0xf.fffffffffffffffp+16380 -1023LL : -0xf.d3d5c5880a2cca4p-20 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffp+16380 -1023LL : -0xf.d3d5c5880a2cca4019f762560e08p-20 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffp+16380 -1023LL : -0xf.d3d5c5880a2cca4019f762560ep-20 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffp+16380 -1023LL : -0xf.d3d5c5880a2cca4019f762560ep-20 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffp+16380 -1023LL : -0xf.d3d5c5880a2cca4019f762560ep-20 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -1023LL : -0xf.d3d5c5880a2cca4016016f67f08p-20 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -1023LL : -0xf.d3d5c5880a2cca4016016f67f078p-20 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -1023LL : -0xf.d3d5c5880a2cca4016016f67f078p-20 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -1023LL : -0xf.d3d5c5880a2cca4016016f67f078p-20 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -1023LL : -0x7.fe9ce1ce2c427109b8bfc3e312d8p-4 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -1023LL : -0x7.fe9ce1ce2c427109b8bfc3e312d4p-4 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -1023LL : -0x7.fe9ce1ce2c427109b8bfc3e312d4p-4 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -1023LL : -0x7.fe9ce1ce2c427109b8bfc3e312d4p-4 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -1023LL : -0x7.fe9ce1ce2c427109b8bfc3e314p-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -1023LL : -0x7.fe9ce1ce2c427109b8bfc3e312p-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -1023LL : -0x7.fe9ce1ce2c427109b8bfc3e312p-4 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -1023LL : -0x7.fe9ce1ce2c427109b8bfc3e312p-4 : inexact-ok
+rootn -max -16383
+= rootn downward binary32 -0xf.fffffp+124 -16383LL : -0xf.e9e0cp-4 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 -16383LL : -0xf.e9e0cp-4 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 -16383LL : -0xf.e9e0bp-4 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 -16383LL : -0xf.e9e0bp-4 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 -16383LL : -0xf.e9e0bd883679p-4 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 -16383LL : -0xf.e9e0bd883679p-4 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 -16383LL : -0xf.e9e0bd8836788p-4 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 -16383LL : -0xf.e9e0bd8836788p-4 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 -16383LL : -0xf.e9e0bd883678fddp-4 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 -16383LL : -0xf.e9e0bd883678fddp-4 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 -16383LL : -0xf.e9e0bd883678fdcp-4 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 -16383LL : -0xf.e9e0bd883678fdcp-4 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 -16383LL : -0xf.e9e0bd883678fddp-4 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 -16383LL : -0xf.e9e0bd883678fddp-4 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 -16383LL : -0xf.e9e0bd883678fdcp-4 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 -16383LL : -0xf.e9e0bd883678fdcp-4 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 -16383LL : -0xf.e9e0bd883678fdccd020ce68eee8p-4 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 -16383LL : -0xf.e9e0bd883678fdccd020ce68eee8p-4 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 -16383LL : -0xf.e9e0bd883678fdccd020ce68eeep-4 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 -16383LL : -0xf.e9e0bd883678fdccd020ce68eeep-4 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 -16383LL : -0xf.e9e0bd883678fdccd020ce68fp-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 -16383LL : -0xf.e9e0bd883678fdccd020ce68fp-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 -16383LL : -0xf.e9e0bd883678fdccd020ce68ecp-4 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 -16383LL : -0xf.e9e0bd883678fdccd020ce68ecp-4 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 -16383LL : -0xf.525529972fe18p-4 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 -16383LL : -0xf.525529972fe18p-4 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 -16383LL : -0xf.525529972fe1p-4 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 -16383LL : -0xf.525529972fe1p-4 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 -16383LL : -0xf.525529972fe14cp-4 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 -16383LL : -0xf.525529972fe14bfp-4 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 -16383LL : -0xf.525529972fe14bfp-4 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 -16383LL : -0xf.525529972fe14bfp-4 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 -16383LL : -0xf.525529972fe14cp-4 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 -16383LL : -0xf.525529972fe14bfp-4 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 -16383LL : -0xf.525529972fe14bfp-4 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 -16383LL : -0xf.525529972fe14bfp-4 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 -16383LL : -0xf.525529972fe14bf38e29a4458fcp-4 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 -16383LL : -0xf.525529972fe14bf38e29a4458fb8p-4 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 -16383LL : -0xf.525529972fe14bf38e29a4458fb8p-4 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 -16383LL : -0xf.525529972fe14bf38e29a4458fb8p-4 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 -16383LL : -0xf.525529972fe14bf38e29a4459p-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 -16383LL : -0xf.525529972fe14bf38e29a4459p-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 -16383LL : -0xf.525529972fe14bf38e29a4458cp-4 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 -16383LL : -0xf.525529972fe14bf38e29a4458cp-4 : inexact-ok
+= rootn downward intel96 -0xf.fffffffffffffffp+16380 -16383LL : -0x7.ffe9d183072e776p-4 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffffffffffffp+16380 -16383LL : -0x7.ffe9d183072e7758p-4 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffffffffffffp+16380 -16383LL : -0x7.ffe9d183072e7758p-4 : inexact-ok
+= rootn upward intel96 -0xf.fffffffffffffffp+16380 -16383LL : -0x7.ffe9d183072e7758p-4 : inexact-ok
+= rootn downward m68k96 -0xf.fffffffffffffffp+16380 -16383LL : -0x7.ffe9d183072e776p-4 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffffffffffffp+16380 -16383LL : -0x7.ffe9d183072e7758p-4 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffffffffffffp+16380 -16383LL : -0x7.ffe9d183072e7758p-4 : inexact-ok
+= rootn upward m68k96 -0xf.fffffffffffffffp+16380 -16383LL : -0x7.ffe9d183072e7758p-4 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffp+16380 -16383LL : -0x7.ffe9d183072e7758ee21a412200cp-4 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffp+16380 -16383LL : -0x7.ffe9d183072e7758ee21a4122008p-4 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffp+16380 -16383LL : -0x7.ffe9d183072e7758ee21a4122008p-4 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffp+16380 -16383LL : -0x7.ffe9d183072e7758ee21a4122008p-4 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -16383LL : -0x7.ffe9d183072e7758ee01a3ead964p-4 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -16383LL : -0x7.ffe9d183072e7758ee01a3ead96p-4 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -16383LL : -0x7.ffe9d183072e7758ee01a3ead96p-4 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -16383LL : -0x7.ffe9d183072e7758ee01a3ead96p-4 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -16383LL : -0xf.525529972fe14bf299007d077fc8p-4 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -16383LL : -0xf.525529972fe14bf299007d077fcp-4 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -16383LL : -0xf.525529972fe14bf299007d077fcp-4 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -16383LL : -0xf.525529972fe14bf299007d077fcp-4 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -16383LL : -0xf.525529972fe14bf299007d078p-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -16383LL : -0xf.525529972fe14bf299007d078p-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -16383LL : -0xf.525529972fe14bf299007d077cp-4 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -16383LL : -0xf.525529972fe14bf299007d077cp-4 : inexact-ok
+rootn -max -0x1000001
+= rootn downward binary32 -0xf.fffffp+124 -16777217LL : -0xf.fffa8p-4 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 -16777217LL : -0xf.fffa7p-4 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 -16777217LL : -0xf.fffa7p-4 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 -16777217LL : -0xf.fffa7p-4 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 -16777217LL : -0xf.fffa74703bdbp-4 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 -16777217LL : -0xf.fffa74703bdbp-4 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 -16777217LL : -0xf.fffa74703bda8p-4 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 -16777217LL : -0xf.fffa74703bda8p-4 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 -16777217LL : -0xf.fffa74703bdad3ep-4 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 -16777217LL : -0xf.fffa74703bdad3ep-4 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 -16777217LL : -0xf.fffa74703bdad3dp-4 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 -16777217LL : -0xf.fffa74703bdad3dp-4 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 -16777217LL : -0xf.fffa74703bdad3ep-4 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 -16777217LL : -0xf.fffa74703bdad3ep-4 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 -16777217LL : -0xf.fffa74703bdad3dp-4 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 -16777217LL : -0xf.fffa74703bdad3dp-4 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 -16777217LL : -0xf.fffa74703bdad3dde653a1e528c8p-4 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 -16777217LL : -0xf.fffa74703bdad3dde653a1e528cp-4 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 -16777217LL : -0xf.fffa74703bdad3dde653a1e528cp-4 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 -16777217LL : -0xf.fffa74703bdad3dde653a1e528cp-4 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 -16777217LL : -0xf.fffa74703bdad3dde653a1e52cp-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 -16777217LL : -0xf.fffa74703bdad3dde653a1e528p-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 -16777217LL : -0xf.fffa74703bdad3dde653a1e528p-4 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 -16777217LL : -0xf.fffa74703bdad3dde653a1e528p-4 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 -16777217LL : -0xf.ffd3a3b7adabp-4 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 -16777217LL : -0xf.ffd3a3b7adabp-4 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 -16777217LL : -0xf.ffd3a3b7adaa8p-4 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 -16777217LL : -0xf.ffd3a3b7adaa8p-4 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 -16777217LL : -0xf.ffd3a3b7adaac02p-4 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 -16777217LL : -0xf.ffd3a3b7adaac01p-4 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 -16777217LL : -0xf.ffd3a3b7adaac01p-4 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 -16777217LL : -0xf.ffd3a3b7adaac01p-4 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 -16777217LL : -0xf.ffd3a3b7adaac02p-4 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 -16777217LL : -0xf.ffd3a3b7adaac01p-4 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 -16777217LL : -0xf.ffd3a3b7adaac01p-4 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 -16777217LL : -0xf.ffd3a3b7adaac01p-4 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 -16777217LL : -0xf.ffd3a3b7adaac010230cb25d97ep-4 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 -16777217LL : -0xf.ffd3a3b7adaac010230cb25d97ep-4 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 -16777217LL : -0xf.ffd3a3b7adaac010230cb25d97d8p-4 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 -16777217LL : -0xf.ffd3a3b7adaac010230cb25d97d8p-4 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 -16777217LL : -0xf.ffd3a3b7adaac010230cb25d98p-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 -16777217LL : -0xf.ffd3a3b7adaac010230cb25d98p-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 -16777217LL : -0xf.ffd3a3b7adaac010230cb25d94p-4 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 -16777217LL : -0xf.ffd3a3b7adaac010230cb25d94p-4 : inexact-ok
+= rootn downward intel96 -0xf.fffffffffffffffp+16380 -16777217LL : -0xf.fd3a751ed4cb799p-4 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffffffffffffp+16380 -16777217LL : -0xf.fd3a751ed4cb798p-4 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffffffffffffp+16380 -16777217LL : -0xf.fd3a751ed4cb798p-4 : inexact-ok
+= rootn upward intel96 -0xf.fffffffffffffffp+16380 -16777217LL : -0xf.fd3a751ed4cb798p-4 : inexact-ok
+= rootn downward m68k96 -0xf.fffffffffffffffp+16380 -16777217LL : -0xf.fd3a751ed4cb799p-4 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffffffffffffp+16380 -16777217LL : -0xf.fd3a751ed4cb798p-4 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffffffffffffp+16380 -16777217LL : -0xf.fd3a751ed4cb798p-4 : inexact-ok
+= rootn upward m68k96 -0xf.fffffffffffffffp+16380 -16777217LL : -0xf.fd3a751ed4cb798p-4 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffp+16380 -16777217LL : -0xf.fd3a751ed4cb7986faa08fc7461p-4 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffp+16380 -16777217LL : -0xf.fd3a751ed4cb7986faa08fc74608p-4 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffp+16380 -16777217LL : -0xf.fd3a751ed4cb7986faa08fc74608p-4 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffp+16380 -16777217LL : -0xf.fd3a751ed4cb7986faa08fc74608p-4 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -16777217LL : -0xf.fd3a751ed4cb7986faa07fca0ba8p-4 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -16777217LL : -0xf.fd3a751ed4cb7986faa07fca0ba8p-4 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -16777217LL : -0xf.fd3a751ed4cb7986faa07fca0bap-4 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -16777217LL : -0xf.fd3a751ed4cb7986faa07fca0bap-4 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -16777217LL : -0xf.ffd3a3b7adaac01022ccb30f4908p-4 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -16777217LL : -0xf.ffd3a3b7adaac01022ccb30f49p-4 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -16777217LL : -0xf.ffd3a3b7adaac01022ccb30f49p-4 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -16777217LL : -0xf.ffd3a3b7adaac01022ccb30f49p-4 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -16777217LL : -0xf.ffd3a3b7adaac01022ccb30f4cp-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -16777217LL : -0xf.ffd3a3b7adaac01022ccb30f48p-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -16777217LL : -0xf.ffd3a3b7adaac01022ccb30f48p-4 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -16777217LL : -0xf.ffd3a3b7adaac01022ccb30f48p-4 : inexact-ok
+rootn -max -0x10000000000001
+= rootn downward binary32 -0xf.fffffp+124 -4503599627370497LL : -0x1p+0 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 -4503599627370497LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 -4503599627370497LL : -0xf.fffffp-4 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 -4503599627370497LL : -0xf.fffffp-4 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 -4503599627370497LL : -0xf.ffffffffffa78p-4 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 -4503599627370497LL : -0xf.ffffffffffa78p-4 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 -4503599627370497LL : -0xf.ffffffffffa7p-4 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 -4503599627370497LL : -0xf.ffffffffffa7p-4 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 -4503599627370497LL : -0xf.ffffffffffa747p-4 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 -4503599627370497LL : -0xf.ffffffffffa746fp-4 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 -4503599627370497LL : -0xf.ffffffffffa746fp-4 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 -4503599627370497LL : -0xf.ffffffffffa746fp-4 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 -4503599627370497LL : -0xf.ffffffffffa747p-4 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 -4503599627370497LL : -0xf.ffffffffffa746fp-4 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 -4503599627370497LL : -0xf.ffffffffffa746fp-4 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 -4503599627370497LL : -0xf.ffffffffffa746fp-4 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 -4503599627370497LL : -0xf.ffffffffffa746f40517193f33ap-4 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 -4503599627370497LL : -0xf.ffffffffffa746f40517193f3398p-4 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 -4503599627370497LL : -0xf.ffffffffffa746f40517193f3398p-4 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 -4503599627370497LL : -0xf.ffffffffffa746f40517193f3398p-4 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 -4503599627370497LL : -0xf.ffffffffffa746f40517193f34p-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 -4503599627370497LL : -0xf.ffffffffffa746f40517193f34p-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 -4503599627370497LL : -0xf.ffffffffffa746f40517193f3p-4 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 -4503599627370497LL : -0xf.ffffffffffa746f40517193f3p-4 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 -4503599627370497LL : -0xf.fffffffffd3a8p-4 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 -4503599627370497LL : -0xf.fffffffffd3ap-4 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 -4503599627370497LL : -0xf.fffffffffd3ap-4 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 -4503599627370497LL : -0xf.fffffffffd3ap-4 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 -4503599627370497LL : -0xf.fffffffffd3a37bp-4 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 -4503599627370497LL : -0xf.fffffffffd3a37ap-4 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 -4503599627370497LL : -0xf.fffffffffd3a37ap-4 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 -4503599627370497LL : -0xf.fffffffffd3a37ap-4 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 -4503599627370497LL : -0xf.fffffffffd3a37bp-4 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 -4503599627370497LL : -0xf.fffffffffd3a37ap-4 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 -4503599627370497LL : -0xf.fffffffffd3a37ap-4 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 -4503599627370497LL : -0xf.fffffffffd3a37ap-4 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 -4503599627370497LL : -0xf.fffffffffd3a37a020b8ffc5316p-4 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 -4503599627370497LL : -0xf.fffffffffd3a37a020b8ffc5316p-4 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 -4503599627370497LL : -0xf.fffffffffd3a37a020b8ffc53158p-4 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 -4503599627370497LL : -0xf.fffffffffd3a37a020b8ffc53158p-4 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 -4503599627370497LL : -0xf.fffffffffd3a37a020b8ffc534p-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 -4503599627370497LL : -0xf.fffffffffd3a37a020b8ffc53p-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 -4503599627370497LL : -0xf.fffffffffd3a37a020b8ffc53p-4 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 -4503599627370497LL : -0xf.fffffffffd3a37a020b8ffc53p-4 : inexact-ok
+= rootn downward intel96 -0xf.fffffffffffffffp+16380 -4503599627370497LL : -0xf.ffffffffd3a37a1p-4 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffffffffffffp+16380 -4503599627370497LL : -0xf.ffffffffd3a37ap-4 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffffffffffffp+16380 -4503599627370497LL : -0xf.ffffffffd3a37ap-4 : inexact-ok
+= rootn upward intel96 -0xf.fffffffffffffffp+16380 -4503599627370497LL : -0xf.ffffffffd3a37ap-4 : inexact-ok
+= rootn downward m68k96 -0xf.fffffffffffffffp+16380 -4503599627370497LL : -0xf.ffffffffd3a37a1p-4 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffffffffffffp+16380 -4503599627370497LL : -0xf.ffffffffd3a37ap-4 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffffffffffffp+16380 -4503599627370497LL : -0xf.ffffffffd3a37ap-4 : inexact-ok
+= rootn upward m68k96 -0xf.fffffffffffffffp+16380 -4503599627370497LL : -0xf.ffffffffd3a37ap-4 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffp+16380 -4503599627370497LL : -0xf.ffffffffd3a37a020bc9a3d6d4fp-4 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffp+16380 -4503599627370497LL : -0xf.ffffffffd3a37a020bc9a3d6d4fp-4 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffp+16380 -4503599627370497LL : -0xf.ffffffffd3a37a020bc9a3d6d4e8p-4 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffp+16380 -4503599627370497LL : -0xf.ffffffffd3a37a020bc9a3d6d4e8p-4 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -4503599627370497LL : -0xf.ffffffffd3a37a020bc9a3d6d4fp-4 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -4503599627370497LL : -0xf.ffffffffd3a37a020bc9a3d6d4fp-4 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -4503599627370497LL : -0xf.ffffffffd3a37a020bc9a3d6d4e8p-4 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -4503599627370497LL : -0xf.ffffffffd3a37a020bc9a3d6d4e8p-4 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -4503599627370497LL : -0xf.fffffffffd3a37a020b8ffc52d6p-4 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -4503599627370497LL : -0xf.fffffffffd3a37a020b8ffc52d6p-4 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -4503599627370497LL : -0xf.fffffffffd3a37a020b8ffc52d58p-4 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -4503599627370497LL : -0xf.fffffffffd3a37a020b8ffc52d58p-4 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -4503599627370497LL : -0xf.fffffffffd3a37a020b8ffc53p-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -4503599627370497LL : -0xf.fffffffffd3a37a020b8ffc52cp-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -4503599627370497LL : -0xf.fffffffffd3a37a020b8ffc52cp-4 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -4503599627370497LL : -0xf.fffffffffd3a37a020b8ffc52cp-4 : inexact-ok
+rootn -max -0x7fffffffffffffff
+= rootn downward binary32 -0xf.fffffp+124 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 -9223372036854775807LL : -0xf.fffffp-4 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 -9223372036854775807LL : -0xf.fffffp-4 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 -9223372036854775807LL : -0xf.ffffffffffff8p-4 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 -9223372036854775807LL : -0xf.ffffffffffff8p-4 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 -9223372036854775807LL : -0xf.fffffffffffff4fp-4 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 -9223372036854775807LL : -0xf.fffffffffffff4fp-4 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 -9223372036854775807LL : -0xf.fffffffffffff4ep-4 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 -9223372036854775807LL : -0xf.fffffffffffff4ep-4 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 -9223372036854775807LL : -0xf.fffffffffffff4fp-4 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 -9223372036854775807LL : -0xf.fffffffffffff4fp-4 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 -9223372036854775807LL : -0xf.fffffffffffff4ep-4 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 -9223372036854775807LL : -0xf.fffffffffffff4ep-4 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 -9223372036854775807LL : -0xf.fffffffffffff4e8de80a2e3088p-4 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 -9223372036854775807LL : -0xf.fffffffffffff4e8de80a2e30878p-4 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 -9223372036854775807LL : -0xf.fffffffffffff4e8de80a2e30878p-4 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 -9223372036854775807LL : -0xf.fffffffffffff4e8de80a2e30878p-4 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 -9223372036854775807LL : -0xf.fffffffffffff4e8de80a2e30cp-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 -9223372036854775807LL : -0xf.fffffffffffff4e8de80a2e308p-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 -9223372036854775807LL : -0xf.fffffffffffff4e8de80a2e308p-4 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 -9223372036854775807LL : -0xf.fffffffffffff4e8de80a2e308p-4 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 -9223372036854775807LL : -0x1p+0 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 -9223372036854775807LL : -0xf.ffffffffffff8p-4 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 -9223372036854775807LL : -0xf.ffffffffffff8p-4 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 -9223372036854775807LL : -0xf.ffffffffffff8p-4 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 -9223372036854775807LL : -0xf.ffffffffffffa75p-4 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 -9223372036854775807LL : -0xf.ffffffffffffa74p-4 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 -9223372036854775807LL : -0xf.ffffffffffffa74p-4 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 -9223372036854775807LL : -0xf.ffffffffffffa74p-4 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 -9223372036854775807LL : -0xf.ffffffffffffa75p-4 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 -9223372036854775807LL : -0xf.ffffffffffffa74p-4 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 -9223372036854775807LL : -0xf.ffffffffffffa74p-4 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 -9223372036854775807LL : -0xf.ffffffffffffa74p-4 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 -9223372036854775807LL : -0xf.ffffffffffffa746f40417184428p-4 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 -9223372036854775807LL : -0xf.ffffffffffffa746f4041718442p-4 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 -9223372036854775807LL : -0xf.ffffffffffffa746f4041718442p-4 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 -9223372036854775807LL : -0xf.ffffffffffffa746f4041718442p-4 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 -9223372036854775807LL : -0xf.ffffffffffffa746f404171848p-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 -9223372036854775807LL : -0xf.ffffffffffffa746f404171844p-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 -9223372036854775807LL : -0xf.ffffffffffffa746f404171844p-4 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 -9223372036854775807LL : -0xf.ffffffffffffa746f404171844p-4 : inexact-ok
+= rootn downward intel96 -0xf.fffffffffffffffp+16380 -9223372036854775807LL : -0xf.fffffffffffa747p-4 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffffffffffffp+16380 -9223372036854775807LL : -0xf.fffffffffffa747p-4 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffffffffffffp+16380 -9223372036854775807LL : -0xf.fffffffffffa746p-4 : inexact-ok
+= rootn upward intel96 -0xf.fffffffffffffffp+16380 -9223372036854775807LL : -0xf.fffffffffffa746p-4 : inexact-ok
+= rootn downward m68k96 -0xf.fffffffffffffffp+16380 -9223372036854775807LL : -0xf.fffffffffffa747p-4 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffffffffffffp+16380 -9223372036854775807LL : -0xf.fffffffffffa747p-4 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffffffffffffp+16380 -9223372036854775807LL : -0xf.fffffffffffa746p-4 : inexact-ok
+= rootn upward m68k96 -0xf.fffffffffffffffp+16380 -9223372036854775807LL : -0xf.fffffffffffa746p-4 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffp+16380 -9223372036854775807LL : -0xf.fffffffffffa746f404171852898p-4 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffp+16380 -9223372036854775807LL : -0xf.fffffffffffa746f404171852898p-4 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffp+16380 -9223372036854775807LL : -0xf.fffffffffffa746f40417185289p-4 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffp+16380 -9223372036854775807LL : -0xf.fffffffffffa746f40417185289p-4 : inexact-ok
+= rootn downward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -9223372036854775807LL : -0xf.fffffffffffa746f404171852898p-4 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -9223372036854775807LL : -0xf.fffffffffffa746f404171852898p-4 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -9223372036854775807LL : -0xf.fffffffffffa746f40417185289p-4 : inexact-ok
+= rootn upward binary128 -0xf.fffffffffffffffffffffffffff8p+16380 -9223372036854775807LL : -0xf.fffffffffffa746f40417185289p-4 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -9223372036854775807LL : -0xf.ffffffffffffa746f4041718442p-4 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -9223372036854775807LL : -0xf.ffffffffffffa746f4041718442p-4 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -9223372036854775807LL : -0xf.ffffffffffffa746f40417184418p-4 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -9223372036854775807LL : -0xf.ffffffffffffa746f40417184418p-4 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -9223372036854775807LL : -0xf.ffffffffffffa746f404171848p-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -9223372036854775807LL : -0xf.ffffffffffffa746f404171844p-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -9223372036854775807LL : -0xf.ffffffffffffa746f404171844p-4 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -9223372036854775807LL : -0xf.ffffffffffffa746f404171844p-4 : inexact-ok
+rootn 1 123
+= rootn downward binary32 0x1p+0 123LL : 0x1p+0 : inexact-ok
+= rootn tonearest binary32 0x1p+0 123LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary32 0x1p+0 123LL : 0x1p+0 : inexact-ok
+= rootn upward binary32 0x1p+0 123LL : 0x1p+0 : inexact-ok
+= rootn downward binary64 0x1p+0 123LL : 0x1p+0 : inexact-ok
+= rootn tonearest binary64 0x1p+0 123LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary64 0x1p+0 123LL : 0x1p+0 : inexact-ok
+= rootn upward binary64 0x1p+0 123LL : 0x1p+0 : inexact-ok
+= rootn downward intel96 0x1p+0 123LL : 0x1p+0 : inexact-ok
+= rootn tonearest intel96 0x1p+0 123LL : 0x1p+0 : inexact-ok
+= rootn towardzero intel96 0x1p+0 123LL : 0x1p+0 : inexact-ok
+= rootn upward intel96 0x1p+0 123LL : 0x1p+0 : inexact-ok
+= rootn downward m68k96 0x1p+0 123LL : 0x1p+0 : inexact-ok
+= rootn tonearest m68k96 0x1p+0 123LL : 0x1p+0 : inexact-ok
+= rootn towardzero m68k96 0x1p+0 123LL : 0x1p+0 : inexact-ok
+= rootn upward m68k96 0x1p+0 123LL : 0x1p+0 : inexact-ok
+= rootn downward binary128 0x1p+0 123LL : 0x1p+0 : inexact-ok
+= rootn tonearest binary128 0x1p+0 123LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary128 0x1p+0 123LL : 0x1p+0 : inexact-ok
+= rootn upward binary128 0x1p+0 123LL : 0x1p+0 : inexact-ok
+= rootn downward ibm128 0x1p+0 123LL : 0x1p+0 : inexact-ok
+= rootn tonearest ibm128 0x1p+0 123LL : 0x1p+0 : inexact-ok
+= rootn towardzero ibm128 0x1p+0 123LL : 0x1p+0 : inexact-ok
+= rootn upward ibm128 0x1p+0 123LL : 0x1p+0 : inexact-ok
+rootn 1 -123
+= rootn downward binary32 0x1p+0 -123LL : 0x1p+0 : inexact-ok
+= rootn tonearest binary32 0x1p+0 -123LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary32 0x1p+0 -123LL : 0x1p+0 : inexact-ok
+= rootn upward binary32 0x1p+0 -123LL : 0x1p+0 : inexact-ok
+= rootn downward binary64 0x1p+0 -123LL : 0x1p+0 : inexact-ok
+= rootn tonearest binary64 0x1p+0 -123LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary64 0x1p+0 -123LL : 0x1p+0 : inexact-ok
+= rootn upward binary64 0x1p+0 -123LL : 0x1p+0 : inexact-ok
+= rootn downward intel96 0x1p+0 -123LL : 0x1p+0 : inexact-ok
+= rootn tonearest intel96 0x1p+0 -123LL : 0x1p+0 : inexact-ok
+= rootn towardzero intel96 0x1p+0 -123LL : 0x1p+0 : inexact-ok
+= rootn upward intel96 0x1p+0 -123LL : 0x1p+0 : inexact-ok
+= rootn downward m68k96 0x1p+0 -123LL : 0x1p+0 : inexact-ok
+= rootn tonearest m68k96 0x1p+0 -123LL : 0x1p+0 : inexact-ok
+= rootn towardzero m68k96 0x1p+0 -123LL : 0x1p+0 : inexact-ok
+= rootn upward m68k96 0x1p+0 -123LL : 0x1p+0 : inexact-ok
+= rootn downward binary128 0x1p+0 -123LL : 0x1p+0 : inexact-ok
+= rootn tonearest binary128 0x1p+0 -123LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary128 0x1p+0 -123LL : 0x1p+0 : inexact-ok
+= rootn upward binary128 0x1p+0 -123LL : 0x1p+0 : inexact-ok
+= rootn downward ibm128 0x1p+0 -123LL : 0x1p+0 : inexact-ok
+= rootn tonearest ibm128 0x1p+0 -123LL : 0x1p+0 : inexact-ok
+= rootn towardzero ibm128 0x1p+0 -123LL : 0x1p+0 : inexact-ok
+= rootn upward ibm128 0x1p+0 -123LL : 0x1p+0 : inexact-ok
+rootn 1 1234
+= rootn downward binary32 0x1p+0 1234LL : 0x1p+0 : inexact-ok
+= rootn tonearest binary32 0x1p+0 1234LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary32 0x1p+0 1234LL : 0x1p+0 : inexact-ok
+= rootn upward binary32 0x1p+0 1234LL : 0x1p+0 : inexact-ok
+= rootn downward binary64 0x1p+0 1234LL : 0x1p+0 : inexact-ok
+= rootn tonearest binary64 0x1p+0 1234LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary64 0x1p+0 1234LL : 0x1p+0 : inexact-ok
+= rootn upward binary64 0x1p+0 1234LL : 0x1p+0 : inexact-ok
+= rootn downward intel96 0x1p+0 1234LL : 0x1p+0 : inexact-ok
+= rootn tonearest intel96 0x1p+0 1234LL : 0x1p+0 : inexact-ok
+= rootn towardzero intel96 0x1p+0 1234LL : 0x1p+0 : inexact-ok
+= rootn upward intel96 0x1p+0 1234LL : 0x1p+0 : inexact-ok
+= rootn downward m68k96 0x1p+0 1234LL : 0x1p+0 : inexact-ok
+= rootn tonearest m68k96 0x1p+0 1234LL : 0x1p+0 : inexact-ok
+= rootn towardzero m68k96 0x1p+0 1234LL : 0x1p+0 : inexact-ok
+= rootn upward m68k96 0x1p+0 1234LL : 0x1p+0 : inexact-ok
+= rootn downward binary128 0x1p+0 1234LL : 0x1p+0 : inexact-ok
+= rootn tonearest binary128 0x1p+0 1234LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary128 0x1p+0 1234LL : 0x1p+0 : inexact-ok
+= rootn upward binary128 0x1p+0 1234LL : 0x1p+0 : inexact-ok
+= rootn downward ibm128 0x1p+0 1234LL : 0x1p+0 : inexact-ok
+= rootn tonearest ibm128 0x1p+0 1234LL : 0x1p+0 : inexact-ok
+= rootn towardzero ibm128 0x1p+0 1234LL : 0x1p+0 : inexact-ok
+= rootn upward ibm128 0x1p+0 1234LL : 0x1p+0 : inexact-ok
+rootn 1 -1234
+= rootn downward binary32 0x1p+0 -1234LL : 0x1p+0 : inexact-ok
+= rootn tonearest binary32 0x1p+0 -1234LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary32 0x1p+0 -1234LL : 0x1p+0 : inexact-ok
+= rootn upward binary32 0x1p+0 -1234LL : 0x1p+0 : inexact-ok
+= rootn downward binary64 0x1p+0 -1234LL : 0x1p+0 : inexact-ok
+= rootn tonearest binary64 0x1p+0 -1234LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary64 0x1p+0 -1234LL : 0x1p+0 : inexact-ok
+= rootn upward binary64 0x1p+0 -1234LL : 0x1p+0 : inexact-ok
+= rootn downward intel96 0x1p+0 -1234LL : 0x1p+0 : inexact-ok
+= rootn tonearest intel96 0x1p+0 -1234LL : 0x1p+0 : inexact-ok
+= rootn towardzero intel96 0x1p+0 -1234LL : 0x1p+0 : inexact-ok
+= rootn upward intel96 0x1p+0 -1234LL : 0x1p+0 : inexact-ok
+= rootn downward m68k96 0x1p+0 -1234LL : 0x1p+0 : inexact-ok
+= rootn tonearest m68k96 0x1p+0 -1234LL : 0x1p+0 : inexact-ok
+= rootn towardzero m68k96 0x1p+0 -1234LL : 0x1p+0 : inexact-ok
+= rootn upward m68k96 0x1p+0 -1234LL : 0x1p+0 : inexact-ok
+= rootn downward binary128 0x1p+0 -1234LL : 0x1p+0 : inexact-ok
+= rootn tonearest binary128 0x1p+0 -1234LL : 0x1p+0 : inexact-ok
+= rootn towardzero binary128 0x1p+0 -1234LL : 0x1p+0 : inexact-ok
+= rootn upward binary128 0x1p+0 -1234LL : 0x1p+0 : inexact-ok
+= rootn downward ibm128 0x1p+0 -1234LL : 0x1p+0 : inexact-ok
+= rootn tonearest ibm128 0x1p+0 -1234LL : 0x1p+0 : inexact-ok
+= rootn towardzero ibm128 0x1p+0 -1234LL : 0x1p+0 : inexact-ok
+= rootn upward ibm128 0x1p+0 -1234LL : 0x1p+0 : inexact-ok
+rootn -1 123
+= rootn downward binary32 -0x1p+0 123LL : -0x1p+0 : inexact-ok
+= rootn tonearest binary32 -0x1p+0 123LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary32 -0x1p+0 123LL : -0x1p+0 : inexact-ok
+= rootn upward binary32 -0x1p+0 123LL : -0x1p+0 : inexact-ok
+= rootn downward binary64 -0x1p+0 123LL : -0x1p+0 : inexact-ok
+= rootn tonearest binary64 -0x1p+0 123LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary64 -0x1p+0 123LL : -0x1p+0 : inexact-ok
+= rootn upward binary64 -0x1p+0 123LL : -0x1p+0 : inexact-ok
+= rootn downward intel96 -0x1p+0 123LL : -0x1p+0 : inexact-ok
+= rootn tonearest intel96 -0x1p+0 123LL : -0x1p+0 : inexact-ok
+= rootn towardzero intel96 -0x1p+0 123LL : -0x1p+0 : inexact-ok
+= rootn upward intel96 -0x1p+0 123LL : -0x1p+0 : inexact-ok
+= rootn downward m68k96 -0x1p+0 123LL : -0x1p+0 : inexact-ok
+= rootn tonearest m68k96 -0x1p+0 123LL : -0x1p+0 : inexact-ok
+= rootn towardzero m68k96 -0x1p+0 123LL : -0x1p+0 : inexact-ok
+= rootn upward m68k96 -0x1p+0 123LL : -0x1p+0 : inexact-ok
+= rootn downward binary128 -0x1p+0 123LL : -0x1p+0 : inexact-ok
+= rootn tonearest binary128 -0x1p+0 123LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary128 -0x1p+0 123LL : -0x1p+0 : inexact-ok
+= rootn upward binary128 -0x1p+0 123LL : -0x1p+0 : inexact-ok
+= rootn downward ibm128 -0x1p+0 123LL : -0x1p+0 : inexact-ok
+= rootn tonearest ibm128 -0x1p+0 123LL : -0x1p+0 : inexact-ok
+= rootn towardzero ibm128 -0x1p+0 123LL : -0x1p+0 : inexact-ok
+= rootn upward ibm128 -0x1p+0 123LL : -0x1p+0 : inexact-ok
+rootn -1 -123
+= rootn downward binary32 -0x1p+0 -123LL : -0x1p+0 : inexact-ok
+= rootn tonearest binary32 -0x1p+0 -123LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary32 -0x1p+0 -123LL : -0x1p+0 : inexact-ok
+= rootn upward binary32 -0x1p+0 -123LL : -0x1p+0 : inexact-ok
+= rootn downward binary64 -0x1p+0 -123LL : -0x1p+0 : inexact-ok
+= rootn tonearest binary64 -0x1p+0 -123LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary64 -0x1p+0 -123LL : -0x1p+0 : inexact-ok
+= rootn upward binary64 -0x1p+0 -123LL : -0x1p+0 : inexact-ok
+= rootn downward intel96 -0x1p+0 -123LL : -0x1p+0 : inexact-ok
+= rootn tonearest intel96 -0x1p+0 -123LL : -0x1p+0 : inexact-ok
+= rootn towardzero intel96 -0x1p+0 -123LL : -0x1p+0 : inexact-ok
+= rootn upward intel96 -0x1p+0 -123LL : -0x1p+0 : inexact-ok
+= rootn downward m68k96 -0x1p+0 -123LL : -0x1p+0 : inexact-ok
+= rootn tonearest m68k96 -0x1p+0 -123LL : -0x1p+0 : inexact-ok
+= rootn towardzero m68k96 -0x1p+0 -123LL : -0x1p+0 : inexact-ok
+= rootn upward m68k96 -0x1p+0 -123LL : -0x1p+0 : inexact-ok
+= rootn downward binary128 -0x1p+0 -123LL : -0x1p+0 : inexact-ok
+= rootn tonearest binary128 -0x1p+0 -123LL : -0x1p+0 : inexact-ok
+= rootn towardzero binary128 -0x1p+0 -123LL : -0x1p+0 : inexact-ok
+= rootn upward binary128 -0x1p+0 -123LL : -0x1p+0 : inexact-ok
+= rootn downward ibm128 -0x1p+0 -123LL : -0x1p+0 : inexact-ok
+= rootn tonearest ibm128 -0x1p+0 -123LL : -0x1p+0 : inexact-ok
+= rootn towardzero ibm128 -0x1p+0 -123LL : -0x1p+0 : inexact-ok
+= rootn upward ibm128 -0x1p+0 -123LL : -0x1p+0 : inexact-ok
+rootn 2 123
+= rootn downward binary32 0x2p+0 123LL : 0x1.01725cp+0 : inexact-ok
+= rootn tonearest binary32 0x2p+0 123LL : 0x1.01725cp+0 : inexact-ok
+= rootn towardzero binary32 0x2p+0 123LL : 0x1.01725cp+0 : inexact-ok
+= rootn upward binary32 0x2p+0 123LL : 0x1.01725ep+0 : inexact-ok
+= rootn downward binary64 0x2p+0 123LL : 0x1.01725c43b5cc9p+0 : inexact-ok
+= rootn tonearest binary64 0x2p+0 123LL : 0x1.01725c43b5ccap+0 : inexact-ok
+= rootn towardzero binary64 0x2p+0 123LL : 0x1.01725c43b5cc9p+0 : inexact-ok
+= rootn upward binary64 0x2p+0 123LL : 0x1.01725c43b5ccap+0 : inexact-ok
+= rootn downward intel96 0x2p+0 123LL : 0x1.01725c43b5cc9ffcp+0 : inexact-ok
+= rootn tonearest intel96 0x2p+0 123LL : 0x1.01725c43b5cc9ffcp+0 : inexact-ok
+= rootn towardzero intel96 0x2p+0 123LL : 0x1.01725c43b5cc9ffcp+0 : inexact-ok
+= rootn upward intel96 0x2p+0 123LL : 0x1.01725c43b5cc9ffep+0 : inexact-ok
+= rootn downward m68k96 0x2p+0 123LL : 0x1.01725c43b5cc9ffcp+0 : inexact-ok
+= rootn tonearest m68k96 0x2p+0 123LL : 0x1.01725c43b5cc9ffcp+0 : inexact-ok
+= rootn towardzero m68k96 0x2p+0 123LL : 0x1.01725c43b5cc9ffcp+0 : inexact-ok
+= rootn upward m68k96 0x2p+0 123LL : 0x1.01725c43b5cc9ffep+0 : inexact-ok
+= rootn downward binary128 0x2p+0 123LL : 0x1.01725c43b5cc9ffc6879187685fep+0 : inexact-ok
+= rootn tonearest binary128 0x2p+0 123LL : 0x1.01725c43b5cc9ffc6879187685ffp+0 : inexact-ok
+= rootn towardzero binary128 0x2p+0 123LL : 0x1.01725c43b5cc9ffc6879187685fep+0 : inexact-ok
+= rootn upward binary128 0x2p+0 123LL : 0x1.01725c43b5cc9ffc6879187685ffp+0 : inexact-ok
+= rootn downward ibm128 0x2p+0 123LL : 0x1.01725c43b5cc9ffc68791876858p+0 : inexact-ok
+= rootn tonearest ibm128 0x2p+0 123LL : 0x1.01725c43b5cc9ffc6879187686p+0 : inexact-ok
+= rootn towardzero ibm128 0x2p+0 123LL : 0x1.01725c43b5cc9ffc68791876858p+0 : inexact-ok
+= rootn upward ibm128 0x2p+0 123LL : 0x1.01725c43b5cc9ffc6879187686p+0 : inexact-ok
+rootn 2 -123
+= rootn downward binary32 0x2p+0 -123LL : 0xf.e8fb8p-4 : inexact-ok
+= rootn tonearest binary32 0x2p+0 -123LL : 0xf.e8fb9p-4 : inexact-ok
+= rootn towardzero binary32 0x2p+0 -123LL : 0xf.e8fb8p-4 : inexact-ok
+= rootn upward binary32 0x2p+0 -123LL : 0xf.e8fb9p-4 : inexact-ok
+= rootn downward binary64 0x2p+0 -123LL : 0xf.e8fb888504698p-4 : inexact-ok
+= rootn tonearest binary64 0x2p+0 -123LL : 0xf.e8fb888504698p-4 : inexact-ok
+= rootn towardzero binary64 0x2p+0 -123LL : 0xf.e8fb888504698p-4 : inexact-ok
+= rootn upward binary64 0x2p+0 -123LL : 0xf.e8fb8885046ap-4 : inexact-ok
+= rootn downward intel96 0x2p+0 -123LL : 0xf.e8fb88850469a58p-4 : inexact-ok
+= rootn tonearest intel96 0x2p+0 -123LL : 0xf.e8fb88850469a59p-4 : inexact-ok
+= rootn towardzero intel96 0x2p+0 -123LL : 0xf.e8fb88850469a58p-4 : inexact-ok
+= rootn upward intel96 0x2p+0 -123LL : 0xf.e8fb88850469a59p-4 : inexact-ok
+= rootn downward m68k96 0x2p+0 -123LL : 0xf.e8fb88850469a58p-4 : inexact-ok
+= rootn tonearest m68k96 0x2p+0 -123LL : 0xf.e8fb88850469a59p-4 : inexact-ok
+= rootn towardzero m68k96 0x2p+0 -123LL : 0xf.e8fb88850469a58p-4 : inexact-ok
+= rootn upward m68k96 0x2p+0 -123LL : 0xf.e8fb88850469a59p-4 : inexact-ok
+= rootn downward binary128 0x2p+0 -123LL : 0xf.e8fb88850469a58db45c079bc978p-4 : inexact-ok
+= rootn tonearest binary128 0x2p+0 -123LL : 0xf.e8fb88850469a58db45c079bc978p-4 : inexact-ok
+= rootn towardzero binary128 0x2p+0 -123LL : 0xf.e8fb88850469a58db45c079bc978p-4 : inexact-ok
+= rootn upward binary128 0x2p+0 -123LL : 0xf.e8fb88850469a58db45c079bc98p-4 : inexact-ok
+= rootn downward ibm128 0x2p+0 -123LL : 0xf.e8fb88850469a58db45c079bc8p-4 : inexact-ok
+= rootn tonearest ibm128 0x2p+0 -123LL : 0xf.e8fb88850469a58db45c079bc8p-4 : inexact-ok
+= rootn towardzero ibm128 0x2p+0 -123LL : 0xf.e8fb88850469a58db45c079bc8p-4 : inexact-ok
+= rootn upward ibm128 0x2p+0 -123LL : 0xf.e8fb88850469a58db45c079bccp-4 : inexact-ok
+rootn 2 1234
+= rootn downward binary32 0x2p+0 1234LL : 0x1.0024d2p+0 : inexact-ok
+= rootn tonearest binary32 0x2p+0 1234LL : 0x1.0024d2p+0 : inexact-ok
+= rootn towardzero binary32 0x2p+0 1234LL : 0x1.0024d2p+0 : inexact-ok
+= rootn upward binary32 0x2p+0 1234LL : 0x1.0024d4p+0 : inexact-ok
+= rootn downward binary64 0x2p+0 1234LL : 0x1.0024d28978755p+0 : inexact-ok
+= rootn tonearest binary64 0x2p+0 1234LL : 0x1.0024d28978756p+0 : inexact-ok
+= rootn towardzero binary64 0x2p+0 1234LL : 0x1.0024d28978755p+0 : inexact-ok
+= rootn upward binary64 0x2p+0 1234LL : 0x1.0024d28978756p+0 : inexact-ok
+= rootn downward intel96 0x2p+0 1234LL : 0x1.0024d28978755da4p+0 : inexact-ok
+= rootn tonearest intel96 0x2p+0 1234LL : 0x1.0024d28978755da4p+0 : inexact-ok
+= rootn towardzero intel96 0x2p+0 1234LL : 0x1.0024d28978755da4p+0 : inexact-ok
+= rootn upward intel96 0x2p+0 1234LL : 0x1.0024d28978755da6p+0 : inexact-ok
+= rootn downward m68k96 0x2p+0 1234LL : 0x1.0024d28978755da4p+0 : inexact-ok
+= rootn tonearest m68k96 0x2p+0 1234LL : 0x1.0024d28978755da4p+0 : inexact-ok
+= rootn towardzero m68k96 0x2p+0 1234LL : 0x1.0024d28978755da4p+0 : inexact-ok
+= rootn upward m68k96 0x2p+0 1234LL : 0x1.0024d28978755da6p+0 : inexact-ok
+= rootn downward binary128 0x2p+0 1234LL : 0x1.0024d28978755da4c276c547e622p+0 : inexact-ok
+= rootn tonearest binary128 0x2p+0 1234LL : 0x1.0024d28978755da4c276c547e622p+0 : inexact-ok
+= rootn towardzero binary128 0x2p+0 1234LL : 0x1.0024d28978755da4c276c547e622p+0 : inexact-ok
+= rootn upward binary128 0x2p+0 1234LL : 0x1.0024d28978755da4c276c547e623p+0 : inexact-ok
+= rootn downward ibm128 0x2p+0 1234LL : 0x1.0024d28978755da4c276c547e6p+0 : inexact-ok
+= rootn tonearest ibm128 0x2p+0 1234LL : 0x1.0024d28978755da4c276c547e6p+0 : inexact-ok
+= rootn towardzero ibm128 0x2p+0 1234LL : 0x1.0024d28978755da4c276c547e6p+0 : inexact-ok
+= rootn upward ibm128 0x2p+0 1234LL : 0x1.0024d28978755da4c276c547e68p+0 : inexact-ok
+rootn 2 -1234
+= rootn downward binary32 0x2p+0 -1234LL : 0xf.fdb32p-4 : inexact-ok
+= rootn tonearest binary32 0x2p+0 -1234LL : 0xf.fdb33p-4 : inexact-ok
+= rootn towardzero binary32 0x2p+0 -1234LL : 0xf.fdb32p-4 : inexact-ok
+= rootn upward binary32 0x2p+0 -1234LL : 0xf.fdb33p-4 : inexact-ok
+= rootn downward binary64 0x2p+0 -1234LL : 0xf.fdb32c1a86f38p-4 : inexact-ok
+= rootn tonearest binary64 0x2p+0 -1234LL : 0xf.fdb32c1a86f4p-4 : inexact-ok
+= rootn towardzero binary64 0x2p+0 -1234LL : 0xf.fdb32c1a86f38p-4 : inexact-ok
+= rootn upward binary64 0x2p+0 -1234LL : 0xf.fdb32c1a86f4p-4 : inexact-ok
+= rootn downward intel96 0x2p+0 -1234LL : 0xf.fdb32c1a86f3dfcp-4 : inexact-ok
+= rootn tonearest intel96 0x2p+0 -1234LL : 0xf.fdb32c1a86f3dfdp-4 : inexact-ok
+= rootn towardzero intel96 0x2p+0 -1234LL : 0xf.fdb32c1a86f3dfcp-4 : inexact-ok
+= rootn upward intel96 0x2p+0 -1234LL : 0xf.fdb32c1a86f3dfdp-4 : inexact-ok
+= rootn downward m68k96 0x2p+0 -1234LL : 0xf.fdb32c1a86f3dfcp-4 : inexact-ok
+= rootn tonearest m68k96 0x2p+0 -1234LL : 0xf.fdb32c1a86f3dfdp-4 : inexact-ok
+= rootn towardzero m68k96 0x2p+0 -1234LL : 0xf.fdb32c1a86f3dfcp-4 : inexact-ok
+= rootn upward m68k96 0x2p+0 -1234LL : 0xf.fdb32c1a86f3dfdp-4 : inexact-ok
+= rootn downward binary128 0x2p+0 -1234LL : 0xf.fdb32c1a86f3dfc9e6a840f86398p-4 : inexact-ok
+= rootn tonearest binary128 0x2p+0 -1234LL : 0xf.fdb32c1a86f3dfc9e6a840f86398p-4 : inexact-ok
+= rootn towardzero binary128 0x2p+0 -1234LL : 0xf.fdb32c1a86f3dfc9e6a840f86398p-4 : inexact-ok
+= rootn upward binary128 0x2p+0 -1234LL : 0xf.fdb32c1a86f3dfc9e6a840f863ap-4 : inexact-ok
+= rootn downward ibm128 0x2p+0 -1234LL : 0xf.fdb32c1a86f3dfc9e6a840f86p-4 : inexact-ok
+= rootn tonearest ibm128 0x2p+0 -1234LL : 0xf.fdb32c1a86f3dfc9e6a840f864p-4 : inexact-ok
+= rootn towardzero ibm128 0x2p+0 -1234LL : 0xf.fdb32c1a86f3dfc9e6a840f86p-4 : inexact-ok
+= rootn upward ibm128 0x2p+0 -1234LL : 0xf.fdb32c1a86f3dfc9e6a840f864p-4 : inexact-ok
+rootn -2 123
+= rootn downward binary32 -0x2p+0 123LL : -0x1.01725ep+0 : inexact-ok
+= rootn tonearest binary32 -0x2p+0 123LL : -0x1.01725cp+0 : inexact-ok
+= rootn towardzero binary32 -0x2p+0 123LL : -0x1.01725cp+0 : inexact-ok
+= rootn upward binary32 -0x2p+0 123LL : -0x1.01725cp+0 : inexact-ok
+= rootn downward binary64 -0x2p+0 123LL : -0x1.01725c43b5ccap+0 : inexact-ok
+= rootn tonearest binary64 -0x2p+0 123LL : -0x1.01725c43b5ccap+0 : inexact-ok
+= rootn towardzero binary64 -0x2p+0 123LL : -0x1.01725c43b5cc9p+0 : inexact-ok
+= rootn upward binary64 -0x2p+0 123LL : -0x1.01725c43b5cc9p+0 : inexact-ok
+= rootn downward intel96 -0x2p+0 123LL : -0x1.01725c43b5cc9ffep+0 : inexact-ok
+= rootn tonearest intel96 -0x2p+0 123LL : -0x1.01725c43b5cc9ffcp+0 : inexact-ok
+= rootn towardzero intel96 -0x2p+0 123LL : -0x1.01725c43b5cc9ffcp+0 : inexact-ok
+= rootn upward intel96 -0x2p+0 123LL : -0x1.01725c43b5cc9ffcp+0 : inexact-ok
+= rootn downward m68k96 -0x2p+0 123LL : -0x1.01725c43b5cc9ffep+0 : inexact-ok
+= rootn tonearest m68k96 -0x2p+0 123LL : -0x1.01725c43b5cc9ffcp+0 : inexact-ok
+= rootn towardzero m68k96 -0x2p+0 123LL : -0x1.01725c43b5cc9ffcp+0 : inexact-ok
+= rootn upward m68k96 -0x2p+0 123LL : -0x1.01725c43b5cc9ffcp+0 : inexact-ok
+= rootn downward binary128 -0x2p+0 123LL : -0x1.01725c43b5cc9ffc6879187685ffp+0 : inexact-ok
+= rootn tonearest binary128 -0x2p+0 123LL : -0x1.01725c43b5cc9ffc6879187685ffp+0 : inexact-ok
+= rootn towardzero binary128 -0x2p+0 123LL : -0x1.01725c43b5cc9ffc6879187685fep+0 : inexact-ok
+= rootn upward binary128 -0x2p+0 123LL : -0x1.01725c43b5cc9ffc6879187685fep+0 : inexact-ok
+= rootn downward ibm128 -0x2p+0 123LL : -0x1.01725c43b5cc9ffc6879187686p+0 : inexact-ok
+= rootn tonearest ibm128 -0x2p+0 123LL : -0x1.01725c43b5cc9ffc6879187686p+0 : inexact-ok
+= rootn towardzero ibm128 -0x2p+0 123LL : -0x1.01725c43b5cc9ffc68791876858p+0 : inexact-ok
+= rootn upward ibm128 -0x2p+0 123LL : -0x1.01725c43b5cc9ffc68791876858p+0 : inexact-ok
+rootn -2 -123
+= rootn downward binary32 -0x2p+0 -123LL : -0xf.e8fb9p-4 : inexact-ok
+= rootn tonearest binary32 -0x2p+0 -123LL : -0xf.e8fb9p-4 : inexact-ok
+= rootn towardzero binary32 -0x2p+0 -123LL : -0xf.e8fb8p-4 : inexact-ok
+= rootn upward binary32 -0x2p+0 -123LL : -0xf.e8fb8p-4 : inexact-ok
+= rootn downward binary64 -0x2p+0 -123LL : -0xf.e8fb8885046ap-4 : inexact-ok
+= rootn tonearest binary64 -0x2p+0 -123LL : -0xf.e8fb888504698p-4 : inexact-ok
+= rootn towardzero binary64 -0x2p+0 -123LL : -0xf.e8fb888504698p-4 : inexact-ok
+= rootn upward binary64 -0x2p+0 -123LL : -0xf.e8fb888504698p-4 : inexact-ok
+= rootn downward intel96 -0x2p+0 -123LL : -0xf.e8fb88850469a59p-4 : inexact-ok
+= rootn tonearest intel96 -0x2p+0 -123LL : -0xf.e8fb88850469a59p-4 : inexact-ok
+= rootn towardzero intel96 -0x2p+0 -123LL : -0xf.e8fb88850469a58p-4 : inexact-ok
+= rootn upward intel96 -0x2p+0 -123LL : -0xf.e8fb88850469a58p-4 : inexact-ok
+= rootn downward m68k96 -0x2p+0 -123LL : -0xf.e8fb88850469a59p-4 : inexact-ok
+= rootn tonearest m68k96 -0x2p+0 -123LL : -0xf.e8fb88850469a59p-4 : inexact-ok
+= rootn towardzero m68k96 -0x2p+0 -123LL : -0xf.e8fb88850469a58p-4 : inexact-ok
+= rootn upward m68k96 -0x2p+0 -123LL : -0xf.e8fb88850469a58p-4 : inexact-ok
+= rootn downward binary128 -0x2p+0 -123LL : -0xf.e8fb88850469a58db45c079bc98p-4 : inexact-ok
+= rootn tonearest binary128 -0x2p+0 -123LL : -0xf.e8fb88850469a58db45c079bc978p-4 : inexact-ok
+= rootn towardzero binary128 -0x2p+0 -123LL : -0xf.e8fb88850469a58db45c079bc978p-4 : inexact-ok
+= rootn upward binary128 -0x2p+0 -123LL : -0xf.e8fb88850469a58db45c079bc978p-4 : inexact-ok
+= rootn downward ibm128 -0x2p+0 -123LL : -0xf.e8fb88850469a58db45c079bccp-4 : inexact-ok
+= rootn tonearest ibm128 -0x2p+0 -123LL : -0xf.e8fb88850469a58db45c079bc8p-4 : inexact-ok
+= rootn towardzero ibm128 -0x2p+0 -123LL : -0xf.e8fb88850469a58db45c079bc8p-4 : inexact-ok
+= rootn upward ibm128 -0x2p+0 -123LL : -0xf.e8fb88850469a58db45c079bc8p-4 : inexact-ok
+rootn 0x1.234p50 123
+= rootn downward binary32 0x4.8dp+48 123LL : 0x1.53ad28p+0 : inexact-ok
+= rootn tonearest binary32 0x4.8dp+48 123LL : 0x1.53ad28p+0 : inexact-ok
+= rootn towardzero binary32 0x4.8dp+48 123LL : 0x1.53ad28p+0 : inexact-ok
+= rootn upward binary32 0x4.8dp+48 123LL : 0x1.53ad2ap+0 : inexact-ok
+= rootn downward binary64 0x4.8dp+48 123LL : 0x1.53ad28bfc27afp+0 : inexact-ok
+= rootn tonearest binary64 0x4.8dp+48 123LL : 0x1.53ad28bfc27afp+0 : inexact-ok
+= rootn towardzero binary64 0x4.8dp+48 123LL : 0x1.53ad28bfc27afp+0 : inexact-ok
+= rootn upward binary64 0x4.8dp+48 123LL : 0x1.53ad28bfc27bp+0 : inexact-ok
+= rootn downward intel96 0x4.8dp+48 123LL : 0x1.53ad28bfc27af0dap+0 : inexact-ok
+= rootn tonearest intel96 0x4.8dp+48 123LL : 0x1.53ad28bfc27af0dcp+0 : inexact-ok
+= rootn towardzero intel96 0x4.8dp+48 123LL : 0x1.53ad28bfc27af0dap+0 : inexact-ok
+= rootn upward intel96 0x4.8dp+48 123LL : 0x1.53ad28bfc27af0dcp+0 : inexact-ok
+= rootn downward m68k96 0x4.8dp+48 123LL : 0x1.53ad28bfc27af0dap+0 : inexact-ok
+= rootn tonearest m68k96 0x4.8dp+48 123LL : 0x1.53ad28bfc27af0dcp+0 : inexact-ok
+= rootn towardzero m68k96 0x4.8dp+48 123LL : 0x1.53ad28bfc27af0dap+0 : inexact-ok
+= rootn upward m68k96 0x4.8dp+48 123LL : 0x1.53ad28bfc27af0dcp+0 : inexact-ok
+= rootn downward binary128 0x4.8dp+48 123LL : 0x1.53ad28bfc27af0dbc4196a457f3dp+0 : inexact-ok
+= rootn tonearest binary128 0x4.8dp+48 123LL : 0x1.53ad28bfc27af0dbc4196a457f3dp+0 : inexact-ok
+= rootn towardzero binary128 0x4.8dp+48 123LL : 0x1.53ad28bfc27af0dbc4196a457f3dp+0 : inexact-ok
+= rootn upward binary128 0x4.8dp+48 123LL : 0x1.53ad28bfc27af0dbc4196a457f3ep+0 : inexact-ok
+= rootn downward ibm128 0x4.8dp+48 123LL : 0x1.53ad28bfc27af0dbc4196a457fp+0 : inexact-ok
+= rootn tonearest ibm128 0x4.8dp+48 123LL : 0x1.53ad28bfc27af0dbc4196a457fp+0 : inexact-ok
+= rootn towardzero ibm128 0x4.8dp+48 123LL : 0x1.53ad28bfc27af0dbc4196a457fp+0 : inexact-ok
+= rootn upward ibm128 0x4.8dp+48 123LL : 0x1.53ad28bfc27af0dbc4196a457f8p+0 : inexact-ok
+rootn 0x1.234p50 -123
+= rootn downward binary32 0x4.8dp+48 -123LL : 0xc.0efc3p-4 : inexact-ok
+= rootn tonearest binary32 0x4.8dp+48 -123LL : 0xc.0efc3p-4 : inexact-ok
+= rootn towardzero binary32 0x4.8dp+48 -123LL : 0xc.0efc3p-4 : inexact-ok
+= rootn upward binary32 0x4.8dp+48 -123LL : 0xc.0efc4p-4 : inexact-ok
+= rootn downward binary64 0x4.8dp+48 -123LL : 0xc.0efc307b7653p-4 : inexact-ok
+= rootn tonearest binary64 0x4.8dp+48 -123LL : 0xc.0efc307b7653p-4 : inexact-ok
+= rootn towardzero binary64 0x4.8dp+48 -123LL : 0xc.0efc307b7653p-4 : inexact-ok
+= rootn upward binary64 0x4.8dp+48 -123LL : 0xc.0efc307b76538p-4 : inexact-ok
+= rootn downward intel96 0x4.8dp+48 -123LL : 0xc.0efc307b76530ccp-4 : inexact-ok
+= rootn tonearest intel96 0x4.8dp+48 -123LL : 0xc.0efc307b76530cdp-4 : inexact-ok
+= rootn towardzero intel96 0x4.8dp+48 -123LL : 0xc.0efc307b76530ccp-4 : inexact-ok
+= rootn upward intel96 0x4.8dp+48 -123LL : 0xc.0efc307b76530cdp-4 : inexact-ok
+= rootn downward m68k96 0x4.8dp+48 -123LL : 0xc.0efc307b76530ccp-4 : inexact-ok
+= rootn tonearest m68k96 0x4.8dp+48 -123LL : 0xc.0efc307b76530cdp-4 : inexact-ok
+= rootn towardzero m68k96 0x4.8dp+48 -123LL : 0xc.0efc307b76530ccp-4 : inexact-ok
+= rootn upward m68k96 0x4.8dp+48 -123LL : 0xc.0efc307b76530cdp-4 : inexact-ok
+= rootn downward binary128 0x4.8dp+48 -123LL : 0xc.0efc307b76530ccc9b1c5d8e797p-4 : inexact-ok
+= rootn tonearest binary128 0x4.8dp+48 -123LL : 0xc.0efc307b76530ccc9b1c5d8e797p-4 : inexact-ok
+= rootn towardzero binary128 0x4.8dp+48 -123LL : 0xc.0efc307b76530ccc9b1c5d8e797p-4 : inexact-ok
+= rootn upward binary128 0x4.8dp+48 -123LL : 0xc.0efc307b76530ccc9b1c5d8e7978p-4 : inexact-ok
+= rootn downward ibm128 0x4.8dp+48 -123LL : 0xc.0efc307b76530ccc9b1c5d8e78p-4 : inexact-ok
+= rootn tonearest ibm128 0x4.8dp+48 -123LL : 0xc.0efc307b76530ccc9b1c5d8e78p-4 : inexact-ok
+= rootn towardzero ibm128 0x4.8dp+48 -123LL : 0xc.0efc307b76530ccc9b1c5d8e78p-4 : inexact-ok
+= rootn upward ibm128 0x4.8dp+48 -123LL : 0xc.0efc307b76530ccc9b1c5d8e7cp-4 : inexact-ok
+rootn 0x1.234p50 1234
+= rootn downward binary32 0x4.8dp+48 1234LL : 0x1.0751bcp+0 : inexact-ok
+= rootn tonearest binary32 0x4.8dp+48 1234LL : 0x1.0751bep+0 : inexact-ok
+= rootn towardzero binary32 0x4.8dp+48 1234LL : 0x1.0751bcp+0 : inexact-ok
+= rootn upward binary32 0x4.8dp+48 1234LL : 0x1.0751bep+0 : inexact-ok
+= rootn downward binary64 0x4.8dp+48 1234LL : 0x1.0751bdae6b4c9p+0 : inexact-ok
+= rootn tonearest binary64 0x4.8dp+48 1234LL : 0x1.0751bdae6b4c9p+0 : inexact-ok
+= rootn towardzero binary64 0x4.8dp+48 1234LL : 0x1.0751bdae6b4c9p+0 : inexact-ok
+= rootn upward binary64 0x4.8dp+48 1234LL : 0x1.0751bdae6b4cap+0 : inexact-ok
+= rootn downward intel96 0x4.8dp+48 1234LL : 0x1.0751bdae6b4c9578p+0 : inexact-ok
+= rootn tonearest intel96 0x4.8dp+48 1234LL : 0x1.0751bdae6b4c957ap+0 : inexact-ok
+= rootn towardzero intel96 0x4.8dp+48 1234LL : 0x1.0751bdae6b4c9578p+0 : inexact-ok
+= rootn upward intel96 0x4.8dp+48 1234LL : 0x1.0751bdae6b4c957ap+0 : inexact-ok
+= rootn downward m68k96 0x4.8dp+48 1234LL : 0x1.0751bdae6b4c9578p+0 : inexact-ok
+= rootn tonearest m68k96 0x4.8dp+48 1234LL : 0x1.0751bdae6b4c957ap+0 : inexact-ok
+= rootn towardzero m68k96 0x4.8dp+48 1234LL : 0x1.0751bdae6b4c9578p+0 : inexact-ok
+= rootn upward m68k96 0x4.8dp+48 1234LL : 0x1.0751bdae6b4c957ap+0 : inexact-ok
+= rootn downward binary128 0x4.8dp+48 1234LL : 0x1.0751bdae6b4c9579f01442dbe202p+0 : inexact-ok
+= rootn tonearest binary128 0x4.8dp+48 1234LL : 0x1.0751bdae6b4c9579f01442dbe202p+0 : inexact-ok
+= rootn towardzero binary128 0x4.8dp+48 1234LL : 0x1.0751bdae6b4c9579f01442dbe202p+0 : inexact-ok
+= rootn upward binary128 0x4.8dp+48 1234LL : 0x1.0751bdae6b4c9579f01442dbe203p+0 : inexact-ok
+= rootn downward ibm128 0x4.8dp+48 1234LL : 0x1.0751bdae6b4c9579f01442dbe2p+0 : inexact-ok
+= rootn tonearest ibm128 0x4.8dp+48 1234LL : 0x1.0751bdae6b4c9579f01442dbe2p+0 : inexact-ok
+= rootn towardzero ibm128 0x4.8dp+48 1234LL : 0x1.0751bdae6b4c9579f01442dbe2p+0 : inexact-ok
+= rootn upward ibm128 0x4.8dp+48 1234LL : 0x1.0751bdae6b4c9579f01442dbe28p+0 : inexact-ok
+rootn 0x1.234p50 -1234
+= rootn downward binary32 0x4.8dp+48 -1234LL : 0xf.8e257p-4 : inexact-ok
+= rootn tonearest binary32 0x4.8dp+48 -1234LL : 0xf.8e258p-4 : inexact-ok
+= rootn towardzero binary32 0x4.8dp+48 -1234LL : 0xf.8e257p-4 : inexact-ok
+= rootn upward binary32 0x4.8dp+48 -1234LL : 0xf.8e258p-4 : inexact-ok
+= rootn downward binary64 0x4.8dp+48 -1234LL : 0xf.8e257948d50dp-4 : inexact-ok
+= rootn tonearest binary64 0x4.8dp+48 -1234LL : 0xf.8e257948d50dp-4 : inexact-ok
+= rootn towardzero binary64 0x4.8dp+48 -1234LL : 0xf.8e257948d50dp-4 : inexact-ok
+= rootn upward binary64 0x4.8dp+48 -1234LL : 0xf.8e257948d50d8p-4 : inexact-ok
+= rootn downward intel96 0x4.8dp+48 -1234LL : 0xf.8e257948d50d148p-4 : inexact-ok
+= rootn tonearest intel96 0x4.8dp+48 -1234LL : 0xf.8e257948d50d149p-4 : inexact-ok
+= rootn towardzero intel96 0x4.8dp+48 -1234LL : 0xf.8e257948d50d148p-4 : inexact-ok
+= rootn upward intel96 0x4.8dp+48 -1234LL : 0xf.8e257948d50d149p-4 : inexact-ok
+= rootn downward m68k96 0x4.8dp+48 -1234LL : 0xf.8e257948d50d148p-4 : inexact-ok
+= rootn tonearest m68k96 0x4.8dp+48 -1234LL : 0xf.8e257948d50d149p-4 : inexact-ok
+= rootn towardzero m68k96 0x4.8dp+48 -1234LL : 0xf.8e257948d50d148p-4 : inexact-ok
+= rootn upward m68k96 0x4.8dp+48 -1234LL : 0xf.8e257948d50d149p-4 : inexact-ok
+= rootn downward binary128 0x4.8dp+48 -1234LL : 0xf.8e257948d50d148b321040f94188p-4 : inexact-ok
+= rootn tonearest binary128 0x4.8dp+48 -1234LL : 0xf.8e257948d50d148b321040f9419p-4 : inexact-ok
+= rootn towardzero binary128 0x4.8dp+48 -1234LL : 0xf.8e257948d50d148b321040f94188p-4 : inexact-ok
+= rootn upward binary128 0x4.8dp+48 -1234LL : 0xf.8e257948d50d148b321040f9419p-4 : inexact-ok
+= rootn downward ibm128 0x4.8dp+48 -1234LL : 0xf.8e257948d50d148b321040f94p-4 : inexact-ok
+= rootn tonearest ibm128 0x4.8dp+48 -1234LL : 0xf.8e257948d50d148b321040f94p-4 : inexact-ok
+= rootn towardzero ibm128 0x4.8dp+48 -1234LL : 0xf.8e257948d50d148b321040f94p-4 : inexact-ok
+= rootn upward ibm128 0x4.8dp+48 -1234LL : 0xf.8e257948d50d148b321040f944p-4 : inexact-ok
+rootn -0x1.234p50 123
+= rootn downward binary32 -0x4.8dp+48 123LL : -0x1.53ad2ap+0 : inexact-ok
+= rootn tonearest binary32 -0x4.8dp+48 123LL : -0x1.53ad28p+0 : inexact-ok
+= rootn towardzero binary32 -0x4.8dp+48 123LL : -0x1.53ad28p+0 : inexact-ok
+= rootn upward binary32 -0x4.8dp+48 123LL : -0x1.53ad28p+0 : inexact-ok
+= rootn downward binary64 -0x4.8dp+48 123LL : -0x1.53ad28bfc27bp+0 : inexact-ok
+= rootn tonearest binary64 -0x4.8dp+48 123LL : -0x1.53ad28bfc27afp+0 : inexact-ok
+= rootn towardzero binary64 -0x4.8dp+48 123LL : -0x1.53ad28bfc27afp+0 : inexact-ok
+= rootn upward binary64 -0x4.8dp+48 123LL : -0x1.53ad28bfc27afp+0 : inexact-ok
+= rootn downward intel96 -0x4.8dp+48 123LL : -0x1.53ad28bfc27af0dcp+0 : inexact-ok
+= rootn tonearest intel96 -0x4.8dp+48 123LL : -0x1.53ad28bfc27af0dcp+0 : inexact-ok
+= rootn towardzero intel96 -0x4.8dp+48 123LL : -0x1.53ad28bfc27af0dap+0 : inexact-ok
+= rootn upward intel96 -0x4.8dp+48 123LL : -0x1.53ad28bfc27af0dap+0 : inexact-ok
+= rootn downward m68k96 -0x4.8dp+48 123LL : -0x1.53ad28bfc27af0dcp+0 : inexact-ok
+= rootn tonearest m68k96 -0x4.8dp+48 123LL : -0x1.53ad28bfc27af0dcp+0 : inexact-ok
+= rootn towardzero m68k96 -0x4.8dp+48 123LL : -0x1.53ad28bfc27af0dap+0 : inexact-ok
+= rootn upward m68k96 -0x4.8dp+48 123LL : -0x1.53ad28bfc27af0dap+0 : inexact-ok
+= rootn downward binary128 -0x4.8dp+48 123LL : -0x1.53ad28bfc27af0dbc4196a457f3ep+0 : inexact-ok
+= rootn tonearest binary128 -0x4.8dp+48 123LL : -0x1.53ad28bfc27af0dbc4196a457f3dp+0 : inexact-ok
+= rootn towardzero binary128 -0x4.8dp+48 123LL : -0x1.53ad28bfc27af0dbc4196a457f3dp+0 : inexact-ok
+= rootn upward binary128 -0x4.8dp+48 123LL : -0x1.53ad28bfc27af0dbc4196a457f3dp+0 : inexact-ok
+= rootn downward ibm128 -0x4.8dp+48 123LL : -0x1.53ad28bfc27af0dbc4196a457f8p+0 : inexact-ok
+= rootn tonearest ibm128 -0x4.8dp+48 123LL : -0x1.53ad28bfc27af0dbc4196a457fp+0 : inexact-ok
+= rootn towardzero ibm128 -0x4.8dp+48 123LL : -0x1.53ad28bfc27af0dbc4196a457fp+0 : inexact-ok
+= rootn upward ibm128 -0x4.8dp+48 123LL : -0x1.53ad28bfc27af0dbc4196a457fp+0 : inexact-ok
+rootn -0x1.234p50 -123
+= rootn downward binary32 -0x4.8dp+48 -123LL : -0xc.0efc4p-4 : inexact-ok
+= rootn tonearest binary32 -0x4.8dp+48 -123LL : -0xc.0efc3p-4 : inexact-ok
+= rootn towardzero binary32 -0x4.8dp+48 -123LL : -0xc.0efc3p-4 : inexact-ok
+= rootn upward binary32 -0x4.8dp+48 -123LL : -0xc.0efc3p-4 : inexact-ok
+= rootn downward binary64 -0x4.8dp+48 -123LL : -0xc.0efc307b76538p-4 : inexact-ok
+= rootn tonearest binary64 -0x4.8dp+48 -123LL : -0xc.0efc307b7653p-4 : inexact-ok
+= rootn towardzero binary64 -0x4.8dp+48 -123LL : -0xc.0efc307b7653p-4 : inexact-ok
+= rootn upward binary64 -0x4.8dp+48 -123LL : -0xc.0efc307b7653p-4 : inexact-ok
+= rootn downward intel96 -0x4.8dp+48 -123LL : -0xc.0efc307b76530cdp-4 : inexact-ok
+= rootn tonearest intel96 -0x4.8dp+48 -123LL : -0xc.0efc307b76530cdp-4 : inexact-ok
+= rootn towardzero intel96 -0x4.8dp+48 -123LL : -0xc.0efc307b76530ccp-4 : inexact-ok
+= rootn upward intel96 -0x4.8dp+48 -123LL : -0xc.0efc307b76530ccp-4 : inexact-ok
+= rootn downward m68k96 -0x4.8dp+48 -123LL : -0xc.0efc307b76530cdp-4 : inexact-ok
+= rootn tonearest m68k96 -0x4.8dp+48 -123LL : -0xc.0efc307b76530cdp-4 : inexact-ok
+= rootn towardzero m68k96 -0x4.8dp+48 -123LL : -0xc.0efc307b76530ccp-4 : inexact-ok
+= rootn upward m68k96 -0x4.8dp+48 -123LL : -0xc.0efc307b76530ccp-4 : inexact-ok
+= rootn downward binary128 -0x4.8dp+48 -123LL : -0xc.0efc307b76530ccc9b1c5d8e7978p-4 : inexact-ok
+= rootn tonearest binary128 -0x4.8dp+48 -123LL : -0xc.0efc307b76530ccc9b1c5d8e797p-4 : inexact-ok
+= rootn towardzero binary128 -0x4.8dp+48 -123LL : -0xc.0efc307b76530ccc9b1c5d8e797p-4 : inexact-ok
+= rootn upward binary128 -0x4.8dp+48 -123LL : -0xc.0efc307b76530ccc9b1c5d8e797p-4 : inexact-ok
+= rootn downward ibm128 -0x4.8dp+48 -123LL : -0xc.0efc307b76530ccc9b1c5d8e7cp-4 : inexact-ok
+= rootn tonearest ibm128 -0x4.8dp+48 -123LL : -0xc.0efc307b76530ccc9b1c5d8e78p-4 : inexact-ok
+= rootn towardzero ibm128 -0x4.8dp+48 -123LL : -0xc.0efc307b76530ccc9b1c5d8e78p-4 : inexact-ok
+= rootn upward ibm128 -0x4.8dp+48 -123LL : -0xc.0efc307b76530ccc9b1c5d8e78p-4 : inexact-ok
+rootn 0x1.234p500 123
+= rootn downward binary32 0xf.fffffp+124 123LL : 0x2.0ea1bp+0 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 123LL : 0x2.0ea1b4p+0 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 123LL : 0x2.0ea1bp+0 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 123LL : 0x2.0ea1b4p+0 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 123LL : 0x2.0ea1b3849986ap+0 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 123LL : 0x2.0ea1b3849986ap+0 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 123LL : 0x2.0ea1b3849986ap+0 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 123LL : 0x2.0ea1b3849986cp+0 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aeacp+0 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aebp+0 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aeacp+0 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aebp+0 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aeacp+0 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aebp+0 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aeacp+0 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aebp+0 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aeae00eedefe84d4p+0 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aeae00eedefe84d6p+0 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aeae00eedefe84d4p+0 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aeae00eedefe84d6p+0 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aeae00eedefe84p+0 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aeae00eedefe85p+0 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aeae00eedefe84p+0 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aeae00eedefe85p+0 : inexact-ok
+= rootn downward binary64 0x1.234p+500 123LL : 0x1.0c1618d82017dp+4 : inexact-ok
+= rootn tonearest binary64 0x1.234p+500 123LL : 0x1.0c1618d82017ep+4 : inexact-ok
+= rootn towardzero binary64 0x1.234p+500 123LL : 0x1.0c1618d82017dp+4 : inexact-ok
+= rootn upward binary64 0x1.234p+500 123LL : 0x1.0c1618d82017ep+4 : inexact-ok
+= rootn downward intel96 0x1.234p+500 123LL : 0x1.0c1618d82017d898p+4 : inexact-ok
+= rootn tonearest intel96 0x1.234p+500 123LL : 0x1.0c1618d82017d89ap+4 : inexact-ok
+= rootn towardzero intel96 0x1.234p+500 123LL : 0x1.0c1618d82017d898p+4 : inexact-ok
+= rootn upward intel96 0x1.234p+500 123LL : 0x1.0c1618d82017d89ap+4 : inexact-ok
+= rootn downward m68k96 0x1.234p+500 123LL : 0x1.0c1618d82017d898p+4 : inexact-ok
+= rootn tonearest m68k96 0x1.234p+500 123LL : 0x1.0c1618d82017d89ap+4 : inexact-ok
+= rootn towardzero m68k96 0x1.234p+500 123LL : 0x1.0c1618d82017d898p+4 : inexact-ok
+= rootn upward m68k96 0x1.234p+500 123LL : 0x1.0c1618d82017d89ap+4 : inexact-ok
+= rootn downward binary128 0x1.234p+500 123LL : 0x1.0c1618d82017d89964fae23e2aap+4 : inexact-ok
+= rootn tonearest binary128 0x1.234p+500 123LL : 0x1.0c1618d82017d89964fae23e2aa1p+4 : inexact-ok
+= rootn towardzero binary128 0x1.234p+500 123LL : 0x1.0c1618d82017d89964fae23e2aap+4 : inexact-ok
+= rootn upward binary128 0x1.234p+500 123LL : 0x1.0c1618d82017d89964fae23e2aa1p+4 : inexact-ok
+= rootn downward ibm128 0x1.234p+500 123LL : 0x1.0c1618d82017d89964fae23e2a8p+4 : inexact-ok
+= rootn tonearest ibm128 0x1.234p+500 123LL : 0x1.0c1618d82017d89964fae23e2a8p+4 : inexact-ok
+= rootn towardzero ibm128 0x1.234p+500 123LL : 0x1.0c1618d82017d89964fae23e2a8p+4 : inexact-ok
+= rootn upward ibm128 0x1.234p+500 123LL : 0x1.0c1618d82017d89964fae23e2bp+4 : inexact-ok
+rootn 0x1.234p500 -123
+= rootn downward binary32 0xf.fffffp+124 -123LL : 0x7.c71978p-4 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 -123LL : 0x7.c71978p-4 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 -123LL : 0x7.c71978p-4 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 -123LL : 0x7.c7198p-4 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 -123LL : 0x7.c7197816117d8p-4 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 -123LL : 0x7.c7197816117d8p-4 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 -123LL : 0x7.c7197816117d8p-4 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 -123LL : 0x7.c7197816117dcp-4 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 -123LL : 0x7.c7197816117d8538p-4 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 -123LL : 0x7.c7197816117d8538p-4 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 -123LL : 0x7.c7197816117d8538p-4 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 -123LL : 0x7.c7197816117d854p-4 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 -123LL : 0x7.c7197816117d8538p-4 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 -123LL : 0x7.c7197816117d8538p-4 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 -123LL : 0x7.c7197816117d8538p-4 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 -123LL : 0x7.c7197816117d854p-4 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 -123LL : 0x7.c7197816117d8539c75883588c68p-4 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 -123LL : 0x7.c7197816117d8539c75883588c6cp-4 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 -123LL : 0x7.c7197816117d8539c75883588c68p-4 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 -123LL : 0x7.c7197816117d8539c75883588c6cp-4 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 -123LL : 0x7.c7197816117d8539c75883588cp-4 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 -123LL : 0x7.c7197816117d8539c75883588cp-4 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 -123LL : 0x7.c7197816117d8539c75883588cp-4 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 -123LL : 0x7.c7197816117d8539c75883588ep-4 : inexact-ok
+= rootn downward binary64 0x1.234p+500 -123LL : 0xf.475656eb4cd68p-8 : inexact-ok
+= rootn tonearest binary64 0x1.234p+500 -123LL : 0xf.475656eb4cd7p-8 : inexact-ok
+= rootn towardzero binary64 0x1.234p+500 -123LL : 0xf.475656eb4cd68p-8 : inexact-ok
+= rootn upward binary64 0x1.234p+500 -123LL : 0xf.475656eb4cd7p-8 : inexact-ok
+= rootn downward intel96 0x1.234p+500 -123LL : 0xf.475656eb4cd6cd3p-8 : inexact-ok
+= rootn tonearest intel96 0x1.234p+500 -123LL : 0xf.475656eb4cd6cd3p-8 : inexact-ok
+= rootn towardzero intel96 0x1.234p+500 -123LL : 0xf.475656eb4cd6cd3p-8 : inexact-ok
+= rootn upward intel96 0x1.234p+500 -123LL : 0xf.475656eb4cd6cd4p-8 : inexact-ok
+= rootn downward m68k96 0x1.234p+500 -123LL : 0xf.475656eb4cd6cd3p-8 : inexact-ok
+= rootn tonearest m68k96 0x1.234p+500 -123LL : 0xf.475656eb4cd6cd3p-8 : inexact-ok
+= rootn towardzero m68k96 0x1.234p+500 -123LL : 0xf.475656eb4cd6cd3p-8 : inexact-ok
+= rootn upward m68k96 0x1.234p+500 -123LL : 0xf.475656eb4cd6cd4p-8 : inexact-ok
+= rootn downward binary128 0x1.234p+500 -123LL : 0xf.475656eb4cd6cd3714500eaf8ab8p-8 : inexact-ok
+= rootn tonearest binary128 0x1.234p+500 -123LL : 0xf.475656eb4cd6cd3714500eaf8acp-8 : inexact-ok
+= rootn towardzero binary128 0x1.234p+500 -123LL : 0xf.475656eb4cd6cd3714500eaf8ab8p-8 : inexact-ok
+= rootn upward binary128 0x1.234p+500 -123LL : 0xf.475656eb4cd6cd3714500eaf8acp-8 : inexact-ok
+= rootn downward ibm128 0x1.234p+500 -123LL : 0xf.475656eb4cd6cd3714500eaf88p-8 : inexact-ok
+= rootn tonearest ibm128 0x1.234p+500 -123LL : 0xf.475656eb4cd6cd3714500eaf8cp-8 : inexact-ok
+= rootn towardzero ibm128 0x1.234p+500 -123LL : 0xf.475656eb4cd6cd3714500eaf88p-8 : inexact-ok
+= rootn upward ibm128 0x1.234p+500 -123LL : 0xf.475656eb4cd6cd3714500eaf8cp-8 : inexact-ok
+rootn 0x1.234p500 1234
+= rootn downward binary32 0xf.fffffp+124 1234LL : 0x1.131578p+0 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 1234LL : 0x1.131578p+0 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 1234LL : 0x1.131578p+0 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 1234LL : 0x1.13157ap+0 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 1234LL : 0x1.131578396c7dcp+0 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 1234LL : 0x1.131578396c7ddp+0 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 1234LL : 0x1.131578396c7dcp+0 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 1234LL : 0x1.131578396c7ddp+0 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 1234LL : 0x1.131578396c7dce98p+0 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 1234LL : 0x1.131578396c7dce98p+0 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 1234LL : 0x1.131578396c7dce98p+0 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 1234LL : 0x1.131578396c7dce9ap+0 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 1234LL : 0x1.131578396c7dce98p+0 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 1234LL : 0x1.131578396c7dce98p+0 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 1234LL : 0x1.131578396c7dce98p+0 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 1234LL : 0x1.131578396c7dce9ap+0 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 1234LL : 0x1.131578396c7dce9828074e15d97ap+0 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 1234LL : 0x1.131578396c7dce9828074e15d97ap+0 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 1234LL : 0x1.131578396c7dce9828074e15d97ap+0 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 1234LL : 0x1.131578396c7dce9828074e15d97bp+0 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 1234LL : 0x1.131578396c7dce9828074e15d9p+0 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 1234LL : 0x1.131578396c7dce9828074e15d98p+0 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 1234LL : 0x1.131578396c7dce9828074e15d9p+0 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 1234LL : 0x1.131578396c7dce9828074e15d98p+0 : inexact-ok
+= rootn downward binary64 0x1.234p+500 1234LL : 0x1.530bc68fbf4acp+0 : inexact-ok
+= rootn tonearest binary64 0x1.234p+500 1234LL : 0x1.530bc68fbf4adp+0 : inexact-ok
+= rootn towardzero binary64 0x1.234p+500 1234LL : 0x1.530bc68fbf4acp+0 : inexact-ok
+= rootn upward binary64 0x1.234p+500 1234LL : 0x1.530bc68fbf4adp+0 : inexact-ok
+= rootn downward intel96 0x1.234p+500 1234LL : 0x1.530bc68fbf4ac988p+0 : inexact-ok
+= rootn tonearest intel96 0x1.234p+500 1234LL : 0x1.530bc68fbf4ac988p+0 : inexact-ok
+= rootn towardzero intel96 0x1.234p+500 1234LL : 0x1.530bc68fbf4ac988p+0 : inexact-ok
+= rootn upward intel96 0x1.234p+500 1234LL : 0x1.530bc68fbf4ac98ap+0 : inexact-ok
+= rootn downward m68k96 0x1.234p+500 1234LL : 0x1.530bc68fbf4ac988p+0 : inexact-ok
+= rootn tonearest m68k96 0x1.234p+500 1234LL : 0x1.530bc68fbf4ac988p+0 : inexact-ok
+= rootn towardzero m68k96 0x1.234p+500 1234LL : 0x1.530bc68fbf4ac988p+0 : inexact-ok
+= rootn upward m68k96 0x1.234p+500 1234LL : 0x1.530bc68fbf4ac98ap+0 : inexact-ok
+= rootn downward binary128 0x1.234p+500 1234LL : 0x1.530bc68fbf4ac98802199cd258cfp+0 : inexact-ok
+= rootn tonearest binary128 0x1.234p+500 1234LL : 0x1.530bc68fbf4ac98802199cd258cfp+0 : inexact-ok
+= rootn towardzero binary128 0x1.234p+500 1234LL : 0x1.530bc68fbf4ac98802199cd258cfp+0 : inexact-ok
+= rootn upward binary128 0x1.234p+500 1234LL : 0x1.530bc68fbf4ac98802199cd258dp+0 : inexact-ok
+= rootn downward ibm128 0x1.234p+500 1234LL : 0x1.530bc68fbf4ac98802199cd2588p+0 : inexact-ok
+= rootn tonearest ibm128 0x1.234p+500 1234LL : 0x1.530bc68fbf4ac98802199cd259p+0 : inexact-ok
+= rootn towardzero ibm128 0x1.234p+500 1234LL : 0x1.530bc68fbf4ac98802199cd2588p+0 : inexact-ok
+= rootn upward ibm128 0x1.234p+500 1234LL : 0x1.530bc68fbf4ac98802199cd259p+0 : inexact-ok
+rootn 0x1.234p500 -1234
+= rootn downward binary32 0xf.fffffp+124 -1234LL : 0xe.e3d75p-4 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 -1234LL : 0xe.e3d75p-4 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 -1234LL : 0xe.e3d75p-4 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 -1234LL : 0xe.e3d76p-4 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c62p-4 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c62p-4 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c62p-4 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c628p-4 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e2p-4 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e2p-4 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e2p-4 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e3p-4 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e2p-4 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e2p-4 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e2p-4 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e3p-4 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e20d0f98f50b4dp-4 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e20d0f98f50b4d8p-4 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e20d0f98f50b4dp-4 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e20d0f98f50b4d8p-4 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e20d0f98f50b4p-4 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e20d0f98f50b4p-4 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e20d0f98f50b4p-4 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e20d0f98f50b8p-4 : inexact-ok
+= rootn downward binary64 0x1.234p+500 -1234LL : 0xc.14b992a9953d8p-4 : inexact-ok
+= rootn tonearest binary64 0x1.234p+500 -1234LL : 0xc.14b992a9953d8p-4 : inexact-ok
+= rootn towardzero binary64 0x1.234p+500 -1234LL : 0xc.14b992a9953d8p-4 : inexact-ok
+= rootn upward binary64 0x1.234p+500 -1234LL : 0xc.14b992a9953ep-4 : inexact-ok
+= rootn downward intel96 0x1.234p+500 -1234LL : 0xc.14b992a9953d945p-4 : inexact-ok
+= rootn tonearest intel96 0x1.234p+500 -1234LL : 0xc.14b992a9953d946p-4 : inexact-ok
+= rootn towardzero intel96 0x1.234p+500 -1234LL : 0xc.14b992a9953d945p-4 : inexact-ok
+= rootn upward intel96 0x1.234p+500 -1234LL : 0xc.14b992a9953d946p-4 : inexact-ok
+= rootn downward m68k96 0x1.234p+500 -1234LL : 0xc.14b992a9953d945p-4 : inexact-ok
+= rootn tonearest m68k96 0x1.234p+500 -1234LL : 0xc.14b992a9953d946p-4 : inexact-ok
+= rootn towardzero m68k96 0x1.234p+500 -1234LL : 0xc.14b992a9953d945p-4 : inexact-ok
+= rootn upward m68k96 0x1.234p+500 -1234LL : 0xc.14b992a9953d946p-4 : inexact-ok
+= rootn downward binary128 0x1.234p+500 -1234LL : 0xc.14b992a9953d9458476f965499bp-4 : inexact-ok
+= rootn tonearest binary128 0x1.234p+500 -1234LL : 0xc.14b992a9953d9458476f965499bp-4 : inexact-ok
+= rootn towardzero binary128 0x1.234p+500 -1234LL : 0xc.14b992a9953d9458476f965499bp-4 : inexact-ok
+= rootn upward binary128 0x1.234p+500 -1234LL : 0xc.14b992a9953d9458476f965499b8p-4 : inexact-ok
+= rootn downward ibm128 0x1.234p+500 -1234LL : 0xc.14b992a9953d9458476f965498p-4 : inexact-ok
+= rootn tonearest ibm128 0x1.234p+500 -1234LL : 0xc.14b992a9953d9458476f965498p-4 : inexact-ok
+= rootn towardzero ibm128 0x1.234p+500 -1234LL : 0xc.14b992a9953d9458476f965498p-4 : inexact-ok
+= rootn upward ibm128 0x1.234p+500 -1234LL : 0xc.14b992a9953d9458476f96549cp-4 : inexact-ok
+rootn -0x1.234p500 123
+= rootn downward binary32 -0xf.fffffp+124 123LL : -0x2.0ea1b4p+0 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 123LL : -0x2.0ea1b4p+0 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 123LL : -0x2.0ea1bp+0 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 123LL : -0x2.0ea1bp+0 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986cp+0 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986ap+0 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986ap+0 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986ap+0 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aebp+0 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aebp+0 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aeacp+0 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aeacp+0 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aebp+0 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aebp+0 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aeacp+0 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aeacp+0 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aeae00eedefe84d6p+0 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aeae00eedefe84d6p+0 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aeae00eedefe84d4p+0 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aeae00eedefe84d4p+0 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aeae00eedefe85p+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aeae00eedefe85p+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aeae00eedefe84p+0 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aeae00eedefe84p+0 : inexact-ok
+= rootn downward binary64 -0x1.234p+500 123LL : -0x1.0c1618d82017ep+4 : inexact-ok
+= rootn tonearest binary64 -0x1.234p+500 123LL : -0x1.0c1618d82017ep+4 : inexact-ok
+= rootn towardzero binary64 -0x1.234p+500 123LL : -0x1.0c1618d82017dp+4 : inexact-ok
+= rootn upward binary64 -0x1.234p+500 123LL : -0x1.0c1618d82017dp+4 : inexact-ok
+= rootn downward intel96 -0x1.234p+500 123LL : -0x1.0c1618d82017d89ap+4 : inexact-ok
+= rootn tonearest intel96 -0x1.234p+500 123LL : -0x1.0c1618d82017d89ap+4 : inexact-ok
+= rootn towardzero intel96 -0x1.234p+500 123LL : -0x1.0c1618d82017d898p+4 : inexact-ok
+= rootn upward intel96 -0x1.234p+500 123LL : -0x1.0c1618d82017d898p+4 : inexact-ok
+= rootn downward m68k96 -0x1.234p+500 123LL : -0x1.0c1618d82017d89ap+4 : inexact-ok
+= rootn tonearest m68k96 -0x1.234p+500 123LL : -0x1.0c1618d82017d89ap+4 : inexact-ok
+= rootn towardzero m68k96 -0x1.234p+500 123LL : -0x1.0c1618d82017d898p+4 : inexact-ok
+= rootn upward m68k96 -0x1.234p+500 123LL : -0x1.0c1618d82017d898p+4 : inexact-ok
+= rootn downward binary128 -0x1.234p+500 123LL : -0x1.0c1618d82017d89964fae23e2aa1p+4 : inexact-ok
+= rootn tonearest binary128 -0x1.234p+500 123LL : -0x1.0c1618d82017d89964fae23e2aa1p+4 : inexact-ok
+= rootn towardzero binary128 -0x1.234p+500 123LL : -0x1.0c1618d82017d89964fae23e2aap+4 : inexact-ok
+= rootn upward binary128 -0x1.234p+500 123LL : -0x1.0c1618d82017d89964fae23e2aap+4 : inexact-ok
+= rootn downward ibm128 -0x1.234p+500 123LL : -0x1.0c1618d82017d89964fae23e2bp+4 : inexact-ok
+= rootn tonearest ibm128 -0x1.234p+500 123LL : -0x1.0c1618d82017d89964fae23e2a8p+4 : inexact-ok
+= rootn towardzero ibm128 -0x1.234p+500 123LL : -0x1.0c1618d82017d89964fae23e2a8p+4 : inexact-ok
+= rootn upward ibm128 -0x1.234p+500 123LL : -0x1.0c1618d82017d89964fae23e2a8p+4 : inexact-ok
+rootn -0x1.234p500 -123
+= rootn downward binary32 -0xf.fffffp+124 -123LL : -0x7.c7198p-4 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 -123LL : -0x7.c71978p-4 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 -123LL : -0x7.c71978p-4 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 -123LL : -0x7.c71978p-4 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 -123LL : -0x7.c7197816117dcp-4 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8p-4 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8p-4 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8p-4 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 -123LL : -0x7.c7197816117d854p-4 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8538p-4 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8538p-4 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8538p-4 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 -123LL : -0x7.c7197816117d854p-4 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8538p-4 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8538p-4 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8538p-4 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8539c75883588c6cp-4 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8539c75883588c6cp-4 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8539c75883588c68p-4 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8539c75883588c68p-4 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8539c75883588ep-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8539c75883588cp-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8539c75883588cp-4 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8539c75883588cp-4 : inexact-ok
+= rootn downward binary64 -0x1.234p+500 -123LL : -0xf.475656eb4cd7p-8 : inexact-ok
+= rootn tonearest binary64 -0x1.234p+500 -123LL : -0xf.475656eb4cd7p-8 : inexact-ok
+= rootn towardzero binary64 -0x1.234p+500 -123LL : -0xf.475656eb4cd68p-8 : inexact-ok
+= rootn upward binary64 -0x1.234p+500 -123LL : -0xf.475656eb4cd68p-8 : inexact-ok
+= rootn downward intel96 -0x1.234p+500 -123LL : -0xf.475656eb4cd6cd4p-8 : inexact-ok
+= rootn tonearest intel96 -0x1.234p+500 -123LL : -0xf.475656eb4cd6cd3p-8 : inexact-ok
+= rootn towardzero intel96 -0x1.234p+500 -123LL : -0xf.475656eb4cd6cd3p-8 : inexact-ok
+= rootn upward intel96 -0x1.234p+500 -123LL : -0xf.475656eb4cd6cd3p-8 : inexact-ok
+= rootn downward m68k96 -0x1.234p+500 -123LL : -0xf.475656eb4cd6cd4p-8 : inexact-ok
+= rootn tonearest m68k96 -0x1.234p+500 -123LL : -0xf.475656eb4cd6cd3p-8 : inexact-ok
+= rootn towardzero m68k96 -0x1.234p+500 -123LL : -0xf.475656eb4cd6cd3p-8 : inexact-ok
+= rootn upward m68k96 -0x1.234p+500 -123LL : -0xf.475656eb4cd6cd3p-8 : inexact-ok
+= rootn downward binary128 -0x1.234p+500 -123LL : -0xf.475656eb4cd6cd3714500eaf8acp-8 : inexact-ok
+= rootn tonearest binary128 -0x1.234p+500 -123LL : -0xf.475656eb4cd6cd3714500eaf8acp-8 : inexact-ok
+= rootn towardzero binary128 -0x1.234p+500 -123LL : -0xf.475656eb4cd6cd3714500eaf8ab8p-8 : inexact-ok
+= rootn upward binary128 -0x1.234p+500 -123LL : -0xf.475656eb4cd6cd3714500eaf8ab8p-8 : inexact-ok
+= rootn downward ibm128 -0x1.234p+500 -123LL : -0xf.475656eb4cd6cd3714500eaf8cp-8 : inexact-ok
+= rootn tonearest ibm128 -0x1.234p+500 -123LL : -0xf.475656eb4cd6cd3714500eaf8cp-8 : inexact-ok
+= rootn towardzero ibm128 -0x1.234p+500 -123LL : -0xf.475656eb4cd6cd3714500eaf88p-8 : inexact-ok
+= rootn upward ibm128 -0x1.234p+500 -123LL : -0xf.475656eb4cd6cd3714500eaf88p-8 : inexact-ok
+rootn 0x9.8765p5000 123
+= rootn downward binary32 0xf.fffffp+124 123LL : 0x2.0ea1bp+0 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 123LL : 0x2.0ea1b4p+0 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 123LL : 0x2.0ea1bp+0 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 123LL : 0x2.0ea1b4p+0 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 123LL : 0x2.0ea1b3849986ap+0 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 123LL : 0x2.0ea1b3849986ap+0 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 123LL : 0x2.0ea1b3849986ap+0 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 123LL : 0x2.0ea1b3849986cp+0 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aeacp+0 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aebp+0 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aeacp+0 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aebp+0 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aeacp+0 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aebp+0 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aeacp+0 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aebp+0 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aeae00eedefe84d4p+0 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aeae00eedefe84d6p+0 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aeae00eedefe84d4p+0 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aeae00eedefe84d6p+0 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aeae00eedefe84p+0 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aeae00eedefe85p+0 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aeae00eedefe84p+0 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 123LL : 0x2.0ea1b3849986aeae00eedefe85p+0 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 123LL : 0x1.40ba2ee94c9ddp+8 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 123LL : 0x1.40ba2ee94c9ddp+8 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 123LL : 0x1.40ba2ee94c9ddp+8 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 123LL : 0x1.40ba2ee94c9dep+8 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 123LL : 0x1.40ba2ee94c9dd36p+8 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 123LL : 0x1.40ba2ee94c9dd362p+8 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 123LL : 0x1.40ba2ee94c9dd36p+8 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 123LL : 0x1.40ba2ee94c9dd362p+8 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 123LL : 0x1.40ba2ee94c9dd36p+8 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 123LL : 0x1.40ba2ee94c9dd362p+8 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 123LL : 0x1.40ba2ee94c9dd36p+8 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 123LL : 0x1.40ba2ee94c9dd362p+8 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 123LL : 0x1.40ba2ee94c9dd361c8754b98e476p+8 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 123LL : 0x1.40ba2ee94c9dd361c8754b98e476p+8 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 123LL : 0x1.40ba2ee94c9dd361c8754b98e476p+8 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 123LL : 0x1.40ba2ee94c9dd361c8754b98e477p+8 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 123LL : 0x1.40ba2ee94c9dd361c8754b98e4p+8 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 123LL : 0x1.40ba2ee94c9dd361c8754b98e48p+8 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 123LL : 0x1.40ba2ee94c9dd361c8754b98e4p+8 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 123LL : 0x1.40ba2ee94c9dd361c8754b98e48p+8 : inexact-ok
+= rootn downward intel96 0x9.8765p+5000 123LL : 0x1.9940af252022ef7ap+40 : inexact-ok
+= rootn tonearest intel96 0x9.8765p+5000 123LL : 0x1.9940af252022ef7cp+40 : inexact-ok
+= rootn towardzero intel96 0x9.8765p+5000 123LL : 0x1.9940af252022ef7ap+40 : inexact-ok
+= rootn upward intel96 0x9.8765p+5000 123LL : 0x1.9940af252022ef7cp+40 : inexact-ok
+= rootn downward m68k96 0x9.8765p+5000 123LL : 0x1.9940af252022ef7ap+40 : inexact-ok
+= rootn tonearest m68k96 0x9.8765p+5000 123LL : 0x1.9940af252022ef7cp+40 : inexact-ok
+= rootn towardzero m68k96 0x9.8765p+5000 123LL : 0x1.9940af252022ef7ap+40 : inexact-ok
+= rootn upward m68k96 0x9.8765p+5000 123LL : 0x1.9940af252022ef7cp+40 : inexact-ok
+= rootn downward binary128 0x9.8765p+5000 123LL : 0x1.9940af252022ef7bca6a0cca2443p+40 : inexact-ok
+= rootn tonearest binary128 0x9.8765p+5000 123LL : 0x1.9940af252022ef7bca6a0cca2443p+40 : inexact-ok
+= rootn towardzero binary128 0x9.8765p+5000 123LL : 0x1.9940af252022ef7bca6a0cca2443p+40 : inexact-ok
+= rootn upward binary128 0x9.8765p+5000 123LL : 0x1.9940af252022ef7bca6a0cca2444p+40 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 123LL : 0x1.40ba2ee94c9dd36c3693f586922dp+8 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 123LL : 0x1.40ba2ee94c9dd36c3693f586922ep+8 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 123LL : 0x1.40ba2ee94c9dd36c3693f586922dp+8 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 123LL : 0x1.40ba2ee94c9dd36c3693f586922ep+8 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 123LL : 0x1.40ba2ee94c9dd36c3693f58692p+8 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 123LL : 0x1.40ba2ee94c9dd36c3693f58692p+8 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 123LL : 0x1.40ba2ee94c9dd36c3693f58692p+8 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 123LL : 0x1.40ba2ee94c9dd36c3693f586928p+8 : inexact-ok
+rootn 0x9.8765p5000 -123
+= rootn downward binary32 0xf.fffffp+124 -123LL : 0x7.c71978p-4 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 -123LL : 0x7.c71978p-4 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 -123LL : 0x7.c71978p-4 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 -123LL : 0x7.c7198p-4 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 -123LL : 0x7.c7197816117d8p-4 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 -123LL : 0x7.c7197816117d8p-4 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 -123LL : 0x7.c7197816117d8p-4 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 -123LL : 0x7.c7197816117dcp-4 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 -123LL : 0x7.c7197816117d8538p-4 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 -123LL : 0x7.c7197816117d8538p-4 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 -123LL : 0x7.c7197816117d8538p-4 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 -123LL : 0x7.c7197816117d854p-4 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 -123LL : 0x7.c7197816117d8538p-4 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 -123LL : 0x7.c7197816117d8538p-4 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 -123LL : 0x7.c7197816117d8538p-4 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 -123LL : 0x7.c7197816117d854p-4 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 -123LL : 0x7.c7197816117d8539c75883588c68p-4 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 -123LL : 0x7.c7197816117d8539c75883588c6cp-4 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 -123LL : 0x7.c7197816117d8539c75883588c68p-4 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 -123LL : 0x7.c7197816117d8539c75883588c6cp-4 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 -123LL : 0x7.c7197816117d8539c75883588cp-4 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 -123LL : 0x7.c7197816117d8539c75883588cp-4 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 -123LL : 0x7.c7197816117d8539c75883588cp-4 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 -123LL : 0x7.c7197816117d8539c75883588ep-4 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 -123LL : 0xc.c55e9b53bfbb8p-12 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 -123LL : 0xc.c55e9b53bfbb8p-12 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 -123LL : 0xc.c55e9b53bfbb8p-12 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 -123LL : 0xc.c55e9b53bfbcp-12 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 -123LL : 0xc.c55e9b53bfbbaddp-12 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 -123LL : 0xc.c55e9b53bfbbaddp-12 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 -123LL : 0xc.c55e9b53bfbbaddp-12 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 -123LL : 0xc.c55e9b53bfbbadep-12 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 -123LL : 0xc.c55e9b53bfbbaddp-12 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 -123LL : 0xc.c55e9b53bfbbaddp-12 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 -123LL : 0xc.c55e9b53bfbbaddp-12 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 -123LL : 0xc.c55e9b53bfbbadep-12 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 -123LL : 0xc.c55e9b53bfbbadd2134b2a9261cp-12 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 -123LL : 0xc.c55e9b53bfbbadd2134b2a9261c8p-12 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 -123LL : 0xc.c55e9b53bfbbadd2134b2a9261cp-12 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 -123LL : 0xc.c55e9b53bfbbadd2134b2a9261c8p-12 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 -123LL : 0xc.c55e9b53bfbbadd2134b2a926p-12 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 -123LL : 0xc.c55e9b53bfbbadd2134b2a926p-12 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 -123LL : 0xc.c55e9b53bfbbadd2134b2a926p-12 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 -123LL : 0xc.c55e9b53bfbbadd2134b2a9264p-12 : inexact-ok
+= rootn downward intel96 0x9.8765p+5000 -123LL : 0xa.022c321517735cp-44 : inexact-ok
+= rootn tonearest intel96 0x9.8765p+5000 -123LL : 0xa.022c321517735c1p-44 : inexact-ok
+= rootn towardzero intel96 0x9.8765p+5000 -123LL : 0xa.022c321517735cp-44 : inexact-ok
+= rootn upward intel96 0x9.8765p+5000 -123LL : 0xa.022c321517735c1p-44 : inexact-ok
+= rootn downward m68k96 0x9.8765p+5000 -123LL : 0xa.022c321517735cp-44 : inexact-ok
+= rootn tonearest m68k96 0x9.8765p+5000 -123LL : 0xa.022c321517735c1p-44 : inexact-ok
+= rootn towardzero m68k96 0x9.8765p+5000 -123LL : 0xa.022c321517735cp-44 : inexact-ok
+= rootn upward m68k96 0x9.8765p+5000 -123LL : 0xa.022c321517735c1p-44 : inexact-ok
+= rootn downward binary128 0x9.8765p+5000 -123LL : 0xa.022c321517735c0fcab5edd6c4a8p-44 : inexact-ok
+= rootn tonearest binary128 0x9.8765p+5000 -123LL : 0xa.022c321517735c0fcab5edd6c4bp-44 : inexact-ok
+= rootn towardzero binary128 0x9.8765p+5000 -123LL : 0xa.022c321517735c0fcab5edd6c4a8p-44 : inexact-ok
+= rootn upward binary128 0x9.8765p+5000 -123LL : 0xa.022c321517735c0fcab5edd6c4bp-44 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -123LL : 0xc.c55e9b53bfbbad67c120a6cebf9p-12 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 -123LL : 0xc.c55e9b53bfbbad67c120a6cebf98p-12 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 -123LL : 0xc.c55e9b53bfbbad67c120a6cebf9p-12 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -123LL : 0xc.c55e9b53bfbbad67c120a6cebf98p-12 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -123LL : 0xc.c55e9b53bfbbad67c120a6cebcp-12 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -123LL : 0xc.c55e9b53bfbbad67c120a6cecp-12 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -123LL : 0xc.c55e9b53bfbbad67c120a6cebcp-12 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -123LL : 0xc.c55e9b53bfbbad67c120a6cecp-12 : inexact-ok
+rootn 0x9.8765p5000 1234
+= rootn downward binary32 0xf.fffffp+124 1234LL : 0x1.131578p+0 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 1234LL : 0x1.131578p+0 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 1234LL : 0x1.131578p+0 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 1234LL : 0x1.13157ap+0 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 1234LL : 0x1.131578396c7dcp+0 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 1234LL : 0x1.131578396c7ddp+0 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 1234LL : 0x1.131578396c7dcp+0 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 1234LL : 0x1.131578396c7ddp+0 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 1234LL : 0x1.131578396c7dce98p+0 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 1234LL : 0x1.131578396c7dce98p+0 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 1234LL : 0x1.131578396c7dce98p+0 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 1234LL : 0x1.131578396c7dce9ap+0 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 1234LL : 0x1.131578396c7dce98p+0 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 1234LL : 0x1.131578396c7dce98p+0 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 1234LL : 0x1.131578396c7dce98p+0 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 1234LL : 0x1.131578396c7dce9ap+0 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 1234LL : 0x1.131578396c7dce9828074e15d97ap+0 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 1234LL : 0x1.131578396c7dce9828074e15d97ap+0 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 1234LL : 0x1.131578396c7dce9828074e15d97ap+0 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 1234LL : 0x1.131578396c7dce9828074e15d97bp+0 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 1234LL : 0x1.131578396c7dce9828074e15d9p+0 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 1234LL : 0x1.131578396c7dce9828074e15d98p+0 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 1234LL : 0x1.131578396c7dce9828074e15d9p+0 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 1234LL : 0x1.131578396c7dce9828074e15d98p+0 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 1234LL : 0x1.c707fdef6aad2p+0 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 1234LL : 0x1.c707fdef6aad3p+0 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 1234LL : 0x1.c707fdef6aad2p+0 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 1234LL : 0x1.c707fdef6aad3p+0 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 1234LL : 0x1.c707fdef6aad2ac2p+0 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 1234LL : 0x1.c707fdef6aad2ac4p+0 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 1234LL : 0x1.c707fdef6aad2ac2p+0 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 1234LL : 0x1.c707fdef6aad2ac4p+0 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 1234LL : 0x1.c707fdef6aad2ac2p+0 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 1234LL : 0x1.c707fdef6aad2ac4p+0 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 1234LL : 0x1.c707fdef6aad2ac2p+0 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 1234LL : 0x1.c707fdef6aad2ac4p+0 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 1234LL : 0x1.c707fdef6aad2ac3bcaadb939bfdp+0 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 1234LL : 0x1.c707fdef6aad2ac3bcaadb939bfep+0 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 1234LL : 0x1.c707fdef6aad2ac3bcaadb939bfdp+0 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 1234LL : 0x1.c707fdef6aad2ac3bcaadb939bfep+0 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 1234LL : 0x1.c707fdef6aad2ac3bcaadb939b8p+0 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 1234LL : 0x1.c707fdef6aad2ac3bcaadb939cp+0 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 1234LL : 0x1.c707fdef6aad2ac3bcaadb939b8p+0 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 1234LL : 0x1.c707fdef6aad2ac3bcaadb939cp+0 : inexact-ok
+= rootn downward intel96 0x9.8765p+5000 1234LL : 0x1.09db0d599eea924ap+4 : inexact-ok
+= rootn tonearest intel96 0x9.8765p+5000 1234LL : 0x1.09db0d599eea924ap+4 : inexact-ok
+= rootn towardzero intel96 0x9.8765p+5000 1234LL : 0x1.09db0d599eea924ap+4 : inexact-ok
+= rootn upward intel96 0x9.8765p+5000 1234LL : 0x1.09db0d599eea924cp+4 : inexact-ok
+= rootn downward m68k96 0x9.8765p+5000 1234LL : 0x1.09db0d599eea924ap+4 : inexact-ok
+= rootn tonearest m68k96 0x9.8765p+5000 1234LL : 0x1.09db0d599eea924ap+4 : inexact-ok
+= rootn towardzero m68k96 0x9.8765p+5000 1234LL : 0x1.09db0d599eea924ap+4 : inexact-ok
+= rootn upward m68k96 0x9.8765p+5000 1234LL : 0x1.09db0d599eea924cp+4 : inexact-ok
+= rootn downward binary128 0x9.8765p+5000 1234LL : 0x1.09db0d599eea924ace1d8619fa4cp+4 : inexact-ok
+= rootn tonearest binary128 0x9.8765p+5000 1234LL : 0x1.09db0d599eea924ace1d8619fa4cp+4 : inexact-ok
+= rootn towardzero binary128 0x9.8765p+5000 1234LL : 0x1.09db0d599eea924ace1d8619fa4cp+4 : inexact-ok
+= rootn upward binary128 0x9.8765p+5000 1234LL : 0x1.09db0d599eea924ace1d8619fa4dp+4 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 1234LL : 0x1.c707fdef6aad2ac536431f917735p+0 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 1234LL : 0x1.c707fdef6aad2ac536431f917736p+0 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 1234LL : 0x1.c707fdef6aad2ac536431f917735p+0 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 1234LL : 0x1.c707fdef6aad2ac536431f917736p+0 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 1234LL : 0x1.c707fdef6aad2ac536431f9177p+0 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 1234LL : 0x1.c707fdef6aad2ac536431f9177p+0 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 1234LL : 0x1.c707fdef6aad2ac536431f9177p+0 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 1234LL : 0x1.c707fdef6aad2ac536431f91778p+0 : inexact-ok
+rootn 0x9.8765p5000 -1234
+= rootn downward binary32 0xf.fffffp+124 -1234LL : 0xe.e3d75p-4 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 -1234LL : 0xe.e3d75p-4 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 -1234LL : 0xe.e3d75p-4 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 -1234LL : 0xe.e3d76p-4 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c62p-4 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c62p-4 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c62p-4 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c628p-4 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e2p-4 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e2p-4 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e2p-4 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e3p-4 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e2p-4 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e2p-4 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e2p-4 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e3p-4 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e20d0f98f50b4dp-4 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e20d0f98f50b4d8p-4 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e20d0f98f50b4dp-4 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e20d0f98f50b4d8p-4 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e20d0f98f50b4p-4 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e20d0f98f50b4p-4 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e20d0f98f50b4p-4 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 -1234LL : 0xe.e3d755d34c622e20d0f98f50b8p-4 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 -1234LL : 0x9.00678f1b59f48p-4 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 -1234LL : 0x9.00678f1b59f5p-4 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 -1234LL : 0x9.00678f1b59f48p-4 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 -1234LL : 0x9.00678f1b59f5p-4 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 -1234LL : 0x9.00678f1b59f4e31p-4 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 -1234LL : 0x9.00678f1b59f4e32p-4 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 -1234LL : 0x9.00678f1b59f4e31p-4 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 -1234LL : 0x9.00678f1b59f4e32p-4 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 -1234LL : 0x9.00678f1b59f4e31p-4 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 -1234LL : 0x9.00678f1b59f4e32p-4 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 -1234LL : 0x9.00678f1b59f4e31p-4 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 -1234LL : 0x9.00678f1b59f4e32p-4 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 -1234LL : 0x9.00678f1b59f4e31ff87bb10bdce8p-4 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 -1234LL : 0x9.00678f1b59f4e31ff87bb10bdcfp-4 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 -1234LL : 0x9.00678f1b59f4e31ff87bb10bdce8p-4 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 -1234LL : 0x9.00678f1b59f4e31ff87bb10bdcfp-4 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 -1234LL : 0x9.00678f1b59f4e31ff87bb10bdcp-4 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 -1234LL : 0x9.00678f1b59f4e31ff87bb10bdcp-4 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 -1234LL : 0x9.00678f1b59f4e31ff87bb10bdcp-4 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 -1234LL : 0x9.00678f1b59f4e31ff87bb10bep-4 : inexact-ok
+= rootn downward intel96 0x9.8765p+5000 -1234LL : 0xf.6827b30f7c186edp-8 : inexact-ok
+= rootn tonearest intel96 0x9.8765p+5000 -1234LL : 0xf.6827b30f7c186edp-8 : inexact-ok
+= rootn towardzero intel96 0x9.8765p+5000 -1234LL : 0xf.6827b30f7c186edp-8 : inexact-ok
+= rootn upward intel96 0x9.8765p+5000 -1234LL : 0xf.6827b30f7c186eep-8 : inexact-ok
+= rootn downward m68k96 0x9.8765p+5000 -1234LL : 0xf.6827b30f7c186edp-8 : inexact-ok
+= rootn tonearest m68k96 0x9.8765p+5000 -1234LL : 0xf.6827b30f7c186edp-8 : inexact-ok
+= rootn towardzero m68k96 0x9.8765p+5000 -1234LL : 0xf.6827b30f7c186edp-8 : inexact-ok
+= rootn upward m68k96 0x9.8765p+5000 -1234LL : 0xf.6827b30f7c186eep-8 : inexact-ok
+= rootn downward binary128 0x9.8765p+5000 -1234LL : 0xf.6827b30f7c186ed01ed33202637p-8 : inexact-ok
+= rootn tonearest binary128 0x9.8765p+5000 -1234LL : 0xf.6827b30f7c186ed01ed33202637p-8 : inexact-ok
+= rootn towardzero binary128 0x9.8765p+5000 -1234LL : 0xf.6827b30f7c186ed01ed33202637p-8 : inexact-ok
+= rootn upward binary128 0x9.8765p+5000 -1234LL : 0xf.6827b30f7c186ed01ed332026378p-8 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -1234LL : 0x9.00678f1b59f4e318803cfdb7583p-4 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 -1234LL : 0x9.00678f1b59f4e318803cfdb7583p-4 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 -1234LL : 0x9.00678f1b59f4e318803cfdb7583p-4 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -1234LL : 0x9.00678f1b59f4e318803cfdb75838p-4 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -1234LL : 0x9.00678f1b59f4e318803cfdb758p-4 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -1234LL : 0x9.00678f1b59f4e318803cfdb758p-4 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -1234LL : 0x9.00678f1b59f4e318803cfdb758p-4 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -1234LL : 0x9.00678f1b59f4e318803cfdb75cp-4 : inexact-ok
+rootn 0x9.8765p5000 12345
+= rootn downward binary32 0xf.fffffp+124 12345LL : 0x1.01d8b2p+0 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 12345LL : 0x1.01d8b4p+0 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 12345LL : 0x1.01d8b2p+0 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 12345LL : 0x1.01d8b4p+0 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 12345LL : 0x1.01d8b34336119p+0 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 12345LL : 0x1.01d8b3433611ap+0 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 12345LL : 0x1.01d8b34336119p+0 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 12345LL : 0x1.01d8b3433611ap+0 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 12345LL : 0x1.01d8b34336119d48p+0 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 12345LL : 0x1.01d8b34336119d48p+0 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 12345LL : 0x1.01d8b34336119d48p+0 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 12345LL : 0x1.01d8b34336119d4ap+0 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 12345LL : 0x1.01d8b34336119d48p+0 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 12345LL : 0x1.01d8b34336119d48p+0 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 12345LL : 0x1.01d8b34336119d48p+0 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 12345LL : 0x1.01d8b34336119d4ap+0 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 12345LL : 0x1.01d8b34336119d48e78b6b913ce4p+0 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 12345LL : 0x1.01d8b34336119d48e78b6b913ce5p+0 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 12345LL : 0x1.01d8b34336119d48e78b6b913ce4p+0 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 12345LL : 0x1.01d8b34336119d48e78b6b913ce5p+0 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 12345LL : 0x1.01d8b34336119d48e78b6b913c8p+0 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 12345LL : 0x1.01d8b34336119d48e78b6b913dp+0 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 12345LL : 0x1.01d8b34336119d48e78b6b913c8p+0 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 12345LL : 0x1.01d8b34336119d48e78b6b913dp+0 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 12345LL : 0x1.0f267534b6c15p+0 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 12345LL : 0x1.0f267534b6c16p+0 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 12345LL : 0x1.0f267534b6c15p+0 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 12345LL : 0x1.0f267534b6c16p+0 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 12345LL : 0x1.0f267534b6c15a96p+0 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 12345LL : 0x1.0f267534b6c15a98p+0 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 12345LL : 0x1.0f267534b6c15a96p+0 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 12345LL : 0x1.0f267534b6c15a98p+0 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 12345LL : 0x1.0f267534b6c15a96p+0 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 12345LL : 0x1.0f267534b6c15a98p+0 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 12345LL : 0x1.0f267534b6c15a96p+0 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 12345LL : 0x1.0f267534b6c15a98p+0 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 12345LL : 0x1.0f267534b6c15a97c26d0eeaa3eep+0 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 12345LL : 0x1.0f267534b6c15a97c26d0eeaa3efp+0 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 12345LL : 0x1.0f267534b6c15a97c26d0eeaa3eep+0 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 12345LL : 0x1.0f267534b6c15a97c26d0eeaa3efp+0 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 12345LL : 0x1.0f267534b6c15a97c26d0eeaa38p+0 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 12345LL : 0x1.0f267534b6c15a97c26d0eeaa4p+0 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 12345LL : 0x1.0f267534b6c15a97c26d0eeaa38p+0 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 12345LL : 0x1.0f267534b6c15a97c26d0eeaa4p+0 : inexact-ok
+= rootn downward intel96 0x9.8765p+5000 12345LL : 0x1.5308adb43e28e6cap+0 : inexact-ok
+= rootn tonearest intel96 0x9.8765p+5000 12345LL : 0x1.5308adb43e28e6cap+0 : inexact-ok
+= rootn towardzero intel96 0x9.8765p+5000 12345LL : 0x1.5308adb43e28e6cap+0 : inexact-ok
+= rootn upward intel96 0x9.8765p+5000 12345LL : 0x1.5308adb43e28e6ccp+0 : inexact-ok
+= rootn downward m68k96 0x9.8765p+5000 12345LL : 0x1.5308adb43e28e6cap+0 : inexact-ok
+= rootn tonearest m68k96 0x9.8765p+5000 12345LL : 0x1.5308adb43e28e6cap+0 : inexact-ok
+= rootn towardzero m68k96 0x9.8765p+5000 12345LL : 0x1.5308adb43e28e6cap+0 : inexact-ok
+= rootn upward m68k96 0x9.8765p+5000 12345LL : 0x1.5308adb43e28e6ccp+0 : inexact-ok
+= rootn downward binary128 0x9.8765p+5000 12345LL : 0x1.5308adb43e28e6ca0e2583e60531p+0 : inexact-ok
+= rootn tonearest binary128 0x9.8765p+5000 12345LL : 0x1.5308adb43e28e6ca0e2583e60531p+0 : inexact-ok
+= rootn towardzero binary128 0x9.8765p+5000 12345LL : 0x1.5308adb43e28e6ca0e2583e60531p+0 : inexact-ok
+= rootn upward binary128 0x9.8765p+5000 12345LL : 0x1.5308adb43e28e6ca0e2583e60532p+0 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 12345LL : 0x1.0f267534b6c15a97d8eae342dfb8p+0 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 12345LL : 0x1.0f267534b6c15a97d8eae342dfb8p+0 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 12345LL : 0x1.0f267534b6c15a97d8eae342dfb8p+0 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 12345LL : 0x1.0f267534b6c15a97d8eae342dfb9p+0 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 12345LL : 0x1.0f267534b6c15a97d8eae342df8p+0 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 12345LL : 0x1.0f267534b6c15a97d8eae342df8p+0 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 12345LL : 0x1.0f267534b6c15a97d8eae342df8p+0 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 12345LL : 0x1.0f267534b6c15a97d8eae342ep+0 : inexact-ok
+rootn 0x9.8765p5000 -12345
+= rootn downward binary32 0xf.fffffp+124 -12345LL : 0xf.e2aafp-4 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 -12345LL : 0xf.e2aafp-4 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 -12345LL : 0xf.e2aafp-4 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 -12345LL : 0xf.e2abp-4 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 -12345LL : 0xf.e2aaf522d0c18p-4 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 -12345LL : 0xf.e2aaf522d0c18p-4 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 -12345LL : 0xf.e2aaf522d0c18p-4 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 -12345LL : 0xf.e2aaf522d0c2p-4 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 -12345LL : 0xf.e2aaf522d0c1bb2p-4 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 -12345LL : 0xf.e2aaf522d0c1bb2p-4 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 -12345LL : 0xf.e2aaf522d0c1bb2p-4 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 -12345LL : 0xf.e2aaf522d0c1bb3p-4 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 -12345LL : 0xf.e2aaf522d0c1bb2p-4 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 -12345LL : 0xf.e2aaf522d0c1bb2p-4 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 -12345LL : 0xf.e2aaf522d0c1bb2p-4 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 -12345LL : 0xf.e2aaf522d0c1bb3p-4 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 -12345LL : 0xf.e2aaf522d0c1bb224a471022ccd8p-4 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 -12345LL : 0xf.e2aaf522d0c1bb224a471022ccep-4 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 -12345LL : 0xf.e2aaf522d0c1bb224a471022ccd8p-4 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 -12345LL : 0xf.e2aaf522d0c1bb224a471022ccep-4 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 -12345LL : 0xf.e2aaf522d0c1bb224a471022ccp-4 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 -12345LL : 0xf.e2aaf522d0c1bb224a471022ccp-4 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 -12345LL : 0xf.e2aaf522d0c1bb224a471022ccp-4 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 -12345LL : 0xf.e2aaf522d0c1bb224a471022dp-4 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 -12345LL : 0xf.1b23f2ea7a048p-4 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 -12345LL : 0xf.1b23f2ea7a048p-4 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 -12345LL : 0xf.1b23f2ea7a048p-4 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 -12345LL : 0xf.1b23f2ea7a05p-4 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 -12345LL : 0xf.1b23f2ea7a04bd8p-4 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 -12345LL : 0xf.1b23f2ea7a04bd8p-4 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 -12345LL : 0xf.1b23f2ea7a04bd8p-4 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 -12345LL : 0xf.1b23f2ea7a04bd9p-4 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 -12345LL : 0xf.1b23f2ea7a04bd8p-4 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 -12345LL : 0xf.1b23f2ea7a04bd8p-4 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 -12345LL : 0xf.1b23f2ea7a04bd8p-4 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 -12345LL : 0xf.1b23f2ea7a04bd9p-4 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 -12345LL : 0xf.1b23f2ea7a04bd8070a2cb25034p-4 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 -12345LL : 0xf.1b23f2ea7a04bd8070a2cb25034p-4 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 -12345LL : 0xf.1b23f2ea7a04bd8070a2cb25034p-4 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 -12345LL : 0xf.1b23f2ea7a04bd8070a2cb250348p-4 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 -12345LL : 0xf.1b23f2ea7a04bd8070a2cb25p-4 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 -12345LL : 0xf.1b23f2ea7a04bd8070a2cb2504p-4 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 -12345LL : 0xf.1b23f2ea7a04bd8070a2cb25p-4 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 -12345LL : 0xf.1b23f2ea7a04bd8070a2cb2504p-4 : inexact-ok
+= rootn downward intel96 0x9.8765p+5000 -12345LL : 0xc.14d5d33e2985155p-4 : inexact-ok
+= rootn tonearest intel96 0x9.8765p+5000 -12345LL : 0xc.14d5d33e2985155p-4 : inexact-ok
+= rootn towardzero intel96 0x9.8765p+5000 -12345LL : 0xc.14d5d33e2985155p-4 : inexact-ok
+= rootn upward intel96 0x9.8765p+5000 -12345LL : 0xc.14d5d33e2985156p-4 : inexact-ok
+= rootn downward m68k96 0x9.8765p+5000 -12345LL : 0xc.14d5d33e2985155p-4 : inexact-ok
+= rootn tonearest m68k96 0x9.8765p+5000 -12345LL : 0xc.14d5d33e2985155p-4 : inexact-ok
+= rootn towardzero m68k96 0x9.8765p+5000 -12345LL : 0xc.14d5d33e2985155p-4 : inexact-ok
+= rootn upward m68k96 0x9.8765p+5000 -12345LL : 0xc.14d5d33e2985156p-4 : inexact-ok
+= rootn downward binary128 0x9.8765p+5000 -12345LL : 0xc.14d5d33e29851555471a681e6aap-4 : inexact-ok
+= rootn tonearest binary128 0x9.8765p+5000 -12345LL : 0xc.14d5d33e29851555471a681e6aap-4 : inexact-ok
+= rootn towardzero binary128 0x9.8765p+5000 -12345LL : 0xc.14d5d33e29851555471a681e6aap-4 : inexact-ok
+= rootn upward binary128 0x9.8765p+5000 -12345LL : 0xc.14d5d33e29851555471a681e6aa8p-4 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -12345LL : 0xf.1b23f2ea7a04bd7f2fdcb773868p-4 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 -12345LL : 0xf.1b23f2ea7a04bd7f2fdcb7738688p-4 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 -12345LL : 0xf.1b23f2ea7a04bd7f2fdcb773868p-4 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -12345LL : 0xf.1b23f2ea7a04bd7f2fdcb7738688p-4 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -12345LL : 0xf.1b23f2ea7a04bd7f2fdcb77384p-4 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -12345LL : 0xf.1b23f2ea7a04bd7f2fdcb77388p-4 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -12345LL : 0xf.1b23f2ea7a04bd7f2fdcb77384p-4 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -12345LL : 0xf.1b23f2ea7a04bd7f2fdcb77388p-4 : inexact-ok
+rootn 0x9.8765p5000 1234567
+= rootn downward binary32 0xf.fffffp+124 1234567LL : 0x1.0004b4p+0 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 1234567LL : 0x1.0004b6p+0 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 1234567LL : 0x1.0004b4p+0 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 1234567LL : 0x1.0004b6p+0 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 1234567LL : 0x1.0004b5bf49885p+0 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 1234567LL : 0x1.0004b5bf49885p+0 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 1234567LL : 0x1.0004b5bf49885p+0 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 1234567LL : 0x1.0004b5bf49886p+0 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 1234567LL : 0x1.0004b5bf4988502cp+0 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 1234567LL : 0x1.0004b5bf4988502ep+0 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 1234567LL : 0x1.0004b5bf4988502cp+0 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 1234567LL : 0x1.0004b5bf4988502ep+0 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 1234567LL : 0x1.0004b5bf4988502cp+0 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 1234567LL : 0x1.0004b5bf4988502ep+0 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 1234567LL : 0x1.0004b5bf4988502cp+0 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 1234567LL : 0x1.0004b5bf4988502ep+0 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 1234567LL : 0x1.0004b5bf4988502d3c071125375cp+0 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 1234567LL : 0x1.0004b5bf4988502d3c071125375cp+0 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 1234567LL : 0x1.0004b5bf4988502d3c071125375cp+0 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 1234567LL : 0x1.0004b5bf4988502d3c071125375dp+0 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 1234567LL : 0x1.0004b5bf4988502d3c07112537p+0 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 1234567LL : 0x1.0004b5bf4988502d3c071125378p+0 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 1234567LL : 0x1.0004b5bf4988502d3c07112537p+0 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 1234567LL : 0x1.0004b5bf4988502d3c071125378p+0 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 1234567LL : 0x1.0025b06787ccap+0 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 1234567LL : 0x1.0025b06787ccap+0 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 1234567LL : 0x1.0025b06787ccap+0 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 1234567LL : 0x1.0025b06787ccbp+0 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 1234567LL : 0x1.0025b06787cca7cap+0 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 1234567LL : 0x1.0025b06787cca7ccp+0 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 1234567LL : 0x1.0025b06787cca7cap+0 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 1234567LL : 0x1.0025b06787cca7ccp+0 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 1234567LL : 0x1.0025b06787cca7cap+0 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 1234567LL : 0x1.0025b06787cca7ccp+0 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 1234567LL : 0x1.0025b06787cca7cap+0 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 1234567LL : 0x1.0025b06787cca7ccp+0 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 1234567LL : 0x1.0025b06787cca7cbcec982534e27p+0 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 1234567LL : 0x1.0025b06787cca7cbcec982534e27p+0 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 1234567LL : 0x1.0025b06787cca7cbcec982534e27p+0 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 1234567LL : 0x1.0025b06787cca7cbcec982534e28p+0 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 1234567LL : 0x1.0025b06787cca7cbcec982534ep+0 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 1234567LL : 0x1.0025b06787cca7cbcec982534ep+0 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 1234567LL : 0x1.0025b06787cca7cbcec982534ep+0 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 1234567LL : 0x1.0025b06787cca7cbcec982534e8p+0 : inexact-ok
+= rootn downward intel96 0x9.8765p+5000 1234567LL : 0x1.00b85ab300e5fa48p+0 : inexact-ok
+= rootn tonearest intel96 0x9.8765p+5000 1234567LL : 0x1.00b85ab300e5fa4ap+0 : inexact-ok
+= rootn towardzero intel96 0x9.8765p+5000 1234567LL : 0x1.00b85ab300e5fa48p+0 : inexact-ok
+= rootn upward intel96 0x9.8765p+5000 1234567LL : 0x1.00b85ab300e5fa4ap+0 : inexact-ok
+= rootn downward m68k96 0x9.8765p+5000 1234567LL : 0x1.00b85ab300e5fa48p+0 : inexact-ok
+= rootn tonearest m68k96 0x9.8765p+5000 1234567LL : 0x1.00b85ab300e5fa4ap+0 : inexact-ok
+= rootn towardzero m68k96 0x9.8765p+5000 1234567LL : 0x1.00b85ab300e5fa48p+0 : inexact-ok
+= rootn upward m68k96 0x9.8765p+5000 1234567LL : 0x1.00b85ab300e5fa4ap+0 : inexact-ok
+= rootn downward binary128 0x9.8765p+5000 1234567LL : 0x1.00b85ab300e5fa49e03ca401e731p+0 : inexact-ok
+= rootn tonearest binary128 0x9.8765p+5000 1234567LL : 0x1.00b85ab300e5fa49e03ca401e731p+0 : inexact-ok
+= rootn towardzero binary128 0x9.8765p+5000 1234567LL : 0x1.00b85ab300e5fa49e03ca401e731p+0 : inexact-ok
+= rootn upward binary128 0x9.8765p+5000 1234567LL : 0x1.00b85ab300e5fa49e03ca401e732p+0 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 1234567LL : 0x1.0025b06787cca7cbceffe6084a86p+0 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 1234567LL : 0x1.0025b06787cca7cbceffe6084a86p+0 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 1234567LL : 0x1.0025b06787cca7cbceffe6084a86p+0 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 1234567LL : 0x1.0025b06787cca7cbceffe6084a87p+0 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 1234567LL : 0x1.0025b06787cca7cbceffe6084a8p+0 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 1234567LL : 0x1.0025b06787cca7cbceffe6084a8p+0 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 1234567LL : 0x1.0025b06787cca7cbceffe6084a8p+0 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 1234567LL : 0x1.0025b06787cca7cbceffe6084bp+0 : inexact-ok
+rootn 0x9.8765p5000 -1234567
+= rootn downward binary32 0xf.fffffp+124 -1234567LL : 0xf.ffb4ap-4 : inexact-ok
+= rootn tonearest binary32 0xf.fffffp+124 -1234567LL : 0xf.ffb4ap-4 : inexact-ok
+= rootn towardzero binary32 0xf.fffffp+124 -1234567LL : 0xf.ffb4ap-4 : inexact-ok
+= rootn upward binary32 0xf.fffffp+124 -1234567LL : 0xf.ffb4bp-4 : inexact-ok
+= rootn downward binary64 0xf.fffffp+124 -1234567LL : 0xf.ffb4a56e51188p-4 : inexact-ok
+= rootn tonearest binary64 0xf.fffffp+124 -1234567LL : 0xf.ffb4a56e5119p-4 : inexact-ok
+= rootn towardzero binary64 0xf.fffffp+124 -1234567LL : 0xf.ffb4a56e51188p-4 : inexact-ok
+= rootn upward binary64 0xf.fffffp+124 -1234567LL : 0xf.ffb4a56e5119p-4 : inexact-ok
+= rootn downward intel96 0xf.fffffp+124 -1234567LL : 0xf.ffb4a56e5118f11p-4 : inexact-ok
+= rootn tonearest intel96 0xf.fffffp+124 -1234567LL : 0xf.ffb4a56e5118f11p-4 : inexact-ok
+= rootn towardzero intel96 0xf.fffffp+124 -1234567LL : 0xf.ffb4a56e5118f11p-4 : inexact-ok
+= rootn upward intel96 0xf.fffffp+124 -1234567LL : 0xf.ffb4a56e5118f12p-4 : inexact-ok
+= rootn downward m68k96 0xf.fffffp+124 -1234567LL : 0xf.ffb4a56e5118f11p-4 : inexact-ok
+= rootn tonearest m68k96 0xf.fffffp+124 -1234567LL : 0xf.ffb4a56e5118f11p-4 : inexact-ok
+= rootn towardzero m68k96 0xf.fffffp+124 -1234567LL : 0xf.ffb4a56e5118f11p-4 : inexact-ok
+= rootn upward m68k96 0xf.fffffp+124 -1234567LL : 0xf.ffb4a56e5118f12p-4 : inexact-ok
+= rootn downward binary128 0xf.fffffp+124 -1234567LL : 0xf.ffb4a56e5118f11699069b175ed8p-4 : inexact-ok
+= rootn tonearest binary128 0xf.fffffp+124 -1234567LL : 0xf.ffb4a56e5118f11699069b175eep-4 : inexact-ok
+= rootn towardzero binary128 0xf.fffffp+124 -1234567LL : 0xf.ffb4a56e5118f11699069b175ed8p-4 : inexact-ok
+= rootn upward binary128 0xf.fffffp+124 -1234567LL : 0xf.ffb4a56e5118f11699069b175eep-4 : inexact-ok
+= rootn downward ibm128 0xf.fffffp+124 -1234567LL : 0xf.ffb4a56e5118f11699069b175cp-4 : inexact-ok
+= rootn tonearest ibm128 0xf.fffffp+124 -1234567LL : 0xf.ffb4a56e5118f11699069b176p-4 : inexact-ok
+= rootn towardzero ibm128 0xf.fffffp+124 -1234567LL : 0xf.ffb4a56e5118f11699069b175cp-4 : inexact-ok
+= rootn upward ibm128 0xf.fffffp+124 -1234567LL : 0xf.ffb4a56e5118f11699069b176p-4 : inexact-ok
+= rootn downward binary64 0xf.ffffffffffff8p+1020 -1234567LL : 0xf.fda55241eadc8p-4 : inexact-ok
+= rootn tonearest binary64 0xf.ffffffffffff8p+1020 -1234567LL : 0xf.fda55241eaddp-4 : inexact-ok
+= rootn towardzero binary64 0xf.ffffffffffff8p+1020 -1234567LL : 0xf.fda55241eadc8p-4 : inexact-ok
+= rootn upward binary64 0xf.ffffffffffff8p+1020 -1234567LL : 0xf.fda55241eaddp-4 : inexact-ok
+= rootn downward intel96 0xf.ffffffffffff8p+1020 -1234567LL : 0xf.fda55241eadcdacp-4 : inexact-ok
+= rootn tonearest intel96 0xf.ffffffffffff8p+1020 -1234567LL : 0xf.fda55241eadcdacp-4 : inexact-ok
+= rootn towardzero intel96 0xf.ffffffffffff8p+1020 -1234567LL : 0xf.fda55241eadcdacp-4 : inexact-ok
+= rootn upward intel96 0xf.ffffffffffff8p+1020 -1234567LL : 0xf.fda55241eadcdadp-4 : inexact-ok
+= rootn downward m68k96 0xf.ffffffffffff8p+1020 -1234567LL : 0xf.fda55241eadcdacp-4 : inexact-ok
+= rootn tonearest m68k96 0xf.ffffffffffff8p+1020 -1234567LL : 0xf.fda55241eadcdacp-4 : inexact-ok
+= rootn towardzero m68k96 0xf.ffffffffffff8p+1020 -1234567LL : 0xf.fda55241eadcdacp-4 : inexact-ok
+= rootn upward m68k96 0xf.ffffffffffff8p+1020 -1234567LL : 0xf.fda55241eadcdadp-4 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffff8p+1020 -1234567LL : 0xf.fda55241eadcdac6d72a002753bp-4 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffff8p+1020 -1234567LL : 0xf.fda55241eadcdac6d72a002753b8p-4 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffff8p+1020 -1234567LL : 0xf.fda55241eadcdac6d72a002753bp-4 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffff8p+1020 -1234567LL : 0xf.fda55241eadcdac6d72a002753b8p-4 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffff8p+1020 -1234567LL : 0xf.fda55241eadcdac6d72a00275p-4 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffff8p+1020 -1234567LL : 0xf.fda55241eadcdac6d72a002754p-4 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffff8p+1020 -1234567LL : 0xf.fda55241eadcdac6d72a00275p-4 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffff8p+1020 -1234567LL : 0xf.fda55241eadcdac6d72a002754p-4 : inexact-ok
+= rootn downward intel96 0x9.8765p+5000 -1234567LL : 0xf.f4829b02a5f2169p-4 : inexact-ok
+= rootn tonearest intel96 0x9.8765p+5000 -1234567LL : 0xf.f4829b02a5f2169p-4 : inexact-ok
+= rootn towardzero intel96 0x9.8765p+5000 -1234567LL : 0xf.f4829b02a5f2169p-4 : inexact-ok
+= rootn upward intel96 0x9.8765p+5000 -1234567LL : 0xf.f4829b02a5f216ap-4 : inexact-ok
+= rootn downward m68k96 0x9.8765p+5000 -1234567LL : 0xf.f4829b02a5f2169p-4 : inexact-ok
+= rootn tonearest m68k96 0x9.8765p+5000 -1234567LL : 0xf.f4829b02a5f2169p-4 : inexact-ok
+= rootn towardzero m68k96 0x9.8765p+5000 -1234567LL : 0xf.f4829b02a5f2169p-4 : inexact-ok
+= rootn upward m68k96 0x9.8765p+5000 -1234567LL : 0xf.f4829b02a5f216ap-4 : inexact-ok
+= rootn downward binary128 0x9.8765p+5000 -1234567LL : 0xf.f4829b02a5f21697b70646b1622p-4 : inexact-ok
+= rootn tonearest binary128 0x9.8765p+5000 -1234567LL : 0xf.f4829b02a5f21697b70646b1622p-4 : inexact-ok
+= rootn towardzero binary128 0x9.8765p+5000 -1234567LL : 0xf.f4829b02a5f21697b70646b1622p-4 : inexact-ok
+= rootn upward binary128 0x9.8765p+5000 -1234567LL : 0xf.f4829b02a5f21697b70646b16228p-4 : inexact-ok
+= rootn downward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -1234567LL : 0xf.fda55241eadcdac6d3c4c4db7958p-4 : inexact-ok
+= rootn tonearest binary128 0xf.ffffffffffffbffffffffffffcp+1020 -1234567LL : 0xf.fda55241eadcdac6d3c4c4db796p-4 : inexact-ok
+= rootn towardzero binary128 0xf.ffffffffffffbffffffffffffcp+1020 -1234567LL : 0xf.fda55241eadcdac6d3c4c4db7958p-4 : inexact-ok
+= rootn upward binary128 0xf.ffffffffffffbffffffffffffcp+1020 -1234567LL : 0xf.fda55241eadcdac6d3c4c4db796p-4 : inexact-ok
+= rootn downward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -1234567LL : 0xf.fda55241eadcdac6d3c4c4db78p-4 : inexact-ok
+= rootn tonearest ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -1234567LL : 0xf.fda55241eadcdac6d3c4c4db78p-4 : inexact-ok
+= rootn towardzero ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -1234567LL : 0xf.fda55241eadcdac6d3c4c4db78p-4 : inexact-ok
+= rootn upward ibm128 0xf.ffffffffffffbffffffffffffcp+1020 -1234567LL : 0xf.fda55241eadcdac6d3c4c4db7cp-4 : inexact-ok
+rootn -0x9.8765p5000 123
+= rootn downward binary32 -0xf.fffffp+124 123LL : -0x2.0ea1b4p+0 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 123LL : -0x2.0ea1b4p+0 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 123LL : -0x2.0ea1bp+0 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 123LL : -0x2.0ea1bp+0 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986cp+0 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986ap+0 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986ap+0 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986ap+0 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aebp+0 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aebp+0 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aeacp+0 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aeacp+0 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aebp+0 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aebp+0 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aeacp+0 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aeacp+0 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aeae00eedefe84d6p+0 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aeae00eedefe84d6p+0 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aeae00eedefe84d4p+0 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aeae00eedefe84d4p+0 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aeae00eedefe85p+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aeae00eedefe85p+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aeae00eedefe84p+0 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 123LL : -0x2.0ea1b3849986aeae00eedefe84p+0 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 123LL : -0x1.40ba2ee94c9dep+8 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 123LL : -0x1.40ba2ee94c9ddp+8 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 123LL : -0x1.40ba2ee94c9ddp+8 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 123LL : -0x1.40ba2ee94c9ddp+8 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 123LL : -0x1.40ba2ee94c9dd362p+8 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 123LL : -0x1.40ba2ee94c9dd362p+8 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 123LL : -0x1.40ba2ee94c9dd36p+8 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 123LL : -0x1.40ba2ee94c9dd36p+8 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 123LL : -0x1.40ba2ee94c9dd362p+8 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 123LL : -0x1.40ba2ee94c9dd362p+8 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 123LL : -0x1.40ba2ee94c9dd36p+8 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 123LL : -0x1.40ba2ee94c9dd36p+8 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 123LL : -0x1.40ba2ee94c9dd361c8754b98e477p+8 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 123LL : -0x1.40ba2ee94c9dd361c8754b98e476p+8 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 123LL : -0x1.40ba2ee94c9dd361c8754b98e476p+8 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 123LL : -0x1.40ba2ee94c9dd361c8754b98e476p+8 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 123LL : -0x1.40ba2ee94c9dd361c8754b98e48p+8 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 123LL : -0x1.40ba2ee94c9dd361c8754b98e48p+8 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 123LL : -0x1.40ba2ee94c9dd361c8754b98e4p+8 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 123LL : -0x1.40ba2ee94c9dd361c8754b98e4p+8 : inexact-ok
+= rootn downward intel96 -0x9.8765p+5000 123LL : -0x1.9940af252022ef7cp+40 : inexact-ok
+= rootn tonearest intel96 -0x9.8765p+5000 123LL : -0x1.9940af252022ef7cp+40 : inexact-ok
+= rootn towardzero intel96 -0x9.8765p+5000 123LL : -0x1.9940af252022ef7ap+40 : inexact-ok
+= rootn upward intel96 -0x9.8765p+5000 123LL : -0x1.9940af252022ef7ap+40 : inexact-ok
+= rootn downward m68k96 -0x9.8765p+5000 123LL : -0x1.9940af252022ef7cp+40 : inexact-ok
+= rootn tonearest m68k96 -0x9.8765p+5000 123LL : -0x1.9940af252022ef7cp+40 : inexact-ok
+= rootn towardzero m68k96 -0x9.8765p+5000 123LL : -0x1.9940af252022ef7ap+40 : inexact-ok
+= rootn upward m68k96 -0x9.8765p+5000 123LL : -0x1.9940af252022ef7ap+40 : inexact-ok
+= rootn downward binary128 -0x9.8765p+5000 123LL : -0x1.9940af252022ef7bca6a0cca2444p+40 : inexact-ok
+= rootn tonearest binary128 -0x9.8765p+5000 123LL : -0x1.9940af252022ef7bca6a0cca2443p+40 : inexact-ok
+= rootn towardzero binary128 -0x9.8765p+5000 123LL : -0x1.9940af252022ef7bca6a0cca2443p+40 : inexact-ok
+= rootn upward binary128 -0x9.8765p+5000 123LL : -0x1.9940af252022ef7bca6a0cca2443p+40 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 123LL : -0x1.40ba2ee94c9dd36c3693f586922ep+8 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 123LL : -0x1.40ba2ee94c9dd36c3693f586922ep+8 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 123LL : -0x1.40ba2ee94c9dd36c3693f586922dp+8 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 123LL : -0x1.40ba2ee94c9dd36c3693f586922dp+8 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 123LL : -0x1.40ba2ee94c9dd36c3693f586928p+8 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 123LL : -0x1.40ba2ee94c9dd36c3693f58692p+8 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 123LL : -0x1.40ba2ee94c9dd36c3693f58692p+8 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 123LL : -0x1.40ba2ee94c9dd36c3693f58692p+8 : inexact-ok
+rootn -0x9.8765p5000 -123
+= rootn downward binary32 -0xf.fffffp+124 -123LL : -0x7.c7198p-4 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 -123LL : -0x7.c71978p-4 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 -123LL : -0x7.c71978p-4 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 -123LL : -0x7.c71978p-4 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 -123LL : -0x7.c7197816117dcp-4 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8p-4 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8p-4 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8p-4 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 -123LL : -0x7.c7197816117d854p-4 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8538p-4 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8538p-4 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8538p-4 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 -123LL : -0x7.c7197816117d854p-4 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8538p-4 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8538p-4 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8538p-4 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8539c75883588c6cp-4 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8539c75883588c6cp-4 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8539c75883588c68p-4 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8539c75883588c68p-4 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8539c75883588ep-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8539c75883588cp-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8539c75883588cp-4 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 -123LL : -0x7.c7197816117d8539c75883588cp-4 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 -123LL : -0xc.c55e9b53bfbcp-12 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 -123LL : -0xc.c55e9b53bfbb8p-12 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 -123LL : -0xc.c55e9b53bfbb8p-12 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 -123LL : -0xc.c55e9b53bfbb8p-12 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 -123LL : -0xc.c55e9b53bfbbadep-12 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 -123LL : -0xc.c55e9b53bfbbaddp-12 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 -123LL : -0xc.c55e9b53bfbbaddp-12 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 -123LL : -0xc.c55e9b53bfbbaddp-12 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 -123LL : -0xc.c55e9b53bfbbadep-12 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 -123LL : -0xc.c55e9b53bfbbaddp-12 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 -123LL : -0xc.c55e9b53bfbbaddp-12 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 -123LL : -0xc.c55e9b53bfbbaddp-12 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 -123LL : -0xc.c55e9b53bfbbadd2134b2a9261c8p-12 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 -123LL : -0xc.c55e9b53bfbbadd2134b2a9261c8p-12 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 -123LL : -0xc.c55e9b53bfbbadd2134b2a9261cp-12 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 -123LL : -0xc.c55e9b53bfbbadd2134b2a9261cp-12 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 -123LL : -0xc.c55e9b53bfbbadd2134b2a9264p-12 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 -123LL : -0xc.c55e9b53bfbbadd2134b2a926p-12 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 -123LL : -0xc.c55e9b53bfbbadd2134b2a926p-12 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 -123LL : -0xc.c55e9b53bfbbadd2134b2a926p-12 : inexact-ok
+= rootn downward intel96 -0x9.8765p+5000 -123LL : -0xa.022c321517735c1p-44 : inexact-ok
+= rootn tonearest intel96 -0x9.8765p+5000 -123LL : -0xa.022c321517735c1p-44 : inexact-ok
+= rootn towardzero intel96 -0x9.8765p+5000 -123LL : -0xa.022c321517735cp-44 : inexact-ok
+= rootn upward intel96 -0x9.8765p+5000 -123LL : -0xa.022c321517735cp-44 : inexact-ok
+= rootn downward m68k96 -0x9.8765p+5000 -123LL : -0xa.022c321517735c1p-44 : inexact-ok
+= rootn tonearest m68k96 -0x9.8765p+5000 -123LL : -0xa.022c321517735c1p-44 : inexact-ok
+= rootn towardzero m68k96 -0x9.8765p+5000 -123LL : -0xa.022c321517735cp-44 : inexact-ok
+= rootn upward m68k96 -0x9.8765p+5000 -123LL : -0xa.022c321517735cp-44 : inexact-ok
+= rootn downward binary128 -0x9.8765p+5000 -123LL : -0xa.022c321517735c0fcab5edd6c4bp-44 : inexact-ok
+= rootn tonearest binary128 -0x9.8765p+5000 -123LL : -0xa.022c321517735c0fcab5edd6c4bp-44 : inexact-ok
+= rootn towardzero binary128 -0x9.8765p+5000 -123LL : -0xa.022c321517735c0fcab5edd6c4a8p-44 : inexact-ok
+= rootn upward binary128 -0x9.8765p+5000 -123LL : -0xa.022c321517735c0fcab5edd6c4a8p-44 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -123LL : -0xc.c55e9b53bfbbad67c120a6cebf98p-12 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -123LL : -0xc.c55e9b53bfbbad67c120a6cebf98p-12 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -123LL : -0xc.c55e9b53bfbbad67c120a6cebf9p-12 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -123LL : -0xc.c55e9b53bfbbad67c120a6cebf9p-12 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -123LL : -0xc.c55e9b53bfbbad67c120a6cecp-12 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -123LL : -0xc.c55e9b53bfbbad67c120a6cecp-12 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -123LL : -0xc.c55e9b53bfbbad67c120a6cebcp-12 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -123LL : -0xc.c55e9b53bfbbad67c120a6cebcp-12 : inexact-ok
+rootn -0x9.8765p5000 12345
+= rootn downward binary32 -0xf.fffffp+124 12345LL : -0x1.01d8b4p+0 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 12345LL : -0x1.01d8b4p+0 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 12345LL : -0x1.01d8b2p+0 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 12345LL : -0x1.01d8b2p+0 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 12345LL : -0x1.01d8b3433611ap+0 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 12345LL : -0x1.01d8b3433611ap+0 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 12345LL : -0x1.01d8b34336119p+0 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 12345LL : -0x1.01d8b34336119p+0 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 12345LL : -0x1.01d8b34336119d4ap+0 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 12345LL : -0x1.01d8b34336119d48p+0 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 12345LL : -0x1.01d8b34336119d48p+0 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 12345LL : -0x1.01d8b34336119d48p+0 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 12345LL : -0x1.01d8b34336119d4ap+0 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 12345LL : -0x1.01d8b34336119d48p+0 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 12345LL : -0x1.01d8b34336119d48p+0 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 12345LL : -0x1.01d8b34336119d48p+0 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 12345LL : -0x1.01d8b34336119d48e78b6b913ce5p+0 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 12345LL : -0x1.01d8b34336119d48e78b6b913ce5p+0 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 12345LL : -0x1.01d8b34336119d48e78b6b913ce4p+0 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 12345LL : -0x1.01d8b34336119d48e78b6b913ce4p+0 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 12345LL : -0x1.01d8b34336119d48e78b6b913dp+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 12345LL : -0x1.01d8b34336119d48e78b6b913dp+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 12345LL : -0x1.01d8b34336119d48e78b6b913c8p+0 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 12345LL : -0x1.01d8b34336119d48e78b6b913c8p+0 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 12345LL : -0x1.0f267534b6c16p+0 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 12345LL : -0x1.0f267534b6c16p+0 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 12345LL : -0x1.0f267534b6c15p+0 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 12345LL : -0x1.0f267534b6c15p+0 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 12345LL : -0x1.0f267534b6c15a98p+0 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 12345LL : -0x1.0f267534b6c15a98p+0 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 12345LL : -0x1.0f267534b6c15a96p+0 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 12345LL : -0x1.0f267534b6c15a96p+0 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 12345LL : -0x1.0f267534b6c15a98p+0 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 12345LL : -0x1.0f267534b6c15a98p+0 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 12345LL : -0x1.0f267534b6c15a96p+0 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 12345LL : -0x1.0f267534b6c15a96p+0 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 12345LL : -0x1.0f267534b6c15a97c26d0eeaa3efp+0 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 12345LL : -0x1.0f267534b6c15a97c26d0eeaa3efp+0 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 12345LL : -0x1.0f267534b6c15a97c26d0eeaa3eep+0 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 12345LL : -0x1.0f267534b6c15a97c26d0eeaa3eep+0 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 12345LL : -0x1.0f267534b6c15a97c26d0eeaa4p+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 12345LL : -0x1.0f267534b6c15a97c26d0eeaa4p+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 12345LL : -0x1.0f267534b6c15a97c26d0eeaa38p+0 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 12345LL : -0x1.0f267534b6c15a97c26d0eeaa38p+0 : inexact-ok
+= rootn downward intel96 -0x9.8765p+5000 12345LL : -0x1.5308adb43e28e6ccp+0 : inexact-ok
+= rootn tonearest intel96 -0x9.8765p+5000 12345LL : -0x1.5308adb43e28e6cap+0 : inexact-ok
+= rootn towardzero intel96 -0x9.8765p+5000 12345LL : -0x1.5308adb43e28e6cap+0 : inexact-ok
+= rootn upward intel96 -0x9.8765p+5000 12345LL : -0x1.5308adb43e28e6cap+0 : inexact-ok
+= rootn downward m68k96 -0x9.8765p+5000 12345LL : -0x1.5308adb43e28e6ccp+0 : inexact-ok
+= rootn tonearest m68k96 -0x9.8765p+5000 12345LL : -0x1.5308adb43e28e6cap+0 : inexact-ok
+= rootn towardzero m68k96 -0x9.8765p+5000 12345LL : -0x1.5308adb43e28e6cap+0 : inexact-ok
+= rootn upward m68k96 -0x9.8765p+5000 12345LL : -0x1.5308adb43e28e6cap+0 : inexact-ok
+= rootn downward binary128 -0x9.8765p+5000 12345LL : -0x1.5308adb43e28e6ca0e2583e60532p+0 : inexact-ok
+= rootn tonearest binary128 -0x9.8765p+5000 12345LL : -0x1.5308adb43e28e6ca0e2583e60531p+0 : inexact-ok
+= rootn towardzero binary128 -0x9.8765p+5000 12345LL : -0x1.5308adb43e28e6ca0e2583e60531p+0 : inexact-ok
+= rootn upward binary128 -0x9.8765p+5000 12345LL : -0x1.5308adb43e28e6ca0e2583e60531p+0 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 12345LL : -0x1.0f267534b6c15a97d8eae342dfb9p+0 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 12345LL : -0x1.0f267534b6c15a97d8eae342dfb8p+0 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 12345LL : -0x1.0f267534b6c15a97d8eae342dfb8p+0 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 12345LL : -0x1.0f267534b6c15a97d8eae342dfb8p+0 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 12345LL : -0x1.0f267534b6c15a97d8eae342ep+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 12345LL : -0x1.0f267534b6c15a97d8eae342df8p+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 12345LL : -0x1.0f267534b6c15a97d8eae342df8p+0 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 12345LL : -0x1.0f267534b6c15a97d8eae342df8p+0 : inexact-ok
+rootn -0x9.8765p5000 -12345
+= rootn downward binary32 -0xf.fffffp+124 -12345LL : -0xf.e2abp-4 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 -12345LL : -0xf.e2aafp-4 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 -12345LL : -0xf.e2aafp-4 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 -12345LL : -0xf.e2aafp-4 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 -12345LL : -0xf.e2aaf522d0c2p-4 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 -12345LL : -0xf.e2aaf522d0c18p-4 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 -12345LL : -0xf.e2aaf522d0c18p-4 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 -12345LL : -0xf.e2aaf522d0c18p-4 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 -12345LL : -0xf.e2aaf522d0c1bb3p-4 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 -12345LL : -0xf.e2aaf522d0c1bb2p-4 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 -12345LL : -0xf.e2aaf522d0c1bb2p-4 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 -12345LL : -0xf.e2aaf522d0c1bb2p-4 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 -12345LL : -0xf.e2aaf522d0c1bb3p-4 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 -12345LL : -0xf.e2aaf522d0c1bb2p-4 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 -12345LL : -0xf.e2aaf522d0c1bb2p-4 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 -12345LL : -0xf.e2aaf522d0c1bb2p-4 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 -12345LL : -0xf.e2aaf522d0c1bb224a471022ccep-4 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 -12345LL : -0xf.e2aaf522d0c1bb224a471022ccep-4 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 -12345LL : -0xf.e2aaf522d0c1bb224a471022ccd8p-4 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 -12345LL : -0xf.e2aaf522d0c1bb224a471022ccd8p-4 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 -12345LL : -0xf.e2aaf522d0c1bb224a471022dp-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 -12345LL : -0xf.e2aaf522d0c1bb224a471022ccp-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 -12345LL : -0xf.e2aaf522d0c1bb224a471022ccp-4 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 -12345LL : -0xf.e2aaf522d0c1bb224a471022ccp-4 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 -12345LL : -0xf.1b23f2ea7a05p-4 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 -12345LL : -0xf.1b23f2ea7a048p-4 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 -12345LL : -0xf.1b23f2ea7a048p-4 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 -12345LL : -0xf.1b23f2ea7a048p-4 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 -12345LL : -0xf.1b23f2ea7a04bd9p-4 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 -12345LL : -0xf.1b23f2ea7a04bd8p-4 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 -12345LL : -0xf.1b23f2ea7a04bd8p-4 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 -12345LL : -0xf.1b23f2ea7a04bd8p-4 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 -12345LL : -0xf.1b23f2ea7a04bd9p-4 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 -12345LL : -0xf.1b23f2ea7a04bd8p-4 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 -12345LL : -0xf.1b23f2ea7a04bd8p-4 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 -12345LL : -0xf.1b23f2ea7a04bd8p-4 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 -12345LL : -0xf.1b23f2ea7a04bd8070a2cb250348p-4 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 -12345LL : -0xf.1b23f2ea7a04bd8070a2cb25034p-4 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 -12345LL : -0xf.1b23f2ea7a04bd8070a2cb25034p-4 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 -12345LL : -0xf.1b23f2ea7a04bd8070a2cb25034p-4 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 -12345LL : -0xf.1b23f2ea7a04bd8070a2cb2504p-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 -12345LL : -0xf.1b23f2ea7a04bd8070a2cb2504p-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 -12345LL : -0xf.1b23f2ea7a04bd8070a2cb25p-4 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 -12345LL : -0xf.1b23f2ea7a04bd8070a2cb25p-4 : inexact-ok
+= rootn downward intel96 -0x9.8765p+5000 -12345LL : -0xc.14d5d33e2985156p-4 : inexact-ok
+= rootn tonearest intel96 -0x9.8765p+5000 -12345LL : -0xc.14d5d33e2985155p-4 : inexact-ok
+= rootn towardzero intel96 -0x9.8765p+5000 -12345LL : -0xc.14d5d33e2985155p-4 : inexact-ok
+= rootn upward intel96 -0x9.8765p+5000 -12345LL : -0xc.14d5d33e2985155p-4 : inexact-ok
+= rootn downward m68k96 -0x9.8765p+5000 -12345LL : -0xc.14d5d33e2985156p-4 : inexact-ok
+= rootn tonearest m68k96 -0x9.8765p+5000 -12345LL : -0xc.14d5d33e2985155p-4 : inexact-ok
+= rootn towardzero m68k96 -0x9.8765p+5000 -12345LL : -0xc.14d5d33e2985155p-4 : inexact-ok
+= rootn upward m68k96 -0x9.8765p+5000 -12345LL : -0xc.14d5d33e2985155p-4 : inexact-ok
+= rootn downward binary128 -0x9.8765p+5000 -12345LL : -0xc.14d5d33e29851555471a681e6aa8p-4 : inexact-ok
+= rootn tonearest binary128 -0x9.8765p+5000 -12345LL : -0xc.14d5d33e29851555471a681e6aap-4 : inexact-ok
+= rootn towardzero binary128 -0x9.8765p+5000 -12345LL : -0xc.14d5d33e29851555471a681e6aap-4 : inexact-ok
+= rootn upward binary128 -0x9.8765p+5000 -12345LL : -0xc.14d5d33e29851555471a681e6aap-4 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -12345LL : -0xf.1b23f2ea7a04bd7f2fdcb7738688p-4 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -12345LL : -0xf.1b23f2ea7a04bd7f2fdcb7738688p-4 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -12345LL : -0xf.1b23f2ea7a04bd7f2fdcb773868p-4 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -12345LL : -0xf.1b23f2ea7a04bd7f2fdcb773868p-4 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -12345LL : -0xf.1b23f2ea7a04bd7f2fdcb77388p-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -12345LL : -0xf.1b23f2ea7a04bd7f2fdcb77388p-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -12345LL : -0xf.1b23f2ea7a04bd7f2fdcb77384p-4 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -12345LL : -0xf.1b23f2ea7a04bd7f2fdcb77384p-4 : inexact-ok
+rootn -0x9.8765p5000 1234567
+= rootn downward binary32 -0xf.fffffp+124 1234567LL : -0x1.0004b6p+0 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 1234567LL : -0x1.0004b6p+0 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 1234567LL : -0x1.0004b4p+0 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 1234567LL : -0x1.0004b4p+0 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 1234567LL : -0x1.0004b5bf49886p+0 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 1234567LL : -0x1.0004b5bf49885p+0 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 1234567LL : -0x1.0004b5bf49885p+0 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 1234567LL : -0x1.0004b5bf49885p+0 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 1234567LL : -0x1.0004b5bf4988502ep+0 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 1234567LL : -0x1.0004b5bf4988502ep+0 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 1234567LL : -0x1.0004b5bf4988502cp+0 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 1234567LL : -0x1.0004b5bf4988502cp+0 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 1234567LL : -0x1.0004b5bf4988502ep+0 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 1234567LL : -0x1.0004b5bf4988502ep+0 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 1234567LL : -0x1.0004b5bf4988502cp+0 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 1234567LL : -0x1.0004b5bf4988502cp+0 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 1234567LL : -0x1.0004b5bf4988502d3c071125375dp+0 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 1234567LL : -0x1.0004b5bf4988502d3c071125375cp+0 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 1234567LL : -0x1.0004b5bf4988502d3c071125375cp+0 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 1234567LL : -0x1.0004b5bf4988502d3c071125375cp+0 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 1234567LL : -0x1.0004b5bf4988502d3c071125378p+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 1234567LL : -0x1.0004b5bf4988502d3c071125378p+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 1234567LL : -0x1.0004b5bf4988502d3c07112537p+0 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 1234567LL : -0x1.0004b5bf4988502d3c07112537p+0 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 1234567LL : -0x1.0025b06787ccbp+0 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 1234567LL : -0x1.0025b06787ccap+0 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 1234567LL : -0x1.0025b06787ccap+0 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 1234567LL : -0x1.0025b06787ccap+0 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 1234567LL : -0x1.0025b06787cca7ccp+0 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 1234567LL : -0x1.0025b06787cca7ccp+0 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 1234567LL : -0x1.0025b06787cca7cap+0 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 1234567LL : -0x1.0025b06787cca7cap+0 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 1234567LL : -0x1.0025b06787cca7ccp+0 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 1234567LL : -0x1.0025b06787cca7ccp+0 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 1234567LL : -0x1.0025b06787cca7cap+0 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 1234567LL : -0x1.0025b06787cca7cap+0 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 1234567LL : -0x1.0025b06787cca7cbcec982534e28p+0 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 1234567LL : -0x1.0025b06787cca7cbcec982534e27p+0 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 1234567LL : -0x1.0025b06787cca7cbcec982534e27p+0 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 1234567LL : -0x1.0025b06787cca7cbcec982534e27p+0 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 1234567LL : -0x1.0025b06787cca7cbcec982534e8p+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 1234567LL : -0x1.0025b06787cca7cbcec982534ep+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 1234567LL : -0x1.0025b06787cca7cbcec982534ep+0 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 1234567LL : -0x1.0025b06787cca7cbcec982534ep+0 : inexact-ok
+= rootn downward intel96 -0x9.8765p+5000 1234567LL : -0x1.00b85ab300e5fa4ap+0 : inexact-ok
+= rootn tonearest intel96 -0x9.8765p+5000 1234567LL : -0x1.00b85ab300e5fa4ap+0 : inexact-ok
+= rootn towardzero intel96 -0x9.8765p+5000 1234567LL : -0x1.00b85ab300e5fa48p+0 : inexact-ok
+= rootn upward intel96 -0x9.8765p+5000 1234567LL : -0x1.00b85ab300e5fa48p+0 : inexact-ok
+= rootn downward m68k96 -0x9.8765p+5000 1234567LL : -0x1.00b85ab300e5fa4ap+0 : inexact-ok
+= rootn tonearest m68k96 -0x9.8765p+5000 1234567LL : -0x1.00b85ab300e5fa4ap+0 : inexact-ok
+= rootn towardzero m68k96 -0x9.8765p+5000 1234567LL : -0x1.00b85ab300e5fa48p+0 : inexact-ok
+= rootn upward m68k96 -0x9.8765p+5000 1234567LL : -0x1.00b85ab300e5fa48p+0 : inexact-ok
+= rootn downward binary128 -0x9.8765p+5000 1234567LL : -0x1.00b85ab300e5fa49e03ca401e732p+0 : inexact-ok
+= rootn tonearest binary128 -0x9.8765p+5000 1234567LL : -0x1.00b85ab300e5fa49e03ca401e731p+0 : inexact-ok
+= rootn towardzero binary128 -0x9.8765p+5000 1234567LL : -0x1.00b85ab300e5fa49e03ca401e731p+0 : inexact-ok
+= rootn upward binary128 -0x9.8765p+5000 1234567LL : -0x1.00b85ab300e5fa49e03ca401e731p+0 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 1234567LL : -0x1.0025b06787cca7cbceffe6084a87p+0 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 1234567LL : -0x1.0025b06787cca7cbceffe6084a86p+0 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 1234567LL : -0x1.0025b06787cca7cbceffe6084a86p+0 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 1234567LL : -0x1.0025b06787cca7cbceffe6084a86p+0 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 1234567LL : -0x1.0025b06787cca7cbceffe6084bp+0 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 1234567LL : -0x1.0025b06787cca7cbceffe6084a8p+0 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 1234567LL : -0x1.0025b06787cca7cbceffe6084a8p+0 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 1234567LL : -0x1.0025b06787cca7cbceffe6084a8p+0 : inexact-ok
+rootn -0x9.8765p5000 -1234567
+= rootn downward binary32 -0xf.fffffp+124 -1234567LL : -0xf.ffb4bp-4 : inexact-ok
+= rootn tonearest binary32 -0xf.fffffp+124 -1234567LL : -0xf.ffb4ap-4 : inexact-ok
+= rootn towardzero binary32 -0xf.fffffp+124 -1234567LL : -0xf.ffb4ap-4 : inexact-ok
+= rootn upward binary32 -0xf.fffffp+124 -1234567LL : -0xf.ffb4ap-4 : inexact-ok
+= rootn downward binary64 -0xf.fffffp+124 -1234567LL : -0xf.ffb4a56e5119p-4 : inexact-ok
+= rootn tonearest binary64 -0xf.fffffp+124 -1234567LL : -0xf.ffb4a56e5119p-4 : inexact-ok
+= rootn towardzero binary64 -0xf.fffffp+124 -1234567LL : -0xf.ffb4a56e51188p-4 : inexact-ok
+= rootn upward binary64 -0xf.fffffp+124 -1234567LL : -0xf.ffb4a56e51188p-4 : inexact-ok
+= rootn downward intel96 -0xf.fffffp+124 -1234567LL : -0xf.ffb4a56e5118f12p-4 : inexact-ok
+= rootn tonearest intel96 -0xf.fffffp+124 -1234567LL : -0xf.ffb4a56e5118f11p-4 : inexact-ok
+= rootn towardzero intel96 -0xf.fffffp+124 -1234567LL : -0xf.ffb4a56e5118f11p-4 : inexact-ok
+= rootn upward intel96 -0xf.fffffp+124 -1234567LL : -0xf.ffb4a56e5118f11p-4 : inexact-ok
+= rootn downward m68k96 -0xf.fffffp+124 -1234567LL : -0xf.ffb4a56e5118f12p-4 : inexact-ok
+= rootn tonearest m68k96 -0xf.fffffp+124 -1234567LL : -0xf.ffb4a56e5118f11p-4 : inexact-ok
+= rootn towardzero m68k96 -0xf.fffffp+124 -1234567LL : -0xf.ffb4a56e5118f11p-4 : inexact-ok
+= rootn upward m68k96 -0xf.fffffp+124 -1234567LL : -0xf.ffb4a56e5118f11p-4 : inexact-ok
+= rootn downward binary128 -0xf.fffffp+124 -1234567LL : -0xf.ffb4a56e5118f11699069b175eep-4 : inexact-ok
+= rootn tonearest binary128 -0xf.fffffp+124 -1234567LL : -0xf.ffb4a56e5118f11699069b175eep-4 : inexact-ok
+= rootn towardzero binary128 -0xf.fffffp+124 -1234567LL : -0xf.ffb4a56e5118f11699069b175ed8p-4 : inexact-ok
+= rootn upward binary128 -0xf.fffffp+124 -1234567LL : -0xf.ffb4a56e5118f11699069b175ed8p-4 : inexact-ok
+= rootn downward ibm128 -0xf.fffffp+124 -1234567LL : -0xf.ffb4a56e5118f11699069b176p-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.fffffp+124 -1234567LL : -0xf.ffb4a56e5118f11699069b176p-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.fffffp+124 -1234567LL : -0xf.ffb4a56e5118f11699069b175cp-4 : inexact-ok
+= rootn upward ibm128 -0xf.fffffp+124 -1234567LL : -0xf.ffb4a56e5118f11699069b175cp-4 : inexact-ok
+= rootn downward binary64 -0xf.ffffffffffff8p+1020 -1234567LL : -0xf.fda55241eaddp-4 : inexact-ok
+= rootn tonearest binary64 -0xf.ffffffffffff8p+1020 -1234567LL : -0xf.fda55241eaddp-4 : inexact-ok
+= rootn towardzero binary64 -0xf.ffffffffffff8p+1020 -1234567LL : -0xf.fda55241eadc8p-4 : inexact-ok
+= rootn upward binary64 -0xf.ffffffffffff8p+1020 -1234567LL : -0xf.fda55241eadc8p-4 : inexact-ok
+= rootn downward intel96 -0xf.ffffffffffff8p+1020 -1234567LL : -0xf.fda55241eadcdadp-4 : inexact-ok
+= rootn tonearest intel96 -0xf.ffffffffffff8p+1020 -1234567LL : -0xf.fda55241eadcdacp-4 : inexact-ok
+= rootn towardzero intel96 -0xf.ffffffffffff8p+1020 -1234567LL : -0xf.fda55241eadcdacp-4 : inexact-ok
+= rootn upward intel96 -0xf.ffffffffffff8p+1020 -1234567LL : -0xf.fda55241eadcdacp-4 : inexact-ok
+= rootn downward m68k96 -0xf.ffffffffffff8p+1020 -1234567LL : -0xf.fda55241eadcdadp-4 : inexact-ok
+= rootn tonearest m68k96 -0xf.ffffffffffff8p+1020 -1234567LL : -0xf.fda55241eadcdacp-4 : inexact-ok
+= rootn towardzero m68k96 -0xf.ffffffffffff8p+1020 -1234567LL : -0xf.fda55241eadcdacp-4 : inexact-ok
+= rootn upward m68k96 -0xf.ffffffffffff8p+1020 -1234567LL : -0xf.fda55241eadcdacp-4 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffff8p+1020 -1234567LL : -0xf.fda55241eadcdac6d72a002753b8p-4 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffff8p+1020 -1234567LL : -0xf.fda55241eadcdac6d72a002753b8p-4 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffff8p+1020 -1234567LL : -0xf.fda55241eadcdac6d72a002753bp-4 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffff8p+1020 -1234567LL : -0xf.fda55241eadcdac6d72a002753bp-4 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffff8p+1020 -1234567LL : -0xf.fda55241eadcdac6d72a002754p-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffff8p+1020 -1234567LL : -0xf.fda55241eadcdac6d72a002754p-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffff8p+1020 -1234567LL : -0xf.fda55241eadcdac6d72a00275p-4 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffff8p+1020 -1234567LL : -0xf.fda55241eadcdac6d72a00275p-4 : inexact-ok
+= rootn downward intel96 -0x9.8765p+5000 -1234567LL : -0xf.f4829b02a5f216ap-4 : inexact-ok
+= rootn tonearest intel96 -0x9.8765p+5000 -1234567LL : -0xf.f4829b02a5f2169p-4 : inexact-ok
+= rootn towardzero intel96 -0x9.8765p+5000 -1234567LL : -0xf.f4829b02a5f2169p-4 : inexact-ok
+= rootn upward intel96 -0x9.8765p+5000 -1234567LL : -0xf.f4829b02a5f2169p-4 : inexact-ok
+= rootn downward m68k96 -0x9.8765p+5000 -1234567LL : -0xf.f4829b02a5f216ap-4 : inexact-ok
+= rootn tonearest m68k96 -0x9.8765p+5000 -1234567LL : -0xf.f4829b02a5f2169p-4 : inexact-ok
+= rootn towardzero m68k96 -0x9.8765p+5000 -1234567LL : -0xf.f4829b02a5f2169p-4 : inexact-ok
+= rootn upward m68k96 -0x9.8765p+5000 -1234567LL : -0xf.f4829b02a5f2169p-4 : inexact-ok
+= rootn downward binary128 -0x9.8765p+5000 -1234567LL : -0xf.f4829b02a5f21697b70646b16228p-4 : inexact-ok
+= rootn tonearest binary128 -0x9.8765p+5000 -1234567LL : -0xf.f4829b02a5f21697b70646b1622p-4 : inexact-ok
+= rootn towardzero binary128 -0x9.8765p+5000 -1234567LL : -0xf.f4829b02a5f21697b70646b1622p-4 : inexact-ok
+= rootn upward binary128 -0x9.8765p+5000 -1234567LL : -0xf.f4829b02a5f21697b70646b1622p-4 : inexact-ok
+= rootn downward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -1234567LL : -0xf.fda55241eadcdac6d3c4c4db796p-4 : inexact-ok
+= rootn tonearest binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -1234567LL : -0xf.fda55241eadcdac6d3c4c4db796p-4 : inexact-ok
+= rootn towardzero binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -1234567LL : -0xf.fda55241eadcdac6d3c4c4db7958p-4 : inexact-ok
+= rootn upward binary128 -0xf.ffffffffffffbffffffffffffcp+1020 -1234567LL : -0xf.fda55241eadcdac6d3c4c4db7958p-4 : inexact-ok
+= rootn downward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -1234567LL : -0xf.fda55241eadcdac6d3c4c4db7cp-4 : inexact-ok
+= rootn tonearest ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -1234567LL : -0xf.fda55241eadcdac6d3c4c4db78p-4 : inexact-ok
+= rootn towardzero ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -1234567LL : -0xf.fda55241eadcdac6d3c4c4db78p-4 : inexact-ok
+= rootn upward ibm128 -0xf.ffffffffffffbffffffffffffcp+1020 -1234567LL : -0xf.fda55241eadcdac6d3c4c4db78p-4 : inexact-ok
diff --git a/math/bits/mathcalls.h b/math/bits/mathcalls.h
index 2ff71e8..3b9032e 100644
--- a/math/bits/mathcalls.h
+++ b/math/bits/mathcalls.h
@@ -68,12 +68,16 @@ __MATHCALL_VEC (tan,, (_Mdouble_ __x));
#if __GLIBC_USE (IEC_60559_FUNCS_EXT_C23)
/* Arc cosine of X, divided by pi. */
__MATHCALL (acospi,, (_Mdouble_ __x));
+__MATHCALL_VEC (acospi,, (_Mdouble_ __x));
/* Arc sine of X, divided by pi. */
__MATHCALL (asinpi,, (_Mdouble_ __x));
+__MATHCALL_VEC (asinpi,, (_Mdouble_ __x));
/* Arc tangent of X, divided by pi. */
__MATHCALL (atanpi,, (_Mdouble_ __x));
+__MATHCALL_VEC (atanpi,, (_Mdouble_ __x));
/* Arc tangent of Y/X, divided by pi. */
__MATHCALL (atan2pi,, (_Mdouble_ __y, _Mdouble_ __x));
+__MATHCALL_VEC (atan2pi,, (_Mdouble_ __y, _Mdouble_ __x));
/* Cosine of pi * X. */
__MATHCALL_VEC (cospi,, (_Mdouble_ __x));
@@ -186,12 +190,18 @@ __MATHCALL_VEC (cbrt,, (_Mdouble_ __x));
#endif
#if __GLIBC_USE (IEC_60559_FUNCS_EXT_C23)
+/* Return 1+X to the Y power. */
+__MATHCALL (compoundn,, (_Mdouble_ __x, long long int __y));
+
/* Return X to the Y power. */
__MATHCALL (pown,, (_Mdouble_ __x, long long int __y));
/* Return X to the Y power. */
__MATHCALL (powr,, (_Mdouble_ __x, _Mdouble_ __y));
+/* Return the Yth root of X. */
+__MATHCALL (rootn,, (_Mdouble_ __x, long long int __y));
+
/* Return the reciprocal of the square root of X. */
__MATHCALL (rsqrt,, (_Mdouble_ __x));
#endif
diff --git a/math/gen-auto-libm-tests.c b/math/gen-auto-libm-tests.c
index a312508..fe1b9b7 100644
--- a/math/gen-auto-libm-tests.c
+++ b/math/gen-auto-libm-tests.c
@@ -560,6 +560,7 @@ static test_function test_functions[] =
FUNC_mpc_c_c ("cexp", mpc_exp, false),
FUNC_mpc_c_c ("clog", mpc_log, false),
FUNC_mpc_c_c ("clog10", mpc_log10, false),
+ FUNC_mpfr_fL_f ("compoundn", mpfr_compound_si, false),
FUNC_mpfr_f_f ("cos", mpfr_cos, false),
FUNC_mpfr_f_f ("cosh", mpfr_cosh, false),
FUNC_mpfr_f_f ("cospi", mpfr_cospi, false),
@@ -598,6 +599,7 @@ static test_function test_functions[] =
FUNC_mpfr_ff_f ("pow", mpfr_pow, false),
FUNC_mpfr_fL_f ("pown", mpfr_pow_si, false),
FUNC_mpfr_ff_f ("powr", mpfr_powr, false),
+ FUNC_mpfr_fL_f ("rootn", mpfr_rootn_si, false),
/* mpfr_rec_sqrt differs from rsqrt on -0, but gen-auto-libm-tests
does not handle results that are exact infinities anyway. */
FUNC_mpfr_f_f ("rsqrt", mpfr_rec_sqrt, true),
diff --git a/math/gen-libm-test.py b/math/gen-libm-test.py
index a76fe87..1abc7fb 100755
--- a/math/gen-libm-test.py
+++ b/math/gen-libm-test.py
@@ -197,7 +197,7 @@ class Ulps(object):
"""Write header file with ulps data."""
header_text_1 = ('/* This file is automatically generated\n'
' from %s with gen-libm-test.py.\n'
- ' Don\'t change it - change instead the master '
+ ' Don\'t change it - change the original source '
'files. */\n\n'
'struct ulp_data\n'
'{\n'
diff --git a/math/gen-tgmath-tests.py b/math/gen-tgmath-tests.py
index 2d9658d..c5fc382 100755
--- a/math/gen-tgmath-tests.py
+++ b/math/gen-tgmath-tests.py
@@ -746,6 +746,7 @@ class Tests(object):
self.add_tests('asinpi', 'r', ['r'])
self.add_tests('atan2pi', 'r', ['r', 'r'])
self.add_tests('atanpi', 'r', ['r'])
+ self.add_tests('compoundn', 'r', ['r', 'long long int'])
self.add_tests('cospi', 'r', ['r'])
self.add_tests('exp10', 'r', ['r'])
self.add_tests('exp2m1', 'r', ['r'])
@@ -755,6 +756,7 @@ class Tests(object):
self.add_tests('logp1', 'r', ['r'])
self.add_tests('pown', 'r', ['r', 'long long int'])
self.add_tests('powr', 'r', ['r', 'r'])
+ self.add_tests('rootn', 'r', ['r', 'long long int'])
self.add_tests('rsqrt', 'r', ['r'])
self.add_tests('sinpi', 'r', ['r'])
self.add_tests('tanpi', 'r', ['r'])
diff --git a/math/libm-test-compoundn.inc b/math/libm-test-compoundn.inc
new file mode 100644
index 0000000..828a5d0
--- /dev/null
+++ b/math/libm-test-compoundn.inc
@@ -0,0 +1,107 @@
+/* Test compoundn.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include "libm-test-driver.c"
+
+static const struct test_fL_f_data compoundn_test_data[] =
+ {
+ TEST_fL_f (compoundn, qnan_value, 0, 1, ERRNO_UNCHANGED),
+ TEST_fL_f (compoundn, -qnan_value, 0, 1, ERRNO_UNCHANGED),
+ TEST_fL_f (compoundn, snan_value, 0, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, -snan_value, 0, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, plus_infty, 0, 1, ERRNO_UNCHANGED),
+
+ TEST_fL_f (compoundn, qnan_value, 1, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (compoundn, -qnan_value, 1, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (compoundn, snan_value, 1, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, -snan_value, 1, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, qnan_value, -1, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (compoundn, -qnan_value, -1, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (compoundn, snan_value, -1, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, -snan_value, -1, qnan_value, INVALID_EXCEPTION),
+
+ TEST_fL_f (compoundn, qnan_value, 3, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (compoundn, -qnan_value, 3, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (compoundn, qnan_value, -3, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (compoundn, -qnan_value, -3, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (compoundn, snan_value, 3, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, -snan_value, 3, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, snan_value, -3, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, -snan_value, -3, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, qnan_value, LLONG_MAX, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (compoundn, -qnan_value, LLONG_MAX, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (compoundn, snan_value, LLONG_MAX, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, -snan_value, LLONG_MAX, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, qnan_value, LLONG_MIN, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (compoundn, -qnan_value, LLONG_MIN, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (compoundn, snan_value, LLONG_MIN, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, -snan_value, LLONG_MIN, qnan_value, INVALID_EXCEPTION),
+
+ TEST_fL_f (compoundn, -1.001, 0, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, -1.001, 1, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, -1.001, -1, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, -1.001, 2, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, -1.001, -2, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, -1.001, LLONG_MAX, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, -1.001, LLONG_MIN, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, -max_value, 0, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, -max_value, 1, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, -max_value, -1, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, -max_value, 2, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, -max_value, -2, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, -max_value, LLONG_MAX, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, -max_value, LLONG_MIN, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, minus_infty, 0, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, minus_infty, 1, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, minus_infty, -1, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, minus_infty, 2, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, minus_infty, -2, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, minus_infty, LLONG_MAX, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (compoundn, minus_infty, LLONG_MIN, qnan_value, INVALID_EXCEPTION),
+
+ TEST_fL_f (compoundn, -1.0, -1, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (compoundn, -1.0, -2, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (compoundn, -1.0, LLONG_MIN, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+
+ TEST_fL_f (compoundn, plus_infty, 1, plus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (compoundn, plus_infty, 2, plus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (compoundn, plus_infty, LLONG_MAX, plus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (compoundn, plus_infty, -1, plus_zero, ERRNO_UNCHANGED),
+ TEST_fL_f (compoundn, plus_infty, -2, plus_zero, ERRNO_UNCHANGED),
+ TEST_fL_f (compoundn, plus_infty, LLONG_MIN, plus_zero, ERRNO_UNCHANGED),
+
+ AUTO_TESTS_fL_f (compoundn),
+ };
+
+static void
+compoundn_test (void)
+{
+ ALL_RM_TEST (compoundn, 0, compoundn_test_data, RUN_TEST_LOOP_fL_f, END);
+}
+
+static void
+do_test (void)
+{
+ compoundn_test ();
+}
+
+/*
+ * Local Variables:
+ * mode:c
+ * End:
+ */
diff --git a/math/libm-test-pown.inc b/math/libm-test-pown.inc
index fcae2b9..0bcebc3 100644
--- a/math/libm-test-pown.inc
+++ b/math/libm-test-pown.inc
@@ -20,115 +20,115 @@
static const struct test_fL_f_data pown_test_data[] =
{
- TEST_ff_f (pown, qnan_value, 0, 1, ERRNO_UNCHANGED|NO_TEST_MATHVEC),
- TEST_ff_f (pown, -qnan_value, 0, 1, ERRNO_UNCHANGED|NO_TEST_MATHVEC),
- TEST_ff_f (pown, snan_value, 0, qnan_value, INVALID_EXCEPTION|NO_TEST_MATHVEC),
- TEST_ff_f (pown, -snan_value, 0, qnan_value, INVALID_EXCEPTION|NO_TEST_MATHVEC),
-
- TEST_ff_f (pown, plus_infty, 1, plus_infty, ERRNO_UNCHANGED),
- TEST_ff_f (pown, plus_infty, -1, 0, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, 1, minus_infty, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, 11, minus_infty, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, 1001, minus_infty, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, 2, plus_infty, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, 12, plus_infty, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, 1002, plus_infty, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, -1, minus_zero, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, -11, minus_zero, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, -1001, minus_zero, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, -2, 0, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, -12, 0, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, -1002, 0, ERRNO_UNCHANGED),
-
- TEST_ff_f (pown, qnan_value, 1, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
- TEST_ff_f (pown, -qnan_value, 1, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
- TEST_ff_f (pown, snan_value, 1, qnan_value, INVALID_EXCEPTION),
- TEST_ff_f (pown, -snan_value, 1, qnan_value, INVALID_EXCEPTION),
- TEST_ff_f (pown, qnan_value, -1, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
- TEST_ff_f (pown, -qnan_value, -1, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
- TEST_ff_f (pown, snan_value, -1, qnan_value, INVALID_EXCEPTION),
- TEST_ff_f (pown, -snan_value, -1, qnan_value, INVALID_EXCEPTION),
-
- TEST_ff_f (pown, qnan_value, 3, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
- TEST_ff_f (pown, -qnan_value, 3, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
- TEST_ff_f (pown, qnan_value, -3, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
- TEST_ff_f (pown, -qnan_value, -3, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
- TEST_ff_f (pown, snan_value, 3, qnan_value, INVALID_EXCEPTION),
- TEST_ff_f (pown, -snan_value, 3, qnan_value, INVALID_EXCEPTION),
- TEST_ff_f (pown, snan_value, -3, qnan_value, INVALID_EXCEPTION),
- TEST_ff_f (pown, -snan_value, -3, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (pown, qnan_value, 0, 1, ERRNO_UNCHANGED|NO_TEST_MATHVEC),
+ TEST_fL_f (pown, -qnan_value, 0, 1, ERRNO_UNCHANGED|NO_TEST_MATHVEC),
+ TEST_fL_f (pown, snan_value, 0, qnan_value, INVALID_EXCEPTION|NO_TEST_MATHVEC),
+ TEST_fL_f (pown, -snan_value, 0, qnan_value, INVALID_EXCEPTION|NO_TEST_MATHVEC),
+
+ TEST_fL_f (pown, plus_infty, 1, plus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, plus_infty, -1, 0, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, 1, minus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, 11, minus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, 1001, minus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, 2, plus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, 12, plus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, 1002, plus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, -1, minus_zero, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, -11, minus_zero, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, -1001, minus_zero, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, -2, 0, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, -12, 0, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, -1002, 0, ERRNO_UNCHANGED),
+
+ TEST_fL_f (pown, qnan_value, 1, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (pown, -qnan_value, 1, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (pown, snan_value, 1, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (pown, -snan_value, 1, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (pown, qnan_value, -1, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (pown, -qnan_value, -1, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (pown, snan_value, -1, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (pown, -snan_value, -1, qnan_value, INVALID_EXCEPTION),
+
+ TEST_fL_f (pown, qnan_value, 3, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (pown, -qnan_value, 3, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (pown, qnan_value, -3, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (pown, -qnan_value, -3, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (pown, snan_value, 3, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (pown, -snan_value, 3, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (pown, snan_value, -3, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (pown, -snan_value, -3, qnan_value, INVALID_EXCEPTION),
/* pown (x, 0) == 1. */
- TEST_ff_f (pown, plus_infty, 0, 1, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, 0, 1, ERRNO_UNCHANGED),
-
- TEST_ff_f (pown, 0, -1, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pown, 0, -11, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pown, 0, -0xfffffe, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pown, 0, -0xffffff, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pown, 0, -0x1ffffffffffffeLL, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pown, 0, -0x1fffffffffffffLL, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pown, 0, -0x7ffffffffffffffeLL, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pown, 0, -0x7fffffffffffffffLL, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pown, minus_zero, -1, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pown, minus_zero, -11L, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pown, minus_zero, -0xfffffe, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pown, minus_zero, -0xffffff, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pown, minus_zero, -0x1fffffe, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pown, minus_zero, -0x1ffffffffffffeLL, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pown, minus_zero, -0x1fffffffffffffLL, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pown, minus_zero, -0x3ffffffffffffeLL, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pown, minus_zero, -0x7ffffffffffffffeLL, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pown, minus_zero, -0x7fffffffffffffffLL, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
-
- TEST_ff_f (pown, 0, -2, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pown, 0, -0x1000000, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pown, minus_zero, -2, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pown, minus_zero, -0x1000000, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (pown, plus_infty, 0, 1, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, 0, 1, ERRNO_UNCHANGED),
+
+ TEST_fL_f (pown, 0, -1, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (pown, 0, -11, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (pown, 0, -0xfffffe, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (pown, 0, -0xffffff, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (pown, 0, -0x1ffffffffffffeLL, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (pown, 0, -0x1fffffffffffffLL, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (pown, 0, -0x7ffffffffffffffeLL, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (pown, 0, -0x7fffffffffffffffLL, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (pown, minus_zero, -1, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (pown, minus_zero, -11L, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (pown, minus_zero, -0xfffffe, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (pown, minus_zero, -0xffffff, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (pown, minus_zero, -0x1fffffe, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (pown, minus_zero, -0x1ffffffffffffeLL, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (pown, minus_zero, -0x1fffffffffffffLL, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (pown, minus_zero, -0x3ffffffffffffeLL, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (pown, minus_zero, -0x7ffffffffffffffeLL, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (pown, minus_zero, -0x7fffffffffffffffLL, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE|XFAIL_ROUNDING_IBM128_LIBGCC),
+
+ TEST_fL_f (pown, 0, -2, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (pown, 0, -0x1000000, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (pown, minus_zero, -2, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (pown, minus_zero, -0x1000000, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
/* pown (+inf, y) == +inf for y > 0. */
- TEST_ff_f (pown, plus_infty, 2, plus_infty, ERRNO_UNCHANGED),
- TEST_ff_f (pown, plus_infty, 0xffffff, plus_infty, ERRNO_UNCHANGED),
- TEST_ff_f (pown, plus_infty, 0x1fffffffffffffLL, plus_infty, ERRNO_UNCHANGED),
- TEST_ff_f (pown, plus_infty, 0x7fffffffffffffffLL, plus_infty, ERRNO_UNCHANGED),
- TEST_ff_f (pown, plus_infty, 0x1000000, plus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, plus_infty, 2, plus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, plus_infty, 0xffffff, plus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, plus_infty, 0x1fffffffffffffLL, plus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, plus_infty, 0x7fffffffffffffffLL, plus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, plus_infty, 0x1000000, plus_infty, ERRNO_UNCHANGED),
/* pown (+inf, y) == +0 for y < 0. */
- TEST_ff_f (pown, plus_infty, -1, 0.0, ERRNO_UNCHANGED),
- TEST_ff_f (pown, plus_infty, -0xffffff, 0.0, ERRNO_UNCHANGED),
- TEST_ff_f (pown, plus_infty, -0x1fffffffffffffLL, 0.0, ERRNO_UNCHANGED),
- TEST_ff_f (pown, plus_infty, -0x7fffffffffffffffLL, 0.0, ERRNO_UNCHANGED),
- TEST_ff_f (pown, plus_infty, -0x1000000, 0.0, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, plus_infty, -1, 0.0, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, plus_infty, -0xffffff, 0.0, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, plus_infty, -0x1fffffffffffffLL, 0.0, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, plus_infty, -0x7fffffffffffffffLL, 0.0, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, plus_infty, -0x1000000, 0.0, ERRNO_UNCHANGED),
/* pown (-inf, y) == -inf for y an odd integer > 0. */
- TEST_ff_f (pown, minus_infty, 27, minus_infty, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, 0xffffff, minus_infty, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, 0x1fffffe, plus_infty, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, 0x1fffffffffffffLL, minus_infty, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, 0x3ffffffffffffeL, plus_infty, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, 0x7ffffffffffffffeLL, plus_infty, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, 0x7fffffffffffffffLL, minus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, 27, minus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, 0xffffff, minus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, 0x1fffffe, plus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, 0x1fffffffffffffLL, minus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, 0x3ffffffffffffeL, plus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, 0x7ffffffffffffffeLL, plus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, 0x7fffffffffffffffLL, minus_infty, ERRNO_UNCHANGED|XFAIL_ROUNDING_IBM128_LIBGCC),
/* pown (-inf, y) == +inf for y > 0 and not an odd integer. */
- TEST_ff_f (pown, minus_infty, 28, plus_infty, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, 0x1000000, plus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, 28, plus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, 0x1000000, plus_infty, ERRNO_UNCHANGED),
/* pown (-inf, y) == -0 for y an odd integer < 0. */
- TEST_ff_f (pown, minus_infty, -3, minus_zero, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, -0xfffffe, plus_zero, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, -0xffffff, minus_zero, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, -0x1fffffe, plus_zero, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, -0x1ffffffffffffeLL, plus_zero, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, -0x1fffffffffffffLL, minus_zero, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, -0x3ffffffffffffeLL, plus_zero, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, -0x7ffffffffffffffeLL, plus_zero, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, -0x7fffffffffffffffLL, minus_zero, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, -3, minus_zero, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, -0xfffffe, plus_zero, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, -0xffffff, minus_zero, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, -0x1fffffe, plus_zero, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, -0x1ffffffffffffeLL, plus_zero, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, -0x1fffffffffffffLL, minus_zero, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, -0x3ffffffffffffeLL, plus_zero, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, -0x7ffffffffffffffeLL, plus_zero, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, -0x7fffffffffffffffLL, minus_zero, ERRNO_UNCHANGED|XFAIL_ROUNDING_IBM128_LIBGCC),
/* pown (-inf, y) == +0 for y < 0 and not an odd integer. */
- TEST_ff_f (pown, minus_infty, -2, 0.0, ERRNO_UNCHANGED),
- TEST_ff_f (pown, minus_infty, -0x1000000, 0.0, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, -2, 0.0, ERRNO_UNCHANGED),
+ TEST_fL_f (pown, minus_infty, -0x1000000, 0.0, ERRNO_UNCHANGED),
- AUTO_TESTS_ff_f (pown),
+ AUTO_TESTS_fL_f (pown),
};
static void
diff --git a/math/libm-test-rootn.inc b/math/libm-test-rootn.inc
new file mode 100644
index 0000000..d279c3f
--- /dev/null
+++ b/math/libm-test-rootn.inc
@@ -0,0 +1,159 @@
+/* Test rootn.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include "libm-test-driver.c"
+
+static const struct test_fL_f_data rootn_test_data[] =
+ {
+ TEST_fL_f (rootn, qnan_value, 0, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, -qnan_value, 0, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, snan_value, 0, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, -snan_value, 0, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, plus_infty, 0, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, minus_infty, 0, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, plus_zero, 0, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, minus_zero, 0, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, min_value, 0, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, -min_value, 0, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, min_subnorm_value, 0, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, -min_subnorm_value, 0, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, max_value, 0, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, -max_value, 0, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+
+ TEST_fL_f (rootn, -min_subnorm_value, 2, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, -min_subnorm_value, 4, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, -min_subnorm_value, 0x7ffffffffffffffeLL, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, -min_value, 2, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, -min_value, 4, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, -min_value, 0x7ffffffffffffffeLL, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, -1.0, 2, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, -1.0, 4, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, -1.0, 0x7ffffffffffffffeLL, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, -max_value, 2, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, -max_value, 4, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, -max_value, 0x7ffffffffffffffeLL, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, minus_infty, 2, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, minus_infty, 4, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, minus_infty, 0x7ffffffffffffffeLL, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+
+ TEST_fL_f (rootn, -min_subnorm_value, -2, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, -min_subnorm_value, -4, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, -min_subnorm_value, LLONG_MIN, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, -min_value, -2, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, -min_value, -4, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, -min_value, LLONG_MIN, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, -1.0, -2, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, -1.0, -4, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, -1.0, LLONG_MIN, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, -max_value, -2, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, -max_value, -4, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, -max_value, LLONG_MIN, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, minus_infty, -2, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, minus_infty, -4, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_fL_f (rootn, minus_infty, LLONG_MIN, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+
+ TEST_fL_f (rootn, qnan_value, 1, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, -qnan_value, 1, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, qnan_value, -1, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, -qnan_value, -1, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, qnan_value, 2, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, -qnan_value, 2, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, qnan_value, -2, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, -qnan_value, -2, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, qnan_value, 3, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, -qnan_value, 3, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, qnan_value, -3, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, -qnan_value, -3, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, qnan_value, LLONG_MAX, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, -qnan_value, LLONG_MAX, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, qnan_value, LLONG_MIN, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, -qnan_value, LLONG_MIN, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+
+ TEST_fL_f (rootn, snan_value, 1, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (rootn, -snan_value, 1, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (rootn, snan_value, -1, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (rootn, -snan_value, -1, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (rootn, snan_value, 2, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (rootn, -snan_value, 2, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (rootn, snan_value, -2, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (rootn, -snan_value, -2, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (rootn, snan_value, 3, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (rootn, -snan_value, 3, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (rootn, snan_value, -3, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (rootn, -snan_value, -3, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (rootn, snan_value, LLONG_MAX, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (rootn, -snan_value, LLONG_MAX, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (rootn, snan_value, LLONG_MIN, qnan_value, INVALID_EXCEPTION),
+ TEST_fL_f (rootn, -snan_value, LLONG_MIN, qnan_value, INVALID_EXCEPTION),
+
+ TEST_fL_f (rootn, plus_zero, -1, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (rootn, minus_zero, -1, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (rootn, plus_zero, -2, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (rootn, minus_zero, -2, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (rootn, plus_zero, -3, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (rootn, minus_zero, -3, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (rootn, plus_zero, -4, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (rootn, minus_zero, -4, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (rootn, plus_zero, -5, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (rootn, minus_zero, -5, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (rootn, plus_zero, LLONG_MIN, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_fL_f (rootn, minus_zero, LLONG_MIN, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+
+ TEST_fL_f (rootn, plus_infty, 1, plus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, minus_infty, 1, minus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, plus_infty, 2, plus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, plus_infty, 3, plus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, minus_infty, 3, minus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, plus_infty, 4, plus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, plus_infty, 5, plus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, minus_infty, 5, minus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, plus_infty, LLONG_MAX, plus_infty, ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, minus_infty, LLONG_MAX, minus_infty, ERRNO_UNCHANGED),
+
+ TEST_fL_f (rootn, plus_infty, -1, plus_zero, ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, minus_infty, -1, minus_zero, ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, plus_infty, -2, plus_zero, ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, plus_infty, -3, plus_zero, ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, minus_infty, -3, minus_zero, ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, plus_infty, -4, plus_zero, ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, plus_infty, -5, plus_zero, ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, minus_infty, -5, minus_zero, ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, plus_infty, -0x7fffffffffffffffLL, plus_zero, ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, minus_infty, -0x7fffffffffffffffLL, minus_zero, ERRNO_UNCHANGED),
+ TEST_fL_f (rootn, plus_infty, LLONG_MIN, plus_zero, ERRNO_UNCHANGED),
+
+ AUTO_TESTS_fL_f (rootn),
+ };
+
+static void
+rootn_test (void)
+{
+ ALL_RM_TEST (rootn, 0, rootn_test_data, RUN_TEST_LOOP_fL_f, END);
+}
+
+static void
+do_test (void)
+{
+ rootn_test ();
+}
+
+/*
+ * Local Variables:
+ * mode:c
+ * End:
+ */
diff --git a/math/s_compoundn_template.c b/math/s_compoundn_template.c
new file mode 100644
index 0000000..ddbcc14
--- /dev/null
+++ b/math/s_compoundn_template.c
@@ -0,0 +1,227 @@
+/* Return (1+X)^Y for integer Y.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <errno.h>
+#include <fenv_private.h>
+#include <limits.h>
+#include <math.h>
+#include <math-barriers.h>
+#include <math-narrow-eval.h>
+#include <math_private.h>
+#include <stdlib.h>
+
+
+/* Calculate X + Y exactly and store the result in *HI + *LO. It is
+ given that |X| >= |Y| and the values are small enough that no
+ overflow occurs. */
+
+static inline void
+add_split (FLOAT *hi, FLOAT *lo, FLOAT x, FLOAT y)
+{
+ /* Apply Dekker's algorithm. */
+ *hi = math_narrow_eval (x + y);
+ *lo = (x - *hi) + y;
+}
+
+
+/* Store floating-point values that add up to A * (B + C + D) in
+ OUT[0] through OUT[5]. It is given that no overflow or underflow
+ can occur. */
+
+static inline void
+mul3_split (FLOAT *out, FLOAT a, FLOAT b, FLOAT c, FLOAT d)
+{
+ out[0] = a * b;
+ out[1] = M_SUF (fma) (a, b, -out[0]);
+ out[2] = a * c;
+ out[3] = M_SUF (fma) (a, c, -out[2]);
+ out[4] = a * d;
+ out[5] = M_SUF (fma) (a, d, -out[4]);
+}
+
+
+/* Compare absolute values of floating-point values pointed to by P
+ and Q for qsort. */
+
+static int
+compare (const void *p, const void *q)
+{
+ FLOAT pd = fabs (*(const FLOAT *) p);
+ FLOAT qd = fabs (*(const FLOAT *) q);
+ if (pd < qd)
+ return -1;
+ else if (pd == qd)
+ return 0;
+ else
+ return 1;
+}
+
+FLOAT
+M_DECL_FUNC (__compoundn) (FLOAT x, long long int y)
+{
+ FLOAT ret;
+ if (issignaling (x))
+ return x + x;
+ if (isless (x, -M_LIT (1.0)))
+ {
+ __set_errno (EDOM);
+ return (x - x) / (x - x);
+ }
+ if (y == 0)
+ return M_LIT (1.0);
+ if (isnan (x))
+ return x;
+ if (x == -M_LIT (1.0))
+ {
+ if (y > 0)
+ return M_LIT (0.0);
+ else
+ {
+ __set_errno (ERANGE);
+ return M_LIT (1.0) / M_LIT (0.0);
+ }
+ }
+ if (isinf (x))
+ return y > 0 ? x : M_LIT (0.0);
+ if (y == 1)
+ {
+ /* Ensure overflow in FE_UPWARD mode when X is the largest
+ positive finite value. */
+ ret = math_narrow_eval (M_LIT (1.0) + x);
+ if (isinf (ret))
+ __set_errno (ERANGE);
+ return ret;
+ }
+ /* Now we know X is finite and greater than -1, and Y is not 0 or
+ 1. */
+ {
+ M_SET_RESTORE_ROUND (FE_TONEAREST);
+ x = math_opt_barrier (x);
+ /* Split 1 + X into high and low parts, where the sign of the low
+ part is the same as the sign of X to avoid possible spurious
+ intermediate overflow or underflow later. */
+ FLOAT xhi, xlo;
+ if (x >= M_LIT (1.0))
+ add_split (&xhi, &xlo, x, M_LIT (1.0));
+ else
+ add_split (&xhi, &xlo, M_LIT (1.0), x);
+ if (xlo != M_LIT (0.0) && !!signbit (xlo) != !!signbit (x))
+ {
+ FLOAT xhi_n = (signbit (x)
+ ? M_SUF (__nextup) (xhi)
+ : M_SUF (__nextdown) (xhi));
+ xlo += xhi - xhi_n;
+ xhi = xhi_n;
+ }
+ ret = math_narrow_eval (M_SUF (__pown) (xhi, y));
+ /* The result is RET * (1 + XLO/XHI)^Y. Evaluate XLO/XHI with
+ extra precision. If XLO/XHI is sufficiently small, the extra
+ factor is not needed and internal underflow should be avoided.
+ If the calculation of RET has overflowed or underflowed, avoid
+ calculations of the extra factor that might end up as
+ Inf*0. */
+ _Static_assert (-M_MANT_DIG - 65 > M_MIN_EXP,
+ "no underflow from dividing EPSILON by long long");
+ if (!isinf (ret)
+ && ret != M_LIT (0.0)
+ && (xhi >= M_LIT (1.0)
+ ? M_FABS (xlo) >= xhi * (M_EPSILON * M_LIT (0x1p-65))
+ : xhi <= M_FABS (xlo) / (M_EPSILON * M_LIT (0x1p-65))))
+ {
+ FLOAT qhi, qlo, nqhi2;
+ qhi = xlo / xhi;
+ FLOAT xlo_rem = M_SUF (fma) (-qhi, xhi, xlo);
+ if (xhi >= M_LIT (1.0)
+ ? M_FABS (xlo_rem) >= xhi * (M_EPSILON * M_LIT (0x1p-65))
+ : xhi <= M_FABS (xlo_rem) / (M_EPSILON * M_LIT (0x1p-65)))
+ qlo = xlo_rem / xhi;
+ else
+ qlo = M_LIT (0.0);
+ if (M_FABS (qhi) >= M_EPSILON * M_LIT (0x1p-33))
+ nqhi2 = qhi * qhi * -M_LIT (0.5);
+ else
+ nqhi2 = M_LIT (0.0);
+ /* To sufficient precision, log1p(XLO/XHI) is QHI + QLO + NQHI2. */
+#define NUM_PARTS ((LLONG_WIDTH + M_MANT_DIG - 1) / M_MANT_DIG)
+ _Static_assert (NUM_PARTS <= 3,
+ "long long fits in at most three FLOATs");
+ FLOAT parts[NUM_PARTS * 6];
+ FLOAT ypart;
+ ypart = y;
+ mul3_split (parts, ypart, qhi, qlo, nqhi2);
+#if NUM_PARTS >= 2
+ y -= ypart;
+ ypart = y;
+ mul3_split (parts + 6, ypart, qhi, qlo, nqhi2);
+#endif
+#if NUM_PARTS >= 3
+ y -= ypart;
+ ypart = y;
+ mul3_split (parts + 12, ypart, qhi, qlo, nqhi2);
+#endif
+ qsort (parts, NUM_PARTS * 6, sizeof (FLOAT), compare);
+ /* Add up the values so that each element of PARTS has
+ absolute value at most equal to the last set bit of the
+ next nonzero element. */
+ for (size_t i = 0; i <= NUM_PARTS * 6 - 2; i++)
+ {
+ add_split (&parts[i + 1], &parts[i], parts[i + 1], parts[i]);
+ qsort (parts + i + 1, NUM_PARTS * 6 - 1 - i, sizeof (FLOAT),
+ compare);
+ }
+ /* Add up the values in the other direction, so that each
+ element of PARTS has absolute value less than NUM_PARTS * 3
+ ulp of the next value. */
+ size_t dstpos = NUM_PARTS * 6 - 1;
+ for (size_t i = 1; i <= NUM_PARTS * 6 - 1; i++)
+ {
+ if (parts[dstpos] == M_LIT (0.0))
+ {
+ parts[dstpos] = parts[NUM_PARTS * 6 - 1 - i];
+ parts[NUM_PARTS * 6 - 1 - i] = M_LIT (0.0);
+ }
+ else
+ {
+ add_split (&parts[dstpos], &parts[NUM_PARTS * 6 - 1 - i],
+ parts[dstpos], parts[NUM_PARTS * 6 - 1 - i]);
+ if (parts[NUM_PARTS * 6 - 1 - i] != M_LIT (0.0))
+ {
+ if (NUM_PARTS * 6 - 1 - i < dstpos - 1)
+ {
+ parts[dstpos - 1] = parts[NUM_PARTS * 6 - 1 - i];
+ parts[NUM_PARTS * 6 - 1 - i] = M_LIT (0.0);
+ }
+ dstpos--;
+ }
+ }
+ }
+ ret *= (M_SUF (__exp) (parts[NUM_PARTS * 6 - 1])
+ * M_SUF (__exp) (parts[NUM_PARTS * 6 - 2]));
+ }
+ ret = math_narrow_eval (ret);
+ math_force_eval (ret);
+ }
+ if (isinf (ret))
+ ret = math_narrow_eval (M_MAX * M_MAX);
+ else if (ret == M_LIT (0.0))
+ ret = math_narrow_eval (M_MIN * M_MIN);
+ if (isinf (ret) || ret == M_LIT (0.0))
+ __set_errno (ERANGE);
+ return ret;
+}
+declare_mgen_alias (__compoundn, compoundn);
diff --git a/math/s_rootn_template.c b/math/s_rootn_template.c
new file mode 100644
index 0000000..771a619
--- /dev/null
+++ b/math/s_rootn_template.c
@@ -0,0 +1,81 @@
+/* Return the Yth root of X for integer Y.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <errno.h>
+#include <limits.h>
+#include <math.h>
+#include <math-narrow-eval.h>
+#include <math_private.h>
+
+
+FLOAT
+M_DECL_FUNC (__rootn) (FLOAT x, long long int y)
+{
+ if (y == 0)
+ {
+ /* This is a domain error even if X is a NaN. */
+ __set_errno (EDOM);
+ return M_LIT (0.0) / M_LIT (0.0);
+ }
+ if (isnan (x))
+ return x + x;
+ if (x < 0 && (y & 1) == 0)
+ {
+ __set_errno (EDOM);
+ return (x - x) / (x - x);
+ }
+ if (isinf (x))
+ /* If X is negative, then Y is odd. */
+ return y > 0 ? x : M_LIT (1.0) / x;
+ if (x == M_LIT (0.0))
+ {
+ if (y > 0)
+ return (y & 1) == 0 ? M_LIT (0.0) : x;
+ else
+ {
+ __set_errno (ERANGE);
+ return M_LIT (1.0) / ((y & 1) == 0 ? M_LIT (0.0) : x);
+ }
+ }
+ if (y == 1)
+ return x;
+ if (y == -1)
+ {
+ /* Overflow is possible in this case (and underflow, though not
+ underflow to zero). */
+ FLOAT ret = math_narrow_eval (M_LIT (1.0) / x);
+ if (isinf (ret))
+ __set_errno (ERANGE);
+ return ret;
+ }
+ /* Now X is finite and no overflow or underflow (or results even
+ close to overflowing or underflowing) is possible. If X is
+ negative, then Y is odd; the result should have the sign of X. */
+ if (y >= 4 * M_MAX_EXP || y <= -4 * M_MAX_EXP)
+ /* No extra precision is needed in computing the exponent; it is
+ OK if Y cannot be exactly represented in type FLOAT. */
+ return M_COPYSIGN (M_SUF (__ieee754_pow) (M_FABS (x), M_LIT (1.0) / y), x);
+ /* Compute 1 / Y with extra precision. Y can be exactly represented
+ in type FLOAT. */
+ FLOAT qhi, qlo;
+ qhi = math_narrow_eval (M_LIT (1.0) / y);
+ qlo = M_SUF (fma) (-qhi, y, 1.0) / y;
+ return M_COPYSIGN (M_SUF (__ieee754_pow) (M_FABS (x), qhi)
+ * M_SUF (__ieee754_pow) (M_FABS (x), qlo), x);
+}
+declare_mgen_alias (__rootn, rootn);
diff --git a/math/test-fesetexcept-traps.c b/math/test-fesetexcept-traps.c
index bfd5517..441cb9d 100644
--- a/math/test-fesetexcept-traps.c
+++ b/math/test-fesetexcept-traps.c
@@ -48,7 +48,7 @@ do_test (void)
_Static_assert (!(EXCEPTION_SET_FORCES_TRAP && !EXCEPTION_TESTS(float)),
"EXCEPTION_SET_FORCES_TRAP only makes sense if the "
- "architecture suports exceptions");
+ "architecture supports exceptions");
{
int exc_before = fegetexcept ();
ret = fesetexcept (FE_ALL_EXCEPT);
diff --git a/math/test-fexcept-traps.c b/math/test-fexcept-traps.c
index 67e8fc1..f832705 100644
--- a/math/test-fexcept-traps.c
+++ b/math/test-fexcept-traps.c
@@ -72,7 +72,7 @@ do_test (void)
_Static_assert (!(EXCEPTION_SET_FORCES_TRAP && !EXCEPTION_TESTS(float)),
"EXCEPTION_SET_FORCES_TRAP only makes sense if the "
- "architecture suports exceptions");
+ "architecture supports exceptions");
{
int exc_before = fegetexcept ();
ret = fesetexceptflag (&saved, FE_ALL_EXCEPT);
diff --git a/math/test-tgmath.c b/math/test-tgmath.c
index 5dbf654..c1cd3fc 100644
--- a/math/test-tgmath.c
+++ b/math/test-tgmath.c
@@ -48,7 +48,7 @@ volatile int count_cdouble;
volatile int count_cfloat;
volatile int count_cldouble;
-#define NCALLS 190
+#define NCALLS 194
#define NCALLS_INT 4
#define NCCALLS 47
@@ -269,6 +269,8 @@ F(compile_test) (void)
a = logp1 (logp1 (x));
a = pow (pow (x, a), pow (c, b));
b = pown (pown (x, k), k);
+ b = compoundn (compoundn (x, k), k);
+ b = rootn (rootn (x, k), k);
a = powr (powr (x, a), powr (c, b));
b = sqrt (sqrt (a));
a = rsqrt (rsqrt (b));
@@ -397,6 +399,8 @@ F(compile_test) (void)
a = logp1 (y);
a = pow (y, y);
a = pown (y, 12345);
+ a = compoundn (y, 12345);
+ a = rootn (y, 12345);
a = powr (y, y);
a = sqrt (y);
a = rsqrt (y);
@@ -792,6 +796,22 @@ TYPE
}
TYPE
+(F(compoundn)) (TYPE x, long long int y)
+{
+ ++count;
+ P ();
+ return x + y;
+}
+
+TYPE
+(F(rootn)) (TYPE x, long long int y)
+{
+ ++count;
+ P ();
+ return x + y;
+}
+
+TYPE
(F(sqrt)) (TYPE x)
{
++count;
diff --git a/math/tgmath.h b/math/tgmath.h
index cc525e4..0d830a7 100644
--- a/math/tgmath.h
+++ b/math/tgmath.h
@@ -924,12 +924,19 @@
#define cbrt(Val) __TGMATH_UNARY_REAL_ONLY (Val, cbrt)
#if __GLIBC_USE (IEC_60559_FUNCS_EXT_C23)
+/* Return 1+X to the Y power. */
+# define compoundn(Val1, Val2) \
+ __TGMATH_BINARY_FIRST_REAL_ONLY (Val1, Val2, compoundn)
+
/* Return X to the Y power. */
# define pown(Val1, Val2) __TGMATH_BINARY_FIRST_REAL_ONLY (Val1, Val2, pown)
/* Return X to the Y power. */
# define powr(Val1, Val2) __TGMATH_BINARY_REAL_ONLY (Val1, Val2, powr)
+/* Return the Yth root of X. */
+# define rootn(Val1, Val2) __TGMATH_BINARY_FIRST_REAL_ONLY (Val1, Val2, rootn)
+
/* Return 1/sqrt(X). */
# define rsqrt(Val) __TGMATH_UNARY_REAL_ONLY (Val, rsqrt)
#endif
diff --git a/misc/getpass.c b/misc/getpass.c
index 4fe9453..a68acf4 100644
--- a/misc/getpass.c
+++ b/misc/getpass.c
@@ -83,7 +83,7 @@ getpass (const char *prompt)
s = t;
/* Tricky, tricky. */
t.c_lflag &= ~(ECHO|ISIG);
- tty_changed = (tcsetattr (fileno (in), TCSAFLUSH|TCSASOFT, &t) == 0);
+ tty_changed = (__tcsetattr (fileno (in), TCSAFLUSH|TCSASOFT, &t) == 0);
}
else
tty_changed = 0;
@@ -110,7 +110,7 @@ getpass (const char *prompt)
/* Restore the original setting. */
if (tty_changed)
- (void) tcsetattr (fileno (in), TCSAFLUSH|TCSASOFT, &s);
+ (void) __tcsetattr (fileno (in), TCSAFLUSH|TCSASOFT, &s);
funlockfile (out);
diff --git a/nptl/cancellation.c b/nptl/cancellation.c
index 156e63d..bed0383 100644
--- a/nptl/cancellation.c
+++ b/nptl/cancellation.c
@@ -72,8 +72,8 @@ __syscall_cancel (__syscall_arg_t a1, __syscall_arg_t a2,
__syscall_arg_t a5, __syscall_arg_t a6,
__SYSCALL_CANCEL7_ARG_DEF __syscall_arg_t nr)
{
- int r = __internal_syscall_cancel (a1, a2, a3, a4, a5, a6,
- __SYSCALL_CANCEL7_ARG nr);
+ long int r = __internal_syscall_cancel (a1, a2, a3, a4, a5, a6,
+ __SYSCALL_CANCEL7_ARG nr);
return __glibc_unlikely (INTERNAL_SYSCALL_ERROR_P (r))
? SYSCALL_ERROR_LABEL (INTERNAL_SYSCALL_ERRNO (r))
: r;
diff --git a/nss/Makefile b/nss/Makefile
index 09ce94a..1991b74 100644
--- a/nss/Makefile
+++ b/nss/Makefile
@@ -476,39 +476,39 @@ libof-nss_test1 = extramodules
libof-nss_test2 = extramodules
libof-nss_test_errno = extramodules
libof-nss_test_gai_hv2_canonname = extramodules
-$(objpfx)/libnss_test1.so: $(objpfx)nss_test1.os $(link-libc-deps)
+$(objpfx)libnss_test1.so: $(objpfx)nss_test1.os $(link-libc-deps)
$(build-module)
-$(objpfx)/libnss_test2.so: $(objpfx)nss_test2.os $(link-libc-deps)
+$(objpfx)libnss_test2.so: $(objpfx)nss_test2.os $(link-libc-deps)
$(build-module)
-$(objpfx)/libnss_test_errno.so: $(objpfx)nss_test_errno.os $(link-libc-deps)
+$(objpfx)libnss_test_errno.so: $(objpfx)nss_test_errno.os $(link-libc-deps)
$(build-module)
-$(objpfx)/libnss_test_gai_hv2_canonname.so: \
+$(objpfx)libnss_test_gai_hv2_canonname.so: \
$(objpfx)nss_test_gai_hv2_canonname.os $(link-libc-deps)
$(build-module)
$(objpfx)nss_test2.os : nss_test1.c
# Use the nss_files suffix for these objects as well.
-$(objpfx)/libnss_test1.so$(libnss_files.so-version): $(objpfx)/libnss_test1.so
+$(objpfx)libnss_test1.so$(libnss_files.so-version): $(objpfx)libnss_test1.so
$(make-link)
-$(objpfx)/libnss_test2.so$(libnss_files.so-version): $(objpfx)/libnss_test2.so
+$(objpfx)libnss_test2.so$(libnss_files.so-version): $(objpfx)libnss_test2.so
$(make-link)
-$(objpfx)/libnss_test_errno.so$(libnss_files.so-version): \
- $(objpfx)/libnss_test_errno.so
+$(objpfx)libnss_test_errno.so$(libnss_files.so-version): \
+ $(objpfx)libnss_test_errno.so
$(make-link)
-$(objpfx)/libnss_test_gai_hv2_canonname.so$(libnss_files.so-version): \
- $(objpfx)/libnss_test_gai_hv2_canonname.so
+$(objpfx)libnss_test_gai_hv2_canonname.so$(libnss_files.so-version): \
+ $(objpfx)libnss_test_gai_hv2_canonname.so
$(make-link)
$(patsubst %,$(objpfx)%.out,$(tests) $(tests-container)) : \
- $(objpfx)/libnss_test1.so$(libnss_files.so-version) \
- $(objpfx)/libnss_test2.so$(libnss_files.so-version) \
- $(objpfx)/libnss_test_errno.so$(libnss_files.so-version) \
- $(objpfx)/libnss_test_gai_hv2_canonname.so$(libnss_files.so-version)
+ $(objpfx)libnss_test1.so$(libnss_files.so-version) \
+ $(objpfx)libnss_test2.so$(libnss_files.so-version) \
+ $(objpfx)libnss_test_errno.so$(libnss_files.so-version) \
+ $(objpfx)libnss_test_gai_hv2_canonname.so$(libnss_files.so-version)
ifeq (yes,$(have-thread-library))
$(objpfx)tst-cancel-getpwuid_r: $(shared-thread-library)
endif
-$(objpfx)tst-nss-files-alias-leak.out: $(objpfx)/libnss_files.so
-$(objpfx)tst-nss-files-alias-truncated.out: $(objpfx)/libnss_files.so
+$(objpfx)tst-nss-files-alias-leak.out: $(objpfx)libnss_files.so
+$(objpfx)tst-nss-files-alias-truncated.out: $(objpfx)libnss_files.so
tst-nss-gai-hv2-canonname-ENV = \
MALLOC_TRACE=$(objpfx)tst-nss-gai-hv2-canonname.mtrace \
diff --git a/nss/getaddrinfo.c b/nss/getaddrinfo.c
index efe6ad3..6726ace 100644
--- a/nss/getaddrinfo.c
+++ b/nss/getaddrinfo.c
@@ -61,6 +61,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <nss.h>
#include <resolv/resolv-internal.h>
#include <resolv/resolv_context.h>
+#include <stdbit.h>
#include <stdbool.h>
#include <stdio.h>
#include <stdio_ext.h>
@@ -1462,20 +1463,6 @@ get_precedence (const struct sockaddr_in6 *in6)
return match_prefix (in6, precedence, 0);
}
-
-/* Find last bit set in a word. */
-static int
-fls (uint32_t a)
-{
- uint32_t mask;
- int n;
- for (n = 0, mask = 1 << 31; n < 32; mask >>= 1, ++n)
- if ((a & mask) != 0)
- break;
- return n;
-}
-
-
static int
rfc3484_sort (const void *p1, const void *p2, void *arg)
{
@@ -1658,7 +1645,7 @@ rfc3484_sort (const void *p1, const void *p2, void *arg)
in_addr_t netmask1 = 0xffffffffu << (32 - a1->prefixlen);
if ((in1_src_addr & netmask1) == (in1_dst_addr & netmask1))
- bit1 = fls (in1_dst_addr ^ in1_src_addr);
+ bit1 = stdc_leading_zeros (in1_dst_addr ^ in1_src_addr);
struct sockaddr_in *in2_dst
= (struct sockaddr_in *) a2->dest_addr->ai_addr;
@@ -1669,7 +1656,7 @@ rfc3484_sort (const void *p1, const void *p2, void *arg)
in_addr_t netmask2 = 0xffffffffu << (32 - a2->prefixlen);
if ((in2_src_addr & netmask2) == (in2_dst_addr & netmask2))
- bit2 = fls (in2_dst_addr ^ in2_src_addr);
+ bit2 = stdc_leading_zeros (in2_dst_addr ^ in2_src_addr);
}
else if (a1->dest_addr->ai_family == PF_INET6)
{
@@ -1696,10 +1683,12 @@ rfc3484_sort (const void *p1, const void *p2, void *arg)
if (i < 4)
{
- bit1 = fls (ntohl (in1_dst->sin6_addr.s6_addr32[i]
- ^ in1_src->sin6_addr.s6_addr32[i]));
- bit2 = fls (ntohl (in2_dst->sin6_addr.s6_addr32[i]
- ^ in2_src->sin6_addr.s6_addr32[i]));
+ uint32_t set_bits1 = (in1_dst->sin6_addr.s6_addr32[i]
+ ^ in1_src->sin6_addr.s6_addr32[i]);
+ uint32_t set_bits2 = (in2_dst->sin6_addr.s6_addr32[i]
+ ^ in2_src->sin6_addr.s6_addr32[i]);
+ bit1 = stdc_leading_zeros (ntohl (set_bits1));
+ bit2 = stdc_leading_zeros (ntohl (set_bits2));
}
}
diff --git a/nss/nss_action_parse.c b/nss/nss_action_parse.c
index 2b67a8a..ee3aadf 100644
--- a/nss/nss_action_parse.c
+++ b/nss/nss_action_parse.c
@@ -168,13 +168,16 @@ nss_action_list
action_list_init (&list);
if (nss_action_parse (line, &list))
{
+ nss_action_list retval;
size_t size;
struct nss_action null_service
= { .module = NULL, };
action_list_add (&list, null_service);
size = action_list_size (&list);
- return __nss_action_allocate (action_list_begin (&list), size);
+ retval = __nss_action_allocate (action_list_begin (&list), size);
+ action_list_free (&list);
+ return retval;
}
else if (action_list_has_failed (&list))
{
diff --git a/nss/nss_test1.c b/nss/nss_test1.c
index f023f46..b715bc3 100644
--- a/nss/nss_test1.c
+++ b/nss/nss_test1.c
@@ -28,9 +28,9 @@
to test known bad data. */
#define alloc_buffer_maybe_copy_string(b,s) s ? alloc_buffer_copy_string (b, s) : NULL;
-/* This file is the master template. Other instances of this test
- module should define NAME(x) to have their name instead of "test1",
- then include this file.
+/* This file is both a standalone test and a parametrized template.
+ Other instances of this test module should define NAME(x) to have
+ their name instead of "test1", then include this file.
*/
#define NAME_(x,n) _nss_##n##_##x
#ifndef NAME
diff --git a/po/be.po b/po/be.po
index bdcc515..7d0b239 100644
--- a/po/be.po
+++ b/po/be.po
@@ -7,7 +7,7 @@
msgid ""
msgstr ""
"Project-Id-Version: libc 2.40.9000\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
"PO-Revision-Date: 2025-01-08 11:17+0300\n"
"Last-Translator: Viktar SiarhiejÄyk <vics@eq.by>\n"
"Language-Team: Belarusian <debian-l10n-belarusian@lists.debian.org>\n"
@@ -99,10 +99,20 @@ msgstr "(ПÐМЫЛКРПРÐГРÐМЫ) ÐевÑÐ´Ð¾Ð¼Ð°Ñ Ð²ÐµÑ€ÑÑ–Ñ!?"
msgid "%s: Too many arguments\n"
msgstr "%s: Зашмат аргументаў\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(ПÐМЫЛКРПРÐГРÐМЫ) Параметр муÑіць раÑпазнацца!?"
+#: assert/assert-perr.c:35
+#, c-format
+msgid "%s%s%s:%u: %s%sUnexpected error: %s.\n"
+msgstr "%s%s%s:%u: %s%sÐÐµÑ‡Ð°ÐºÐ°Ð½Ð°Ñ Ð¿Ð°Ð¼Ñ‹Ð»ÐºÐ°: %s.\n"
+
+#: assert/assert.c:127
+#, c-format
+msgid "%s%s%s:%u: %s%sAssertion `%s' failed.\n"
+msgstr "%s%s%s:%u: %s%sСцвÑрджÑнне `%s' не атрымалаÑÑ.\n"
+
#: catgets/gencat.c:111
msgid "Create C header file NAME containing symbol definitions"
msgstr "Стварыць файл загалоўкаў ÐÐЗВРз азначÑннÑмі Ñімвалаў"
@@ -119,7 +129,7 @@ msgstr "ЗапіÑаць вывад у файл ÐÐЗВÐ"
msgid ""
"Generate message catalog.\vIf INPUT-FILE is -, input is read from standard input. If OUTPUT-FILE\n"
"is -, output is written to standard output.\n"
-msgstr "Generate message catalog.\\vIf INPUT-FILE is -, input is read from standard input. Калі OUTPUT-FILE роўна -, вывад запіÑваецца Ñž Ñтандартны вывад.\n"
+msgstr "Стварыць каталог паведамленнÑÑž.\\vКалі INPUT-FILE Ñ‘Ñць -, увод чытаецца Ñа Ñтандартнага ўводу. Калі OUTPUT-FILE Ñ‘Ñць -, вывад запіÑваецца Ñž Ñтандартны вывад.\n"
#: catgets/gencat.c:124
msgid ""
@@ -129,7 +139,7 @@ msgstr ""
"-o ВЫХОДÐЫ-ФÐЙЛ [УВÐХОДÐЫ-ФÐЙЛ]...\n"
"[ВЫХОДÐЫ-ФÐЙЛ [УВÐХОДÐЫ-ФÐЙЛ]...]"
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -143,8 +153,23 @@ msgstr ""
"Як рапартаваць аб памылках:\n"
"%s.\n"
+#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
+#: locale/programs/locale.c:292 locale/programs/localedef.c:459
+#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
+#: nscd/nscd.c:521 nss/getent.c:92 nss/makedb.c:387 posix/getconf.c:487
+#, c-format
+msgid ""
+"Copyright (C) %s Free Software Foundation, Inc.\n"
+"This is free software; see the source for copying conditions. There is NO\n"
+"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
+msgstr ""
+"ÐўтарÑкае права (C) %s Free Software Foundation, Inc.\n"
+"ГÑта Ñвабоднае праграмнае забеÑпÑчÑнне; умовы ÐºÐ°Ð¿Ñ–Ñ€Ð°Ð²Ð°Ð½Ð½Ñ Ð³Ð»Ñдзіце Ñž зыходных файлах. Гарантыі ÐЯМÐ; нават не Ð´Ð»Ñ ÐšÐШТОЎÐÐСЦІ або ПРЫДÐТÐÐСЦІ ДЛЯ ПЭЎÐÐЙ МЭТЫ.\n"
+
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -259,6 +284,21 @@ msgstr "[ФÐЙЛ]"
msgid "cannot read header"
msgstr "немагчыма прачытаць загаловак"
+#: debug/pcprofiledump.c:99
+#, c-format
+msgid "cannot read pointer pair"
+msgstr "немагчыма прачытаць пару указальнікаў"
+
+#: debug/pcprofiledump.c:107
+#, c-format
+msgid "unexpected end of file in header"
+msgstr "нечаканы канец файла ў загалоўку"
+
+#: debug/pcprofiledump.c:110
+#, c-format
+msgid "unexpected end of file in pointer pair"
+msgstr "нечаканы канец файла ў пары ўказальнікаў"
+
#: debug/pcprofiledump.c:145
#, c-format
msgid "cannot open input file"
@@ -269,6 +309,10 @@ msgstr "немагчыма адкрыць файл уводу"
msgid "invalid pointer size"
msgstr "нÑправільны памер указальніка"
+#: debug/xtrace.sh:25 debug/xtrace.sh:43
+msgid "Usage: xtrace [OPTION]... PROGRAM [PROGRAMOPTION]...\\n"
+msgstr "ВыкарыÑтанне: xtrace [Ð’ÐРЫЯÐТ]... ПРÐГРÐМР[ОПЦЫЯ-ПРÐГРÐМЫ]...\\n"
+
#: debug/xtrace.sh:31 elf/sotruss.sh:56 elf/sotruss.sh:67 elf/sotruss.sh:135
#: malloc/memusage.sh:25
msgid "Try \\`%s --help' or \\`%s --usage' for more information.\\n"
@@ -292,16 +336,15 @@ msgid ""
"short options.\n"
"\n"
msgstr ""
-"Trace execution of program by printing currently executed function.\n"
+"ÐдÑочванне Ð²Ñ‹ÐºÐ°Ð½Ð°Ð½Ð½Ñ Ð¿Ñ€Ð°Ð³Ñ€Ð°Ð¼Ñ‹, друкуючы функцыю, ÑÐºÐ°Ñ Ð²Ñ‹ÐºÐ¾Ð½Ð²Ð°ÐµÑ†Ñ†Ð° Ñž дадзены момант.\n"
"\n"
-" --data=FILE Don't run the program, just print the data from FILE.\n"
+" --data=ФÐЙЛ Ðе запуÑкаць праграму, адно раздрукаваць Ð´Ð°Ð´Ð·ÐµÐ½Ñ‹Ñ Ð· ФÐЙЛÐ.\n"
"\n"
-" -?,--help Print this help and exit\n"
-" --usage Give a short usage message\n"
-" -V,--version Print version information and exit\n"
+" -?,--help Раздрукаваць гÑтую даведку Ñ– выйÑці\n"
+" --usage Даць кароткае паведамленне аб выкарыÑтанні\n"
+" -V,--version ВывеÑці інфармацыю аб верÑÑ–Ñ– Ñ– выйÑці\n"
"\n"
-"Mandatory arguments to long options are also mandatory for any corresponding\n"
-"short options.\n"
+"ÐбавÑÐ·ÐºÐ¾Ð²Ñ‹Ñ Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ñ‹ Ð´Ð»Ñ Ð´Ð¾ÑžÐ³Ñ–Ñ… опцый такÑама абавÑÐ·ÐºÐ¾Ð²Ñ‹Ñ Ð´Ð»Ñ Ð»ÑŽÐ±Ñ‹Ñ… адпаведных кароткіх опцый.\n"
"\n"
#: debug/xtrace.sh:56 elf/ldd.bash.in:55 elf/sotruss.sh:49
@@ -356,7 +399,7 @@ msgstr "Файл кÑша мае нÑправільны парадак байтÐ
msgid "Cache generated by: "
msgstr "КÑш Ñтвораны: "
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Ðемагчыма адкрыць файл кÑшу %s\n"
@@ -425,11 +468,11 @@ msgstr "памылка Ð¿Ð°Ð´Ñ‡Ð°Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÑ– Ñупольных бібл
msgid "DYNAMIC LINKER BUG!!!"
msgstr "ПÐМЫЛКРДЫÐÐМІЧÐÐГРЛІÐКЕРÐ!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "не ўдалоÑÑ Ñтварыць ÑÐ¿Ñ–Ñ Ð°Ð±ÑˆÐ°Ñ€Ð°Ñž"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "Ñупольны аб'ект не адкрыты"
@@ -458,11 +501,11 @@ msgstr "не ўдалоÑÑ Ð²Ñ‹Ð´Ð·ÐµÐ»Ñ–Ñ†ÑŒ памÑць Ð´Ð»Ñ ÑпіÑу з
msgid "cannot allocate symbol search list"
msgstr "не ўдалоÑÑ Ð²Ñ‹Ð´Ð·ÐµÐ»Ñ–Ñ†ÑŒ памÑць Ð´Ð»Ñ ÑпіÑу пошуку Ñімвалаў"
-#: elf/dl-hwcaps.c:104
+#: elf/dl-hwcaps.c:103
msgid "cannot create HWCAP priorities"
msgstr "не ўдалоÑÑ Ñтварыць прыÑрытÑты HWCAP"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "не ўдалоÑÑ Ñтварыць ÑÐ¿Ñ–Ñ Ð¼Ð°Ð³Ñ‡Ñ‹Ð¼Ð°ÑцÑÑž"
@@ -482,99 +525,99 @@ msgstr "немагчыма Ñтварыць RUNPATH/RPATH копію"
msgid "cannot create search path array"
msgstr "не ўдалоÑÑ Ñтварыць табліцу шлÑхоў пошуку"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "не ўдалоÑÑ Ð²Ñ‹ÐºÐ°Ð½Ð°Ñ†ÑŒ stat Ð´Ð»Ñ Ñупольнага аб'екта"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "не ўдалоÑÑ Ñтварыць дÑÑкрыптар Ñупольнага аб'екта"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "не ўдалоÑÑ Ð¿Ñ€Ð°Ñ‡Ñ‹Ñ‚Ð°Ñ†ÑŒ Ð´Ð°Ð½Ñ‹Ñ Ñ„Ð°Ð¹Ð»Ð°"
-#: elf/dl-load.c:1138 elf/dl-map-segments.h:117
+#: elf/dl-load.c:1143 elf/dl-map-segments.h:118
msgid "ELF load command address/offset not page-aligned"
msgstr "ÐдраÑ/зрушÑнне каманды загрузкі ELF не выраўнаваны па Ñтаронцы"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "аб'ектны файл не мае Ñегментаў Ð´Ð»Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÑ–"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "не ўдалоÑÑ Ð´Ñ‹Ð½Ð°Ð¼Ñ–Ñ‡Ð½Ð° загрузіць выканальны файл"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "аб'ектны файл не мае дынамічнай Ñекцыі"
-#: elf/dl-load.c:1289
+#: elf/dl-load.c:1294
msgid "cannot dynamically load position-independent executable"
msgstr "немагчыма загрузіць пазіцыйна-незалежную праграму Ñž дынамічным Ñ€Ñжыме"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "Ñупольны аб'ект немагчыма адкрыць праз dlopen()"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "немагчыма выдзеліць памÑць Ð´Ð»Ñ Ð·Ð°Ð³Ð°Ð»Ð¾ÑžÐºÑƒ праграмы"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "не ўдалоÑÑ ÑžÐºÐ»ÑŽÑ‡Ñ‹Ñ†ÑŒ выканальны ÑÑ‚Ñк, Ñк патрабуе Ñупольны аб'ект"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "немагчыма закрыць дÑÑкрыптар файла"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "файл закароткі"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "нÑправільны загаловак ELF"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "кадаванне даных файла ELF не big-endian"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "кадаванне даных файла ELF не little-endian"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "ідÑнтыфікатар верÑÑ–Ñ– файла ELF не адпавÑдае актуальнай верÑÑ–Ñ–"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "нÑправільны ABI ÑÑ–ÑÑ‚Ñмы файла ELF"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "ÐÑÐ¿Ñ€Ð°Ð²Ñ–Ð»ÑŒÐ½Ð°Ñ Ð²ÐµÑ€ÑÑ–Ñ ABI ELF файла"
-#: elf/dl-load.c:1669
+#: elf/dl-load.c:1670
msgid "nonzero padding in e_ident"
msgstr "дапаўненне Ñž e_ident ненулÑвое"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "ÑƒÐ½ÑƒÑ‚Ñ€Ð°Ð½Ð°Ñ Ð¿Ð°Ð¼Ñ‹Ð»ÐºÐ°"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "верÑÑ–Ñ Ñ„Ð°Ð¹Ð»Ð° ELF не адпавÑдае актуальнай верÑÑ–Ñ–"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "можна загрузіць толькі ET_DYN і ET_EXEC"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "phentsize файла ELF нечаканага памеру"
@@ -602,15 +645,19 @@ msgstr "не ўдалоÑÑ Ð·Ð¼Ñніць абарону памÑці"
msgid "cannot map zero-fill pages"
msgstr "Ð·Ð°Ð¿Ð¾ÑžÐ½ÐµÐ½Ñ‹Ñ Ð½ÑƒÐ»Ñмі Ñтаронкі нельга адлюÑтроўваць"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "памылка пошуку Ñімвалу"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "не ўдалоÑÑ Ð¿Ð°ÑˆÑ‹Ñ€Ñ‹Ñ†ÑŒ глабальную праÑтору"
-#: elf/dl-open.c:716
+#: elf/dl-open.c:381
+msgid "TLS generation counter wrapped! Please report this."
+msgstr "Лічыльнік генерацыі TLS перапоўнены! Калі лаÑка, паведаміце аб гÑтым."
+
+#: elf/dl-open.c:717
msgid "cannot allocate address lookup data"
msgstr "не ўдалоÑÑ Ñ€Ð°Ð·Ð¼ÑÑціць Ð´Ð°Ð½Ñ‹Ñ Ð¿Ð¾ÑˆÑƒÐºÑƒ адраÑоў"
@@ -651,7 +698,7 @@ msgstr "не ўдалоÑÑ ÑžÐ¶Ñ‹Ñ†ÑŒ дадатковую ахову памÑÑ
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "RTLD_NEXT выкарыÑтаны Ñž кодзе, Ñкі не загружаны дынамічна"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "немагчыма Ñтварыць Ñтруктуры даных TLS"
@@ -663,216 +710,220 @@ msgstr "памылка пошуку верÑÑ–Ñ–"
msgid "cannot allocate version reference table"
msgstr "не ўдалоÑÑ Ð²Ñ‹Ð´Ð·ÐµÐ»Ñ–Ñ†ÑŒ памÑць Ð´Ð»Ñ Ñ‚Ð°Ð±Ð»Ñ–Ñ†Ñ‹ ÑпаÑылак на верÑÑ–Ñ–"
-#: elf/dl-version.c:380
+#: elf/dl-version.c:387
msgid "DT_RELR without GLIBC_ABI_DT_RELR dependency"
msgstr "DT_RELR без залежнаÑці GLIBC_ABI_DT_RELR"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "Ðадрукаваць кÑш"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "Стварае шматÑÐ»Ð¾ÑžÐ½Ñ‹Ñ Ð¿Ð°Ð²ÐµÐ´Ð°Ð¼Ð»ÐµÐ½ÑŒÐ½Ñ–"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "Ðе будаваць кÑш"
-#: elf/ldconfig.c:128
+#: elf/ldconfig.c:127
msgid "Don't update symbolic links"
msgstr "Ðе абнаўлÑць ÑÑ–Ð¼Ð²Ð°Ð»Ñ–Ñ‡Ð½Ñ‹Ñ ÑпаÑылкі"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "ПерайÑці Ñž КОРÐÐЬ Ñ– ўжыць Ñго Ñк каранёвы каталог"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "КОРÐÐЬ"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "КЭШ"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "Ужываць КЭШ у ÑкаÑці кÑш-файла"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "КÐÐФ"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "Ужыць КÐÐФ у ÑкаÑці канфігурацыйнага файла"
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:131
+msgid "Only process directories specified on the command line. Don't build cache."
+msgstr "Ðпрацоўваць толькі каталогі, ÑƒÐºÐ°Ð·Ð°Ð½Ñ‹Ñ Ñž камандным радку. Ðе будаваць кÑш"
+
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "Злучыць аÑÐ¾Ð±Ð½Ñ‹Ñ Ð±Ñ–Ð±Ð»Ñ–ÑÑ‚Ñкі ўручную з"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "ФÐРМÐТ"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "Format to use: new (default), old, or compat"
msgstr "Фармат Ð´Ð»Ñ Ð²Ñ‹ÐºÐ°Ñ€Ñ‹ÑтаннÑ: новы (па змаўчанні), Ñтары або ÑумÑшчальны"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "Ігнараваць дапаможны кÑш-файл"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "Cканфігураваць ÑувÑзі Ð¿Ð°Ð´Ñ‡Ð°Ñ Ð²Ñ‹ÐºÐ°Ð½Ð°Ð½Ð½Ñ Ð´Ð»Ñ Ð´Ñ‹Ð½Ð°Ð¼Ñ–Ñ‡Ð½Ð°Ð³Ð° лінкера"
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "ШлÑÑ… `%s' пададзены некалькі разоў"
-#: elf/ldconfig.c:278
+#: elf/ldconfig.c:277
#, c-format
msgid "(from %s:%d and %s:%d)\n"
msgstr "(з %s:%d і %s:%d)\n"
-#: elf/ldconfig.c:310 elf/ldconfig.c:351
+#: elf/ldconfig.c:309 elf/ldconfig.c:350
#, c-format
msgid "Could not form glibc-hwcaps path"
msgstr "Ðе ўдалоÑÑ Ñфармаваць шлÑÑ… glibc-hwcaps"
-#: elf/ldconfig.c:324
+#: elf/ldconfig.c:323
#, c-format
msgid "Listing directory %s"
msgstr "ПраглÑд каталога %s"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "Ðемагчыма зрабіць stat %s"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "Ðемагчыма зрабіць stat %s\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s - гÑта не ÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ð°Ñ ÑпаÑылка\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "Ðемагчыма зрабіць unlink %s"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "Ðемагчыма зрабіць ÑпаÑылку %s на %s"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (зьменена)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (ПРÐПУШЧÐÐÐ)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "Ðемагчыма знайÑці %s"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "Ðемагчыма зрабіць lstat %s"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "Файл %s праігнараваны, бо ён не Ñ‘Ñць звычайным файлам."
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "СпаÑылка не ÑтворанаÑ, бо не знойдзены soname Ð´Ð»Ñ %s"
-#: elf/ldconfig.c:701
+#: elf/ldconfig.c:700
#, c-format
msgid " (from %s:%d)\n"
msgstr " (з %s:%d)\n"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "Ðемагчыма адкрыць каталог %s"
-#: elf/ldconfig.c:743 elf/ldconfig.c:748
+#: elf/ldconfig.c:742 elf/ldconfig.c:747
#, c-format
msgid "Could not form library path"
msgstr "Ðе атрымалаÑÑ Ñфармаваць шлÑÑ… да бібліÑÑ‚Ñкі"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "Файл уводу %s не адшуканы.\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "Ðемагчыма зрабіць stat %s"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "libc6-бібліÑÑ‚Ñка %s у неадпаведным каталогу"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "бібліÑÑ‚Ñкі %s Ñ– %s у каталогу %s маюць аднолькавы soname, але Ð°Ð´Ñ€Ð¾Ð·Ð½Ñ‹Ñ Ñ‚Ñ‹Ð¿Ñ‹."
-#: elf/ldconfig.c:1051
+#: elf/ldconfig.c:1050
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr "ПапÑÑ€Ñджаньне: ігнаруецца канфігурацыйны файл, Ñкі немагчыма адкрыць: %s"
-#: elf/ldconfig.c:1099
+#: elf/ldconfig.c:1098
#, c-format
msgid "%s:%u: hwcap directive ignored"
msgstr "%s:%u: дырÑктыва hwcap ігнаруецца"
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "пры ўжыванні -r патрÑбна абÑÐ°Ð»ÑŽÑ‚Ð½Ð°Ñ Ð½Ð°Ð·Ð²Ð° канфігурацыйнага файла"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "памÑць вычарпана"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: немагчыма прачытаць каталог %s"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "пры ÑтварÑнні кÑшу ўжыты адноÑны шлÑÑ… `%s'"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "Ðемагчыма перайÑці Ñž каталог /"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "Ðемагчыма адкрыць каталог кÑш-файла %s\n"
@@ -881,6 +932,25 @@ msgstr "Ðемагчыма адкрыць каталог кÑш-файла %s\n"
msgid "Written by %s and %s.\n"
msgstr "Ðўтары: %s Ñ– %s.\n"
+#: elf/ldd.bash.in:47
+msgid ""
+"Usage: ldd [OPTION]... FILE...\n"
+" --help print this help and exit\n"
+" --version print version information and exit\n"
+" -d, --data-relocs process data relocations\n"
+" -r, --function-relocs process data and function relocations\n"
+" -u, --unused print unused direct dependencies\n"
+" -v, --verbose print all information\n"
+msgstr ""
+"Usage: ldd [OPTION]... FILE...\n"
+" --help --паказаць даведку Ñ– выйÑці\n"
+"\n"
+" --version print version information and exit\n"
+" -d, --data-relocs process data relocations\n"
+" -r, --function-relocs process data and function relocations\n"
+" -u, --unused print unused direct dependencies\n"
+" -v, --verbose print all information\n"
+
#: elf/ldd.bash.in:80
msgid "ldd: option \\`$1' is ambiguous"
msgstr "ldd: Ð¾Ð¿Ñ†Ñ‹Ñ \\`$1' Ñ‘Ñць неадназначнай"
@@ -1112,6 +1182,35 @@ msgstr "%s: нÑправільнае прызначÑнне: %s\n"
msgid "Invalid link from \"%s\" to \"%s\": %s\n"
msgstr "ÐÑÐ¿Ñ€Ð°Ð²Ñ–Ð»ÑŒÐ½Ð°Ñ ÑувÑзь \"%s\" на \"%s\": %s\n"
+#: elf/sotruss.sh:32
+#, sh-format
+msgid ""
+"Usage: sotruss [OPTION...] [--] EXECUTABLE [EXECUTABLE-OPTION...]\n"
+" -F, --from FROMLIST Trace calls from objects on FROMLIST\n"
+" -T, --to TOLIST Trace calls to objects on TOLIST\n"
+"\n"
+" -e, --exit Also show exits from the function calls\n"
+" -f, --follow Trace child processes\n"
+" -o, --output FILENAME Write output to FILENAME (or FILENAME.$PID in case\n"
+"\t\t\t -f is also used) instead of standard error\n"
+"\n"
+" -?, --help Give this help list\n"
+" --usage Give a short usage message\n"
+" --version Print program version"
+msgstr ""
+"Usage: sotruss [OPTION...] [--] EXECUTABLE [EXECUTABLE-OPTION...]\n"
+" -F, --from FROMLIST ТраÑіроўка выклікаў з аб'ектаў у FROMLIST\n"
+" -T, --to TOLIST Trace calls to objects on TOLIST\n"
+"\n"
+" -e, --exit Also show exits from the function calls\n"
+" -f, --follow Trace child processes\n"
+" -o, --output FILENAME Write output to FILENAME (or FILENAME.$PID in case\n"
+"\t\t\t -f is also used) instead of standard error\n"
+"\n"
+" -?, --help Give this help list\n"
+" --usage Даць кароткае паведамленне аб выкарыÑтанні\n"
+" --version Print program version"
+
#: elf/sotruss.sh:46
msgid "Mandatory arguments to long options are also mandatory for any corresponding\\nshort options.\\n"
msgstr "ÐбавÑÐ·ÐºÐ¾Ð²Ñ‹Ñ Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ñ‹ Ð´Ð»Ñ Ð´Ð¾ÑžÐ³Ñ–Ñ… опцыÑÑž з'ÑўлÑюцца абавÑзковымі Ñ– Ð´Ð»Ñ Ð°Ð´Ð¿Ð°Ð²ÐµÐ´Ð½Ñ‹Ñ…\\nкароткіх опцыÑÑž.\\n"
@@ -1173,82 +1272,82 @@ msgstr "ÐГУЛЬÐЫ_ÐБ'ЕКТ [ПРÐФІЛЯВÐЛЬÐЫЯ_ДÐÐЫЯ]"
msgid "failed to load shared object `%s'"
msgstr "немагчыма загрузіць агульны аб'ект `%s'"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "немагчыма Ñтварыць унутраны дÑÑкрыптар"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "Ðе ўдалоÑÑ Ð¿ÐµÑ€Ð°Ð°Ð´ÐºÑ€Ñ‹Ñ†ÑŒ агульны аб'ект `%s'"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "не ўдалоÑÑ Ð¿Ñ€Ð°Ñ‡Ñ‹Ñ‚Ð°Ñ†ÑŒ загалоўкі ÑекцыÑÑž"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "не ўдалоÑÑ Ð¿Ñ€Ð°Ñ‡Ñ‹Ñ‚Ð°Ñ†ÑŒ табліцу радкоў загалоўкаў ÑекцыÑÑž"
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** Ðе ўдалоÑÑ Ð¿Ñ€Ð°Ñ‡Ñ‹Ñ‚Ð°Ñ†ÑŒ назву файла адладкі: %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "немагчыма вызначыць назву файла"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "не ўдалоÑÑ Ð¿Ñ€Ð°Ñ‡Ñ‹Ñ‚Ð°Ñ†ÑŒ загаловак ELF"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** Файл `%s' ачышчаны: падрабÑзны аналіз немагчымы\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "не ўдалоÑÑ Ð·Ð°Ð³Ñ€ÑƒÐ·Ñ–Ñ†ÑŒ Ð´Ð°Ð½Ñ‹Ñ Ñімвала"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "не ўдаецца загрузіць Ð´Ð°Ð½Ñ‹Ñ Ð¿Ñ€Ð°Ñ„Ñ–Ð»ÑваннÑ"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "Ð¿Ð°Ð´Ñ‡Ð°Ñ Ð²Ñ‹Ð·Ð½Ð°Ñ‡ÑÐ½Ð½Ñ Ð°Ñ‚Ñ€Ñ‹Ð±ÑƒÑ‚Ð°Ñž файла даных прафілÑваннÑ"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "файл даных прафілÑÐ²Ð°Ð½Ð½Ñ `%s' не адпавÑдае агульнаму аб'екту `%s'"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "не ўдалоÑÑ Ð·Ñ€Ð°Ð±Ñ–Ñ†ÑŒ mmap файла даных прафілÑваннÑ"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "памылка Ð¿Ð°Ð´Ñ‡Ð°Ñ Ð·Ð°ÐºÑ€Ñ‹Ñ†Ñ†Ñ Ñ„Ð°Ð¹Ð»Ð° даных прафілÑваннÑ"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "`%s' не Ñ‘Ñць карÑктным файлам даных прафілÑÐ²Ð°Ð½Ð½Ñ Ð´Ð»Ñ `%s'"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "немагчыма разьмеркаваць Ð·Ð½Ð°ÐºÐ°Ð²Ñ‹Ñ Ð´Ð°Ð½Ñ‹Ñ"
@@ -2256,7 +2355,7 @@ msgid "cannot resize archive file"
msgstr "не ўдалоÑÑ Ð·Ð¼Ñніць памер архіўнага файлу"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "не ўдалоÑÑ Ð°Ð´Ð±Ñ–Ñ†ÑŒ у памÑць загаловак архіву"
@@ -2315,59 +2414,59 @@ msgstr "не ўдалоÑÑ Ð²Ñ‹ÐºÐ°Ð½Ð°Ñ†ÑŒ stat на архіў лакалі \
msgid "cannot lock locale archive \"%s\""
msgstr "не ўдалоÑÑ Ð·Ð°Ð±Ð»Ð°ÐºÐ°Ð²Ð°Ñ†ÑŒ архіў лакалі \"%s\""
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "не ўдалоÑÑ Ð¿Ñ€Ð°Ñ‡Ñ‹Ñ‚Ð°Ñ†ÑŒ загаловак архіву"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "лакаль '%s' ужо Ñ–Ñнуе"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "не ўдалоÑÑ Ð´Ð°Ð´Ð°Ñ†ÑŒ да архіву лакалі"
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "файл пÑеўданімаў лакалÑÑž не знойдзены `%s'"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "Дадаем %s\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "памылка Ð¿Ð°Ð´Ñ‡Ð°Ñ Ð°Ñ‚Ñ€Ñ‹Ð¼Ð°Ð½Ð½Ñ stat \"%s\": %s: праігнаравана"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "\"%s\" не Ñ‘Ñць каталогам; праігнаравана"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "не ўдалоÑÑ Ð°Ð´ÐºÑ€Ñ‹Ñ†ÑŒ каталог \"%s\": %s: праігнаравана"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "нÑпоўны набор файлаў лакалÑÑž у \"%s\""
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "не ўдалоÑÑ Ð¿Ñ€Ð°Ñ‡Ñ‹Ñ‚Ð°Ñ†ÑŒ уÑе файлы Ñž \"%s\": праігнаравана"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "лакалі \"%s\" нÑма Ñž архіве"
@@ -2462,27 +2561,221 @@ msgstr "блок вызвалены двойчы\n"
msgid "bogus mcheck_status, library is buggy\n"
msgstr "неправільный mcheck_status, памылка Ñž бібліÑÑ‚Ñцы\n"
+#: malloc/memusage.sh:37
+msgid ""
+"Usage: memusage [OPTION]... PROGRAM [PROGRAMOPTION]...\n"
+"Profile memory usage of PROGRAM.\n"
+"\n"
+" -n,--progname=NAME Name of the program file to profile\n"
+" -p,--png=FILE Generate PNG graphic and store it in FILE\n"
+" -d,--data=FILE Generate binary data file and store it in FILE\n"
+" -u,--unbuffered Don't buffer output\n"
+" -b,--buffer=SIZE Collect SIZE entries before writing them out\n"
+" --no-timer Don't collect additional information through timer\n"
+" -m,--mmap Also trace mmap & friends\n"
+"\n"
+" -?,--help Print this help and exit\n"
+" --usage Give a short usage message\n"
+" -V,--version Print version information and exit\n"
+"\n"
+" The following options only apply when generating graphical output:\n"
+" -t,--time-based Make graph linear in time\n"
+" -T,--total Also draw graph of total memory use\n"
+" --title=STRING Use STRING as title of the graph\n"
+" -x,--x-size=SIZE Make graphic SIZE pixels wide\n"
+" -y,--y-size=SIZE Make graphic SIZE pixels high\n"
+"\n"
+"Mandatory arguments to long options are also mandatory for any corresponding\n"
+"short options.\n"
+"\n"
+msgstr ""
+"ВыкарыÑтанне: memusage [ОПЦЫЯ]... ПРÐГРÐМР[ОПЦЫЯ-ПРÐГРÐМЫ]...\n"
+"Профіль выкарыÑÑ‚Ð°Ð½Ð½Ñ Ð¿Ð°Ð¼Ñці ПРÐГРÐМЫ.\n"
+"\n"
+" -n,--progname=ÐÐЗВРÐазва файла праграмы Ð´Ð»Ñ Ð¿Ñ€Ð°Ñ„Ñ–Ð»ÑваннÑ\n"
+" -p,--png=ФÐЙЛ Стварыце PNG-графіку Ñ– захаваць Ñе Ñž ФÐЙЛЕ\n"
+" -d,--data=ФÐЙЛ Стварыць бінарны файл дадзеных Ñ– захаваць Ñго Ñž ФÐЙЛЕ\n"
+" -u,--unbuffered Ðе буферызаваць вывад\n"
+" -b,--buffer=КОЛЬКÐСЦЬ Сабраць КОЛЬКÐСЦЬ запіÑаў перад Ñ–Ñ… запіÑам\n"
+" --no-timer Ðе збіраць дадатковую інфармацыю праз таймер\n"
+" -m,--mmap ТакÑама адÑочваць mmap Ñ– падобнае\n"
+"\n"
+" -?,--help Раздрукаваць гÑтую даведку Ñ– выйÑці\n"
+" --usage Даць кароткае паведамленне аб выкарыÑтанні\n"
+" -V, --version ВывеÑці інфармацыю пра верÑÑ–ÑŽ Ñ– выйÑці\n"
+"\n"
+" ÐаÑÑ‚ÑƒÐ¿Ð½Ñ‹Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ñ‹ прымÑнÑюцца толькі пры вывадзе графікі:\n"
+" -t,--time-based Зрабіць графік лінейным у чаÑе\n"
+" -T,--total ТакÑама намалÑваць графік агульнага выкарыÑÑ‚Ð°Ð½Ð½Ñ Ð¿Ð°Ð¼Ñці\n"
+" --title=РÐДОК Ужыць РÐДОК у ÑкаÑці назвы графіка\n"
+" -x,--x-size=КОЛЬКÐСЦЬ Зрабіць графіку шырынёй КОЛЬКÐСЦЬ пікÑелÑÑž\n"
+" -y,--y-size=КОЛЬКÐСЦЬ Зрабіць графік вышынёй КОЛЬКÐСЦЬ пікÑелÑÑž\n"
+"\n"
+"ÐбавÑÐ·ÐºÐ¾Ð²Ñ‹Ñ Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ñ‹ Ð´Ð»Ñ Ð´Ð¾ÑžÐ³Ñ–Ñ… опцый такÑама абавÑÐ·ÐºÐ¾Ð²Ñ‹Ñ Ð´Ð»Ñ Ð»ÑŽÐ±Ñ‹Ñ… адпаведных кароткіх опцый.\n"
+"\n"
+
+#: malloc/memusage.sh:98
+msgid ""
+"Syntax: memusage [--data=FILE] [--progname=NAME] [--png=FILE] [--unbuffered]\n"
+"\t [--buffer=SIZE] [--no-timer] [--time-based] [--total]\n"
+"\t [--title=STRING] [--x-size=SIZE] [--y-size=SIZE]\n"
+"\t PROGRAM [PROGRAMOPTION]..."
+msgstr ""
+"СінтакÑÑ–Ñ: memusage [--data=ФÐЙЛ] [--progname=ÐÐЗВÐ] [--png=ФÐЙЛ] [--unbuffered]\n"
+"\t [--buffer=ПÐМЕР] [--no-timer] [--time-based] [--total]\n"
+"\t [--title=РÐДОК] [--x-size=ПÐМЕР] [--y-size=ПÐМЕР]\n"
+"\t ПРÐГРÐМР[ОПЦЫЯ-ПРÐГРÐМЫ]..."
+
+#: malloc/memusage.sh:190
+msgid "memusage: option \\`${1##*=}' is ambiguous"
+msgstr "memusage: Ð¾Ð¿Ñ†Ñ‹Ñ \\`${1##*=}' неадназначнаÑ"
+
+#: malloc/memusage.sh:199
+msgid "memusage: unrecognized option \\`$1'"
+msgstr "memusage: нераÑÐ¿Ð°Ð·Ð½Ð°Ð½Ð°Ñ Ð¾Ð¿Ñ†Ñ‹Ñ \\`$1'"
+
+#: malloc/memusage.sh:212
+msgid "No program name given"
+msgstr "Ðазва праграмы не пададзенаÑ"
+
+#: malloc/memusagestat.c:56
+msgid "Name output file"
+msgstr "Ðазва выходнага файла"
+
+#: malloc/memusagestat.c:57
+msgid "STRING"
+msgstr "РÐДОК"
+
+#: malloc/memusagestat.c:57
+msgid "Title string used in output graphic"
+msgstr "Радок загалоўка, Ñкі выкарыÑтоўваецца Ñž выходным графіку"
+
+#: malloc/memusagestat.c:58
+msgid "Generate output linear to time (default is linear to number of function calls)"
+msgstr "Стварыць вывад лінейна па чаÑе (па змаўчанні лінейна па колькаÑці выклікаў функцый)"
+
+#: malloc/memusagestat.c:62
+msgid "Also draw graph for total memory consumption"
+msgstr "ТакÑама Ñтварыць графік агульнага ÑÐ¿Ð°Ð¶Ñ‹Ð²Ð°Ð½Ð½Ñ Ð¿Ð°Ð¼Ñці"
+
+#: malloc/memusagestat.c:63
+msgid "VALUE"
+msgstr "КОЛЬКÐСЦЬ"
+
+#: malloc/memusagestat.c:64
+msgid "Make output graphic VALUE pixels wide"
+msgstr "Зрабіць выходны графік шырынёй КОЛЬКÐСЦЬ пікÑелÑÑž"
+
+#: malloc/memusagestat.c:65
+msgid "Make output graphic VALUE pixels high"
+msgstr "Зрабіць выходны графік вышынёй КОЛЬКÐСЦЬ пікÑелÑÑž"
+
+#: malloc/memusagestat.c:70
+msgid "Generate graphic from memory profiling data"
+msgstr "Стварыць графік з дадзеных прафілÑÐ²Ð°Ð½Ð½Ñ Ð¿Ð°Ð¼Ñці"
+
+#: malloc/memusagestat.c:73
+msgid "DATAFILE [OUTFILE]"
+msgstr "ФÐЙЛ-ДÐДЗЕÐЫХ [ВЫХОДÐЫ-ФÐЙЛ]"
+
#: misc/error.c:192
msgid "Unknown system error"
msgstr "ÐевÑÐ´Ð¾Ð¼Ð°Ñ ÑÑ‹ÑÑ‚ÑÐ¼Ð½Ð°Ñ Ð¿Ð°Ð¼Ñ‹Ð»ÐºÐ°"
+#: nis/nis_callback.c:187
+msgid "unable to free arguments"
+msgstr "не ўдалоÑÑ Ð²Ñ‹Ð·Ð²Ð°Ð»Ñ–Ñ†ÑŒ аргументы"
+
+#: nis/nis_error.h:1 nis/ypclnt.c:832 nis/ypclnt.c:921 posix/regcomp.c:135
+#: sysdeps/gnu/errlist.h:1 sysdeps/posix/gai_strerror-strs.h:1
+msgid "Success"
+msgstr "ПаÑпÑхова"
+
+#: nis/nis_error.h:2
+msgid "Probable success"
+msgstr "Верагодны поÑпех"
+
+#: nis/nis_error.h:3
+msgid "Not found"
+msgstr "Ðе знойдзена"
+
+#: nis/nis_error.h:4
+msgid "Probably not found"
+msgstr "Магчыма, не знайшлі"
+
+#: nis/nis_error.h:5
+msgid "Cache expired"
+msgstr "ТÑрмін дзеÑÐ½Ð½Ñ ÐºÑша ÑкончыўÑÑ"
+
+#: nis/nis_error.h:6
+msgid "NIS+ servers unreachable"
+msgstr "Серверы NIS+ недаÑтупныÑ"
+
#: nis/nis_error.h:7
msgid "Unknown object"
msgstr "ÐевÑдомы абьект"
+#: nis/nis_error.h:8
+msgid "Server busy, try again"
+msgstr "Сервер занÑты, паўтарыце Ñпробу"
+
#: nis/nis_error.h:9
msgid "Generic system error"
msgstr "ÐÐ³ÑƒÐ»ÑŒÐ½Ð°Ñ ÑÑ‹ÑÑ‚ÑÐ¼Ð½Ð°Ñ Ð¿Ð°Ð¼Ñ‹Ð»ÐºÐ°"
+#: nis/nis_error.h:10
+msgid "First/next chain broken"
+msgstr "Першы/наÑтупны ланцужок разарваны"
+
#. TRANS The file permissions do not allow the attempted operation.
#: nis/nis_error.h:11 nis/ypclnt.c:877 sysdeps/gnu/errlist.h:90
msgid "Permission denied"
msgstr "бракуе правоў"
+#: nis/nis_error.h:12
+msgid "Not owner"
+msgstr "Ðе ўлаÑнік"
+
+#: nis/nis_error.h:13
+msgid "Name not served by this server"
+msgstr "Ð†Ð¼Ñ Ð½Ðµ абÑлугоўваецца гÑтым Ñерверам"
+
+#: nis/nis_error.h:14
+msgid "Server out of memory"
+msgstr "Ðа Ñерверы не хапае памÑці"
+
+#: nis/nis_error.h:15
+msgid "Object with same name exists"
+msgstr "Ðб'ект з такой жа назвай Ñ–Ñнуе"
+
+#: nis/nis_error.h:16
+msgid "Not master server for this domain"
+msgstr "Ðе галоўны Ñервер Ð´Ð»Ñ Ð³Ñтага дамена"
+
+#: nis/nis_error.h:17
+msgid "Invalid object for operation"
+msgstr "Ðедапушчальны аб'ект Ð´Ð»Ñ Ð°Ð¿ÐµÑ€Ð°Ñ†Ñ‹Ñ–"
+
#: nis/nis_error.h:18
msgid "Malformed name, or illegal name"
msgstr "ДрÑÐ½Ð½Ð°Ñ Ñ†Ñ– Ð½ÐµÐ´Ð°Ð¿ÑƒÑˆÑ‡Ð°Ð»ÑŒÐ½Ð°Ñ Ð½Ð°Ð·Ð²Ð°"
+#: nis/nis_error.h:19
+msgid "Unable to create callback"
+msgstr "Ðемагчыма Ñтварыць зваротны выклік"
+
+#: nis/nis_error.h:20
+msgid "Results sent to callback proc"
+msgstr "Вынікі адпраўлены Ñž працÑдуру зваротнага выкліку"
+
+#: nis/nis_error.h:21
+msgid "Not found, no such name"
+msgstr "Ðе знойдзены, такой назвы нÑма"
+
+#: nis/nis_error.h:22
+msgid "Name/entry isn't unique"
+msgstr "ІмÑ/Ð·Ð°Ð¿Ñ–Ñ Ð½Ðµ ўнікальныÑ"
+
#: nis/nis_error.h:23
msgid "Modification failed"
msgstr "Памылка зьмÑненьнÑ"
@@ -2491,22 +2784,165 @@ msgstr "Памылка зьмÑненьнÑ"
msgid "Database for table does not exist"
msgstr "Базы даньнÑÑž Ð´Ð»Ñ Ñ‚Ð°Ð±Ð»Ñ–Ñ†Ñ‹ не йÑнуе"
+#: nis/nis_error.h:25
+msgid "Entry/table type mismatch"
+msgstr "ÐеÑупадзенне тыпу запіÑу/табліцы"
+
+#: nis/nis_error.h:26
+msgid "Link points to illegal name"
+msgstr "СпаÑылка паказвае на немагчымае імÑ"
+
+#: nis/nis_error.h:27
+msgid "Partial success"
+msgstr "ЧаÑтковы поÑпех"
+
+#: nis/nis_error.h:28
+msgid "Too many attributes"
+msgstr "Зашмат атрыбутаў"
+
#: nis/nis_error.h:29
msgid "Error in RPC subsystem"
msgstr "Памылка Ñž падÑÑ‹ÑÑме RPC"
+#: nis/nis_error.h:30
+msgid "Missing or malformed attribute"
+msgstr "Ðтрыбут адÑутнічае або нÑправільны"
+
+#: nis/nis_error.h:31
+msgid "Named object is not searchable"
+msgstr "Ðазваны аб'ект не даÑтупны Ð´Ð»Ñ Ð¿Ð¾ÑˆÑƒÐºÑƒ"
+
+#: nis/nis_error.h:32
+msgid "Error while talking to callback proc"
+msgstr "Памылка Ð¿Ð°Ð´Ñ‡Ð°Ñ Ñ€Ð°Ð·Ð¼Ð¾Ð²Ñ‹ з працÑдурай зваротнага выкліку"
+
+#: nis/nis_error.h:33
+msgid "Non NIS+ namespace encountered"
+msgstr "СуÑтрÑлаÑÑ Ð¿Ñ€Ð°Ñтора імёнаў, ÑÐºÐ°Ñ Ð½Ðµ належыць да NIS+"
+
+#: nis/nis_error.h:34
+msgid "Illegal object type for operation"
+msgstr "Ðедапушчальны тып аб'екта Ð´Ð»Ñ Ð°Ð¿ÐµÑ€Ð°Ñ†Ñ‹Ñ–"
+
+#: nis/nis_error.h:35
+msgid "Passed object is not the same object on server"
+msgstr "Перададзены аб'ект - гÑта не той Ñамы аб'ект на Ñерверы"
+
#: nis/nis_error.h:36
msgid "Modify operation failed"
msgstr "Памылка опÑрацыі зьмÑненьнÑ"
+#: nis/nis_error.h:37
+msgid "Query illegal for named table"
+msgstr "Ðедапушчальны запыт Ð´Ð»Ñ Ð½Ð°Ð·Ð²Ð°Ð½Ð°Ð¹ табліцы"
+
+#: nis/nis_error.h:38
+msgid "Attempt to remove a non-empty table"
+msgstr "Спроба выдаліць непуÑтую табліцу"
+
+#: nis/nis_error.h:39
+msgid "Error in accessing NIS+ cold start file. Is NIS+ installed?"
+msgstr "Памылка доÑтупу да файла халоднага запуÑку NIS+. Ці ÑžÑталÑваны NIS+?"
+
+#: nis/nis_error.h:40
+msgid "Full resync required for directory"
+msgstr "Ð”Ð»Ñ ÐºÐ°Ñ‚Ð°Ð»Ð¾Ð³Ð° патрабуецца Ð¿Ð¾ÑžÐ½Ð°Ñ Ð¿Ð°ÑžÑ‚Ð¾Ñ€Ð½Ð°Ñ ÑінхранізацыÑ"
+
+#: nis/nis_error.h:41
+msgid "NIS+ operation failed"
+msgstr "Збой аперацыі NIS+"
+
+#: nis/nis_error.h:42
+msgid "NIS+ service is unavailable or not installed"
+msgstr "Служба NIS+ недаÑÑ‚ÑƒÐ¿Ð½Ð°Ñ Ð°Ð±Ð¾ не ÑžÑтаноўлена"
+
+#: nis/nis_error.h:43
+msgid "Yes, 42 is the meaning of life"
+msgstr "Так, 42 - гÑта значÑнне жыццÑ"
+
+#: nis/nis_error.h:44
+msgid "Unable to authenticate NIS+ server"
+msgstr "Ðемагчыма праверыць ÑапраўднаÑць Ñервера NIS+"
+
+#: nis/nis_error.h:45
+msgid "Unable to authenticate NIS+ client"
+msgstr "Ðемагчыма праверыць ÑапраўднаÑць кліента NIS+"
+
+#: nis/nis_error.h:46
+msgid "No file space on server"
+msgstr "ÐÑма меÑца Ð´Ð»Ñ Ñ„Ð°Ð¹Ð»Ð°Ñž на Ñерверы"
+
#: nis/nis_error.h:47
msgid "Unable to create process on server"
msgstr "Ðемагчыма Ñтварыць працÑÑ Ð½Ð° паÑлужніку"
+#: nis/nis_error.h:48
+msgid "Master server busy, full dump rescheduled."
+msgstr "Галоўны Ñервер занÑты, поўны дамп будзе пазней."
+
+#: nis/nis_local_names.c:122
+#, c-format
+msgid "LOCAL entry for UID %d in directory %s not unique\n"
+msgstr "ЛÐКÐЛЬÐЫ Ð·Ð°Ð¿Ñ–Ñ Ð´Ð»Ñ UID %d у каталогу %s не ўнікальны\n"
+
+#: nis/nis_print.c:51
+msgid "UNKNOWN"
+msgstr "ÐЕВЯДОМÐ"
+
+#: nis/nis_print.c:61
+msgid "BOGUS OBJECT"
+msgstr "ÐЕСÐПРÐЎДÐЫ ÐБ'ЕКТ"
+
+#: nis/nis_print.c:63
+msgid "NO OBJECT"
+msgstr "ÐЯМРÐБ'ЕКТÐ"
+
+#: nis/nis_print.c:65
+msgid "DIRECTORY"
+msgstr "КÐТÐЛОГ"
+
+#: nis/nis_print.c:67
+msgid "GROUP"
+msgstr "ГРУПÐ"
+
+#: nis/nis_print.c:69 nscd/nscd.c:117
+msgid "TABLE"
+msgstr "ТÐБЛІЦÐ"
+
+#: nis/nis_print.c:71
+msgid "ENTRY"
+msgstr "ЗÐПІС"
+
+#: nis/nis_print.c:73
+msgid "LINK"
+msgstr "СПÐСЫЛКÐ"
+
+#: nis/nis_print.c:75
+msgid "PRIVATE\n"
+msgstr "ПРЫВÐТÐЫ\n"
+
+#: nis/nis_print.c:77
+msgid "(Unknown object"
+msgstr "(ÐевÑдомы аб'ект"
+
+#: nis/nis_print.c:164
+#, c-format
+msgid "Name : `%s'\n"
+msgstr "Ðазва : `%s'\n"
+
+#: nis/nis_print.c:165
+#, c-format
+msgid "Type : %s\n"
+msgstr "Тып : %s\n"
+
#: nis/nis_print.c:170
msgid "Master Server :\n"
msgstr "Галоўны паÑлужнік :\n"
+#: nis/nis_print.c:172
+msgid "Replicate :\n"
+msgstr "Паўтарыць :\n"
+
#: nis/nis_print.c:173
#, c-format
msgid "\tName : %s\n"
@@ -2516,16 +2952,38 @@ msgstr "\tÐазва : %s\n"
msgid "\tPublic Key : "
msgstr "\tÐгульны ключ : "
+#: nis/nis_print.c:178
+msgid "None.\n"
+msgstr "ÐÑ–Ñкі.\n"
+
#: nis/nis_print.c:181
#, c-format
msgid "Diffie-Hellmann (%d bits)\n"
msgstr "Diffie-Hellmann (%d біт)\n"
+#: nis/nis_print.c:186
+#, c-format
+msgid "RSA (%d bits)\n"
+msgstr "RSA (%d біт)\n"
+
+#: nis/nis_print.c:189
+msgid "Kerberos.\n"
+msgstr "Kerberos.\n"
+
+#: nis/nis_print.c:192
+#, c-format
+msgid "Unknown (type = %d, bits = %d)\n"
+msgstr "ÐевÑдома (тып = %d, біты = %d)\n"
+
#: nis/nis_print.c:203
#, c-format
msgid "\tUniversal addresses (%u)\n"
msgstr "\tУÑÐµÐ°Ð³ÑƒÐ»ÑŒÐ½Ð°Ñ Ð°Ð´Ñ€ÑÑа (%u)\n"
+#: nis/nis_print.c:225
+msgid "Time to live : "
+msgstr "Ð§Ð°Ñ Ñ–ÑÐ½Ð°Ð²Ð°Ð½ÑŒÐ½Ñ : "
+
#: nis/nis_print.c:227
msgid "Default Access rights :\n"
msgstr "Ð”Ð°Ð¿Ð¾Ð¼Ð½Ñ‹Ñ Ð¿Ñ€Ð°Ð²Ñ‹ доÑтупу :\n"
@@ -2539,6 +2997,10 @@ msgstr "\tВід : %s\n"
msgid "\tAccess rights: "
msgstr "\tПравы доÑтупу: "
+#: nis/nis_print.c:251
+msgid "Group Flags :"
+msgstr "СцÑжкі групаў :"
+
#: nis/nis_print.c:254
msgid ""
"\n"
@@ -2547,6 +3009,26 @@ msgstr ""
"\n"
"Удзельнікі групы :\n"
+#: nis/nis_print.c:266
+#, c-format
+msgid "Table Type : %s\n"
+msgstr "Тып табліцы : %s\n"
+
+#: nis/nis_print.c:267
+#, c-format
+msgid "Number of Columns : %d\n"
+msgstr "КолькаÑць Ñлупкоў : %d\n"
+
+#: nis/nis_print.c:268
+#, c-format
+msgid "Character Separator : %c\n"
+msgstr "РаздзÑлÑльнік Ñімвалаў : %c\n"
+
+#: nis/nis_print.c:269
+#, c-format
+msgid "Search Path : %s\n"
+msgstr "ШлÑÑ… пошуку : %s\n"
+
#: nis/nis_print.c:270
msgid "Columns :\n"
msgstr "Слупкі :\n"
@@ -2564,6 +3046,10 @@ msgstr "\t\tПрызнакі : "
msgid "\t\tAccess Rights : "
msgstr "\t\tПравы доÑтупу: "
+#: nis/nis_print.c:287
+msgid "Linked Object Type : "
+msgstr "Тып звÑзанага аб'екта : "
+
#: nis/nis_print.c:289
#, c-format
msgid "Linked to : %s\n"
@@ -2583,11 +3069,30 @@ msgstr "\t[%u] - [%u байтаў] "
msgid "Encrypted data\n"
msgstr "Ð—Ð°ÑˆÑ‹Ñ„Ñ€Ð°Ð²Ð°Ð½Ñ‹Ñ Ð´Ð°Ð½ÑŒÐ½Ñ–\n"
+#: nis/nis_print.c:307
+msgid "Binary data\n"
+msgstr "Ð‘Ñ–Ð½Ð°Ñ€Ð½Ñ‹Ñ Ð´Ð°Ð´Ð·ÐµÐ½Ñ‹Ñ\n"
+
+#: nis/nis_print.c:323
+#, c-format
+msgid "Object Name : %s\n"
+msgstr "Ðазва аб'екта : %s\n"
+
#: nis/nis_print.c:324
#, c-format
msgid "Directory : %s\n"
msgstr "ТÑчка : %s\n"
+#: nis/nis_print.c:325
+#, c-format
+msgid "Owner : %s\n"
+msgstr "Уладальнік : %s\n"
+
+#: nis/nis_print.c:326
+#, c-format
+msgid "Group : %s\n"
+msgstr "Група : %s\n"
+
#: nis/nis_print.c:327
msgid "Access Rights : "
msgstr "Правы доÑтупу: "
@@ -2606,43 +3111,164 @@ msgstr ""
msgid "Creation Time : %s"
msgstr "Ð§Ð°Ñ ÑтварÑÐ½ÑŒÐ½Ñ : %s"
+#: nis/nis_print.c:334
+#, c-format
+msgid "Mod. Time : %s"
+msgstr "Мад. Ð§Ð°Ñ : %s"
+
+#: nis/nis_print.c:335
+msgid "Object Type : "
+msgstr "Тып аб'екта : "
+
#: nis/nis_print.c:355
#, c-format
msgid " Data Length = %u\n"
msgstr " Ð”Ð°ÑžÐ¶Ñ‹Ð½Ñ Ð´Ð°Ð½ÑŒÐ½ÑÑž = %u\n"
+#: nis/nis_print.c:369
+#, c-format
+msgid "Status : %s\n"
+msgstr "Ð¡Ñ‚Ð°Ñ‚ÑƒÑ : %s\n"
+
+#: nis/nis_print.c:370
+#, c-format
+msgid "Number of objects : %u\n"
+msgstr "КолькаÑць аб'ектаў: %u\n"
+
+#: nis/nis_print.c:374
+#, c-format
+msgid "Object #%d:\n"
+msgstr "Ðб'ект #%d:\n"
+
+#: nis/nis_print_group_entry.c:116
+#, c-format
+msgid "Group entry for \"%s.%s\" group:\n"
+msgstr "Групавы Ð·Ð°Ð¿Ñ–Ñ Ð´Ð»Ñ Ð³Ñ€ÑƒÐ¿Ñ‹ \"%s.%s\":\n"
+
#: nis/nis_print_group_entry.c:124
msgid " Explicit members:\n"
msgstr " Ð¯ÑžÐ½Ñ‹Ñ ÑžÐ´Ð·ÐµÐ»ÑŒÐ½Ñ–ÐºÑ–:\n"
+#: nis/nis_print_group_entry.c:129
+msgid " No explicit members\n"
+msgstr " ÐÑма Ñўных удзельнікаў\n"
+
#: nis/nis_print_group_entry.c:132
msgid " Implicit members:\n"
msgstr " ÐÑÑÑžÐ½Ñ‹Ñ ÑžÐ´Ð·ÐµÐ»ÑŒÐ½Ñ–ÐºÑ–:\n"
+#: nis/nis_print_group_entry.c:137
+msgid " No implicit members\n"
+msgstr " ÐÑма нÑÑўных удзельнікаў\n"
+
#: nis/nis_print_group_entry.c:140
msgid " Recursive members:\n"
msgstr " РÑкурÑÑ‹ÑžÐ½Ñ‹Ñ ÑžÐ´Ð·ÐµÐ»ÑŒÐ½Ñ–ÐºÑ–:\n"
+#: nis/nis_print_group_entry.c:145
+msgid " No recursive members\n"
+msgstr " ÐÑма Ñ€ÑкурÑіўных удзельнікаў\n"
+
#: nis/nis_print_group_entry.c:148
msgid " Explicit nonmembers:\n"
msgstr " Ð¯ÑžÐ½Ñ‹Ñ Ð½Ñўдзельнікі:\n"
+#: nis/nis_print_group_entry.c:153
+msgid " No explicit nonmembers\n"
+msgstr " ÐÑма Ñўных нÑўдзельнікаў\n"
+
#: nis/nis_print_group_entry.c:156
msgid " Implicit nonmembers:\n"
msgstr " ÐÑÑÑžÐ½Ñ‹Ñ Ð½Ñўдзельнікі:\n"
+#: nis/nis_print_group_entry.c:161
+msgid " No implicit nonmembers\n"
+msgstr " ÐÑма нÑÑўных нÑўдзельнікаў\n"
+
+#: nis/nis_print_group_entry.c:164
+msgid " Recursive nonmembers:\n"
+msgstr " РÑкурÑÑ–ÑžÐ½Ñ‹Ñ Ð½Ñўдзельнікі:\n"
+
+#: nis/nis_print_group_entry.c:169
+msgid " No recursive nonmembers\n"
+msgstr " ÐÑма Ñ€ÑкурÑіўных нÑўдзельнікаў\n"
+
+#: nis/ypclnt.c:835
+msgid "Request arguments bad"
+msgstr "ДрÑÐ½Ð½Ñ‹Ñ Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ñ‹ запыту"
+
+#: nis/ypclnt.c:838
+msgid "RPC failure on NIS operation"
+msgstr "Збой RPC пры працы NIS"
+
+#: nis/ypclnt.c:841
+msgid "Can't bind to server which serves this domain"
+msgstr "Ðемагчыма прывÑзацца да Ñервера, Ñкі абÑлугоўвае гÑты дамен"
+
+#: nis/ypclnt.c:844
+msgid "No such map in server's domain"
+msgstr "ÐÑма такой карты Ñž дамене Ñервера"
+
+#: nis/ypclnt.c:847
+msgid "No such key in map"
+msgstr "Такога ключа Ñž табліцы нÑма"
+
#: nis/ypclnt.c:850
msgid "Internal NIS error"
msgstr "Ð£Ð½ÑƒÑ‚Ñ€Ð°Ð½Ð°Ñ Ð¿Ð°Ð¼Ñ‹Ð»ÐºÐ° NIS"
+#: nis/ypclnt.c:853
+msgid "Local resource allocation failure"
+msgstr "Памылка Ñ€Ð°Ð·Ð¼ÐµÑ€ÐºÐ°Ð²Ð°Ð½Ð½Ñ Ð»Ð°ÐºÐ°Ð»ÑŒÐ½Ñ‹Ñ… Ñ€ÑÑурÑаў"
+
+#: nis/ypclnt.c:856
+msgid "No more records in map database"
+msgstr "ÐÑма больш запіÑаў у базе даных"
+
+#: nis/ypclnt.c:859
+msgid "Can't communicate with portmapper"
+msgstr "Ðемагчыма звÑзацца з portmapper"
+
+#: nis/ypclnt.c:862
+msgid "Can't communicate with ypbind"
+msgstr "Ðемагчыма звÑзацца з ypbind"
+
+#: nis/ypclnt.c:865
+msgid "Can't communicate with ypserv"
+msgstr "Ðемагчыма звÑзацца з ypserv"
+
#: nis/ypclnt.c:868
msgid "Local domain name not set"
msgstr "МÑÑцовы маёнтак неўÑталÑваны"
+#: nis/ypclnt.c:871
+msgid "NIS map database is bad"
+msgstr "База даных карты NIS дрÑннаÑ"
+
+#: nis/ypclnt.c:874
+msgid "NIS client/server version mismatch - can't supply service"
+msgstr "ÐеадпаведнаÑць верÑÑ–Ñ– кліента/Ñервера NIS - немагчыма забÑÑпечыць абÑлугоўванне"
+
#: nis/ypclnt.c:880
msgid "Database is busy"
msgstr "База даньнÑÑž занÑта"
+#: nis/ypclnt.c:883
+msgid "Unknown NIS error code"
+msgstr "ÐевÑдомы код памылкі NIS"
+
+#: nis/ypclnt.c:924
+msgid "Internal ypbind error"
+msgstr "Ð£Ð½ÑƒÑ‚Ñ€Ð°Ð½Ð°Ñ Ð¿Ð°Ð¼Ñ‹Ð»ÐºÐ° ypbind"
+
+#: nis/ypclnt.c:927
+msgid "Domain not bound"
+msgstr "Дамен не прывÑзаны"
+
+#: nis/ypclnt.c:930
+msgid "System resource allocation failure"
+msgstr "Памылка Ñ€Ð°Ð·Ð¼ÐµÑ€ÐºÐ°Ð²Ð°Ð½Ð½Ñ ÑÑ–ÑÑ‚Ñмных Ñ€ÑÑурÑаў"
+
#: nis/ypclnt.c:933
msgid "Unknown ypbind error"
msgstr "ÐевÑÐ´Ð¾Ð¼Ð°Ñ Ð¿Ð°Ð¼Ñ‹Ð»ÐºÐ° ypbind"
@@ -2655,35 +3281,700 @@ msgstr "yp_update: немагчыма пераўтварыць вузел у ÑÐ
msgid "yp_update: cannot get server address\n"
msgstr "yp_update: немагчыма атрымаць адрÑÑу паÑлужніку\n"
+#: nscd/aicache.c:68 nscd/hstcache.c:451
+#, c-format
+msgid "Haven't found \"%s\" in hosts cache!"
+msgstr "Ðе знойдзены \"%s\" у кÑшы вузлоў!"
+
+#: nscd/aicache.c:70 nscd/hstcache.c:453
+#, c-format
+msgid "Reloading \"%s\" in hosts cache!"
+msgstr "Перазагрузка \"%s\" у кÑш хоÑтаў!"
+
+#: nscd/cache.c:150
+#, c-format
+msgid "add new entry \"%s\" of type %s for %s to cache%s"
+msgstr "дадаць новы Ð·Ð°Ð¿Ñ–Ñ \"%s\" тыпу %s Ð´Ð»Ñ %s у кÑш%s"
+
+#: nscd/cache.c:152
+msgid " (first)"
+msgstr " (першы)"
+
+#: nscd/cache.c:287
+#, c-format
+msgid "checking for monitored file `%s': %s"
+msgstr "праверка файла `%s', Ñкі назіраецца: %s"
+
+#: nscd/cache.c:297
+#, c-format
+msgid "monitored file `%s` changed (mtime)"
+msgstr "кантралÑваны файл `%s` зменены (mtime)"
+
+#: nscd/cache.c:340
+#, c-format
+msgid "pruning %s cache; time %ld"
+msgstr "ачыÑтка кÑшу %s; Ñ‡Ð°Ñ %ld"
+
+#: nscd/cache.c:369
+#, c-format
+msgid "considering %s entry \"%s\", timeout %<PRIu64>"
+msgstr "разглÑдаецца %s Ð·Ð°Ð¿Ñ–Ñ \"%s\", тайм-аўт %<PRIu64>"
+
+#: nscd/cachedumper.c:168
+msgid " - all data: "
+msgstr " - уÑе даныÑ: "
+
+#: nscd/cachedumper.c:362
+#, c-format
+msgid " - remaining data %p: "
+msgstr " - аÑÑ‚Ð°Ñ‚Ð½Ñ–Ñ Ð´Ð°Ð½Ñ‹Ñ %p: "
+
+#: nscd/connections.c:530
+#, c-format
+msgid "invalid persistent database file \"%s\": %s"
+msgstr "недапушчальны паÑтаÑнны файл базы дадзеных \"%s\": %s"
+
+#: nscd/connections.c:538
+msgid "uninitialized header"
+msgstr "неініцыÑлізаваны загаловак"
+
+#: nscd/connections.c:543
+msgid "header size does not match"
+msgstr "памер загалоўка не Ñупадае"
+
+#: nscd/connections.c:553
+msgid "file size does not match"
+msgstr "памер файла не Ñупадае"
+
+#: nscd/connections.c:570
+msgid "verification failed"
+msgstr "праверка не атрымалаÑÑ"
+
+#: nscd/connections.c:584
+#, c-format
+msgid "suggested size of table for database %s larger than the persistent database's table"
+msgstr "прапанаваны памер табліцы Ð´Ð»Ñ Ð±Ð°Ð·Ñ‹ дадзеных %s большы за табліцу паÑтаÑннай базы дадзеных"
+
+#: nscd/connections.c:595 nscd/connections.c:679
+#, c-format
+msgid "cannot create read-only descriptor for \"%s\"; no mmap"
+msgstr "немагчыма Ñтварыць дÑÑкрыптар толькі Ð´Ð»Ñ Ñ‡Ñ‹Ñ‚Ð°Ð½Ð½Ñ Ð´Ð»Ñ \"%s\"; нÑма mmap"
+
+#: nscd/connections.c:611
+#, c-format
+msgid "cannot access '%s'"
+msgstr "не ўдалоÑÑ Ð°Ñ‚Ñ€Ñ‹Ð¼Ð°Ñ†ÑŒ доÑтуп да '%s'"
+
+#: nscd/connections.c:659
+#, c-format
+msgid "database for %s corrupted or simultaneously used; remove %s manually if necessary and restart"
+msgstr "база даных Ð´Ð»Ñ %s пашкоджана або выкарыÑтоўваецца адначаÑова; пры неабходнаÑці выдаліце %s уручную Ñ– перазапуÑціце"
+
+#: nscd/connections.c:665
+#, c-format
+msgid "cannot create %s; no persistent database used"
+msgstr "нельга Ñтварыць %s; паÑтаÑÐ½Ð½Ð°Ñ Ð±Ð°Ð·Ð° даных не выкарыÑтоўваецца"
+
+#: nscd/connections.c:668
+#, c-format
+msgid "cannot create %s; no sharing possible"
+msgstr "не ўдалоÑÑ Ñтварыць %s; не можа быць ÑумеÑнага выкарыÑтаннÑ"
+
+#: nscd/connections.c:739
+#, c-format
+msgid "cannot write to database file %s: %s"
+msgstr "немагчыма запіÑаць у файл базы даных %s: %s"
+
+#: nscd/connections.c:795
+#, c-format
+msgid "cannot open socket: %s"
+msgstr "немагчыма адкрыць Ñокет: %s"
+
+#: nscd/connections.c:814
+#, c-format
+msgid "cannot enable socket to accept connections: %s"
+msgstr "не ўдалоÑÑ Ð´Ð°Ð·Ð²Ð¾Ð»Ñ–Ñ†ÑŒ Ñокету прымаць злучÑнні: %s"
+
+#: nscd/connections.c:871
+#, c-format
+msgid "disabled inotify-based monitoring for file `%s': %s"
+msgstr "адключаны маніторынг на аÑнове inotify Ð´Ð»Ñ Ñ„Ð°Ð¹Ð»Ð° `%s': %s"
+
+#: nscd/connections.c:875
+#, c-format
+msgid "monitoring file `%s` (%d)"
+msgstr "файл маніторынгу `%s` (%d)"
+
+#: nscd/connections.c:888
+#, c-format
+msgid "disabled inotify-based monitoring for directory `%s': %s"
+msgstr "адключаны маніторынг на аÑнове inotify Ð´Ð»Ñ ÐºÐ°Ñ‚Ð°Ð»Ð¾Ð³Ð° `%s': %s"
+
+#: nscd/connections.c:892
+#, c-format
+msgid "monitoring directory `%s` (%d)"
+msgstr "каталог маніторынгу `%s` (%d)"
+
+#: nscd/connections.c:920
+#, c-format
+msgid "monitoring file %s for database %s"
+msgstr "файл маніторынгу %s Ð´Ð»Ñ Ð±Ð°Ð·Ñ‹ даных %s"
+
+#: nscd/connections.c:930
+#, c-format
+msgid "stat failed for file `%s'; will try again later: %s"
+msgstr "не атрымалаÑÑ Ð°Ñ‚Ñ€Ñ‹Ð¼Ð°Ñ†ÑŒ ÑтатыÑтыку Ð´Ð»Ñ Ñ„Ð°Ð¹Ð»Ð° `%s'; паÑпрабуем ÑÑˆÑ‡Ñ Ñ€Ð°Ð· пазней: %s"
+
+#: nscd/connections.c:1049
+#, c-format
+msgid "provide access to FD %d, for %s"
+msgstr "забÑÑпечыць доÑтуп да FD %d Ð´Ð»Ñ %s"
+
+#: nscd/connections.c:1061
+#, c-format
+msgid "cannot handle old request version %d; current version is %d"
+msgstr "не ўдалоÑÑ Ð°Ð¿Ñ€Ð°Ñ†Ð°Ð²Ð°Ñ†ÑŒ Ñтарую верÑÑ–ÑŽ запыту %d; бÑÐ³ÑƒÑ‡Ð°Ñ Ð²ÐµÑ€ÑÑ–Ñ %d"
+
+#: nscd/connections.c:1084
+#, c-format
+msgid "request from %ld not handled due to missing permission"
+msgstr "запыт ад %ld не апрацаваны з-за адÑутнаÑці дазволу"
+
+#: nscd/connections.c:1089
+#, c-format
+msgid "request from '%s' [%ld] not handled due to missing permission"
+msgstr "запыт ад '%s' [%ld] не апрацаваны з-за адÑутнаÑці дазволу"
+
+#: nscd/connections.c:1094
+msgid "request not handled due to missing permission"
+msgstr "запыт не апрацаваны з-за адÑутнаÑці дазволу"
+
#: nscd/connections.c:1132 nscd/connections.c:1158
#, c-format
msgid "cannot write result: %s"
msgstr "немагчыма запіÑаць вынік: %s"
+#: nscd/connections.c:1249
+#, c-format
+msgid "error getting caller's id: %s"
+msgstr "не ўдалоÑÑ Ð´Ð°Ð²ÐµÐ´Ð°Ñ†Ñ†Ð°, хто выклікаў: %s"
+
+#: nscd/connections.c:1359
+#, c-format
+msgid "cannot open /proc/self/cmdline: %m; disabling paranoia mode"
+msgstr "немагчыма адкрыць /proc/self/cmdline: %m; адключÑнне Ñ€Ñжыму параноі"
+
+#: nscd/connections.c:1382
+#, c-format
+msgid "cannot change to old UID: %s; disabling paranoia mode"
+msgstr "немагчыма змÑніць Ñтары UID: %s; адключÑнне Ñ€Ñжыму параноі"
+
+#: nscd/connections.c:1393
+#, c-format
+msgid "cannot change to old GID: %s; disabling paranoia mode"
+msgstr "немагчыма змÑніць Ñтары GID: %s; адключÑнне Ñ€Ñжыму параноі"
+
+#: nscd/connections.c:1407
+#, c-format
+msgid "cannot change to old working directory: %s; disabling paranoia mode"
+msgstr "нельга перайÑці Ñž Ñтары працоўны каталог: %s; адключÑнне Ñ€Ñжыму параноі"
+
+#: nscd/connections.c:1454
+#, c-format
+msgid "re-exec failed: %s; disabling paranoia mode"
+msgstr "паўторны запуÑк не атрымаўÑÑ: %s; адключÑнне Ñ€Ñжыму параноі"
+
+#: nscd/connections.c:1463
+#, c-format
+msgid "cannot change current working directory to \"/\": %s"
+msgstr "немагчыма змÑніць бÑгучы працоўны каталог на \"/\": %s"
+
+#: nscd/connections.c:1647
+#, c-format
+msgid "short read while reading request: %s"
+msgstr "кароткае чытанне Ð¿Ð°Ð´Ñ‡Ð°Ñ Ð·Ð°Ð¿Ñ‹Ñ‚Ñƒ на чытанне: %s"
+
+#: nscd/connections.c:1680
+#, c-format
+msgid "key length in request too long: %d"
+msgstr "Ð´Ð°ÑžÐ¶Ñ‹Ð½Ñ ÐºÐ»ÑŽÑ‡Ð° Ñž запыце занадта вÑлікаÑ: %d"
+
+#: nscd/connections.c:1693
+#, c-format
+msgid "short read while reading request key: %s"
+msgstr "кароткае чытанне Ð¿Ð°Ð´Ñ‡Ð°Ñ Ñ‡Ñ‹Ñ‚Ð°Ð½Ð½Ñ ÐºÐ»ÑŽÑ‡Ð° запыту: %s"
+
+#: nscd/connections.c:1703
+#, c-format
+msgid "handle_request: request received (Version = %d) from PID %ld"
+msgstr "handle_request: атрыманы запыт (ВерÑÑ–Ñ = %d) ад PID %ld"
+
+#: nscd/connections.c:1708
+#, c-format
+msgid "handle_request: request received (Version = %d)"
+msgstr "handle_request: запыт атрыманы (ВерÑÑ–Ñ = %d)"
+
+#: nscd/connections.c:1848
+#, c-format
+msgid "ignored inotify event for `%s` (file exists)"
+msgstr "Ð¿Ñ€Ð°Ñ–Ð³Ð½Ð°Ñ€Ð°Ð²Ð°Ð½Ð°Ñ Ð¿Ð°Ð´Ð·ÐµÑ inotify Ð´Ð»Ñ `%s` (файл Ñ–Ñнуе)"
+
+#: nscd/connections.c:1853
+#, c-format
+msgid "monitored file `%s` was %s, removing watch"
+msgstr "кантралÑваны файл `%s` быў %s, выдаленне назіраннÑ"
+
+#: nscd/connections.c:1861 nscd/connections.c:1903
+#, c-format
+msgid "failed to remove file watch `%s`: %s"
+msgstr "не атрымалаÑÑ Ð²Ñ‹Ð´Ð°Ð»Ñ–Ñ†ÑŒ назіранне за файлам `%s`: %s"
+
+#: nscd/connections.c:1876
+#, c-format
+msgid "monitored file `%s` was written to"
+msgstr "кантралÑваны файл `%s` быў запіÑаны"
+
+#: nscd/connections.c:1900
+#, c-format
+msgid "monitored parent directory `%s` was %s, removing watch on `%s`"
+msgstr "КантралÑваны бацькоўÑкі каталог `%s` быў %s, выдаленне Ð½Ð°Ð·Ñ–Ñ€Ð°Ð½Ð½Ñ Ð·Ð° `%s`"
+
+#: nscd/connections.c:1926
+#, c-format
+msgid "monitored file `%s` was %s, adding watch"
+msgstr "кантралÑваны файл `%s` быў %s, даданне назіраннÑ"
+
+#: nscd/connections.c:1938
+#, c-format
+msgid "failed to add file watch `%s`: %s"
+msgstr "не ўдалоÑÑ Ð´Ð°Ð´Ð°Ñ†ÑŒ назіранне за файлам `%s`: %s"
+
+#: nscd/connections.c:2116 nscd/connections.c:2281
+#, c-format
+msgid "disabled inotify-based monitoring after read error %d"
+msgstr "адключаны маніторынг на аÑнове inotify паÑÐ»Ñ Ð¿Ð°Ð¼Ñ‹Ð»ÐºÑ– Ñ‡Ñ‹Ñ‚Ð°Ð½Ð½Ñ %d"
+
+#: nscd/connections.c:2397
+msgid "could not initialize conditional variable"
+msgstr "не ўдалоÑÑ Ñ–Ð½Ñ–Ñ†Ñ‹Ñлізаваць ўмоўную зменную"
+
+#: nscd/connections.c:2405
+msgid "could not start clean-up thread; terminating"
+msgstr "не атрымалаÑÑ Ð·Ð°Ð¿ÑƒÑціць паток ачыÑткі; Ñпыненне"
+
+#: nscd/connections.c:2419
+msgid "could not start any worker thread; terminating"
+msgstr "не ўдалоÑÑ Ð·Ð°Ð¿ÑƒÑціць ні адзін працоўны паток; Ñпыненне"
+
+#: nscd/connections.c:2474 nscd/connections.c:2476 nscd/connections.c:2492
+#: nscd/connections.c:2502 nscd/connections.c:2520 nscd/connections.c:2531
+#: nscd/connections.c:2541
+#, c-format
+msgid "Failed to run nscd as user '%s'"
+msgstr "Ðе атрымалаÑÑ Ð·Ð°Ð¿ÑƒÑціць nscd ад Ñ–Ð¼Ñ ÐºÐ°Ñ€Ñ‹Ñтальніка '%s'"
+
+#: nscd/connections.c:2494
+msgid "initial getgrouplist failed"
+msgstr "пачатковае getgrouplist не ўдалоÑÑ"
+
+#: nscd/connections.c:2503
+msgid "getgrouplist failed"
+msgstr "getgrouplist не ўдалоÑÑ"
+
+#: nscd/connections.c:2521
+msgid "setgroups failed"
+msgstr "setgroups не ўдалоÑÑ"
+
+#: nscd/grpcache.c:384 nscd/hstcache.c:401 nscd/initgrcache.c:377
+#: nscd/pwdcache.c:362 nscd/servicescache.c:309
+#, c-format
+msgid "short write in %s: %s"
+msgstr "кароткі Ð·Ð°Ð¿Ñ–Ñ Ñƒ %s: %s"
+
+#: nscd/grpcache.c:429 nscd/initgrcache.c:74
+#, c-format
+msgid "Haven't found \"%s\" in group cache!"
+msgstr "Ðе знойдзены \"%s\" у кÑшы групы!"
+
+#: nscd/grpcache.c:431 nscd/initgrcache.c:76
+#, c-format
+msgid "Reloading \"%s\" in group cache!"
+msgstr "Перазагрузка \"%s\" у кÑш групы!"
+
+#: nscd/grpcache.c:491
+#, c-format
+msgid "Invalid numeric gid \"%s\"!"
+msgstr "ÐÑправільны лічбавы gid \"%s\"!"
+
+#: nscd/mem.c:420
+#, c-format
+msgid "freed %zu bytes in %s cache"
+msgstr "вызвалена %zu байтаў у кÑшы %s"
+
+#: nscd/mem.c:563
+#, c-format
+msgid "no more memory for database '%s'"
+msgstr "нÑма больш памÑці Ð´Ð»Ñ Ð±Ð°Ð·Ñ‹ даных \"%s\""
+
+#: nscd/netgroupcache.c:198
+#, c-format
+msgid "Haven't found \"%s\" in netgroup cache!"
+msgstr "Ðе знойдзены \"%s\" у кÑшы netgroup!"
+
+#: nscd/netgroupcache.c:200
+#, c-format
+msgid "Reloading \"%s\" in netgroup cache!"
+msgstr "Перазагрузка \"%s\" у кÑш netgroup!"
+
+#: nscd/netgroupcache.c:486
+#, c-format
+msgid "Haven't found \"%s (%s,%s,%s)\" in netgroup cache!"
+msgstr "Ðе знойдзены \"%s (%s,%s,%s)\" у кÑшы netgroup!"
+
+#: nscd/netgroupcache.c:489
+#, c-format
+msgid "Reloading \"%s (%s,%s,%s)\" in netgroup cache!"
+msgstr "Перазагрузка \"%s (%s,%s,%s)\" у кÑш netgroup!"
+
+#: nscd/nscd.c:107
+msgid "Read configuration data from NAME"
+msgstr "Чытанне даных канфігурацыі з NAME"
+
+#: nscd/nscd.c:109
+msgid "Do not fork and display messages on the current tty"
+msgstr "Ðе пераходзіць у фон Ñ– паказваць паведамленні на бÑгучым tty"
+
+#: nscd/nscd.c:111
+msgid "Print contents of the offline cache file NAME"
+msgstr "Раздрукаваць змеÑціва пазаÑеткавага файла кÑша NAME"
+
+#: nscd/nscd.c:113
+msgid "Do not fork, but otherwise behave like a daemon"
+msgstr "Ðе Ñыходзіць у фон, але Ñž аÑтатнім паводзіць ÑÑбе Ñк дÑман"
+
+#: nscd/nscd.c:114
+msgid "NUMBER"
+msgstr "КОЛЬКÐСЦЬ"
+
+#: nscd/nscd.c:114
+msgid "Start NUMBER threads"
+msgstr "ЗапуÑціць КОЛЬКÐСЦЬ патокаў"
+
+#: nscd/nscd.c:115
+msgid "Shut the server down"
+msgstr "Выключыць Ñервер"
+
+#: nscd/nscd.c:116
+msgid "Print current configuration statistics"
+msgstr "Раздрукаваць бÑгучую ÑтатыÑтыку канфігурацыі"
+
+#: nscd/nscd.c:118
+msgid "Invalidate the specified cache"
+msgstr "Зрабіць указаны кÑш неÑапраўдным"
+
+#: nscd/nscd.c:119
+msgid "TABLE,yes"
+msgstr "ТÐБЛІЦÐ,так"
+
#: nscd/nscd.c:120
msgid "Use separate cache for each user"
msgstr "ВыкарыÑтоўваць аÑабіÑты кÑш Ð´Ð»Ñ ÐºÐ¾Ð¶Ð½Ð°Ð³Ð° карыÑтальніка"
+#: nscd/nscd.c:125
+msgid "Name Service Cache Daemon."
+msgstr "ДÑман кÑша Ñлужбы імёнаў."
+
+#: nscd/nscd.c:158 nss/getent.c:995 nss/makedb.c:208
+#, c-format
+msgid "wrong number of arguments"
+msgstr "нÑÐ¿Ñ€Ð°Ð²Ñ–Ð»ÑŒÐ½Ð°Ñ ÐºÐ¾Ð»ÑŒÐºÐ°Ñць аргументаў"
+
+#: nscd/nscd.c:173
+#, c-format
+msgid "failure while reading configuration file; this is fatal"
+msgstr "збой пры чытанні файла канфігурацыі; канец працы"
+
#: nscd/nscd.c:182
#, c-format
msgid "already running"
msgstr "ужо выконваецца"
+#: nscd/nscd.c:202
+#, c-format
+msgid "cannot create a pipe to talk to the child"
+msgstr "не ўдалоÑÑ Ñтварыць канал Ð´Ð»Ñ ÑувÑзі з патомкам"
+
+#: nscd/nscd.c:206
+#, c-format
+msgid "cannot fork"
+msgstr "немагчыма адгалінаваць"
+
+#: nscd/nscd.c:276
+msgid "cannot change current working directory to \"/\""
+msgstr "немагчыма змÑніць бÑгучы працоўны каталог на \"/\""
+
+#: nscd/nscd.c:284
+msgid "Could not create log file"
+msgstr "Ðемагчыма Ñтварыць файл пратакола"
+
#: nscd/nscd.c:363 nscd/nscd_stat.c:208
#, c-format
msgid "write incomplete"
msgstr "Ð·Ð°Ð¿Ñ–Ñ Ð½ÑÑкончаны"
+#: nscd/nscd.c:374
+#, c-format
+msgid "cannot read invalidate ACK"
+msgstr "не ўдалоÑÑ Ð¿Ñ€Ð°Ñ‡Ñ‹Ñ‚Ð°Ñ†ÑŒ неÑапраўдны ACK"
+
+#: nscd/nscd.c:380
+#, c-format
+msgid "invalidation failed"
+msgstr "не атрымалаÑÑ Ð°Ð½ÑƒÐ»Ñваць"
+
+#: nscd/nscd.c:429 nscd/nscd.c:454 nscd/nscd_stat.c:189
+#, c-format
+msgid "Only root is allowed to use this option!"
+msgstr "Толькі root можа ўжываць гÑтую опцыю!"
+
+#: nscd/nscd.c:449
+#, c-format
+msgid "'%s' is not a known database"
+msgstr "'%s' не Ñ‘Ñць вÑдомай базай даных"
+
+#: nscd/nscd.c:464
+#, c-format
+msgid "secure services not implemented anymore"
+msgstr "бÑÑÐ¿ÐµÑ‡Ð½Ñ‹Ñ Ð¿Ð°Ñлугі больш не Ñ€Ñалізуюцца"
+
+#: nscd/nscd.c:497
+#, c-format
+msgid ""
+"Supported tables:\n"
+"%s\n"
+"\n"
+"For bug reporting instructions, please see:\n"
+"%s.\n"
+msgstr ""
+"Табліцы, ÑÐºÑ–Ñ Ð¿Ð°Ð´Ñ‚Ñ€Ñ‹Ð¼Ð»Ñ–Ð²Ð°ÑŽÑ†Ñ†Ð°:\n"
+"%s\n"
+"Як паведаміць аб памылках:\n"
+"%s.\n"
+
+#: nscd/nscd.c:647
+#, c-format
+msgid "'wait' failed\n"
+msgstr "'wait' не атрымалаÑÑ\n"
+
+#: nscd/nscd.c:654
+#, c-format
+msgid "child exited with status %d\n"
+msgstr "нашчадак выйшаў з ÑтатуÑам %d\n"
+
+#: nscd/nscd.c:659
+#, c-format
+msgid "child terminated by signal %d\n"
+msgstr "нашчадак Ñпынены Ñігналам %d\n"
+
+#: nscd/nscd_conf.c:53
+#, c-format
+msgid "database %s is not supported"
+msgstr "база даных %s не падтрымліваецца"
+
+#: nscd/nscd_conf.c:104
+#, c-format
+msgid "Parse error: %s"
+msgstr "Памылка разбору: %s"
+
+#: nscd/nscd_conf.c:190
+#, c-format
+msgid "Must specify user name for server-user option"
+msgstr "ТрÑба ўказаць Ñ–Ð¼Ñ ÐºÐ°Ñ€Ñ‹Ñтальніка Ð´Ð»Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð° server-user"
+
+#: nscd/nscd_conf.c:200
+#, c-format
+msgid "Must specify user name for stat-user option"
+msgstr "ТрÑба ўказаць Ñ–Ð¼Ñ ÐºÐ°Ñ€Ñ‹Ñтальніка Ð´Ð»Ñ Ð¾Ð¿Ñ†Ñ‹Ñ– stat-user"
+
+#: nscd/nscd_conf.c:258
+#, c-format
+msgid "Must specify value for restart-interval option"
+msgstr "ТрÑба ўказаць значÑнне параметра restart-interval"
+
#: nscd/nscd_conf.c:272
#, c-format
msgid "Unknown option: %s %s %s"
msgstr "ÐевÑдомы выбар: %s %s %s"
+#: nscd/nscd_conf.c:285
+#, c-format
+msgid "cannot get current working directory: %s; disabling paranoia mode"
+msgstr "не ўдалоÑÑ Ð°Ñ‚Ñ€Ñ‹Ð¼Ð°Ñ†ÑŒ бÑгучы працоўны каталог: %s; адключÑнне Ñ€Ñжыму параноі"
+
+#: nscd/nscd_conf.c:305
+#, c-format
+msgid "maximum file size for %s database too small"
+msgstr "макÑімальны памер файла Ð´Ð»Ñ Ð±Ð°Ð·Ñ‹ даных %s занадта малы"
+
#: nscd/nscd_stat.c:158
#, c-format
msgid "cannot write statistics: %s"
msgstr "немагчыма запіÑаць ÑтатыÑтыку: %s"
+#: nscd/nscd_stat.c:173
+msgid "yes"
+msgstr "так"
+
+#: nscd/nscd_stat.c:174
+msgid "no"
+msgstr "не"
+
+#: nscd/nscd_stat.c:185
+#, c-format
+msgid "Only root or %s is allowed to use this option!"
+msgstr "Толькі root або %s могуць выкарыÑтоўваць гÑтую опцыю!"
+
+#: nscd/nscd_stat.c:196
+#, c-format
+msgid "nscd not running!\n"
+msgstr "nscd не працуе!\n"
+
+#: nscd/nscd_stat.c:220
+#, c-format
+msgid "cannot read statistics data"
+msgstr "не ўдалоÑÑ Ð¿Ñ€Ð°Ñ‡Ñ‹Ñ‚Ð°Ñ†ÑŒ ÑтатыÑтыку"
+
+#: nscd/nscd_stat.c:223
+#, c-format
+msgid ""
+"nscd configuration:\n"
+"\n"
+"%15d server debug level\n"
+msgstr ""
+"ÐºÐ°Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ‹Ñ nscd:\n"
+"\n"
+"%15d узровень дыÑгнаÑтычных паведамленнÑÑž\n"
+
+#: nscd/nscd_stat.c:247
+#, c-format
+msgid "%3ud %2uh %2um %2lus server runtime\n"
+msgstr "%3ud %2uh %2um %2lus Ñ‡Ð°Ñ Ð¿Ñ€Ð°Ñ†Ñ‹ Ñервера\n"
+
+#: nscd/nscd_stat.c:250
+#, c-format
+msgid " %2uh %2um %2lus server runtime\n"
+msgstr " %2uh %2um %2lus Ñ‡Ð°Ñ Ð¿Ñ€Ð°Ñ†Ñ‹ Ñервера\n"
+
+#: nscd/nscd_stat.c:252
+#, c-format
+msgid " %2um %2lus server runtime\n"
+msgstr " %2um %2lus Ñ‡Ð°Ñ Ð¿Ñ€Ð°Ñ†Ñ‹ Ñервера\n"
+
+#: nscd/nscd_stat.c:254
+#, c-format
+msgid " %2lus server runtime\n"
+msgstr " %2lus Ñ‡Ð°Ñ Ð¿Ñ€Ð°Ñ†Ñ‹ Ñервера\n"
+
+#: nscd/nscd_stat.c:256
+#, c-format
+msgid ""
+"%15d current number of threads\n"
+"%15d maximum number of threads\n"
+"%15lu number of times clients had to wait\n"
+"%15s paranoia mode enabled\n"
+"%15lu restart internal\n"
+"%15u reload count\n"
+msgstr ""
+"%15d бÑÐ³ÑƒÑ‡Ð°Ñ ÐºÐ¾Ð»ÑŒÐºÐ°Ñць патокаў\n"
+"%15d макÑÑ–Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ ÐºÐ¾Ð»ÑŒÐºÐ°Ñць патокаў\n"
+"%15lu колькі разоў кліенты муÑілі чакаць\n"
+"%15s уключаны Ñ€Ñжым параноі\n"
+"%15lu паміж перазапуÑкамі\n"
+"%15u колькаÑць перазагрузак\n"
+
+#: nscd/nscd_stat.c:291
+#, c-format
+msgid ""
+"\n"
+"%s cache:\n"
+"\n"
+"%15s cache is enabled\n"
+"%15s cache is persistent\n"
+"%15s cache is shared\n"
+"%15zu suggested size\n"
+"%15zu total data pool size\n"
+"%15zu used data pool size\n"
+"%15lu seconds time to live for positive entries\n"
+"%15lu seconds time to live for negative entries\n"
+"%15<PRIuMAX> cache hits on positive entries\n"
+"%15<PRIuMAX> cache hits on negative entries\n"
+"%15<PRIuMAX> cache misses on positive entries\n"
+"%15<PRIuMAX> cache misses on negative entries\n"
+"%15lu%% cache hit rate\n"
+"%15zu current number of cached values\n"
+"%15zu maximum number of cached values\n"
+"%15zu maximum chain length searched\n"
+"%15<PRIuMAX> number of delays on rdlock\n"
+"%15<PRIuMAX> number of delays on wrlock\n"
+"%15<PRIuMAX> memory allocations failed\n"
+"%15s check /etc/%s for changes\n"
+msgstr ""
+"\n"
+"%s кÑш:\n"
+"\n"
+"%15s кÑш уключаны\n"
+"%15s кÑш паÑтаÑнны\n"
+"%15s кÑш агульны\n"
+"%15zu прапанаваны памер\n"
+"%15zu агульны памер пула даных\n"
+"%15zu выкарыÑтаны памер пула даных\n"
+"%15lu Ñекунд Ñ‡Ð°Ñ Ð¶Ñ‹Ñ†Ñ†Ñ Ð´Ð»Ñ Ñтаноўчых запіÑаў\n"
+"%15lu Ñекунд Ñ‡Ð°Ñ Ð¶Ñ‹Ñ†Ñ†Ñ Ð´Ð»Ñ Ð°Ð´Ð¼Ð¾ÑžÐ½Ñ‹Ñ… запіÑаў\n"
+"%15<PRIuMAX> трапленні Ñž кÑш Ñтаноўчых запіÑаў\n"
+"%15<PRIuMAX> кÑшаванне хітоў адмоўных запіÑаў\n"
+"%15<PRIuMAX> промахі кÑша пры Ñтаноўчых запіÑах\n"
+"%15<PRIuMAX> промахі Ñž кÑшы на адмоўных запіÑах\n"
+"%15lu%% чаÑтата траплÑннÑÑž у кÑш\n"
+"%15zu бÑÐ³ÑƒÑ‡Ð°Ñ ÐºÐ¾Ð»ÑŒÐºÐ°Ñць кÑшаваных значÑннÑÑž\n"
+"%15zu макÑÑ–Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ ÐºÐ¾Ð»ÑŒÐºÐ°Ñць кÑшаваных значÑннÑÑž\n"
+"%15zu макÑÑ–Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ Ð´Ð°ÑžÐ¶Ñ‹Ð½Ñ Ð»Ð°Ð½Ñ†ÑƒÐ¶ÐºÐ° пошуку\n"
+"%15<PRIuMAX> колькаÑць затрымак на rdlock\n"
+"%15<PRIuMAX> колькаÑць затрымак на wrlock\n"
+"%15<PRIuMAX> размеркаванне памÑці не атрымалаÑÑ\n"
+"%15s праверыць /etc/%s на наÑўнаÑць змен\n"
+
+#: nscd/pwdcache.c:406
+#, c-format
+msgid "Haven't found \"%s\" in user database cache!"
+msgstr "Ðе знойдзены \"%s\" у кÑшы базы даных карыÑтальнікаў!"
+
+#: nscd/pwdcache.c:408
+#, c-format
+msgid "Reloading \"%s\" in user database cache!"
+msgstr "Перазагрузка \"%s\" у кÑш базы даных карыÑтальнікаў!"
+
+#: nscd/pwdcache.c:470
+#, c-format
+msgid "Invalid numeric uid \"%s\"!"
+msgstr "ÐÑправільны лічбавы uid \"%s\"!"
+
+#: nscd/selinux.c:154
+#, c-format
+msgid "Failed opening connection to the audit subsystem: %m"
+msgstr "Ðе атрымалаÑÑ Ð°Ð´ÐºÑ€Ñ‹Ñ†ÑŒ злучÑнне з падÑÑ–ÑÑ‚Ñмай аўдыту: %m"
+
+#: nscd/selinux.c:175
+msgid "Failed to set keep-capabilities"
+msgstr "Ðе ўдалоÑÑ ÑžÑталÑваць keep-capabilities"
+
+#: nscd/selinux.c:176 nscd/selinux.c:239
+msgid "prctl(KEEPCAPS) failed"
+msgstr "prctl(KEEPCAPS) не атрымалаÑÑ"
+
+#: nscd/selinux.c:190
+msgid "Failed to initialize drop of capabilities"
+msgstr "Ðе ўдалоÑÑ Ñ–Ð½Ñ–Ñ†Ñ‹Ñлізаваць ÑкарачÑнне магчымаÑцÑÑž"
+
#: nss/getent.c:154 nss/getent.c:466 nss/getent.c:513
#, c-format
msgid "Enumeration not supported on %s\n"
diff --git a/po/bg.po b/po/bg.po
index 86a68ba..604c4bb 100644
--- a/po/bg.po
+++ b/po/bg.po
@@ -10,9 +10,9 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: libc 2.40.9000\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
-"PO-Revision-Date: 2025-01-08 21:29+0200\n"
+"Project-Id-Version: libc 2.41.9000\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
+"PO-Revision-Date: 2025-07-20 18:44+0200\n"
"Last-Translator: Roumen Petrov <transl@roumenpetrov.info>\n"
"Language-Team: Bulgarian <dict@ludost.net>\n"
"Language: bg\n"
@@ -102,7 +102,7 @@ msgstr "(ПРОГРÐМÐРГРЕШКÐ) Ðе е извеÑтна верÑиÑÑ
msgid "%s: Too many arguments\n"
msgstr "%s: Твърде много аргументи\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(ПРОГРÐМÐРГРЕШКÐ) ОпциÑта трÑбва да е разпознаваема!?"
@@ -145,7 +145,7 @@ msgstr ""
"-o ИЗХОДЕÐ-ФÐЙЛ [ВХОДЕÐ_ФÐЙЛ]...\n"
"[ИЗХОДЕÐ-ФÐЙЛ [ВХОДЕÐ_ФÐЙЛ]...]"
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -160,7 +160,7 @@ msgstr ""
"%s.\n"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -176,7 +176,7 @@ msgstr ""
"ГÐРÐÐЦИИ, включително без предполагаемите гаранции за полезноÑÑ‚ и пригодноÑÑ‚.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -407,7 +407,7 @@ msgstr "Файла за Ñкладиране е грешен порÑдък на
msgid "Cache generated by: "
msgstr "Складът е Ñъздаден от: "
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Ðе може да Ñе отвори файлът за Ñкладиране %s\n"
@@ -476,11 +476,11 @@ msgstr "грешка при Ñвързване на Ñподелени библÐ
msgid "DYNAMIC LINKER BUG!!!"
msgstr "ДЕФЕКТ Ð’ ПРОГРÐМÐТРЗРДИÐÐМИЧÐО СВЪРЗВÐÐЕ!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "не може да Ñе Ñъздаде ÑпиÑък на обхватът"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "не е отворен ÑподелениÑÑ‚ обект"
@@ -509,11 +509,11 @@ msgstr "не може да Ñе задели памет за ÑпиÑък ÑÑŠÑ
msgid "cannot allocate symbol search list"
msgstr "не може да Ñе задели памет за ÑпиÑък ÑÑŠÑ Ñимволи за търÑене"
-#: elf/dl-hwcaps.c:104
+#: elf/dl-hwcaps.c:103
msgid "cannot create HWCAP priorities"
msgstr "не може да Ñе Ñъздадат HWCAP предимÑтва"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "не може да Ñе Ñъздаде ÑпиÑък за възможноÑти"
@@ -533,99 +533,99 @@ msgstr "не може да Ñе Ñъздаде копие на RUNPATH/RPATH"
msgid "cannot create search path array"
msgstr "не може да Ñе Ñъздаде маÑив на директориите за търÑене"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "не може да Ñе определÑÑ‚ атрибутите на Ñподелен обект"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "не може да Ñе Ñъздаде опиÑание за Ñподелен обект"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "не може да Ñе прочетат данни от файлът"
-#: elf/dl-load.c:1138 elf/dl-map-segments.h:117
+#: elf/dl-load.c:1143 elf/dl-map-segments.h:118
msgid "ELF load command address/offset not page-aligned"
msgstr "адреÑÑŠÑ‚ или отмеÑтването, в командата за зареждане на ELF, не е подравнен на Ñтраница"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "обектниÑÑ‚ файл е без дÑлове за Ñвързване"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "изпълнимиÑÑ‚ файл не може да Ñе Ñвърже динамично"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "обектниÑÑ‚ файл е без дÑл за динамично Ñвързване"
-#: elf/dl-load.c:1289
+#: elf/dl-load.c:1294
msgid "cannot dynamically load position-independent executable"
msgstr "не може да Ñе зареди изпълним файл незавиÑим от меÑтоположение"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "не е възможно dlopen() за ÑподелениÑÑ‚ обект"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "не може да Ñе задели памет за заглавието на програмата"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "Ñтекът не може да Ñе разреши за изпълнение, както е поиÑкано от ÑÐ¿Ð¾Ð´ÐµÐ»ÐµÐ½Ð¸Ñ Ð¾Ð±ÐµÐºÑ‚"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "не може да Ñе затвори опиÑанието на файлът"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "файлът е твърде къÑ"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "неправилен ELF заглавен блок"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "данните от ELF файлът не Ñа кодирани ÑÑŠÑ Ñтарши байт първи(big-endian)"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "данните от ELF файлът не Ñа кодирани Ñ Ð¼Ð»Ð°Ð´ÑˆÐ¸ байт първи(little-endian)"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "номерът на верÑÐ¸Ñ Ð¾Ñ‚ ELF-файла не ÑъответÑтва на текущата"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "ELF файлът е Ñ Ð½ÐµÐ¿Ñ€Ð°Ð²Ð¸Ð»ÐµÐ½ номер на ДПИ(ABI-двоичен програмен интерфейÑ) за ОС "
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "ELF файлът е Ñ Ð½ÐµÐ¿Ñ€Ð°Ð²Ð¸Ð»Ð½Ð° верÑÐ¸Ñ Ð·Ð° ДПИ(двоичен програмен интерфейÑ)"
-#: elf/dl-load.c:1669
+#: elf/dl-load.c:1670
msgid "nonzero padding in e_ident"
msgstr "ненулево допълване при e_ident"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "вътрешна грешка"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "верÑиÑта, на ELF файлът, не ÑъответÑтва на текущата"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "Ñамо ET_DYN и ET_EXEC могат да Ñе Ñвържат"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "неочакван размер на елемент(phentsize) в заглавието на ELF файл"
@@ -653,19 +653,19 @@ msgstr "не може да Ñе промени защитата на паметÑ
msgid "cannot map zero-fill pages"
msgstr "не може да Ñе изобразÑÑ‚ Ñтраници запълнени Ñ Ð½ÑƒÐ»Ð¸"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "грешка при търÑене на Ñимвол"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "не може да Ñе увеличи общата облаÑÑ‚"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "ПревъртÑн броÑч за пораждане на TLS! ÐœÐ¾Ð»Ñ Ð´Ð¾ÐºÐ»Ð°Ð´Ð²Ð°Ð¹Ñ‚Ðµ го."
-#: elf/dl-open.c:716
+#: elf/dl-open.c:717
msgid "cannot allocate address lookup data"
msgstr "не може да Ñе задели памет за търÑене на адреÑи"
@@ -706,7 +706,7 @@ msgstr "Ñлед премеÑтването не може да Ñе поÑтав
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "RTLD_NEXT е използван в код, който не е за динамично Ñвързване"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "не може да Ñе Ñъздадат Ñтруктури за TLS данни"
@@ -718,220 +718,220 @@ msgstr "грешка при търÑене на верÑиÑ"
msgid "cannot allocate version reference table"
msgstr "не може да Ñе Ñъздаде таблица Ñ Ð¿Ñ€ÐµÐ¿Ñ€Ð°Ñ‚ÐºÐ¸ за верÑиите"
-#: elf/dl-version.c:380
+#: elf/dl-version.c:387
msgid "DT_RELR without GLIBC_ABI_DT_RELR dependency"
msgstr "DT_RELR без GLIBC_ABI_DT_RELR завиÑимоÑÑ‚"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "Разпечатване на Ñклад"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "Извеждане на допълнителни ÑъобщениÑ"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "Да не Ñе Ñъздава Ñклад"
-#: elf/ldconfig.c:128
+#: elf/ldconfig.c:127
msgid "Don't update symbolic links"
msgstr "Да не Ñе обновÑват Ñимволни връзки"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "ПремеÑтване в и използване на ГЛÐВЕРкато \"коренова\" директориÑ"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "ГЛÐВЕÐ"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "КЕШ"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "Използване на КЕШ като файл за Ñкладиране"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "ÐÐСТ"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "Използване на ÐÐСТ за наÑтройващ файл"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "Да Ñе обработÑÑ‚ Ñамо директориите зададени от ÐºÐ¾Ð¼Ð°Ð½Ð´Ð½Ð¸Ñ Ñ€ÐµÐ´. Да не Ñе Ñъздава Ñклад."
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "Ръчно ще Ñе Ñъздадат връзки за отделните библиотеки."
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "ФОРМÐТ"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "Format to use: new (default), old, or compat"
msgstr "Използване на формат: new(по подразбиране), old или compat"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "Игнориране на помощниÑÑ‚ файл за Ñкладиране"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "ÐаÑтройване на Ñвръзките при изпълнение на програмата за динамично Ñвързване."
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "ПътÑÑ‚ \"%s\" е зададен повече от един веднъж"
-#: elf/ldconfig.c:278
+#: elf/ldconfig.c:277
#, c-format
msgid "(from %s:%d and %s:%d)\n"
msgstr "(от %s:%d и %s:%d)\n"
-#: elf/ldconfig.c:310 elf/ldconfig.c:351
+#: elf/ldconfig.c:309 elf/ldconfig.c:350
#, c-format
msgid "Could not form glibc-hwcaps path"
msgstr "Ðе може да Ñе Ñъздаде път за hwcaps"
-#: elf/ldconfig.c:324
+#: elf/ldconfig.c:323
#, c-format
msgid "Listing directory %s"
msgstr "ИзброÑване на Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ '%s'"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "Ðе може да Ñе определÑÑ‚ атрибутите на %s"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "Ðе може да Ñе определÑÑ‚ атрибутите на %s\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s не е Ñимволна връзка\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "Ðе може да Ñе развърже(изтрие) %s"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "Ðе може да Ñе Ñъздаде Ñимволна връзка от %s към %s"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (променен)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (ПРЕСКОЧЕÐ)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "%s не е открит"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "Ðе може да Ñе определÑÑ‚ атрибутите(lstat) на %s"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "Пренебрегване на файл %s, защото не е обикновен."
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "Ðе е Ñъздадена връзка, защото не е намерен soname за %s"
-#: elf/ldconfig.c:701
+#: elf/ldconfig.c:700
#, c-format
msgid " (from %s:%d)\n"
msgstr " (от %s:%d)\n"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "Ðе може да Ñе отвори Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ %s"
-#: elf/ldconfig.c:743 elf/ldconfig.c:748
+#: elf/ldconfig.c:742 elf/ldconfig.c:747
#, c-format
msgid "Could not form library path"
msgstr "Ðе може да Ñе образува път към библиотека"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "Ð’Ñ…Ð¾Ð´Ð½Ð¸Ñ Ñ„Ð°Ð¹Ð» %s не е намерен.\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "Ðе може да Ñе определÑÑ‚ атрибутите на %s"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "libc6 библиотека %s в неправилна директориÑ"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "библиотеките %s и %s от Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ %s Ñа Ñ ÐµÐ´Ð½Ð°ÐºÐ²Ð¾ SONAME, но Ñ Ñ€Ð°Ð·Ð»Ð¸Ñ‡ÐµÐ½ тип."
-#: elf/ldconfig.c:1051
+#: elf/ldconfig.c:1050
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr "Предупреждение: пренебрегване на файл Ñ Ð½Ð°Ñтройки, който не може да Ñе отвори: %s"
-#: elf/ldconfig.c:1099
+#: elf/ldconfig.c:1098
#, c-format
msgid "%s:%u: hwcap directive ignored"
msgstr "%s:%u: пренебрегнато hwcap напътÑтвие"
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "изиÑква Ñе абÑолютно име на наÑтройващ файл когато Ñе използва -r"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "паметта е изчерпана"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: не може да Ñе чете директориÑта %s "
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "използван е отноÑителен път %s за Ñъздаване на Ñклад"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "Ðе може да Ñе Ñмени директориÑта на /"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "Ðе може да Ñе отвори директориÑта '%s' Ñ Ñ„Ð°Ð¹Ð» за Ñкладиране\n"
@@ -1283,82 +1283,82 @@ msgstr "СПОД_ОБЕКТ [ДИÐГ_ДÐÐÐИ]"
msgid "failed to load shared object `%s'"
msgstr "пропадна зареждането на ÑÐ¿Ð¾Ð´ÐµÐ»ÐµÐ½Ð¸Ñ Ð¾Ð±ÐµÐºÑ‚ \"%s\""
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "не може да Ñе Ñъздаде вътрешно опиÑание"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "повторното отварÑнето на ÑÐ¿Ð¾Ð´ÐµÐ»ÐµÐ½Ð¸Ñ Ð¾Ð±ÐµÐºÑ‚ \"%s\" не уÑпÑ"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "не уÑÐ¿Ñ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ð½ÐµÑ‚Ð¾ на заглавиÑта на дÑловете"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "не уÑÐ¿Ñ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ð½ÐµÑ‚Ð¾ на таблицата Ñ Ð½Ð¸Ð·Ð¾Ð²Ðµ от заглавието на дÑла"
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** Ðе може да Ñе прочете името на файла Ñ ÑÐ²ÐµÐ´ÐµÐ½Ð¸Ñ Ð·Ð° изпитание: %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "не може да Ñе определи името на файла"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "прочитането на ELF заглавието не уÑпÑ"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** Файлът \"%s\" е изчиÑтен: невъзможен подробен анализ\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "пропадна зареждането на данни за Ñимволите"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "не може да Ñе заредÑÑ‚ диагноÑтичните данни"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "при определÑне атрибутите на файл Ñ Ð´Ð¸Ð°Ð³Ð½Ð¾Ñтични данни"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "файлът Ñ Ð´Ð¸Ð°Ð³Ð½Ð¾Ñтични данни \"%s\" не ÑъответÑтва на ÑÐ¿Ð¾Ð´ÐµÐ»ÐµÐ½Ð¸Ñ Ð¾Ð±ÐµÐºÑ‚ \"%s\""
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "ÐеуÑпех при изобразÑването в паметта на файл Ñ Ð´Ð¸Ð°Ð³Ð½Ð¾Ñтични данни"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "грешка при затварÑне на файл Ñ Ð´Ð¸Ð°Ð³Ð½Ð¾Ñтични данни"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "\"%s\" не е подходÑщ файл Ñ Ð´Ð¸Ð°Ð³Ð½Ð¾Ñтични данни за \"%s\""
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "не може да Ñе памет за данни за Ñимволи"
@@ -2857,7 +2857,7 @@ msgid "cannot resize archive file"
msgstr "не може да Ñе преоразмери Ð°Ñ€Ñ…Ð¸Ð²Ð½Ð¸Ñ Ñ„Ð°Ð¹Ð»"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "не може да Ñе изобрази(в паметта) заглавието на архива"
@@ -2916,64 +2916,70 @@ msgstr "не може да Ñе определÑÑ‚ атрибутите на аÑ
msgid "cannot lock locale archive \"%s\""
msgstr "не може да Ñе заключи архива за езикова наÑтройка \"%s\""
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:642 locale/programs/locarchive.c:656
+#: locale/programs/locarchive.c:664 locale/programs/locarchive.c:685
+#, c-format
+msgid "cannot unlock archive header"
+msgstr "не може да Ñе отключи заглавието на архива"
+
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "не може да Ñе прочете заглавието на архива"
-#: locale/programs/locarchive.c:661
+#: locale/programs/locarchive.c:665
#, c-format
msgid "bad magic value in archive header"
msgstr "неправилни магичеÑки байтове в заглавието на архива"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "езиковата наÑтройка \"%s\" вече ÑъщеÑтвува"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "не може да Ñе добави към архива за езикова наÑтройка"
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "не е намерен файлът Ñ Ð¿Ñевдоними за езикови наÑтройки \"%s\""
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "ДобавÑне на %s\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "определÑнето на атрибутите на \"%s\" не уÑпÑ: %s - пренебрегнато"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "\"%s\" не е Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ - пренебрегнато"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "не може да Ñе отвори директориÑта \"%s\": %s - пренебрегнато"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "непълно множеÑтво от файлове за езикови наÑтройки в \"%s\""
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "не може да Ñе прочетат вÑички файлове в \"%s\" - пренебрегнато"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "езиковата наÑтройка \"%s\" не е в архива"
diff --git a/po/ca.po b/po/ca.po
index 958c835..ccaea45 100644
--- a/po/ca.po
+++ b/po/ca.po
@@ -48,7 +48,7 @@
msgid ""
msgstr ""
"Project-Id-Version: libc 2.37.9000\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
"PO-Revision-Date: 2023-08-21 18:12+0200\n"
"Last-Translator: Ivan Vilata i Balaguer <ivan@selidor.net>\n"
"Language-Team: Catalan <ca@dodds.net>\n"
@@ -141,7 +141,7 @@ msgstr "(ERROR DEL PROGRAMA) No es coneix cap versió!?"
msgid "%s: Too many arguments\n"
msgstr "%s: Sobren arguments\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(ERROR DEL PROGRAMA) L’opció hauria d’haver estat reconeguda!?"
@@ -178,7 +178,7 @@ msgstr ""
"[FITXER_EIXIDA [FITXER_ENTRADA]…]"
# L’adreça es veu millor així. ivb
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -193,7 +193,7 @@ msgstr ""
"<%s>.\n"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -210,7 +210,7 @@ msgstr ""
"ADEQUACIÓ PER A UN PROPÒSIT PARTICULAR.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -433,7 +433,7 @@ msgstr "l’ordenació d’octets de la memòria cau no és correcta\n"
msgid "Cache generated by: "
msgstr "Memòria cau generada per: "
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "no s’ha pogut obrir el fitxer «%s» de memòria cau\n"
@@ -504,11 +504,11 @@ msgstr "error en carregar les biblioteques dinàmiques"
msgid "DYNAMIC LINKER BUG!!!"
msgstr "ERROR A L’ENLLAÇADOR DINÀMIC!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "no s’ha pogut crear la llista d’àmbits"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "l’objecte compartit no és obert"
@@ -541,11 +541,11 @@ msgstr "no s’ha pogut reservar la llista de dependències"
msgid "cannot allocate symbol search list"
msgstr "no s’ha pogut reservar la llista de cerca de símbols"
-#: elf/dl-hwcaps.c:104
+#: elf/dl-hwcaps.c:103
msgid "cannot create HWCAP priorities"
msgstr "no s’han pogut crear les prioritats de «HWCAP»"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "no s’ha pogut crear la llista de capacitats"
@@ -565,104 +565,104 @@ msgstr "no s’ha pogut crear una còpia de RUNPATH o RPATH"
msgid "cannot create search path array"
msgstr "no s’ha pogut crear el vector de camins de cerca"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "ha fallat stat() sobre l’objecte compartit"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "no s’ha pogut crear el descriptor d’objecte compartit"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "no s’han pogut llegir les dades del fitxer"
-#: elf/dl-load.c:1138 elf/dl-map-segments.h:117
+#: elf/dl-load.c:1143 elf/dl-map-segments.h:118
msgid "ELF load command address/offset not page-aligned"
msgstr "l’adreça o desplaçament de l’ordre ELF de càrrega no està alineada amb la pàgina"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "el fitxer d’objecte no té segments carregables"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "no s’ha pogut carregar dinàmicament l’executable"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "el fitxer d’objecte no té secció dinàmica"
-#: elf/dl-load.c:1289
+#: elf/dl-load.c:1294
msgid "cannot dynamically load position-independent executable"
msgstr "no s’ha pogut carregar dinàmicament l’executable independent de la posició"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "ha fallat dlopen() sobre l’objecte compartit"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "no s’ha pogut reservar memòria per a la capçalera del programa"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "no s’ha pogut habilitar la pila executable a requeriment de l’objecte compartit"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "no s’ha pogut tancar un descriptor de fitxer"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "el fitxer és massa curt"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "la capçalera ELF no és vàlida"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "la codificació de les dades del fitxer ELF no és bigâ€endian"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "la codificació de les dades del fitxer ELF no és littleâ€endian"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "la identificació de la versió del fitxer ELF no concorda amb l’actual"
# ivb (2001/11(06)
# ivb ABI = Application Binary Interface (interfície binària d'aplicació)
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "l’ABI de sistema operatiu del fitxer ELF no és vàlida"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "la versió de l’ABI del fitxer ELF no és vàlida"
-#: elf/dl-load.c:1669
+#: elf/dl-load.c:1670
msgid "nonzero padding in e_ident"
msgstr "el replè de «e_ident» no conté només zeros"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "error intern"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "la versió del fitxer ELF no concorda amb l’actual"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "només es poden carregar els tipus ET_DYN i ET_EXEC"
# ivb (2001/11/01)
# ivb La traducció completa de «phentsize» vindria a ser: mida d'entrada
# ivb de taula de la capçalera de programa.
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "el valor de «phentsize» del fitxer ELF no és l’esperat"
@@ -690,21 +690,21 @@ msgstr "no s’han pogut canviar les proteccions de memòria"
msgid "cannot map zero-fill pages"
msgstr "no s’han pogut mapar les pàgines plenes de zeros"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "error en cercar el símbol"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "no s’ha pogut estendre l’àmbit global"
# ivb (2002/10/29)
# ivb TLS = Thread Local Storage
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "El comptador de generació de TLS s’ha esgotat! Per favor, informeu d’açò."
-#: elf/dl-open.c:716
+#: elf/dl-open.c:717
msgid "cannot allocate address lookup data"
msgstr "no s’han pogut reservar les dades de cerca d’adreces"
@@ -745,7 +745,7 @@ msgstr "no s’ha pogut protegir la memòria després de reubicar"
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "s’ha emprat RTLD_NEXT en un codi no carregat dinàmicament"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "no s’han pogut crear les estructures de dades TLS"
@@ -757,232 +757,232 @@ msgstr "error en cercar la versió"
msgid "cannot allocate version reference table"
msgstr "no s’ha pogut reservar la taula de referències de versions"
-#: elf/dl-version.c:380
+#: elf/dl-version.c:387
msgid "DT_RELR without GLIBC_ABI_DT_RELR dependency"
msgstr "s’ha trobat una entrada DT_RELR sense dependència GLIBC_ABI_DT_RELR"
# Més ajudes. ivb
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "Mostra la memòria cau."
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "Genera missatges detallats."
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "No construeix la memòria cau."
-#: elf/ldconfig.c:128
+#: elf/ldconfig.c:127
msgid "Don't update symbolic links"
msgstr "No actualitza els enllaços simbòlics."
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "Canvia a i empra ARREL com a directori arrel."
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "ARREL"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "CACHE"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "Empra CACHE com a fitxer de memòria cau."
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "CONF"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "Empra CONF com a fitxer de configuració."
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "Només processa els directoris especificats a la línia d’ordres. No construeix la memòria cau."
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "Per a enllaçar les biblioteques manualment."
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "FORMAT"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "Format to use: new (default), old, or compat"
msgstr "FORMAT a emprar: «new» (nou, per defecte), «old» (antic) o «compat» (compatible)."
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "No té en compte el fitxer de memòria cau auxiliar."
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "Configura els vincles en temps d’execució de l’enllaçador dinàmic."
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "s’ha indicat el camí «%s» més d’una volta"
# Continua l’error anterior; NOM_DE_FITXER:LÃNIA. ivb
# No usa quote(). ivb
-#: elf/ldconfig.c:278
+#: elf/ldconfig.c:277
#, c-format
msgid "(from %s:%d and %s:%d)\n"
msgstr "(a «%s»:%d i a «%s»:%d)\n"
-#: elf/ldconfig.c:310 elf/ldconfig.c:351
+#: elf/ldconfig.c:309 elf/ldconfig.c:350
#, c-format
msgid "Could not form glibc-hwcaps path"
msgstr "no s’ha pogut construir el camí «glibc-hwcaps»"
# Missatge d’error. ivb
# No usa quote(). ivb
-#: elf/ldconfig.c:324
+#: elf/ldconfig.c:323
#, c-format
msgid "Listing directory %s"
msgstr "en llistar el directori «%s»"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "ha fallat stat() sobre «%s»"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "ha fallat stat() sobre «%s»\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "«%s» no és un enllaç simbòlic\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "no s’ha pogut desenllaçar «%s»"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "no s’ha pogut crear un enllaç des de «%s» cap a «%s»"
# ivb (2001/10/28)
# ivb Es refereix a un enllaç -> masculí.
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (canviat)\n"
# ivb (2001/10/28)
# ivb Es refereix a fer o no l'enllaç, no importa el gènere.
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (SALTAT)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "no s’ha pogut trobar «%s»"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "ha fallat lstat() sobre «%s»"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "es descarta el fitxer «%s» que no és un fitxer ordinari"
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "no s’ha creat l’enllaç perquè no s’ha trobat el nom d’objecte compartit de «%s»"
# Continua un missatge de diagnòstic anterior; NOM_DE_FITXER:LÃNIA. ivb
# No usa quote(). ivb
-#: elf/ldconfig.c:701
+#: elf/ldconfig.c:700
#, c-format
msgid " (from %s:%d)\n"
msgstr " (a «%s»:%d)\n"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "no s’ha pogut obrir el directori «%s»"
# Es refereix a la cadena de caràcters. ivb
-#: elf/ldconfig.c:743 elf/ldconfig.c:748
+#: elf/ldconfig.c:742 elf/ldconfig.c:747
#, c-format
msgid "Could not form library path"
msgstr "no s’ha pogut formar el camí de biblioteques"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "no s’ha trobat el fitxer d’entrada «%s»\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "ha fallat stat() sobre «%s»"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "la biblioteca «%s» per a libc6 es troba en un directori incorrecte"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "les biblioteques «%s» i «%s» del directori «%s» tenen el mateix nom d’objecte compartit però diferent tipus."
-#: elf/ldconfig.c:1051
+#: elf/ldconfig.c:1050
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr "avís: es descarta el fitxer de configuració que no s’ha pogut obrir: %s"
-#: elf/ldconfig.c:1099
+#: elf/ldconfig.c:1098
#, c-format
msgid "%s:%u: hwcap directive ignored"
msgstr "%s:%u: es descarta la directiva «hwcap»"
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "cal indicar el camí absolut del fitxer de configuració en emprar «-r»"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "la memòria s’ha exhaurit"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: no s’ha pogut llegir el directori «%s»"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "s’ha indicat el camí relatiu «%s» per a construir la memòria cau"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "no s’ha pogut canviar al directori arrel"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "no s’ha pogut obrir el directori «%s» de fitxers de memòria cau\n"
@@ -1351,82 +1351,82 @@ msgstr "OBJECTE_COMPARTIT [DADES_PERFILAT]"
msgid "failed to load shared object `%s'"
msgstr "no s’ha pogut carregar l’objecte compartit «%s»"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "no s’ha pogut crear un descriptor intern"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "no s’ha pogut reobrir l’objecte compartit «%s»"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "la lectura de les capçaleres de secció ha fallat"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "la lectura de la taula de cadenes de capçalera de secció ha fallat"
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** No s’ha pogut llegir el nom del fitxer d’informació de depuració: %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "no s’ha pogut determinar un nom de fitxer"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "la lectura de la capçalera ELF ha fallat"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** El fitxer «%s» no conté símbols: no és possible l’anàlisi detallada\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "no s’han pogut carregar les dades simbòliques"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "no s’han pogut carregar les dades de perfilat"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "en cridar stat() sobre el fitxer de dades de perfilat"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "el fitxer «%s» de dades de perfilat no correspon a l’objecte compartit «%s»"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "ha fallat mmap() sobre el fitxer de dades de perfilat"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "error en tancar el fitxer de dades de perfilat"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "«%s» no és un fitxer vàlid de perfilat de «%s»"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "no s’han pogut reservar les dades de símbols"
@@ -2933,7 +2933,7 @@ msgid "cannot resize archive file"
msgstr "no s’ha pogut redimensionar el fitxer d’arxiu"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "no s’ha pogut mapar la capçalera de l’arxiu"
@@ -2994,23 +2994,23 @@ msgstr "ha fallat stat() sobre l’arxiu «%s» de locales"
msgid "cannot lock locale archive \"%s\""
msgstr "no s’ha pogut blocar l’arxiu «%s» de locales"
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "no s’ha pogut llegir la capçalera de l’arxiu"
-#: locale/programs/locarchive.c:661
+#: locale/programs/locarchive.c:665
#, c-format
msgid "bad magic value in archive header"
msgstr "el valor màgic en la capçalera de l’arxiu no és vàlid"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "el locale «%s» ja existeix"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
@@ -3018,44 +3018,44 @@ msgstr "no s’ha pogut afegir a l’arxiu de locales"
# ivb (2002/10/21)
# ivb El fitxer conté àlies de diversos locales (locale.alias).
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "no s’ha trobat el fitxer «%s» d’àlies de locales"
# ivb (2002/10/21)
# ivb És un missatge, no un error.
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "S’està afegint «%s»\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "ha fallat stat() sobre «%s»: %s: es descarta"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "«%s» no és un directori: es descarta"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "no s’ha pogut obrir el directori «%s»: %s: es descarta"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "el joc de fitxers de locale a «%s» no és complet"
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "no s’han pogut llegir tots els fitxers de «%s»: es descarta"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "el locale «%s» no es troba a l’arxiu"
diff --git a/po/cs.po b/po/cs.po
index e786969..bdbafd7 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -25,9 +25,9 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: libc 2.40.9000\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
-"PO-Revision-Date: 2025-01-06 19:22+01:00\n"
+"Project-Id-Version: libc 2.41.9000\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
+"PO-Revision-Date: 2025-07-20 12:08+02:00\n"
"Last-Translator: Petr Pisar <petr.pisar@atlas.cz>\n"
"Language-Team: Czech <translation-team-cs@lists.sourceforge.net>\n"
"Language: cs\n"
@@ -119,7 +119,7 @@ msgstr "(CHYBA PROGRAMU) Neznámá verze!?"
msgid "%s: Too many arguments\n"
msgstr "%s: Příliš mnoho argumentů\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(CHYBA PROGRAMU) PÅ™epínaÄ mÄ›l být rozpoznán!?"
@@ -163,7 +163,7 @@ msgstr ""
"-o VÃSTUPNÃ_SOUBOR [VSTUPNÃ_SOUBOR]…\n"
"[ VÃSTUPNÃ_SOUBOR [VSTUPNÃ_SOUBOR]…]"
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -178,7 +178,7 @@ msgstr ""
"%s.\n"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -195,7 +195,7 @@ msgstr ""
"a to i bez záruky PRODEJNOSTI nebo VHODNOSTI PRO NĚJAKà KONKRÉTNà ÚČEL.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -427,7 +427,7 @@ msgstr "Soubor s keší má nesprávnou endianitu.\n"
msgid "Cache generated by: "
msgstr "Keš vytvořil: "
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Soubor s keší %s nelze otevřít\n"
@@ -496,11 +496,11 @@ msgstr "chyba bÄ›hem naÄítání sdílených knihoven"
msgid "DYNAMIC LINKER BUG!!!"
msgstr "CHYBA DYNAMICKÉHO LINKERU!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "seznam rozsahů nelze vytvořit"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "sdílený objekt není otevřen"
@@ -529,11 +529,11 @@ msgstr "dynamický seznam nelze alokovat"
msgid "cannot allocate symbol search list"
msgstr "seznam pro vyhledávání symbolů nelze alokovat"
-#: elf/dl-hwcaps.c:104
+#: elf/dl-hwcaps.c:103
msgid "cannot create HWCAP priorities"
msgstr "nelze vytvořit priority HWCAP"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "nelze vytvořit seznam kvalifikací"
@@ -553,99 +553,99 @@ msgstr "nelze vytvořit kopii RUNPATH/RPATH"
msgid "cannot create search path array"
msgstr "nelze vytvořit pole vyhledávacích cest"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "nelze získat informace o sdíleném objektu"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "deskriptor sdíleného objektu nelze vytvořit"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "data ze souboru nelze naÄíst"
-#: elf/dl-load.c:1138 elf/dl-map-segments.h:117
+#: elf/dl-load.c:1143 elf/dl-map-segments.h:118
msgid "ELF load command address/offset not page-aligned"
msgstr "Adresa/pozice kódu zavadÄ›Äe formátu ELF není zarovnána na hranici stránky"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "objektový soubor nemá žádné nahratelné segmenty"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "spustitelný kód nelze dynamicky zavést"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "objektový soubor nemá žádnou dynamickou sekci"
-#: elf/dl-load.c:1289
+#: elf/dl-load.c:1294
msgid "cannot dynamically load position-independent executable"
msgstr "spustitelný kód nezávislý na umístění nelze dynamicky zavést"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "sdílený objekt nebylo možné naÄíst funkcí dlopen()"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "nelze alokovat paměť pro hlaviÄku programu"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "nemohu povolit spustitelnost zásobníku, jak vyžaduje sdílený objekt"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "deskriptor souboru nelze zavřít"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "soubor je příliš krátký"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "neplatný hlaviÄka ELF"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "Kódování dat souboru ELF nemá velkou endianitu"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "Kódování dat souboru ELF nemá malou endianitu"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "ident verze souboru ELF se neshoduje se souÄasnou"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "Chybné ABI OS souboru ELF"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "Chybná verze ABI souboru ELF"
-#: elf/dl-load.c:1669
+#: elf/dl-load.c:1670
msgid "nonzero padding in e_ident"
msgstr "nenulová výplň v e_ident"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "vnitřní chyba"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "Verze souboru ELD se neshoduje se souÄasnou"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "jen ET_DYN a ET_EXEC mohou být nahráni"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "phentsize souboru ELF má neoÄekávanou velikost"
@@ -673,19 +673,19 @@ msgstr "ochrany paměti nelze změnit"
msgid "cannot map zero-fill pages"
msgstr "nulami vyplněné stránky nelze mapovat"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "chyba při vyhledávání symbolu"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "globální rozsah nelze rozšířit"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "ČítaÄ generátoru TLS oříznut! Prosím, tuto skuteÄnost nahlaste."
-#: elf/dl-open.c:716
+#: elf/dl-open.c:717
msgid "cannot allocate address lookup data"
msgstr "data pro vyhledávání adres nelze alokovat"
@@ -726,7 +726,7 @@ msgstr "po pÅ™emístÄ›ní nelze nelze uplatnit dodateÄnou ochranu pamÄ›ti"
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "RTLD_NEXT je použito pro kód, který není dynamicky zaveden"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "datové struktury TLS nelze vytvořit"
@@ -738,220 +738,220 @@ msgstr "chyba při vyhledávání verze"
msgid "cannot allocate version reference table"
msgstr "tabulku odkazů na verze nelze alokovat"
-#: elf/dl-version.c:380
+#: elf/dl-version.c:387
msgid "DT_RELR without GLIBC_ABI_DT_RELR dependency"
msgstr "DT_RELR bez závislosti GLIBC_ABI_DT_RELR"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "Vypsat keš"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "Vypisuje podrobné zprávy"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "Nevybuduje keš"
-#: elf/ldconfig.c:128
+#: elf/ldconfig.c:127
msgid "Don't update symbolic links"
msgstr "Neaktualizuje symbolické odkazy"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "Přepne se do a použije KOŘEN jako kořenový adresář"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "KOŘEN"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "KEÅ "
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "Použije KEŠ jako soubor s keší"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "KONFIG"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "Použije KONFIG jako konfiguraÄní soubor"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "Zpracuje jen adresáře uvedené na příkazovém řádku. Nevybuduje keš."
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "RuÄnÄ› odkazuje jednotlivé knihovny."
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "FORMÃT"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "Format to use: new (default), old, or compat"
msgstr "Který formát použije: new [nový] (výchozí), old [starý] nebo compat [kompatibilní]"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "Ignoruje pomocné soubory s keší"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "Nastaví vazby dynamického linkeru pro dobu běhu"
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "Cesta „%s“ zadána více krát"
-#: elf/ldconfig.c:278
+#: elf/ldconfig.c:277
#, c-format
msgid "(from %s:%d and %s:%d)\n"
msgstr "(z %s:%d a %s:%d)\n"
-#: elf/ldconfig.c:310 elf/ldconfig.c:351
+#: elf/ldconfig.c:309 elf/ldconfig.c:350
#, c-format
msgid "Could not form glibc-hwcaps path"
msgstr "Cestu ke glibc-hwcaps nebylo možné sestavit"
-#: elf/ldconfig.c:324
+#: elf/ldconfig.c:323
#, c-format
msgid "Listing directory %s"
msgstr "Výpis adresáře %s"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "Nelze získat informace o %s"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "Nelze získat informace o %s\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s není symbolický odkaz\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "Nelze smazat odkaz na %s"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "Odkaz na %2$s z %1$s nelze vytvořit"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (změněno)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (PŘESKOČENO)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "%s nezle nalézt"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "Informace o symbolickém odkazu %s nelze získat"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "Soubor %s ignorován, neb se nejedná o obyÄejný soubor."
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "Protože nebyl nalezen název sdílené knihovny (soname) %s, žádný odkaz nebyl vytvořeni."
-#: elf/ldconfig.c:701
+#: elf/ldconfig.c:700
#, c-format
msgid " (from %s:%d)\n"
msgstr " (z %s:%d)\n"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "Adresář %s nelze otevřít"
-#: elf/ldconfig.c:743 elf/ldconfig.c:748
+#: elf/ldconfig.c:742 elf/ldconfig.c:747
#, c-format
msgid "Could not form library path"
msgstr "Cestu ke knihovně nebylo možné vytvořit"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "Vstupní soubor %s nebyl nalezen.\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "Informace o %s nelze získat"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "libc6 knihovna %s je ve špatném adresáři"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "knihovny %s a %s z adresáře %s mají stejný název (soname), ale rozdílný typ."
-#: elf/ldconfig.c:1051
+#: elf/ldconfig.c:1050
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr "Pozor: soubor, který nelze otevřít, bude ignorován: %s"
-#: elf/ldconfig.c:1099
+#: elf/ldconfig.c:1098
#, c-format
msgid "%s:%u: hwcap directive ignored"
msgstr "%s:%u: direktiva hwcap ignorována"
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "PÅ™i použití -r je tÅ™eba zadat absolutní jméno konfiguraÄního souboru"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "paměť vyÄerpána"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: adresář %s nelze naÄíst"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "pro vybudování keše byla použita relativní cesta „%s“"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "Nelze se přepnout do adresáře /"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "Adresář %s se soubory keší nelze otevřít\n"
@@ -1305,84 +1305,84 @@ msgstr "SDÃLENÃ_OBJEKT [PROF_DATA]"
msgid "failed to load shared object `%s'"
msgstr "sdílený objekt „%s“ se nepodařilo zavést"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "interní deskriptor nelze vytvořit"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "Znovuotevření sdíleného objektu „%s“ nebylo úspěšné"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "Ätení hlaviÄek sekcí selhalo"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "chyba pÅ™i naÄítání tabulky Å™etÄ›zců z hlaviÄky sekce"
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** Nelze pÅ™eÄíst název souboru s ladícími informaci: %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "název souboru nelze urÄit"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "chyba pÅ™i Ätení hlaviÄky ELF"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr ""
"*** Ze souboru „%s“ byly odstraněny ladící informace: podrobná analýza\n"
"není možná\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "data symbolů se nepodaÅ™ila naÄíst"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "profilovací data nelze naÄíst"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "během funkce stat() na soubor profilovacích informací"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "profilovací data „%s“ nesouhlasí se sdíleným objektem „%s“"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "soubor profilovacích dat se nepodařilo namapovat mmapem"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "chyba během uzavírání souboru profilovacích dat"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "„%s“ nejsou správná profilovací data pro „%s“"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "paměť pro symboly nelze alokovat"
@@ -2884,7 +2884,7 @@ msgid "cannot resize archive file"
msgstr "souboru s archivem nelze změnit velikost "
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "hlaviÄku ze souboru s archivem nelze namapovat"
@@ -2943,64 +2943,70 @@ msgstr "nelze vykonat stat() pro archiv národního prostředí „%s“"
msgid "cannot lock locale archive \"%s\""
msgstr "archiv „%s“ národního prostředí nelze zamknout"
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:642 locale/programs/locarchive.c:656
+#: locale/programs/locarchive.c:664 locale/programs/locarchive.c:685
+#, c-format
+msgid "cannot unlock archive header"
+msgstr "hlaviÄku archivu nelze odemknout"
+
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "hlaviÄku archivu nelze pÅ™eÄíst"
-#: locale/programs/locarchive.c:661
+#: locale/programs/locarchive.c:665
#, c-format
msgid "bad magic value in archive header"
msgstr "v hlaviÄce archivu je chybná magická hodnota"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "národní prostředí „%s“ již existuje"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "do archivu národního prostředí nelze přidávat"
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "soubor „%s“ s přezdívkami národních prostředí není k nalezení"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "Přidávám %s\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "stat() na „%s“ selhal: %s: ignorováno"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "„%s“ není adresářem: ignorováno"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "adresář „%s“ nelze otevřít: %s: ignorováno"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "neúplná sada souborů národních prostředí v „%s“"
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "vÅ¡echny soubory v „%s“ nelze pÅ™eÄíst: ignorováno"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "národní prostředí „%s“ není v archivu"
diff --git a/po/da.po b/po/da.po
index ae26619..b7c2285 100644
--- a/po/da.po
+++ b/po/da.po
@@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: libc-2.11.1\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
"PO-Revision-Date: 2010-11-01 10:37+0100\n"
"Last-Translator: Keld Simonsen <keld@keldix.com>\n"
"Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
@@ -94,7 +94,7 @@ msgstr "(PROGRAMFEJL) Ingen version kendt!?"
msgid "%s: Too many arguments\n"
msgstr "%s: For mange argumenter\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(PROGRAMFEJL) Flag skulle have været genkendt!?"
@@ -137,7 +137,7 @@ msgstr ""
"[UDFIL [INDFIL]...]"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -154,7 +154,7 @@ msgstr ""
"TIL NOGEN SPECIEL OPGAVE.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -337,7 +337,7 @@ msgstr "ugyldig tilstand"
msgid "invalid mode parameter"
msgstr "ugyldig tilstandsparameter"
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Kan ikke åbne hurtigbufferfil %s\n"
@@ -386,11 +386,11 @@ msgstr "fejl ved indlæsning af delte biblioteker"
msgid "DYNAMIC LINKER BUG!!!"
msgstr "FEJL I DYNAMISK LÆNKER!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "kan ikke oprette omfangsliste"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "delt objekt er ikke åbent"
@@ -417,7 +417,7 @@ msgstr "kan ikke allokere afhængighedsliste"
msgid "cannot allocate symbol search list"
msgstr "kan ikke allokere symbolsøgningsliste"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "kan ikke oprette egenskabsliste"
@@ -437,87 +437,87 @@ msgstr "kan ikke oprette kopi af RUNPATH/RPATH"
msgid "cannot create search path array"
msgstr "kan ikke oprette tabel over søgestier"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "kan ikke tage status på delt objekt"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "kan ikke oprette delt objektbeskriver"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "kan ikke indlæse fildata"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "objektfil har ingen indlæsbare segmenter"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "kan ikke indlæse udførbare programmer dynamisk"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "objektfil har ingen dynamisk sektion"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "delt objekt kan ikke åbnes med dlopen()"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "kan ikke allokere hukommelse til programhoved"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "kan ikke oprette udførbar stak som kræves af delt objekt"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "kan ikke lukke filbeskriver"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "for kort fil"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "ugyldigt ELF-hoved"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "Kodning for ELF-fildata er ikke \"big-endian\""
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "Kodning for ELF-fildata er ikke \"little-endian\""
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "ELF-filens version-identitet passer ikke med den aktuelle"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "ELF-filens OS ABI er ugyldigt"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "ELF-filens ABI-version er ugyldig"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "intern fejl"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "ELF-filens version passer ikke med den aktuelle"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "kun ET_DYN og ET_EXEC kan indlæses"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "ELF-filens 'phentsize' er ikke den forventede størrelse"
@@ -545,15 +545,15 @@ msgstr "kan ikke ændre hukommelsesbeskyttelser"
msgid "cannot map zero-fill pages"
msgstr "kan ikke mappe nulstil-sider"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "fejl ved opslag af symbol"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "kan ikke udvide globalt defineringområde"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "Generationstæller for TLS tilbagestillet! Vær sød at indsende fejlrapport."
@@ -594,7 +594,7 @@ msgstr "kan ikke udføre yderligere hukommelsesbeskyttelser efter flytning"
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "RTLD_NEXT brugt i kode er ikke dynamisk indlæst"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "kan ikke oprette datastrukturer for TLS"
@@ -602,173 +602,173 @@ msgstr "kan ikke oprette datastrukturer for TLS"
msgid "cannot allocate version reference table"
msgstr "kan ikke allokere versionsreferencetabel"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "Udskriftsbuffer"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "Skriv udførlige meddelelser"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "Byg ikke hurtigbuffer"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "Skift til og brug ROOT som rod-katalog"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "ROOT"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "CACHE"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "Brug CACHE som bufferfil"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "CONF"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "Brug CONF som konfigurationsfil"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "Kun proces-kataloger angivet på kommandolinjen. Undlad at bygge buffer."
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "Lænk manuelt individuelle biblioteker"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "FORMAT"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "Ignorér ekstern bufferfil"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "Konfigurér kørselsværdier til Dynamisk Lænker"
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "Stien '%s' givet mere end én gang"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "Kan ikke stat() %s"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "Kan ikke stat() %s\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s er ikke en symbolsk lænke\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "Kan ikke aflænke %s"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "Kan ikke lænke %s til %s"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (ændret)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (UDELADT)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "Kan ikke finde %s"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "Kan ikke lstat %s"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "Ignorerede filen %s da den ikke er en almindelig fil."
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "Ingen lænke oprettet da .so-navn ikke kunne findes for %s"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "Kan ikke åbne katalog %s"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "Inddatafilen %s ikke fundet\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "Kan ikke stat() %s"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "libc6-bibliotek %s i forkert katalog"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "bibliotekerne %s og %s i kataloget %s har samme .so-navn, men forskellig type"
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "behøver fuldt filnavn for konfigurationsfil når -r bruges"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "hukommelsen opbrugt"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: kan ikke læse katalog %s"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "relativ søgesti \"%s\" brugt til at bygge hurtigbuffer"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "Kan ikke chdir til /"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "Kan ikke åbne hurtigbuffer-katalog %s\n"
@@ -961,82 +961,82 @@ msgstr "SHOBJ [PROFDATA]"
msgid "failed to load shared object `%s'"
msgstr "kunne ikke indlæse delt objekt '%s'"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "kan ikke oprette intern deskriptor"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "Genåbning af delt objekt '%s' fejlede"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "læsning af sektionsoverskrifter mislykkedes"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "læsning af tabel med sektionsoverskriftsstrenge mislykkedes"
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** Kan ikke læse fil med fejlsøgnings-information: %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "kan ikke bestemme filnavn"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "læsning af ELF-kontrolblok mislykkedes"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** Filen '%s' er strippet: ingen detaljeret analyse mulig\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "kunne ikke indlæse symboldata"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "kan ikke indlæse profileringsdata"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "ved 'stat' af profileringsdatafil"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "profileringsdatafil '%s' passer ikke med delt objekt '%s'"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "kunne ikke mmap'e filen med profileringsdata"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "fejl ved lukning af datafilen for profilering"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "'%s' er ikke korrekt profildatafil for '%s'"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "kan ikke allokere symboldata"
@@ -2314,7 +2314,7 @@ msgid "cannot resize archive file"
msgstr "kan ikke ændre størrelse på arkivfil"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "kan ikke læse arkivhoved med mmap"
@@ -2369,59 +2369,59 @@ msgstr "kan ikke udføre 'stat' på lokalearkiv '%s'"
msgid "cannot lock locale archive \"%s\""
msgstr "kan ikke låse lokalearkiv '%s'"
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "kan ikke læse arkivhoved"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "lokale '%s' eksisterer allerede"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "kan ikke tilføje til lokalearkiv"
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "fil \"%s\" for lokalealias findes ikke"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "Tilføjer %s\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "status på \"%s\" mislykkedes: %s: ignoreret"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "\"%s\" er ikke et katalog, ignoreret"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "kan ikke åbne katalog \"%s\": %s: ignoreret"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "ufuldstændigt sæt af lokalefiler i \"%s\""
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "kan ikke læse alle filer i \"%s\": ignoreret"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "lokale \"%s\" findes ikke i arkiv"
diff --git a/po/de.po b/po/de.po
index 4816acb..dbc87aa 100644
--- a/po/de.po
+++ b/po/de.po
@@ -6,9 +6,9 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: GNU libc 2.40.9000\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
-"PO-Revision-Date: 2025-01-06 16:52+0100\n"
+"Project-Id-Version: GNU libc 2.41.9000\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
+"PO-Revision-Date: 2025-07-20 14:26+0200\n"
"Last-Translator: Jochen Hein <jochen@jochen.org>\n"
"Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
"Language: de\n"
@@ -98,7 +98,7 @@ msgstr "(PROGRAM ERROR) Keine Version bekannt!?"
msgid "%s: Too many arguments\n"
msgstr "%s: Zu viele Argumente\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(PROGRAM ERROR) Option sollte eigentlich erkannt worden sein!?"
@@ -141,7 +141,7 @@ msgstr ""
"-o AUSGABEDATEI [EINGABEDATEI]...\n"
"[AUSGABEDATEI [EINGABEDATEI]...]"
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -156,7 +156,7 @@ msgstr ""
"%s.\n"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -173,7 +173,7 @@ msgstr ""
"VERWENDBARKEIT FÜR EINEN ANGEGEBENEN ZWECK.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -403,7 +403,7 @@ msgstr "Die Cachedatei hat die falsche Endianess.\n"
msgid "Cache generated by: "
msgstr "Der Cache wurde generiert von: "
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Kann die Cachedatei »%s« nicht öffnen\n"
@@ -472,11 +472,11 @@ msgstr "Fehler beim Laden der Shared Libraries"
msgid "DYNAMIC LINKER BUG!!!"
msgstr "Fehler des dynamischen Linkers!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "Kann die Scope-Liste nicht erzeugen"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "Das Shared-Object ist nicht geöffnet"
@@ -507,11 +507,11 @@ msgstr "Nicht genügend Hauptspeicher für die Abhängigkeitsliste verfügbar"
msgid "cannot allocate symbol search list"
msgstr "Nicht genügend Hauptspeicher für Symbol-Suchliste verfügbar"
-#: elf/dl-hwcaps.c:104
+#: elf/dl-hwcaps.c:103
msgid "cannot create HWCAP priorities"
msgstr "Kann die HWCAP Prioritäten nicht erstellen"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "Kann die Capability-Liste nicht erstellen"
@@ -531,101 +531,101 @@ msgstr "Kann die RUNPATH/RPATH-Kopie nicht erstellen"
msgid "cannot create search path array"
msgstr "Kann das Feld fpr den Suchpfad enicht erzeugen"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "Fehler beim »stat« des Shared Objects"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "Kann keinen Deskriptor für das Shared Object erzeugen"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "Kann die Datei-Daten nicht lesen"
# XXX
-#: elf/dl-load.c:1138 elf/dl-map-segments.h:117
+#: elf/dl-load.c:1143 elf/dl-map-segments.h:118
msgid "ELF load command address/offset not page-aligned"
msgstr "ELF Load-Kommando Adresse/Offset ist nicht »page-aligned«"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "Die Object-Datei hat keine ladbaren Segmente"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "Kann das Programm nicht dynamisch Laden"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "Die Objektdatei hat keine dynamischen Abschnitte"
-#: elf/dl-load.c:1289
+#: elf/dl-load.c:1294
msgid "cannot dynamically load position-independent executable"
msgstr "Kann das positions-unabhängige Programm nicht dynamisch Laden"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "Das Shared-Object kann nicht mittels »dlopen()« geladen werden"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "Nicht genügend Speicher für den Programm-Header verfügbar"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "Kann den Stack nicht ausführbar machen wie vom Shared Object verlangt"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "Der Datei-Deskriptor kann nicht geschlossen werden"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "Die Datei ist zu kurz"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "Ungültiger ELF-Header"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "ELF Datei Daten-Encoding ist nicht Big-Endian"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "ELF Datei Daten-Encoding ist nicht Little-Endian"
# XXX
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "Die ELF Datei-Versionsidentifikation passt nicht zur aktuellen Identifikation"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "Das OS ABI der ELF Datei ist ungültig"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "Die ABI-Version der ELF Datei ist ungültig"
-#: elf/dl-load.c:1669
+#: elf/dl-load.c:1670
msgid "nonzero padding in e_ident"
msgstr "nicht-nuller Füller in e_ident"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "Interner Fehler"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "Die Version der ELF Datei passt nicht zur aktuellen Version"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "Nur ET_DYN und ET_EXEC können geladen werden"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "Die »phentsize« der ELF Datei hat nicht die erwartete Größe"
@@ -653,19 +653,19 @@ msgstr "Kann den Speicherschutz nicht ändern"
msgid "cannot map zero-fill pages"
msgstr "Kann die Zero-Fill Seiten nicht mappen"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "Fehler beim Nachschlagen des Symbols"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "Kann die globale Sichbarkeit nicht erweitern"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "Überlauf des TLS Gernerationen-Zählers. Bitte einen (englischen) Fehlerbericht mit »glibcbug« senden."
-#: elf/dl-open.c:716
+#: elf/dl-open.c:717
msgid "cannot allocate address lookup data"
msgstr "Nicht genügend Hauptspeicher für Adress-Umsetztabelle verfügbar"
@@ -707,7 +707,7 @@ msgstr "Kann den Speicherschutz nach Relozierung nicht ändern"
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "»RTLD_NEXT« wird in Code verwendet, der nicht dynamisch geladen ist"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "Kann keine TLS Datenstrukturen erzeugen"
@@ -719,220 +719,220 @@ msgstr "Fehler beim Nachschlagen der Version"
msgid "cannot allocate version reference table"
msgstr "Nicht genügend Hauptspeicher für die Versions-Referenz-Tabelle verfügbar"
-#: elf/dl-version.c:380
+#: elf/dl-version.c:387
msgid "DT_RELR without GLIBC_ABI_DT_RELR dependency"
msgstr "DT_RELR ohne GLIBC_ABI_DT_RELR Abhängigkeit"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "Cache ausgeben"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "Mehr Nachrichten ausgeben"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "Keinen Cache anlegen"
-#: elf/ldconfig.c:128
+#: elf/ldconfig.c:127
msgid "Don't update symbolic links"
msgstr "Symbolische Links nicht aktualisieren"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "Wechsel in das Verzeichnis ROOT und verwende dieses als Wurzelverzeichnis"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "ROOT"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "CACHE"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "CACHE als Cache-Datei verwenden"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "CONF"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "CONF als Konfigurationsdatei verwenden"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "Verarbeite nur die als Parameter angegebenen Verzeichnisse. Keinen Cache erstellen."
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "Einzelne Bibliotheken manuell einbinden."
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "FORMAT"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "Format to use: new (default), old, or compat"
msgstr "Zu verwendendes Format: »new« (Vorgabe), »old« oder »compat«"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "Ignoriere die zusätzliche Cache-Datei"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "Konfigurieren der Runtime-Bindungen des dynamischen Linkers"
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "Pfad »%s« mehrfach angegeben"
-#: elf/ldconfig.c:278
+#: elf/ldconfig.c:277
#, c-format
msgid "(from %s:%d and %s:%d)\n"
msgstr "(in %s:%d und %s:%d)\n"
-#: elf/ldconfig.c:310 elf/ldconfig.c:351
+#: elf/ldconfig.c:309 elf/ldconfig.c:350
#, c-format
msgid "Could not form glibc-hwcaps path"
msgstr "Kann den Pfad für glibc-hwcaps nicht generieren"
-#: elf/ldconfig.c:324
+#: elf/ldconfig.c:323
#, c-format
msgid "Listing directory %s"
msgstr "Anzeige des Verzeichnisses »%s«"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "Kann »stat()« für »%s« nicht aufrufen"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "Kann »stat« für »%s« nicht aufrufen\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s ist kein symbolischer Link\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "Kann den Verzeichniseintrag »%s« nicht löschen (unlink)"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "Es ist nicht möglich, von »%s« nach »%s« zu linken"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (geändert)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (ÜBERSPRUNGEN)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "%s ist nicht zu finden"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "Es ist nicht möglich, den Status (lstat()) der Datei %s zu lesen"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "Datei %s übergangen, da sie keine reguläre Datei ist."
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "Keinen Link angelegt, da »soname« für %s nicht zu finden ist"
-#: elf/ldconfig.c:701
+#: elf/ldconfig.c:700
#, c-format
msgid " (from %s:%d)\n"
msgstr " (in %s:%d)\n"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "Kann das Verzeichnis »%s« nicht öffnen"
-#: elf/ldconfig.c:743 elf/ldconfig.c:748
+#: elf/ldconfig.c:742 elf/ldconfig.c:747
#, c-format
msgid "Could not form library path"
msgstr "Es ist nicht möglich, den Bibliothekspfad zu bilden"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "Die Eingabedatei %s wurde nicht gefunden.\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "Es ist nicht möglich, den Status (stat()) der Datei %s zu lesen"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "libc6-Bibliothek %s im falschen Verzeichnis"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "Die Bibliotheken »%s« und »%s« im Verzeichnis %s haben den gleichen soname, aber verschiedene Typen."
-#: elf/ldconfig.c:1051
+#: elf/ldconfig.c:1050
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr "Warnung: ignoriere Datei, die nicht geöffnet werden kann: %s"
-#: elf/ldconfig.c:1099
+#: elf/ldconfig.c:1098
#, c-format
msgid "%s:%u: hwcap directive ignored"
msgstr "%s:%u: hwcap Anweisung ignoriert"
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "Für »-r« muß der absolute Name der Konfigurationsdatei angegeben werden"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "Hauptspeicher erschöpft"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: Kann das Verzeichnis »%s« nicht lesen"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "Der relative Pfad »%s« wird zum Erstellen des Caches verwendet"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "Wechsel in das Verzeichnis / nicht möglich"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "Kann das Cache-Verzeichnis »%s« nicht öffnen\n"
@@ -1291,84 +1291,84 @@ msgstr "SHOBJ [PROFDATA]"
msgid "failed to load shared object `%s'"
msgstr "Fehler beim Laden des Shared Objects »%s«"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "Interner Deskriptor kann nicht erzeugt werden"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "Erneutes Öffnen des Shared Objects »%s« ist misslungen"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "Das Lesen der Section-Headers ist fehlgeschlagen"
# XXX schlecht
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "Das Lesen der Section-Header String-Tabelle ist fehlgeschlagen"
# XXX
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** Kann den Debug-Info Dateiname nicht lesen: %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "Kann den Dateiname nicht bestimmen"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "Das Lesen des ELF-Headers ist fehlgeschlagen"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** Die Datei »%s« ist gestrippt: keine detaillierte Analyse möglich\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "Fehler beim Laden der Symboldaten"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "Kann die Profiling-Daten nicht laden"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "beim Holen des Dateistatus der Datei mit den Profiling-Daten"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "Die Datei »%s« mit Profiling-Daten passt nicht zum Shared Object »%s«"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "Fehler beim »mmap« der Datei mit den Profiling-Daten"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "Fehler beim Schließen der Datei mit den Profiling-Daten"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "»%s« ist keine gültige Profiledaten-Datei für »%s«"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "Nicht genügend Hauptspeicher für Symboldaten verfügbar"
@@ -2883,7 +2883,7 @@ msgid "cannot resize archive file"
msgstr "Kann die Archiv-Datei nicht in der Größe anpassen"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "Kann den Archiv-Haeder nicht einlesen"
@@ -2942,64 +2942,70 @@ msgstr "Kann den Status des Lokale-Archiv »%s« nicht bestimmen"
msgid "cannot lock locale archive \"%s\""
msgstr "Kann das Lokale-Archiv »%s« nicht sperren"
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:642 locale/programs/locarchive.c:656
+#: locale/programs/locarchive.c:664 locale/programs/locarchive.c:685
+#, c-format
+msgid "cannot unlock archive header"
+msgstr "Kann den Archiv-Haeder nicht entsperren"
+
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "Es ist nicht möglich, den Archiv-Kopf zu lesen"
-#: locale/programs/locarchive.c:661
+#: locale/programs/locarchive.c:665
#, c-format
msgid "bad magic value in archive header"
msgstr "Ungültiger magischer Wert im Archiv-Header"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "Die Lokale »%s« existiert bereits"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "Zum Lokale-Archiv kann nicht hinzugefügt werden"
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "Die Datei mit Lokale-Aliasen »%s« wurde nicht gefunden"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "Füge »%s« hinzu\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "stat von »%s« fehlgeschlagen: %s: ignoriert"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "»%s« ist kein Verzeichnis; ignoriert"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "Kann das Verzeichnis »%s« nicht öffnen: %s: ignoriert"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "Unvollständige Lokale-Dateien im Verzeichnis »%s«"
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "Kann nicht alle Dateien im Verzeichnis »%s« lesen: ignoriert"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "Die Lokale »%s« ist nicht im Archiv"
diff --git a/po/el.po b/po/el.po
index d6735f3..9737a47 100644
--- a/po/el.po
+++ b/po/el.po
@@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: libc 2.2.3\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
"PO-Revision-Date: 2001-05-21 19:20:31+0000\n"
"Last-Translator: Nikos Mavroyanopoulos <nmav@hellug.gr>\n"
"Language-Team: Greek <nls@tux.hellug.gr>\n"
@@ -92,7 +92,7 @@ msgstr "(ΣΦΑΛΜΑ ΠΡΟΓΡΑΜΜΑΤΟΣ) Δεν είναι γνωστή Î
msgid "%s: Too many arguments\n"
msgstr "%s: ΠάÏα πολλά οÏίσματα\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(ΣΦΑΛΜΑ ΠΡΟΓΡΑΜΜΑΤΟΣ) Η επιλογή θα έπÏεπε να είχε αναγνωÏιστεί!;"
@@ -127,7 +127,7 @@ msgstr ""
"[ΑΡΧΕΙΟ-ΕΞΟΔΟΥ [ΑΡΧΕΙΟ-ΕΙΣΟΔΟΥ]...]"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -144,7 +144,7 @@ msgstr ""
"ΚΑΠΟΙΟ ΣΥΓΚΕΚΡΙΜΕÎΟ ΣΚΟΠΟ.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -219,16 +219,16 @@ msgstr "μη έγκυÏη κατάσταση για την dlopen()"
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "Το RTLD_NEXT που χÏησιμοποιείται στον κώδικα δεν φοÏτώθηκε δυναμικά"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "το %s δεν είναι συμβολικός σÏνδεσμος\n"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (άλλαξε)\n"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
@@ -276,57 +276,57 @@ msgstr "SHOBJ [PROFDATA]"
msgid "failed to load shared object `%s'"
msgstr "αποτυχία φόÏτωσης διαμοιÏαζομένου αντικειμένου `%s'"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "αδυναμία δημιουÏγίας εσωτεÏÎ¹ÎºÎ¿Ï Ï€ÎµÏιγÏαφέα"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "Αποτυχία ανοίγματος ξανά του διαμοιÏαζομένου αντικειμένου `%s'"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** Το αÏχείο `%s' είναι απογυμνωμένο: δεν είναι δυνατή λεπτομεÏής ανάλυση\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "αποτυχία φόÏτωσης δεδομένων συμβόλων"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "αδÏνατη η φόÏτωση δεδομένων Ï€Ïοφίλ"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "κατά την Ï€Ïοσπέλαση (stat) του αÏχείου δεδομένων Ï€Ïοφίλ"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "το αÏχείο δεδομένων Ï€Ïοφίλ `%s' δεν ταιÏιάζει με το διαμοιÏαζόμενο αντικείμενο `%s'"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "αποτυχία στη λειτουÏγία mmap για το αÏχείο δεδομένων Ï€Ïοφίλ"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "σφάλμα κατά το κλείσιμο του αÏχείου δεδομένων Ï€Ïοφίλ"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "Το `%s' δεν είναι το σωστό αÏχείο δεδομένων Ï€Ïοφίλ για το `%s'"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "αδυναμία δέσμευσης δεδομένων συμβόλων"
diff --git a/po/eo.po b/po/eo.po
index 474e620..8327607 100644
--- a/po/eo.po
+++ b/po/eo.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: libc 2.31.9000\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
"PO-Revision-Date: 2020-12-30 12:07+0100\n"
"Last-Translator: Benno Schulenberg <vertaling@coevern.nl>\n"
"Language-Team: Esperanto <translation-team-eo@lists.sourceforge.net>\n"
@@ -102,7 +102,7 @@ msgstr "(**Programmiso**) Ne konas sian version!?"
msgid "%s: Too many arguments\n"
msgstr "%s: tro da argumentoj\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(**Programmiso**) Opcio devus esti rekonata!?"
@@ -134,7 +134,7 @@ msgstr ""
"-o ELIGDOSIERO [ENIGDOSIERO...]\n"
"[ELIGDOSIERO [ENIGDOSIERO...]]"
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -149,7 +149,7 @@ msgstr ""
" %s.\n"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -165,7 +165,7 @@ msgstr ""
"DoniÄas NENIA GARANTIO; eĉ ne por KOMERCKVALITO aÅ­ ADEKVATECO POR IU CELO.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -330,7 +330,7 @@ msgstr "nevalida moduso"
msgid "invalid mode parameter"
msgstr "nevalida modusa argumento"
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Ne eblas malfermi kaÅmemoran dosieron %s\n"
@@ -379,15 +379,15 @@ msgstr "eraro dum Åargo de komunaj bibliotekoj"
msgid "DYNAMIC LINKER BUG!!!"
msgstr "**PROGRAMMISO** en dinamika bindilo!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "ne eblas krei ampleksliston"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "komuna objekto ne estas malferma"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "ne eblas krei mandatliston"
@@ -399,27 +399,27 @@ msgstr "mankas sufiĉa memoro por nomrikordo"
msgid "cannot create cache for search path"
msgstr "ne eblas krei kaÅmemoron por serĉpado"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "malsukcesis eltrovi statinformon pri komuna objekto"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "ne eblas legi dosierdatumojn"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "ne eblas fermi dosierpriaĵon"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "dosiero tro mallongas"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "nevalida ELF-ĉapo"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "**interna programmiso**"
@@ -439,179 +439,179 @@ msgstr "ne eblas malfermi komunan objektdosieron"
msgid "invalid mode for dlopen()"
msgstr "nevalida moduso por 'dlopen()'"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "eligi kaÅmemoron"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "eligi detalajn mesaÄojn"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "ne krei kaÅmemoron"
-#: elf/ldconfig.c:128
+#: elf/ldconfig.c:127
msgid "Don't update symbolic links"
msgstr "ne Äisdatigi simbolajn ligojn"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "ÅanÄi al RADIKO kaj uzi Äin kiel radikan dosierujon"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "RADIKO"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "KAÅœMEMORO"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "uzi KAÅœMEMOROn kiel kaÅmemoran dosieron"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "AGORDDOSIERO"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "uzi AGORDDOSIEROn kiel agordan dosieron"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "nur trakti dosierujojn kiuj indikatas en komandlinio; ne krei kaÅmemoron"
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "mane ligi individuajn bibliotekojn"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "ARANÄœO"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "Format to use: new (default), old, or compat"
msgstr "uzenda aranÄo: 'new' (nova, defaÅ­lte), 'old' (malnova), aÅ­ 'compat' (kongrua)"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "ignori neĉefan kaÅmemoran dosieron"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr ""
" \n"
"Agordas la dinamika bindilo."
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "pado '%s' indikatas plurfoje"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "malsukcesis eltrovi statinformon pri %s"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "malsukcesis eltrovi statinformon pri %s\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s ne estas simbola ligo\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "ne eblas malligi %s"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "ne eblas ligi %s al %s"
# SIGWINCH 28,28,20 Ign Window resize signal (4.3 BSD, Sun)
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (ÅanÄiÄis)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (TRANSSALTITA)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "malsukcesis trovi %s"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "malsukcesis eltrovi statinformon pri %s"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "Dosiero %s ignoriÄis ĉar Äi ne estas normala dosiero."
-#: elf/ldconfig.c:701
+#: elf/ldconfig.c:700
#, c-format
msgid " (from %s:%d)\n"
msgstr " (elde %s:%d)\n"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "ne eblas malfermi dosierujon %s"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "Eniga dosiero %s ne troviÄas.\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "malsukcesis eltrovi statinformon pri %s"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "libc6-biblioteko %s estas en malÄusta dosierujo"
-#: elf/ldconfig.c:1051
+#: elf/ldconfig.c:1050
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr "Averto: ignoriÄas agorda dosiero kiu ne malfermeblas: %s"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "mankas sufiĉa memoro"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: ne eblas legi dosierujon %s"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "uziÄas relativa pado '%s' por krei kaÅmemoron"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "malsukcesis ÅanÄi aktualan dosierujon al «/»"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "malsukcesis malfermi kaÅmemoran dosierujon %s\n"
@@ -1187,22 +1187,22 @@ msgstr "ne eblas krei eligan padon '%s': %s"
msgid "cannot create temporary file: %s"
msgstr "malsukcesis krei provizoran dosieron %s"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "AldoniÄas %s\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "malsukcesis eltrovi statinformon pri '%s': %s -- ignoriÄas"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "'%s' ne estas dosierujo -- ignoriÄas"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "ne eblas malfermi dosierujon '%s': %s -- ignoriÄas"
diff --git a/po/es.po b/po/es.po
index 3b633e9..f2848df 100644
--- a/po/es.po
+++ b/po/es.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: GNU libc 2.19.90\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
"PO-Revision-Date: 2014-08-25 16:18-0700\n"
"Last-Translator: Santiago Vila Doncel <sanvila@unex.es>\n"
"Language-Team: Spanish <es@tp.org.es>\n"
@@ -100,7 +100,7 @@ msgstr "(ERROR DEL PROGRAMA) ¿¡No se conoce ninguna versión!?"
msgid "%s: Too many arguments\n"
msgstr "%s: Demasiados argumentos\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(ERROR DEL PROGRAMA) ¿¡No se debería haber reconocido la opción!?"
@@ -152,7 +152,7 @@ msgstr ""
"-o FICHERO-SALIDA [FICHERO-ENTRADA]...\n"
"[FICHERO-SALIDA [FICHERO-ENTRADA]...]"
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -167,7 +167,7 @@ msgstr ""
"%s.\n"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -184,7 +184,7 @@ msgstr ""
"FIN DETERMINADO.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -386,7 +386,7 @@ msgstr "modo inválido"
msgid "invalid mode parameter"
msgstr "parámetro de modo inválido"
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "No se puede abrir el fichero de caché %s\n"
@@ -436,11 +436,11 @@ msgstr "error al cargar las bibliotecas compartidas"
msgid "DYNAMIC LINKER BUG!!!"
msgstr "¡¡¡HAY UN ERROR EN EL ENLAZADOR DINÃMICO!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "no se puede crear la lista de ámbito"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "el objeto compartido no está abierto"
@@ -469,7 +469,7 @@ msgstr "no se pudo asignar espacio para la lista de dependencias"
msgid "cannot allocate symbol search list"
msgstr "no se puede asignar espacio para la lista de búsqueda de los símbolos"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "no se puede crear la lista de capacidades"
@@ -491,91 +491,91 @@ msgstr "no se puede crear una copia RUNPATH/RPATH"
msgid "cannot create search path array"
msgstr "no se puede crear la matriz de la ruta de búsqueda"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "no se puede efectuar `stat' sobre el objeto compartido"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "no se puede crear el descriptor del objeto compartido"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "no se pueden leer los datos del fichero"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "el fichero objeto no tiene segmentos cargables"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "no se puede cargar el ejecutable dinámicamente"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "el fichero objeto no tiene sección dinámica"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "no se puede efectuar dlopen() sobre el objeto compartido"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "no se puede asignar memoria para la cabecera del programa"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "no se puede activar la pila ejecutable tal y como el objeto compartido necesita"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "no se puede cerrar el descriptor de fichero"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "fichero demasiado corto"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "cabecera ELF inválida"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "La codificación de los datos del fichero ELF no es `big-endian'"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "La codificación de los datos del fichero ELF no es `little-endian'"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "La identificación de versión del fichero ELF no encaja con la actual"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "ABI del OS del fichero ELF inválida"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "Versión de ABI del fichero ELF inválida"
-#: elf/dl-load.c:1669
+#: elf/dl-load.c:1670
msgid "nonzero padding in e_ident"
msgstr "relleno con no ceros en e_ident"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "error interno"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "La versión del fichero ELF no coincide con la actual"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "solamente pueden cargarse ET_DYN y ET_EXEC"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "El `phentsize' del fichero ELF no es el tamaño esperado"
@@ -603,15 +603,15 @@ msgstr "no se pueden cambiar las protecciones de memoria"
msgid "cannot map zero-fill pages"
msgstr "no se pueden asignar páginas de tipo `zero-fill'"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "error de búsqueda de símbolo"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "no se puede extender el ámbito global"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "¡El contador de generaciones TLS ha vuelto a cero! Por favor envíe un informe."
@@ -653,7 +653,7 @@ msgstr "no se pueden aplicar protecciones de memoria adicionales después de rel
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "Se ha usado RTLD_NEXT en una parte del código que no se cargó dinámicamente"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "no se pueden crear las estructuras de datos TLS"
@@ -665,182 +665,182 @@ msgstr "error de búsqueda de versión"
msgid "cannot allocate version reference table"
msgstr "no se puede asignar espacio para la tabla de versiones de referencia"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "Muestra la caché"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "Genera mensajes explicativos"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "No crea caché"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "Cambia a RAÃZ y lo utiliza como directorio raíz"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "RAÃZ"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "CACHÉ"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "Utiliza CACHE como fichero de caché"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "CONF"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "Utiliza CONF como fichero de configuración"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr ""
"Procesa únicamente los directorios especificados en la línea de órdenes.\n"
"No crea la caché."
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "Enlace bibliotecas individuales manualmente."
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "FORMATO"
# Antes decía: .rhosts no es un fichero regular
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "Descarta el fichero de caché auxiliar"
# FIXME: Why So Many Uppercase Letters? sv
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "Configura las asociaciones de tiempo de ejecución del enlazador dinámico"
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "Se ha dado la ruta `%s' más de una vez"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "No se puede efectuar `stat' sobre %s"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "No se puede efectuar `stat' sobre %s\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s no es un enlace simbólico\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "No se puede efectuar `unlink' sobre %s"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "No se puede crear un enlace de %s a %s"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (cambiado)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (SALTADO)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "No se encuentra %s"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "No se puede efectuar `lstat' sobre %s"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "Descartado el fichero %s dado que no es un fichero regular."
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "No se creó el enlace ya que no se encontró el soname para %s"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "No se puede abrir el directorio %s"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "No se encontró el fichero de entrada %s.\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "No se puede efectuar `stat' sobre %s"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "biblioteca libc6 %s en un directorio equivocado"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "las bibliotecas %s y %s en el directorio %s tienen el mismo soname pero distinto tipo."
-#: elf/ldconfig.c:1051
+#: elf/ldconfig.c:1050
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr "Atención: no se tendrá en cuenta el fichero de configuración que no se puede abrir: %s"
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "se necesita un nombre de fichero absoluto para el fichero de configuración cuando se utiliza -r"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "memoria agotada"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: no se puede leer el directorio %s"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "se usa el camino relativo `%s' para construir el caché"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "No se puede cambiar al directorio /"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "No se puede leer el directorio de ficheros de caché %s\n"
@@ -1201,87 +1201,87 @@ msgstr "SHOBJ [DATOSPROF]"
msgid "failed to load shared object `%s'"
msgstr "fallo al cargar el objeto compartido `%s'"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "no se puede crear un descriptor interno"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "La reapertura del objeto compartido `%s' falló"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "falló la lectura de las cabeceras de sección"
# Estupendo, entre section, header, string y table hay 4! posibilidades...
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "falló la lectura de la tabla de cadenas de cabeceras de sección"
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** No se puede leer el nombre del fichero de información de depuración: %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "no se puede determinar el nombre del fichero"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "falló la lectura de la cabecera ELF"
# Duda: stripped.
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** El fichero `%s' está `stripped': no es posible un análisis detallado\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "fallo al cargar los datos del símbolo"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "no se pueden cargar los datos de `profiling'"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "al ejecutar `stat' sobre el fichero de datos de `profiling'"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr ""
"el fichero de datos para `profiling' %s no se corresponde con el\n"
"objeto compartido `%s'"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "no se pudo hacer mmap con el fichero de datos de `profile'"
# Se admiten sugerencias para el "profiling" sv.
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "error al cerrar el fichero de datos de `profiling'"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "`%s' no es un fichero de datos para `profile' correcto para `%s'"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "no se puede asignar espacio para los datos del símbolo"
@@ -2677,7 +2677,7 @@ msgid "cannot resize archive file"
msgstr "no se puede cambiar el tamaño del archivo"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "no se puede leer la cabecera del archivo"
@@ -2736,59 +2736,59 @@ msgstr "no se puede efectuar `stat' sobre el archivo de locales \"%s\""
msgid "cannot lock locale archive \"%s\""
msgstr "no se puede bloquear el archivo de locales \"%s\""
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "no se puede leer la cabecera del archivo"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "el local `%s' ya existe"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "no se puede añadir al archivo de locales"
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "no se encontró el fichero de alias de locales `%s'"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "Añadiendo %s\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "falló la llamada a `stat' sobre \"%s\": %s: descartado"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "\"%s\" no es un directorio; descartado"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "no se puede abrir el directorio \"%s\": %s: descartado"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "conjunto incompleto de ficheros de locales en \"%s\""
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "no se pueden leer todos los ficheros de \"%s\": descartado"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "el local \"%s\" no está en el archivo"
diff --git a/po/fi.po b/po/fi.po
index 6986ddc..c01fbb6 100644
--- a/po/fi.po
+++ b/po/fi.po
@@ -25,7 +25,7 @@
msgid ""
msgstr ""
"Project-Id-Version: libc 2.30.9000\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
"PO-Revision-Date: 2020-01-10 23:26+0200\n"
"Last-Translator: Lauri Nurmi <lanurmi@iki.fi>\n"
"Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n"
@@ -117,7 +117,7 @@ msgstr "(OHJELMAVIRHE) Tuntematon versio!?"
msgid "%s: Too many arguments\n"
msgstr "%s: Liian monta argumenttia\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(OHJELMAVIRHE) Valitsinta ei tunnistettu!?"
@@ -149,7 +149,7 @@ msgstr ""
"-o TULOSTIEDOSTO [SYÖTETIEDOSTO]...\n"
"[TULOSTIEDOSTO [SYÖTETIEDOSTO]...]"
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -164,7 +164,7 @@ msgstr ""
"%s.\n"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -180,7 +180,7 @@ msgstr ""
"ole, ei edes KAUPALLISESTI HYVÄKSYTTÄVÄSTÄ LAADUSTA tai SOPIVUUDESTA TIETTYYN TARKOITUKSEEN.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -367,7 +367,7 @@ msgstr "virheellinen tila"
msgid "invalid mode parameter"
msgstr "virheellinen tilaparametri"
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Välimuistitiedostoa %s ei voi avata\n"
@@ -416,11 +416,11 @@ msgstr "virhe ladattaessa jaettuja kirjastoja"
msgid "DYNAMIC LINKER BUG!!!"
msgstr "DYNAAMISEN LINKITTIMEN OHJELMISTOVIKA!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "aluelistaa ei voi luoda"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "jaettu objekti ei ole avoin"
@@ -449,7 +449,7 @@ msgstr "riippuvuuslistalle ei voi varata muistia"
msgid "cannot allocate symbol search list"
msgstr "symbolihakulistalle ei voi varata muistia"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "kykylistaa ei voi luoda"
@@ -469,79 +469,79 @@ msgstr "RUNPATH/RPATH-kopiota ei voi luoda"
msgid "cannot create search path array"
msgstr "hakupolkutaulukkoa ei voi luoda"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "jaetun objektin tilaa ei voi lukea"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "jaettua objektikahvaa ei voi luoda"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "tiedoston dataa ei voi lukea"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "suoritettavaa tiedostoa ei voi ladata dynaamisesti"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "objektitiedostossa ei ole dynaamista osaa"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "jaettua objektia ei voi avata funktiolla dlopen()"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "ohjelman otsakkeelle ei voi varata muistia"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "tiedostokahvaa ei voi sulkea"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "tiedosto on liian lyhyt"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "virheellinen ELF-otsikko"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "ELF-tiedoston tavujärjestys ei ole â€big-endianâ€"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "ELF-tiedoston tavujärjestys ei ole â€little-endianâ€"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "ELF-tiedoston versiotunnus ei vastaa nykyistä"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "ELF-tiedoston OS ABI on virheellinen"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "ELF-tiedoston ABI-versio virheellinen"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "sisäinen virhe"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "ELF-tiedoston versio ei vastaa nykyistä"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "vain ET_DYN ja ET_EXEC voidaan ladata"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "ELF-tiedoston phent-koko ei ole odotetun kokoinen"
@@ -569,15 +569,15 @@ msgstr "muistin suojausta ei voi muuttaa"
msgid "cannot map zero-fill pages"
msgstr "nollatäytteisiä sivuja ei voi kartoittaa"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "virhe symbolien haussa"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "globaalia aluetta ei voi laajentaa"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "TLS-luontilaskurin ylivuoto! Lähetä tästä raportti."
@@ -597,7 +597,7 @@ msgstr "segmentin suojausta ei voi palauttaa uudelleensijoituksen jälkeen"
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "RTLD_NEXT:iä käytetty koodissa, jota ei ole ladattu dynaamisesti"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "TLS-tietorakenteita ei voi luoda"
@@ -609,169 +609,169 @@ msgstr "virhe version selvittämisessä"
msgid "cannot allocate version reference table"
msgstr "versioviitetaulukolle ei voi varata muistia"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "Näytä välimuisti"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "Luo monisanaiset viestit"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "Älä luo välimuistia"
-#: elf/ldconfig.c:128
+#: elf/ldconfig.c:127
msgid "Don't update symbolic links"
msgstr "Älä päivitä symbolisia linkkejä"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "Siirry ja käytä ROOTia juurihakemistona"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "JUURI"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "Käytä CACHEa välimuistitiedostona"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "Käytä CONFia asetustiedostona"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "Käsittele vain komentorivillä annetut hakemistot. Älä luo välimuistia."
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "Linkitä yksittäisiä kirjastoja käsin."
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "MUOTO"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "Jätä huomiotta apuvälimuistitiedosto"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "Säädä dynaamisen linkittäjän ajonaikaiset sidonnat."
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "Polku â€%s†on annettu useammin kuin kerran"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "Tiedoston %s tilaa ei voi lukea"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "Tiedoston %s tilaa ei voi lukea\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s ei ole symbolinen linkki\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "Tiedoston %s linkitystä ei voi poistaa"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "Linkitys %s -> %s ei onnistu"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (muutettu)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (OHITETTU)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "%s ei löydy"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "Tiedoston %s tilaa ei voi lukea"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "Tiedostoa %s ei huomioitu, koska se ei ole tavallinen tiedosto."
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "Linkkiä ei luotu, koska tiedostolle %s ei löytynyt so-nimeä"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "Hakemistoa %s ei voi avata"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "Syötetiedostoa %s ei löydy.\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "Tiedoston %s tilaa ei voi lukea"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "libc6-kirjasto %s on väärässä hakemistossa"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "kirjastoilla %s ja %s hakemistossa %s on sama so-nimi, mutta eri tyypit."
-#: elf/ldconfig.c:1051
+#: elf/ldconfig.c:1050
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr "Varoitus: jätetään huomioimatta asetustiedosto, jota ei voi avata: %s"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "muisti lopussa"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: hakemistoa %s ei voi lukea"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "suhteellista polkua â€%s†käytetään välimuistin luomiseen"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "Juurihakemistoon / siirtyminen ei onnistu"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "Välimuistihakemistoa %s ei voi avata\n"
@@ -1029,82 +1029,82 @@ msgstr "JAETTU_OBJEKTI [PROFILOINTIDATA]"
msgid "failed to load shared object `%s'"
msgstr "jaettua objektia â€%s†ei voitu ladata"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "sisäistä kahvaa ei voi ladata"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "Jaetun objektin â€%s†uudelleenavaus epäonnistui"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "osaotsikkojen lukeminen epäonnistui"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "osaotsikkojen taulukon lukeminen epäonnistui"
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** Ei voida lukea debuginfo-tiedostonimeä: %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "tiedostonimeä ei voi määrittää"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "ELF-otsakkeen lukeminen epäonnistui"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** Tiedosto â€%s†on karsittu: tarkka analyysi ei ole mahdollinen\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "symbolitietojen lataus ei onnistunut"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "profilointidataa ei voi ladata"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "luettaessa profilointidatatiedoston tilaa"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "profilointidatatiedosto â€%s†ei vastaa jaettua objektia â€%sâ€"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "profilointidatatiedoston muistikartoitus epäonnistui"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "virhe suljettaessa profilointidatatiedostoa"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "â€%s†ei ole oikea profiilidatatiedosto â€%sâ€:lle"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "symbolidatalle ei voi varata muistia"
@@ -2427,7 +2427,7 @@ msgid "cannot resize archive file"
msgstr "arkistotiedoston kokoa ei voi muuttaa"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "arkiston otsaketta ei voi kartoittaa"
@@ -2481,59 +2481,59 @@ msgstr "maa-asetustoarkiston â€%s†tilaa ei voi lukea"
msgid "cannot lock locale archive \"%s\""
msgstr "maa-asetustoarkistoa â€%s†ei voi lukita"
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "arkiston otsaketta ei voi lukea"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "maa-asetusto â€%s†on jo olemassa"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "ei voi lisätä maa-asetustoarkistoon"
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "maa-asetustojen aliastiedostoa â€%s†ei löydy"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "Listätään %s\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "tiedoston â€%s†tilan lukeminen epäonnistui: %s: ei huomioida"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "â€%s†ei ole hakemisto: ei huomioida"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "hakemistoa â€%s†ei voi avata: %s: ei huomioida"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "epätäydellinen valikoima maa-asetustotiedostoja hakemistossa â€%sâ€"
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "kaikkia tiedostoja hakemistossa â€%s†ei voi lukea: ei huomioida"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "maa-asetusto â€%s†ei ole arkistossa"
diff --git a/po/fr.po b/po/fr.po
index f518f43..754aba6 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -9,7 +9,7 @@
msgid ""
msgstr ""
"Project-Id-Version: libc-2.37.9000\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
"PO-Revision-Date: 2023-11-22 20:08+0100\n"
"Last-Translator: Stéphane Aulery <lkppo@free.fr>\n"
"Language-Team: French <traduc@traduc.org>\n"
@@ -103,7 +103,7 @@ msgstr "(ERREUR DU PROGRAMME) Version inconnue ! ?"
msgid "%s: Too many arguments\n"
msgstr "%s : Trop d'arguments\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(ERREUR DU PROGRAMME) L'option aurait dû être reconnue ! ?"
@@ -135,7 +135,7 @@ msgstr ""
"-o FICHIER_DE_SORTIE [FICHIER_D_ENTRÉE]...\n"
"[FICHIER_DE_SORTIE [FICHIER_D_ENTRÉE]...]"
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -150,7 +150,7 @@ msgstr ""
"%s.\n"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -167,7 +167,7 @@ msgstr ""
"COMMERCIALES que pour RÉPONDRE À UN BESOIN PARTICULIER.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -374,7 +374,7 @@ msgstr "Boutisme incorrect du fichier de cache.\n"
msgid "Cache generated by: "
msgstr "Cache généré par : "
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Ne peut ouvrir le fichier de cache %s\n"
@@ -443,11 +443,11 @@ msgstr "erreur lors du chargement des librairies partagées"
msgid "DYNAMIC LINKER BUG!!!"
msgstr "PROBLÈME DANS LE CHARGEUR DE LIENS DYNAMIQUES!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "ne peut créer une liste panorama"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "objet partagé non ouvert"
@@ -476,11 +476,11 @@ msgstr "ne peut allouer une liste de dépendances"
msgid "cannot allocate symbol search list"
msgstr "ne peut allouer la liste des symboles à rechercher"
-#: elf/dl-hwcaps.c:104
+#: elf/dl-hwcaps.c:103
msgid "cannot create HWCAP priorities"
msgstr "impossible de créer les priorités HWCAP"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "ne peut créer une liste des possibilités"
@@ -500,95 +500,95 @@ msgstr "ne peut créer une copie RUNPATH/RPATH"
msgid "cannot create search path array"
msgstr "ne peut créer un tableau des chemins de recherche"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "ne peut évaluer par stat() l'objet partagé"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "ne peut créer un descripteur d'objet partagé"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "ne peut lire les données du fichier"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "le fichier objet n'a pas de segment chargeable"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "ne peut dynamiquement charger un exécutable"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "le fichier objet n'a pas de section dynamique"
-#: elf/dl-load.c:1289
+#: elf/dl-load.c:1294
msgid "cannot dynamically load position-independent executable"
msgstr "ne peut dynamiquement charger l'exécutable indépendant de la position"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "l'objet partagé ne peut pas être ouvert via dlopen()"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "ne peut allouer de la mémoire pour une en-tête de programme"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "ne peut activer une pile exécutable comme l'objet partagé le requiert"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "ne peut pas fermer le descripteur de fichier"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "fichier trop court"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "en-tête ELF invalide"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "l'encodage des données du fichier ELF n'est pas big-endian"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "l'encodage des données du fichier ELF n'est pas little-endian"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "l'identifiant de version du fichier ELF ne concorde pas avec la version courante"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "Système d'exploitation du fichier ELF ABI invalide"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "Version du fichier ELF ABI invalide"
-#: elf/dl-load.c:1669
+#: elf/dl-load.c:1670
msgid "nonzero padding in e_ident"
msgstr "remplissage sans zéro dans e_ident"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "Erreur interne"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "Version du fichier ELF ne concorde pas avec la version courante"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "Seuls ET_DYN et ET_EXEC peuvent être chargés"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "« Phentize » du fichier ELF ne concorde pas avec la taille prévue"
@@ -616,15 +616,15 @@ msgstr "ne peut modifier les protections de mémoire"
msgid "cannot map zero-fill pages"
msgstr "ne peut adresser des pages remplies de zéros"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "erreur de recherche de symbole"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "ne peut augmenter l'étendue de la plage globale"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "Le compteur de génération TLS a bouclé ! SVP expédier un rapport avec le script 'glibcbug'."
@@ -665,7 +665,7 @@ msgstr "ne peut appliquer les protections additionnelle de mémoire après la rÃ
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "RTLD_NEXT est utilisé dans du code qui n'est pas chargé dynamiquement"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "ne peut créer les structures de données TLS"
@@ -677,211 +677,211 @@ msgstr "erreur de recherche de version"
msgid "cannot allocate version reference table"
msgstr "ne peut allouer la table de référence des versions"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "Imprimer le cache"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "Afficher des messages en mode verbeux"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "Ne pas construire le cache"
-#: elf/ldconfig.c:128
+#: elf/ldconfig.c:127
msgid "Don't update symbolic links"
msgstr "Ne pas mettre à jour de liens symboliques"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "Positionner dans, et utiliser le dossier racine ROOT"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "ROOT"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "CACHE"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "Utiliser CACHE comme ficher de cache"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "CONF"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "Utiliser CONF comme fichier de configuration"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "Traiter uniquement les répertoires spécifiés sur la ligne de commande. Ne pas construire de cache."
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "Lier manuellement les librairies individuelles ."
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "FORMAT"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "Format to use: new (default), old, or compat"
msgstr "Format à utiliser : nouveau (par défaut), ancien ou compatible"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "Ignore le fichier cache auxiliaire"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "Configuration dynamique des éditions de liens lors de l'exécution."
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "Chemin « %s » donné plus d'une fois"
-#: elf/ldconfig.c:278
+#: elf/ldconfig.c:277
#, c-format
msgid "(from %s:%d and %s:%d)\n"
msgstr "(de %s:%d et %s:%d)\n"
-#: elf/ldconfig.c:310 elf/ldconfig.c:351
+#: elf/ldconfig.c:309 elf/ldconfig.c:350
#, c-format
msgid "Could not form glibc-hwcaps path"
msgstr "Impossible de construire le chemin glibc-hwcaps"
-#: elf/ldconfig.c:324
+#: elf/ldconfig.c:323
#, c-format
msgid "Listing directory %s"
msgstr "Listage du répertoire %s"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "Ne peut évaluer par stat %s"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "Ne peut évaluer par stat %s\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s n'est pas un lien symbolique\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "Ne peut enlever le lien (unlink) %s"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "Ne peut établir un lien entre %s et %s"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (a été modifié)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (ESCAMOTÉ)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "Ne peut repérer %s"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "Ne peut évaluer par lstat %s"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "A ignoré le fichier %s parce que ce n'est pas un fichier régulier."
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "Aucun lien créé étant donné que n'a pas été repéré %s"
-#: elf/ldconfig.c:701
+#: elf/ldconfig.c:700
#, c-format
msgid " (from %s:%d)\n"
msgstr " (de %s:%d)\n"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "Ne peut ouvrir le dossier %s"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "Fichier d'entrée %s non repéré\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "Ne peut évaluer par stat %s"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "librairie libc6 %s est dans le mauvais dossier"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "Les librairies %s et %s du dossier %s ont le même nom mais sont de types différents."
-#: elf/ldconfig.c:1051
+#: elf/ldconfig.c:1050
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr "Attention : ignore tout fichier de configuration qui ne peut s'ouvrir : %s"
-#: elf/ldconfig.c:1099
+#: elf/ldconfig.c:1098
#, c-format
msgid "%s:%u: hwcap directive ignored"
msgstr "%s:%u: directive hwcap ignorée"
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "nécessite un nom de fichier absolu pour le fichier de configuration quand on utilise -r"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "mémoire épuisée"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u : ne peut lire le dossier %s"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "chemin relatif `%s' utilisé pour construire le cache"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "Ne peut se positionner (chdir) dans /"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "Ne peut ouvrir le dossier des fichiers de cache %s\n"
@@ -1235,82 +1235,82 @@ msgstr "SHOBJ [PROFDATA]"
msgid "failed to load shared object `%s'"
msgstr "échec de chargement de l'objet partagé « %s »"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "ne peut créer un descripteur interne"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "Échec de réouverture de l'objet partagé « %s »"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "Échec de la lecture d'en-têtes de section"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "Échec de lecture de la table des chaînes d'en-têtes de section"
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** Ne peut lire le nom de fichier de debuginfo : %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "Ne peut déterminer le nom de fichier"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "Échec de lecture de l'en-tête ELF"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** Le fichier « %s » a été élagué : aucune analyse détaillée possible\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "échec du chargement de données de symbole"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "ne peut charger les données de profilage"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "lors de l'évaluation par stat() du fichier de données de profilage"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "Le fichier de données de profilage « %s » ne concorde pas avec l'objet partagé « %s »"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "Échec de la procédure mmap sur le fichier de données de profilage"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "erreur lors de la fermeture du fichier de données de profilage"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "« %s » est un fichier de profilage incorrect pour « %s »"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "ne peut allouer les données des symboles"
@@ -2750,7 +2750,7 @@ msgid "cannot resize archive file"
msgstr "ne peut modifier la taille du fichier d'archive"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "ne peut mapper l'en-tête de l'archive"
@@ -2809,59 +2809,59 @@ msgstr "ne peut évaluer par `stat' l'archive des particularisations « %s »"
msgid "cannot lock locale archive \"%s\""
msgstr "ne peut verrouiller l'archive des particularisations « %s »"
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "ne peut lire l'en-tête de l'archive"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "particularisation « %s » existe déjà"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "ne peut l'ajouter à l'archive des particularisations"
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "alias du fichier des particularisations « %s » non trouvé"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "Ajout de %s\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "échec d'évaluation par stat() de « %s » : %s : ignoré"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "« %s » n'est pas un dossier ; ignoré"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "ne peut ouvrir le dossier « %s » : %s : ignoré"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "jeu incomplet de fichiers de particularisation dans « %s »"
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "ne peut lire tous les fichiers dans « %s » : ignoré"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "particularisation « %s » n'est pas dans l'archive"
diff --git a/po/gl.po b/po/gl.po
index 257c410..b1044af 100644
--- a/po/gl.po
+++ b/po/gl.po
@@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: libc 2.3.2\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
"PO-Revision-Date: 2003-03-03 20:13+0100\n"
"Last-Translator: Jacobo Tarrio <jtarrio@trasno.net>\n"
"Language-Team: Galician <gpul-traduccion@ceu.fi.udc.es>\n"
@@ -91,7 +91,7 @@ msgstr "(ERRO DE PROGRAMA) ¿¡Non se coñece a versión!?"
msgid "%s: Too many arguments\n"
msgstr "%s: Demasiados parámetros\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(ERRO DE PROGRAMA) ¿¡Deberíase coñece-la opción!?"
@@ -135,7 +135,7 @@ msgstr ""
"[FICHEIRO-SAÃDA [FICHEIRO-ENTRADA]...]"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -151,7 +151,7 @@ msgstr ""
"garantía; nin sequera de COMERCIABILIDADE ou APTITUDE PARA UN FIN DETERMINADO.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -271,7 +271,7 @@ msgstr "non se pode abri-lo ficheiro de entrada"
msgid "invalid pointer size"
msgstr "tamaño de punteiro non válido"
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Non se puido abri-lo ficheiro de caché %s\n"
@@ -320,11 +320,11 @@ msgstr "erro ao carga-las bibliotecas compartidas"
msgid "DYNAMIC LINKER BUG!!!"
msgstr "¡¡¡ERRO NO LIGADOR DINÃMICO!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "non se pode crea-la lista de alcance"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "o obxecto compartido non está aberto"
@@ -349,7 +349,7 @@ msgstr "non se pode localiza-la lista de dependencias"
msgid "cannot allocate symbol search list"
msgstr "non se pode localiza-la lista de busca de símbolos"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "non se pode crea-la lista de capacidades"
@@ -369,75 +369,75 @@ msgstr "non se pode crear unha copia de RUNPATH/RPATH"
msgid "cannot create search path array"
msgstr "non se pode crea-lo vector de rutas de busca"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "non se puido facer stat sobre o obxecto compartido"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "non se pode crear un descriptor de obxecto compartido"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "non se pode le-los datos do ficheiro"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "non se pode cargar dinamicamente o executable"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "o ficheiro obxecto non ten unha sección dinámica"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "non se pode facer dlopen() sobre o obxecto compartido"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "Non se pode reservar memoria para a cabeceira do programa"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "ficheiro pequeno de máis"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "cabeceira ELF non válida"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "A codificación dos datos do ficheiro ELF non é \"big-endian\""
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "A codificación dos datos do ficheiro ELF non é \"little-endian\""
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "O identificador da versión do ficheiro ELF non coincide co actual"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "ABI do SO do ficheiro ELF non válida"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "Versión do ABI do ficheiro ELF non válida"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "erro interno"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "A versión do ficheiro ELF non coincide coa actual"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "só se pode cargar ET_DYN e ET_EXEC"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "O phentsize do ficheiro ELF non é o tamaño esperado"
@@ -457,7 +457,7 @@ msgstr "non se poden cambia-las proteccións de memoria"
msgid "cannot map zero-fill pages"
msgstr "non se poden mapear páxinas de recheo de ceros"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "non se pode extende-lo alcance global"
@@ -477,7 +477,7 @@ msgstr "non se pode restaura-la protección do segmento despois de movelo"
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "Úsase RTLD_NEXT en código non cargado dinamicamente"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "non se poden crea-las estructuras de datos TLS"
@@ -485,138 +485,138 @@ msgstr "non se poden crea-las estructuras de datos TLS"
msgid "cannot allocate version reference table"
msgstr "non se pode localiza-la táboa de referencias de versións"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "Amosa-la caché"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "Visualizar máis mensaxes"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "Non construí-la caché"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "Cambiar a e empregar RAÃZ coma directorio raíz"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "Empregar CACHÉ coma un ficheiro de caché"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "Empregar CONF coma un ficheiro de configuración"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "Nó se procesan os directorios especificados na liña de comando. Non se constrúen as cachés."
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "Ligue as bibliotecas individuais manualmente."
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "Configura-las Asignacións de Tempo de Execución do Ligador Dinámico"
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "Proporcionouse a ruta `%s' máis dunha vez"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "Non se puido executar `stat' sobre %s"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "Non se puido executar `stat' sobre %s\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s non é unha ligazón simbólica\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "Non se puido borrar %s"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "Non se puido ligar %s a %s"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (cambiou)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (OMITIDO)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "Non se pode atopar %s"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "Non se pode facer lstat sobre %s"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "Ignorouse o ficheiro %s porque non é un ficheiro normal"
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "Non se creou unha ligazón porque non se atopou o soname para %s"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "Non se puido abri-lo directorio %s"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "Non se atopou o ficheiro de entrada %s.\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "Non se pode executar `stat' sobre %s"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "biblioteca libc6 %s nun directorio incorrecto"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "as bibliotecas %s e %s do directorio %s teñen o mesmo soname pero diferente tipo."
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "memoria esgotada"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "Non se pode cambiar ao directorio /"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "Non se puido abri-lo directorio de ficheiros caché %s\n"
@@ -707,57 +707,57 @@ msgstr "SOBJ [PROFDATA]"
msgid "failed to load shared object `%s'"
msgstr "non se puido carga-lo obxecto compartido `%s'"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "non se pode crear un descriptor interno"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "A apertura do obxecto compartido `%s' fallou"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** O ficheiro `%s' está recortado: non é posible unha análise detallada\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "non se puideron carga-los datos de símbolos"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "non se pode carga-los datos de perfís"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "ao avalia-lo ficheiro de datos de perfís"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "o ficheiro de datos de perfil `%s' non coincide co obxecto compartido `%s'"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "non se puido facer mmap sobre o ficheiro de datos de perfís"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "erro ao pecha-lo ficheiro de datos de perfís"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "`%s' non é un ficheiro de datos de perfís correcto para `%s'"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "non se poden localiza-los datos de símbolos"
@@ -1971,7 +1971,7 @@ msgid "cannot resize archive file"
msgstr "non se pode cambia-lo tamaño do ficheiro de arquivo"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "non se pode mapea-la cabeceira do arquivo"
@@ -2026,59 +2026,59 @@ msgstr "non se pode facer stat do arquivo de locales \"%s\""
msgid "cannot lock locale archive \"%s\""
msgstr "non se pode bloquea-lo arquivo de locales \"%s\""
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "non se pode le-la cabeceira do arquivo"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "o locale '%s' xa existe"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "non se pode engadir no arquivo de locales"
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "non se atopou o ficheiro de alias de locales `%s'"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "Engadindo %s\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "a chamada a stat de \"%s\" fallou: %s: ignórase"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "\"%s\" non é un directorio; ignórase"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "non se pode abr-lo directorio \"%s\": %s: ignorado"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "conxunto de ficheiros de locale incompleto en \"%s\""
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "non se poden ler tódolos ficheiros de \"%s\": ignorado"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "o locale \"%s\" non está no arquivo"
diff --git a/po/hr.po b/po/hr.po
index d57dc09..f2dcaee 100644
--- a/po/hr.po
+++ b/po/hr.po
@@ -5,12 +5,12 @@
#
# Denis Lackovic <delacko@fly.srk.fer.hr>, 2002.
# Tomislav Krznar <tomislav.krznar@gmail.com>, 2012.
-# Božidar Putanec <bozidarp@yahoo.com>, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025.
+# Božidar Putanec <bozidarp@yahoo.com>, 2018-2025.
msgid ""
msgstr ""
-"Project-Id-Version: libc-2.40.9000\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
-"PO-Revision-Date: 2025-01-07 18:25-0800\n"
+"Project-Id-Version: libc-2.41.9000\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
+"PO-Revision-Date: 2025-07-20 17:57+0200\n"
"Last-Translator: Božidar Putanec <bozidarp@yahoo.com>\n"
"Language-Team: Croatian <lokalizacija@linux.hr>\n"
"Language: hr\n"
@@ -58,7 +58,7 @@ msgstr " [OPCIJA...]"
#: argp/argp-help.c:1756
#, c-format
msgid "Try `%s --help' or `%s --usage' for more information.\n"
-msgstr "Pokušajte „%s --help“ ili „%s --usage“ za više informacija.\n"
+msgstr "Pokušajte „%s --help†ili „%s --usage†za više informacija.\n"
#: argp/argp-help.c:1784
#, c-format
@@ -104,7 +104,7 @@ msgstr "(**INTERNA GREÅ KA PROGRAMA**) Nema poznate inaÄice!?"
msgid "%s: Too many arguments\n"
msgstr "%s: Previše argumenata\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(**INTERNA GREÅ KA PROGRAMA**) Opcije su trebale biti prepoznate!?"
@@ -116,7 +116,7 @@ msgstr "%s%s%s:%u: %s%sNeoÄekivana greÅ¡ka: %s.\n"
#: assert/assert.c:127
#, c-format
msgid "%s%s%s:%u: %s%sAssertion `%s' failed.\n"
-msgstr "%s%s%s:%u: %s%sKontrolni test „%s“ nije uspio.\n"
+msgstr "%s%s%s:%u: %s%sKontrolni test „%s†nije uspio.\n"
#: catgets/gencat.c:111
msgid "Create C header file NAME containing symbol definitions"
@@ -147,7 +147,7 @@ msgstr ""
"-o IZLAZNA-DATOTEKA [ULAZNA-DATOTEKA]...\n"
"[IZLAZNA-DATOTEKA [ULAZNA-DATOTEKA]...]"
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -162,7 +162,7 @@ msgstr ""
"%s.\n"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -178,7 +178,7 @@ msgstr ""
"NEMA jamstava; Äak ni za PRODAJU ili UPOTREBU ZA ODREÄENU NAMJENU.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -195,7 +195,7 @@ msgstr "*standardni ulaz*"
#: iconv/iconv_prog.c:432 nss/makedb.c:248
#, c-format
msgid "cannot open input file `%s'"
-msgstr "nije moguće otvoriti ulaznu datoteku „%s“"
+msgstr "nije moguće otvoriti ulaznu datoteku „%sâ€"
#: catgets/gencat.c:417 catgets/gencat.c:492
msgid "illegal set number"
@@ -212,7 +212,7 @@ msgstr "ovo je prva definicija"
#: catgets/gencat.c:517
#, c-format
msgid "unknown set `%s'"
-msgstr "nepoznati skup „%s“"
+msgstr "nepoznati skup „%sâ€"
#: catgets/gencat.c:558
msgid "invalid quote character"
@@ -221,7 +221,7 @@ msgstr "nevaljani znak za citiranje"
#: catgets/gencat.c:571
#, c-format
msgid "unknown directive `%s': line ignored"
-msgstr "nepoznata direktiva „%s“: redak je zanemaren"
+msgstr "nepoznata direktiva „%sâ€: redak je zanemaren"
#: catgets/gencat.c:616
msgid "duplicated message number"
@@ -251,7 +251,7 @@ msgstr "nije moguće dodijeliti memoriju"
#: catgets/gencat.c:1000 catgets/gencat.c:1045
#, c-format
msgid "cannot open output file `%s'"
-msgstr "nije moguće otvoriti izlaznu datoteku „%s“"
+msgstr "nije moguće otvoriti izlaznu datoteku „%sâ€"
#: catgets/gencat.c:1210 locale/programs/linereader.c:588
msgid "invalid escape sequence"
@@ -325,7 +325,7 @@ msgstr "Uporaba: xtrace [OPCIJA]... PROGRAM [OPCIJA_PROGRAMA]...\\n"
#: debug/xtrace.sh:31 elf/sotruss.sh:56 elf/sotruss.sh:67 elf/sotruss.sh:135
#: malloc/memusage.sh:25
msgid "Try \\`%s --help' or \\`%s --usage' for more information.\\n"
-msgstr "Pokušajte „%s --help“ ili „%s --usage“ za više informacija.\\n"
+msgstr "Pokušajte „%s --help†ili „%s --usage†za više informacija.\\n"
#: debug/xtrace.sh:37
msgid "%s: option '%s' requires an argument.\\n"
@@ -363,7 +363,7 @@ msgstr "Za upute o prijavljivanju grešaka pogledajte:\\\\n%s.\\\\n"
#: debug/xtrace.sh:124
msgid "xtrace: unrecognized option \\`$1'\\n"
-msgstr "xtrace: neprepoznata opcija „$1“\\n"
+msgstr "xtrace: neprepoznata opcija „$1â€\\n"
#: debug/xtrace.sh:137
msgid "No program name given\\n"
@@ -372,12 +372,12 @@ msgstr "Nije navedeno ime programa\\n"
#: debug/xtrace.sh:145
#, sh-format
msgid "executable \\`$program' not found\\n"
-msgstr "izvršna datoteka „$program“ nije nađena\\n"
+msgstr "izvršna datoteka „$program†nije nađena\\n"
#: debug/xtrace.sh:149
#, sh-format
msgid "\\`$program' is no executable\\n"
-msgstr "Program „$program“ nije izvršna datoteka\\n"
+msgstr "Program „$program†nije izvršna datoteka\\n"
#: dlfcn/dlinfo.c:48
msgid "unsupported dlinfo request"
@@ -408,7 +408,7 @@ msgstr "Datoteka predmemorije ima loš endian.\n"
msgid "Cache generated by: "
msgstr "Predmemoriju je generiao: "
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Nije moguće otvoriti cache-datoteku %s\n"
@@ -426,7 +426,7 @@ msgstr "To nije cache-datoteka.\n"
#: elf/cache.c:368 elf/cache.c:383
#, c-format
msgid "%d libs found in cache `%s'\n"
-msgstr "%d biblioteka je pronađena u predmemoriji (cache) „%s“\n"
+msgstr "%d biblioteka je pronaÄ‘ena u predmemoriji (cache) „%sâ€\n"
#: elf/cache.c:381
#, c-format
@@ -477,11 +477,11 @@ msgstr "greÅ¡ka pri uÄitavanju zajedniÄkih biblioteka"
msgid "DYNAMIC LINKER BUG!!!"
msgstr "GREÅ KA DINAMIÄŒKOG LINKERA!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "nije moguće stvoriti popis opsega (scope list)"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "zajedniÄki objekt nije otvoren"
@@ -496,7 +496,7 @@ msgstr "zamjena praznog DST (dynamic string token)"
#: elf/dl-deps.c:115
#, c-format
msgid "cannot load auxiliary `%s' because of empty dynamic string token substitution\n"
-msgstr "nije moguće uÄitati pomoćnu datoteku „%s“ zbog zamjene praznog DST (dynamic string token)\n"
+msgstr "nije moguće uÄitati pomoćnu datoteku „%s†zbog zamjene praznog DST (dynamic string token)\n"
#: elf/dl-deps.c:204
msgid "cannot allocate dependency buffer"
@@ -510,11 +510,11 @@ msgstr "nije moguće dodijeliti memoriju za popis ovisnosti"
msgid "cannot allocate symbol search list"
msgstr "nije moguće dodijeliti memoriju za popis simbola za pretraživanje"
-#: elf/dl-hwcaps.c:104
+#: elf/dl-hwcaps.c:103
msgid "cannot create HWCAP priorities"
msgstr "nije moguće stvoriti HWCAP prioritete"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "nije moguće stvoriti popis kvalifikacija"
@@ -534,99 +534,99 @@ msgstr "nije moguće stvoriti RUNPATH/RPATH kopiju"
msgid "cannot create search path array"
msgstr "nije moguće stvoriti polje za pretraživanje staza"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "nije moguće stat zajedniÄki objekt"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "nije moguće stvoriti deskriptor zajedniÄkog objekta"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "nije moguće proÄitati podatke iz datoteke"
-#: elf/dl-load.c:1138 elf/dl-map-segments.h:117
+#: elf/dl-load.c:1143 elf/dl-map-segments.h:118
msgid "ELF load command address/offset not page-aligned"
-msgstr "adresa/odmak ELF naredbe nije page-aligned"
+msgstr "adresa/pomak ELF naredbe nije page-aligned"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "datoteka objekta nema segmenata koji se mogu uÄitati"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "nije moguće dinamiÄki uÄitati izvrÅ¡nu datoteku"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "datoteka objekta nema dinamiÄku sekciju"
-#: elf/dl-load.c:1289
+#: elf/dl-load.c:1294
msgid "cannot dynamically load position-independent executable"
msgstr "nije moguće dinamiÄki uÄitati izvrÅ¡nu ovisnu-o-poziciji datoteku"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "zajedniÄki objekt nije moguće otvoriti s dlopen()"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "nije moguće dodijeliti memoriju za zaglavlje programa"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "nije moguće koristiti izvrÅ¡ni stÈg kako to zahtijeva zajedniÄki objekt"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "nije moguće zatvoriti deskriptor datoteke"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "datoteka je prekratka"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "nevaljano ELF zaglavlje"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "Kodiranje podataka ELF datoteke nije big-endian"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "Kodiranje podataka ELF datoteke nije little-endian"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "Identifikacija inaÄice ELF datoteke ne slaže se s aktualnom"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "OS ABI od ELF datoteke nije valjani"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "ABI inaÄica od ELF datoteke nije valjana"
-#: elf/dl-load.c:1669
+#: elf/dl-load.c:1670
msgid "nonzero padding in e_ident"
-msgstr "popuna u e_ident() nisu nule"
+msgstr "dopuna u e_ident() nisu nule"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "**interna greška**"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "InaÄica ELF datoteke ne slaže se s aktualnom"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "mogu se uÄitati samo ET_DYN i ET_EXEC"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "phentsize ELF datoteke nije oÄekivane veliÄine"
@@ -654,21 +654,21 @@ msgstr "nije moguće promijeniti zaštitu memorije"
msgid "cannot map zero-fill pages"
msgstr "nulama ispunjene stranice ne mogu se mapirati u memoriju"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "greška u potrazi za simbolom"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "nije moguće proširiti globalni opseg"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr ""
"BrojaÄ TLS generatora ponovno je poÄeo od nule!\n"
"Ovo je ** programska pogreška **. Molimo da to prijavite."
-#: elf/dl-open.c:716
+#: elf/dl-open.c:717
msgid "cannot allocate address lookup data"
msgstr "nije moguće dodijeliti adresu za pretraživanje"
@@ -709,7 +709,7 @@ msgstr "nije moguće primijeniti dodatnu zaštitu memorije nakon premještanja"
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "RTLD_NEXT koriÅ¡ten u kodu nije dinamiÄki uÄitan"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "nije moguće stvoriti TLS podatkovne strukture"
@@ -721,222 +721,222 @@ msgstr "greÅ¡ka u potrazi za inaÄicom"
msgid "cannot allocate version reference table"
msgstr "nije moguće dodijeliti memoriju za tablicu referencija inaÄica"
-#: elf/dl-version.c:380
+#: elf/dl-version.c:387
msgid "DT_RELR without GLIBC_ABI_DT_RELR dependency"
msgstr "DT_RELR bez GLIBC_ABI_DT_RELR ovisnosti"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "pregled sadržaja predmemorije (cache)"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "generira opširne poruke"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "ne gradi predmemoriju (cache)"
-#: elf/ldconfig.c:128
+#: elf/ldconfig.c:127
msgid "Don't update symbolic links"
msgstr "ne ažurira simboliÄne poveznice"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "promijeni direktorij u ROOT i koristi ga kao root direktorij"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "ROOT"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "PREDMEMORIJA"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "rabi PREDMEMORIJU kao cache-datoteku"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "KONFIG"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "rabi KONFIG kao konfiguracijsku datoteku"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "obradi samo direktorije navedene u naredbenom retku i ne gradi predmemoriju"
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "ruÄno poveže pojedine biblioteke"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "FORMAT"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "Format to use: new (default), old, or compat"
msgstr "koristi se jedan od formata: new (zadano), old ili compat"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "zanemari datoteku pomoćne predmemorije"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "Konfigurira dinamiÄki linker."
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
-msgstr "Staza „%s“ navedena je više puta"
+msgstr "Staza „%s†navedena je više puta"
-#: elf/ldconfig.c:278
+#: elf/ldconfig.c:277
#, c-format
msgid "(from %s:%d and %s:%d)\n"
msgstr "(od %s:%d i %s:%d)\n"
-#: elf/ldconfig.c:310 elf/ldconfig.c:351
+#: elf/ldconfig.c:309 elf/ldconfig.c:350
#, c-format
msgid "Could not form glibc-hwcaps path"
msgstr "Nije moguće formirati glibc-hwcaps stazu"
-#: elf/ldconfig.c:324
+#: elf/ldconfig.c:323
#, c-format
msgid "Listing directory %s"
msgstr "Nije moguće proÄitati stazu %s"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "Nije moguće dobiti status %s"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "Nije moguće dobiti status %s\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s nije simboliÄna poveznica\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "Nije moguće ukloniti (unlink) vezu %s"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "Nije moguće napraviti vezu (link) %s na %s"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (promijenjeno)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (PRESKOÄŒENO)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "Nije moguće pronaći %s"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "Nije moguće dobiti status veze %s"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "%s datoteka je zanemarena jer nije obiÄna datoteka."
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "Nijedna poveznica nije stvorena jer soname nije bilo moguće naći za %s"
-#: elf/ldconfig.c:701
+#: elf/ldconfig.c:700
#, c-format
msgid " (from %s:%d)\n"
msgstr " (od %s:%d)\n"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "Nije moguće otvoriti direktorij %s"
-#: elf/ldconfig.c:743 elf/ldconfig.c:748
+#: elf/ldconfig.c:742 elf/ldconfig.c:747
#, c-format
msgid "Could not form library path"
msgstr "Nije bilo moguće formirati stazu biblioteke"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "Ulazna datoteka %s nije pronađena.\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "Nije moguće stat %s"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "libc6 biblioteka %s je u krivom direktoriju"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "Biblioteke %s i %s u direktoriju %s imaju isti soname ali su razliÄite vrste."
-#: elf/ldconfig.c:1051
+#: elf/ldconfig.c:1050
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr ""
"Upozorenje: zanemarena konfiguracijska datoteka\n"
" koju nije moguće otvoriti: %s"
-#: elf/ldconfig.c:1099
+#: elf/ldconfig.c:1098
#, c-format
msgid "%s:%u: hwcap directive ignored"
msgstr "%s:%u: hwcap direktiva -- zanemareno"
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "treba apsolutno ime datoteke za konfiguracijsku datoteku kad se koristi -r"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "nema dovoljno memorije"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: nije moguće Äitati direktorij %s"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
-msgstr "relativna staza „%s“ korištena je za izgradnju predmemorije"
+msgstr "relativna staza „%s†korištena je za izgradnju predmemorije"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "Nije moguće promijeniti direktorij u / (root)"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "Nije moguće otvoriti direktorij %s s cache-datotekom\n"
@@ -967,7 +967,7 @@ msgstr ""
#: elf/ldd.bash.in:80
msgid "ldd: option \\`$1' is ambiguous"
-msgstr "ldd: opcija „$1“ nije jednoznaÄna"
+msgstr "ldd: opcija „$1†nije jednoznaÄna"
#: elf/ldd.bash.in:87
msgid "unrecognized option"
@@ -975,7 +975,7 @@ msgstr "neprepoznata opcija"
#: elf/ldd.bash.in:88 elf/ldd.bash.in:125
msgid "Try \\`ldd --help' for more information."
-msgstr "Pokušajte „ldd --help“ za više informacija."
+msgstr "Pokušajte „ldd --help†za više informacija."
#: elf/ldd.bash.in:124
msgid "missing file arguments"
@@ -1200,7 +1200,7 @@ msgstr "%s: nevaljano odredište: %s\n"
#: elf/sln.c:189 elf/sln.c:198
#, c-format
msgid "Invalid link from \"%s\" to \"%s\": %s\n"
-msgstr "Nevaljana poveznica od „%s“ na „%s“: %s\n"
+msgstr "Nevaljana poveznica od „%s†na „%sâ€: %s\n"
#: elf/sotruss.sh:32
#, sh-format
@@ -1292,84 +1292,84 @@ msgstr "DIJELJENI_OBJEKT [PROFILE_DATA]"
#: elf/sprof.c:432
#, c-format
msgid "failed to load shared object `%s'"
-msgstr "nije uspjelo uÄitati dijeljeni objekt „%s“"
+msgstr "nije uspjelo uÄitati dijeljeni objekt „%sâ€"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "nije moguće stvoriti interni deskriptor"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
-msgstr "Ponovno otvaranje dijeljenog objekta „%s“ nije uspjelo"
+msgstr "Ponovno otvaranje dijeljenog objekta „%s†nije uspjelo"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
-msgstr "proÄitati „section headers“ nije uspjelo"
+msgstr "proÄitati „section headers†nije uspjelo"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
-msgstr "proÄitati „section header string table“ nije uspjelo"
+msgstr "proÄitati „section header string table†nije uspjelo"
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** Nije moguće proÄitati ime datoteke s podacima za debugiranje: %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "nije moguće odrediti ime datoteke"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "Äitanje ELF zaglavlja nije uspjelo"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
-msgstr "*** Dijelovi datoteke „%s“ su uklonjeni: detaljna analiza nije moguća\n"
+msgstr "*** Dijelovi datoteke „%s†su uklonjeni: detaljna analiza nije moguća\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "nije uspjelo uÄitati podatke o simbolima"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "nije moguće uÄitati podatke od profiliranja"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "prilikom upita o statusu datoteke s podacima profiliranja"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
-msgstr "datoteka s podacima profiliranja „%s“ ne odgovara dijeljenom objektu „%s“"
+msgstr "datoteka s podacima profiliranja „%s†ne odgovara dijeljenom objektu „%sâ€"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "nije uspjelo mapirati datoteku s podacima profiliranja u memoriju"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "greška pri zatvaranju datoteke s podacima profiliranja"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
-msgstr "„%s“ nije ispravna datoteka s podacima profiliranja za „%s“"
+msgstr "„%s†nije ispravna datoteka s podacima profiliranja za „%sâ€"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "nije moguće dodijeliti memoriju za podatke o simbolima"
@@ -1397,7 +1397,7 @@ msgstr "nije moguće otvoriti izlaznu datoteku"
#: iconv/iconv_charmap.c:192
#, c-format
msgid "error while closing input `%s'"
-msgstr "greška pri zatvaranju ulaza „%s“"
+msgstr "greÅ¡ka pri zatvaranju ulaza „%sâ€"
#: iconv/iconv_charmap.c:443
#, c-format
@@ -1490,22 +1490,22 @@ msgstr "nije uspjelo zapoÄeti proces konverzije"
#: iconv/iconv_prog.c:225
#, c-format
msgid "conversions from `%s' and to `%s' are not supported"
-msgstr "konverzija iz „%s“ i u „%s“ nije podržana"
+msgstr "konverzija iz „%s†i u „%s†nije podržana"
#: iconv/iconv_prog.c:230
#, c-format
msgid "conversion from `%s' is not supported"
-msgstr "konverzija iz „%s“ nije podržana"
+msgstr "konverzija iz „%s†nije podržana"
#: iconv/iconv_prog.c:237
#, c-format
msgid "conversion to `%s' is not supported"
-msgstr "konverzija u „%s“ nije podržana"
+msgstr "konverzija u „%s†nije podržana"
#: iconv/iconv_prog.c:241
#, c-format
msgid "conversion from `%s' to `%s' is not supported"
-msgstr "konverzija iz „%s“ u „%s“ nije podržana"
+msgstr "konverzija iz „%s†u „%s†nije podržana"
#: iconv/iconv_prog.c:349
#, c-format
@@ -1694,23 +1694,23 @@ msgstr "Nepoznata kljuÄna rijeÄ %s u .netrc"
#: locale/programs/charmap-dir.c:56
#, c-format
msgid "cannot read character map directory `%s'"
-msgstr "nije moguće proÄitati direktorij „%s“ s tablicama znakova"
+msgstr "nije moguće proÄitati direktorij „%s†s tablicama znakova"
#: locale/programs/charmap.c:137
#, c-format
msgid "character map file `%s' not found"
-msgstr "datoteka „%s“ s tablicom znakova nije pronađena"
+msgstr "datoteka „%s†s tablicom znakova nije pronađena"
#: locale/programs/charmap.c:195
#, c-format
msgid "default character map file `%s' not found"
-msgstr "zadana datoteka „%s“ s tablicom znakova nije pronađena"
+msgstr "zadana datoteka „%s†s tablicom znakova nije pronađena"
#: locale/programs/charmap.c:264
#, c-format
msgid "character map `%s' is not ASCII compatible, locale not ISO C compliant [--no-warnings=ascii]"
msgstr ""
-"tablica znakova „%s“ nije ASCII-kompatibilna,\n"
+"tablica znakova „%s†nije ASCII-kompatibilna,\n"
" locale nije sukladan s ISO C [--no-warnings=ascii]"
#: locale/programs/charmap.c:342
@@ -1797,7 +1797,7 @@ msgstr "nije dano simboliÄno ime kraja raspona"
#: locale/programs/ld-time.c:958 locale/programs/repertoire.c:311
#, c-format
msgid "%1$s: definition does not end with `END %1$s'"
-msgstr "%1$s: definicija ne završava sa „END %1$s“"
+msgstr "%1$s: definicija ne zavrÅ¡ava sa „END %1$sâ€"
#: locale/programs/charmap.c:647
msgid "only WIDTH definitions are allowed to follow the CHARMAP definition"
@@ -1831,7 +1831,7 @@ msgstr "%s: preuranjen kraj datoteke"
#: locale/programs/charmap.c:874 locale/programs/charmap.c:885
#, c-format
msgid "unknown character `%s'"
-msgstr "nepoznati znak „%s“"
+msgstr "nepoznati znak „%sâ€"
#: locale/programs/charmap.c:893
#, c-format
@@ -1847,7 +1847,7 @@ msgstr "nevaljana imena raspona znakova"
#: locale/programs/charmap.c:1010 locale/programs/repertoire.c:429
msgid "hexadecimal range format should use only capital characters"
-msgstr "heksadecimalni format raspona trebao bi se koristiti samo velika slova"
+msgstr "heksadekadski format raspona trebao bi se koristiti samo velika slova"
#: locale/programs/charmap.c:1028 locale/programs/repertoire.c:447
#, c-format
@@ -1885,45 +1885,45 @@ msgstr "Nije nađena definicija za kategoriju %s"
#: locale/programs/ld-time.c:179 locale/programs/ld-time.c:200
#, c-format
msgid "%s: field `%s' not defined"
-msgstr "%s: polje „%s“ nije definirano"
+msgstr "%s: polje „%s†nije definirano"
#: locale/programs/ld-address.c:155 locale/programs/ld-address.c:206
#: locale/programs/ld-address.c:236 locale/programs/ld-address.c:274
#: locale/programs/ld-name.c:115 locale/programs/ld-telephone.c:114
#, c-format
msgid "%s: field `%s' must not be empty"
-msgstr "%s: polje „%s“ ne smije biti prazno"
+msgstr "%s: polje „%s†ne smije biti prazno"
#: locale/programs/ld-address.c:167
#, c-format
msgid "%s: invalid escape `%%%c' sequence in field `%s'"
-msgstr "%s: nevaljani kontrolni kod „%%%c“ u polju „%s“"
+msgstr "%s: nevaljani kontrolni kod „%%%c†u polju „%sâ€"
#: locale/programs/ld-address.c:217
#, c-format
msgid "%s: terminology language code `%s' not defined"
-msgstr "%s: terminologija jeziÄnog koda „%s“ nije definirana"
+msgstr "%s: terminologija jeziÄnog koda „%s†nije definirana"
#: locale/programs/ld-address.c:242
#, c-format
msgid "%s: field `%s' must not be defined"
-msgstr "%s: polje „%s“ ne smije biti definirano"
+msgstr "%s: polje „%s†ne smije biti definirano"
#: locale/programs/ld-address.c:256 locale/programs/ld-address.c:285
#, c-format
msgid "%s: language abbreviation `%s' not defined"
-msgstr "%s: kratica za „%s“ jezik nije definirana"
+msgstr "%s: kratica za „%s†jezik nije definirana"
#: locale/programs/ld-address.c:263 locale/programs/ld-address.c:291
#: locale/programs/ld-address.c:324 locale/programs/ld-address.c:336
#, c-format
msgid "%s: `%s' value does not match `%s' value"
-msgstr "%s: vrijednost „%s“ ne slaže se s vrijednosti „%s“"
+msgstr "%s: vrijednost „%s†ne slaže se s vrijednosti „%sâ€"
#: locale/programs/ld-address.c:310
#, c-format
msgid "%s: numeric country code `%d' not valid"
-msgstr "%s: nevaljani brojÄani kod za „%d“ zemlju"
+msgstr "%s: nevaljani brojÄani kod za „%d†zemlju"
#: locale/programs/ld-address.c:431 locale/programs/ld-address.c:468
#: locale/programs/ld-address.c:506 locale/programs/ld-ctype.c:2478
@@ -1935,7 +1935,7 @@ msgstr "%s: nevaljani brojÄani kod za „%d“ zemlju"
#: locale/programs/ld-time.c:863 locale/programs/ld-time.c:905
#, c-format
msgid "%s: field `%s' declared more than once"
-msgstr "%s: polje „%s“ deklarirano je više od jedanput"
+msgstr "%s: polje „%s†deklarirano je više od jedanput"
#: locale/programs/ld-address.c:435 locale/programs/ld-address.c:473
#: locale/programs/ld-identification.c:312 locale/programs/ld-messages.c:273
@@ -1945,7 +1945,7 @@ msgstr "%s: polje „%s“ deklarirano je više od jedanput"
#: locale/programs/ld-time.c:826 locale/programs/ld-time.c:868
#, c-format
msgid "%s: unknown character in field `%s'"
-msgstr "%s: nepoznati znak u polju „%s“"
+msgstr "%s: nepoznati znak u polju „%sâ€"
#: locale/programs/ld-address.c:520 locale/programs/ld-collate.c:3797
#: locale/programs/ld-ctype.c:2826 locale/programs/ld-identification.c:393
@@ -1955,7 +1955,7 @@ msgstr "%s: nepoznati znak u polju „%s“"
#: locale/programs/ld-telephone.c:273 locale/programs/ld-time.c:956
#, c-format
msgid "%s: incomplete `END' line"
-msgstr "%s: nepotpuni „END“ redak"
+msgstr "%s: nepotpuni „END†redak"
#: locale/programs/ld-address.c:530 locale/programs/ld-collate.c:553
#: locale/programs/ld-collate.c:605 locale/programs/ld-collate.c:901
@@ -1975,33 +1975,33 @@ msgstr "%s: sintaktiÄka greÅ¡ka"
#: locale/programs/ld-collate.c:428
#, c-format
msgid "`%.*s' already defined in charmap"
-msgstr "„%.*s“ je već definirano u tablici znakova (charmap)"
+msgstr "„%.*s†je već definirano u tablici znakova (charmap)"
#: locale/programs/ld-collate.c:437
#, c-format
msgid "`%.*s' already defined in repertoire"
-msgstr "„%.*s“ je već definirano u repertoaru"
+msgstr "„%.*s†je već definirano u repertoaru"
#: locale/programs/ld-collate.c:444
#, c-format
msgid "`%.*s' already defined as collating symbol"
-msgstr "„%.*s“ je već definiran kao simbol razvrstavanja"
+msgstr "„%.*s†je već definiran kao simbol razvrstavanja"
#: locale/programs/ld-collate.c:451
#, c-format
msgid "`%.*s' already defined as collating element"
-msgstr "„%.*s“ je već definiran kao element razvrstavanja"
+msgstr "„%.*s†je već definiran kao element razvrstavanja"
#: locale/programs/ld-collate.c:482 locale/programs/ld-collate.c:508
#, c-format
msgid "%s: `forward' and `backward' are mutually excluding each other"
-msgstr "%s: „forward“ i „backward“ se meÄ‘usobno iskljuÄuju"
+msgstr "%s: „forward†i „backward†se meÄ‘usobno iskljuÄuju"
#: locale/programs/ld-collate.c:492 locale/programs/ld-collate.c:518
#: locale/programs/ld-collate.c:534
#, c-format
msgid "%s: `%s' mentioned more than once in definition of weight %d"
-msgstr "%s: „%s“ spomenuto je više od jedanput u definiciji težine %d"
+msgstr "%s: „%s†spomenuto je više od jedanput u definiciji težine %d"
#: locale/programs/ld-collate.c:590
#, c-format
@@ -2021,7 +2021,7 @@ msgstr "%s: prazan string težine nije dopušten"
#: locale/programs/ld-collate.c:886
#, c-format
msgid "%s: weights must use the same ellipsis symbol as the name"
-msgstr "%s: težine moraju koristiti istu elipsu kao i ime"
+msgstr "%s: težine moraju koristiti ist trotoÄje kao i ime"
#: locale/programs/ld-collate.c:942
#, c-format
@@ -2031,7 +2031,7 @@ msgstr "%s: previše vrijednosti"
#: locale/programs/ld-collate.c:1062 locale/programs/ld-collate.c:1237
#, c-format
msgid "order for `%.*s' already defined at %s:%zu"
-msgstr "redoslijed za „%.*s“ je već definiran u %s:%zu"
+msgstr "redoslijed za „%.*s†je već definiran u %s:%zu"
#: locale/programs/ld-collate.c:1112
#, c-format
@@ -2051,49 +2051,49 @@ msgstr "%s: sekvencija bajtova prvog znaka raspona nije manji od onog zadnjeg zn
#: locale/programs/ld-collate.c:1306
#, c-format
msgid "%s: symbolic range ellipsis must not directly follow `order_start'"
-msgstr "%s: elipsa simboliÄnog raspona ne smije neposredno slijediti „order_start“"
+msgstr "%s: trotoÄje simboliÄnog raspona ne smije neposredno slijediti „order_startâ€"
#: locale/programs/ld-collate.c:1310
#, c-format
msgid "%s: symbolic range ellipsis must not be directly followed by `order_end'"
-msgstr "%s: elipsa simboliÄnog raspona ne smije biti neposredno ispred „order_end“"
+msgstr "%s: trotoÄje simboliÄnog raspona ne smije biti neposredno ispred „order_endâ€"
#: locale/programs/ld-collate.c:1330 locale/programs/ld-ctype.c:1362
#, c-format
msgid "`%s' and `%.*s' are not valid names for symbolic range"
-msgstr "„%s“ i „%.*s“ nisu valjana imena za simbol raspona"
+msgstr "„%s†i „%.*s†nisu valjana imena za simbol raspona"
#: locale/programs/ld-collate.c:1380 locale/programs/ld-collate.c:3731
#, c-format
msgid "%s: order for `%.*s' already defined at %s:%zu"
-msgstr "%s: redoslijed za „%.*s“ je već definiran u %s:%zu"
+msgstr "%s: redoslijed za „%.*s†je već definiran u %s:%zu"
#: locale/programs/ld-collate.c:1389
#, c-format
msgid "%s: `%s' must be a character"
-msgstr "%s: „%s“ mora biti znak"
+msgstr "%s: „%s†mora biti znak"
#: locale/programs/ld-collate.c:1590
#, c-format
msgid "%s: `position' must be used for a specific level in all sections or none"
msgstr ""
-"%s: „position“ se mora koristiti za određenu razinu\n"
+"%s: „position†se mora koristiti za određenu razinu\n"
" u svim sekcijama ili nijednoj sekciji"
#: locale/programs/ld-collate.c:1614
#, c-format
msgid "symbol `%s' not defined"
-msgstr "simbol „%s“ nije definiran"
+msgstr "simbol „%s†nije definiran"
#: locale/programs/ld-collate.c:1690 locale/programs/ld-collate.c:1789
#, c-format
msgid "symbol `%s' has the same encoding as"
-msgstr "simbol „%s“ ima isto kodiranje kao"
+msgstr "simbol „%s†ima isto kodiranje kao"
#: locale/programs/ld-collate.c:1694 locale/programs/ld-collate.c:1793
#, c-format
msgid "symbol `%s'"
-msgstr "simbol „%s“"
+msgstr "simbol „%sâ€"
#: locale/programs/ld-collate.c:1856
msgid "too many errors; giving up"
@@ -2112,12 +2112,12 @@ msgstr "%s: više od jedan ‘else’"
#: locale/programs/ld-collate.c:2724
#, c-format
msgid "%s: duplicate definition of `%s'"
-msgstr "%s:duplikat definicije od „%s“"
+msgstr "%s:duplikat definicije od „%sâ€"
#: locale/programs/ld-collate.c:2760
#, c-format
msgid "%s: duplicate declaration of section `%s'"
-msgstr "%s: duplikat deklaracije od sekcije „%s“"
+msgstr "%s: duplikat deklaracije od sekcije „%sâ€"
#: locale/programs/ld-collate.c:2896
#, c-format
@@ -2137,7 +2137,7 @@ msgstr "%s: nepoznati znak u vrijednosti definicije ekvivalencije"
#: locale/programs/ld-collate.c:3046
#, c-format
msgid "%s: unknown symbol `%s' in equivalent definition"
-msgstr "%s: nepoznati simbol „%s“ u definicije ekvivalencije"
+msgstr "%s: nepoznati simbol „%s†u definicije ekvivalencije"
#: locale/programs/ld-collate.c:3055
msgid "error while adding equivalent collating symbol"
@@ -2146,17 +2146,17 @@ msgstr "greška prilikom dodavanja ekvivalentnog simbola razvrstavanja"
#: locale/programs/ld-collate.c:3093
#, c-format
msgid "duplicate definition of script `%s'"
-msgstr "duplikat definicije od skripte „%s“"
+msgstr "duplikat definicije od skripte „%sâ€"
#: locale/programs/ld-collate.c:3141
#, c-format
msgid "%s: unknown section name `%.*s'"
-msgstr "%s: nepoznato ime sekcije „%.*s“"
+msgstr "%s: nepoznato ime sekcije „%.*sâ€"
#: locale/programs/ld-collate.c:3170
#, c-format
msgid "%s: multiple order definitions for section `%s'"
-msgstr "%s: nekoliko definicija poretka za sekciju „%s“"
+msgstr "%s: nekoliko definicija poretka za sekciju „%sâ€"
#: locale/programs/ld-collate.c:3198
#, c-format
@@ -2172,7 +2172,7 @@ msgstr "%s: nekoliko definicija poretka za neimenovanu sekciju"
#: locale/programs/ld-collate.c:3775
#, c-format
msgid "%s: missing `order_end' keyword"
-msgstr "%s: nema kljuÄne rijeÄi „order_end“"
+msgstr "%s: nema kljuÄne rijeÄi „order_endâ€"
#: locale/programs/ld-collate.c:3343
#, c-format
@@ -2192,12 +2192,12 @@ msgstr "%s: nije moguće promijeniti poredak poslije %.*s: simbol nije poznat"
#: locale/programs/ld-collate.c:3424 locale/programs/ld-collate.c:3787
#, c-format
msgid "%s: missing `reorder-end' keyword"
-msgstr "%s: nema kljuÄne rijeÄi „reorder-end“"
+msgstr "%s: nema kljuÄne rijeÄi „reorder-endâ€"
#: locale/programs/ld-collate.c:3458 locale/programs/ld-collate.c:3656
#, c-format
msgid "%s: section `%.*s' not known"
-msgstr "%s: sekcija „%.*s“ nije poznata"
+msgstr "%s: sekcija „%.*s†nije poznata"
#: locale/programs/ld-collate.c:3523
#, c-format
@@ -2207,7 +2207,7 @@ msgstr "%s: loši simbol <%.*s>"
#: locale/programs/ld-collate.c:3719
#, c-format
msgid "%s: cannot have `%s' as end of ellipsis range"
-msgstr "%s: „%s“ ne može biti kraj raspona"
+msgstr "%s: „%s†ne može biti kraj raspona trotoÄja"
#: locale/programs/ld-collate.c:3771
#, c-format
@@ -2217,7 +2217,7 @@ msgstr "%s: prazan opis kategorije nije dopušten"
#: locale/programs/ld-collate.c:3790
#, c-format
msgid "%s: missing `reorder-sections-end' keyword"
-msgstr "%s: nema kljuÄne rijeÄi „reorder-sections-end“"
+msgstr "%s: nema kljuÄne rijeÄi „reorder-sections-endâ€"
#: locale/programs/ld-collate.c:3954
#, c-format
@@ -2227,7 +2227,7 @@ msgstr "%s: ‘%s’ bez odgovarajućega ‘ifdef’ ili ‘ifndef’"
#: locale/programs/ld-collate.c:3972
#, c-format
msgid "%s: 'endif' without matching 'ifdef' or 'ifndef'"
-msgstr "%s: „endif“ bez odgovarajućega ‘ifdef’ ili ‘ifndef’"
+msgstr "%s: „endif†bez odgovarajućega ‘ifdef’ ili ‘ifndef’"
#: locale/programs/ld-ctype.c:447
msgid "No character set name specified in charmap"
@@ -2236,12 +2236,12 @@ msgstr "U tablici znakova nema imena skupa znakova"
#: locale/programs/ld-ctype.c:475
#, c-format
msgid "character L'\\u%0*x' in class `%s' must be in class `%s'"
-msgstr "znak L„\\u%0*x“ iz klase „%s“ mora biti u klasi „%s“"
+msgstr "znak L„\\u%0*x†iz klase „%s†mora biti u klasi „%sâ€"
#: locale/programs/ld-ctype.c:489
#, c-format
msgid "character L'\\u%0*x' in class `%s' must not be in class `%s'"
-msgstr "znak L„\\u%0*x“ iz klase „%s“ ne smije biti u klasi „%s“"
+msgstr "znak L„\\u%0*x†iz klase „%s†ne smije biti u klasi „%sâ€"
#: locale/programs/ld-ctype.c:503 locale/programs/ld-ctype.c:559
#, c-format
@@ -2251,22 +2251,22 @@ msgstr "**interna greška** u %s, redak %u"
#: locale/programs/ld-ctype.c:531
#, c-format
msgid "character '%s' in class `%s' must be in class `%s'"
-msgstr "znak ‘%s’ iz klase „%s“ mora biti u klasi „%s“"
+msgstr "znak ‘%s’ iz klase „%s†mora biti u klasi „%sâ€"
#: locale/programs/ld-ctype.c:546
#, c-format
msgid "character '%s' in class `%s' must not be in class `%s'"
-msgstr "znak ‘%s’ iz klase „%s“ ne smije biti u klasi „%s“"
+msgstr "znak ‘%s’ iz klase „%s†ne smije biti u klasi „%sâ€"
#: locale/programs/ld-ctype.c:575 locale/programs/ld-ctype.c:610
#, c-format
msgid "<SP> character not in class `%s'"
-msgstr "<SP> znak nije u klasi „%s“"
+msgstr "<SP> znak nije u klasi „%sâ€"
#: locale/programs/ld-ctype.c:586 locale/programs/ld-ctype.c:620
#, c-format
msgid "<SP> character must not be in class `%s'"
-msgstr "<SP> znak ne smije biti u klasi „%s“"
+msgstr "<SP> znak ne smije biti u klasi „%sâ€"
#: locale/programs/ld-ctype.c:600
msgid "character <SP> not defined in character map"
@@ -2274,7 +2274,7 @@ msgstr "znak <SP> nije definiran u tablici znakova"
#: locale/programs/ld-ctype.c:734
msgid "`digit' category has not entries in groups of ten"
-msgstr "kategorija „digit“ nema stavke u grupama od po deset"
+msgstr "kategorija „digit†nema stavke u grupama od po deset"
#: locale/programs/ld-ctype.c:783
msgid "no input digits defined and none of the standard names in the charmap"
@@ -2284,16 +2284,16 @@ msgstr ""
#: locale/programs/ld-ctype.c:846
msgid "not all characters used in `outdigit' are available in the charmap"
-msgstr "nisu svi znakovi korišteni u „outdigit“ dostupni u tablici znakova"
+msgstr "nisu svi znakovi korišteni u „outdigit†dostupni u tablici znakova"
#: locale/programs/ld-ctype.c:865
msgid "not all characters used in `outdigit' are available in the repertoire"
-msgstr "nisu svi znakovi korišteni u „outdigit“ dostupni u repertoaru"
+msgstr "nisu svi znakovi korišteni u „outdigit†dostupni u repertoaru"
#: locale/programs/ld-ctype.c:1130
#, c-format
msgid "character class `%s' already defined"
-msgstr "klasa znakova „%s“ je već definirana"
+msgstr "klasa znakova „%s†je već definirana"
#: locale/programs/ld-ctype.c:1136
#, c-format
@@ -2303,7 +2303,7 @@ msgstr "ograniÄenje implementacije: nije dopuÅ¡teno viÅ¡e od %Zd klasa znakova"
#: locale/programs/ld-ctype.c:1162
#, c-format
msgid "character map `%s' already defined"
-msgstr "tablica znakova „%s“ je već definirana"
+msgstr "tablica znakova „%s†je već definirana"
#: locale/programs/ld-ctype.c:1168
#, c-format
@@ -2315,7 +2315,7 @@ msgstr "ograniÄenje implementacije: nije dopuÅ¡teno viÅ¡e od %d tablica znakova
#: locale/programs/ld-ctype.c:3301
#, c-format
msgid "%s: field `%s' does not contain exactly ten entries"
-msgstr "%s: polje „%s“ ne sadrži toÄno deset stavki"
+msgstr "%s: polje „%s†ne sadrži toÄno deset stavki"
#: locale/programs/ld-ctype.c:1462 locale/programs/ld-ctype.c:2036
#, c-format
@@ -2332,7 +2332,7 @@ msgstr "konaÄna vrijednost je manja od poÄetne vrijednosti"
#: locale/programs/ld-ctype.c:1956 locale/programs/ld-ctype.c:2007
msgid "premature end of `translit_ignore' definition"
-msgstr "preuranjen kraj definicije „translit_ignore“"
+msgstr "preuranjen kraj definicije „translit_ignoreâ€"
#: locale/programs/ld-ctype.c:1962 locale/programs/ld-ctype.c:2013
#: locale/programs/ld-ctype.c:2055
@@ -2351,34 +2351,34 @@ msgstr "%s: sintaktiÄka greÅ¡ka u definiciji nove tablice znakova"
#: locale/programs/ld-ctype.c:2363
msgid "ellipsis range must be marked by two operands of same type"
-msgstr "raspon s elipsom mora sadržavati dva parametra istog tipa"
+msgstr "raspon s trotoÄjem mora sadržavati dva parametra istog tipa"
#: locale/programs/ld-ctype.c:2372
msgid "with symbolic name range values the absolute ellipsis `...' must not be used"
-msgstr "u rasponu sa simboliÄnnim imenima ne smije se koristiti apsolutna elipsa „...“"
+msgstr "u rasponu sa simboliÄnnim imenima ne smije se koristiti apsolutno trotoÄje „...â€"
#: locale/programs/ld-ctype.c:2387
msgid "with UCS range values one must use the hexadecimal symbolic ellipsis `..'"
-msgstr "u rasponu s UCS vrijednosti mora se koristiti heksadecimalna simboliÄka elipsa „..“"
+msgstr "za UCS raspon morate se koristiti heksadekadsko simboliÄno dvotoÄje „..â€"
#: locale/programs/ld-ctype.c:2401
msgid "with character code range values one must use the absolute ellipsis `...'"
-msgstr "za vrijednosti raspona znakovnog koda morate koristiti apsolutnu elipsu „...“"
+msgstr "za vrijednosti raspona znakovnog koda morate koristiti apsolutno trotoÄje „...â€"
#: locale/programs/ld-ctype.c:2552
#, c-format
msgid "duplicated definition for mapping `%s'"
-msgstr "duplikat definicije za mapiranje „%s“"
+msgstr "duplikat definicije za mapiranje „%sâ€"
#: locale/programs/ld-ctype.c:2638 locale/programs/ld-ctype.c:2782
#, c-format
msgid "%s: `translit_start' section does not end with `translit_end'"
-msgstr "%s: „translit_start“ sekcija ne završava s „translit_end“"
+msgstr "%s: „translit_start†sekcija ne zavrÅ¡ava s „translit_endâ€"
#: locale/programs/ld-ctype.c:2733
#, c-format
msgid "%s: duplicate `default_missing' definition"
-msgstr "%s: duplikat definicije „default_missing“"
+msgstr "%s: duplikat definicije „default_missingâ€"
#: locale/programs/ld-ctype.c:2738
msgid "previous definition was here"
@@ -2387,7 +2387,7 @@ msgstr "prethodna definicija bila je ovdje"
#: locale/programs/ld-ctype.c:2760
#, c-format
msgid "%s: no representable `default_missing' definition found"
-msgstr "%s: nema reprezentativne definicije „default_missing“"
+msgstr "%s: nema reprezentativne definicije „default_missingâ€"
#: locale/programs/ld-ctype.c:2877 locale/programs/ld-ctype.c:2973
#: locale/programs/ld-ctype.c:2992 locale/programs/ld-ctype.c:3012
@@ -2397,7 +2397,7 @@ msgstr "%s: nema reprezentativne definicije „default_missing“"
#: locale/programs/ld-ctype.c:3238 locale/programs/ld-ctype.c:3261
#, c-format
msgid "%s: character `%s' not defined while needed as default value"
-msgstr "%s: znak „%s“ potreban je kao zadana vrijednost a nije definiran"
+msgstr "%s: znak „%s†potreban je kao zadana vrijednost a nije definiran"
#: locale/programs/ld-ctype.c:2882 locale/programs/ld-ctype.c:2978
#: locale/programs/ld-ctype.c:2997 locale/programs/ld-ctype.c:3017
@@ -2406,12 +2406,12 @@ msgstr "%s: znak „%s“ potreban je kao zadana vrijednost a nije definiran"
#: locale/programs/ld-ctype.c:3136 locale/programs/ld-ctype.c:3202
#, c-format
msgid "%s: character `%s' in charmap not representable with one byte"
-msgstr "%s: znak „%s“ u tablici znakova ne može se prikazati samo s jednim bajtom"
+msgstr "%s: znak „%s†u tablici znakova ne može se prikazati samo s jednim bajtom"
#: locale/programs/ld-ctype.c:3244 locale/programs/ld-ctype.c:3267
#, c-format
msgid "%s: character `%s' needed as default value not representable with one byte"
-msgstr "%s: znak „%s“, kao zadana vrijednost ne može se prikazati s jednim bajtom"
+msgstr "%s: znak „%sâ€, kao zadana vrijednost ne može se prikazati s jednim bajtom"
#: locale/programs/ld-ctype.c:3323
msgid "no output digits defined and none of the standard names in the charmap"
@@ -2420,17 +2420,17 @@ msgstr "izlazne znamenke nisu definirane i nemaju standardna imena u tablici zna
#: locale/programs/ld-ctype.c:3545
#, c-format
msgid "%s: transliteration data from locale `%s' not available"
-msgstr "%s: nema podataka za transliteraciju iz locale „%s“"
+msgstr "%s: nema podataka za transliteraciju iz locale „%sâ€"
#: locale/programs/ld-ctype.c:3644
#, c-format
msgid "%s: table for class \"%s\": %lu bytes"
-msgstr "%s: tablica za klasu „%s“: %lu bajtova"
+msgstr "%s: tablica za klasu „%sâ€: %lu bajtova"
#: locale/programs/ld-ctype.c:3708
#, c-format
msgid "%s: table for map \"%s\": %lu bytes"
-msgstr "%s: tablica za znakovne tablice „%s“: %lu bajtova"
+msgstr "%s: tablica za znakovne tablice „%sâ€: %lu bajtova"
#: locale/programs/ld-ctype.c:3832
#, c-format
@@ -2440,12 +2440,12 @@ msgstr "%s: tablica za širinu: %lu bajtova"
#: locale/programs/ld-identification.c:172
#, c-format
msgid "%s: no identification for category `%s'"
-msgstr "%s: nema identifikacije za kategoriju „%s“"
+msgstr "%s: nema identifikacije za kategoriju „%sâ€"
#: locale/programs/ld-identification.c:196
#, c-format
msgid "%s: unknown standard `%s' for category `%s'"
-msgstr "%s: nepoznati standard „%s“ za kategoriju „%s“"
+msgstr "%s: nepoznati standard „%s†za kategoriju „%sâ€"
#: locale/programs/ld-identification.c:379
#, c-format
@@ -2455,58 +2455,58 @@ msgstr "%s: duplikat definicije inaÄice kategorije"
#: locale/programs/ld-measurement.c:110
#, c-format
msgid "%s: invalid value for field `%s'"
-msgstr "%s: nevaljana vrijednost polja „%s“"
+msgstr "%s: nevaljana vrijednost polja „%sâ€"
#: locale/programs/ld-messages.c:112 locale/programs/ld-messages.c:145
#, c-format
msgid "%s: field `%s' undefined"
-msgstr "%s: polje „%s“ nije definirano"
+msgstr "%s: polje „%s†nije definirano"
#: locale/programs/ld-messages.c:118 locale/programs/ld-messages.c:151
#: locale/programs/ld-numeric.c:116
#, c-format
msgid "%s: value for field `%s' must not be an empty string"
-msgstr "%s: vrijednost polja „%s“ ne smije biti prazni string"
+msgstr "%s: vrijednost polja „%s†ne smije biti prazni string"
#: locale/programs/ld-messages.c:134 locale/programs/ld-messages.c:167
#, c-format
msgid "%s: no correct regular expression for field `%s': %s"
-msgstr "%s: nema ispravnog regularnog izraza za polje „%s“: %s"
+msgstr "%s: nema ispravnog regularnog izraza za polje „%sâ€: %s"
#: locale/programs/ld-monetary.c:310
#, c-format
msgid "%s: value of field `int_curr_symbol' has wrong length"
-msgstr "%s: vrijednost polja „int_curr_symbol“ ima pogrešnu duljinu"
+msgstr "%s: vrijednost polja „int_curr_symbol†ima pogrešnu duljinu"
#: locale/programs/ld-monetary.c:327
#, c-format
msgid "%s: value of field `int_curr_symbol' does not correspond to a valid name in ISO 4217 [--no-warnings=intcurrsym]"
-msgstr "%s: vrijednost polja „int_curr_symbol“ ne odgovara valjanom imenu u ISO 4217 [--no-warnings=intcurrsym]"
+msgstr "%s: vrijednost polja „int_curr_symbol†ne odgovara valjanom imenu u ISO 4217 [--no-warnings=intcurrsym]"
#: locale/programs/ld-monetary.c:348 locale/programs/ld-monetary.c:358
#, c-format
msgid "%s: field `%s' not defined, using defaults"
-msgstr "%s: polje „%s“ nije definirano, koristimo zadano"
+msgstr "%s: polje „%s†nije definirano, koristimo zadano"
#: locale/programs/ld-monetary.c:396 locale/programs/ld-monetary.c:420
#, c-format
msgid "%s: value for field `%s' must be in range %d...%d"
-msgstr "%s: vrijednost polja „%s“ mora biti u rasponu %d...%d"
+msgstr "%s: vrijednost polja „%s†mora biti u rasponu %d...%d"
#: locale/programs/ld-monetary.c:656 locale/programs/ld-numeric.c:227
#, c-format
msgid "%s: value for field `%s' must be a single character"
-msgstr "%s: vrijednost polja „%s“ mora biti samo jedan znak"
+msgstr "%s: vrijednost polja „%s†mora biti samo jedan znak"
#: locale/programs/ld-monetary.c:753 locale/programs/ld-numeric.c:271
#, c-format
msgid "%s: `-1' must be last entry in `%s' field"
-msgstr "%s: „-1“ mora biti zadnja stavka u polju „%s“"
+msgstr "%s: „-1†mora biti zadnja stavka u polju „%sâ€"
#: locale/programs/ld-monetary.c:775 locale/programs/ld-numeric.c:288
#, c-format
msgid "%s: values for field `%s' must be smaller than 127"
-msgstr "%s: vrijednosti polja „%s“ moraju biti manje od 127"
+msgstr "%s: vrijednosti polja „%s†moraju biti manje od 127"
#: locale/programs/ld-monetary.c:821
msgid "conversion rate value cannot be zero"
@@ -2516,78 +2516,78 @@ msgstr "vrijednost faktora za konverziju ne može biti nula"
#: locale/programs/ld-telephone.c:146
#, c-format
msgid "%s: invalid escape sequence in field `%s'"
-msgstr "%s: nevaljani kontrolni kod u polju „%s“"
+msgstr "%s: nevaljani kontrolni kod u polju „%sâ€"
#: locale/programs/ld-time.c:250
#, c-format
msgid "%s: direction flag in string %Zd in `era' field is not '+' nor '-'"
-msgstr "%s: pokazivaÄ smjera u stringu %Zd u polju „era“ nije ni ‘+’ ni ‘-’"
+msgstr "%s: pokazivaÄ smjera u stringu %Zd u polju „era†nije ni ‘+’ ni ‘-’"
#: locale/programs/ld-time.c:260
#, c-format
msgid "%s: direction flag in string %Zd in `era' field is not a single character"
-msgstr "%s: pokazivaÄ smjera u stringu %Zd u polju „era“ nije jedan znak"
+msgstr "%s: pokazivaÄ smjera u stringu %Zd u polju „era†nije jedan znak"
#: locale/programs/ld-time.c:272
#, c-format
msgid "%s: invalid number for offset in string %Zd in `era' field"
-msgstr "%s: nevaljani broj za odmak u stringu %Zd u polju „era“"
+msgstr "%s: nevaljani broj za pomak u stringu %Zd u polju „eraâ€"
#: locale/programs/ld-time.c:279
#, c-format
msgid "%s: garbage at end of offset value in string %Zd in `era' field"
-msgstr "%s: smeće pri kraju vrijednosti odmaka u stringu %Zd u polju „era“"
+msgstr "%s: smeće pri kraju vrijednosti odmaka u stringu %Zd u polju „eraâ€"
#: locale/programs/ld-time.c:329
#, c-format
msgid "%s: invalid starting date in string %Zd in `era' field"
-msgstr "%s: nevaljani poÄetni datum u stringu %Zd u polju „era“"
+msgstr "%s: nevaljani poÄetni datum u stringu %Zd u polju „eraâ€"
#: locale/programs/ld-time.c:337
#, c-format
msgid "%s: garbage at end of starting date in string %Zd in `era' field "
-msgstr "%s: smeće pri kraju poÄetnog datuma u stringu %Zd u polju „era“"
+msgstr "%s: smeće pri kraju poÄetnog datuma u stringu %Zd u polju „eraâ€"
#: locale/programs/ld-time.c:355
#, c-format
msgid "%s: starting date is invalid in string %Zd in `era' field"
-msgstr "%s: nevaljani poÄetni datum u stringu %Zd u polju „era“"
+msgstr "%s: nevaljani poÄetni datum u stringu %Zd u polju „eraâ€"
#: locale/programs/ld-time.c:403 locale/programs/ld-time.c:429
#, c-format
msgid "%s: invalid stopping date in string %Zd in `era' field"
-msgstr "%s: nevaljani krajnji datum u stringu %Zd u polju „era“"
+msgstr "%s: nevaljani krajnji datum u stringu %Zd u polju „eraâ€"
#: locale/programs/ld-time.c:411
#, c-format
msgid "%s: garbage at end of stopping date in string %Zd in `era' field"
-msgstr "%s: smeće pri kraju krajnjeg datuma u stringu %Zd u polju „era“"
+msgstr "%s: smeće pri kraju krajnjeg datuma u stringu %Zd u polju „eraâ€"
#: locale/programs/ld-time.c:437
#, c-format
msgid "%s: missing era name in string %Zd in `era' field"
-msgstr "%s: nema imena ere u stringu %Zd u polju „era“"
+msgstr "%s: nema imena ere u stringu %Zd u polju „eraâ€"
#: locale/programs/ld-time.c:448
#, c-format
msgid "%s: missing era format in string %Zd in `era' field"
-msgstr "%s: nema formata ere u stringu %Zd u polju „era“"
+msgstr "%s: nema formata ere u stringu %Zd u polju „eraâ€"
#: locale/programs/ld-time.c:493
#, c-format
msgid "%s: third operand for value of field `%s' must not be larger than %d"
-msgstr "%s: treći operand vrijednosti polja „%s“ ne smije biti veći od %d"
+msgstr "%s: treći operand vrijednosti polja „%s†ne smije biti veći od %d"
#: locale/programs/ld-time.c:501 locale/programs/ld-time.c:509
#: locale/programs/ld-time.c:517
#, c-format
msgid "%s: values for field `%s' must not be larger than %d"
-msgstr "%s: vrijednosti polja „%s“ ne smiju biti veće od %d"
+msgstr "%s: vrijednosti polja „%s†ne smiju biti veće od %d"
#: locale/programs/ld-time.c:739
#, c-format
msgid "%s: too few values for field `%s'"
-msgstr "%s: premalo vrijednosti za polje „%s“"
+msgstr "%s: premalo vrijednosti za polje „%sâ€"
#: locale/programs/ld-time.c:784
msgid "extra trailing semicolon"
@@ -2596,7 +2596,7 @@ msgstr "suviÅ¡na zavrÅ¡na toÄka sa zarezom (;)"
#: locale/programs/ld-time.c:787
#, c-format
msgid "%s: too many values for field `%s'"
-msgstr "%s: previše vrijednosti za polje „%s“"
+msgstr "%s: previÅ¡e vrijednosti za polje „%sâ€"
#: locale/programs/linereader.c:130
msgid "trailing garbage at end of line"
@@ -2638,17 +2638,17 @@ msgstr "nevaljana 8-bitna kontrolna sekvencija (escape sequence)"
#: locale/programs/linereader.c:940
#, c-format
msgid "symbol `%.*s' not in charmap"
-msgstr "simbol „%.*s“ nije u tablici znakova"
+msgstr "simbol „%.*s†nije u tablici znakova"
#: locale/programs/linereader.c:961
#, c-format
msgid "symbol `%.*s' not in repertoire map"
-msgstr "simbol „%.*s“ nije u tablici repertoara"
+msgstr "simbol „%.*s†nije u tablici repertoara"
#: locale/programs/locale-spec.c:129
#, c-format
msgid "unknown name \"%s\""
-msgstr "nepoznato ime „%s“"
+msgstr "nepoznato ime „%sâ€"
#: locale/programs/locale.c:69
msgid "System information:"
@@ -2703,7 +2703,7 @@ msgstr "Nije moguće postaviti %s na zadani (default) locale"
#: locale/programs/locale.c:1097
#, c-format
msgid "warning: The LOCPATH variable is set to \"%s\"\n"
-msgstr "upozorenje: varijable LOCPATH je postavljena na „%s“\n"
+msgstr "upozorenje: varijable LOCPATH je postavljena na „%sâ€\n"
#: locale/programs/localedef.c:115
msgid "Input Files:"
@@ -2818,18 +2818,18 @@ msgstr "nije moguće stvoriti direktorij za izlazne datoteke"
#: locale/programs/localedef.c:249
msgid "FATAL: system does not define `_POSIX2_LOCALEDEF'"
-msgstr "FATALNA GREŠKA: sustav ne definira „_POSIX2_LOCALEDEF“"
+msgstr "FATALNA GREÅ KA: sustav ne definira „_POSIX2_LOCALEDEFâ€"
#: locale/programs/localedef.c:263 locale/programs/localedef.c:279
#: locale/programs/localedef.c:677 locale/programs/localedef.c:697
#, c-format
msgid "cannot open locale definition file `%s'"
-msgstr "nije moguće otvoriti locale datoteku s definicijama za „%s“"
+msgstr "nije moguće otvoriti locale datoteku s definicijama za „%sâ€"
#: locale/programs/localedef.c:303
#, c-format
msgid "cannot write output files to `%s'"
-msgstr "nije moguće spremiti izlazne datoteke u „%s“"
+msgstr "nije moguće spremiti izlazne datoteke u „%sâ€"
#: locale/programs/localedef.c:309
msgid "no output file produced because errors were issued"
@@ -2866,7 +2866,7 @@ msgstr "kružne ovisnosti između locale definicija"
#: locale/programs/localedef.c:651
#, c-format
msgid "cannot add already read locale `%s' a second time"
-msgstr "nije moguće dodati već proÄitani locale „%s“ po drugi put"
+msgstr "nije moguće dodati već proÄitani locale „%s†po drugi put"
#: locale/programs/locarchive.c:132 locale/programs/locarchive.c:379
#, c-format
@@ -2884,7 +2884,7 @@ msgid "cannot resize archive file"
msgstr "nije moguće prilagoditi veliÄinu datoteke arhive"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "nije moguće mapirati zaglavlje arhive u memoriju"
@@ -2931,84 +2931,90 @@ msgstr "nije moguće preimenovati novu arhivu"
#: locale/programs/locarchive.c:607
#, c-format
msgid "cannot open locale archive \"%s\""
-msgstr "nije moguće otvoriti „%s“ locale arhivu"
+msgstr "nije moguće otvoriti „%s†locale arhivu"
#: locale/programs/locarchive.c:612
#, c-format
msgid "cannot stat locale archive \"%s\""
-msgstr "nije moguće stat locale arhivu „%s“"
+msgstr "nije moguće stat locale arhivu „%sâ€"
#: locale/programs/locarchive.c:631
#, c-format
msgid "cannot lock locale archive \"%s\""
-msgstr "nije moguće zakljuÄati locale arhivu „%s“"
+msgstr "nije moguće zakljuÄati locale arhivu „%sâ€"
+
+#: locale/programs/locarchive.c:642 locale/programs/locarchive.c:656
+#: locale/programs/locarchive.c:664 locale/programs/locarchive.c:685
+#, c-format
+msgid "cannot unlock archive header"
+msgstr "nije moguće otkljuÄati zaglavlje arhive"
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "nije moguće proÄitati zaglavlje arhive"
-#: locale/programs/locarchive.c:661
+#: locale/programs/locarchive.c:665
#, c-format
msgid "bad magic value in archive header"
msgstr "loša kontrolna suma u zaglavlju arhive"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "locale ‘%s’ već postoji"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "nije moguće pridodati u locale arhivu"
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
-msgstr "locale alias datoteka „%s“ nije pronađena"
+msgstr "locale alias datoteka „%s†nije pronađena"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "Dodavanje %s\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
-msgstr "stat „%s“ nije uspio: %s -- zanemareno"
+msgstr "stat „%s†nije uspio: %s -- zanemareno"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
-msgstr "„%s“ nije direktorij -- zanemareno"
+msgstr "„%s†nije direktorij -- zanemareno"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
-msgstr "nije moguće otvoriti direktorij „%s“: %s: zanemareno"
+msgstr "nije moguće otvoriti direktorij „%sâ€: %s: zanemareno"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
-msgstr "nepotpuni skup locale datoteka u „%s“"
+msgstr "nepotpuni skup locale datoteka u „%sâ€"
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
-msgstr "nije moguće Äitati sve datoteke u „%s“ -- zanemareno"
+msgstr "nije moguće Äitati sve datoteke u „%s†-- zanemareno"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
-msgstr "locale „%s“ nije u arhivi"
+msgstr "locale „%s†nije u arhivi"
#: locale/programs/locfile.c:136
#, c-format
msgid "argument to `%s' must be a single character"
-msgstr "argument za „%s“ mora biti samo jedan znak"
+msgstr "argument za „%s†mora biti samo jedan znak"
#: locale/programs/locfile.c:256
msgid "syntax error: not inside a locale definition section"
@@ -3017,21 +3023,21 @@ msgstr "sintaktiÄka greÅ¡ka: nije unutar sekcije locale definicije"
#: locale/programs/locfile.c:798
#, c-format
msgid "cannot open output file `%s' for category `%s'"
-msgstr "nije moguće otvoriti izlaznu datoteku „%s“ za kategoriju „%s“"
+msgstr "nije moguće otvoriti izlaznu datoteku „%s†za kategoriju „%sâ€"
#: locale/programs/locfile.c:821
#, c-format
msgid "failure while writing data for category `%s'"
-msgstr "neuspjeh pri pisanju podataka za kategoriju „%s“"
+msgstr "neuspjeh pri pisanju podataka za kategoriju „%sâ€"
#: locale/programs/locfile.c:929
#, c-format
msgid "cannot create output file `%s' for category `%s'"
-msgstr "nije moguće stvoriti izlaznu datoteku „%s“ za kategoriju „%s“"
+msgstr "nije moguće stvoriti izlaznu datoteku „%s†za kategoriju „%sâ€"
#: locale/programs/locfile.c:965
msgid "expecting string argument for `copy'"
-msgstr "oÄekuje se string kao argument za „copy“"
+msgstr "oÄekuje se string kao argument za „copyâ€"
#: locale/programs/locfile.c:969
msgid "locale name should consist only of portable characters"
@@ -3039,12 +3045,12 @@ msgstr "ime za locale treba se sastojati samo od prenosivih znakova"
#: locale/programs/locfile.c:988
msgid "no other keyword shall be specified when `copy' is used"
-msgstr "kad se koristi „copy“ ne smije se navesti nijedna druga kljuÄna rijeÄ"
+msgstr "kad se koristi „copy†ne smije se navesti nijedna druga kljuÄna rijeÄ"
#: locale/programs/locfile.c:1002
#, c-format
msgid "`%1$s' definition does not end with `END %1$s'"
-msgstr "„%1$s“ definicija ne završava sa „END %1$s“"
+msgstr "„%1$s†definicija ne zavrÅ¡ava sa „END %1$sâ€"
#: locale/programs/repertoire.c:227 locale/programs/repertoire.c:268
#: locale/programs/repertoire.c:293
@@ -3063,12 +3069,12 @@ msgstr "nije moguće spremiti novu mapu repertoara"
#: locale/programs/repertoire.c:340
#, c-format
msgid "repertoire map file `%s' not found"
-msgstr "datoteka mape repertoara „%s“ nije pronađena"
+msgstr "datoteka mape repertoara „%s†nije pronađena"
#: login/programs/pt_chown.c:78
#, c-format
msgid "Set the owner, group and access permission of the slave pseudo terminal corresponding to the master pseudo terminal passed on file descriptor `%d'. This is the helper program for the `grantpt' function. It is not intended to be run directly from the command line.\n"
-msgstr "Postavi vlasnika, grupu i prava pristupa podređenog pseudo terminala koji odgovara glavnom pseudo terminalu proslijeđenom deskriptoru datoteke „%d“. Ovo je pomoćni program za funkciju „grantpt“. Nije namijenjen pokretanju izravno iz naredbenog retka.\n"
+msgstr "Postavi vlasnika, grupu i prava pristupa podreÄ‘enog pseudo terminala koji odgovara glavnom pseudo terminalu proslijeÄ‘enom deskriptoru datoteke „%dâ€. Ovo je pomoćni program za funkciju „grantptâ€. Nije namijenjen pokretanju izravno iz naredbenog retka.\n"
#: login/programs/pt_chown.c:92
#, c-format
@@ -3077,7 +3083,7 @@ msgid ""
"\n"
"%s"
msgstr ""
-"Vlasnik je postavljen na trenutaÄnog korisnika, grupa je postavljena na „%s“, a prava pristupa su postavljene na „%o“.\n"
+"Vlasnik je postavljen na trenutaÄnog korisnika, grupa je postavljena na „%sâ€, a prava pristupa su postavljene na „%oâ€.\n"
"\n"
"%s"
@@ -3089,7 +3095,7 @@ msgstr "previše argumenata"
#: login/programs/pt_chown.c:211
#, c-format
msgid "needs to be installed setuid `root'"
-msgstr "mora biti instaliran kao setuid „root“"
+msgstr "mora biti instaliran kao setuid „rootâ€"
#: malloc/mcheck-impl.c:354
msgid "memory is consistent, library is buggy\n"
@@ -3482,7 +3488,7 @@ msgstr "(Nepoznati objekt"
#: nis/nis_print.c:164
#, c-format
msgid "Name : `%s'\n"
-msgstr "Ime : „%s“\n"
+msgstr "Ime : „%sâ€\n"
#: nis/nis_print.c:165
#, c-format
@@ -3697,7 +3703,7 @@ msgstr "Objekt #%d:\n"
#: nis/nis_print_group_entry.c:116
#, c-format
msgid "Group entry for \"%s.%s\" group:\n"
-msgstr "Unos grupe za grupu „%s.%s“:\n"
+msgstr "Unos grupe za grupu „%s.%sâ€:\n"
#: nis/nis_print_group_entry.c:124
msgid " Explicit members:\n"
@@ -3838,17 +3844,17 @@ msgstr "yp_update: nije moguće dobiti adresu servera\n"
#: nscd/aicache.c:68 nscd/hstcache.c:451
#, c-format
msgid "Haven't found \"%s\" in hosts cache!"
-msgstr "Nije pronaÄ‘en „%s“ u predmemoriji raÄunala!"
+msgstr "Nije pronaÄ‘en „%s†u predmemoriji raÄunala!"
#: nscd/aicache.c:70 nscd/hstcache.c:453
#, c-format
msgid "Reloading \"%s\" in hosts cache!"
-msgstr "Ponovno uÄitavanje „%s“ predmemoriju raÄunala!"
+msgstr "Ponovno uÄitavanje „%s†predmemoriju raÄunala!"
#: nscd/cache.c:150
#, c-format
msgid "add new entry \"%s\" of type %s for %s to cache%s"
-msgstr "doda novu stavku „%s“ vrste %s za %s u cache%s"
+msgstr "doda novu stavku „%s†vrste %s za %s u cache%s"
#: nscd/cache.c:152
msgid " (first)"
@@ -3857,12 +3863,12 @@ msgstr " (prvi)"
#: nscd/cache.c:287
#, c-format
msgid "checking for monitored file `%s': %s"
-msgstr "provjeravanje praćene datoteku „%s“: %s"
+msgstr "provjeravanje praćene datoteku „%sâ€: %s"
#: nscd/cache.c:297
#, c-format
msgid "monitored file `%s` changed (mtime)"
-msgstr "praćena datoteka „%s“ se promijenila (mtime)"
+msgstr "praćena datoteka „%s†se promijenila (mtime)"
#: nscd/cache.c:340
#, c-format
@@ -3872,21 +3878,21 @@ msgstr "Äišćenje predmemorije %s; vrijeme %ld"
#: nscd/cache.c:369
#, c-format
msgid "considering %s entry \"%s\", timeout %<PRIu64>"
-msgstr "razmatranje %s stavke „%s“; tajmaut %<PRIu64>"
+msgstr "razmatranje %s stavke „%sâ€; tajmaut %<PRIu64>"
#: nscd/cachedumper.c:168
msgid " - all data: "
-msgstr " - svi podaci: "
+msgstr " - all data: "
#: nscd/cachedumper.c:362
#, c-format
msgid " - remaining data %p: "
-msgstr " - ostatak podataka %p: "
+msgstr " - remaining data %p: "
#: nscd/connections.c:530
#, c-format
msgid "invalid persistent database file \"%s\": %s"
-msgstr "nevaljana postojana datoteka baze podataka „%s“: %s"
+msgstr "nevaljana postojana datoteka baze podataka „%sâ€: %s"
#: nscd/connections.c:538
msgid "uninitialized header"
@@ -3914,7 +3920,7 @@ msgstr ""
#: nscd/connections.c:595 nscd/connections.c:679
#, c-format
msgid "cannot create read-only descriptor for \"%s\"; no mmap"
-msgstr "nije moguće stvoriti deskriptor „%s“ samo za Äitanje; nema mmap()"
+msgstr "nije moguće stvoriti deskriptor „%s†samo za Äitanje; nema mmap()"
#: nscd/connections.c:611
#, c-format
@@ -3956,22 +3962,22 @@ msgstr "nije moguće omogućiti utiÄnicu za prihvaćanje poveznica: %s"
#: nscd/connections.c:871
#, c-format
msgid "disabled inotify-based monitoring for file `%s': %s"
-msgstr "onemogućuje se praćenje praćenje datoteke „%s“ s inotify: %s"
+msgstr "onemogućuje se praćenje praćenje datoteke „%s†s inotify: %s"
#: nscd/connections.c:875
#, c-format
msgid "monitoring file `%s` (%d)"
-msgstr "prati se datoteka „%s“ (%d)"
+msgstr "prati se datoteka „%s†(%d)"
#: nscd/connections.c:888
#, c-format
msgid "disabled inotify-based monitoring for directory `%s': %s"
-msgstr "onemogućuje se praćenje praćenje direktorija „%s“ s inotify: %s"
+msgstr "onemogućuje se praćenje praćenje direktorija „%s†s inotify: %s"
#: nscd/connections.c:892
#, c-format
msgid "monitoring directory `%s` (%d)"
-msgstr "prati se direktorij „%s“ (%d)"
+msgstr "prati se direktorij „%s†(%d)"
#: nscd/connections.c:920
#, c-format
@@ -3981,7 +3987,7 @@ msgstr "prati se datoteke %s za bazu podataka %s"
#: nscd/connections.c:930
#, c-format
msgid "stat failed for file `%s'; will try again later: %s"
-msgstr "nije uspjelo dobiti status datoteke „%s“; pokušati će se ponovno: %s"
+msgstr "nije uspjelo dobiti status datoteke „%sâ€; pokuÅ¡ati će se ponovno: %s"
#: nscd/connections.c:1049
#, c-format
@@ -4053,7 +4059,7 @@ msgstr ""
#: nscd/connections.c:1463
#, c-format
msgid "cannot change current working directory to \"/\": %s"
-msgstr "nije moguće promijeniti trenutaÄni radni direktorij u „/“: %s"
+msgstr "nije moguće promijeniti trenutaÄni radni direktorij u „/â€: %s"
#: nscd/connections.c:1647
#, c-format
@@ -4083,37 +4089,37 @@ msgstr "handle_request: zahtjev je primljen (inaÄica = %d)"
#: nscd/connections.c:1848
#, c-format
msgid "ignored inotify event for `%s` (file exists)"
-msgstr "zanemareni inotify događaj za „%s“ (datoteka postoji)"
+msgstr "zanemareni inotify događaj za „%s†(datoteka postoji)"
#: nscd/connections.c:1853
#, c-format
msgid "monitored file `%s` was %s, removing watch"
-msgstr "praćena datoteka „%s“ bila je %s; motrenje prestaje"
+msgstr "praćena datoteka „%s†bila je %s; motrenje prestaje"
#: nscd/connections.c:1861 nscd/connections.c:1903
#, c-format
msgid "failed to remove file watch `%s`: %s"
-msgstr "nije uspjelo ukloniti nadzor nad datotekom „%s“: %s"
+msgstr "nije uspjelo ukloniti nadzor nad datotekom „%sâ€: %s"
#: nscd/connections.c:1876
#, c-format
msgid "monitored file `%s` was written to"
-msgstr "praćena datoteka „%s“ je zapisana u"
+msgstr "praćena datoteka „%s†je zapisana u"
#: nscd/connections.c:1900
#, c-format
msgid "monitored parent directory `%s` was %s, removing watch on `%s`"
-msgstr "praćeni naddirektorij „%s“ je bio »%s«; motrenje „%s“ prestaje"
+msgstr "praćeni naddirektorij „%s†je bio »%s«; motrenje „%s†prestaje"
#: nscd/connections.c:1926
#, c-format
msgid "monitored file `%s` was %s, adding watch"
-msgstr "praćena datoteka „%s“ bila je »%s«; motrenje zapoÄinje"
+msgstr "praćena datoteka „%s†bila je »%s«; motrenje zapoÄinje"
#: nscd/connections.c:1938
#, c-format
msgid "failed to add file watch `%s`: %s"
-msgstr "nije uspjelo dodati motrenje datoteke „%s“: %s"
+msgstr "nije uspjelo dodati motrenje datoteke „%sâ€: %s"
#: nscd/connections.c:2116 nscd/connections.c:2281
#, c-format
@@ -4126,11 +4132,11 @@ msgstr "nije bilo moguće inicirati uvjetnu varijablu"
#: nscd/connections.c:2405
msgid "could not start clean-up thread; terminating"
-msgstr "nije bilo moguće pokrenuti „ÄistaÄica“-dretvu -- zavrÅ¡ava se"
+msgstr "nije bilo moguće pokrenuti „ÄistaÄicaâ€-dretvu -- zavrÅ¡ava se"
#: nscd/connections.c:2419
msgid "could not start any worker thread; terminating"
-msgstr "nije bilo moguće pokrenuti nijednu „radnik“-dretvu -- završava se"
+msgstr "nije bilo moguće pokrenuti nijednu „radnikâ€-dretvu -- zavrÅ¡ava se"
#: nscd/connections.c:2474 nscd/connections.c:2476 nscd/connections.c:2492
#: nscd/connections.c:2502 nscd/connections.c:2520 nscd/connections.c:2531
@@ -4160,17 +4166,17 @@ msgstr "nepotpuno zapisivanje u %s: %s"
#: nscd/grpcache.c:429 nscd/initgrcache.c:74
#, c-format
msgid "Haven't found \"%s\" in group cache!"
-msgstr "Nije pronađen „%s“ u predmemoriji grupa!"
+msgstr "Nije pronađen „%s†u predmemoriji grupa!"
#: nscd/grpcache.c:431 nscd/initgrcache.c:76
#, c-format
msgid "Reloading \"%s\" in group cache!"
-msgstr "Ponovno uÄitavanje „%s“ u predmemoriju grupa!"
+msgstr "Ponovno uÄitavanje „%s†u predmemoriju grupa!"
#: nscd/grpcache.c:491
#, c-format
msgid "Invalid numeric gid \"%s\"!"
-msgstr "Nevaljani numeriÄki GID „%s“!"
+msgstr "Nevaljani numeriÄki GID „%sâ€!"
#: nscd/mem.c:420
#, c-format
@@ -4185,22 +4191,22 @@ msgstr "nema više memorije za bazu podataka ‘%s’"
#: nscd/netgroupcache.c:198
#, c-format
msgid "Haven't found \"%s\" in netgroup cache!"
-msgstr "Nije pronađeno „%s“ u netgroup predmemoriji!"
+msgstr "Nije pronađeno „%s†u netgroup predmemoriji!"
#: nscd/netgroupcache.c:200
#, c-format
msgid "Reloading \"%s\" in netgroup cache!"
-msgstr "Ponovno se uÄitava „%s“ u netgroup predmemoriju!"
+msgstr "Ponovno se uÄitava „%s†u netgroup predmemoriju!"
#: nscd/netgroupcache.c:486
#, c-format
msgid "Haven't found \"%s (%s,%s,%s)\" in netgroup cache!"
-msgstr "Nije pronađen „%s (%s,%s,%s)“ u netgroup predmemoriji!"
+msgstr "Nije pronađen „%s (%s,%s,%s)†u netgroup predmemoriji!"
#: nscd/netgroupcache.c:489
#, c-format
msgid "Reloading \"%s (%s,%s,%s)\" in netgroup cache!"
-msgstr "Ponovno se uÄitava „%s (%s,%s,%s)“ u netgroup predmemoriju!"
+msgstr "Ponovno se uÄitava „%s (%s,%s,%s)†u netgroup predmemoriju!"
#: nscd/nscd.c:107
msgid "Read configuration data from NAME"
@@ -4277,7 +4283,7 @@ msgstr "nije moguće zapoÄeti novi proces (novog potomka, novi child process)"
#: nscd/nscd.c:276
msgid "cannot change current working directory to \"/\""
-msgstr "nije moguće promijeniti trenutaÄni radni direktorij u „/“"
+msgstr "nije moguće promijeniti trenutaÄni radni direktorij u „/â€"
#: nscd/nscd.c:284
msgid "Could not create log file"
@@ -4331,7 +4337,7 @@ msgstr ""
#: nscd/nscd.c:647
#, c-format
msgid "'wait' failed\n"
-msgstr "neuspješni „wait“\n"
+msgstr "neuspjeÅ¡ni „waitâ€\n"
#: nscd/nscd.c:654
#, c-format
@@ -4515,17 +4521,17 @@ msgstr ""
#: nscd/pwdcache.c:406
#, c-format
msgid "Haven't found \"%s\" in user database cache!"
-msgstr "Nije pronaÄ‘en „%s“ u korisniÄkoj predmemoriji baze podataka!"
+msgstr "Nije pronaÄ‘en „%s†u korisniÄkoj predmemoriji baze podataka!"
#: nscd/pwdcache.c:408
#, c-format
msgid "Reloading \"%s\" in user database cache!"
-msgstr "Ponovno uÄitavanje „%s“ u korisniÄku predmemoriju baze podataka!"
+msgstr "Ponovno uÄitavanje „%s†u korisniÄku predmemoriju baze podataka!"
#: nscd/pwdcache.c:470
#, c-format
msgid "Invalid numeric uid \"%s\"!"
-msgstr "Nevaljani numeriÄki UID „%s“!"
+msgstr "Nevaljani numeriÄki UID „%sâ€!"
#: nscd/selinux.c:154
#, c-format
@@ -4593,7 +4599,7 @@ msgstr "Greška pri dobivanju nscd konteksta."
#: nscd/selinux.c:393
#, c-format
msgid "Error translating permission name \"%s\" to access vector bit."
-msgstr "Greška pri prevođenju naziva dopuštenja „%s“ za pristup vektorskom bitu."
+msgstr "Greška pri prevođenju naziva dopuštenja „%s†za pristup vektorskom bitu."
#: nscd/selinux.c:403
msgid "Error getting context of socket peer"
@@ -4637,12 +4643,12 @@ msgstr ""
#: nscd/servicescache.c:357
#, c-format
msgid "Haven't found \"%s\" in services cache!"
-msgstr "Nije bio pronađen „%s“ u predmemoriji usluga!"
+msgstr "Nije bio pronađen „%s†u predmemoriji usluga!"
#: nscd/servicescache.c:359
#, c-format
msgid "Reloading \"%s\" in services cache!"
-msgstr "Ponovno uÄitavanje „%s“ u predmemoriju usluga!"
+msgstr "Ponovno uÄitavanje „%s†u predmemoriju usluga!"
#: nss/getent.c:54
msgid "database [key ...]"
@@ -4729,7 +4735,7 @@ msgstr ""
#: nss/makedb.c:229
#, c-format
msgid "cannot open database file `%s'"
-msgstr "nije moguće otvoriti datoteku baze podataka „%s“"
+msgstr "nije moguće otvoriti datoteku baze podataka „%sâ€"
#: nss/makedb.c:274
#, c-format
@@ -4768,7 +4774,7 @@ msgstr "duplikat kljuÄa"
#: nss/makedb.c:570
#, c-format
msgid "problems while reading `%s'"
-msgstr "problemi pri Äitanju „%s“"
+msgstr "problemi pri Äitanju „%sâ€"
#: nss/makedb.c:748
#, c-format
@@ -4803,7 +4809,7 @@ msgstr "nije moguće inicirati SELinux kontekst"
#: nss/makedb.c:902
#, c-format
msgid "cannot set file creation context for `%s'"
-msgstr "nije moguće uspostaviti kontekst stvaranja datoteke za „%s“"
+msgstr "nije moguće uspostaviti kontekst stvaranja datoteke za „%sâ€"
#: posix/getconf.c:419
#, c-format
@@ -4841,7 +4847,7 @@ msgstr ""
#: posix/getconf.c:574
#, c-format
msgid "unknown specification \"%s\""
-msgstr "nepoznata specifikacija „%s“"
+msgstr "nepoznata specifikacija „%sâ€"
#: posix/getconf.c:626
#, c-format
@@ -4855,7 +4861,7 @@ msgstr "nije definirano"
#: posix/getconf.c:709
#, c-format
msgid "Unrecognized variable `%s'"
-msgstr "Neprepoznata varijabla „%s“"
+msgstr "Neprepoznata varijabla „%sâ€"
#: posix/getopt.c:278
#, c-format
@@ -4910,7 +4916,7 @@ msgstr "Nevaljano ime klase znakova"
#: posix/regcomp.c:150
msgid "Trailing backslash"
-msgstr "Zaostala obrnuta kosa crta („\\“, backslash)"
+msgstr "Zaostala obrnuta kosa crta („\\â€, backslash)"
#: posix/regcomp.c:153
msgid "Invalid back reference"
@@ -5005,17 +5011,17 @@ msgstr "%s: redak %d: nakon znaka za odvajanje popisa ne slijedi domena"
#: resolv/res_hconf.c:176
#, c-format
msgid "%s: line %d: expected `on' or `off', found `%s'\n"
-msgstr "%s: redak %d: oÄekuje se „on“ ili „off“, „%s“ naÄ‘en\n"
+msgstr "%s: redak %d: oÄekuje se „on†ili „offâ€, „%s†naÄ‘en\n"
#: resolv/res_hconf.c:219
#, c-format
msgid "%s: line %d: bad command `%s'\n"
-msgstr "%s: redak %d: loša naredba „%s“\n"
+msgstr "%s: redak %d: loÅ¡a naredba „%sâ€\n"
#: resolv/res_hconf.c:252
#, c-format
msgid "%s: line %d: ignoring trailing garbage `%s'\n"
-msgstr "%s: redak %d: zanemareno smeće na kraju „%s“\n"
+msgstr "%s: redak %d: zanemareno smeće na kraju „%sâ€\n"
#: stdio-common/psiginfo-data.h:2
msgid "Illegal opcode"
@@ -5055,7 +5061,7 @@ msgstr "Dijeljenje s nulom cijelog broja"
#: stdio-common/psiginfo-data.h:13
msgid "Integer overflow"
-msgstr "Prelijevanje pri operaciji s cijelim brojem"
+msgstr "preljev pri operaciji s cijelim brojem"
#: stdio-common/psiginfo-data.h:14
msgid "Floating-point divide by zero"
@@ -6173,7 +6179,7 @@ msgstr "Vlasnik je mrtav"
#: sysdeps/gnu/errlist.h:549
msgid "State not recoverable"
-msgstr "Stanje se ne može oporaviti"
+msgstr "Stanje nije moguće oporaviti"
#: sysdeps/gnu/errlist.h:552
msgid "Interrupted system call should be restarted"
@@ -6630,7 +6636,7 @@ msgstr "ima više od 6 znakova"
#: timezone/zdump.c:411
#, c-format
msgid "%s: warning: zone \"%s\" abbreviation \"%s\" %s\n"
-msgstr "%s: upozorenje: zona „%s“ kratica „%s“ %s\n"
+msgstr "%s: upozorenje: zona „%s†kratica „%s†%s\n"
#: timezone/zdump.c:457
#, c-format
@@ -6705,12 +6711,12 @@ msgstr "standardni ulaz"
#: timezone/zic.c:616
#, c-format
msgid "\"%s\", line %<PRIdMAX>: "
-msgstr "„%s“, redak %<PRIdMAX>: "
+msgstr "„%sâ€, redak %<PRIdMAX>: "
#: timezone/zic.c:620
#, c-format
msgid " (rule from \"%s\", line %<PRIdMAX>)"
-msgstr " (pravilo iz „%s“, redak %<PRIdMAX>)"
+msgstr " (pravilo iz „%sâ€, redak %<PRIdMAX>)"
#: timezone/zic.c:639
#, c-format
@@ -6744,7 +6750,7 @@ msgstr "%s: Nije moguće promijeniti (chdir) radni direktorij u %s: %s\n"
#: timezone/zic.c:786
#, c-format
msgid "\"Link %s %s\" is part of a link cycle"
-msgstr "„Link %s %s“ je dio cikliÄne poveznice"
+msgstr "„Link %s %s†je dio cikliÄne poveznice"
#: timezone/zic.c:797
#, c-format
@@ -6962,7 +6968,7 @@ msgstr "nevaljani broj polja u Rule retku"
#: timezone/zic.c:1859
#, c-format
msgid "Invalid rule name \"%s\""
-msgstr "Nevaljano ime za pravilo „%s“!"
+msgstr "Nevaljano ime za pravilo „%sâ€!"
#: timezone/zic.c:1883
msgid "wrong number of fields on Zone line"
@@ -6971,17 +6977,17 @@ msgstr "nevaljani broj polja u Zone retku"
#: timezone/zic.c:1887
#, c-format
msgid "\"Zone %s\" line and -l option are mutually exclusive"
-msgstr "„Zone %s“ redak i opcija -l se meÄ‘usobno iskljuÄuju"
+msgstr "„Zone %s†redak i opcija -l se meÄ‘usobno iskljuÄuju"
#: timezone/zic.c:1892
#, c-format
msgid "\"Zone %s\" line and -p option are mutually exclusive"
-msgstr "„Zone %s“ redak i opcija -p se meÄ‘usobno iskljuÄuju"
+msgstr "„Zone %s†redak i opcija -p se meÄ‘usobno iskljuÄuju"
#: timezone/zic.c:1899
#, c-format
msgid "duplicate zone name %s (file \"%s\", line %<PRIdMAX>)"
-msgstr "duplikat imena zone %s (datoteka „%s“, redak %<PRIdMAX>)"
+msgstr "duplikat imena zone %s (datoteka „%sâ€, redak %<PRIdMAX>)"
#: timezone/zic.c:1913
msgid "wrong number of fields on Zone continuation line"
@@ -6989,7 +6995,7 @@ msgstr "nevaljani broj polja u Zone continuation-retku"
#: timezone/zic.c:1952
msgid "invalid UT offset"
-msgstr "nevaljani UTC odmak"
+msgstr "nevaljani UTC pomak"
#: timezone/zic.c:1956
msgid "invalid abbreviation format"
@@ -7065,7 +7071,7 @@ msgstr "TARGET prazno polje TARGET u retku Link"
#: timezone/zic.c:2192
#, c-format
msgid "FROM year \"%s\" is obsolete; treated as %d"
-msgstr "FROM godine „%s“ je zastarjelo; tretira se kao %d"
+msgstr "FROM godine „%s†je zastarjelo; tretira se kao %d"
#: timezone/zic.c:2199
msgid "invalid starting year"
@@ -7082,7 +7088,7 @@ msgstr "poÄetna godina je veća od konaÄne godine"
#: timezone/zic.c:2222
#, c-format
msgid "year type \"%s\" is unsupported; use \"-\" instead"
-msgstr "vrsta godine „%s“ nije podržano; umjesto toga koristite „-“"
+msgstr "vrsta godine „%s†nije podržano; umjesto toga koristite „-â€"
#: timezone/zic.c:2257
msgid "invalid weekday name"
@@ -7137,7 +7143,7 @@ msgstr ""
#: timezone/zic.c:3489
msgid "UT offset out of range"
-msgstr "UTC odmak je izvan granica raspona"
+msgstr "UTC pomak je izvan granica raspona"
#: timezone/zic.c:3512
msgid "too many local time types"
@@ -7162,12 +7168,12 @@ msgstr "zadnja vrijednost od Leap (prijestupnog) vremena ne prethodi vrijednosti
#: timezone/zic.c:3679
#, c-format
msgid "\"%s\" is undocumented; use \"last%s\" instead"
-msgstr "„%s“ nije dokumentirana -- koristite umjesto toga „last%s“"
+msgstr "„%s†nije dokumentirana -- koristite umjesto toga „last%sâ€"
#: timezone/zic.c:3710
#, c-format
msgid "\"%s\" is ambiguous in pre-2017c zic"
-msgstr "„%s“ nije jasno za „zic“ stariji od 2017c"
+msgstr "„%s†nije jasno za „zic†stariji od 2017c"
#: timezone/zic.c:3741
msgid "Odd number of quotation marks"
diff --git a/po/hu.po b/po/hu.po
index 1968b5f..8917015 100644
--- a/po/hu.po
+++ b/po/hu.po
@@ -7,7 +7,7 @@
msgid ""
msgstr ""
"Project-Id-Version: libc 2.10.1\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
"PO-Revision-Date: 2009-08-04 02:23+0200\n"
"Last-Translator: Gabor Kelemen <kelemeng@gnome.hu>\n"
"Language-Team: Hungarian <translation-team-hu@lists.sourceforge.net>\n"
@@ -95,7 +95,7 @@ msgstr "(PROGRAMHIBA) A verzió nem ismert!"
msgid "%s: Too many arguments\n"
msgstr "%s: Túl sok argumentum\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(PROGRAMHIBA) A kapcsolót ismerni kellene?"
@@ -138,7 +138,7 @@ msgstr ""
"[KIMENETIFÃJL [BEMENETIFÃJL]...]"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -154,7 +154,7 @@ msgstr ""
"garancia, még az ADOTT CÉLRE VALÓ ELADHATÓSÃGRA VAGY MEGFELELÅSÉGRE SEM.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -338,7 +338,7 @@ msgstr "érvénytelen mód"
msgid "invalid mode parameter"
msgstr "érvénytelen módparaméter"
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Nem nyitható meg a gyorsítótárfájl (%s)\n"
@@ -387,11 +387,11 @@ msgstr "hiba a megosztott programkönyvtárak betöltésekor"
msgid "DYNAMIC LINKER BUG!!!"
msgstr "HIBA A DINAMIKUS LINKELÅBEN!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "Nem hozható létre hatókörlista"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "a megosztott objektum nincs megnyitva"
@@ -432,87 +432,87 @@ msgstr "nem hozható létre RUNPATH/RPATH másolat"
msgid "cannot create search path array"
msgstr "nem hozható létre keresésiútvonal-tömb"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "nem érhető el a megosztott objektum"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "nem hozható létre megosztott objektumleíró"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "nem olvashatók a fájladatok"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "az objektumfájlnak nincsenek betölthető szakaszai"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "nem tölthető be dinamikusan a végrehajtható fájl"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "az objektumfájlnak nincs dinamikus szakasza"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "megosztott objektumra nem hívható meg a dlopen()"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "nem foglalható memória a program fejlécének"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "nem engedélyezhető a végrehajtható verem, mint ahogy a megosztott objektum megköveteli"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "nem zárható le a fájlleíró"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "a fájl túl rövid"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "érvénytelen ELF fejléc"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "az ELF fájladatok kódolása nem big endian"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "az ELF fájladatok kódolása nem little endian"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "az ELF fájlverzió azonosítója nem felel meg az aktuálisnak"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "az ELF fájl OS ABI-ja érvénytelen"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "az ELF fájl ABI verziója érvénytelen"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "belső hiba"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "az ELF fájlverzió nem felel meg az aktuálisnak"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "csak az ET_DYN és ET_EXEC tölthető be"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "az ELF fájl phentsize értéke nem a várt méretű"
@@ -540,15 +540,15 @@ msgstr "a memóriavédelem nem módosítható"
msgid "cannot map zero-fill pages"
msgstr "nem képezhetők le a nullával kitöltött lapok"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "szimbólumkikeresési hiba"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "a globális hatáskör nem bővíthető"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
diff --git a/po/ia.po b/po/ia.po
index 3cb4f14..f2e1a4d 100644
--- a/po/ia.po
+++ b/po/ia.po
@@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: libc 2.17-pre1\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
"PO-Revision-Date: 2013-04-26 04:10+0400\n"
"Last-Translator: Nik Kalach <nik.kalach@inbox.ru>\n"
"Language-Team: Interlingua <translation-team-ia@lists.sourceforge.net>\n"
@@ -93,7 +93,7 @@ msgstr "(ERROR DEL PROGRAMMA) Version incognite!?"
msgid "%s: Too many arguments\n"
msgstr "%s: Tro de argumentos\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(ERROR DEL PROGRAMMA) Le option se deberea haber recognoscite!?"
@@ -130,7 +130,7 @@ msgstr ""
"-o FILE-OUTPUT [FILE-INPUT]...\n"
"[FILE-OUTPUT [FILE-INPUT]...]"
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -145,7 +145,7 @@ msgstr ""
"%s.\n"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -161,7 +161,7 @@ msgstr ""
"NULLE garantia; atque pro MERCABILETATE o APTITUDE PRO UN PROPOSITO PARTICULAR.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -359,7 +359,7 @@ msgstr "modo invalide"
msgid "invalid mode parameter"
msgstr "parametro de modo incorrecte"
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Impossibile de aperir le file de cache %s\n"
@@ -408,11 +408,11 @@ msgstr "error durante le cargamento del bibliothecas condivise"
msgid "DYNAMIC LINKER BUG!!!"
msgstr "PROBLEMA CON LE EDITOR DE LIGAMINES DYNAMIC!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "impossibile de crear un lista de ambito"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "objecto condivise non aperte"
@@ -437,7 +437,7 @@ msgstr "impossibile de allocar un lista de dependentias "
msgid "cannot allocate symbol search list"
msgstr "impossibile de allocar un lista pro le cerca de symbolos"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "impossibile de crear un lista de capabilitates"
@@ -457,91 +457,91 @@ msgstr "impossibile de crear un copia de RUNPATH/RPATH"
msgid "cannot create search path array"
msgstr "impossibile de crear un array del percurso de cerca"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "impossibile de effectuar stat sur le objecto condivise"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "impossibile de crear un descriptor de objecto condivise"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "impossibile de leger datos del file"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "le file de objecto non ha segmentos cargabile"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "impossibile de cargar dynamicamente un executabile"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "le file de objecto non ha un section dynamic"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "le objecto condivise non pote esser aperite via dlopen()"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "impossibile de allocar le memoria pro un testa de programma"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "impossibile de habilitar un pila executabile como le objecto condivise necessita"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "impossibile de clauder un descriptor de file"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "file troppo curte"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "testa ELF incorrecte"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "le codification de datos del file ELF non es big-endian"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "le codification de datos del file ELF non es little-endian"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "le identificator de version del file ELF non corresponde con le version actual"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "ABI de systema operative del file ELF invalide"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "Version de ABI del file ELF invalide"
-#: elf/dl-load.c:1669
+#: elf/dl-load.c:1670
msgid "nonzero padding in e_ident"
msgstr "impletion con non-zeros in e_ident"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "error interne"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "Le version del file ELF non corresponde con le version actual"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "solo ET_DYN e ET_EXEC pote esser cargate"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "Le valor `phentsize' del file ELF non concorda con le expectation"
@@ -569,15 +569,15 @@ msgstr "impossibile de modificar le protection de memoria"
msgid "cannot map zero-fill pages"
msgstr "impossibile de mmap paginas del dispositivo de impletion con zeros"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "error de cerca de symbolo"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "impossibile de extender le ambito global"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "Le contator de generation TLS ha permitite! Reporta iste problema."
@@ -618,7 +618,7 @@ msgstr "impossibile de applicar le protection de memoria additional post le relo
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "RTLD_NEXT usate in le codice non cargate dynamicamente"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "impossibile de crear structuras de datos TLS"
@@ -630,178 +630,178 @@ msgstr "error de cerca de version"
msgid "cannot allocate version reference table"
msgstr "impossibile de allocar le tabula de referentias a versiones"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "Monstrar le cache"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "Monstrar messages in modo verbose"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "Non construer le cache"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "Passar a RADICE e utilisar lo como un directorio de radice"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "RADICE"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "CACHE"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "Utilisar CACHE como un file de cache"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "CONF"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "Utilisar CONF como un file de configuration"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "Tractar solo le directorios specificate in le linea de commando. Non construer le cache."
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "Ligar manualmente le bibliothecas individual."
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "FORMATO"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "Ignorar le file de cache auxiliar"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "Configurar le associationes de tempore de execution del editor de ligamines dynamic."
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "Percurso `%s' fornite plus de un vice"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "Impossibile de effectuar stat sur %s"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "Impossibile de effectuar stat sur %s\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s non es un ligamine symbolic\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "Impossibile de efectuar unlink sur %s"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "Impossibile de crear un ligamine de %s a %s"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (cambiate)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (OMITTITE)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "Impossibile de trovar %s"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "Impossibile de effectuar lstat sur %s"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "Le file %s es ignorate proque illo non es un file regular."
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "Ligamine non create proque il non esseva possibile trovar le so-nomine pro %s"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "Impossibile de aperir le directorio %s"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "Le file de entrata %s non trovate.\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "Impossibile de effectuar stat sur %s"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "bibliotheca libc6 %s es in un directorio incorrecte"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "Le bibliothecas %s e %s es in le directorio %s ha le mesme so-nomine, ma lor typo es differente."
-#: elf/ldconfig.c:1051
+#: elf/ldconfig.c:1050
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr "Advertimento: ignorar le file de configuration que non pote esser aperite: %s"
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "il es necessari usar le nomine absolute pro le file de configuration quando on utilisa -r"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "memoria exhaurite"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: impossibile de leger le directorio %s"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "percurso relative `%s' usate pro construer le cache"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "Impossibile de effectuar chdir a /"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "Impossibile de aperir le directorio de files de cache %s\n"
@@ -1143,82 +1143,82 @@ msgstr "OBJCONDIV [DATOSPROF]"
msgid "failed to load shared object `%s'"
msgstr "insuccesso del cargamento del objecto condivise `%s'"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "impossibile de crear un descriptor interne"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "Insuccesso del apertura del objecto condivise `%s'"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "insuccesso del lectura de testas de section"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "insuccesso del lectura del tabula de catenas de testa de section"
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** Impossibile de leger le nonime de file debuginfo: %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "impossibile de determinar le nomine de file"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "insuccesso del lectura del testa ELF"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** Le file `%s' es dismarcate: necun analyse detaliate possibile\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "insuccesso de cargamento del datos de symbolo"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "impossibile de cargar le datos de profilage"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "durante stat sur le file de datos de profilage"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "le file de datos de profilage `%s' non corresponde al objecto condivise `%s'"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "insuccesso de mmap sur le file de datos de profilage"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "error al clauder le file de datos de profilage"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "`%s' non es un file de datos de profilage correcte pro `%s'"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "impossibile de allocar le datos de symbolo"
diff --git a/po/id.po b/po/id.po
index 466746b..1e51c54 100644
--- a/po/id.po
+++ b/po/id.po
@@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: libc 2.10.1\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
"PO-Revision-Date: 2009-06-23 12:30+0700\n"
"Last-Translator: Arif E. Nugroho <arif_endro@yahoo.com>\n"
"Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n"
@@ -92,7 +92,7 @@ msgstr "(APLIKASI ERROR) Tidak ada versi yang dikenal!?"
msgid "%s: Too many arguments\n"
msgstr "%s: Terlalu banyak argumen\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(APLIKASI ERROR) Pilihan seharusnya telah dikenal!?"
@@ -136,7 +136,7 @@ msgstr ""
"[BERKAS-KELUARAN [BERKAS-MASUKAN]...]"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -152,7 +152,7 @@ msgstr ""
"garansi; bahkan untuk PERDAGANGAN atau KECOCOKAN UNTUK SEBUAH TUJUAN TERTENTU.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -336,7 +336,7 @@ msgstr "mode tidak valid"
msgid "invalid mode parameter"
msgstr "mode parameter tidak valid"
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Tidak dapat membuka berkas cache %s\n"
@@ -385,11 +385,11 @@ msgstr "error ketika melod perpustakaan terbagi"
msgid "DYNAMIC LINKER BUG!!!"
msgstr "BUG LINKER DINAMIS!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "tidak dapat membuat daftar scope"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "shared objek tidak dapat dibuka"
@@ -414,7 +414,7 @@ msgstr "tidak dapat mengalokasikan daftar ketergantungan"
msgid "cannot allocate symbol search list"
msgstr "tidak dapat mengalokasikan daftar pencarian simbol"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "tidak dapat membuat daftar kapabilitas"
@@ -434,87 +434,87 @@ msgstr "tidak dapat membuat salinan RUNPATH/RPATH"
msgid "cannot create search path array"
msgstr "tidak dapat membuah array jalur pencarian"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "tidak dapat memperoleh statistik objek terbagi"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "tidak dapat membuat deskripsi objek terbagi"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "tidak dapat membaca berkas data"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "berkas objek tidak memiliki segmen yang dapat diangkut"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "tidak dapat secara dinamis mengangkut aplikasi"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "berkas objek tidak memiliki bagian dinamis"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "objek terbagi tidak dapat di dlopen()ed"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "tidak dapat mengalokasikan memori untuk aplikasi header"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "tidak dapat mengaktifkan stack aplikasi sebagai objek terbagi yang dibutuhkan"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "tidak dapat menutup berkas deskripsi"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "berkas terlalu pendek"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "header ELF tidak valid"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "berkas data enkoding ELF bukan big-endian"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "berkas data enkoding ELF bukan little-endian"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "berkas versi ident ELF tidak cocok dengan yang sekarang"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "berkas OS ABI ELF tidak valid"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "berkas versi ABI ELF tidak valid"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "internal error"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "berkas versi ELF tidak cocok dengan yang sekarang"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "hanya ET_DYN dan ET_EXEC yang dapat diangkut"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "berkas phentsize ELF tidak seperti ukuran yang diduga"
@@ -542,15 +542,15 @@ msgstr "tidak dapat mengubah proteksi memori"
msgid "cannot map zero-fill pages"
msgstr "tidak dapat memetakan halaman pengisian-nol"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "simbol lookup error"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "tidak dapat mengeksten global scope"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "pembuatan TLS penghitung wrapped! Tolong laporkan ini."
@@ -591,7 +591,7 @@ msgstr "tidak dapat mengaplikasikan proteksi memori tambahan setelah relokasi"
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "RTLD_NEXT digunakan dalam kode yang tidak secara dinamis diangkut"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "tidak dapat membuat struktur data TLS"
@@ -599,173 +599,173 @@ msgstr "tidak dapat membuat struktur data TLS"
msgid "cannot allocate version reference table"
msgstr "tidak dapat mengalokasikan tabel referensi versi"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "Menampilkan cache"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "Menghasilkan pesan verbose"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "Jangan membuat cache"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "Ubah ke dan gunakan ROOT sebagai direktori root"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "ROOT"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "CACHE"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "Gunakan CACHE sebagai berkas cache"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "CONF"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "Gunakan CONF sebagai berkas konfigurasi"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "Hanya proses direktori yang dispesifikasikan dalam baris perintah. Jangan buat cache."
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "Secara manual hubungkan perpustakaan individu."
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "FORMAT"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "Abaikan berkas cache tambahan"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "Konfigurasi Linker Dinamis Ikatan Waktu Jalan."
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "Jalur `%s' diberikan lebih dari sekali"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "Tidak dapat memperoleh statistik %s"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "Tidak dapat memperoleh statistik %s\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s bukan sebuah link simbolis\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "Tidak dapat memutuskan %s"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "Tidak dapat menghubungkan %s ke %s"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (berubah)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (DILEWATI)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "Tidak dapat menemukan %s"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "Tidak dapat lstat %s"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "Mengabaikan berkas %s karena itu bukan sebuah berkas umum."
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "Tidak ada hubungan yang dibuat karena soname tidak dapaat ditemukan untuk %s"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "Tidak dapat membuka direktori %s"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "Berkas masukan %s tidak ditemukan.\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "Tidak dapat memperoleh statistik %s"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "perpustakaan libc6 %s berada dalam direktori salah"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "perpustakaan %s dan %s berada dalam direktori %s memiliki soname sama tetapi memiliki tipe berbeda."
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "membutuhkan nama berkas absolut untuk berkas konfigurasi ketika menggunakan -r"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "kehabisan memori"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: tidak dapat membaca direktori %s"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "jalur relatif `%s' digunakan untuk membuat cache"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "Tidak dapat chdir ke /"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "Tidak dapat membuat berkas cache direktori %s\n"
@@ -958,82 +958,82 @@ msgstr "SHOBJ [PROFDATA]"
msgid "failed to load shared object `%s'"
msgstr "gagal mengangkut objek terbagi `%s'"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "tidak dapat membuat deskripsi internal"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "Membuka kembali objek terbagi `%s' gagal"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "membaca dari daerah headers gagal"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "membaca dari daerah header tabel string gagal"
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** Tidak dapat membaca nama berkas debuginfo: %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "tidak dapat menentukan nama berkas"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "pembacaan dari header ELF gagal"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** Berkas `%s' terstrip: tidak ada kemungkinan analisa detail\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "gagal mengangkut data simbol"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "tidak dapat mengangkut data profiling"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "ketika melakukan statistik data profiling berkas"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "profiling berkas data `%s' tidak cocok dengan berkas terbagi `%s'"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "gagal untuk memetakan berkas data profiling"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "error ketika menutup berkas data profiling"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "`%s' bukan sebuah profile benar untuk berkas data untuk `%s'"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "tidak dapat mengalokasikan data simbol"
@@ -2309,7 +2309,7 @@ msgid "cannot resize archive file"
msgstr "tidak dapat mengubah ukuran berkas archive"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "tidak dapat memetakan header archive"
@@ -2364,59 +2364,59 @@ msgstr "tidak dapat memperoleh lokal archive \"%s\""
msgid "cannot lock locale archive \"%s\""
msgstr "tidak dapat mengunci lokal archive \"%s\""
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "tidak dapat membaca archive header"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "lokal '%s' telah ada"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "tidak dapat menambahkan lokal archive"
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "berkas lokal alias `%s' tidak ditemukan"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "Menambahkan %s\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "statistik dari \"%s\" gagal: %s: diabaikan"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "\"%s\" bukan sebuah direktori; diabaikan"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "tidak dapat membuka direktori \"%s\": %s: diabaikan"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "set tidak lengkap dari berkas lokal dalam \"%s\""
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "tidak dapat membaca seluruh berkas dalam \"%s\": diabaikan"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "lokal \"%s\" tidak dalam archive"
diff --git a/po/it.po b/po/it.po
index 4c0fc16..b5dea12 100644
--- a/po/it.po
+++ b/po/it.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: libc-2.36.9000\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
"PO-Revision-Date: 2023-05-03 15:28+0200\n"
"Last-Translator: Sergio Zanchetta <primes2h@ubuntu.com>\n"
"Language-Team: Italian <tp@lists.linux.it>\n"
@@ -102,7 +102,7 @@ msgstr "(ERRORE DEL PROGRAMMA) Nessuna versione conosciuta."
msgid "%s: Too many arguments\n"
msgstr "%s: troppi argomenti\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(ERRORE DEL PROGRAMMA) L'opzione avrebbe dovuto essere riconosciuta."
@@ -139,7 +139,7 @@ msgstr ""
"[FILE-OUTPUT [FILE-INPUT]...]"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -157,7 +157,7 @@ msgstr ""
# lf
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -366,7 +366,7 @@ msgstr "modalità non valida"
msgid "invalid mode parameter"
msgstr "parametro di modalità non valido"
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Impossibile aprire il file di cache %s\n"
@@ -421,12 +421,12 @@ msgstr "BUG DEL LINKER DINAMICO."
# lf
#
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "impossibile creare l'elenco di ambito"
# lf
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "oggetto condiviso non aperto"
@@ -455,7 +455,7 @@ msgid "cannot allocate symbol search list"
msgstr "impossibile allocare l'elenco della ricerca simboli"
# lf
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "impossibile creare l'elenco di capacità"
@@ -480,106 +480,106 @@ msgid "cannot create search path array"
msgstr "impossibile creare l'array dei percorsi di ricerca"
# lf
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "impossibile fare stat sull'oggetto condiviso"
# lf
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "impossibile creare il descrittore di oggetto condiviso"
# lf
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "impossibile leggere il file di dati"
# lf
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "il file oggetto non presenta segmenti caricabili"
# lf
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "impossibile caricare dinamicamente l'eseguibile"
# lf
#
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "il file oggetto non presenta una sezione dinamica"
# lf
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "impossibile eseguire dlopen() sull'oggetto condiviso"
# lf
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "impossibile allocare memoria per l'intestazione di programma"
# lf
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "impossibile abilitare lo stack eseguibile come richiesto dall'oggetto condiviso"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "impossibile chiudere il descrittore di file"
# lf
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "file troppo corto"
# lf
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "intestazione ELF non valida"
# lf
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "la codifica dati del file ELF non è big-endian"
# lf
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "la codifica dati del file ELF non è little-endian"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "l'identificatore di versione del file ELF non corrisponde a quello attuale"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "ABI del file ELF del sistema operativo non valido"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "versione ABI del file ELF non valida"
-#: elf/dl-load.c:1669
+#: elf/dl-load.c:1670
msgid "nonzero padding in e_ident"
msgstr "riempimento con valori diversi da zero in e_ident"
# lf
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "errore interno"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "La versione del file ELF non corrisponde a quella attuale"
# lf
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "è possibile caricare solo ET_DYN ed ET_EXEC"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "La phentsize del file ELF non corrisponde a quella attesa"
@@ -612,17 +612,17 @@ msgstr "impossibile cambiare le protezioni della memoria"
msgid "cannot map zero-fill pages"
msgstr "impossibile mappare le pagine riempite con zeri"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "errore nella ricerca del simbolo"
# ls
#
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "impossibile estendere l'ambito globale"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "contatore TLS di generazione azzerato. Segnalare questo problema."
@@ -668,7 +668,7 @@ msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "RTLD_NEXT usato in codice caricato non dinamicamente"
# lf
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "impossibile creare le strutture dati TLS"
@@ -682,194 +682,194 @@ msgid "cannot allocate version reference table"
msgstr "impossibile allocare la tabella di riferimento versione"
# lf
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "Stampa la cache"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "Genera messaggi prolissi"
# lf
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "Non crea la cache"
# lf
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "Passa a RADICE come directory di root"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "ROOT"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "CACHE"
# lf
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "Usa CACHE come file di cache"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "CONF"
# lf
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "Usa CONF come file di configurazione"
# lf
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "Elabora solo le directory specificate nella riga di comando. Non crea la cache."
# lf
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "Crea manualmente i collegamenti alle singole librerie."
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "FORMATO"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "Format to use: new (default), old, or compat"
msgstr "Formato da usare: new (predefinito), old o compat"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "Ignora il file di cache ausiliario"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "Configura i binding a runtime del linker dinamico."
# lf
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "Percorso \"%s\" fornito più di una volta"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "Impossibile fare stat di %s"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "Impossibile fare stat di %s\n"
# lf
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s non è un collegamento simbolico\n"
# lf
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "Impossibile eseguire l'unlink di %s"
# lf
#
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "Impossibile collegare %s a %s"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (cambiato)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (SALTATO)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "Impossibile trovare %s"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "Impossibile fare lstat di %s"
# lf
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "File %s ignorato poiché non è un file normale."
# lf
#
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "Collegamenti non creati poiché non è stato possibile trovare il soname per %s"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "Impossibile aprire la directory %s"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "File di input %s non trovato.\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "Impossibile fare stat di %s"
# lf
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "libreria libc6 %s nella directory errata"
# lf
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "le librerie %s e %s nella directory %s hanno lo stesso soname, ma di tipo differente."
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "se viene usato -r è necessario un nome file assoluto per il file di configurazione"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "memoria esaurita"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: impossibile leggere la directory %s"
# lf
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "usato il percorso relativo \"%s\" per creare la cache"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "Impossibile fare chdir a /"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "Impossibile aprire la directory del file di cache %s\n"
@@ -1103,88 +1103,88 @@ msgid "failed to load shared object `%s'"
msgstr "caricamento dell'oggetto condiviso \"%s\" non riuscito"
# lf
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "impossibile creare il descrittore interno"
# lf
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "Riapertura dell'oggetto condiviso \"%s\" non riuscita"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "lettura delle intestazioni di sezione non riuscita"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "lettura della tabella di stringhe delle intestazioni di sezione non riuscita"
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** Impossibile leggere il nome del file debuginfo: %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "impossibile determinare il nome del file"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "lettura dell'intestazione ELF non riuscita"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** Il file \"%s\" è stato rimosso: impossibile fare l'analisi dettagliata\n"
# lf
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "caricamento dei dati dei simboli non riuscito"
# lf
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "impossibile caricare i dati di profiling"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "durante lo stat del relativo file"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "il file di dati di profiling \"%s\" non ha corrispondenza con l'oggetto condiviso \"%s\""
# lf
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "mmap sul file di dati di profiling non riuscito"
# lf
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "errore durante la chiusura del file di dati di profiling"
# lf
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "\"%s\" non è il corretto file di dati profilo per \"%s\""
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "impossibile allocare i dati dei simboli"
@@ -2618,7 +2618,7 @@ msgid "cannot resize archive file"
msgstr "impossibile ridimensionare il file d'archivio"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "impossibile mappare l'intestazione dell'archivio"
@@ -2677,61 +2677,61 @@ msgstr "impossibile fare stat dell'archivio di localizzazione \"%s\""
msgid "cannot lock locale archive \"%s\""
msgstr "impossibile fare il lock dell'archivio di localizzazione \"%s\""
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "impossibile leggere l'intestazione dell'archivio"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "la localizzazione \"%s\" esiste già"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "impossibile aggiungere all'archivio delle localizzazioni"
# lf
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "file alias \"%s\" di localizzazione non trovato"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "Aggiunta di %s\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "stat di \"%s\" non riuscita: %s: ignorato"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "\"%s\" non è una directory; ignorato"
# lf
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "impossibile aprire la directory \"%s\": %s: ignorato"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "set incompleto di file di localizzazione in \"%s\""
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "impossibile leggere tutti i file in \"%s\": ignorato"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "la localizzazione \"%s\" non è nell'archivio"
diff --git a/po/ja.po b/po/ja.po
index 8ac38d8..9b6ce14 100644
--- a/po/ja.po
+++ b/po/ja.po
@@ -8,7 +8,7 @@
msgid ""
msgstr ""
"Project-Id-Version: libc 2.36.9000\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
"PO-Revision-Date: 2023-05-09 08:02+0900\n"
"Last-Translator: Takeshi Hamasaki <hmatrjp@users.sourceforge.jp>\n"
"Language-Team: Japanese <translation-team-ja@lists.sourceforge.net>\n"
@@ -102,7 +102,7 @@ msgstr "(プログラムエラー) 䏿˜Žãªãƒãƒ¼ã‚¸ãƒ§ãƒ³!?"
msgid "%s: Too many arguments\n"
msgstr "%s: 引数ãŒå¤šã™ãŽã¾ã™\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(プログラムエラー) オプションã¯èªè­˜ã•れã¦ã„ã‚‹ã¹ãã§ã™!?"
@@ -135,7 +135,7 @@ msgstr ""
"[OUTPUT-FILE [INPUT-FILE]...]"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -151,7 +151,7 @@ msgstr ""
"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -343,7 +343,7 @@ msgstr "無効ãªãƒ¢ãƒ¼ãƒ‰ã§ã™"
msgid "invalid mode parameter"
msgstr "無効ãªãƒ¢ãƒ¼ãƒ‰ãƒ‘ラメータã§ã™"
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "キャッシュファイル %s ã‚’é–‹ã‘ã¾ã›ã‚“\n"
@@ -392,11 +392,11 @@ msgstr "共有ライブラリã®ãƒ­ãƒ¼ãƒ‰ä¸­ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ"
msgid "DYNAMIC LINKER BUG!!!"
msgstr "ダイナミックリンカã®ãƒã‚°ã§ã™!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "スコープリストを作æˆã§ãã¾ã›ã‚“"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "共有オブジェクトãŒé–‹ã‘ã¾ã›ã‚“"
@@ -421,7 +421,7 @@ msgstr "ä¾å­˜ãƒªã‚¹ãƒˆã‚’é…置出æ¥ã¾ã›ã‚“"
msgid "cannot allocate symbol search list"
msgstr "シンボル探索リストをé…置出æ¥ã¾ã›ã‚“"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "権é™ãƒªã‚¹ãƒˆã‚’作æˆã§ãã¾ã›ã‚“"
@@ -441,91 +441,91 @@ msgstr "RUNPATH/RPATH ã®ã‚³ãƒ”ーを作æˆã§ãã¾ã›ã‚“"
msgid "cannot create search path array"
msgstr "探索パスé…列を作æˆã§ãã¾ã›ã‚“"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "共有オブジェクトã®çŠ¶æ…‹å–å¾— (stat) ãŒã§ãã¾ã›ã‚“"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "共有オブジェクト記述å­ã‚’作æˆã§ãã¾ã›ã‚“"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "ファイルデータを読ã¿è¾¼ã‚ã¾ã›ã‚“"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "オブジェクトファイルã¯ãƒ­ãƒ¼ãƒ‰å¯èƒ½ã‚»ã‚°ãƒ¡ãƒ³ãƒˆã‚’æŒã£ã¦ã„ã¾ã›ã‚“"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "実行ファイルを動的ã«ãƒ­ãƒ¼ãƒ‰ã§ãã¾ã›ã‚“"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "オブジェクトファイルã¯å‹•的セクションをæŒã£ã¦ã„ã¾ã›ã‚“"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "共有オブジェクト㯠dlopen() ã§ãã¾ã›ã‚“"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "プログラムヘッダー用ã®ãƒ¡ãƒ¢ãƒªã‚’é…ç½®ã§ãã¾ã›ã‚“"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "共有オブジェクトãŒå¿…è¦ã¨ã—ã¦ã„る実行å¯èƒ½ã‚¹ã‚¿ãƒƒã‚¯ã‚’有効ã«ã§ãã¾ã›ã‚“"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "ファイル記述å­ã‚’é–‰ã˜ã‚‰ã‚Œã¾ã›ã‚“"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "ファイルãŒå°ã•ã™ãŽã¾ã™"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "無効㪠ELF ヘッダーã§ã™"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "ELF ファイルデータã®ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°ãŒãƒ“ッグエンディアンã§ã¯ã‚りã¾ã›ã‚“"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "ELF ファイルデータã®ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°ãŒãƒªãƒˆãƒ«ã‚¨ãƒ³ãƒ‡ã‚£ã‚¢ãƒ³ã§ã¯ã‚りã¾ã›ã‚“"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "ELF ファイルãƒãƒ¼ã‚¸ãƒ§ãƒ³è­˜åˆ¥å­ãŒç¾åœ¨ã®ã‚‚ã®ã¨ä¸€è‡´ã—ã¦ã„ã¾ã›ã‚“"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "ELF ファイル OS ABI ãŒç„¡åйã§ã™"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "ELF ファイル ABI ãƒãƒ¼ã‚¸ãƒ§ãƒ³ãŒç„¡åйã§ã™"
-#: elf/dl-load.c:1669
+#: elf/dl-load.c:1670
msgid "nonzero padding in e_ident"
msgstr "e_ident 内ã«ã‚¼ãƒ­ã§ãªã„è©°ã‚æ–‡å­—ãŒã‚りã¾ã™"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "内部エラー"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "ELFファイルã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·ãŒç¾åœ¨ã®ãƒ•ァイルã«ä¸€è‡´ã—ã¦ã„ã¾ã›ã‚“"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "ET_DYN 㨠ET_EXEC ã®ã¿ãƒ­ãƒ¼ãƒ‰å¯èƒ½ã§ã™"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "ELF ファイル㮠phentsize ãŒäºˆæœŸã•れãŸã‚µã‚¤ã‚ºã§ã¯ã‚りã¾ã›ã‚“"
@@ -553,15 +553,15 @@ msgstr "メモリä¿è­·ã‚’変更ã§ãã¾ã›ã‚“"
msgid "cannot map zero-fill pages"
msgstr "ゼロã§åŸ‹ã‚られãŸãƒšãƒ¼ã‚¸ã‚’マップã§ãã¾ã›ã‚“"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "シンボル検索エラーã§ã™"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "大域スコープを拡張ã§ãã¾ã›ã‚“"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "TLS 生æˆã‚«ã‚¦ãƒ³ã‚¿ãŒä¸€å‘¨ã—ã¾ã—ãŸ! ã“れを報告ã—ã¦ãã ã•ã„。"
@@ -602,7 +602,7 @@ msgstr "å†é…置後ã«è¿½åŠ ã®ãƒ¡ãƒ¢ãƒªä¿è­·ã‚’é©ç”¨ã§ãã¾ã›ã‚“"
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "コード内ã§ä½¿ç”¨ã•れã¦ã„ã‚‹ RTLD_NEXT ã‚’å‹•çš„ã«ãƒ­ãƒ¼ãƒ‰å‡ºæ¥ã¾ã›ã‚“"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "TLS データ構造体を作æˆã§ãã¾ã›ã‚“"
@@ -614,173 +614,173 @@ msgstr "ãƒãƒ¼ã‚¸ãƒ§ãƒ³æ¤œç´¢ã‚¨ãƒ©ãƒ¼ã§ã™"
msgid "cannot allocate version reference table"
msgstr "ãƒãƒ¼ã‚¸ãƒ§ãƒ³å‚照表をé…置出æ¥ã¾ã›ã‚“"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "キャッシュを表示ã—ã¾ã™"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "冗長ãªãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’生æˆã—ã¾ã™"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "ã‚­ãƒ£ãƒƒã‚·ãƒ¥ã®æ§‹ç¯‰ã‚’行ã„ã¾ã›ã‚“"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "ルートディレクトリを ROOT ã«å¤‰æ›´ã—ã€ä½¿ç”¨ã—ã¾ã™"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "ROOT"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "CACHE"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "キャッシュファイルã¨ã—㦠CACHE を使用ã—ã¾ã™"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "CONF"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "設定ファイルã¨ã—㦠CONF を使用ã—ã¾ã™"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§æŒ‡å®šã•れãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®ã¿å‡¦ç†ã—ã¾ã™ã€‚キャッシュã¯ä½œæˆã—ã¾ã›ã‚“。"
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "個々ã®ãƒ©ã‚¤ãƒ–ラリを手動ã§ãƒªãƒ³ã‚¯ã—ã¦ãã ã•ã„。"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "FORMAT"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "補助キャッシュファイルを無視ã—ã¦ã„ã¾ã™"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "動的リンカランタイムã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã‚’設定ã—ã¾ã™ã€‚"
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "パス `%s' ãŒäºŒå›žä»¥ä¸Šä¸Žãˆã‚‰ã‚Œã¾ã—ãŸ"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "%s ã®æƒ…å ±å–å¾— (stat) ãŒã§ãã¾ã›ã‚“"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "%s ã®æƒ…å ±å–å¾— (stat) ãŒå‡ºæ¥ã¾ã›ã‚“\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s ã¯ã‚·ãƒ³ãƒœãƒªãƒƒã‚¯ãƒªãƒ³ã‚¯ã§ã¯ã‚りã¾ã›ã‚“\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "%s をリンク解除ã§ãã¾ã›ã‚“"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "%s ã‹ã‚‰ %s ã¸ãƒªãƒ³ã‚¯ã§ãã¾ã›ã‚“"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (変更ã•れã¾ã—ãŸ)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (スキップã•れã¾ã—ãŸ)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "%s を見ã¤ã‘られã¾ã›ã‚“"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "%s ã®çŠ¶æ…‹å–å¾— (lstat) ãŒå‡ºæ¥ã¾ã›ã‚“"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "通常ファイルã§ãªã„ãŸã‚ファイル %s を無視ã—ã¦ã„ã¾ã™ã€‚"
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "%s 用ã®å‹•的ライブラリå (soname) ãŒè¦‹ã¤ã‹ã‚‰ãªã„ãŸã‚リンクãŒä½œæˆã•れã¾ã›ã‚“ã§ã—ãŸ"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "ディレクトリ %s ã‚’é–‹ã‘ã¾ã›ã‚“"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "入力ファイル %s ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "%s ã®çŠ¶æ…‹å–å¾— (stat) ãŒå‡ºæ¥ã¾ã›ã‚“"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "libc6 ライブラリ %s ãŒèª¤ã£ãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã«ã‚りã¾ã™"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "ディレクトリ %3$s 内ã«ã‚るライブラリ %1$s 㨠%2$s ã¯åŒä¸€ã®å‹•的ライブラリå (soname) ã§ã™ãŒç•°ãªã£ãŸåž‹ã§ã™ã€‚"
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "-r を使用ã—ã¦ã„ã‚‹ã¨ãã¯è¨­å®šãƒ•ァイルåã¨ã—ã¦çµ¶å¯¾ãƒ‘スã®ãƒ•ァイルåãŒå¿…è¦ã§ã™"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "ãƒ¡ãƒ¢ãƒªã‚’ä½¿ã„æžœãŸã—ã¾ã—ãŸ"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: ディレクトリ %s を読ã¿è¾¼ã‚ã¾ã›ã‚“"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "ã‚­ãƒ£ãƒƒã‚·ãƒ¥ç”Ÿæˆæ™‚ã«ç›¸å¯¾ãƒ‘ス `%s' ãŒä½¿ç”¨ã•れã¾ã—ãŸ"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "/ ã¸ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªç§»å‹• (chdir) 出æ¥ã¾ã›ã‚“"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "キャッシュファイルディレクトリ %s ã‚’é–‹ã‘ã¾ã›ã‚“\n"
@@ -993,82 +993,82 @@ msgstr "SHOBJ [PROFDATA]"
msgid "failed to load shared object `%s'"
msgstr "共有オブジェクト `%s' ã®èª­ã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "内部記述å­ã‚’作æˆã§ãã¾ã›ã‚“"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "共有オブジェクト `%s' ã®å†ã‚ªãƒ¼ãƒ—ンã«å¤±æ•—ã—ã¾ã—ãŸ"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "セクションヘッダーã®èª­ã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "セクションヘッダー文字列表ã®èª­ã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ"
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** デãƒãƒƒã‚°æƒ…報ファイルåã®èª­ã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ: %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "ファイルåを決定ã§ãã¾ã›ã‚“"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "ELF ヘッダーã®èª­ã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** ファイル `%s' ã¯å–り除ã‹ã‚Œã¦ (strip) ã„ã¾ã™: 詳細ãªè§£æžãŒå‡ºæ¥ã¾ã›ã‚“\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "シンボルデータã®ãƒ­ãƒ¼ãƒ‰ã«å¤±æ•—ã—ã¾ã—ãŸ"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "プロファイルデータをロード出æ¥ã¾ã›ã‚“"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "プロファイルデータã®çŠ¶æ…‹å–å¾— (stat) 中"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "プロファイルデータファイル `%s' ã¯å…±æœ‰ã‚ªãƒ–ジェクト `%s' ã¨ä¸€è‡´ã—ã¾ã›ã‚“"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "プロファイルデータファイル㮠mmap ã«å¤±æ•—ã—ã¾ã—ãŸ"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "プロファイルデータファイルを閉ã˜ã¦ã„ã‚‹é–“ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "`%s' 㯠`%s' ç”¨ã®æ­£ã—ã„プロファイルデータã§ã¯ã‚りã¾ã›ã‚“"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "シンボルデータをé…置出æ¥ã¾ã›ã‚“"
@@ -2362,7 +2362,7 @@ msgid "cannot resize archive file"
msgstr "書庫ファイルã®ã‚µã‚¤ã‚ºå¤‰æ›´ã¯å‡ºæ¥ã¾ã›ã‚“"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "書庫ヘッダーをマップ出æ¥ã¾ã›ã‚“"
@@ -2421,59 +2421,59 @@ msgstr "ロケール書庫 \"%s\" ã®çŠ¶æ…‹å–å¾— (stat) ãŒå‡ºæ¥ã¾ã›ã‚“"
msgid "cannot lock locale archive \"%s\""
msgstr "ロケール書庫 \"%s\" をロックã§ãã¾ã›ã‚“"
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "書庫ヘッダーを読ã¿è¾¼ã‚ã¾ã›ã‚“"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "ロケール '%s' ã¯ã™ã§ã«å­˜åœ¨ã—ã¾ã™"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "ロケール書庫ã«è¿½åŠ ã§ãã¾ã›ã‚“"
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "ロケール別åファイル `%s' ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "%s を追加ã—ã¦ã„ã¾ã™\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "\"%s\" ã®çŠ¶æ…‹å–å¾— (stat) ã«å¤±æ•—ã—ã¾ã—ãŸ: %s: 無視ã—ã¾ã™"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "\"%s\" ã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã¯ã‚りã¾ã›ã‚“。無視ã—ã¾ã™"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "ディレクトリ \"%s\" ã‚’é–‹ã‘ã¾ã›ã‚“: %s: 無視ã—ã¾ã™"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "ロケールファイル \"%s\" 中ã®ãƒ­ã‚±ãƒ¼ãƒ«é›†åˆãŒä¸å®Œå…¨ã§ã™"
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "\"%s\" 内ã®å…¨ã¦ã®ãƒ•ァイルを読ã¿è¾¼ã‚ã¾ã›ã‚“: 無視ã—ã¾ã™"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "ロケール \"%s\" ã¯æ›¸åº«å†…ã«ã‚りã¾ã›ã‚“"
diff --git a/po/ka.po b/po/ka.po
index 5a40b13..ebe00a1 100644
--- a/po/ka.po
+++ b/po/ka.po
@@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: libc 2.36.9000\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
"PO-Revision-Date: 2023-02-05 14:40+0100\n"
"Last-Translator: Temuri Doghonadze <temuri.doghonadze@gmail.com>\n"
"Language-Team: Georgian <(nothing)>\n"
@@ -98,7 +98,7 @@ msgstr "(PROGRAM ERROR) ვერსირუცნáƒáƒ‘იáƒ!?"
msgid "%s: Too many arguments\n"
msgstr "%s: მეტისმეტáƒáƒ“ ბევრი áƒáƒ áƒ’უმენტი\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(PROGRAM ERROR) პáƒáƒ áƒáƒ›áƒ”ტრი ნáƒáƒªáƒœáƒáƒ‘ი უნდრყáƒáƒ¤áƒ˜áƒšáƒ˜áƒ§áƒ!?"
@@ -131,7 +131,7 @@ msgstr ""
"-o გáƒáƒ›áƒáƒ¢áƒáƒœáƒ˜áƒ¡-ფáƒáƒ˜áƒšáƒ˜ [შეტáƒáƒœáƒ˜áƒ¡-ფáƒáƒ˜áƒšáƒ˜]...\n"
"[გáƒáƒ›áƒáƒ¢áƒáƒœáƒ˜áƒ¡-ფáƒáƒ˜áƒšáƒ˜ [შეტáƒáƒœáƒ˜áƒ¡-ფáƒáƒ˜áƒšáƒ˜]..]"
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -146,7 +146,7 @@ msgstr ""
"%s.\n"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -162,7 +162,7 @@ msgstr ""
"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -347,7 +347,7 @@ msgstr "ქეშის ფáƒáƒ˜áƒšáƒ¡ áƒáƒ áƒáƒ¡áƒ¬áƒáƒ áƒ˜ ბáƒáƒ˜áƒ¢áƒ”
msgid "Cache generated by: "
msgstr "ქეშის შემქმნელიáƒ: "
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "ქეშის ფáƒáƒ˜áƒšáƒ˜áƒ¡ გáƒáƒ®áƒ¡áƒœáƒ˜áƒ¡ შეცდáƒáƒ›áƒ: %s\n"
@@ -416,11 +416,11 @@ msgstr "გáƒáƒ–იáƒáƒ áƒ”ბული ბიბლიáƒáƒ—ეკებიáƒ
msgid "DYNAMIC LINKER BUG!!!"
msgstr "დინáƒáƒ›áƒ˜áƒ™áƒ£áƒ áƒ˜ მიმბმელის შეცდáƒáƒ›áƒ!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "დიáƒáƒžáƒáƒ–áƒáƒœáƒ”ბის სიის შექმნრშეუძლებელიáƒ"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "გáƒáƒ–იáƒáƒ áƒ”ბული áƒáƒ‘იექტი ღირáƒáƒ áƒáƒ"
@@ -449,11 +449,11 @@ msgstr "დáƒáƒ›áƒáƒ™áƒ˜áƒ“ებულების სიის გáƒáƒ›áƒá
msgid "cannot allocate symbol search list"
msgstr "სიმბáƒáƒšáƒáƒ”ბის სáƒáƒ«áƒ”ბნი სიის გáƒáƒ›áƒáƒ§áƒáƒ¤áƒ˜áƒ¡ შეცდáƒáƒ›áƒ"
-#: elf/dl-hwcaps.c:104
+#: elf/dl-hwcaps.c:103
msgid "cannot create HWCAP priorities"
msgstr "შეცდáƒáƒ›áƒ HWCAP პრიáƒáƒ áƒ˜áƒ¢áƒ”ტების შექმნისáƒáƒ¡"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "შესáƒáƒ«áƒšáƒ”ბლáƒáƒ‘ების სიის შექმნის შეცდáƒáƒ›áƒ"
@@ -473,91 +473,91 @@ msgstr "შეცდáƒáƒ›áƒ RUNPATH/RPATH-ის áƒáƒ¡áƒšáƒ˜áƒ¡ შექმá
msgid "cannot create search path array"
msgstr "ძებნის ბილიკის მáƒáƒ¡áƒ˜áƒ•ის გáƒáƒ›áƒáƒ§áƒáƒ¤áƒ˜áƒ¡ შეცდáƒáƒ›áƒ"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "გáƒáƒ–იáƒáƒ áƒ”ბული áƒáƒ‘იექტი áƒáƒ¦áƒ›áƒáƒ©áƒ”ნილი áƒáƒ áƒáƒ"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "გáƒáƒ–იáƒáƒ áƒ”ბული áƒáƒ‘იექტის დესკრიპტáƒáƒ áƒ˜áƒ¡ ძებნის შეცდáƒáƒ›áƒ"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "ფáƒáƒ˜áƒšáƒ˜áƒ¡ მáƒáƒœáƒáƒªáƒ”მების წáƒáƒ™áƒ˜áƒ—ხვის შეცდáƒáƒ›áƒ"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "áƒáƒ‘იექტის ფáƒáƒ˜áƒšáƒ¡ ჩáƒáƒ¢áƒ•ირთვáƒáƒ“ი სეგმენტები áƒáƒ  გáƒáƒáƒ©áƒœáƒ˜áƒ"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "გáƒáƒ›áƒ¨áƒ•ები ფáƒáƒ˜áƒšáƒ˜áƒ¡ დინáƒáƒ›áƒ˜áƒ™áƒ£áƒ áƒáƒ“ ჩáƒáƒ¢áƒ•ირთვრშეუძლებელიáƒ"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "áƒáƒ‘იექტის ფáƒáƒ˜áƒšáƒ¡ დინáƒáƒ›áƒ˜áƒ™áƒ£áƒ áƒ˜ სექცირáƒáƒ  გáƒáƒáƒ©áƒœáƒ˜áƒ"
-#: elf/dl-load.c:1289
+#: elf/dl-load.c:1294
msgid "cannot dynamically load position-independent executable"
msgstr "პáƒáƒ–იციáƒ-დáƒáƒ›áƒáƒ£áƒ™áƒ˜áƒ“ებელი გáƒáƒ›áƒ¨áƒ•ების დინáƒáƒ›áƒ˜áƒ™áƒ£áƒ áƒ˜ ჩáƒáƒ¢áƒ•ირთვრშეუძლებელიáƒ"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "გáƒáƒ–იáƒáƒ áƒ”ბული áƒáƒ‘იექტის dlopen() შეუძლებელიáƒ"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "პრáƒáƒ’რáƒáƒ›áƒ˜áƒ¡ თáƒáƒ•სáƒáƒ áƒ—ისáƒáƒ—ვის მეხსიერების გáƒáƒ›áƒáƒ§áƒáƒ¤áƒ˜áƒ¡ შეცდáƒáƒ›áƒ"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "გáƒáƒ¨áƒ•ებáƒáƒ“ი სტეკის ჩáƒáƒ áƒ—ვáƒ, რáƒáƒ’áƒáƒ áƒª áƒáƒ›áƒáƒ¡ გáƒáƒ–იáƒáƒ áƒ”ბული áƒáƒ‘იექტი მáƒáƒ˜áƒ—ხáƒáƒ•ს, შეუძლებელიáƒ"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "ფáƒáƒ˜áƒšáƒ˜áƒ¡ დესკრიპტáƒáƒ áƒ˜áƒ¡ დáƒáƒ®áƒ£áƒ áƒ•ის შეცდáƒáƒ›áƒ"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "ფáƒáƒ˜áƒšáƒ˜ ძáƒáƒšáƒ˜áƒáƒœ მáƒáƒ™áƒšáƒ”áƒ"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "elf-ის áƒáƒ áƒáƒ¡áƒ¬áƒáƒ áƒ˜ თáƒáƒ•სáƒáƒ áƒ—ი"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "ELF-ფáƒáƒ˜áƒšáƒ”ბის მáƒáƒœáƒáƒªáƒ”მების კáƒáƒ“ირებრáƒáƒ  წáƒáƒ áƒ›áƒáƒáƒ“გენს დიდ-ბáƒáƒšáƒáƒ¡"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "ELF-ფáƒáƒ˜áƒšáƒ”ბის მáƒáƒœáƒáƒªáƒ”მების კáƒáƒ“ირებრáƒáƒ  წáƒáƒ áƒ›áƒáƒáƒ“გენს მცირე-ბáƒáƒšáƒáƒ¡"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "ELF ფáƒáƒ˜áƒšáƒ˜áƒ¡ ვერსიის იდენტáƒáƒªáƒ˜áƒ მიმდინáƒáƒ áƒ”ს áƒáƒ  ემთხვევáƒ"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "ELF-ფáƒáƒ˜áƒšáƒ˜áƒ¡ áƒáƒ¡-ის ABI áƒáƒ áƒáƒ¡áƒ¬áƒáƒ áƒ˜áƒ"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "ELF-ფáƒáƒ˜áƒšáƒ˜áƒ¡ áƒáƒ¡-ის ABI-ის ვერსირáƒáƒ áƒáƒ¡áƒ¬áƒáƒ áƒ˜áƒ"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "შიდრშეცდáƒáƒ›áƒ"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "ELF ფáƒáƒ˜áƒšáƒ˜áƒ¡ ვერსირმიმდინáƒáƒ áƒ”ს áƒáƒ  ემთხვევáƒ"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "შესáƒáƒ«áƒšáƒ”ბელირმხáƒáƒšáƒáƒ“ ET_DYN დრET_EXEC-ის ჩáƒáƒ¢áƒ•ირთვáƒ"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "ELF ფáƒáƒ˜áƒšáƒ˜áƒ¡ phentsize მáƒáƒ¡áƒáƒšáƒáƒ“ნელს áƒáƒ  უდრის"
@@ -585,15 +585,15 @@ msgstr "მეხსიერების დáƒáƒªáƒ•ების შეცვá
msgid "cannot map zero-fill pages"
msgstr "ნულებით შევსებული გვერდების მიბმის შეცდáƒáƒ›áƒ"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "სიმბáƒáƒšáƒáƒ¡ მáƒáƒ«áƒ”ბნის შეცდáƒáƒ›áƒ"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "TLS-ის გენერáƒáƒªáƒ˜áƒ˜áƒ¡ მთვლელი გáƒáƒ“áƒáƒ¢áƒáƒœáƒ˜áƒšáƒ˜áƒ! გთხáƒáƒ•თ შეგვáƒáƒ¢áƒ§áƒáƒ‘ინáƒáƒ—."
-#: elf/dl-open.c:716
+#: elf/dl-open.c:717
msgid "cannot allocate address lookup data"
msgstr "მისáƒáƒ›áƒáƒ áƒ—ების ძებნის მáƒáƒœáƒáƒªáƒ”მების გáƒáƒ›áƒáƒ§áƒáƒ¤áƒ˜áƒ¡ შეცდáƒáƒ›áƒ"
@@ -625,7 +625,7 @@ msgstr "reloc-ის შემდეგ სეგმენტის prot-ის
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "კáƒáƒ“ში გáƒáƒ›áƒáƒ§áƒ”ნებული RTLD_NEXT დინáƒáƒ›áƒ˜áƒ™áƒ£áƒ áƒáƒ“ áƒáƒ  იტვირთებáƒ"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "შეცდáƒáƒ›áƒ TLS-ის მáƒáƒœáƒáƒªáƒ”მების სტრუქტურის შექმნისáƒáƒ¡"
@@ -637,173 +637,173 @@ msgstr "ვერსიის მáƒáƒ«áƒ”ბნის შეცდáƒáƒ›áƒ"
msgid "cannot allocate version reference table"
msgstr "ვერსის ბმების ცხრილის გáƒáƒ›áƒáƒ§áƒáƒ¤áƒ˜áƒ¡ შეცდáƒáƒ›áƒ"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "ქეშის დáƒáƒ‘ეჭდვáƒ"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "დáƒáƒ›áƒáƒ¢áƒ”ბითი შეტყáƒáƒ‘ინებების გენერáƒáƒªáƒ˜áƒ"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "ქეშის áƒáƒ¨áƒ”ნების შეცდáƒáƒ›áƒ"
-#: elf/ldconfig.c:128
+#: elf/ldconfig.c:127
msgid "Don't update symbolic links"
msgstr "სიმბმულების გáƒáƒœáƒáƒ®áƒšáƒ”ბის შეცდáƒáƒ›áƒ"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "გáƒáƒ“áƒáƒ“ით დრგáƒáƒ›áƒáƒ˜áƒ§áƒ”ნეთ ROOT, რáƒáƒ’áƒáƒ áƒª root სáƒáƒ¥áƒáƒ¦áƒáƒšáƒ“ე"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "Root"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "კეში"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "CACHE-ის ქეშ ფáƒáƒ˜áƒšáƒáƒ“ გáƒáƒ›áƒáƒ§áƒ”ნებáƒ"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "CONF"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "CONF-ის კáƒáƒœáƒ¤áƒ˜áƒ’ურáƒáƒªáƒ˜áƒ˜áƒ¡ ფáƒáƒ˜áƒšáƒáƒ“ გáƒáƒ›áƒáƒ§áƒ”ნებáƒ"
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "ბიბლიáƒáƒ—ეკების სáƒáƒ—ითáƒáƒáƒ“ მიბმáƒ."
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "FORMAT"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "Format to use: new (default), old, or compat"
msgstr "ფáƒáƒ áƒ›áƒáƒ¢áƒ˜áƒ¡ გáƒáƒ›áƒáƒ§áƒ”ნებáƒ: new (ნáƒáƒ’ულისხმები),old áƒáƒœ compat"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "ქეშის დáƒáƒ›áƒáƒ¢áƒ”ბითი ფáƒáƒ˜áƒšáƒ˜áƒ¡ იგნáƒáƒ áƒ˜áƒ áƒ”ბáƒ"
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "ბილიკი '%s' ერთზე მეტჯერáƒáƒ მითითებული"
-#: elf/ldconfig.c:278
+#: elf/ldconfig.c:277
#, c-format
msgid "(from %s:%d and %s:%d)\n"
msgstr "(%s:%d-დáƒáƒœ დრ%s:%d-დáƒáƒœ)\n"
-#: elf/ldconfig.c:310 elf/ldconfig.c:351
+#: elf/ldconfig.c:309 elf/ldconfig.c:350
#, c-format
msgid "Could not form glibc-hwcaps path"
msgstr "\"glibc-hwcaps\" -ის ბილიკის ჩáƒáƒ›áƒáƒ§áƒáƒšáƒ˜áƒ‘ებრშეუძლებელიáƒ"
-#: elf/ldconfig.c:324
+#: elf/ldconfig.c:323
#, c-format
msgid "Listing directory %s"
msgstr "სáƒáƒ¥áƒáƒ¦áƒáƒšáƒ“ის ჩáƒáƒ›áƒáƒœáƒáƒ—ვáƒáƒšáƒ˜ %s"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "%s-ის stat-ის შეცდáƒáƒ›áƒ"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "%s-ის stat-ის შეცდáƒáƒ›áƒ\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s სიმბáƒáƒšáƒ£áƒ  ბმულს áƒáƒ  წáƒáƒ áƒ›áƒáƒáƒ“გენს\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "ბმულის მáƒáƒ®áƒ¡áƒœáƒ˜áƒ¡ შეცდáƒáƒ›áƒ: %s"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "%s-დáƒáƒœ %s-მდე ბმულის შექმნის შეცდáƒáƒ›áƒ"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (შეცვლილიáƒ)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (გáƒáƒ›áƒáƒ¢áƒáƒ•ებულიáƒ)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "%s-ის პáƒáƒ•ნრშეუძლებელიáƒ"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "%s ის lstat-ის შეცდáƒáƒ›áƒ"
-#: elf/ldconfig.c:701
+#: elf/ldconfig.c:700
#, c-format
msgid " (from %s:%d)\n"
msgstr " (%s:%d-დáƒáƒœ)\n"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "სáƒáƒ¥áƒáƒ¦áƒáƒšáƒ“ის გáƒáƒ®áƒ¡áƒœáƒ˜áƒ¡ შეცდáƒáƒ›áƒ: %s"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "შეყვáƒáƒœáƒ˜áƒ¡ ფáƒáƒ˜áƒšáƒ˜ %s ნáƒáƒžáƒáƒ•ნი áƒáƒ áƒáƒ.\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "%s-ის stat-ის შეცდáƒáƒ›áƒ"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "libc6 ბიბლიáƒáƒ—ეკრáƒáƒ áƒáƒ¡áƒ¬áƒáƒ  სáƒáƒ¥áƒáƒ¦áƒáƒšáƒ“ეშიáƒ: %s"
-#: elf/ldconfig.c:1099
+#: elf/ldconfig.c:1098
#, c-format
msgid "%s:%u: hwcap directive ignored"
msgstr "%s:%u: hwcap დირექტივრიგნáƒáƒ áƒ˜áƒ áƒ”ბულიáƒ"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "მეხსიერებრგáƒáƒ“áƒáƒ•სებულიáƒ"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: სáƒáƒ¥áƒáƒ¦áƒáƒšáƒ“ის წáƒáƒ™áƒ˜áƒ—ხვრშეუძლებელირ%s"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "/-ზე chdir-ის შედáƒáƒ›áƒ"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "ქეშის ფáƒáƒ˜áƒšáƒ˜áƒ¡ სáƒáƒ¥áƒáƒ¦áƒáƒšáƒ“ის (%s) გáƒáƒ®áƒ¡áƒœáƒ˜áƒ¡ შეცდáƒáƒ›áƒ\n"
@@ -1065,47 +1065,47 @@ msgstr "SHOBJ [PROFDATA]"
msgid "failed to load shared object `%s'"
msgstr "გáƒáƒ–იáƒáƒ áƒ”ბული áƒáƒ‘იექტის (%s) ჩáƒáƒ¢áƒ•ირთვის შეცდáƒáƒ›áƒ"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "შიდრდესკრიპტáƒáƒ áƒ˜áƒ¡ შექმნის შეცდáƒáƒ›áƒ"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "სექციების თáƒáƒ•სáƒáƒ áƒ—ების წáƒáƒ™áƒ˜áƒ—ხვის შეცდáƒáƒ›áƒ"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "სექციების თáƒáƒ•სáƒáƒ áƒ—ის სტრიქáƒáƒœáƒ˜áƒ¡ ცხრილის წáƒáƒ™áƒ˜áƒ—ხვის შეცდáƒáƒ›áƒ"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "ფáƒáƒ˜áƒšáƒ˜áƒ¡ სáƒáƒ®áƒ”ლის გáƒáƒ áƒ™áƒ•ევრშეუძლებელიáƒ"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "elf-ის თáƒáƒ•სáƒáƒ áƒ—ის კითხვის შეცდáƒáƒ›áƒ"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "სიმბáƒáƒšáƒáƒ”ბის მáƒáƒœáƒáƒªáƒ”მების ჩáƒáƒ¢áƒ•ირთვის შეცდáƒáƒ›áƒ"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "პრáƒáƒ¤áƒ˜áƒšáƒ˜áƒ áƒ”ბის მáƒáƒœáƒáƒªáƒ”მების ჩáƒáƒ¢áƒ•ირთვის შეცდáƒáƒ›áƒ"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "პრáƒáƒ¤áƒ˜áƒšáƒ˜áƒ áƒ”ბის მáƒáƒœáƒáƒªáƒ”მების ფáƒáƒ˜áƒšáƒ˜áƒ¡ stat()-ის დრáƒáƒ¡"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "სიმბáƒáƒšáƒáƒ”ბის მáƒáƒœáƒáƒªáƒ”მების გáƒáƒ›áƒáƒ§áƒáƒ¤áƒ˜áƒ¡ შეცდáƒáƒ›áƒ"
@@ -1723,39 +1723,39 @@ msgstr "ენის áƒáƒ áƒ¥áƒ˜áƒ•ის áƒáƒ¦áƒ›áƒáƒ©áƒ”ნის შეც
msgid "cannot lock locale archive \"%s\""
msgstr "ენის áƒáƒ áƒ¥áƒ˜áƒ•ის დáƒáƒ‘ლáƒáƒ™áƒ•ის შეცდáƒáƒ›áƒ: %s"
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "áƒáƒ áƒ¥áƒ˜áƒ•ის თáƒáƒ•სáƒáƒ áƒ—ის წáƒáƒ™áƒ˜áƒ—ხვის შეცდáƒáƒ›áƒ"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "ენრუკვე áƒáƒ áƒ¡áƒ”ბáƒáƒ‘ს: '%s'"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "ლáƒáƒ™áƒáƒšáƒ˜áƒ–áƒáƒªáƒ˜áƒ˜áƒ¡ áƒáƒ áƒ¥áƒ˜áƒ•ში ჩáƒáƒ›áƒáƒ¢áƒ”ბრშეუძლებელიáƒ"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "%s-ის დáƒáƒ›áƒáƒ¢áƒ”ბáƒ\n"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "\"%s\" სáƒáƒ¥áƒáƒ¦áƒáƒšáƒ“ე áƒáƒ áƒáƒ. გáƒáƒ›áƒáƒ¢áƒáƒ•ებáƒ"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "სáƒáƒ¥áƒáƒ¦áƒáƒšáƒ“ის გáƒáƒ®áƒ¡áƒœáƒ˜áƒ¡ შეცდáƒáƒ›áƒ: %s: %s: გáƒáƒ›áƒáƒ¢áƒáƒ•ებულიáƒ"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "ენრ\"%s\" áƒáƒ áƒ¥áƒ˜áƒ•ში áƒáƒ  áƒáƒ áƒ¡áƒ”ბáƒáƒ‘ს"
diff --git a/po/ko.po b/po/ko.po
index a6713bc..c565961 100644
--- a/po/ko.po
+++ b/po/ko.po
@@ -6,9 +6,9 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: GNU libc 2.40.9000\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
-"PO-Revision-Date: 2025-01-08 09:33+0900\n"
+"Project-Id-Version: GNU libc 2.41.9000\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
+"PO-Revision-Date: 2025-07-21 09:05+0900\n"
"Last-Translator: Changwoo Ryu <cwryu@debian.org>\n"
"Language-Team: Korean <translation-team-ko@googlegroups.com>\n"
"Language: ko\n"
@@ -97,7 +97,7 @@ msgstr "(프로그램 오류) ë²„ì „ì„ ì•Œ 수 없습니다!?"
msgid "%s: Too many arguments\n"
msgstr "%s: ì¸ìžê°€ 너무 ë§ŽìŒ\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(프로그램 오류) ì˜µì…˜ì„ ì•Œ 수 있어야 합니다!?"
@@ -139,7 +139,7 @@ msgstr ""
"-o <출력-파ì¼> [<ìž…ë ¥-파ì¼>]...\n"
"[<출력-파ì¼> [<ìž…ë ¥-파ì¼>]...]"
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -154,7 +154,7 @@ msgstr ""
"%s.\n"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -170,7 +170,7 @@ msgstr ""
"ì´ë‚˜ 특정 목ì ì— 대한 ì í•©ì„±ì„ 비롯하여 어떠한 ë³´ì¦ë„ 하지 않습니다.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -400,7 +400,7 @@ msgstr "ìºì‹œ 파ì¼ì˜ 엔디안 ê°’ì´ ìž˜ëª»ë˜ì—ˆìŠµë‹ˆë‹¤.\n"
msgid "Cache generated by: "
msgstr "ìºì‹œ ìƒì„±: "
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "ìºì‹œ íŒŒì¼ `%s'ì„(를) ì—´ 수 없습니다\n"
@@ -469,11 +469,11 @@ msgstr "ë™ì  ë¼ì´ë¸ŒëŸ¬ë¦¬ë¥¼ ì½ì–´ë“¤ì´ëŠ”ë° ì˜¤ë¥˜ê°€ ë°œìƒí–ˆìŠµë‹ˆë‹
msgid "DYNAMIC LINKER BUG!!!"
msgstr "ë™ì  ë§ì»¤ 버그!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "스코프 목ë¡ì„ 만들 수 없습니다"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "공유 오브ì íŠ¸ê°€ 열리지 않았습니다"
@@ -506,13 +506,13 @@ msgstr "기호 검색 리스트를 할당할 수 없습니다"
# 번역: capability는 DBì—서 authenticationì„ ì¤„ì´ê¸° 위해 쓰는 것..
# 가까운 DB책 참조.
-#: elf/dl-hwcaps.c:104
+#: elf/dl-hwcaps.c:103
msgid "cannot create HWCAP priorities"
msgstr "HWCAP 우선순위를 만들 수 없습니다"
# 번역: capability는 DBì—서 authenticationì„ ì¤„ì´ê¸° 위해 쓰는 것..
# 가까운 DB책 참조.
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "ì¼€ì´í¼ë¹Œë¦¬í‹° 리스트를 만들 수 없습니다"
@@ -532,99 +532,99 @@ msgstr "RUNPATH/RPATH 카피를 만들 수 없습니다"
msgid "cannot create search path array"
msgstr "검색 경로 ë°°ì—´ì„ ë§Œë“¤ 수 없습니다"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "ë™ì  오브ì íŠ¸ì— ëŒ€í•´ stat()ì´ ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "공유 오브ì íЏ 디스í¬ë¦½í„°ë¥¼ 만들 수 없습니다"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "íŒŒì¼ ë°ì´í„°ë¥¼ ì½ì„ 수 없습니다"
-#: elf/dl-load.c:1138 elf/dl-map-segments.h:117
+#: elf/dl-load.c:1143 elf/dl-map-segments.h:118
msgid "ELF load command address/offset not page-aligned"
msgstr "ELF 로드 ëª…ë ¹ì˜ ì£¼ì†Œ/ì˜¤í”„ì…‹ì´ alignë˜ì–´ 있지 않습니다"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "오브ì íЏ 파ì¼ì— ì½ì–´ë“¤ì¼ 수 있는 ì„¹ì…˜ì´ ì—†ìŠµë‹ˆë‹¤"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "ë™ì ìœ¼ë¡œ 실행파ì¼ì„ ì½ì–´ë“¤ì¼ 수 없습니다"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "오브ì íЏ 파ì¼ì— ë™ì  ì„¹ì…˜ì´ ì—†ìŠµë‹ˆë‹¤"
-#: elf/dl-load.c:1289
+#: elf/dl-load.c:1294
msgid "cannot dynamically load position-independent executable"
msgstr "위치 ë…립 실행 파ì¼ì„ ë™ì ìœ¼ë¡œ ì½ì–´ë“¤ì¼ 수 없습니다"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "ë™ì  오브ì íŠ¸ëŠ” dlopen()ë  ìˆ˜ 없습니다"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "프로그램 í—¤ë”ì— ëŒ€í•œ 메모리를 할당할 수 없습니다"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "실행할 수 있는 스íƒì„ 공유 오브ì íЏ 필수요소로 만들 수 없습니다"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "íŒŒì¼ ë””ìŠ¤í¬ë¦½í„°ë¥¼ ë‹«ì„ ìˆ˜ 없습니다"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "파ì¼ì´ 너무 짧습니다"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "ELF í—¤ë”ê°€ 잘못ë¨"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "ELF íŒŒì¼ ë°ì´í„° ì¸ì½”ë”©ì´ ë¹…ì¸ë””ì•ˆì´ ì•„ë‹™ë‹ˆë‹¤"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "ELF íŒŒì¼ ë°ì´í„° ì¸ì½”ë”©ì´ ë¦¬í‹€ì¸ë””ì•ˆì´ ì•„ë‹™ë‹ˆë‹¤"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "ELF íŒŒì¼ ë²„ì „ identê°€ 현재 ident와 ë§žì§€ 않습니다"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "ELF íŒŒì¼ OS ABIê°€ 잘못ë˜ì—ˆìŠµë‹ˆë‹¤"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "ELF íŒŒì¼ ABI ë²„ì „ì´ ìž˜ëª»ë˜ì—ˆìŠµë‹ˆë‹¤"
-#: elf/dl-load.c:1669
+#: elf/dl-load.c:1670
msgid "nonzero padding in e_ident"
msgstr "e_ident ì•ˆì— 0ì´ ì•„ë‹Œ 채움"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "내부 오류"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "ELF íŒŒì¼ ë²„ì „ì´ í˜„ìž¬ 버전과 ë§žì§€ 않습니다"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "ET_DYNê³¼ ET_EXECë§Œì„ ì½ì–´ë“¤ì¼ 수 있습니다"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "ELF 파ì¼ì˜ phentsizeê°€ 예ìƒê³¼ ë§žì§€ 않습니다"
@@ -652,19 +652,19 @@ msgstr "메모리 보호를 바꿀 수 없습니다"
msgid "cannot map zero-fill pages"
msgstr "0으로 채운 페ì´ì§€ë¥¼ 매핑할 수 없습니다"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "심볼 찾기 오류"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "전역 스코프를 확장할 수 없습니다"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "TLS 만들기 ì¹´ìš´í„°ê°€ 겹쳤습니다! ì´ ë¬¸ì œë¥¼ 알려 주십시오."
-#: elf/dl-open.c:716
+#: elf/dl-open.c:717
msgid "cannot allocate address lookup data"
msgstr "주소 조회 ë°ì´í„°ë¥¼ 할당할 수 없습니다"
@@ -705,7 +705,7 @@ msgstr "리로케ì´ì…˜ ë’¤ì— ì¶”ê°€ë¡œ 메모리 보호를 ì ìš©í•  수 ì—†ìŠ
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "ë™ì ìœ¼ë¡œ ì ìž¬í•˜ì§€ ì•Šì€ ì½”ë“œì— RTLD_NEXT를 사용함"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "TLS ë°ì´í„° 구조를 만들 수 없습니다"
@@ -717,220 +717,220 @@ msgstr "버전 찾기 오류"
msgid "cannot allocate version reference table"
msgstr "버전 참조 í…Œì´ë¸”ì„ í• ë‹¹í•  수 없습니다"
-#: elf/dl-version.c:380
+#: elf/dl-version.c:387
msgid "DT_RELR without GLIBC_ABI_DT_RELR dependency"
msgstr "GLIBC_ABI_DT_RELR ì˜ì¡´ì„± ì—†ì´ DT_RELR 있습니다"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "ìºì‹œ 표시"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "ë” ë§Žì€ ë©”ì‹œì§€ 표시"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "ìºì‹œë¥¼ 만들지 않ìŒ"
-#: elf/ldconfig.c:128
+#: elf/ldconfig.c:127
msgid "Don't update symbolic links"
msgstr "심볼릭 ë§í¬ë¥¼ ì—…ë°ì´íŠ¸í•˜ì§€ 않습니다"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "<루트>로 ì´ë™í•œ ë‹¤ìŒ <루트>를 루트 디렉터리로 사용합니다"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "<루트>"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "<ìºì‹œ>"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "ìºì‹œ 파ì¼ë¡œ <ìºì‹œ>를 사용합니다"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "<설정>"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "설정 파ì¼ë¡œ <설정>ì„ ì‚¬ìš©í•©ë‹ˆë‹¤"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "ëª…ë ¹í–‰ì— ì§€ì •í•œ 디렉터리만 처리합니다. ìºì‹œë¥¼ 만들지 않습니다."
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "수ë™ìœ¼ë¡œ ê°ê°ì˜ ë¼ì´ë¸ŒëŸ¬ë¦¬ë¥¼ ë§í¬í•˜ì‹­ì‹œì˜¤."
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "<형ì‹>"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "Format to use: new (default), old, or compat"
msgstr "사용할 수 있는 형ì‹: new (기본값), old, compat"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "ë³´ì¡° ìºì‹œ íŒŒì¼ ë¬´ì‹œ"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "ë™ì  ë§ì»¤ì˜ 런타임 ë°”ì¸ë”©ì„ 설정합니다."
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "`%s' 경로가 여러번 주어졌습니다"
-#: elf/ldconfig.c:278
+#: elf/ldconfig.c:277
#, c-format
msgid "(from %s:%d and %s:%d)\n"
msgstr "(%s:%d ë° %s:%dì—서)\n"
-#: elf/ldconfig.c:310 elf/ldconfig.c:351
+#: elf/ldconfig.c:309 elf/ldconfig.c:350
#, c-format
msgid "Could not form glibc-hwcaps path"
msgstr "glibc-hwcaps 경로를 구성할 수 없습니다"
-#: elf/ldconfig.c:324
+#: elf/ldconfig.c:323
#, c-format
msgid "Listing directory %s"
msgstr "%s 디렉터리 ëª©ë¡ ë³´ê¸°"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "%sì— stat()í•  수 없습니다"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "%sì— stat()í•  수 없습니다\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%sì€(는) 심볼릭 ë§í¬ê°€ 아닙니다\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "%sì„(를) 지울 수 없습니다"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "%sì„(를) %s(으)로 ë§í¬í•  수 없습니다"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (바뀜)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (지나침)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "%sì„(를) ì°¾ì„ ìˆ˜ 없습니다"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "%sì— lstat()í•  수 없습니다"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "ì¼ë°˜ 파ì¼ì´ 아니므로 %s 파ì¼ì„ 무시합니다."
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "%sì— ëŒ€í•œ sonameì„ ì°¾ì„ ìˆ˜ 없으므로 ë§í¬ë¥¼ 만들지 않습니다"
-#: elf/ldconfig.c:701
+#: elf/ldconfig.c:700
#, c-format
msgid " (from %s:%d)\n"
msgstr " (%s:%dì—서)\n"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "디렉터리 %sì„(를) ì—´ 수 없습니다"
-#: elf/ldconfig.c:743 elf/ldconfig.c:748
+#: elf/ldconfig.c:742 elf/ldconfig.c:747
#, c-format
msgid "Could not form library path"
msgstr "ë¼ì´ë¸ŒëŸ¬ë¦¬ 경로를 구성할 수 없습니다"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "ìž…ë ¥ íŒŒì¼ %sì„(를) 찾지 못했습니다.\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "%sì— stat()í•  수 없습니다"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "libc6 library %sì´(ê°€) ìž˜ëª»ëœ ë””ë ‰í„°ë¦¬ì— ìžˆìŠµë‹ˆë‹¤"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "디렉터리 %sì˜ ë¼ì´ë¸ŒëŸ¬ë¦¬ %sê³¼(와) %sì´(ê°€) ê°™ì€ sonameì„ ê°€ì§€ê³  있지만 íƒ€ìž…ì´ ë‹¤ë¦…ë‹ˆë‹¤."
-#: elf/ldconfig.c:1051
+#: elf/ldconfig.c:1050
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr "경고: ì—´ 수 없는 설정 파ì¼ì„ 무시합니다: %s"
-#: elf/ldconfig.c:1099
+#: elf/ldconfig.c:1098
#, c-format
msgid "%s:%u: hwcap directive ignored"
msgstr "%s:%u: hwcap 지시어 무시합니다"
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "-r ì˜µì…˜ì„ ì‚¬ìš©í•  경우 설정 파ì¼ì˜ 절대 íŒŒì¼ ì´ë¦„ì´ í•„ìš”í•©ë‹ˆë‹¤"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "메모리가 바닥남"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: %s 디렉터리를 ì½ì„ 수 없습니다"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "ìºì‹œë¥¼ ë§Œë“œëŠ”ë° ìƒëŒ€ ê²½ë¡œì¸ `%s' 경로를 사용했습니다"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "/로 디렉터리를 ì´ë™í•  수 없습니다"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "ìºì‹œ íŒŒì¼ ë””ë ‰í„°ë¦¬ `%s'ì„(를) ì—´ 수 없습니다\n"
@@ -1282,82 +1282,82 @@ msgstr "SHOBJ [PROFDATA]"
msgid "failed to load shared object `%s'"
msgstr "ë™ì  오브ì íЏ `%s'ì„(를) ì½ëŠ”ë° ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "ë‚´ë¶€ 디스í¬ë¦½í„°ë¥¼ 만들 수 없습니다"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "ë™ì  오브ì íЏ `%s'ì„(를) 다시 여는 ë° ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "섹션 í—¤ë”를 ì½ëŠ” ë° ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "섹션 í—¤ë” ë¬¸ìžì—´ í…Œì´ë¸”ì„ ì½ëŠ” ë° ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤"
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** 디버깅정보 íŒŒì¼ ì´ë¦„ì„ ì½ì„ 수 없습니다: %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "íŒŒì¼ ì´ë¦„ì„ íŒŒì•…í•  수 없습니다"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "ELF í—¤ë”를 ì½ëŠ” ë° ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** `%s' 파ì¼ì€ 디버깅 정보를 제거한 파ì¼ìž…니다: ë” ìžì„¸í•œ ë¶„ì„ì€ ë¶ˆê°€ëŠ¥í•©ë‹ˆë‹¤\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "기호 ë°ì´í„°ë¥¼ ì½ëŠ” ë° ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "프로파ì¼ë§ ë°ì´í„°ë¥¼ ì½ì„ 수 없습니다"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "프로파ì¼ë§ ë°ì´í„° 파ì¼ì„ 쓰는 ë™ì•ˆ"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "프로파ì¼ë§ ë°ì´í„° íŒŒì¼ `%s'ì€(는) ë™ì  오브ì íЏ `%s'ê³¼(와) ë§žì§€ 않습니다"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "프로파ì¼ë§ ë°ì´í„° 파ì¼ì„ mmap하는 ë° ì‹¤íŒ¨"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "프로파ì¼ë§ ë°ì´í„° 파ì¼ì„ 닫는 ë„중 오류 ë°œìƒ"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "`%s'ì€(는) `%s'ì— ë§žëŠ” í”„ë¡œíŒŒì¼ ë°ì´í„° 파ì¼ì´ 아닙니다"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "기호 ë°ì´í„°ë¥¼ 할당할 수 없습니다"
@@ -2868,7 +2868,7 @@ msgid "cannot resize archive file"
msgstr "ì•„ì¹´ì´ë¸Œ 파ì¼ì˜ í¬ê¸°ë¥¼ 바꿀 수 없습니다"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "ì•„ì¹´ì´ë¸Œ í—¤ë”를 매핑할 수 없습니다"
@@ -2927,64 +2927,70 @@ msgstr "\"%s\" 로캘 ì•„ì¹´ì´ë¸Œì˜ 정보를 ì½ì„ 수 없습니다"
msgid "cannot lock locale archive \"%s\""
msgstr "\"%s\" 로캘 ì•„ì¹´ì´ë¸Œë¥¼ 잠글 수 없습니다"
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:642 locale/programs/locarchive.c:656
+#: locale/programs/locarchive.c:664 locale/programs/locarchive.c:685
+#, c-format
+msgid "cannot unlock archive header"
+msgstr "ì•„ì¹´ì´ë¸Œ í—¤ë”를 잠금 해제할 수 없습니다"
+
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "ì•„ì¹´ì´ë¸Œ í—¤ë”를 ì½ì„ 수 없습니다"
-#: locale/programs/locarchive.c:661
+#: locale/programs/locarchive.c:665
#, c-format
msgid "bad magic value in archive header"
msgstr "ì•„ì¹´ì´ë¸Œ í—¤ë”ì— ë§¤ì§ê°’ì´ ìž˜ëª»ë˜ì—ˆìŠµë‹ˆë‹¤"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "'%s' ë¡œìº˜ì€ ì´ë¯¸ 있습니다"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "로캘 ì•„ì¹´ì´ë¸Œì— ë”í•  수 없습니다"
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "`%s' 로캘 별명 파ì¼ì„ ì°¾ì„ ìˆ˜ 없습니다"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "%s 추가하는 중입니다\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "\"%s\"ì˜ ì •ë³´ë¥¼ ì½ëŠ” ë° ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤: %s: 무시합니다"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "\"%s\" 파ì¼ì€ 디렉터리가 아닙니다: 무시합니다"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "\"%s\" 디렉터리를 열 수 없습니다: %s: 무시합니다"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "\"%s\" ì•ˆì— ë“¤ì–´ 있는 로캘 파ì¼ì´ 불완전합니다"
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "\"%s\" ì•ˆì˜ ëª¨ë“  파ì¼ì„ ì½ì„ 수 없습니다: 무시합니다"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "\"%s\" ë¡œìº˜ì€ ì•„ì¹´ì´ë¸Œì— 없습니다"
diff --git a/po/libc.pot b/po/libc.pot
index b7aeab5..1ed1c52 100644
--- a/po/libc.pot
+++ b/po/libc.pot
@@ -5,8 +5,8 @@
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: libc 2.40.9000\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
+"Project-Id-Version: libc 2.41.9000\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -96,7 +96,7 @@ msgstr ""
msgid "%s: Too many arguments\n"
msgstr ""
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr ""
@@ -135,7 +135,7 @@ msgid ""
"[OUTPUT-FILE [INPUT-FILE]...]"
msgstr ""
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -148,7 +148,7 @@ msgid ""
msgstr ""
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -161,7 +161,7 @@ msgid ""
msgstr ""
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -383,7 +383,7 @@ msgstr ""
msgid "Cache generated by: "
msgstr ""
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr ""
@@ -452,11 +452,11 @@ msgstr ""
msgid "DYNAMIC LINKER BUG!!!"
msgstr ""
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr ""
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr ""
@@ -487,11 +487,11 @@ msgstr ""
msgid "cannot allocate symbol search list"
msgstr ""
-#: elf/dl-hwcaps.c:104
+#: elf/dl-hwcaps.c:103
msgid "cannot create HWCAP priorities"
msgstr ""
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr ""
@@ -511,99 +511,99 @@ msgstr ""
msgid "cannot create search path array"
msgstr ""
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr ""
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr ""
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr ""
-#: elf/dl-load.c:1138 elf/dl-map-segments.h:117
+#: elf/dl-load.c:1143 elf/dl-map-segments.h:118
msgid "ELF load command address/offset not page-aligned"
msgstr ""
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr ""
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr ""
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr ""
-#: elf/dl-load.c:1289
+#: elf/dl-load.c:1294
msgid "cannot dynamically load position-independent executable"
msgstr ""
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr ""
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr ""
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr ""
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr ""
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr ""
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr ""
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr ""
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr ""
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr ""
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr ""
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr ""
-#: elf/dl-load.c:1669
+#: elf/dl-load.c:1670
msgid "nonzero padding in e_ident"
msgstr ""
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr ""
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr ""
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr ""
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr ""
@@ -631,19 +631,19 @@ msgstr ""
msgid "cannot map zero-fill pages"
msgstr ""
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr ""
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr ""
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr ""
-#: elf/dl-open.c:716
+#: elf/dl-open.c:717
msgid "cannot allocate address lookup data"
msgstr ""
@@ -684,7 +684,7 @@ msgstr ""
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr ""
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr ""
@@ -696,222 +696,222 @@ msgstr ""
msgid "cannot allocate version reference table"
msgstr ""
-#: elf/dl-version.c:380
+#: elf/dl-version.c:387
msgid "DT_RELR without GLIBC_ABI_DT_RELR dependency"
msgstr ""
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr ""
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr ""
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr ""
-#: elf/ldconfig.c:128
+#: elf/ldconfig.c:127
msgid "Don't update symbolic links"
msgstr ""
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr ""
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr ""
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr ""
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr ""
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr ""
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr ""
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid ""
"Only process directories specified on the command line. Don't build cache."
msgstr ""
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr ""
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr ""
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "Format to use: new (default), old, or compat"
msgstr ""
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr ""
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr ""
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr ""
-#: elf/ldconfig.c:278
+#: elf/ldconfig.c:277
#, c-format
msgid "(from %s:%d and %s:%d)\n"
msgstr ""
-#: elf/ldconfig.c:310 elf/ldconfig.c:351
+#: elf/ldconfig.c:309 elf/ldconfig.c:350
#, c-format
msgid "Could not form glibc-hwcaps path"
msgstr ""
-#: elf/ldconfig.c:324
+#: elf/ldconfig.c:323
#, c-format
msgid "Listing directory %s"
msgstr ""
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr ""
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr ""
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr ""
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr ""
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr ""
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr ""
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr ""
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr ""
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr ""
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr ""
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr ""
-#: elf/ldconfig.c:701
+#: elf/ldconfig.c:700
#, c-format
msgid " (from %s:%d)\n"
msgstr ""
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr ""
-#: elf/ldconfig.c:743 elf/ldconfig.c:748
+#: elf/ldconfig.c:742 elf/ldconfig.c:747
#, c-format
msgid "Could not form library path"
msgstr ""
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr ""
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr ""
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr ""
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid ""
"libraries %s and %s in directory %s have same soname but different type."
msgstr ""
-#: elf/ldconfig.c:1051
+#: elf/ldconfig.c:1050
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr ""
-#: elf/ldconfig.c:1099
+#: elf/ldconfig.c:1098
#, c-format
msgid "%s:%u: hwcap directive ignored"
msgstr ""
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr ""
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr ""
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr ""
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr ""
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr ""
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr ""
@@ -1241,82 +1241,82 @@ msgstr ""
msgid "failed to load shared object `%s'"
msgstr ""
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr ""
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr ""
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr ""
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr ""
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr ""
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr ""
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr ""
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr ""
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr ""
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr ""
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr ""
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr ""
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr ""
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr ""
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr ""
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr ""
@@ -2821,7 +2821,7 @@ msgid "cannot resize archive file"
msgstr ""
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr ""
@@ -2880,64 +2880,70 @@ msgstr ""
msgid "cannot lock locale archive \"%s\""
msgstr ""
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:642 locale/programs/locarchive.c:656
+#: locale/programs/locarchive.c:664 locale/programs/locarchive.c:685
+#, c-format
+msgid "cannot unlock archive header"
+msgstr ""
+
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr ""
-#: locale/programs/locarchive.c:661
+#: locale/programs/locarchive.c:665
#, c-format
msgid "bad magic value in archive header"
msgstr ""
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr ""
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr ""
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr ""
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr ""
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr ""
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr ""
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr ""
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr ""
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr ""
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr ""
diff --git a/po/lt.po b/po/lt.po
index 238fac8..3987ffb 100644
--- a/po/lt.po
+++ b/po/lt.po
@@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: libc-2.7\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
"PO-Revision-Date: 2009-02-12 05:24+0200\n"
"Last-Translator: Gintautas Miliauskas <gintas@akl.lt>\n"
"Language-Team: Lithuanian <komp_lt@konferencijos.lt>\n"
@@ -89,7 +89,7 @@ msgstr "(PROGRAM ERROR) Nežinoma jokia versija!?"
msgid "%s: Too many arguments\n"
msgstr "%s: Per daug argumentų\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(PROGRAM ERROR) Parametras turėjo būti atpažintas!?"
@@ -124,7 +124,7 @@ msgstr ""
"[IŠVEDIMO-FAILAS [DUOMENŲ-FAILAS]...]"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -214,7 +214,7 @@ msgstr "nepalaikoma dlinfo užklausa"
msgid "invalid mode"
msgstr "netaisyklinga veiksena"
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Nepavyko atverti podÄ—lio failo %s\n"
@@ -238,7 +238,7 @@ msgstr "%s pervadinimas į %s nesėkmingas"
msgid "error while loading shared libraries"
msgstr "klaida įkeliant bendrąsias bibliotekas"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "bendrasis objektas neatvertas"
@@ -246,63 +246,63 @@ msgstr "bendrasis objektas neatvertas"
msgid "DST not allowed in SUID/SGID programs"
msgstr "DST neleidžiamas SUID/SGID programose"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "nepavyko nuskaityti failo duomenų"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "objektiniame faile nėra įkeliamų segmentų"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "objektiniame faile nÄ—ra dinaminÄ—s sekcijos"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "bendrasis objektas negali būti atvertas su dlopen()"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "nepavyko išskirti atminties programos antraštei"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "nepavyko užverti failo deskriptoriaus"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "failas per trumpas"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "netaisyklinga ELF antraštė"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "ELF failo duomenų koduotė ne big-endian"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "ELF failo duomenų koduotė ne little-endian"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "ELF failo versijos identifikatorius neatitinka esamo"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "ELF failo OS ABI netaisyklingas"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "ELF failo ABI versija netaisyklinga"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "vidinÄ— klaida"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "ELF failo versija neatitinka esamos"
@@ -318,11 +318,11 @@ msgstr "klaidinga ELF klasÄ—: ELFCLASS32"
msgid "cannot open shared object file"
msgstr "nepavyko atverti bendrojo objekto failo"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "simbolio paieškos klaida"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "TLS kartų skaitiklis persivertė! Prašytume apie tai pranešti."
@@ -330,123 +330,123 @@ msgstr "TLS kartų skaitiklis persivertė! Prašytume apie tai pranešti."
msgid "invalid mode for dlopen()"
msgstr "netaisyklinga veiksena dlopen()"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "nepavyko sukurti TLS duomenų struktūrų"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "Spausdinti podėlį"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "Generuoti išsamius pranešimus"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "Nekurti podÄ—lio"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "Naudoti ŠAKNĮ kaip šakninį aplanką"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "Å AKNIS"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "PODÄ–LIS"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "Naudoti PODÄ–LÄ® kaip podÄ—lio failÄ…"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "KONF"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "Naudoti KONF kaip konfigūracijos failą"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "Apdoroti tik aplankus, nurodytus komandų eilutėje. Nekurti podėlio."
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "Rankiniu būdu susaistyti (link) atskiras bibliotekas."
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "FORMATAS"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "Ignoruoti pagalbinį podėlio failą"
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "Kelias „%s“ nurodytas daugiau negu vieną kartą"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s nÄ—ra simbolinÄ— nuoroda\n"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "Nepavyko susaistyti (link) %s su %s"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (pakeista)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (PRALEISTA)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "Nepavyko rasti %s"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "Failas %s praleistas, nes tai nÄ—ra paprastas failas"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "Nepavyko atverti aplanko %s"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "Įvedimo failas %s nerastas.\n"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "libc6 biblioteka %s ne tame aplanke"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "baigÄ—si atmintis"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: nepavyko atverti aplanko %s"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "Nepavyko atverti podÄ—lio failo aplanko %s\n"
diff --git a/po/nb.po b/po/nb.po
index a5fe4fd..0a24e80 100644
--- a/po/nb.po
+++ b/po/nb.po
@@ -7,7 +7,7 @@
msgid ""
msgstr ""
"Project-Id-Version: libc 2.3.2\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
"PO-Revision-Date: 2003-08-28 09:27+0100\n"
"Last-Translator: Eivind Tagseth <eivindt@multinet.no>\n"
"Language-Team: Norwegian <i18n-nb@lister.ping.uio.no>\n"
@@ -93,7 +93,7 @@ msgstr "(PROGRAMFEIL) Ingen versjon kjent!?"
msgid "%s: Too many arguments\n"
msgstr "%s: For mange argumenter\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(PROGRAMFEIL) Flagg skulle ha blitt gjenkjent!?"
@@ -124,7 +124,7 @@ msgstr ""
"[UTFIL [INNFIL]...]"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -141,7 +141,7 @@ msgstr ""
"TIL NOEN SPESIELL OPPGAVE.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -216,7 +216,7 @@ msgstr "ugyldig modus for dlopen()"
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "RTLD_NEXT brukt i kode som ikke er dynamisk lastet"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
@@ -243,57 +243,57 @@ msgstr "generer kall-graf"
msgid "failed to load shared object `%s'"
msgstr "klarte ikke å laste delt objekt «%s»"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "kan ikke opprette intern deskriptor"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "Gjenåpning av delt objekt «%s» feilet"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** Filen «%s» er strippet: ingen detaljert analyse mulig\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "klarte ikke å laste symboldata"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "kan ikke laste inn profileringsdata"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "under stat() av profileringsdatafil"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "profileringsdatafil «%s» passer ikke med del objekt «%s»"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "klarte ikke å mmap'e filen med profileringsdata"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "feil ved lukking av datafilen for profilering"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "«%s» er ikke korrekt profildatafil for «%s»"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "kan ikke allokere symboldata"
diff --git a/po/nl.po b/po/nl.po
index 385b310..646c78d 100644
--- a/po/nl.po
+++ b/po/nl.po
@@ -13,7 +13,7 @@ msgid ""
msgstr ""
"Project-Id-Version: libc-2.40.9000\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
"PO-Revision-Date: 2025-01-06 15:44+0100\n"
"Last-Translator: Benno Schulenberg <vertaling@coevern.nl>\n"
"Language-Team: Dutch <vertaling@vrijschrift.org>\n"
@@ -108,7 +108,7 @@ msgstr "**Interne programmafout**: geen versie bekend!?"
msgid "%s: Too many arguments\n"
msgstr "%s: Te veel argumenten\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "**Interne programmafout**: optie had herkend moeten worden!?"
@@ -151,7 +151,7 @@ msgstr ""
"-o UITVOERBESTAND [INVOERBESTAND...]\n"
"[UITVOERBESTAND [INVOERBESTAND...]]"
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -166,7 +166,7 @@ msgstr ""
" %s.\n"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -183,7 +183,7 @@ msgstr ""
"VOOR EEN BEPAALD DOEL.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -414,7 +414,7 @@ msgstr "Cache-bestand heeft verkeerde endianness.\n"
msgid "Cache generated by: "
msgstr "Cache is gegenereerd door: "
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Kan cachebestand %s niet openen\n"
@@ -483,11 +483,11 @@ msgstr "fout bij laden van gedeelde bibliotheken"
msgid "DYNAMIC LINKER BUG!!!"
msgstr "FOUT IN DYNAMISCHE LINKER!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "kan lijst voor geldigheidsbereik niet aanmaken"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "gedeeld object is niet open"
@@ -516,11 +516,11 @@ msgstr "kan geen geheugen reserveren voor afhankelijkhedenlijst"
msgid "cannot allocate symbol search list"
msgstr "kan geen geheugen reserveren voor symbolenzoeklijst"
-#: elf/dl-hwcaps.c:104
+#: elf/dl-hwcaps.c:103
msgid "cannot create HWCAP priorities"
msgstr "kan HWCAP-prioriteiten niet aanmaken"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "kan privilegeslijst niet aanmaken"
@@ -540,99 +540,99 @@ msgstr "kan geen kopie van RUNPATH/RPATH maken"
msgid "cannot create search path array"
msgstr "kan zoekpad-array niet aanmaken"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "kan gedeeld object niet vinden"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "kan descriptor voor gedeeld object niet aanmaken"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "kan bestandsgegevens niet lezen"
-#: elf/dl-load.c:1138 elf/dl-map-segments.h:117
+#: elf/dl-load.c:1143 elf/dl-map-segments.h:118
msgid "ELF load command address/offset not page-aligned"
msgstr "adres/positie in ELF-laadopdracht is niet pagina-uitgelijnd"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "objectbestand heeft geen laadbare segmenten"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "kan uitvoerbaar bestand niet dynamisch laden"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "objectbestand heeft geen dynamische sectie"
-#: elf/dl-load.c:1289
+#: elf/dl-load.c:1294
msgid "cannot dynamically load position-independent executable"
msgstr "kan positie-onafhankelijk uitvoerbaar bestand niet dynamisch laden"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "gedeeld object kan niet met dlopen() geopend worden -- heeft DF_1_NOOPEN-vlag"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "kan geen geheugen reserveren voor programmakop"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "kan uitvoerbare stack niet aanzetten zoals gedeeld object vereist"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "kan bestandsdescriptor niet sluiten"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "bestand is te kort"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "ongeldige ELF-header"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "gegevenscodering van ELF-bestand is niet big-endian"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "gegevenscodering van ELF-bestand is niet little-endian"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "ELF-bestands-identversie komt niet overeen met huidige"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "OS-ABI van ELF-bestand is ongeldig"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "ABI-versie van ELF-bestand is ongeldig"
-#: elf/dl-load.c:1669
+#: elf/dl-load.c:1670
msgid "nonzero padding in e_ident"
msgstr "opvulling met niet-nullen in e_ident()"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "**interne fout**"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "ELF-bestandsversie komt niet overeen met huidige"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "alleen ET_DYN en ET_EXEC kunnen worden geladen"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "'phentsize' van ELF-bestand heeft niet de verwachte grootte"
@@ -660,21 +660,21 @@ msgstr "kan geheugenbeschermingen niet veranderen"
msgid "cannot map zero-fill pages"
msgstr "kan nul-gevulde pagina's niet in het geheugen plaatsen"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "opzoekfout voor symbool"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "kan globaal geldigheidsbereik niet uitbreiden"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr ""
"De TLS-generatieteller is opnieuw bij nul begonnen!\n"
"Dit is een **programmafout**. Graag rapporteren."
-#: elf/dl-open.c:716
+#: elf/dl-open.c:717
msgid "cannot allocate address lookup data"
msgstr "kan geen geheugen reserveren voor adresopzoekgegevens"
@@ -715,7 +715,7 @@ msgstr "kan extra geheugenbescherming niet toepassen na verplaatsing"
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "RTLD_NEXT is gebruikt in code die niet dynamisch geladen is"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "kan TLS-gegevensstructuren niet aanmaken"
@@ -727,225 +727,225 @@ msgstr "opzoekfout voor versie"
msgid "cannot allocate version reference table"
msgstr "kan geen geheugen reserveren voor tabel met versieverwijzingen"
-#: elf/dl-version.c:380
+#: elf/dl-version.c:387
msgid "DT_RELR without GLIBC_ABI_DT_RELR dependency"
msgstr "DT_RELR zonder een GLIBC_ABI_DT_RELR-afhankelijkheid"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "inhoud van de cache weergeven"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "gedetailleerde uitvoer produceren"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "geen cache opbouwen"
-#: elf/ldconfig.c:128
+#: elf/ldconfig.c:127
msgid "Don't update symbolic links"
msgstr "symbolische koppelingen niet bijwerken"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "naar deze map gaan en als hoofdmap gebruiken"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "BASISMAP"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "CACHE-BESTAND"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "dit cachebestand gebruiken"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "CONFIG-BESTAND"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "dit configuratiebestand gebruiken"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "alleen de mappen op de opdrachtregel verwerken; geen cache opbouwen"
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "individuele bibliotheken handmatig koppelen"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "INDELING"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "Format to use: new (default), old, or compat"
msgstr "te gebruiken indeling: 'new' (standaard), 'old', of 'compat'"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "hulpcachebestand negeren"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr ""
" \n"
"Configureren van de dynamische linker."
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "Pad '%s' is meerdere malen opgegeven"
-#: elf/ldconfig.c:278
+#: elf/ldconfig.c:277
#, c-format
msgid "(from %s:%d and %s:%d)\n"
msgstr "(van %s:%d en %s:%d)\n"
-#: elf/ldconfig.c:310 elf/ldconfig.c:351
+#: elf/ldconfig.c:309 elf/ldconfig.c:350
#, c-format
msgid "Could not form glibc-hwcaps path"
msgstr "Kan 'glibc-hwcaps'-pad niet vormen"
# Het origineel is te vaag -- feitelijk is er een fout opgetreden tijdens readdir().
-#: elf/ldconfig.c:324
+#: elf/ldconfig.c:323
#, c-format
msgid "Listing directory %s"
msgstr "Kan map %s niet lezen"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "Kan status van %s niet opvragen"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "Kan status van %s niet opvragen\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s is geen symbolische koppeling\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "Kan %s niet ontkoppelen"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "Kan %s niet aan %s koppelen"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (gewijzigd)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (OVERGESLAGEN)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "Kan %s niet vinden"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "Kan status van link %s niet opvragen"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "Bestand %s wordt genegeerd omdat het geen gewoon bestand is."
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr ""
"Geen koppeling aangemaakt, want kan van %s de 'soname'\n"
"(de naam van het gedeelde object) niet vinden"
-#: elf/ldconfig.c:701
+#: elf/ldconfig.c:700
#, c-format
msgid " (from %s:%d)\n"
msgstr " (van %s:%d)\n"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "Kan map %s niet openen"
-#: elf/ldconfig.c:743 elf/ldconfig.c:748
+#: elf/ldconfig.c:742 elf/ldconfig.c:747
#, c-format
msgid "Could not form library path"
msgstr "Kan bibliotheekpad niet vormen"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "Kan invoerbestand %s niet vinden\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "Kan status van %s niet opvragen"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "libc6-bibliotheek %s zit in verkeerde map"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "Bibliotheken %s en %s in map %s hebben dezelfde 'soname' maar een verschillende soort"
-#: elf/ldconfig.c:1051
+#: elf/ldconfig.c:1050
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr "Waarschuwing: ontoegankelijk configuratiebestand wordt genegeerd: %s"
-#: elf/ldconfig.c:1099
+#: elf/ldconfig.c:1098
#, c-format
msgid "%s:%u: hwcap directive ignored"
msgstr "%s:%u: hwcap-directief is genegeerd"
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "bij gebruik van '-r' is voor het configuratiebestand een absoluut pad vereist"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "onvoldoende geheugen beschikbaar"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: kan map %s niet lezen"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "relatief pad '%s' wordt gebruikt bij opbouwen van cache"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "Kan niet naar hoofdmap ('/') gaan"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "Kan map %s voor cachebestand niet openen\n"
@@ -1301,82 +1301,82 @@ msgstr "GEDEELD_OBJECT [ANALYSEGEGEVENS]"
msgid "failed to load shared object `%s'"
msgstr "laden van gedeeld object '%s' is mislukt"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "kan interne descriptor niet aanmaken"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "heropenen van gedeeld object '%s' is mislukt"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "lezen van sectiekoppen is mislukt"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "lezen van tekenreekstabel in sectiekop is mislukt"
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** Kan naam van debuginfobestand niet lezen: %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "kan bestandsnaam niet bepalen"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "lezen van ELF-header is mislukt"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** Het bestand '%s' is gestript: gedetailleerde analyse is niet mogelijk\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "laden van symboolgegevens is mislukt"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "kan analysegegevens niet laden"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "bij opvragen van status van analysegegevensbestand"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "analysegegevensbestand '%s' komt niet overeen met gedeeld object '%s'"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "kan analysegegevensbestand niet geheel in het geheugen plaatsen"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "fout bij sluiten van analysegegevensbestand"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "'%s' is geen correct bestand met analysegegevens voor '%s'"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "kan geen geheugen reserveren voor symboolgegevens"
@@ -2882,7 +2882,7 @@ msgid "cannot resize archive file"
msgstr "kan grootte van archiefbestand niet aanpassen"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "kan archiefkop niet in het geheugen plaatsen"
@@ -2941,64 +2941,64 @@ msgstr "kan status van taalregio-archief '%s' niet opvragen"
msgid "cannot lock locale archive \"%s\""
msgstr "kan taalregio-archief '%s' niet vergrendelen"
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "kan archiefkop niet lezen"
-#: locale/programs/locarchive.c:661
+#: locale/programs/locarchive.c:665
#, c-format
msgid "bad magic value in archive header"
msgstr "onjuist magisch getal in archiefkop"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "taalregio '%s' bestaat al"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "kan niet aan taalregio-archief toevoegen"
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "kan taalregio-aliassenbestand '%s' niet vinden"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "Toevoegen van %s\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "kan status van '%s' niet opvragen: %s -- genegeerd"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "'%s' is geen map -- genegeerd"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "kan map '%s' niet openen: %s -- genegeerd"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "onvolledige verzameling van taalregiobestanden in '%s'"
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "kan niet alle bestanden in '%s' lezen -- genegeerd"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "taalregio '%s' zit niet in het archief"
diff --git a/po/pl.po b/po/pl.po
index f143a53..94021e1 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -1,14 +1,14 @@
# Polish translation for GNU libc.
-# Copyright (C) 1996, 1997, 1998, 1999, 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024 Free Software Foundation, Inc.
+# Copyright (C) 1996, 1997, 1998, 1999, 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025 Free Software Foundation, Inc.
# This file is distributed under the same license as the glibc package.
# Paweł Krawczyk <kravietz@ceti.pl>, 1996-1999.
# Jakub Bogusz <qboosh@pld-linux.org>, 2002-2025.
#
msgid ""
msgstr ""
-"Project-Id-Version: libc 2.40.9000\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
-"PO-Revision-Date: 2025-01-06 21:30+0100\n"
+"Project-Id-Version: libc 2.41.9000\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
+"PO-Revision-Date: 2025-07-20 18:30+0200\n"
"Last-Translator: Jakub Bogusz <qboosh@pld-linux.org>\n"
"Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"
"Language: pl\n"
@@ -97,7 +97,7 @@ msgstr "(BÅÄ„D PROGRAMU) Nieznana wersja?!"
msgid "%s: Too many arguments\n"
msgstr "%s: Za dużo argumentów\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(BÅÄ„D PROGRAMU) Opcja powinna zostać rozpoznana?!"
@@ -139,7 +139,7 @@ msgstr ""
"-o PLIK-WY [PLIK-WE]...\n"
"[PLIK-WY [PLIK-WE]...]"
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -154,7 +154,7 @@ msgstr ""
"%s.\n"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -172,7 +172,7 @@ msgstr ""
# w %s wchodzi nazwisko autora danego programu/procedury -PK
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -253,7 +253,7 @@ msgstr "błędna sekwencja specjalna"
#: catgets/gencat.c:1234
msgid "unterminated message"
-msgstr "nie zakończony komunikat"
+msgstr "niezakończony komunikat"
#: catgets/gencat.c:1258
#, c-format
@@ -404,7 +404,7 @@ msgstr "Plik pamięci podręcznej ma niewłaściwą kolejność bajtów.\n"
msgid "Cache generated by: "
msgstr "Pamięć podręczna wygenerowana przez: "
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Nie można otworzyć pliku pamięci podręcznej %s\n"
@@ -473,17 +473,17 @@ msgstr "błąd podczas wczytywania bibliotek dzielonych"
msgid "DYNAMIC LINKER BUG!!!"
msgstr "BÅÄ„D DYNAMICZNEGO LINKERA!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "nie można utworzyć listy zakresów"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "obiekt dzielony nie jest otwarty"
#: elf/dl-deps.c:96
msgid "DST not allowed in SUID/SGID programs"
-msgstr "DST nie dozwolone dla programów SUID/SGID"
+msgstr "DST niedozwolone dla programów SUID/SGID"
#: elf/dl-deps.c:109
msgid "empty dynamic string token substitution"
@@ -506,11 +506,11 @@ msgstr "nie można przydzielić pamięci dla listy zależności"
msgid "cannot allocate symbol search list"
msgstr "nie można przydzielić pamięci dla listy przeszukiwania symboli"
-#: elf/dl-hwcaps.c:104
+#: elf/dl-hwcaps.c:103
msgid "cannot create HWCAP priorities"
msgstr "nie można utworzyć priorytetów HWCAP"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "nie można utworzyć listy uprawnień"
@@ -530,99 +530,99 @@ msgstr "nie można utworzyć kopii RUNPATH/RPATH"
msgid "cannot create search path array"
msgstr "nie można utworzyć tablicy ścieżki przeszukiwania"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "nie można wykonać stat na obiekcie dzielonym"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "nie można utworzyć deskryptora obiektu dzielonego"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "nie można odczytać danych z pliku"
-#: elf/dl-load.c:1138 elf/dl-map-segments.h:117
+#: elf/dl-load.c:1143 elf/dl-map-segments.h:118
msgid "ELF load command address/offset not page-aligned"
-msgstr "adres/przesunięcie polecenia wczytania ELF nie wyrównane do strony"
+msgstr "adres/przesunięcie polecenia wczytania ELF niewyrównane do strony"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "plik obiektu nie ma segmentów ładowalnych"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "nie można dynamicznie załadować pliku wykonywalnego"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "plik obiektu nie ma sekcji dynamicznej"
-#: elf/dl-load.c:1289
+#: elf/dl-load.c:1294
msgid "cannot dynamically load position-independent executable"
msgstr "nie można dynamicznie załadować pliku wykonywalnego niezależnego od położenia"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "obiekt dzielony nie może być otwarty przez dlopen()"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "nie można przydzielić pamięci na nagłówek programu"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "nie można włączyć wykonywalnego stosu wymaganego przez obiekt dzielony"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "nie można zamknąć deskryptora pliku"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "plik za krótki"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "nieprawidłowy nagłówek ELF"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "kodowanie danych w pliku ELF nie jest big-endian"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "kodowanie danych w pliku ELF nie jest little-endian"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "identyfikator wersji pliku ELF nie zgadza siÄ™ z aktualnym"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "niepoprawne ABI systemu w pliku ELF"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "niepoprawna wersja ABI w pliku ELF"
-#: elf/dl-load.c:1669
+#: elf/dl-load.c:1670
msgid "nonzero padding in e_ident"
msgstr "niezerowe wypełnienie w e_ident"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "błąd wewnętrzny"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "wersja pliku ELF nie zgadza siÄ™ z aktualnÄ…"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "tylko ET_DYN i ET_EXEC mogą być wczytane"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "phentsize w pliku ELF nie jest oczekiwanym rozmiarem"
@@ -650,19 +650,19 @@ msgstr "nie można zmienić ochrony pamięci"
msgid "cannot map zero-fill pages"
msgstr "nie można odwzorować stron wypełnionych zerami"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "błąd wyszukiwania symbolu"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "nie można rozszerzyć zakresu globalnego"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "Licznik generacji TLS przekręcił się! Proszę to zgłosić."
-#: elf/dl-open.c:716
+#: elf/dl-open.c:717
msgid "cannot allocate address lookup data"
msgstr "nie można przydzielić pamięci dla danych wyszukiwania adresów"
@@ -701,9 +701,9 @@ msgstr "nie można nałożyć dodatkowej ochrony pamięci po relokacji"
#: elf/dl-sym.c:138
msgid "RTLD_NEXT used in code not dynamically loaded"
-msgstr "RTLD_NEXT wystąpiło w kodzie nie ładowanym dynamicznie"
+msgstr "RTLD_NEXT wystąpiło w kodzie nieładowanym dynamicznie"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "nie można utworzyć struktur danych TLS"
@@ -715,220 +715,220 @@ msgstr "błąd wyszukiwania wersji"
msgid "cannot allocate version reference table"
msgstr "nie można przydzielić tablicy odniesień do wersji"
-#: elf/dl-version.c:380
+#: elf/dl-version.c:387
msgid "DT_RELR without GLIBC_ABI_DT_RELR dependency"
msgstr "DT_RELR bez zależności GLIBC_ABI_DT_RELR"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "Wypisanie zawartości pamięci podręcznej"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "Wyświetlanie większej liczby komunikatów"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "Niebudowanie pamięci podręcznej"
-#: elf/ldconfig.c:128
+#: elf/ldconfig.c:127
msgid "Don't update symbolic links"
msgstr "Bez uaktualniania dowiązań symbolicznych"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "Przejście do i używanie KATALOGU jako głównego katalogu"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "KATALOG"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "BUFOR"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "Użycie BUFORA jako pliku pamięci podręcznej"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "KONF"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "Użycie KONF jako pliku konfiguracyjnego"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "Przetwarzanie wyłącznie katalogów podanych z linii poleceń; niebudowanie pamięci podręcznej."
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "Ręczne tworzenie dowiązań do pojedynczych bibliotek."
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "FORMAT"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "Format to use: new (default), old, or compat"
msgstr "Używany format: new (domyślny), old lub compat"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "Ignorowanie dodatkowego pliku pamięci podręcznej"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "Konfiguracja powiązań dynamicznego linkera."
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "Ścieżka `%s' podana więcej niż raz"
-#: elf/ldconfig.c:278
+#: elf/ldconfig.c:277
#, c-format
msgid "(from %s:%d and %s:%d)\n"
msgstr "(od %s:%d i %s:%d)\n"
-#: elf/ldconfig.c:310 elf/ldconfig.c:351
+#: elf/ldconfig.c:309 elf/ldconfig.c:350
#, c-format
msgid "Could not form glibc-hwcaps path"
msgstr "Nie udało się uformować ścieżki glibc-hwcaps"
-#: elf/ldconfig.c:324
+#: elf/ldconfig.c:323
#, c-format
msgid "Listing directory %s"
msgstr "Listowanie katalogu %s"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "Nie można wykonać stat na %s"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "Nie można wykonać stat na %s\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s nie jest dowiÄ…zaniem symbolicznym\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "Nie można usunąć %s"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "Nie można dowiązać %s do %s"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (zmieniono)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (POMINIĘTO)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "Nie można znaleźć %s"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "Nie można wykonać lstat na %s"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "Zignorowano plik %s ponieważ nie jest zwykłym plikiem."
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "Nie utworzono dowiązania ponieważ nie znaleziono soname dla %s"
-#: elf/ldconfig.c:701
+#: elf/ldconfig.c:700
#, c-format
msgid " (from %s:%d)\n"
msgstr " (od %s:%d)\n"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "Nie można otworzyć katalogu %s"
-#: elf/ldconfig.c:743 elf/ldconfig.c:748
+#: elf/ldconfig.c:742 elf/ldconfig.c:747
#, c-format
msgid "Could not form library path"
msgstr "Nie można złożyć ścieżki biblioteki"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "Nie znaleziono pliku wejściowego %s.\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "Nie można wykonać stat na %s"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "biblioteka libc6 %s w złym katalogu"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "biblioteki %s i %s w katalogu %s majÄ… to samo soname ale inny rodzaj."
-#: elf/ldconfig.c:1051
+#: elf/ldconfig.c:1050
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr "Uwaga: zignorowano plik konfiguracyjny, którego nie można otworzyć: %s"
-#: elf/ldconfig.c:1099
+#: elf/ldconfig.c:1098
#, c-format
msgid "%s:%u: hwcap directive ignored"
msgstr "%s:%u: zignorowano dyrektywÄ™ hwcap"
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "opcja -r wymaga bezwzględnej ścieżki pliku konfiguracyjnego"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "pamięć wyczerpana"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: nie można odczytać %s"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "użyto względnej ścieżki `%s' do utworzenia pamięci podręcznej"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "Nie można przejść do katalogu /"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "Nie można otworzyć katalogu pliku pamięci podręcznej %s\n"
@@ -1134,12 +1134,12 @@ msgstr "Nie można wykonać fstat na pliku %s.\n"
#: elf/readlib.c:98
#, c-format
msgid "File %s is empty, not checked."
-msgstr "Plik %s jest pusty, nie sprawdzony."
+msgstr "Plik %s jest pusty, niesprawdzony."
#: elf/readlib.c:104
#, c-format
msgid "File %s is too small, not checked."
-msgstr "Plik %s jest za mały, nie sprawdzony."
+msgstr "Plik %s jest za mały, niesprawdzony."
#: elf/readlib.c:114
#, c-format
@@ -1282,82 +1282,82 @@ msgstr "OBIEKT_DZIELONY [DANE_PROFILUJĄCE]"
msgid "failed to load shared object `%s'"
msgstr "załadowanie dzielonego obiektu `%s' nie powiodło się"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "nie można utworzyć wewnętrznego deskryptora"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "Ponowne otwarcie obiektu dzielonego `%s' nie powiodło się"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "odczyt nagłówków sekcji nie powiódł się"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "odczyt tablicy łańcuchów nagłówków sekcji nie powiódł się"
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** Nie można odczytać nazwy pliku informacji diagnostycznych: %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "nie można określić nazwy pliku"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "odczyt nagłówka ELF nie powiódł się"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** Symbole z pliku `%s' zostały usunięte, dokładna analiza jest niemożliwa\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "załadowanie danych o symbolach nie powiodło się"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "nie można załadować danych do profilowania"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "podczas wykonywania stat na pliku z danymi profilujÄ…cymi"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "dane profilujÄ…ce w pliku `%s' nie pasujÄ… do obiektu dzielonego `%s'"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "wykonanie mmap danych profilujących nie powiodło się"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "błąd podczas zamykania pliku z danymi profilującymi"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "`%s' nie jest poprawnym plikiem danych profilujÄ…cych dla `%s'"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "nie można przydzielić pamięci dla symboli"
@@ -2065,7 +2065,7 @@ msgstr "%s: `position' musi być użyte dla konkretnego poziomu we wszystkich se
#: locale/programs/ld-collate.c:1614
#, c-format
msgid "symbol `%s' not defined"
-msgstr "nie zdefiniowany symbol `%s'"
+msgstr "niezdefiniowany symbol `%s'"
#: locale/programs/ld-collate.c:1690 locale/programs/ld-collate.c:1789
#, c-format
@@ -2148,7 +2148,7 @@ msgstr "%s: błędna liczba reguł sortowania"
#: locale/programs/ld-collate.c:3225
#, c-format
msgid "%s: multiple order definitions for unnamed section"
-msgstr "%s: wielokrotna definicja porzÄ…dku dla nie nazwanej sekcji"
+msgstr "%s: wielokrotna definicja porzÄ…dku dla nienazwanej sekcji"
#: locale/programs/ld-collate.c:3280 locale/programs/ld-collate.c:3410
#: locale/programs/ld-collate.c:3775
@@ -2159,12 +2159,12 @@ msgstr "%s: brak słowa kluczowego `order_end'"
#: locale/programs/ld-collate.c:3343
#, c-format
msgid "%s: order for collating symbol %.*s not yet defined"
-msgstr "%s: porzÄ…dek dla symbolu scalajÄ…cego %.*s jeszcze nie zdefiniowany"
+msgstr "%s: porzÄ…dek dla symbolu scalajÄ…cego %.*s jeszcze niezdefiniowany"
#: locale/programs/ld-collate.c:3361
#, c-format
msgid "%s: order for collating element %.*s not yet defined"
-msgstr "%s: porzÄ…dek dla elementu scalajÄ…cego %.*s jeszcze nie zdefiniowany"
+msgstr "%s: porzÄ…dek dla elementu scalajÄ…cego %.*s jeszcze niezdefiniowany"
#: locale/programs/ld-collate.c:3372
#, c-format
@@ -2252,7 +2252,7 @@ msgstr "znak <SP> nie może być w klasie `%s'"
#: locale/programs/ld-ctype.c:600
msgid "character <SP> not defined in character map"
-msgstr "znak <SP> nie zdefiniowany w tablicy znaków"
+msgstr "znak <SP> niezdefiniowany w tablicy znaków"
#: locale/programs/ld-ctype.c:734
msgid "`digit' category has not entries in groups of ten"
@@ -2440,7 +2440,7 @@ msgstr "%s: błędna wartość dla pola `%s'"
#: locale/programs/ld-messages.c:112 locale/programs/ld-messages.c:145
#, c-format
msgid "%s: field `%s' undefined"
-msgstr "%s: pole `%s' nie zdefiniowane"
+msgstr "%s: pole `%s' niezdefiniowane"
#: locale/programs/ld-messages.c:118 locale/programs/ld-messages.c:151
#: locale/programs/ld-numeric.c:116
@@ -2592,7 +2592,7 @@ msgstr "śmieci na końcu specyfikacji kodu znaku"
#: locale/programs/linereader.c:531
msgid "unterminated symbolic name"
-msgstr "nie zakończona nazwa symboliczna"
+msgstr "niezakończona nazwa symboliczna"
#: locale/programs/linereader.c:716
#, c-format
@@ -2601,7 +2601,7 @@ msgstr "błędna sekwencja UTF-8 %s"
#: locale/programs/linereader.c:796
msgid "illegal 8-bit character in untranslated string"
-msgstr "niedozwolony znak 8-bitowy w nie przetłumaczonym łańcuchu"
+msgstr "niedozwolony znak 8-bitowy w nieprzetłumaczonym łańcuchu"
#: locale/programs/linereader.c:804
msgid "illegal escape sequence at end of string"
@@ -2609,7 +2609,7 @@ msgstr "niedozwolona sekwencja specjalna na końcu łańcucha"
#: locale/programs/linereader.c:808 locale/programs/linereader.c:979
msgid "unterminated string"
-msgstr "nie zakończony łańcuch"
+msgstr "niezakończony łańcuch"
#: locale/programs/linereader.c:841
msgid "illegal 8-bit escape sequence"
@@ -2859,7 +2859,7 @@ msgid "cannot resize archive file"
msgstr "nie można zmienić rozmiaru pliku archiwum"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "nie można odwzorować nagłówka archiwum"
@@ -2918,64 +2918,70 @@ msgstr "nie można wykonać stat na archiwum lokalizacji \"%s\""
msgid "cannot lock locale archive \"%s\""
msgstr "nie można zablokować archiwum lokalizacji \"%s\""
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:642 locale/programs/locarchive.c:656
+#: locale/programs/locarchive.c:664 locale/programs/locarchive.c:685
+#, c-format
+msgid "cannot unlock archive header"
+msgstr "nie można odblokować nagłówka archiwum"
+
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "nie można odczytać nagłówka archiwum"
-#: locale/programs/locarchive.c:661
+#: locale/programs/locarchive.c:665
#, c-format
msgid "bad magic value in archive header"
msgstr "błędna wartość magiczna w nagłówku archiwum"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "lokalizacja '%s' już istnieje"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "nie można dodać do archiwum lokalizacji"
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "nie znaleziono pliku aliasów lokalizacji `%s'"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "Dodawanie %s\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "stat na \"%s\" nie powiodło się: %s: zignorowano"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "\"%s\" nie jest katalogiem; zignorowano"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "nie można otworzyć katalogu \"%s\": %s: zignorowano"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "niekompletny zestaw plików lokalizacji w \"%s\""
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "nie można przeczytać wszystkich plików w \"%s\": zignorowano"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "lokalizacji \"%s\" nie ma w archiwum"
@@ -3231,7 +3237,7 @@ msgstr "Nie znaleziono"
#: nis/nis_error.h:4
msgid "Probably not found"
-msgstr "Prawdopodobnie nie znaleziony"
+msgstr "Prawdopodobnie nieznaleziony"
#: nis/nis_error.h:5
msgid "Cache expired"
@@ -3305,7 +3311,7 @@ msgstr "Nie znaleziono, brak takiej nazwy"
#: nis/nis_error.h:22
msgid "Name/entry isn't unique"
-msgstr "Nazwa/zapis nie jest unikalny"
+msgstr "Nazwa/zapis nie jest unikatowy"
#: nis/nis_error.h:23
msgid "Modification failed"
@@ -3349,7 +3355,7 @@ msgstr "Wystąpił błąd podczas odwołania do procedury wywołania zwrotnego"
#: nis/nis_error.h:33
msgid "Non NIS+ namespace encountered"
-msgstr "Napotkano nazwy nie należące do przestrzeni NIS+"
+msgstr "Napotkano nazwy nienależące do przestrzeni NIS+"
#: nis/nis_error.h:34
msgid "Illegal object type for operation"
@@ -3414,7 +3420,7 @@ msgstr "Serwer nadrzÄ™dny jest zajÄ™ty, peÅ‚ny zrzut danych przesuniÄ™ty na póÅ
#: nis/nis_local_names.c:122
#, c-format
msgid "LOCAL entry for UID %d in directory %s not unique\n"
-msgstr "Wpis LOKALNY dla UID %d w katalogu %s nie jest unikalny\n"
+msgstr "Wpis LOKALNY dla UID %d w katalogu %s nie jest unikatowy\n"
#: nis/nis_print.c:51
msgid "UNKNOWN"
@@ -3905,7 +3911,7 @@ msgstr "baza danych dla %s uszkodzona lub jednocześnie używana; w razie potrze
#: nscd/connections.c:665
#, c-format
msgid "cannot create %s; no persistent database used"
-msgstr "nie można utworzyć %s; trwała baza danych nie używana"
+msgstr "nie można utworzyć %s; brak trwałej bazy danych w użyciu"
#: nscd/connections.c:668
#, c-format
@@ -3970,16 +3976,16 @@ msgstr "nie można obsłużyć żądań w starej wersji %d; aktualna wersja to %
#: nscd/connections.c:1084
#, c-format
msgid "request from %ld not handled due to missing permission"
-msgstr "żądanie od %ld nie obsłużone z powodu braku uprawnień"
+msgstr "żądanie od %ld nieobsłużone z powodu braku uprawnień"
#: nscd/connections.c:1089
#, c-format
msgid "request from '%s' [%ld] not handled due to missing permission"
-msgstr "żądanie od '%s' [%ld] nie obsłużone z powodu braku uprawnień"
+msgstr "żądanie od '%s' [%ld] nieobsłużone z powodu braku uprawnień"
#: nscd/connections.c:1094
msgid "request not handled due to missing permission"
-msgstr "żądanie nie obsłużone z powodu braku uprawnień"
+msgstr "żądanie nieobsłużone z powodu braku uprawnień"
#: nscd/connections.c:1132 nscd/connections.c:1158
#, c-format
@@ -4466,8 +4472,8 @@ msgstr ""
"%15lu sekund czasu przez który będą utrzymywane wpisy negatywne\n"
"%15<PRIuMAX> trafionych wpisów pozytywnych\n"
"%15<PRIuMAX> trafionych wpisów negatywnych\n"
-"%15<PRIuMAX> nie trafionych wpisów pozytywnych\n"
-"%15<PRIuMAX> nie trafionych wpisów negatywnych\n"
+"%15<PRIuMAX> nietrafionych wpisów pozytywnych\n"
+"%15<PRIuMAX> nietrafionych wpisów negatywnych\n"
"%15lu%% trafień\n"
"%15zu aktualnie pamiętanych wartości\n"
"%15zu maksymalnie pamiętanych wartości\n"
@@ -4590,12 +4596,12 @@ msgstr ""
"\n"
"%15u wyszukiwań wpisów\n"
"%15u wpisów trafionych\n"
-"%15u wpisów nie trafionych\n"
+"%15u wpisów nietrafionych\n"
"%15u usunięć wpisów\n"
"%15u wyszukiwań CAV\n"
"%15u CAV trafionych\n"
"%15u prób CAV\n"
-"%15u CAV nie trafionych\n"
+"%15u CAV nietrafionych\n"
#: nscd/servicescache.c:357
#, c-format
@@ -4634,7 +4640,7 @@ msgstr "Odczyt wpisów z bazy administracyjnej."
#: nss/getent.c:154 nss/getent.c:466 nss/getent.c:513
#, c-format
msgid "Enumeration not supported on %s\n"
-msgstr "Wyliczanie nie obsługiwane dla %s\n"
+msgstr "Wyliczanie nieobsługiwane dla %s\n"
#: nss/getent.c:521 nss/getent.c:534
#, c-format
@@ -4673,7 +4679,7 @@ msgstr "ZNAK"
#: nss/makedb.c:128
msgid "Generated line not part of iteration"
-msgstr "Wygenerowana linia nie będąca częścią iteracji"
+msgstr "Wygenerowana linia niebędąca częścią iteracji"
#: nss/makedb.c:133
msgid "Create simple database from textual input."
@@ -4921,7 +4927,7 @@ msgstr "Brak wyrażenia regularnego"
#: posix/wordexp.c:1794
msgid "parameter null or not set"
-msgstr "parametr pusty lub nie ustawiony"
+msgstr "parametr pusty lub nieustawiony"
#: resolv/herror.c:63
msgid "Resolver Error 0 (no error)"
@@ -5273,7 +5279,7 @@ msgstr "RPC: Awaria portmappera"
#: sunrpc/clnt_perr.c:213
msgid "RPC: Program not registered"
-msgstr "RPC: Nie zarejestrowany program"
+msgstr "RPC: Niezarejestrowany program"
#: sunrpc/clnt_perr.c:217
msgid "RPC: Failed (unspecified error)"
@@ -5874,12 +5880,12 @@ msgstr "Protokół niedostępny"
#. TRANS @xref{Creating a Socket}.
#: sysdeps/gnu/errlist.h:308
msgid "Protocol not supported"
-msgstr "Protokół nie obsługiwany"
+msgstr "Protokół nieobsługiwany"
#. TRANS The socket type is not supported.
#: sysdeps/gnu/errlist.h:313
msgid "Socket type not supported"
-msgstr "Nie obsługiwany typ gniazda"
+msgstr "Nieobsługiwany typ gniazda"
#. TRANS The operation you requested is not supported. Some socket functions
#. TRANS don't make sense for all types of sockets, and others may not be
@@ -5889,18 +5895,18 @@ msgstr "Nie obsługiwany typ gniazda"
#. TRANS nothing to do for that call.
#: sysdeps/gnu/errlist.h:323
msgid "Operation not supported"
-msgstr "Operacja nie obsługiwana"
+msgstr "Operacja nieobsługiwana"
#. TRANS The socket communications protocol family you requested is not supported.
#: sysdeps/gnu/errlist.h:328
msgid "Protocol family not supported"
-msgstr "Nie obsługiwana rodzina protokołów"
+msgstr "Nieobsługiwana rodzina protokołów"
#. TRANS The address family specified for a socket is not supported; it is
#. TRANS inconsistent with the protocol being used on the socket. @xref{Sockets}.
#: sysdeps/gnu/errlist.h:334
msgid "Address family not supported by protocol"
-msgstr "Rodzina adresów nie obsługiwana przez protokół"
+msgstr "Rodzina adresów nieobsługiwana przez protokół"
#. TRANS The requested socket address is already in use. @xref{Socket Addresses}.
#: sysdeps/gnu/errlist.h:339
@@ -6064,7 +6070,7 @@ msgstr "Brak dostępnych blokad"
#. TRANS install a new version of the C library or the operating system.
#: sysdeps/gnu/errlist.h:496
msgid "Function not implemented"
-msgstr "Nie zaimplementowana funkcja"
+msgstr "Niezaimplementowana funkcja"
#. TRANS While decoding a multibyte character the function came along an invalid
#. TRANS or an incomplete sequence of bytes or the given wide character is invalid.
@@ -6143,7 +6149,7 @@ msgstr "Numer kanału poza zakresem"
#: sysdeps/gnu/errlist.h:558
msgid "Level 2 not synchronized"
-msgstr "Poziom 2 nie zsynchronizowany"
+msgstr "Poziom 2 niezsynchronizowany"
#: sysdeps/gnu/errlist.h:561
msgid "Level 3 halted"
@@ -6227,7 +6233,7 @@ msgstr "Błąd RFS"
#: sysdeps/gnu/errlist.h:621
msgid "Name not unique on network"
-msgstr "Nazwa nie jest unikalna w sieci"
+msgstr "Nazwa nie jest unikatowa w sieci"
#: sysdeps/gnu/errlist.h:624
msgid "File descriptor in bad state"
@@ -6376,7 +6382,7 @@ msgstr "Nieoczekiwany błąd"
#. TRANS it returns @code{ENOSYS} instead.
#: sysdeps/gnu/errlist.h:745
msgid "Not supported"
-msgstr "Nie obsługiwane"
+msgstr "Nieobsługiwane"
#: sysdeps/gnu/errlist.h:748
msgid "RPC program version wrong"
@@ -6472,7 +6478,7 @@ msgstr "Wystąpił krytyczny błąd w odwzorowaniu nazw"
#: sysdeps/posix/gai_strerror-strs.h:6
msgid "ai_family not supported"
-msgstr "ai_family zawiera nie obsługiwaną rodzinę protokołów"
+msgstr "ai_family zawiera nieobsługiwaną rodzinę protokołów"
#: sysdeps/posix/gai_strerror-strs.h:7
msgid "Memory allocation failure"
@@ -6488,11 +6494,11 @@ msgstr "Ta nazwa lub usługa jest nieznana"
#: sysdeps/posix/gai_strerror-strs.h:10
msgid "Servname not supported for ai_socktype"
-msgstr "Nazwa nie obsługiwana dla ai_socktype"
+msgstr "Nazwa nieobsługiwana dla ai_socktype"
#: sysdeps/posix/gai_strerror-strs.h:11
msgid "ai_socktype not supported"
-msgstr "ai_socktype zawiera nie obsługiwany typ gniazda"
+msgstr "ai_socktype zawiera nieobsługiwany typ gniazda"
#: sysdeps/posix/gai_strerror-strs.h:12
msgid "System error"
@@ -6508,7 +6514,7 @@ msgstr "Żądanie anulowane"
#: sysdeps/posix/gai_strerror-strs.h:15
msgid "Request not canceled"
-msgstr "Żądanie nie anulowane"
+msgstr "Żądanie nie zostało anulowane"
#: sysdeps/posix/gai_strerror-strs.h:16
msgid "All requests done"
@@ -6870,7 +6876,7 @@ msgstr "błąd wejścia"
#: timezone/zic.c:1679
msgid "unterminated line"
-msgstr "nie zakończona linia"
+msgstr "niezakończona linia"
#: timezone/zic.c:1683
msgid "NUL input byte"
@@ -7100,7 +7106,7 @@ msgstr "za dużo sekund przestępnych"
#: timezone/zic.c:3534
msgid "Rolling leap seconds not supported with -r"
-msgstr "Kroczące sekundy przestępne nie obsługiwane z -r"
+msgstr "Kroczące sekundy przestępne nieobsługiwane z -r"
#: timezone/zic.c:3561
msgid "Leap seconds too close together"
diff --git a/po/pt.po b/po/pt.po
index 383432e..6bf8302 100644
--- a/po/pt.po
+++ b/po/pt.po
@@ -1,22 +1,22 @@
# Portuguese (Portugal) Translation for the libc Package.
# Copyright (C) 2019 Free Software Foundation, Inc.
# This file is distributed under the same license as the glibc package.
-# Pedro Albuquerque <pmra@protonmail.com>, 2019, 2020, 2021.
+# Pedro Albuquerque <pmra@protonmail.com>, 2019, 2020, 2021, 2025.
#
msgid ""
msgstr ""
-"Project-Id-Version: libc 2.33.9000\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
-"PO-Revision-Date: 2021-09-24 07:28+0100\n"
+"Project-Id-Version: libc 2.41.9000\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
+"PO-Revision-Date: 2025-07-21 05:32+0100\n"
"Last-Translator: Pedro Albuquerque <pmra@protonmail.com>\n"
"Language-Team: Portuguese <translation-team-pt@lists.sourceforge.net>\n"
"Language: pt\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Bugs: Report translation errors to the Language-Team address.\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Poedit 2.3\n"
+"X-Bugs: Report translation errors to the Language-Team address.\n"
+"X-Generator: Poedit 3.6\n"
#: argp/argp-help.c:229
#, c-format
@@ -98,10 +98,20 @@ msgstr "(ERRO DO PROGRAMA) Sem versão conhecida!?"
msgid "%s: Too many arguments\n"
msgstr "%s: demasiados argumentos\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(ERRO DO PROGRAMA) A opção devia ter sido reconhecida!?"
+#: assert/assert-perr.c:35
+#, c-format
+msgid "%s%s%s:%u: %s%sUnexpected error: %s.\n"
+msgstr "%s%s%s:%u: %s%serro inesperado: %s.\n"
+
+#: assert/assert.c:127
+#, c-format
+msgid "%s%s%s:%u: %s%sAssertion `%s' failed.\n"
+msgstr "%s%s%s:%u: %s%sa asserção \"%s\" falhou.\n"
+
#: catgets/gencat.c:111
msgid "Create C header file NAME containing symbol definitions"
msgstr "Criar ficheiro de cabeçalho C NOME contendo as definições de símbolo"
@@ -130,7 +140,7 @@ msgstr ""
"-o FICH-SAÃDA [FICH-ENTRADA]...\n"
"[FICH-SAÃDA [FICH-ENTRADA]...]"
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -145,7 +155,7 @@ msgstr ""
"%s.\n"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -162,7 +172,7 @@ msgstr ""
"PARTICULAR.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -227,6 +237,11 @@ msgstr "linha inválida"
msgid "malformed line ignored"
msgstr "linha mal formada ignorada"
+#: catgets/gencat.c:939 catgets/gencat.c:947
+#, c-format
+msgid "cannot allocate memory"
+msgstr "impossível alocar memória"
+
#: catgets/gencat.c:1000 catgets/gencat.c:1045
#, c-format
msgid "cannot open output file `%s'"
@@ -272,6 +287,21 @@ msgstr "[FICH]"
msgid "cannot read header"
msgstr "impossível ler o cabeçalho"
+#: debug/pcprofiledump.c:99
+#, c-format
+msgid "cannot read pointer pair"
+msgstr "impossível ler par de ponteiro"
+
+#: debug/pcprofiledump.c:107
+#, c-format
+msgid "unexpected end of file in header"
+msgstr "fim de ficheiro inesperado no cabeçalho"
+
+#: debug/pcprofiledump.c:110
+#, c-format
+msgid "unexpected end of file in pointer pair"
+msgstr "fim de ficheiro inesperado em par de ponteiros"
+
#: debug/pcprofiledump.c:145
#, c-format
msgid "cannot open input file"
@@ -359,6 +389,10 @@ msgstr "modo inválido"
msgid "invalid mode parameter"
msgstr "parâmetro de modo inválido"
+#: elf/cache.c:174
+msgid "unknown or unsupported flag"
+msgstr "bandeira desconhecida ou não suportada"
+
#: elf/cache.c:273
#, c-format
msgid "Cache file has wrong endianness.\n"
@@ -368,7 +402,7 @@ msgstr "O ficheiro de cache tem a endianness errada.\n"
msgid "Cache generated by: "
msgstr "Cache gerada por: "
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Impossível abrir ficheiro de cache %s\n"
@@ -437,11 +471,11 @@ msgstr "erro ao carregar bibliotecas partilhadas"
msgid "DYNAMIC LINKER BUG!!!"
msgstr "ERRO NO LINKER DINÂMICO!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "impossível criar lista de âmbito"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "objecto partilhado não aberto"
@@ -470,11 +504,11 @@ msgstr "impossível alocar lista de dependência"
msgid "cannot allocate symbol search list"
msgstr "impossível alocar lista de procura de símbolo"
-#: elf/dl-hwcaps.c:104
+#: elf/dl-hwcaps.c:103
msgid "cannot create HWCAP priorities"
msgstr "impossível criar prioridades HWCAP"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "impossível criar lista de capacidade"
@@ -494,95 +528,99 @@ msgstr "impossível criar cópia de RUNPATH/RPATH"
msgid "cannot create search path array"
msgstr "impossível criar matriz de caminho de procura"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "impossível avaliar objecto partilhado"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "impossível criar descritor de objecto partilhado"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "impossível ler dados do ficheiro"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1143 elf/dl-map-segments.h:118
+msgid "ELF load command address/offset not page-aligned"
+msgstr "Endereço/Desvio do comando de carregamento ELF não alinhado à página"
+
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "o ficheiro objecto não tem segmentos carregáveis"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "impossível carregar dinamicamente o executável"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "o ficheiro objecto não tem secção dinâmica"
-#: elf/dl-load.c:1289
+#: elf/dl-load.c:1294
msgid "cannot dynamically load position-independent executable"
msgstr "impossível carregar dinamicamente executável independente da posição"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "o objecto partilhado não pode ser dlopen()"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "impossível alocar memória para o cabeçalho do programa"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "impossível activar a pilha do executável como o objecto partilhado requer"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "impossível fechar o descritor do ficheiro"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "ficheiro muito curto"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "cabeçalho ELF inválido"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "Codificação de dados do ficheiro ELF não é big-endian"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "Codificação de dados do ficheiro ELF não é little-endian"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "Identidade da versão do ficheiro ELF não corresponde ao actual"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "OS ABI do ficheiro ELF inválida"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "Versão ABI do ficheiro ELF inválida"
-#: elf/dl-load.c:1669
+#: elf/dl-load.c:1670
msgid "nonzero padding in e_ident"
msgstr "espaço não-zero em e_ident"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "erro interno"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "Versão do ficheiro ELF não corresponde ao actual"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "só ET_DYN e ET_EXEC podem ser carregados"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "Tamanho phentsize do ficheiro ELF não é o esperado"
@@ -610,18 +648,22 @@ msgstr "impossível alterar as protecções da memória"
msgid "cannot map zero-fill pages"
msgstr "impossível mapear páginas de recheio zero"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "erro de procura de símbolo"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "impossível estender âmbito global"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "Contador de gerações TLS embrulhado! Por favor, reporte isto."
+#: elf/dl-open.c:717
+msgid "cannot allocate address lookup data"
+msgstr "impossível alocar dados de procura de endereço"
+
#: elf/dl-open.c:817
msgid "invalid mode for dlopen()"
msgstr "modo inválido para dlopen()"
@@ -659,7 +701,7 @@ msgstr "impossível aplicar protecção adicional de memória após relocalizaç
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "RTLD_NEXT usado no código não foi carregado dinamicamente"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "impossível criar estruturas de dados TLS"
@@ -671,211 +713,220 @@ msgstr "erro de procura da versão"
msgid "cannot allocate version reference table"
msgstr "impossível alocar tabela de referência da versão"
-#: elf/ldconfig.c:125
+#: elf/dl-version.c:387
+msgid "DT_RELR without GLIBC_ABI_DT_RELR dependency"
+msgstr "DT_RELR sem dependência GLIBC_ABI_DT_RELR"
+
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "Imprimir a cache"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "Gerar mensagens verbosas"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "Não construir cache"
-#: elf/ldconfig.c:128
+#: elf/ldconfig.c:127
msgid "Don't update symbolic links"
msgstr "Não actualizar ligações simbólicas"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "Mudar para e usar RAIZ como pasta raiz"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "RAIZ"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "CACHE"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "Usar CACHE como ficheiro de cache"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "CONF"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "Usar CONF como ficheiro de configuração"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "Processar só pastas especificadas na linha de comando. Não construir cache."
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "Ligar manualmente bibliotecas individuais."
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "FORMATO"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "Format to use: new (default), old, or compat"
msgstr "Formato a usar: new (predefinição), old ou compat"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "Ignorar ficheiro de cache auxiliar"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "Configurar vínculos de execução do linker dinâmicos ."
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "Caminho \"%s\" com mais uma oportunidade"
-#: elf/ldconfig.c:278
+#: elf/ldconfig.c:277
#, c-format
msgid "(from %s:%d and %s:%d)\n"
msgstr "(de %s:%d e %s:%d)\n"
-#: elf/ldconfig.c:310 elf/ldconfig.c:351
+#: elf/ldconfig.c:309 elf/ldconfig.c:350
#, c-format
msgid "Could not form glibc-hwcaps path"
msgstr "Impossível formar o caminho de glibc-hwcaps"
-#: elf/ldconfig.c:324
+#: elf/ldconfig.c:323
#, c-format
msgid "Listing directory %s"
msgstr "A listar a pasta %s"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "Impossível analisar %s"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "Impossível analisar %s\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s não é ligação simbólica\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "Impossível desligar %s"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "Impossível ligar %s a %s"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (alterado)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (SALTADO)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "Impossível encontrar %s"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "Impossível lstat %s"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "Ficheiro %s ignorado por não ser um ficheiro normal."
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "Nenhuma ligação criada por soname não se ter encontrado para %s"
-#: elf/ldconfig.c:701
+#: elf/ldconfig.c:700
#, c-format
msgid " (from %s:%d)\n"
msgstr " (de %s:%d)\n"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "Impossível abrir a pasta %s"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:742 elf/ldconfig.c:747
+#, c-format
+msgid "Could not form library path"
+msgstr "Impossível formar o caminho da biblioteca"
+
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "Ficheiro de entrada %s não encontrado\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "Impossível analisar %s"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "biblioteca libc6 %s na pasta errada"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "bibliotecas %s e %s na pasta %s têm o mesmo soname mas tipos diferentes."
-#: elf/ldconfig.c:1051
+#: elf/ldconfig.c:1050
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr "Aviso: a ignorar ficheiro de configuração que não pode ser aberto: %s"
-#: elf/ldconfig.c:1099
+#: elf/ldconfig.c:1098
#, c-format
msgid "%s:%u: hwcap directive ignored"
msgstr "%s:%u: directiva hwcap ignorada"
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "nome de ficheiro absoluto requerido para ficheiro de configuração se usar -r"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "memória esgotada"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: impossível ler a pasta %s"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "caminho relativo \"%s\" usado para construir a cache"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "Impossível mudar para /"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "Impossível abrir a pasta do ficheiro de cache %s\n"
@@ -1227,82 +1278,82 @@ msgstr "OBJPT [DADOSPERF]"
msgid "failed to load shared object `%s'"
msgstr "falha ao carregar objecto partilhado \"%s\""
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "impossível criar descritor interno"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "Falha ao reabrir objecto partilhado \"%s\""
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "falha ao ler cabeçalhos da secção"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "falha ao ler tabela de cadeias do cabeçalho da secção"
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** impossível ler o nome do ficheiro debuginfo: %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "impossível determinar o nome do ficheiro"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "falha ao ler cabeçalho ELF"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** o ficheiro \"%s\" está despido: nenhuma análise detalhada possível\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "falha ao carregar dados do símbolo"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "impossível carregar dados do perfil"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "ao analisar ficheiro de dados do perfil"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "ficheiro de dados do perfil \"%s\" não corresponde ao objecto partilhado \"%s\""
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "falha ao mapear ficheiro de dados do perfil"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "erro ao fechar ficheiro de dados do perfil"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "\"%s\" não é um ficheiro de dados do perfil correcto para \"%s\""
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "impossível alocar dados do símbolo"
@@ -1332,6 +1383,11 @@ msgstr "impossível abrir ficheiro de saída"
msgid "error while closing input `%s'"
msgstr "erro ao fechar a entrada \"%s\""
+#: iconv/iconv_charmap.c:443
+#, c-format
+msgid "illegal input sequence at position %zd"
+msgstr "sequência de entrada ilegal na posição %zd"
+
#: iconv/iconv_charmap.c:462 iconv/iconv_prog.c:728
#, c-format
msgid "incomplete character or shift sequence at end of buffer"
@@ -1394,6 +1450,14 @@ msgstr "suprimir avisos"
msgid "print progress information"
msgstr "imprimir informação de progresso"
+#: iconv/iconv_prog.c:72
+msgid "BYTE-COUNT"
+msgstr "BYTE-COUNT"
+
+#: iconv/iconv_prog.c:73
+msgid "size of in-memory scratch buffer"
+msgstr "tamanho de scratch buffer em memória"
+
#: iconv/iconv_prog.c:78
msgid "Convert encoding of given files from one encoding to another."
msgstr "Converter codificação dos ficheiros indicados para outra codificação."
@@ -1427,11 +1491,21 @@ msgstr "a conversão para \"%s\" não é suportada"
msgid "conversion from `%s' to `%s' is not supported"
msgstr "a conversão de \"%s\" para \"%s\" não é suportada"
+#: iconv/iconv_prog.c:349
+#, c-format
+msgid "invalid buffer size: %s"
+msgstr "tamanho de buffer inválido: %s"
+
#: iconv/iconv_prog.c:540
#, c-format
msgid "conversion stopped due to problem in writing the output"
msgstr "a conversão parou devido a problemas em escrever a saída"
+#: iconv/iconv_prog.c:686
+#, c-format
+msgid "illegal input sequence at position %lld"
+msgstr "sequência de entrada ilegal na posição %lld"
+
#: iconv/iconv_prog.c:693
#, c-format
msgid "internal error (illegal descriptor)"
@@ -1501,6 +1575,21 @@ msgstr "ao inserir na árvore de procura"
msgid "cannot generate output file"
msgstr "impossível gerar ficheiro de saída"
+#: include/unistd_ext.h:38
+#, c-format
+msgid "write of %zu bytes failed after %td: %m"
+msgstr "falha ao escrever %zu bytes após %td: %m"
+
+#: include/unistd_ext.h:43
+#, c-format
+msgid "write returned 0 after writing %td bytes of %zu"
+msgstr "write devolveu 0 após escrever %td bytes de %zu"
+
+#: include/unistd_ext.h:59
+#, c-format
+msgid "read of %zu bytes failed after %td: %m"
+msgstr "leitura de %zu bytes falhou após %td: %m"
+
#: inet/rcmd.c:160
msgid "rcmd: Cannot allocate memory\n"
msgstr "rcmd: impossível alocar memória\n"
@@ -1914,6 +2003,11 @@ msgstr "%s: os pesos têm de usar o mesmo símbolo de reticências que o nome"
msgid "%s: too many values"
msgstr "%s: demasiados valores"
+#: locale/programs/ld-collate.c:1062 locale/programs/ld-collate.c:1237
+#, c-format
+msgid "order for `%.*s' already defined at %s:%zu"
+msgstr "a ordem de \"%.*s\" já está definida em %s:%zu"
+
#: locale/programs/ld-collate.c:1112
#, c-format
msgid "%s: the start and the end symbol of a range must stand for characters"
@@ -1944,6 +2038,11 @@ msgstr "%s: as reticências simbolizando um intervalo não devem ser directament
msgid "`%s' and `%.*s' are not valid names for symbolic range"
msgstr "\"%s\" e \"%.*s\" não são nomes válidos para um intervalo simbólico"
+#: locale/programs/ld-collate.c:1380 locale/programs/ld-collate.c:3731
+#, c-format
+msgid "%s: order for `%.*s' already defined at %s:%zu"
+msgstr "%s: a ordem de \"%.*s\" já está definida em %s:%zu"
+
#: locale/programs/ld-collate.c:1389
#, c-format
msgid "%s: `%s' must be a character"
@@ -2355,6 +2454,11 @@ msgstr "%s: o valor do campo \"int_curr_symbol\" tem um tamanho errado"
msgid "%s: value of field `int_curr_symbol' does not correspond to a valid name in ISO 4217 [--no-warnings=intcurrsym]"
msgstr "%s: o valor do campo \"int_curr_symbol\" não corresponde a um nome válido na norma ISO 4217 [--no-warnings=intcurrsym]"
+#: locale/programs/ld-monetary.c:348 locale/programs/ld-monetary.c:358
+#, c-format
+msgid "%s: field `%s' not defined, using defaults"
+msgstr "%s: o campo \"%s\" não está definido, a usar as pré-definições"
+
#: locale/programs/ld-monetary.c:396 locale/programs/ld-monetary.c:420
#, c-format
msgid "%s: value for field `%s' must be in range %d...%d"
@@ -2481,6 +2585,15 @@ msgstr "lixo no fim da especificação de código de carácter"
msgid "unterminated symbolic name"
msgstr "nome simbólico por terminar"
+#: locale/programs/linereader.c:716
+#, c-format
+msgid "invalid UTF-8 sequence %s"
+msgstr "sequência UTF-8 %s inválida"
+
+#: locale/programs/linereader.c:796
+msgid "illegal 8-bit character in untranslated string"
+msgstr "carácter 8-bit ilegal em cadeia por traduzir"
+
#: locale/programs/linereader.c:804
msgid "illegal escape sequence at end of string"
msgstr "sequência de escape ilegal no final da cadeia"
@@ -2489,6 +2602,10 @@ msgstr "sequência de escape ilegal no final da cadeia"
msgid "unterminated string"
msgstr "cadeia não terminada"
+#: locale/programs/linereader.c:841
+msgid "illegal 8-bit escape sequence"
+msgstr "sequência de escape de 8-bit ilegal"
+
#: locale/programs/linereader.c:940
#, c-format
msgid "symbol `%.*s' not in charmap"
@@ -2733,7 +2850,7 @@ msgid "cannot resize archive file"
msgstr "impossível redimensionar o ficheiro de arquivo"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "impossível mapear o cabeçalho do arquivo"
@@ -2792,59 +2909,70 @@ msgstr "impossível analisar o arquivo de idioma \"%s\""
msgid "cannot lock locale archive \"%s\""
msgstr "impossível bloquear o arquivo de idioma \"%s\""
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:642 locale/programs/locarchive.c:656
+#: locale/programs/locarchive.c:664 locale/programs/locarchive.c:685
+#, c-format
+msgid "cannot unlock archive header"
+msgstr "impossível desbloquear o cabeçalho do arquivo"
+
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "impossível ler o cabeçalho do arquivo"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:665
+#, c-format
+msgid "bad magic value in archive header"
+msgstr "valor mágico mau no cabeçalho do arquivo"
+
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "o idioma \"%s\" já existe"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "impossível adicionar ao arquivo de idioma"
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "ficheiro aliás de idioma \"%s\" não encontrado"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "A adicionar %s\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "falha ao analisar \"%s\": a ignorar %s"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "\"%s\" não é uma pasta; ignorado"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "impossível abrir a pasta \"%s\": %s: ignorado"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "conjunto de ficheiros de idioma incompleto em \"%s\""
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "impossível ler todos os ficheiros em \"%s\": ignorado"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "idioma \"%s\" não está no arquivo"
@@ -3288,14 +3416,42 @@ msgstr "Entrada LOCAL para UID %d na pasta %s não é única\n"
msgid "UNKNOWN"
msgstr "DESCONHECIDO"
+#: nis/nis_print.c:61
+msgid "BOGUS OBJECT"
+msgstr "OBJECTO FICTÃCIO"
+
+#: nis/nis_print.c:63
+msgid "NO OBJECT"
+msgstr "NENHUM OBJECTO"
+
+#: nis/nis_print.c:65
+msgid "DIRECTORY"
+msgstr "PASTA"
+
+#: nis/nis_print.c:67
+msgid "GROUP"
+msgstr "GRUPO"
+
#: nis/nis_print.c:69 nscd/nscd.c:117
msgid "TABLE"
msgstr "TABELA"
+#: nis/nis_print.c:71
+msgid "ENTRY"
+msgstr "ENTRADA"
+
+#: nis/nis_print.c:73
+msgid "LINK"
+msgstr "LIGAÇÃO"
+
#: nis/nis_print.c:75
msgid "PRIVATE\n"
msgstr "PRIVADO\n"
+#: nis/nis_print.c:77
+msgid "(Unknown object"
+msgstr "(objecto desconhecido"
+
#: nis/nis_print.c:164
#, c-format
msgid "Name : `%s'\n"
@@ -4223,7 +4379,7 @@ msgid ""
"\n"
"%15d server debug level\n"
msgstr ""
-"Configuração nscd:\n"
+"configuração nscd:\n"
"\n"
"%15d nível de depuração do servidor\n"
@@ -4461,6 +4617,10 @@ msgstr "Configuração do serviço a utilizar"
msgid "disable IDN encoding"
msgstr "desactivar codificação IDN"
+#: nss/getent.c:62
+msgid "do not filter out unsupported IPv4/IPv6 addresses (with ahosts*)"
+msgstr "não filtrar endereços IPv4/IPv6 não suportados (com ahosts*)"
+
#: nss/getent.c:67
msgid "Get entries from administrative database."
msgstr "Obter entradas para a base de dados administrativa."
@@ -4567,6 +4727,11 @@ msgstr "chave duplicada"
msgid "problems while reading `%s'"
msgstr "problemas ao ler \"%s\""
+#: nss/makedb.c:748
+#, c-format
+msgid "failed to allocate memory"
+msgstr "falha ao alocar memória"
+
#: nss/makedb.c:814
#, c-format
msgid "failed to write new database file"
@@ -4587,6 +4752,11 @@ msgstr "impossível mapear ficheiro de base de dados"
msgid "file not a database file"
msgstr "o ficheiro não é um ficheiro de base de dados"
+#: nss/makedb.c:893
+#, c-format
+msgid "cannot initialize SELinux context"
+msgstr "impossível inicializar contexto SELinux"
+
#: nss/makedb.c:902
#, c-format
msgid "cannot set file creation context for `%s'"
@@ -4802,7 +4972,7 @@ msgstr "%s: linha %d: a ignorar lixo final \"%s\"\n"
#: stdio-common/psiginfo-data.h:2
msgid "Illegal opcode"
-msgstr "opcode ilegal"
+msgstr "Opcode ilegal"
#: stdio-common/psiginfo-data.h:3
msgid "Illegal operand"
@@ -4818,7 +4988,7 @@ msgstr "Armadilha ilegal"
#: stdio-common/psiginfo-data.h:6
msgid "Privileged opcode"
-msgstr "opcode privilegiado"
+msgstr "Opcode privilegiado"
#: stdio-common/psiginfo-data.h:7
msgid "Privileged register"
@@ -5267,6 +5437,10 @@ msgstr "svc_unix.c - impossível getsocketname ou ouvir"
msgid "failed to turn on BTI protection"
msgstr "falha ao activar protecção BTI"
+#: sysdeps/generic/dl-protected.h:55
+msgid "error due to GNU_PROPERTY_1_NEEDED_INDIRECT_EXTERN_ACCESS"
+msgstr "erro devido a GNU_PROPERTY_1_NEEDED_INDIRECT_EXTERN_ACCESS"
+
#: sysdeps/generic/siglist.h:29
msgid "Hangup"
msgstr "Desligar"
@@ -6266,6 +6440,10 @@ msgstr "erro interno: symidx fora de alcance da tabela fptr"
msgid "Error in unknown error system: "
msgstr "Erro em sistema de erro desconhecido: "
+#: sysdeps/mach/xpg-strerror.c:66 sysdeps/mach/xpg-strerror.c:74
+msgid "Unknown error code: "
+msgstr "Código de erro desconhecido: "
+
#: sysdeps/posix/gai_strerror-strs.h:2
msgid "Address family for hostname not supported"
msgstr "Família de endereço para nome de servidor não suportado"
@@ -6334,6 +6512,10 @@ msgstr "Interrompido por um sinal"
msgid "Parameter string not correctly encoded"
msgstr "Cadeia parâmetro incorrectamente codificada"
+#: sysdeps/posix/gai_strerror-strs.h:19
+msgid "Result too large for supplied buffer"
+msgstr "Resultado demasiado grande para o buffer fornecido"
+
#: sysdeps/x86/dl-prop.h:61
msgid "CPU ISA level is lower than required"
msgstr "O nível ISA da CPU é menor que o requerido"
@@ -6351,6 +6533,34 @@ msgstr "reconstruir objecto partilhado com suporte IBT activo"
msgid "rebuild shared object with SHSTK support enabled"
msgstr "reconstruir objecto partilhado com suporte SHSTK activo"
+#: sysdeps/x86_64/dl-cet.c:251
+msgid "can't disable IBT"
+msgstr "impossível desactivar IBT"
+
+#: sysdeps/x86_64/dl-cet.c:253
+msgid "can't disable SHSTK"
+msgstr "impossível desactivar SHSTK"
+
+#: timezone/zdump.c:131
+#, c-format
+msgid "%s: size overflow\n"
+msgstr "%s: transporte de tamanho\n"
+
+#: timezone/zdump.c:170
+#, c-format
+msgid "%s: Memory exhausted\n"
+msgstr "%s: memória esgotada\n"
+
+#: timezone/zdump.c:257
+#, c-format
+msgid "%s: setenv: %s\n"
+msgstr "%s: setenv: %s\n"
+
+#: timezone/zdump.c:337 timezone/zdump.c:604
+#, c-format
+msgid "%s: unknown timezone '%s': %s\n"
+msgstr "%s: fuso horário desconhecido \"%s\": %s\n"
+
#: timezone/zdump.c:402
msgid "has characters other than ASCII alphanumerics, '-' or '+'"
msgstr "tem outros caracteres além dos alfanuméricos ASCII, \"-\" ou \"+\""
@@ -6405,6 +6615,16 @@ msgstr "%s: argumento %s -c solto\n"
msgid "%s: wild -t argument %s\n"
msgstr "%s: argumento %s -t solto\n"
+#: timezone/zdump.c:857
+#, c-format
+msgid " (gmtime failed)"
+msgstr " (gmtime falhou)"
+
+#: timezone/zdump.c:867
+#, c-format
+msgid " (localtime failed)"
+msgstr " (localtime falhou)"
+
#: timezone/zic.c:463
#, c-format
msgid "%s: Memory exhausted: %s\n"
@@ -6441,11 +6661,50 @@ msgstr " (regra de \"%s\", linha %<PRIdMAX>)"
msgid "warning: "
msgstr "aviso: "
+#: timezone/zic.c:669
+#, c-format
+msgid ""
+"%s: usage is %s [ --version ] [ --help ] [ -v ] \\\n"
+"\t[ -b {slim|fat} ] [ -d directory ] [ -l localtime ] [ -L leapseconds ] \\\n"
+"\t[ -p posixrules ] [ -r '[@lo][/@hi]' ] [ -R '@hi' ] \\\n"
+"\t[ -t localtime-link ] \\\n"
+"\t[ filename ... ]\n"
+"\n"
+"Report bugs to %s.\n"
+msgstr ""
+"%s: uso: %s [ --version ] [ --help ] [ -v ] \\\n"
+"\t[ -b {slim|fat} ] [ -d pasta ] [ -l horalocal ] [ -L saltosegundos ] \\\n"
+"\t[ -p regrasposix ] [ -r '[@lo][/@hi]' ] [ -R '@hi' ] \\\n"
+"\t[ -t lig-horalocal ] \\\n"
+"\t[ nomefich ... ]\n"
+"\n"
+"Relatar erros a %s.\n"
+
#: timezone/zic.c:695
#, c-format
msgid "%s: Can't chdir to %s: %s\n"
msgstr "%s: impossível chdir para %s: %s\n"
+#: timezone/zic.c:786
+#, c-format
+msgid "\"Link %s %s\" is part of a link cycle"
+msgstr "\"Ligação %s %s\" é parte de um ciclo de ligação"
+
+#: timezone/zic.c:797
+#, c-format
+msgid "link %s targets itself"
+msgstr "ligação %s destina-se a si própria"
+
+#: timezone/zic.c:817
+#, c-format
+msgid "link %s targeting link %s mishandled by pre-2023 zic"
+msgstr "ligação %s destinada à ligação %s mal gerida por pre-2023 zic"
+
+#: timezone/zic.c:821
+#, c-format
+msgid "link %s targeting link %s"
+msgstr "ligação %s destinada a ligação %s"
+
#: timezone/zic.c:992
msgid "wild compilation-time specification of zic_t"
msgstr "especificação aleatória de tempo de compilação de zic_t"
@@ -6479,6 +6738,10 @@ msgstr "%s: mais de uma opção -p especificada\n"
msgid "%s: More than one -t option specified\n"
msgstr "%s: mais de uma opção -t especificada\n"
+#: timezone/zic.c:1064
+msgid "-y ignored"
+msgstr "-y ignorada"
+
#: timezone/zic.c:1071
#, c-format
msgid "%s: More than one -L option specified\n"
@@ -6494,10 +6757,20 @@ msgstr "%s: mais de uma opção -r especificada\n"
msgid "%s: invalid time range: %s\n"
msgstr "%s: período inválido: %s\n"
+#: timezone/zic.c:1098
+#, c-format
+msgid "%s: invalid time: %s\n"
+msgstr "%s: hora inválida: %s\n"
+
#: timezone/zic.c:1104
msgid "-s ignored"
msgstr "-s ignorada"
+#: timezone/zic.c:1110
+#, c-format
+msgid "%s: -R time exceeds -r cutoff\n"
+msgstr "tempo %s: -R excede -r cutoff\n"
+
#: timezone/zic.c:1171
msgid "empty file name"
msgstr "nome de ficheiro vazio"
@@ -6537,11 +6810,21 @@ msgstr "o nome de ficheiro \"%s\" contém o byte \"\\%o\""
msgid "%s: Can't create %s/%s: %s\n"
msgstr "%s: impossível criar %s/%s: %s\n"
+#: timezone/zic.c:1388
+#, c-format
+msgid "%s: rename to %s/%s: %s\n"
+msgstr "%s: renomear como %s/%s: %s\n"
+
#: timezone/zic.c:1463
#, c-format
msgid "%s: Can't remove %s/%s: %s\n"
msgstr "%s: impossível remover %s/%s: %s\n"
+#: timezone/zic.c:1507
+#, c-format
+msgid "%s: Can't link %s/%s to %s/%s: %s\n"
+msgstr "%s: impossível ligar %s/%s a %s/%s: %s\n"
+
#: timezone/zic.c:1536
#, c-format
msgid "symbolic link used because hard link failed: %s"
@@ -6571,6 +6854,18 @@ msgstr "mesma regra de nome em múltiplos ficheiros"
msgid "%s in ruleless zone"
msgstr "%s em zona sem regras"
+#: timezone/zic.c:1674
+msgid "input error"
+msgstr "erro de entrada"
+
+#: timezone/zic.c:1679
+msgid "unterminated line"
+msgstr "linha não terminada"
+
+#: timezone/zic.c:1683
+msgid "NUL input byte"
+msgstr "Byte de entrada NUL"
+
#: timezone/zic.c:1688
msgid "line too long"
msgstr "linha muito longa"
@@ -6705,6 +7000,15 @@ msgstr "múltiplas linhas Expires"
msgid "wrong number of fields on Link line"
msgstr "número de campos errados em linha de Link"
+#: timezone/zic.c:2129
+msgid "blank TARGET field on Link line"
+msgstr "campo TARGET em branco em linha Link"
+
+#: timezone/zic.c:2192
+#, c-format
+msgid "FROM year \"%s\" is obsolete; treated as %d"
+msgstr "Ano FROM \"%s\" é obsoleto, tratado como %d"
+
#: timezone/zic.c:2199
msgid "invalid starting year"
msgstr "ano inicial inválido"
@@ -6717,6 +7021,11 @@ msgstr "ano final inválido"
msgid "starting year greater than ending year"
msgstr "ano inicial maior que ano final"
+#: timezone/zic.c:2222
+#, c-format
+msgid "year type \"%s\" is unsupported; use \"-\" instead"
+msgstr "o tipo de ano \"%s\" não é suportado; use antes \"-\""
+
#: timezone/zic.c:2257
msgid "invalid weekday name"
msgstr "nome de dia inválido"
@@ -6730,6 +7039,16 @@ msgstr "clientes de referência gerem mal mais de %d dos tempos de transição"
msgid "pre-2014 clients may mishandle more than 1200 transition times"
msgstr "clientes pré-2014 podem gerir mal mais de 1200 tempos de transição"
+#: timezone/zic.c:2480
+#, c-format
+msgid "%s: pre-2021b clients may mishandle leap second expiry"
+msgstr "%s: clientes pré-2021b podem gerir mal a expiração de segundos de salto"
+
+#: timezone/zic.c:2488
+#, c-format
+msgid "%s: pre-2021b clients may mishandle leap second table truncation"
+msgstr "%s: clientes pré-2021b podem gerir mal tabela para truncar segundos de salto"
+
#: timezone/zic.c:2537
msgid "too many transition times"
msgstr "demasiados tempos de transição"
@@ -6739,6 +7058,10 @@ msgstr "demasiados tempos de transição"
msgid "%%z UT offset magnitude exceeds 99:59:59"
msgstr "magnitude do desvio UT %%z excede 99:59:59"
+#: timezone/zic.c:3180
+msgid "no proleptic TZ string for zone"
+msgstr "nenhuma cadeia proleptic TZ para zona"
+
#: timezone/zic.c:3186
#, c-format
msgid "%s: pre-%d clients may mishandle distant timestamps"
@@ -6764,6 +7087,10 @@ msgstr "demasiados tipos de tempo local"
msgid "too many leap seconds"
msgstr "demasiados segundos de salto"
+#: timezone/zic.c:3534
+msgid "Rolling leap seconds not supported with -r"
+msgstr "Segundos rolantes não suportados com -r"
+
#: timezone/zic.c:3561
msgid "Leap seconds too close together"
msgstr "Segundos de salto muito juntos"
@@ -6786,6 +7113,10 @@ msgstr "\"%s\" é ambíguo em zic pré-2017c"
msgid "Odd number of quotation marks"
msgstr "Número ímpar de aspas"
+#: timezone/zic.c:3749
+msgid "Too many input fields"
+msgstr "Demasiados ficheiros de entrada"
+
#: timezone/zic.c:3838
msgid "use of 2/29 in non leap-year"
msgstr "uso de 2/29 em ano não-bissexto"
diff --git a/po/pt_BR.po b/po/pt_BR.po
index 23be0a6..9f611e9 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -11,7 +11,7 @@
msgid ""
msgstr ""
"Project-Id-Version: libc 2.33.9000\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
"PO-Revision-Date: 2021-08-26 04:41-0300\n"
"Last-Translator: Rafael Fontenelle <rafaelff@gnome.org>\n"
"Language-Team: Brazilian Portuguese <ldpbr-translation@lists.sourceforge.net>\n"
@@ -103,7 +103,7 @@ msgstr "(ERRO DE PROGRAMA) Versão desconhecida!?"
msgid "%s: Too many arguments\n"
msgstr "%s: Argumentos demais\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(ERRO DE PROGRAMA) Opção deveria ter sido reconhecida!?"
@@ -135,7 +135,7 @@ msgstr ""
"-o ARQUIVO-SAÃDA [ARQUIVO-ENTRADA]...\n"
"[ARQUIVO-SAÃDA [ARQUIVO-ENTRADA...]"
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -150,7 +150,7 @@ msgstr ""
"%s.\n"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -167,7 +167,7 @@ msgstr ""
"PROPÓSITO EME PARTICULAR.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -374,7 +374,7 @@ msgstr "O arquivo de cache tem endianismo incorreto.\n"
msgid "Cache generated by: "
msgstr "Cache gerado por: "
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Não foi possível abrir arquivo de cache %s\n"
@@ -444,11 +444,11 @@ msgstr "erro ao carregar bibliotecas compartilhadas"
msgid "DYNAMIC LINKER BUG!!!"
msgstr "ERRO NO VINCULADOR DINÂMICO!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "não é possível criar lista de escopo"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "objeto compartilhado não está aberto"
@@ -477,11 +477,11 @@ msgstr "não foi possível alocar lista de dependências"
msgid "cannot allocate symbol search list"
msgstr "não foi possível alocar lista de pesquisa de símbolos"
-#: elf/dl-hwcaps.c:104
+#: elf/dl-hwcaps.c:103
msgid "cannot create HWCAP priorities"
msgstr "não foi possível criar prioridades HWCAP"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "não foi possível criar lista de capacidades"
@@ -501,95 +501,95 @@ msgstr "não foi possível criar cópia de RUNPATH/RPATH"
msgid "cannot create search path array"
msgstr "não foi possível criar vetor de caminho de pesquisa"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "não foi possível obter estado do objeto compartilhado"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "não foi possível criar descritor de objeto compartilhado"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "não foi possível carregar dados do arquivo"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "arquivo de objeto não tem segmentos carregáveis"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "não foi possível carregar dinamicamente o executável"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "arquivo de objeto não tem seção dinâmica"
-#: elf/dl-load.c:1289
+#: elf/dl-load.c:1294
msgid "cannot dynamically load position-independent executable"
msgstr "não foi possível carregar dinamicamente o executável independente de posição"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "objeto compartilhado não pode ser dlopen()ado"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "não foi possível alocar memória para cabeçalho do programa"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "não foi possível habilitar pilhas de executável como requisitado pelo objeto compartilhado"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "não é possível fechar o descritor de arquivo"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "arquivo pequeno demais"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "cabeçalho de ELF inválido"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "codificação de dados de arquivo ELF não é big-endian"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "codificação de dados de arquivo ELF não é little-endian"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "identificação de versão de arquivo ELF não corresponde ao atual"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "ABI de SO do arquivo ELF inválido"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "versão de ABI do arquivo ELF inválido"
-#: elf/dl-load.c:1669
+#: elf/dl-load.c:1670
msgid "nonzero padding in e_ident"
msgstr "espaçamento não-zero em e_ident"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "erro interno"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "versão de arquivo ELF não corresponde à atual"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "apenas ET_DYN e ET_EXEC podem ser carregados"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "phentsize do arquivo ELF não está no tamanho esperado"
@@ -617,15 +617,15 @@ msgstr "não é possível alterar proteções de memória"
msgid "cannot map zero-fill pages"
msgstr "não é possível mapear páginas preenchidas com zero"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "erro de procura por símbolo"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "não foi possível estender escopo global"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "Contador de geração TLS envolto! Por favor, relate isso."
@@ -666,7 +666,7 @@ msgstr "não foi possível aplicar proteção de memória adicional após realoc
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "RTLD_NEXT usado em código não dinamicamente carregado"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "não é possível criar estruturas de dados TLS"
@@ -678,214 +678,214 @@ msgstr "erro na procura por versão"
msgid "cannot allocate version reference table"
msgstr "não foi possível alocar tabela de referência de versão"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "Mostra o cache"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "Gera mensagens detalhadas"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "Não compila o cache"
-#: elf/ldconfig.c:128
+#: elf/ldconfig.c:127
msgid "Don't update symbolic links"
msgstr "Não atualiza links simbólicos"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "Muda para e usa RAIZ como diretório raiz"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "RAIZ"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "CACHE"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "Usa CACHE como arquivo de cache"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "CONF"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "Usa CONF como arquivo de configuração"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "Processa apenas diretórios especificados na linha de comando. Não compila o cache."
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "Vincula manualmente bibliotecas individuais."
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "FORMATO"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "Format to use: new (default), old, or compat"
msgstr "Formato para usar: new (padrão), old ou compat"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "Ignora arquivo de cache auxiliar"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "Configura associações de tempo real do vinculador dinâmico."
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "Caminho “%s†fornecido mais de uma vez"
-#: elf/ldconfig.c:278
+#: elf/ldconfig.c:277
#, c-format
msgid "(from %s:%d and %s:%d)\n"
msgstr "(de %s:%d e %s:%d)\n"
-#: elf/ldconfig.c:310 elf/ldconfig.c:351
+#: elf/ldconfig.c:309 elf/ldconfig.c:350
#, c-format
msgid "Could not form glibc-hwcaps path"
msgstr "Não foi possível formar o caminho de glibc-hwcaps"
-#: elf/ldconfig.c:324
+#: elf/ldconfig.c:323
#, c-format
msgid "Listing directory %s"
msgstr "Listando o diretório %s"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "Não foi possível obter estado de %s"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "Não foi possível obter estado de %s\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s não é um link simbólico\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "Não foi possível desvincular %s"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "Não foi possível vincular %s a %s"
# link alterado
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (alterado)\n"
# link ignorado
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (IGNORADO)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "Não foi possível localizar %s"
# `lstat' similar a stat(), mas para links; `stat' = obtém estado de arquivo
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "Não foi possível obter estado do link %s"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "Arquivo %s ignorado já que agora não é mais um arquivo comum."
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "Nenhum link foi criado porque um soname não foi encontrado para %s"
-#: elf/ldconfig.c:701
+#: elf/ldconfig.c:700
#, c-format
msgid " (from %s:%d)\n"
msgstr " (de %s:%d)\n"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "Não foi possível abrir o diretório %s"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "Arquivo de entrada %s não foi localizado.\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "Não foi possível obter estado do arquivo %s"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "biblioteca libc6 %s em diretório errado"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "bibliotecas %s e %s no diretório %s têm o mesmo soname, mas tipos diferentes."
-#: elf/ldconfig.c:1051
+#: elf/ldconfig.c:1050
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr "Aviso: ignorando arquivo de configuração que não pode ser aberto: %s"
-#: elf/ldconfig.c:1099
+#: elf/ldconfig.c:1098
#, c-format
msgid "%s:%u: hwcap directive ignored"
msgstr "%s:%u: diretiva hwcap ignorada"
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "necessita de nome de arquivo absoluto para arquivo de configuração quando usado -r"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "memória esgotada"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: não foi possível ler diretório %s"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "caminho relativo “%s†usado para compilar o cache"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "Não foi possível mudar o diretório para /"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "Não foi possível abrir o diretório de arquivo cache %s\n"
@@ -1240,82 +1240,82 @@ msgstr "SHOBJ [DADOSPERFIL]"
msgid "failed to load shared object `%s'"
msgstr "falha no carregamento do objeto compartilhado “%sâ€"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "não é possível criar descritor interno"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "Reabertura de objeto compartilhado “%s†falhou"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "a leitura de cabeçalhos de seção falhou"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "a leitura da tabela de string do cabeçalho da seção falhou"
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** Não foi possível ler o arquivo de debuginfo: %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "não foi possível determinar o nome do arquivo"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "a leitura de cabeçalho de ELF falhou"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** O arquivo “%s†está sem símbolos (stripped): análise detalhada é impossível\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "falha ao carregar dados de símbolos"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "impossível carregar dados de perfil"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "enquanto obtinha estado do arquivo de dados de perfil"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "arquivo de dados de perfil “%s†não coincide com objetos compartilhados “%sâ€"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "falha para mapear (mmap) o arquivo de dados de perfil"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "erro ao fechar arquivo de dados de perfil"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "“%s†não é o arquivo de perfil de dados correto para “%sâ€"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "não foi possível alocar dados de símbolos"
@@ -2747,7 +2747,7 @@ msgid "cannot resize archive file"
msgstr "não foi possível redimensionar o arquivo do pacote"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "não foi possível mapear o cabeçalho do pacote"
@@ -2806,59 +2806,59 @@ msgstr "não foi possível obter estado do pacote de localidade “%sâ€"
msgid "cannot lock locale archive \"%s\""
msgstr "não foi possível travar o pacote de localidade “%sâ€"
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "não foi possível ler o cabeçalho do pacote"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "localidade “%s†já existe"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "não foi possível adicionar ao pacote de localidade"
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "arquivo de apelido de localidade “%s†não localizado"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "Adicionando %s\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "obtenção de estado de “%s†falhou: %s: ignorado"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "“%s†não é um diretório; ignorado"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "não foi possível abrir o diretório “%sâ€: %s: ignorado"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "definição incompleta dos arquivos de localização em “%sâ€"
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "não foi possível ler todos os arquivos em “%sâ€: ignorado"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "localidade “%s†não está no pacote"
diff --git a/po/ro.po b/po/ro.po
index d90d70a..53f16c4 100644
--- a/po/ro.po
+++ b/po/ro.po
@@ -12,13 +12,14 @@
# Actualizare a traducerii pentru versiunea 2.38.9000, făcută de R-GC, ian-2024.
# Actualizare a traducerii pentru versiunea 2.39.9000, făcută de R-GC, iun-2024.
# Actualizare a traducerii pentru versiunea 2.40.9000, făcută de R-GC, ian-2025.
+# Actualizare a traducerii pentru versiunea 2.41.9000, făcută de R-GC, iul-2025.
# Actualizare a traducerii pentru versiunea Y, făcută de X, Z(luna-anul).
#
msgid ""
msgstr ""
-"Project-Id-Version: libc 2.40.9000\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
-"PO-Revision-Date: 2025-01-06 19:25+0100\n"
+"Project-Id-Version: libc 2.41.9000\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
+"PO-Revision-Date: 2025-07-20 12:01+0200\n"
"Last-Translator: Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>\n"
"Language-Team: Romanian <translation-team-ro@lists.sourceforge.net>\n"
"Language: ro\n"
@@ -109,7 +110,7 @@ msgstr "(EROARE DE PROGRAM) Nu se cunoaște versiunea!?"
msgid "%s: Too many arguments\n"
msgstr "%s: Prea multe argumente\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(EROARE DE PROGRAM) Opțiunea ar fi trebuit să fie recunoscută!?"
@@ -151,7 +152,7 @@ msgstr ""
"-o FIȘIER-IEȘIRE [FIȘIER-INTRARE]...\n"
"[FIȘIER-IEȘIRE [FIȘIER-INTRARE]...]"
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -166,7 +167,7 @@ msgstr ""
"%s.\n"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -182,7 +183,7 @@ msgstr ""
"garanție; nici măcar pentru COMERCIALIZARE sau POTRIVIRE PENTRU UN ANUMIT SCOP.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -420,7 +421,7 @@ msgstr "Fișierul zonei de prestocare(cache) are tipul de „endianness†greș
msgid "Cache generated by: "
msgstr "Zonă de prestocare(cache) generată de către: "
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Nu se poate deschide fișierul spațiului de prestocare(cache) %s\n"
@@ -489,11 +490,11 @@ msgstr "eroare la încărcarea bibliotecilor partajate"
msgid "DYNAMIC LINKER BUG!!!"
msgstr "EROARE ÎN EDITORUL/VINCULATORUL DE LEGĂTURI DINAMICE!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "nu s-a putut crea lista de domenii"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "obiectul partajat nu este deschis"
@@ -524,11 +525,11 @@ msgstr "nu se poate aloca lista de dependențe"
msgid "cannot allocate symbol search list"
msgstr "nu se poate aloca lista de căutare a simbolurilor"
-#: elf/dl-hwcaps.c:104
+#: elf/dl-hwcaps.c:103
msgid "cannot create HWCAP priorities"
msgstr "nu se pot crea priorități HWCAP"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "nu se poate crea lista de capacităț/iproprietăți"
@@ -548,99 +549,99 @@ msgstr "nu se poate crea o copie RUNPATH/RPATH"
msgid "cannot create search path array"
msgstr "nu se poate crea matricea de rute de căutare"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "nu s-a putut obține starea obiectului partajat"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "nu se poate crea un descriptor de obiect partajat"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "nu se pot citi datele fișierului"
-#: elf/dl-load.c:1138 elf/dl-map-segments.h:117
+#: elf/dl-load.c:1143 elf/dl-map-segments.h:118
msgid "ELF load command address/offset not page-aligned"
msgstr "Adresa/poziția comenzii de încărcare ELF nu este aliniată în pagină"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "fișierul obiect nu are segmente încărcabile"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "nu se poate încărca în mod dinamic executabilul"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "fișierul obiect nu are secțiune dinamică"
-#: elf/dl-load.c:1289
+#: elf/dl-load.c:1294
msgid "cannot dynamically load position-independent executable"
msgstr "nu poate încărca dinamic executabilul independent de poziție"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "obiectul partajat nu poate fi deschis cu dlopen()"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "nu se poate aloca memorie pentru antetul programului"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "nu se poate activa stiva executabilă așa cum necesită obiectul partajat"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "nu se poate închide descriptorul de fișier"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "fișier prea scurt"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "antet ELF nevalid"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "codificarea datelor fișierului ELF nu este de tipul big-endian"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "codificarea datelor fișierului ELF nu este de tipul little-endian"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "versiunea de identificare a fișierului ELF nu se potrivește cu cea actuală"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "ABI(interfața) SO(sistemului operațional) a fișierului ELF nu este validă"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "versiunea ABI a fișierului ELF nu este validă"
-#: elf/dl-load.c:1669
+#: elf/dl-load.c:1670
msgid "nonzero padding in e_ident"
msgstr "umplutură diferită de zero în e_ident"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "eroare internă"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "versiunea fișierului ELF nu se potrivește cu cea actuală"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "numai ET_DYN și ET_EXEC pot fi încărcate"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "„phentsize†a fișierului ELF nu are dimensiunea așteptată"
@@ -668,19 +669,19 @@ msgstr "nu se pot modifica protecțiile memoriei"
msgid "cannot map zero-fill pages"
msgstr "nu se pot memora pagini umplute cu zerouri"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "eroare de căutare a simbolului"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "nu se poate extinde domeniul global"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "Contorul de generare TLS a intrat în buclă! Raportați acest lucru!"
-#: elf/dl-open.c:716
+#: elf/dl-open.c:717
msgid "cannot allocate address lookup data"
msgstr "nu s-au putut aloca datele de căutare a adresei"
@@ -721,7 +722,7 @@ msgstr "nu se poate aplica protecția suplimentară de memorie după realocare"
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "RTLD_NEXT utilizat în cod nu s-a încărcat dinamic"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "nu se pot crea structurile de date TLS"
@@ -733,220 +734,220 @@ msgstr "eroare la căutarea versiunii"
msgid "cannot allocate version reference table"
msgstr "nu se poate aloca tabelul de referință al versiunii"
-#: elf/dl-version.c:380
+#: elf/dl-version.c:387
msgid "DT_RELR without GLIBC_ABI_DT_RELR dependency"
msgstr "DT_RELR fără dependență de GLIBC_ABI_DT_RELR"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "Afișează zona de prestocare(cache)"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "Generează mesaje detaliate"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "Nu construiește zona de prestocare(cache)"
-#: elf/ldconfig.c:128
+#: elf/ldconfig.c:127
msgid "Don't update symbolic links"
msgstr "Nu actualizează legăturile simbolice"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "Schimbă la ROOT și-l utilizează ca director rădăcină"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "ROOT"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "CACHE"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "Utilizează CACHE ca fișier de zonă de prestocare(cache)"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "CONF"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "Utilizează CONF ca fișier de configurare"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "Procesează doar directoarele specificate în linia de comandă. Nu construiește zona de prestocare(cache)."
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "Vinculați manual biblioteci individuale."
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "FORMAT"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "Format to use: new (default), old, or compat"
msgstr "Format de utilizat: „new†(nou) implicit, „old†(vechi) sau „compat†(compatibil)"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "Ignoră fișierul de zonă de prestocare(cache) auxiliar"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "Configurează asocierile de timp de execuție ale editorului de legături dinamic."
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "Ruta „%s†a fost dată de mai multe ori"
-#: elf/ldconfig.c:278
+#: elf/ldconfig.c:277
#, c-format
msgid "(from %s:%d and %s:%d)\n"
msgstr "(de la %s:%d și %s:%d)\n"
-#: elf/ldconfig.c:310 elf/ldconfig.c:351
+#: elf/ldconfig.c:309 elf/ldconfig.c:350
#, c-format
msgid "Could not form glibc-hwcaps path"
msgstr "Nu s-a putut forma ruta glibc-hwcaps"
-#: elf/ldconfig.c:324
+#: elf/ldconfig.c:323
#, c-format
msgid "Listing directory %s"
msgstr "Listare director %s"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "Nu se poate obține starea %s"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "Nu se poate obține starea %s\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s nu este o legătură simbolică\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "Nu se poate înlătura legătura %s"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "Nu se poate face legătura între %s și %s"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (schimbat)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (OMIS)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "Nu se poate găsi %s"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "Nu se poate obține starea legăturii %s"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "S-a ignorat fișierul %s, deoarece nu este un fișier obișnuit."
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "Nu s-a creat nicio legătură, deoarece „soname†(biblioteca obiectului partajat) nu a fost găsită pentru %s"
-#: elf/ldconfig.c:701
+#: elf/ldconfig.c:700
#, c-format
msgid " (from %s:%d)\n"
msgstr " (de la %s:%d)\n"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "Nu se poate deschide directorul %s"
-#: elf/ldconfig.c:743 elf/ldconfig.c:748
+#: elf/ldconfig.c:742 elf/ldconfig.c:747
#, c-format
msgid "Could not form library path"
msgstr "Nu s-a putut forma ruta bibliotecii"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "Fișierul de intrare %s nu a fost găsit.\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "Nu se poate obține starea %s"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "biblioteca libc6 %s este într-un director greșit"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "bibliotecile %s È™i %s din directorul %s au acelaÈ™i „sonameâ€, dar tip diferit."
-#: elf/ldconfig.c:1051
+#: elf/ldconfig.c:1050
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr "Avertisment: se ignoră fișierul de configurare care nu poate fi deschis: %s"
-#: elf/ldconfig.c:1099
+#: elf/ldconfig.c:1098
#, c-format
msgid "%s:%u: hwcap directive ignored"
msgstr "%s:%u: directiva hwcap a fost ignorată"
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "este nevoie de numele absolut de fiÈ™ier pentru fiÈ™ierul de configurare atunci când se utilizează opÈ›iunea „-râ€"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "memorie epuizată"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: nu se poate citi directorul %s"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "ruta relativă „%s†este folosită pentru a construi spațiul de prestocare (cache)"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "Nu se poate executa «chdir» la /"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "Nu se poate deschide directorul de fișiere de spațiu de prestocare(cache) %s\n"
@@ -1299,82 +1300,82 @@ msgstr "OBIECT_PARTAJAT [DATE_PROFILARE]"
msgid "failed to load shared object `%s'"
msgstr "nu s-a putut încărca obiectul partajat „%sâ€"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "nu se poate crea un descriptor intern"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "Redeschiderea obiectului partajat „%s†a eșuat"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "citirea antetelor secțiunilor a eșuat"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "citirea tabelului de șiruri de antet de secțiune a eșuat"
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** Nu se poate citi numele fișierului cu informațiile de depanare: %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "nu se poate determina numele fișierului"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "citirea antetului ELF a eșuat"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** Fișierul „%s†a fost curățat de datele suplimentare: nu este posibilă o analiză detaliată\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "nu s-au putut încărca datele simbolului"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "nu se pot încărca datele de profilare"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "la evaluarea de către stat() a fișierului de date de profilare"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "fiÈ™ierul de date de profilare „%s†nu se potriveÈ™te cu obiectul partajat „%sâ€"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "nu s-a reușit executarea a mmap asupra fișierului de date de profilare"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "eroare la închiderea fișierului de date de profilare"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "„%s†nu este un fiÈ™ier de date de profil corect pentru „%sâ€"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "nu se pot aloca datele simbolului"
@@ -2872,7 +2873,7 @@ msgid "cannot resize archive file"
msgstr "nu se poate redimensiona fișierul de arhivă"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "nu se poate plasa antetul arhivei în memorie"
@@ -2931,64 +2932,70 @@ msgstr "nu s-a putut obÈ›ine starea arhivei regională „%sâ€"
msgid "cannot lock locale archive \"%s\""
msgstr "nu se poate bloca arhiva regională „%sâ€"
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:642 locale/programs/locarchive.c:656
+#: locale/programs/locarchive.c:664 locale/programs/locarchive.c:685
+#, c-format
+msgid "cannot unlock archive header"
+msgstr "nu se poate debloca antetul arhivei"
+
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "nu se poate citi antetul arhivei"
-#: locale/programs/locarchive.c:661
+#: locale/programs/locarchive.c:665
#, c-format
msgid "bad magic value in archive header"
msgstr "valoare magică incorectă în antetul arhivei"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "configurația regională „%s†există deja"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "nu se poate adăuga la arhiva lregională"
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "fișierul alias al configurării regionale „%s†nu a fost găsit"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "Se adaugă %s\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "obținerea stării lui „%s†a eșuat: %s: se ignoră"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "„%s†nu este un director; se ignoră"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "nu se poate deschide directorul „%sâ€: %s: se ignoră"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "set incomplet de fiÈ™iere de localizare regională în „%sâ€"
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "nu se pot citi toate fiÈ™ierele din „%sâ€: se ignoră"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "configurația regională „%s†nu este în arhivă"
diff --git a/po/ru.po b/po/ru.po
index 296f4eb..47189a3 100644
--- a/po/ru.po
+++ b/po/ru.po
@@ -8,12 +8,12 @@
# Dimitriy Ryazantcev <DJm00n@mail.ru>, 2009.
# Pavel Maryanov <acid_jack@ukr.net>, 2009.
# Dmitry V. Levin <ldv@altlinux.org>, 2012.
-# Yuri Kozlov <yuray@komyakino.ru>, 2009, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024.
+# Yuri Kozlov <yuray@komyakino.ru> 2009, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025.
msgid ""
msgstr ""
-"Project-Id-Version: libc 2.38.9000\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
-"PO-Revision-Date: 2024-06-07 18:04+0300\n"
+"Project-Id-Version: libc 2.40.9000\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
+"PO-Revision-Date: 2025-04-12 09:05+0300\n"
"Last-Translator: Yuri Kozlov <yuray@komyakino.ru>\n"
"Language-Team: Russian <gnu@d07.ru>\n"
"Language: ru\n"
@@ -22,7 +22,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"X-Bugs: Report translation errors to the Language-Team address.\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
-"X-Generator: Lokalize 22.12.3\n"
+"X-Generator: Lokalize 24.12.0\n"
#: argp/argp-help.c:229
#, c-format
@@ -104,10 +104,20 @@ msgstr "(ОШИБКРПРОГРÐММЫ) ВерÑÐ¸Ñ Ð½ÐµÐ¸Ð·Ð²ÐµÑтна!?"
msgid "%s: Too many arguments\n"
msgstr "%s: Слишком много аргументов\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(ОШИБКРПРОГРÐММЫ) Ключ должен быть раÑпознан!?"
+#: assert/assert-perr.c:35
+#, c-format
+msgid "%s%s%s:%u: %s%sUnexpected error: %s.\n"
+msgstr "%s%s%s:%u: %s%sÐÐµÐ¾Ð¶Ð¸Ð´Ð°Ð½Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ°: %s.\n"
+
+#: assert/assert.c:127
+#, c-format
+msgid "%s%s%s:%u: %s%sAssertion `%s' failed.\n"
+msgstr "%s%s%s:%u: %s%sПроверочное утверждение «%s» не выполнено.\n"
+
#: catgets/gencat.c:111
msgid "Create C header file NAME containing symbol definitions"
msgstr "Создает заголовочный файл Ñ Ð˜ÐœÐ•ÐЕМ на Си, Ñодержащий Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ñимволов."
@@ -136,7 +146,7 @@ msgstr ""
"-o ВЫХОДÐОЙ-ФÐЙЛ [ВХОДÐОЙ-ФÐЙЛ]…\n"
"[ВЫХОДÐОЙ-ФÐЙЛ [ВХОДÐОЙ-ФÐЙЛ]…]"
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -151,7 +161,7 @@ msgstr ""
"%s.\n"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -168,7 +178,7 @@ msgstr ""
"КОММЕРЧЕСКОЙ ПРИГОДÐОСТИ или ПРИГОДÐОСТИ ДЛЯ КÐКОЙ-ЛИБО ЦЕЛИ.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -283,6 +293,21 @@ msgstr "[ФÐЙЛ]"
msgid "cannot read header"
msgstr "невозможно Ñчитать заголовок"
+#: debug/pcprofiledump.c:99
+#, c-format
+msgid "cannot read pointer pair"
+msgstr "не удалоÑÑŒ прочитать пару указателей"
+
+#: debug/pcprofiledump.c:107
+#, c-format
+msgid "unexpected end of file in header"
+msgstr "неожиданный конец файла в заголовке"
+
+#: debug/pcprofiledump.c:110
+#, c-format
+msgid "unexpected end of file in pointer pair"
+msgstr "неожиданный конец файла в паре указателей"
+
#: debug/pcprofiledump.c:145
#, c-format
msgid "cannot open input file"
@@ -384,7 +409,7 @@ msgstr "Ð’ кÑш-файле некорректный порÑдок ÑледоÐ
msgid "Cache generated by: "
msgstr "КÑш Ñгенерирован: "
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Ðевозможно открыть кÑш-файл %s\n"
@@ -453,11 +478,11 @@ msgstr "ошибка при загрузке разделÑемых библио
msgid "DYNAMIC LINKER BUG!!!"
msgstr "ОШИБКРДИÐÐМИЧЕСКОГО КОМПОÐОВЩИКÐ!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "невозможно Ñоздать ÑпиÑок облаÑтей"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "разделÑемый объект не открыт"
@@ -486,11 +511,11 @@ msgstr "невозможно выделить памÑть под ÑпиÑок Ð
msgid "cannot allocate symbol search list"
msgstr "невозможно выделить памÑть под ÑпиÑок поиÑка Ñимволов"
-#: elf/dl-hwcaps.c:104
+#: elf/dl-hwcaps.c:103
msgid "cannot create HWCAP priorities"
msgstr "невозможно Ñоздать приоритеты HWCAP"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "невозможно Ñоздать capability list"
@@ -510,100 +535,100 @@ msgstr "невозможно Ñоздать копию RUNPATH/RPATH"
msgid "cannot create search path array"
msgstr "невозможно Ñоздать маÑÑив путей поиÑка"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "невозможно выполнить stat Ð´Ð»Ñ Ñ€Ð°Ð·Ð´ÐµÐ»Ñемого объекта"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "невозможно Ñоздать деÑкриптор разделÑемого объекта"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "невозможно прочитать данные файла"
-#: elf/dl-load.c:1138 elf/dl-map-segments.h:117
+#: elf/dl-load.c:1143 elf/dl-map-segments.h:118
msgid "ELF load command address/offset not page-aligned"
msgstr "адреÑ/Ñмещение команды загрузки ELF не выровнен по Ñтранице"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "в объектном файле нет загружаемых Ñегментов"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "невозможно динамичеÑки загрузить иÑполнÑемый файл"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "в объектном файле нет динамичеÑкой Ñекции"
-#: elf/dl-load.c:1289
+#: elf/dl-load.c:1294
msgid "cannot dynamically load position-independent executable"
msgstr "невозможно динамичеÑки загрузить незавиÑимый от раÑÐ¿Ð¾Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¸ÑполнÑемый файл"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "невозможно применить dlopen() к разделÑемому объекту"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "невозможно выделить памÑть под заголовок программы"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "невозможно задейÑтвовать иÑполнÑемый Ñтек, как требует разделÑемый объект"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "невозможно закрыть деÑкриптор файла"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "файл Ñлишком мал"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "неверный заголовок ELF"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "кодировка данных в ELF-файле не тупоконечнаÑ"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "кодировка данных в ELF-файле не оÑтроконечнаÑ"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "идентификатор верÑии ELF-файла не ÑоответÑтвует текущей верÑии"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "неверный ABI ОС ELF-файла"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "Ð½ÐµÐ²ÐµÑ€Ð½Ð°Ñ Ð²ÐµÑ€ÑÐ¸Ñ ABI ELF-файла"
-#: elf/dl-load.c:1669
+#: elf/dl-load.c:1670
msgid "nonzero padding in e_ident"
msgstr "заполнение в e_ident не равно нулю"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "внутреннÑÑ Ð¾ÑˆÐ¸Ð±ÐºÐ°"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "верÑÐ¸Ñ ELF-файла не ÑоответÑтвует текущей верÑии"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "можно загрузить только ET_DYN и ET_EXEC"
# ???
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "phentsize ELF-файла не Ñовпадает Ñ Ð¾Ð¶Ð¸Ð´Ð°ÐµÐ¼Ñ‹Ð¼ размером"
@@ -631,19 +656,19 @@ msgstr "невозможно изменить защиту памÑти"
msgid "cannot map zero-fill pages"
msgstr "невозможно отобразить Ñтраницы Ð·Ð°Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð½ÑƒÐ»Ñми"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "ошибка поиÑка Ñимвола"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "невозможно раÑширить глобальную облаÑть"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "Переполнение Ñчетчика поколений TLS! ПожалуйÑта, Ñообщите об Ñтом."
-#: elf/dl-open.c:716
+#: elf/dl-open.c:717
msgid "cannot allocate address lookup data"
msgstr "невозможно выделить памÑть под данные поиÑка по адреÑу"
@@ -684,7 +709,7 @@ msgstr "невозможно применить дополнительную зÐ
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "RTLD_NEXT иÑпользовано в не динамичеÑки загруженном коде"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "невозможно Ñоздать Ñтруктуры данных TLS"
@@ -696,220 +721,220 @@ msgstr "ошибка поиÑка верÑии"
msgid "cannot allocate version reference table"
msgstr "невозможно выделить памÑть под таблицу ÑÑылок на верÑии"
-#: elf/dl-version.c:380
+#: elf/dl-version.c:387
msgid "DT_RELR without GLIBC_ABI_DT_RELR dependency"
msgstr "DT_RELR без завиÑимоÑти GLIBC_ABI_DT_RELR"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "Ðапечатать кÑш"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "Генерировать подробные ÑообщениÑ"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "Ðе Ñтроить кÑш"
-#: elf/ldconfig.c:128
+#: elf/ldconfig.c:127
msgid "Don't update symbolic links"
msgstr "Ðе обновлÑть Ñимвольные ÑÑылки"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "Перейти в КОРЕÐЬ и иÑпользовать его как корневой каталог"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "КОРЕÐЬ"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "КЭШ"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "ИÑпользовать КЭШ в качеÑтве кÑш-файла"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "КОÐФИГУРÐЦИЯ"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "ИÑпользовать КОÐФИГУРÐЦИЯ в качеÑтве конфигурационного файла"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "Обработать только каталоги, указанные в командной Ñтроке. Ðе Ñтроить кÑш."
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "Вручную Ñкомпоновать отдельные библиотеки."
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "FORMAT"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "Format to use: new (default), old, or compat"
msgstr "ИÑпользуемый формат: new (по умолчанию), old или compat"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "Игнорирование вÑпомогательного файла кÑша"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "ÐаÑтраивает ÑвÑзи времени Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ð´Ð¸Ð½Ð°Ð¼Ð¸Ñ‡ÐµÑкого компоновщика."
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "Путь «%s» задан неÑколько раз"
-#: elf/ldconfig.c:278
+#: elf/ldconfig.c:277
#, c-format
msgid "(from %s:%d and %s:%d)\n"
msgstr "(из %s:%d и %s:%d)\n"
-#: elf/ldconfig.c:310 elf/ldconfig.c:351
+#: elf/ldconfig.c:309 elf/ldconfig.c:350
#, c-format
msgid "Could not form glibc-hwcaps path"
msgstr "Ðе удалоÑÑŒ Ñформировать путь glibc-hwcaps"
-#: elf/ldconfig.c:324
+#: elf/ldconfig.c:323
#, c-format
msgid "Listing directory %s"
msgstr "ПроÑмотр каталога %s"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "Ðевозможно выполнить stat %s"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "Ðевозможно выполнить stat %s\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s не ÑвлÑетÑÑ Ñимвольной ÑÑылкой\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "Ðевозможно удалить ÑÑылку %s"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "Ðевозможно Ñоздать ÑÑылку Ñ %s на %s"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (изменено)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (ПРОПУЩЕÐО)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "Ðевозможно найти %s"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "Ðевозможно выполнить lstat %s"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "Файл %s проигнорирован, поÑкольку не ÑвлÑетÑÑ Ð¾Ð±Ñ‹Ñ‡Ð½Ñ‹Ð¼ файлом"
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "СÑылка не Ñоздана, поÑкольку Ð´Ð»Ñ %s не было найдено soname"
-#: elf/ldconfig.c:701
+#: elf/ldconfig.c:700
#, c-format
msgid " (from %s:%d)\n"
msgstr " (из %s:%d)\n"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "Ðевозможно открыть каталог %s"
-#: elf/ldconfig.c:743 elf/ldconfig.c:748
+#: elf/ldconfig.c:742 elf/ldconfig.c:747
#, c-format
msgid "Could not form library path"
msgstr "Ðе удалоÑÑŒ ÑконÑтруировать путь библиотеки"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "Входной файл %s не найден.\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "Ðевозможно выполнить stat %s"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "libc6-библиотека %s в неправильном каталоге"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "библиотеки %s и %s в каталоге %s имеют одинаковый soname, но разные типы."
-#: elf/ldconfig.c:1051
+#: elf/ldconfig.c:1050
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr "Предупреждение: файл наÑтройки игнорируетÑÑ, так как не может быть открыт: %s"
-#: elf/ldconfig.c:1099
+#: elf/ldconfig.c:1098
#, c-format
msgid "%s:%u: hwcap directive ignored"
msgstr "%s:%u: директива hwcap игнорируетÑÑ"
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "при иÑпользовании -r необходимо задавать абÑолютное Ð¸Ð¼Ñ Ð´Ð»Ñ ÐºÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ð¾Ð½Ð½Ð¾Ð³Ð¾ файла"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "памÑть иÑчерпана"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: невозможно прочитать каталог %s"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "Ð´Ð»Ñ Ð¿Ð¾ÑÑ‚Ñ€Ð¾ÐµÐ½Ð¸Ñ ÐºÑша иÑпользован отноÑительный путь «%s»"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "Ðевозможно перейти в каталог /"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "Ðевозможно открыть каталог кÑш-файла %s\n"
@@ -1262,82 +1287,82 @@ msgstr "РÐЗД-ОБЪЕКТ [ПРОФ-ДÐÐÐЫЕ]"
msgid "failed to load shared object `%s'"
msgstr "не удалоÑÑŒ загрузить разделÑемый объект «%s»"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "невозможно Ñоздать внутренний деÑкриптор"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "Сбой повторного Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚Ð¸Ñ Ñ€Ð°Ð·Ð´ÐµÐ»Ñемого объекта «%s»"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "чтение заголовков Ñекции завершилоÑÑŒ неудачно"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "чтение Ñтроки заголовка Ñекции завершилоÑÑŒ неудачно"
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** Ðевозможно прочитать файл Ñ Ð¾Ñ‚Ð»Ð°Ð´Ð¾Ñ‡Ð½Ð¾Ð¹ информацией: %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "невозможно определить Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð°"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "Ñчитывание заголовка ELF завершилоÑÑŒ неудачно"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** Файл «%s» очищен: подробный анализ невозможен\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "не удалоÑÑŒ загрузить данные о Ñимволах"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "не удалоÑÑŒ загрузить профилировочные данные"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "при операции stat над файлом Ñ Ð¿Ñ€Ð¾Ñ„Ð¸Ð»Ð¸Ñ€Ð¾Ð²Ð¾Ñ‡Ð½Ñ‹Ð¼Ð¸ данными"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "файл Ñ Ð¿Ñ€Ð¾Ñ„Ð¸Ð»Ð¸Ñ€Ð¾Ð²Ð¾Ñ‡Ð½Ñ‹Ð¼Ð¸ данными «%s» не ÑоответÑтвует разделÑемому объекту «%s»"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "не удалоÑÑŒ отобразить в памÑть файл Ñ Ð¿Ñ€Ð¾Ñ„Ð¸Ð»Ð¸Ñ€Ð¾Ð²Ð¾Ñ‡Ð½Ñ‹Ð¼Ð¸ данными"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "ошибка при закрытии файла Ñ Ð¿Ñ€Ð¾Ñ„Ð¸Ð»Ð¸Ñ€Ð¾Ð²Ð¾Ñ‡Ð½Ñ‹Ð¼Ð¸ данными"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "«%s» не ÑвлÑетÑÑ Ð²ÐµÑ€Ð½Ñ‹Ð¼ файлом Ñ Ð¿Ñ€Ð¾Ñ„Ð¸Ð»Ð¸Ñ€Ð¾Ð²Ð¾Ñ‡Ð½Ñ‹Ð¼Ð¸ данными Ð´Ð»Ñ Â«%s»"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "невозможно выделить памÑть под данные Ñимвола"
@@ -1434,6 +1459,14 @@ msgstr "не печатать предупреждениÑ"
msgid "print progress information"
msgstr "печатать информацию о ходе работы"
+#: iconv/iconv_prog.c:72
+msgid "BYTE-COUNT"
+msgstr "BYTE-COUNT"
+
+#: iconv/iconv_prog.c:73
+msgid "size of in-memory scratch buffer"
+msgstr "размер in-memory Ñкретч-буфера"
+
#: iconv/iconv_prog.c:78
msgid "Convert encoding of given files from one encoding to another."
msgstr "Преобразует указанные файлы из одной кодировки в другую."
@@ -1467,11 +1500,21 @@ msgstr "преобразование в «%s» не поддерживаетÑÑ
msgid "conversion from `%s' to `%s' is not supported"
msgstr "преобразование из «%s» в «%s» не поддерживаетÑÑ"
+#: iconv/iconv_prog.c:349
+#, c-format
+msgid "invalid buffer size: %s"
+msgstr "недопуÑтимый размер буфера: %s"
+
#: iconv/iconv_prog.c:540
#, c-format
msgid "conversion stopped due to problem in writing the output"
msgstr "преобразование оÑтановлено из-за проблемы при запиÑи вывода"
+#: iconv/iconv_prog.c:686
+#, c-format
+msgid "illegal input sequence at position %lld"
+msgstr "недопуÑÑ‚Ð¸Ð¼Ð°Ñ Ð²Ñ…Ð¾Ð´Ð½Ð°Ñ Ð¿Ð¾ÑледовательноÑть в позиции %lld"
+
#: iconv/iconv_prog.c:693
#, c-format
msgid "internal error (illegal descriptor)"
@@ -2817,7 +2860,7 @@ msgid "cannot resize archive file"
msgstr "невозможно изменить размер архивного файла"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "невозможно отобразить в памÑть заголовок архива"
@@ -2876,64 +2919,64 @@ msgstr "невозможно выполнить stat Ð´Ð»Ñ Ð°Ñ€Ñ…Ð¸Ð²Ð° локÐ
msgid "cannot lock locale archive \"%s\""
msgstr "невозможно заблокировать архив локали «%s»"
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "невозможно Ñчитать заголовок архива"
-#: locale/programs/locarchive.c:661
+#: locale/programs/locarchive.c:665
#, c-format
msgid "bad magic value in archive header"
msgstr "некорректное значение идентификатора в заголовке архива"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "локаль «%s» уже ÑущеÑтвует"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "невозможно добавить к архиву локали"
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "файл пÑевдонимов локалей «%s» не найден"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "Добавление %s\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "Ð¾Ð¿ÐµÑ€Ð°Ñ†Ð¸Ñ stat Ð´Ð»Ñ Â«%s» завершилаÑÑŒ неудачно: %s: проигнорировано"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "«%s» не ÑвлÑетÑÑ ÐºÐ°Ñ‚Ð°Ð»Ð¾Ð³Ð¾Ð¼; проигнорировано"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "невозможно открыть каталог «%s»: %s: проигнорировано"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "неполный набор файлов локали в «%s»"
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "невозможно прочитать вÑе файлы в «%s»: проигнорировано"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "локаль «%s» отÑутÑтвует в архиве"
@@ -6402,6 +6445,10 @@ msgstr "внутреннÑÑ Ð¾ÑˆÐ¸Ð±ÐºÐ°: symidx выходит за преде
msgid "Error in unknown error system: "
msgstr "Ошибка в неизвеÑтной ÑиÑтеме ошибок: "
+#: sysdeps/mach/xpg-strerror.c:66 sysdeps/mach/xpg-strerror.c:74
+msgid "Unknown error code: "
+msgstr "ÐеизвеÑтный код ошибки: "
+
#: sysdeps/posix/gai_strerror-strs.h:2
msgid "Address family for hostname not supported"
msgstr "СемейÑтво адреÑов не поддерживаетÑÑ Ð´Ð»Ñ Ð´Ð°Ð½Ð½Ð¾Ð³Ð¾ имени узла"
@@ -6499,6 +6546,26 @@ msgstr "невозможно выключить IBT"
msgid "can't disable SHSTK"
msgstr "невозможно выключить SHSTK"
+#: timezone/zdump.c:131
+#, c-format
+msgid "%s: size overflow\n"
+msgstr "%s: переполнение размера\n"
+
+#: timezone/zdump.c:170
+#, c-format
+msgid "%s: Memory exhausted\n"
+msgstr "%s: ПамÑть иÑчерпана\n"
+
+#: timezone/zdump.c:257
+#, c-format
+msgid "%s: setenv: %s\n"
+msgstr "%s: setenv: %s\n"
+
+#: timezone/zdump.c:337 timezone/zdump.c:604
+#, c-format
+msgid "%s: unknown timezone '%s': %s\n"
+msgstr "%s: неизвеÑтный чаÑовой поÑÑ Â«%s»: %s\n"
+
#: timezone/zdump.c:402
msgid "has characters other than ASCII alphanumerics, '-' or '+'"
msgstr "Ñодержит Ñимволы помимо буквенно-цифровых ASCII, «-» или «+»"
@@ -6553,6 +6620,16 @@ msgstr "%s: не обработан аргумент -c, %s\n"
msgid "%s: wild -t argument %s\n"
msgstr "%s: не обработан аргумент -t, %s\n"
+#: timezone/zdump.c:857
+#, c-format
+msgid " (gmtime failed)"
+msgstr " (ошибка работы gmtime)"
+
+#: timezone/zdump.c:867
+#, c-format
+msgid " (localtime failed)"
+msgstr " (ошибка работы localtime)"
+
#: timezone/zic.c:463
#, c-format
msgid "%s: Memory exhausted: %s\n"
@@ -6589,11 +6666,50 @@ msgstr " (правило из «%s», Ñтрока %<PRIdMAX>)"
msgid "warning: "
msgstr "предупреждение: "
+#: timezone/zic.c:669
+#, c-format
+msgid ""
+"%s: usage is %s [ --version ] [ --help ] [ -v ] \\\n"
+"\t[ -b {slim|fat} ] [ -d directory ] [ -l localtime ] [ -L leapseconds ] \\\n"
+"\t[ -p posixrules ] [ -r '[@lo][/@hi]' ] [ -R '@hi' ] \\\n"
+"\t[ -t localtime-link ] \\\n"
+"\t[ filename ... ]\n"
+"\n"
+"Report bugs to %s.\n"
+msgstr ""
+"%s: иÑпользование: %s [ --version ] [ --help ] [ -v ] \\\n"
+"\t[ -b {slim|fat} ] [ -d каталог ] [ -l меÑтное_Ð²Ñ€ÐµÐ¼Ñ ] [ -L виÑокоÑ_Ñек. ] \\\n"
+"\t[ -p правила_posix ] [ -r '[@lo][/@hi]' ] [ -R '@hi' ] \\\n"
+"\t[ -t ÑÑылка_на_меÑтное_Ð²Ñ€ÐµÐ¼Ñ ] \\\n"
+"\t[ имÑ_файла … ]\n"
+"\n"
+"Ð¡Ð¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¾Ð± ошибках отправлÑйте на %s.\n"
+
#: timezone/zic.c:695
#, c-format
msgid "%s: Can't chdir to %s: %s\n"
msgstr "%s: Ðевозможно выполнить chdir в %s: %s\n"
+#: timezone/zic.c:786
+#, c-format
+msgid "\"Link %s %s\" is part of a link cycle"
+msgstr "«СÑылка %s %s» ÑвлÑетÑÑ Ñ‡Ð°Ñтью цикличеÑкой ÑÑылки"
+
+#: timezone/zic.c:797
+#, c-format
+msgid "link %s targets itself"
+msgstr "ÑÑылка %s указывает на Ñаму ÑебÑ"
+
+#: timezone/zic.c:817
+#, c-format
+msgid "link %s targeting link %s mishandled by pre-2023 zic"
+msgstr "ÑÑылка %s, ÑƒÐºÐ°Ð·Ñ‹Ð²Ð°ÑŽÑ‰Ð°Ñ Ð½Ð° ÑÑылку %s, обрабатываетÑÑ zic до верÑии 2023 года неправильно"
+
+#: timezone/zic.c:821
+#, c-format
+msgid "link %s targeting link %s"
+msgstr "ÑÑылка %s, ÑƒÐºÐ°Ð·Ñ‹Ð²Ð°ÑŽÑ‰Ð°Ñ Ð½Ð° ÑÑылку %s"
+
#: timezone/zic.c:992
msgid "wild compilation-time specification of zic_t"
msgstr "Ð¿Ð»Ð¾Ñ…Ð°Ñ ÑÐ¿ÐµÑ†Ð¸Ñ„Ð¸ÐºÐ°Ñ†Ð¸Ñ Ð¿Ñ€Ð¸ компилÑции Ð´Ð»Ñ zic_t"
@@ -6627,6 +6743,10 @@ msgstr "%s: Задано более одного ключа -p\n"
msgid "%s: More than one -t option specified\n"
msgstr "%s: Задано более одного ключа -t\n"
+#: timezone/zic.c:1064
+msgid "-y ignored"
+msgstr "-y игнорируетÑÑ"
+
#: timezone/zic.c:1071
#, c-format
msgid "%s: More than one -L option specified\n"
@@ -6642,9 +6762,19 @@ msgstr "%s: Задано более одного ключа -r\n"
msgid "%s: invalid time range: %s\n"
msgstr "%s: неверный диапазон времени: %s\n"
+#: timezone/zic.c:1098
+#, c-format
+msgid "%s: invalid time: %s\n"
+msgstr "%s: некорректное времÑ: %s\n"
+
#: timezone/zic.c:1104
msgid "-s ignored"
-msgstr "-s игнорировать"
+msgstr "-s игнорируетÑÑ"
+
+#: timezone/zic.c:1110
+#, c-format
+msgid "%s: -R time exceeds -r cutoff\n"
+msgstr "%s: -R time превышает -r cutoff\n"
#: timezone/zic.c:1171
msgid "empty file name"
@@ -6685,11 +6815,21 @@ msgstr "Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° «\\%s» Ñодержит байт «\\%o»"
msgid "%s: Can't create %s/%s: %s\n"
msgstr "%s: Ðевозможно Ñоздать %s/%s: %s\n"
+#: timezone/zic.c:1388
+#, c-format
+msgid "%s: rename to %s/%s: %s\n"
+msgstr "%s: переименовываетÑÑ Ð² %s/%s: %s\n"
+
#: timezone/zic.c:1463
#, c-format
msgid "%s: Can't remove %s/%s: %s\n"
msgstr "%s: Ðевозможно удалить %s/%s: %s\n"
+#: timezone/zic.c:1507
+#, c-format
+msgid "%s: Can't link %s/%s to %s/%s: %s\n"
+msgstr "%s: Ðевозможно Ñоздать ÑÑылку %s/%s на %s/%s: %s\n"
+
#: timezone/zic.c:1536
#, c-format
msgid "symbolic link used because hard link failed: %s"
@@ -6719,6 +6859,18 @@ msgstr "одинаковое Ð¸Ð¼Ñ Ð¿Ñ€Ð°Ð²Ð¸Ð»Ð° в неÑкольких фаÐ
msgid "%s in ruleless zone"
msgstr "%s в зоне без правил"
+#: timezone/zic.c:1674
+msgid "input error"
+msgstr "ошибка ввода"
+
+#: timezone/zic.c:1679
+msgid "unterminated line"
+msgstr "Ð½ÐµÐ·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ð°Ñ Ñтрока"
+
+#: timezone/zic.c:1683
+msgid "NUL input byte"
+msgstr "байт NUL во входных данных"
+
#: timezone/zic.c:1688
msgid "line too long"
msgstr "Ñтрока Ñлишком длиннаÑ"
@@ -6853,6 +7005,15 @@ msgstr "неÑколько Ñтрок Expires"
msgid "wrong number of fields on Link line"
msgstr "неверное чиÑло полей в Ñтроке Link"
+#: timezone/zic.c:2129
+msgid "blank TARGET field on Link line"
+msgstr "пуÑтое поле TARGET в Ñтроке Link"
+
+#: timezone/zic.c:2192
+#, c-format
+msgid "FROM year \"%s\" is obsolete; treated as %d"
+msgstr "FROM год «%s» уÑтарел; учтено как %d"
+
#: timezone/zic.c:2199
msgid "invalid starting year"
msgstr "неверный начальный год"
@@ -6865,6 +7026,11 @@ msgstr "неверный конечный год"
msgid "starting year greater than ending year"
msgstr "начальный год больше конечного"
+#: timezone/zic.c:2222
+#, c-format
+msgid "year type \"%s\" is unsupported; use \"-\" instead"
+msgstr "тип года «%s» не поддерживаетÑÑ; вмеÑто Ñтого иÑпользуйте «-»"
+
#: timezone/zic.c:2257
msgid "invalid weekday name"
msgstr "неверное Ð½Ð°Ð·Ð²Ð°Ð½Ð¸Ñ Ð´Ð½Ñ Ð½ÐµÐ´ÐµÐ»Ð¸"
@@ -6878,6 +7044,16 @@ msgstr "Ñтандартные клиенты неправильно работÐ
msgid "pre-2014 clients may mishandle more than 1200 transition times"
msgstr "клиенты до верÑии pre-2014 могут неправильно работать при выполнении более чем 1200 переводов времени"
+#: timezone/zic.c:2480
+#, c-format
+msgid "%s: pre-2021b clients may mishandle leap second expiry"
+msgstr "%s: клиенты до верÑии pre-2021b могут неправильно обрабатывать иÑтечение виÑокоÑных Ñекунд"
+
+#: timezone/zic.c:2488
+#, c-format
+msgid "%s: pre-2021b clients may mishandle leap second table truncation"
+msgstr "%s: клиенты до верÑии pre-2021b могут неправильно обрабатывать таблицу пропуÑков виÑокоÑных Ñекунд"
+
#: timezone/zic.c:2537
msgid "too many transition times"
msgstr "Ñлишком много переводов времени"
@@ -6887,6 +7063,10 @@ msgstr "Ñлишком много переводов времени"
msgid "%%z UT offset magnitude exceeds 99:59:59"
msgstr "порÑдок величин ÑÐ¼ÐµÑ‰ÐµÐ½Ð¸Ñ %%z UT превышает 99:59:59"
+#: timezone/zic.c:3180
+msgid "no proleptic TZ string for zone"
+msgstr "до поÑÑа не указана Ñтрока TZ"
+
#: timezone/zic.c:3186
#, c-format
msgid "%s: pre-%d clients may mishandle distant timestamps"
@@ -6912,6 +7092,10 @@ msgstr "Ñлишком много типов меÑтного времени"
msgid "too many leap seconds"
msgstr "Ñлишком много виÑокоÑных Ñекунд"
+#: timezone/zic.c:3534
+msgid "Rolling leap seconds not supported with -r"
+msgstr "ПереходÑщие виÑокоÑные Ñекунды не поддерживаютÑÑ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð¾Ð¼ -r"
+
#: timezone/zic.c:3561
msgid "Leap seconds too close together"
msgstr "ВиÑокоÑные Ñекунды Ñлишком близко друг к другу"
@@ -6934,6 +7118,10 @@ msgstr "ÑмыÑл «%s» неоднозначен Ð´Ð»Ñ zic верÑии pre-2
msgid "Odd number of quotation marks"
msgstr "Ðечётное чиÑло кавычек"
+#: timezone/zic.c:3749
+msgid "Too many input fields"
+msgstr "Слишком много входных полей"
+
#: timezone/zic.c:3838
msgid "use of 2/29 in non leap-year"
msgstr "иÑпользование 29 Ñ„ÐµÐ²Ñ€Ð°Ð»Ñ Ð² не-виÑокоÑном году"
diff --git a/po/rw.po b/po/rw.po
index b1070d8..e581b17 100644
--- a/po/rw.po
+++ b/po/rw.po
@@ -14,7 +14,7 @@
msgid ""
msgstr ""
"Project-Id-Version: libc 2.3\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
"PO-Revision-Date: 2005-04-04 10:55-0700\n"
"Last-Translator: Steven Michael Murphy <murf@e-tools.com>\n"
"Language-Team: Kinyarwanda <translation-team-rw@lists.sourceforge.net>\n"
diff --git a/po/sk.po b/po/sk.po
index 42dcd09..a3f99b6 100644
--- a/po/sk.po
+++ b/po/sk.po
@@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: libc 2.3.3\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
"PO-Revision-Date: 2004-08-05 22:19+0200\n"
"Last-Translator: Marcel Telka <marcel@telka.sk>\n"
"Language-Team: Slovak <sk-i18n@lists.linux.sk>\n"
@@ -92,7 +92,7 @@ msgstr "(CHYBA PROGRAMU) Verzia neznáma!?"
msgid "%s: Too many arguments\n"
msgstr "%s: Priveľa argumentov\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(CHYBA PROGRAMU) Voľba by mala byť rozpoznaná!?"
@@ -135,7 +135,7 @@ msgstr ""
"[VÃSTUPNÃ_SÚBOR [VSTUPNÃ_SÚBOR]...]"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -152,7 +152,7 @@ msgstr ""
"NA KONKRÉTNY ÚČEL.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -276,7 +276,7 @@ msgstr "neprípustná veľkostť ukazovateľa"
msgid "unsupported dlinfo request"
msgstr "nepodporovaná žiadosť dlinfo"
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Nie je možné otvoriť cache súbor %s\n"
@@ -325,11 +325,11 @@ msgstr "chyba poÄas naÄítavania zdieľaných knižníc"
msgid "DYNAMIC LINKER BUG!!!"
msgstr "CHYBA V DYNAMICKOM LINKERI!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "nie je možné vytvoriť zoznam pôsobnosti"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "zdieľaný objekt nie je otvorený"
@@ -354,7 +354,7 @@ msgstr "nie je možné prideliť pamäť pre zoznam závislostí"
msgid "cannot allocate symbol search list"
msgstr "nie je možné prideliť pamäť pre vyhľadávací zoznam symbolov"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "nie je možné vytvoriÅ¥ zoznam zluÄiteľnosti"
@@ -374,83 +374,83 @@ msgstr "nie je možné vytvoriť kópiu RUNPATH/RPATH"
msgid "cannot create search path array"
msgstr "nie je možné vytvoriť pole ciest"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "nepodarilo sa zistiť stav zdieľaného objektu"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "nie je možné vytvoriť deskriptor zdieľaného objektu"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "nie je možné naÄítaÅ¥ údaje súboru"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "objektový súbor neobsahuje žiadny nahrateľný segment"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "nie je možné dynamicky naÄítaÅ¥ spustiteľný súbor"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "objektový súbor neobsahuje žiadnu dynamickú sekciu"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "zdieľaný objekt nemôže byť otvorený pomocou dlopen()"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "nie je možné prideliÅ¥ pamäť pre hlaviÄku programu"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "nie je možné povoliť spustiteľný zásobník ako vyžaduje zdieľaný objekt"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "súbor je príliš krátky"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "neprípustná ELF hlaviÄka"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "Kódovanie dát v ELF súbore nie je big-endian"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "Kódovanie dát v ELF súbore nie je little-endian"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "Identifikácia verzie ELF súboru sa nezhoduje s aktuálnou"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "Neplatný OS ABI ELF súboru"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "Neplatná verzia ABI ELF súboru"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "interná chyba"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "Verzia súboru ELF sa nezhoduje s aktuálnou"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "iba ET_DYN a ET_EXEC môžu byÅ¥ naÄítané"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "phentsize ELF súboru nie je oÄakávaná"
@@ -470,7 +470,7 @@ msgstr "nie je možné zmeniť ochranu pamäti"
msgid "cannot map zero-fill pages"
msgstr "nie je možné namapovať stránky vyplnené nulami"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "nie je možné rozšíriť globálny rozsah"
@@ -494,7 +494,7 @@ msgstr "nie je možné obnoviť segment prot po reloc"
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "RTLD_NEXT je použité pre kód, ktorý nie je dynamicky zavedený"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "nie je možné dátové štruktúry TLS"
@@ -502,143 +502,143 @@ msgstr "nie je možné dátové štruktúry TLS"
msgid "cannot allocate version reference table"
msgstr "nie je možné prideliÅ¥ pamäť pre referenÄnú tabuľku verzií"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "Vypísať cache"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "Vypísovať podrobnejšie správy"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "Nevytvoriť cache"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "Zmeniť adresár na ROOT a použiť ho ako koreňový adresár"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "Použiť CACHE ako cache súbor"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "PoužiÅ¥ CONF ako konfiguraÄný súbor"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "Na príkazovom riadku sú zadané iba adresáre procesov. Nevytvárať cache."
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "RuÄne linkovaÅ¥ jednotlivé knižnice."
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "Konfigurácia runtime väzieb dynamického linkera."
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "Cesta `%s' bola zadaná viac ako raz"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "Zlyhal stat %s"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "Zlyhal stat %s\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s nie je symbolický odkaz\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "Nie je možné odstrániť %s"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "Nie je možné vytvoriť odkaz %s na %s"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (zmenené)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (VYNECHANÉ)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "Nie je možné nájsť %s"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "Zlyhal lstat %s"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "Súbor %s ignorovaný, keÄže nie je regulérnym súborom."
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "Odkaz nebol vytvorený, keÄže pre %s nebolo možné nájsÅ¥ soname"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "Nie je možné otvoriť adresár %s"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "Vstupný súbor %s nebol nájdený.\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "Zlyhal stat %s"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "libc6 knižnica %s je v nesprávnom adresári"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "knižnice %s a %s v adresári %s majú rovnaké soname, ale odlišný typ."
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "nedostatok pamäti"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "relatívna cesta `%s' použitá na vytvorenie cache"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "Nie je možné zmeniť adresár na /"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "Nie je možné otvoriť adresár cache súboru %s\n"
@@ -729,57 +729,57 @@ msgstr "ZDIEĽ_OBJEKT [PROF_ÚDAJE]"
msgid "failed to load shared object `%s'"
msgstr "nepodarilo sa naÄítaÅ¥ zdieľaný objekt `%s'"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "nie je možné vytvoriť interný deskriptor"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "Znovuotvorenie zdieľaného objektu `%s' zlyhalo"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** Zo súboru `%s' boli odstránené ladiace informácie: podrobná analýza nie je možná\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "nepodarilo sa naÄítaÅ¥ symbolické údaje"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "nie je možné naÄítaÅ¥ profilovacie údaje"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "poÄas stat-u súboru profilovacích informácií"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "profilovacie údaje `%s' nesúhlasia so zdieľanýmobjektom `%s'"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "nepodarilo sa mmap-ovať súbor profilovacích údajov"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "chyba poÄas zatvárania súboru profilovacích údajov"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "`%s' nie sú správne profilovacie údaje pre `%s'"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "nie je možné prideliť pamäť pre symbolické údaje"
@@ -1993,7 +1993,7 @@ msgid "cannot resize archive file"
msgstr "nie je možné zmeniť veľkosť archívneho súboru"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "nie je možné namapovaÅ¥ hlaviÄku archívu"
@@ -2048,59 +2048,59 @@ msgstr "nie je možné zistiť stav archívu národného prostredia \"%s\""
msgid "cannot lock locale archive \"%s\""
msgstr "nie je možné uzamknúť archív národného prostredia \"%s\""
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "nie je možné preÄítaÅ¥ hlaviÄku archívu"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "národné prostredie `%s' už existuje"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "nie je možné pridať do archívu národného prostredia"
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "súbor aliasu národného prostredia `%s' nebol nájdený"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "Pridávam %s\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "zistenie stavu \"%s\" zlyhalo: %s: ignorované"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "\"%s\" nie je adresár; ignorované"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "nie je možné otvoriť adresár \"%s\": %s: ignorované"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "nekompletná skupina súborov národných prostredí v \"%s\""
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "nie je možné naÄítaÅ¥ vÅ¡etky súbory v \"%s\": ignorované"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "národné prostredie \"%s\" nie je v archíve"
diff --git a/po/sl.po b/po/sl.po
index ac3eefd..efbbad6 100644
--- a/po/sl.po
+++ b/po/sl.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: libc 2.22-pre1\n"
"Report-Msgid-Bugs-To: bug-coreutils@gnu.org\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
"PO-Revision-Date: 2016-01-04 23:59+0100\n"
"Last-Translator: Primož Peterlin <primozz.peterlin@gmail.com>\n"
"Language-Team: Slovenian <translation-team-sl@lists.sourceforge.net>\n"
@@ -98,7 +98,7 @@ msgstr "(PROGRAMSKA NAPAKA) RazliÄica ni poznana?!"
msgid "%s: Too many arguments\n"
msgstr "%s: PreveÄ argumentov\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(PROGRAMSKA NAPAKA) Izbira bi morala biti prepoznana?!"
@@ -133,7 +133,7 @@ msgstr ""
"-o IZHODNA_DATOTEKA [VHODNA_DATOTEKA]...\n"
"[IZHODNA_DATOTEKA [VHODNA_DATOTEKA]...]"
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -148,7 +148,7 @@ msgstr ""
"%s.\n"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -165,7 +165,7 @@ msgstr ""
"niti jamstev USTREZNOSTI ZA PRODAJO ali PRIMERNOSTI ZA RABO.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -361,7 +361,7 @@ msgstr "napaÄna zaÅ¡Äita"
msgid "invalid mode parameter"
msgstr "napaÄen parameter zaÅ¡Äita"
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Ni mogoÄe odpreti predpomnilniÅ¡ke datoteke %s\n"
@@ -410,11 +410,11 @@ msgstr "napaka ob nalaganju deljene knjižnice"
msgid "DYNAMIC LINKER BUG!!!"
msgstr "NAPAKA DINAMIÄŒNEGA POVEZOVALNIKA!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "seznama podroÄja ni mogoÄe ustvariti"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "deljeni predmet ni odprt"
@@ -439,7 +439,7 @@ msgstr "seznama odvisnosti ni mogoÄe dodeliti"
msgid "cannot allocate symbol search list"
msgstr "seznama iskalnih simbolov ni mogoÄe dodeliti"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "seznama sposobnosti ni mogoÄe ustvariti"
@@ -459,91 +459,91 @@ msgstr "kopije RUNPATH/RPATH ni mogoÄe ustvariti"
msgid "cannot create search path array"
msgstr "polja iskalnih poti ni mogoÄe ustvariti"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "statusa deljenega predmeta ni mogoÄe ugotoviti"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "deljenega predmetnega deskriptorja ni mogoÄe ustvariti"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "podatkov datoteke ni mogoÄe prebrati"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "predmetna datoteka nima vÄitljivega segmenta"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "dinamiÄno nalaganje izvedljive datoteke ni mogoÄe"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "predmetna datoteka nima dinamiÄne sekcije"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "dlopen() na deljenih predmetih ni mogoÄ"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "dodelitev pomnilnika za glavo programa ni mogoÄa"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "izvedljivega sklada ni mogoÄe omogoÄiti, kot to zahteva deljeni predmet"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "datoteÄnega deskriptorja ni mogoÄe zapreti"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "datoteka je prekratka"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "neveljavna glava ELF"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "kodiranje podatkov datoteke ELF ni »big-endian«"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "kodiranje podatkov datoteke ELF ni »little-endian«"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "identifikator razliÄice datoteke ELF se ne ujema s trenutnim"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "OS ABI datoteke ELF ni veljaven"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "razliÄica ABI datoteke ELF ni veljavna"
-#: elf/dl-load.c:1669
+#: elf/dl-load.c:1670
msgid "nonzero padding in e_ident"
msgstr "neniÄelno zapolnjenje pri e_ident"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "interna napaka"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "razliÄica datoteke ELF se ne ujema s trenutno"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "samo ET_DYN in ET_EXEC je mogoÄe naložiti"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "phentsize datoteke ELF ni priÄakovane velikosti"
@@ -571,15 +571,15 @@ msgstr "sprememba zaÅ¡Äite pomnilnika ni mogoÄa"
msgid "cannot map zero-fill pages"
msgstr "niÄelnih strani ni mogoÄe preslikati"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "napaka pri iskanju simbola"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "ni mogoÄe razÅ¡iriti globalnega podroÄja"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "Zapletanje števca generacij TLS! Prosim, javite to napako."
@@ -620,7 +620,7 @@ msgstr "dodatne zaÅ¡Äite pomnilnika po premiku ni mogoÄe uporabiti"
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "RTLD_NEXT uporabljen v kodi se ni dinamiÄno naložil"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "podatkovnih struktur TLS ni mogoÄe ustvariti"
@@ -632,151 +632,151 @@ msgstr "napaka pri vpogledu v razliÄico"
msgid "cannot allocate version reference table"
msgstr "ni mogoÄe dodeliti tabele sklicev razliÄic"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "Izpiši vsebino predpomnilnika"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "Ustvarjaj obÅ¡irna sporoÄila"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "Ne gradi predpomnilnika"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "Spremeni delovni imenik v KOREN in ga uporabi kot korenski imenik"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "KOREN"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "PREDPOMNILNIK"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "Uporabi PREDPOMNILNIK kot predpomnilniško datoteko"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "KONF"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "Uporabi KONF kot nastavitveno datoteko"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "Obdelaj le imenike, doloÄene v ukazni vrstici. Ne gradi predpomnilnika."
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "RoÄno poveži posamiÄne knjižnice."
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "OBLIKA"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "Ne upoštevaj nadomestne predpomnilniške datoteke"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "Nastavi izvajalne povezave dinamiÄnega povezovalnika."
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "Pot »%s« je podana veÄ kot enkrat"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "Statusa %s ni moÄ ugotoviti"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "Statusa %s ni moÄ ugotoviti\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s ni simbolna povezava\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "Ni mogoÄe odstraniti povezave %s"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "Ni mogoÄe ustvariti povezave %s na %s"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (zamenjano)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (PRESKOÄŒENO)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "Neuspelo iskanje %s"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "Ni mogoÄe izvesti lstat %s"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "Datoteka %s ni bila upoštevana, ker ni navadna datoteka."
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "Povezava ni bila ustvarjena, ker ni bilo moÄ najti soname za %s"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "Ni mogoÄe odpreti imenika %s"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "Vhodne datoteke %s ni moÄ najti.\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "Statusa %s ni moÄ ugotoviti"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "knjižnica libc6 %s v napaÄnem imeniku"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "knjižnici %s in %s v imeniku %s imata isti soname, a sta razliÄnega tipa."
-#: elf/ldconfig.c:1051
+#: elf/ldconfig.c:1050
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr "Opozorilo: nastavitvene datoteke ni mogoÄe prebrati in se je ne upoÅ¡teva: %s"
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "ob izbiri -r je potrebo absolutno ime za nastavitveno datoteko"
@@ -787,29 +787,29 @@ msgstr "ob izbiri -r je potrebo absolutno ime za nastavitveno datoteko"
# ! INEXACT
# #-#-#-#-# gettext-tools-0.18.3.sl.po (GNU gettext-tools 0.18.3) #-#-#-#-#
# Morda ,,Zmanjkalo pomnilnika''?
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "pomnilnik porabljen"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: imenika %s ni mogoÄe prebrati"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "relativna pot »%s« uporabljena za izgradnjo predpomnilnika"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "Sprememba imenika na / ni mogoÄa"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "Ni mogoÄe odpreti imenika %s s predpomnilniÅ¡ko datoteko\n"
@@ -1156,84 +1156,84 @@ msgstr "SHOBJ [PROFDATA]"
msgid "failed to load shared object `%s'"
msgstr "nalaganje deljenega predmeta »%s« ni uspelo"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "internega deskriptorja ni mogoÄe ustvariti"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "Ponovno odpiranje deljenega predmeta »%s« ni uspelo"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "branje zaglavij razdelkov ni uspelo"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "branje tabele nizov zaglavja razdelka ni uspelo"
# POZOR!!! Razisci, kaj program res tu pocne!
# ! INEXACT
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** Ni mogoÄe prebrati imena datoteke debuginfo: %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "imena datoteke ni mogoÄe ugotoviti"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "branje zaglavja ELF ni uspelo"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** Datoteka »%s« je posneta; podrobna analiza ni mogoÄa\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "nalaganje simbolnih podatkov ni uspelo"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "profilnih podatkov ni mogoÄe naložiti"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "ob branju statistike datoteke s profilnimi podatki"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "datoteka s profilimi podatki »%s« ne ustreza deljenemu predmetu »%s«"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "klic mmap() na datoteki s profilnimi podatki ni uspel"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "napaka pri zapiranju datoteke s podatki za profiliranje"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "»%s« ni prava datoteka s profilnimi podatki za »%s«"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "prostora za simbolne podatke ni mogoÄe dodeliti"
diff --git a/po/sr.po b/po/sr.po
index a783966..956107e 100644
--- a/po/sr.po
+++ b/po/sr.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: libc 2.40.9000\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
"PO-Revision-Date: 2025-01-09 18:56+0100\n"
"Last-Translator: МироÑлав Ðиколић <miroslavnikolic@rocketmail.com>\n"
"Language-Team: Serbian <(nothing)>\n"
@@ -99,7 +99,7 @@ msgstr "(ГРЕШКРПРОГРÐМÐ) Ðије познато издање!?"
msgid "%s: Too many arguments\n"
msgstr "%s: Превише аргумената\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(ГРЕШКРПРОГРÐМÐ) Опција треба да буде препозната!?"
@@ -141,7 +141,7 @@ msgstr ""
"-o ИЗЛÐЗÐÐ-ДÐТОТЕКР[УЛÐЗÐÐ-ДÐТОТЕКÐ]...\n"
"[ИЗЛÐЗÐÐ-ДÐТОТЕКР[УЛÐЗÐÐ-ДÐТОТЕКÐ]...]"
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -156,7 +156,7 @@ msgstr ""
"%s.\n"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -172,7 +172,7 @@ msgstr ""
"ÐИКÐКВРгаранција; чак ни о ТРЖИШÐОЈ ВРЕДÐОСТИ или ПРИЛÐГОЂЕÐОСТИ ОДРЕЂЕÐОЈ ÐÐМЕÐИ.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -403,7 +403,7 @@ msgstr "Датотека оÑтаве има погрешну крајноÑÑ‚.\
msgid "Cache generated by: "
msgstr "ОÑтаву је Ñтворио: "
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Ðе могу да отворим датотеку оÑтаве „%s“\n"
@@ -472,11 +472,11 @@ msgstr "грешка приликом учитавања дељених библ
msgid "DYNAMIC LINKER BUG!!!"
msgstr "ГРЕШКРДИÐÐМИЧКОГ СВЕЗИВÐЧÐ!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "не могу да направим ÑпиÑак доÑега"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "дељени објекат није отворен"
@@ -505,11 +505,11 @@ msgstr "не могу да доделим ÑпиÑак завиÑноÑти"
msgid "cannot allocate symbol search list"
msgstr "не могу да доделим ÑпиÑак претраге Ñимбола"
-#: elf/dl-hwcaps.c:104
+#: elf/dl-hwcaps.c:103
msgid "cannot create HWCAP priorities"
msgstr "не могу да направим „HWCAP“ ÑвојÑтва"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "не могу да направим ÑпиÑак ÑпоÑобноÑти"
@@ -529,99 +529,99 @@ msgstr "не могу да направим умножаг „RUNPATH/RPATH“"
msgid "cannot create search path array"
msgstr "не могу да направим низ путање претраге"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "не могу да добавим податке о дељеном објекту"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "не могу да направим опиÑник дељеног објекта"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "не могу да прочитам податке података"
-#: elf/dl-load.c:1138 elf/dl-map-segments.h:117
+#: elf/dl-load.c:1143 elf/dl-map-segments.h:118
msgid "ELF load command address/offset not page-aligned"
msgstr "адреÑа/померај ЕЛФ наредбе учитавања није поравната на Ñтраницу"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "датотека објекта нема учитљиве подеоке"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "не могу динамички да учитам извршног"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "датотека објекта нема динамички одељак"
-#: elf/dl-load.c:1289
+#: elf/dl-load.c:1294
msgid "cannot dynamically load position-independent executable"
msgstr "не могу динамички да учитам извршног незавиÑног од положаја"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "над дељеним објектом Ñе не може извршити „dlopen()“"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "не могу да доделим меморију за заглавље програма"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "не могу да омогућим Ñпремник извршног као што захтева дељени објекат"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "не могу да затворим опиÑник датотеке"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "датотека је прекратка"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "неиÑправно ЕЛФ заглавље"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "кодирање података ЕЛФ датотеке није велике крајноÑти"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "кодирање података ЕЛФ датотеке није мале крајноÑти"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "увлачење издања ЕЛФ датотеке не одговара тренутном"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "ОС ÐБИ ЕЛФ датотеке није иÑправно"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "ÐБИ издање ЕЛФ датотеке није иÑправно"
-#: elf/dl-load.c:1669
+#: elf/dl-load.c:1670
msgid "nonzero padding in e_ident"
msgstr "ненулто попуњавање у „e_ident“-у"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "унутрашња грешка"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "издање ELF датотеке не одговара тренутном"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "Ñамо „ET_DYN“ и „ET_EXEC“ Ñе могу учитати"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "„phentsize“ ЕЛФ датотеке није очекиване величине"
@@ -649,19 +649,19 @@ msgstr "не могу да променим заштите меморије"
msgid "cannot map zero-fill pages"
msgstr "не могу да мапирам Ñтранице нулте попуне"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "грешка претраге Ñимбола"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "не могу да раширим општи доÑег"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "Бројач ТЛС Ñтварања је умотан! Пријавите ово."
-#: elf/dl-open.c:716
+#: elf/dl-open.c:717
msgid "cannot allocate address lookup data"
msgstr "не могу да доделим податке тражења адреÑе"
@@ -702,7 +702,7 @@ msgstr "не могу да применим додатну заштиту мем
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "„RTLD_NEXT“ коришћено у коду није динамички учитано"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "не могу да направим Ñтруктуре ТЛС података"
@@ -714,220 +714,220 @@ msgstr "грешка претраге издања"
msgid "cannot allocate version reference table"
msgstr "не могу да доделим табелу упуте издања"
-#: elf/dl-version.c:380
+#: elf/dl-version.c:387
msgid "DT_RELR without GLIBC_ABI_DT_RELR dependency"
msgstr "„DT_RELR“ без „GLIBC_ABI_DT_RELR“ завиÑноÑти"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "ИÑпиÑује оÑтаву"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "Ствара опширне поруке"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "Ðе гради оÑтаву"
-#: elf/ldconfig.c:128
+#: elf/ldconfig.c:127
msgid "Don't update symbolic links"
msgstr "Ðе оÑвежава Ñимболичке везе"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "Прелази у и кориÑти КОРЕÐИ као корени директоријум"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "КОРЕÐИ"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "ОСТÐÐ’Ð"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "КориÑти ОСТÐВУ као датотеку оÑтаве"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "ПОДЕШÐÐ’ÐЊÐ"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "КориÑти ПОДЕШÐÐ’ÐЊРкао датотеку подешавања"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "Само обрађује директоријуме наведене на линији наредби. Ðе гради оÑтаву."
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "Ручно Ñвезује појединачне библиотеке."
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "ФОРМÐТ"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "Format to use: new (default), old, or compat"
msgstr "Формат за коришћење: „new“ (оÑновно), „old“, или „compat“"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "Занемарује помоћну датотеку оÑтаве"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "Подешава Ñвезивања времена извршења динамичког везача."
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "Путања „%s“ је дата више пута"
-#: elf/ldconfig.c:278
+#: elf/ldconfig.c:277
#, c-format
msgid "(from %s:%d and %s:%d)\n"
msgstr "(од %s:%d и %s:%d)\n"
-#: elf/ldconfig.c:310 elf/ldconfig.c:351
+#: elf/ldconfig.c:309 elf/ldconfig.c:350
#, c-format
msgid "Could not form glibc-hwcaps path"
msgstr "Ðе могу да формирам „glibc-hwcaps“ путању"
-#: elf/ldconfig.c:324
+#: elf/ldconfig.c:323
#, c-format
msgid "Listing directory %s"
msgstr "ИÑпиÑујем директоријум „%s“"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "Ðе могу да добавим податке за „%s“"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "Ðе могу да добавим податке за „%s“\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "„%s“ није Ñимболичка веза\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "Ðе могу да развежем „%s“"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "Ðе могу да повежем „%s“ Ñа „%s“"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (измењено)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (ПРЕСКОЧЕÐО)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "Ðе могу да нађем „%s“"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "Ðе могу да извршим „lstat“ за „%s“"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "Датотека „%s“ је занемарена јер није обична датотека."
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "Ðије направљена ниједна веза јер не могу да нађем „soname“ за „%s“"
-#: elf/ldconfig.c:701
+#: elf/ldconfig.c:700
#, c-format
msgid " (from %s:%d)\n"
msgstr " (од %s:%d)\n"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "Ðе могу да отворим директоријум „%s“"
-#: elf/ldconfig.c:743 elf/ldconfig.c:748
+#: elf/ldconfig.c:742 elf/ldconfig.c:747
#, c-format
msgid "Could not form library path"
msgstr "Ðе могу да направим путању библиотеке"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "ÐиÑам нашао улазну датотеку „%s“.\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "Ðе могу да добавим податке за „%s“"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "„libc6“ библиотека „%s“ је у погрешном директоријуму"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "библиотека „%s“ и „%s“ у директоријуму „%s“ имају иÑти „soname“ али различите врÑте."
-#: elf/ldconfig.c:1051
+#: elf/ldconfig.c:1050
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr "Упозорење: занемарујем датотеку подешавања која Ñе не може отворити: %s"
-#: elf/ldconfig.c:1099
+#: elf/ldconfig.c:1098
#, c-format
msgid "%s:%u: hwcap directive ignored"
msgstr "%s:%u: „hwcap“ директива је занемарена"
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "потребан је апÑолутни назив датотеке за датотеку подешавања када Ñе кориÑти „-r“"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "меморија је потрошена"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: не могу да читам директоријум „%s“"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "релативна путања „%s“ је коришћена за градњу оÑтаве"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "Ðе могу да Ñе пребацим у директоријум /"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "Ðе могу да отворим директоријум датотеке оÑтаве „%s“\n"
@@ -1279,82 +1279,82 @@ msgstr "ДЕЉЕÐИ_ОБЈЕКÐТ [ПОДÐЦИ_ПРОФИЛИСÐЊÐ]"
msgid "failed to load shared object `%s'"
msgstr "ниÑам уÑпео да учитам дељени објекат „%s“"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "не могу да направим унутрашњег опиÑника"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "Поновно отварање дељеног објекта „%s“ није уÑпело"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "ниÑам уÑпео да прочитам заглавља одељка"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "ниÑам уÑпео да прочитам табелу ниÑке заглавља одељка"
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** Ðе могу да прочитам назив датотеке података прочишћавања: %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "не могу да одредим назив датотеке"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "ниÑам уÑпео да прочитам ЕЛФ заглавље"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** Датотека „%s“ је раÑтављена: детаљна анализа није могућа\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "ниÑам уÑпео да учитам податке Ñимбола"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "не могу да учитам податке профилиÑања"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "приликом добављања података датотеке података профилиÑања"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "датотека података профилиÑања „%s“ не одговара дељеном објекту „%s“"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "ниÑам уÑпео да м-мапирам датотеку података профилиÑања"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "грешка приликом затварања датотеке података профилиÑања"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "„%s“ није одговарајућа датотека података профилиÑања за „%s“"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "не могу да доделим податке Ñимбола"
@@ -2852,7 +2852,7 @@ msgid "cannot resize archive file"
msgstr "не могу да променим величину датотеке архиве"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "не могу да мапирам заглавље архиве"
@@ -2911,64 +2911,64 @@ msgstr "не могу да добавим податке архиве језик
msgid "cannot lock locale archive \"%s\""
msgstr "не могу да закључам архиву језика „%s“"
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "не могу да прочитам заглавље архиве"
-#: locale/programs/locarchive.c:661
+#: locale/programs/locarchive.c:665
#, c-format
msgid "bad magic value in archive header"
msgstr "лоша вредноÑÑ‚ магије у заглављу архиве"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "језик „%s“ већ поÑтоји"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "не могу да додам у архиву језика"
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "ниÑам нашао датотеку алијаÑа језика „%s“"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "Додајем „%s“\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "добављање података за „%s“ није уÑпело: %s: занемарено"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "„%s“ није директоријум; занемарено"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "не могу да отворим директоријум „%s“: %s: занемарено"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "непотпун Ñкуп датотека језика у „%s“"
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "не могу да прочитам Ñве датотеке у „%s“: занемарено"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "језик „%s“ није у архиви"
diff --git a/po/sv.po b/po/sv.po
index 5eb0ffa..3228267 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -5,12 +5,12 @@
# Jan Djärv <jan.h.d@swipnet.se>, 1996, 1998, 2001, 2002, 2003, 2006, 2007, 2008, 2009, 2011, 2012, 2013, 2014, 2015.
# Göran Uddeborg <goeran@uddeborg.se>, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025.
#
-# $Revision: 1.43 $
+# $Revision: 1.45 $
msgid ""
msgstr ""
-"Project-Id-Version: libc 2.40.9000\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
-"PO-Revision-Date: 2025-01-07 12:12+0100\n"
+"Project-Id-Version: libc 2.41.9000\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
+"PO-Revision-Date: 2025-07-24 10:50+0200\n"
"Last-Translator: Göran Uddeborg <goeran@uddeborg.se>\n"
"Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
"Language: sv\n"
@@ -101,7 +101,7 @@ msgstr "(PROGRAMFEL) Ingen version känd!?"
msgid "%s: Too many arguments\n"
msgstr "%s: För många argument\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(PROGRAMFEL) Flagga skulle känts igen!?"
@@ -143,7 +143,7 @@ msgstr ""
"-o UTFIL [INFIL]...\n"
"[UTFIL [INFIL]...]"
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -159,7 +159,7 @@ msgstr ""
"Rapportera fel eller synpunkter på översättningen till <tp-sv@listor.tp-sv.se>.\n"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -176,7 +176,7 @@ msgstr ""
"ÄNDAMÅL.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -406,7 +406,7 @@ msgstr "Cache-filen har fel byteordning.\n"
msgid "Cache generated by: "
msgstr "Cachen genererad av: "
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Kan inte öppna cache-filen %s\n"
@@ -475,11 +475,11 @@ msgstr "fel när delade bibliotek laddades"
msgid "DYNAMIC LINKER BUG!!!"
msgstr "FEL I DYNAMISK LÄNKARE!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "kan inte skapa omfångslista"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "delat objekt är inte öppnat"
@@ -510,11 +510,11 @@ msgstr "kan inte allokera beroendelista"
msgid "cannot allocate symbol search list"
msgstr "kan inte allokera söklista för symboler"
-#: elf/dl-hwcaps.c:104
+#: elf/dl-hwcaps.c:103
msgid "cannot create HWCAP priorities"
msgstr "kan inte skapa HWCAP-prioriteter"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "kan inte skapa egenskapslista"
@@ -534,99 +534,99 @@ msgstr "kan inte skapa kopia av RUNPATH/RPATH"
msgid "cannot create search path array"
msgstr "kan inte skapa sökvägslista"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "kan inte ta status på delat objekt"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "kan inte skapa delad objektdeskriptor"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "kan inte läsa fildata"
-#: elf/dl-load.c:1138 elf/dl-map-segments.h:117
+#: elf/dl-load.c:1143 elf/dl-map-segments.h:118
msgid "ELF load command address/offset not page-aligned"
msgstr "Adress/position för ELF-laddkommando är inte sidjusterad"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "objektfilen har inga laddbara segment"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "kan inte ladda exekverbar fil dynamiskt"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "objektfilen har ingen dynamisk sektion"
-#: elf/dl-load.c:1289
+#: elf/dl-load.c:1294
msgid "cannot dynamically load position-independent executable"
msgstr "kan inte ladda positionsoberoende exekverbar fil dynamiskt"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "delat objekt kan inte göras dlopen() på"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "kan inte allokera minne för programhuvud"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "kan inte skapa exekverbar stack som delat objekt kräver"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "kan inte stänga filidentifierare"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "fil för kort"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "ogiltigt ELF-huvud"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "Kodning för ELF-fildata är inte rak byteordning"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "Kodning för ELF-fildata är inte omvänd byteordning"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "ELF-filens versionsidentitet stämmer inte med nuvarande"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "ELF-fil har felaktig version på OS-ABI"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "ELF-fil har felaktig version på ABI"
-#: elf/dl-load.c:1669
+#: elf/dl-load.c:1670
msgid "nonzero padding in e_ident"
msgstr "utfyllnad med annat än nolltecken i e_ident"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "internt fel"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "ELF-filens version stämmer inte med nuvarande"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "bara ET_DYN och ET_EXEC kan laddas"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "ELF-filens värde på \"phentsize\" är inte den förväntade"
@@ -654,19 +654,19 @@ msgstr "kan inte ändra minnesskydd"
msgid "cannot map zero-fill pages"
msgstr "kan inte mappa nollfyllda sidor"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "fel vid symboluppslagning"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "kan inte utöka globalt område"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "Generationsräknare för TLS slog runt! Var snäll och rapportera detta."
-#: elf/dl-open.c:716
+#: elf/dl-open.c:717
msgid "cannot allocate address lookup data"
msgstr "kan inte allokera adressuppslagningsdata"
@@ -707,7 +707,7 @@ msgstr "kan inte applicera extra minnesskydd efter relokering"
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "RTLD_NEXT används i kod som inte är dynamiskt laddad"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "kan inte skapa datastrukturer för TLS"
@@ -719,220 +719,220 @@ msgstr "fel vid versionuppslagning"
msgid "cannot allocate version reference table"
msgstr "kan inte allokera tabell för versionsreferenser"
-#: elf/dl-version.c:380
+#: elf/dl-version.c:387
msgid "DT_RELR without GLIBC_ABI_DT_RELR dependency"
msgstr "DT_RELR utan beroandet GLIBC_ABI_DT_RELR"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "Visa cache"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "Använd utförligare meddelanden"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "Bygg inte cache"
-#: elf/ldconfig.c:128
+#: elf/ldconfig.c:127
msgid "Don't update symbolic links"
msgstr "Uppdatera inte symboliska länkar"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "Byt till och använd ROT som rotkatalog"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "ROT"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "CACHE"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "Använd CACHE som cache-fil"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "CONF"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "Använd CONF som konfigurationsfil"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "Behandla endast kataloger givna som argument. Bygg inte cache."
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "Länka enskilda bibliotek manuellt."
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "FORMAT"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "Format to use: new (default), old, or compat"
msgstr "Format att använda: new (standard), old eller compat"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "Ignorera hjälpcachefilen"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "Konfigurera bindningar för den dynamiska länkaren."
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "Sökväg \"%s\" given mer än en gång"
-#: elf/ldconfig.c:278
+#: elf/ldconfig.c:277
#, c-format
msgid "(from %s:%d and %s:%d)\n"
msgstr "(från %s:%d och %s:%d)\n"
-#: elf/ldconfig.c:310 elf/ldconfig.c:351
+#: elf/ldconfig.c:309 elf/ldconfig.c:350
#, c-format
msgid "Could not form glibc-hwcaps path"
msgstr "Kunde inte forma glibc-hwcaps-sökväg"
-#: elf/ldconfig.c:324
+#: elf/ldconfig.c:323
#, c-format
msgid "Listing directory %s"
msgstr "Listar katalogen %s"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "Kan inte ta status på %s"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "Kan inte ta status på %s\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s är inte en symbolisk länk\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "Kan inte ta bort (unlink) %s"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "Kan inte länka %s till %s"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (ändrad)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (HOPPAR ÖVER)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "Kan inte hitta %s"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "Kan inte ta status (lstat) på %s"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "Ignorerar fil %s eftersom den inte är en vanlig fil."
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "Ingen länk skapad eftersom \"soname\" inte hittades för %s"
-#: elf/ldconfig.c:701
+#: elf/ldconfig.c:700
#, c-format
msgid " (from %s:%d)\n"
msgstr " (från %s:%d)\n"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "Kan inte öppna katalog %s"
-#: elf/ldconfig.c:743 elf/ldconfig.c:748
+#: elf/ldconfig.c:742 elf/ldconfig.c:747
#, c-format
msgid "Could not form library path"
msgstr "Kunde inte forma bibliotekssökvägen"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "Hittar inte infil %s.\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "Kan inte ta status på %s"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "libc6-bibliotek %s i fel katalog"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "bibliotek %s och %s i katalog %s har samma \"soname\" men olika typ."
-#: elf/ldconfig.c:1051
+#: elf/ldconfig.c:1050
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr "Varning: ignorerar konfigurationsfil som inte kan öppnas: %s"
-#: elf/ldconfig.c:1099
+#: elf/ldconfig.c:1098
#, c-format
msgid "%s:%u: hwcap directive ignored"
msgstr "%s:%u: hwcap-direktivet ignorerades"
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "behöver absolut filnamn för konfigurationsfil när -r används"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "minne slut"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: kan inte läsa katalog %s"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "relativ sökväg \"%s\" använd för att bygga cache"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "Kan inte byta katalog till /"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "Kan inte läsa cache-filkatalog \"%s\"\n"
@@ -1285,82 +1285,82 @@ msgstr "SHOBJ [PROFDATA]"
msgid "failed to load shared object `%s'"
msgstr "misslyckades med att ladda delat objekt \"%s\""
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "kan inte skapa intern deskriptor"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "Öppna delat objekt \"%s\" igen misslyckades"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "läsning av sektionshuvud misslyckades"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "läsning av sektionshuvuds strängtabell misslyckades"
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** Kan inte läsa fil med felsökningsinformation: %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "kan inte avgöra filnamn"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "läsning av ELF-huvud misslyckades"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** Filen \"%s\" är strippad: ingen detaljerad analys är möjlig\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "misslyckades att ladda symboldata"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "kan inte läsa profildata"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "när status togs på profildatafilen"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "profildatafil \"%s\" stämmer inte för delat objekt \"%s\""
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "misslyckades att mappa (mmap) profildatafilen"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "fel vid stängning av profildatafilen"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "\"%s\" är inte en korrekt profildatafil för \"%s\""
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "kan inte allokera symboldata"
@@ -2860,7 +2860,7 @@ msgid "cannot resize archive file"
msgstr "kan inte byta storlek på arkivfil"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "kan inte läsa arkivhuvud med mmap"
@@ -2919,64 +2919,70 @@ msgstr "kan inte ta status på lokalarkiv \"%s\""
msgid "cannot lock locale archive \"%s\""
msgstr "kan inte låsa lokalarkiv \"%s\""
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:642 locale/programs/locarchive.c:656
+#: locale/programs/locarchive.c:664 locale/programs/locarchive.c:685
+#, c-format
+msgid "cannot unlock archive header"
+msgstr "kan låsa upp arkivhuvudet"
+
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "kan inte läsa arkivhuvud"
-#: locale/programs/locarchive.c:661
+#: locale/programs/locarchive.c:665
#, c-format
msgid "bad magic value in archive header"
msgstr "felaktigt magiskt värde i arkivhuvudet"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "lokal \"%s\" finns redan"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "kan inte lägga till till lokalarkiv"
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "fil \"%s\" för lokalalias finns inte"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "Lägger till %s\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "ta status på \"%s\" misslyckades: %s: ignorerad"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "\"%s\" är inte en katalog, ignorerad"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "kan inte öppna katalog \"%s\": %s: ignorerad"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "ofullständig uppsättning av lokalfiler i \"%s\""
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "kan inte läsa alla filer i \"%s\": ignorerad"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "lokal \"%s\" finns inte i arkivet"
diff --git a/po/tr.po b/po/tr.po
index 433f365..98b919b 100644
--- a/po/tr.po
+++ b/po/tr.po
@@ -8,7 +8,7 @@
msgid ""
msgstr ""
"Project-Id-Version: libc 2.33.9000\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
"PO-Revision-Date: 2021-07-29 13:23+0300\n"
"Last-Translator: Mehmet Kececi <mkececi@mehmetkececi.com>\n"
"Language-Team: Turkish <gnome-turk@gnome.org>\n"
@@ -100,7 +100,7 @@ msgstr "(PROGRAM HATASI) Bilinen bir sürüm değil!?"
msgid "%s: Too many arguments\n"
msgstr "%s: Çok fazla argüman var\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(PROGRAM HATASI) Bu tanınan bir seçenek olmalıydı!?"
@@ -132,7 +132,7 @@ msgstr ""
"-o ÇIKTI-DOSYASI [GİRDİ-DOSYASI]...\n"
"[ÇIKTI-DOSYASI [GİRDİ-DOSYASI]...]"
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -147,7 +147,7 @@ msgstr ""
"%s.\n"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -164,7 +164,7 @@ msgstr ""
"UYGUNLUĞU için bile garanti verilmez.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -372,7 +372,7 @@ msgstr "Önbellek dosyası yanlış sonsuzluğa sahip.\n"
msgid "Cache generated by: "
msgstr "Önbellek tarafından oluşturulan: "
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Arabellek dosyası %s açılamıyor\n"
@@ -441,11 +441,11 @@ msgstr "paylaşımlı kitaplıklar yüklenirken hata oluştu"
msgid "DYNAMIC LINKER BUG!!!"
msgstr "DİNAMİK BAĞLAYICI HATASI!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "etki alanı listesi oluşturulamıyor"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "paylaşımlı nesne açık değil"
@@ -474,11 +474,11 @@ msgstr "bağımlılık listesi ayrılamadı"
msgid "cannot allocate symbol search list"
msgstr "sembol arama listesi ayrılamadı"
-#: elf/dl-hwcaps.c:104
+#: elf/dl-hwcaps.c:103
msgid "cannot create HWCAP priorities"
msgstr "öncelikler HWCAP oluşturulamıyor"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "yetenek listesi oluşturulamıyor"
@@ -498,95 +498,95 @@ msgstr "kopyası RUNPATH/RPATH oluşturulamıyor"
msgid "cannot create search path array"
msgstr "dosya arama yolu dizisi oluşturulamıyor"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "paylaşımlı nesne durumlanamıyor"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "paylaşımlı nesne tanımlayıcı oluşturulamıyor"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "dosya verisi okunamıyor"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "nesne dosyasının yüklenebilir segmanı yok"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "çalıştırılabilir dosya dinamik olarak yüklenemiyor"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "nesne dosyasının dinamik bölümü yok"
-#: elf/dl-load.c:1289
+#: elf/dl-load.c:1294
msgid "cannot dynamically load position-independent executable"
msgstr "konum-bağımsız yürütülebilir dinamik olarak yükleyemez"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "paylaşımlı nesne dlopen()'lanamıyor"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "uygulama başlığı için bellek ayrılamadı"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "paylaşımlı nesnenin gerektirdiği çalıştırılabilir yığıt etkinleştirilemiyor"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "dosya tanıtıcı kapatılamıyor"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "dosya çok küçük"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "geçersiz ELF başlığı"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "ELF dosyası verisinin kodlaması en-kıymetli-bayt-ilk (big-endian) değil"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "ELF dosyası verisinin kodlaması en-kıymetli-bayt-son (little-endian) değil"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "ELF dosyası sürüm kimliği mevcut biriyle eşleşmiyor"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "ELF dosyası OS ABI geçersiz"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "ELF dosyası ABI sürümü geçersiz"
-#: elf/dl-load.c:1669
+#: elf/dl-load.c:1670
msgid "nonzero padding in e_ident"
msgstr "e_ident içinde sıfır olmayan dolgu"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "iç hata"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "ELF dosyası sürümü mevcut biriyle eşleşmiyor"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "sadece ET_DYN ve ET_EXEC yüklü olabilir"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "ELF dosyasının phent uzunluğu beklenen uzunlukta değil"
@@ -614,15 +614,15 @@ msgstr "bellek korumaları değiştirilemiyor"
msgid "cannot map zero-fill pages"
msgstr "sıfırlar içeren sayfalar eşleştirilemez"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "simge arama hatası"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "genel kapsam geniÅŸletilemiyor"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "TLS üretecinin sayacı başa döndü! Bunu lütfen bildirin."
@@ -663,7 +663,7 @@ msgstr "yeniden ayırma işleminden sonra ek bellek koruması uygulanamaz"
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "RTLD_NEXT kullanılan kod dinamik olarak yüklenmedi"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "veri yapıları TLS oluşturulamıyor"
@@ -675,211 +675,211 @@ msgstr "sürüm arama hatası"
msgid "cannot allocate version reference table"
msgstr "sürüm başvuru tablosu ayrılamadı"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "Yazıcı ön belleği"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "Çok detaylı iletiler üretilir"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "Arabellek oluşturulamıyor"
-#: elf/ldconfig.c:128
+#: elf/ldconfig.c:127
msgid "Don't update symbolic links"
msgstr "Sembolik bağlantıları güncellemeyin"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "Dizine geçilir ve kök dizin olarak ROOT kullanır"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "KÖK"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "ARABELLEK"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "Arabellek dosyası olarak ARABELLEK kullanılır"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "YAPL"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "Yapılandırma dosyası olarak YAPD kullanılır"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "Komut satırında sadece süreç dizinleri belirtilmiş. Önbellek oluşturulamadı."
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "Her bir kitaplığı kendiniz bağlayın."
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "BİÇİM"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "Format to use: new (default), old, or compat"
msgstr "Kullanılacak biçim: yeni (varsayılan), eski, veya compat"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "Yardımcı arabellek dosyası yoksayılır"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "Dinamik Bağlayıcının İcra Zamanı Bağıntılarını Yapılandırır."
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "`%s' dosya yolu birden fazla verilmiÅŸ"
-#: elf/ldconfig.c:278
+#: elf/ldconfig.c:277
#, c-format
msgid "(from %s:%d and %s:%d)\n"
msgstr "(%s:%d itibaren ve %s:%d)\n"
-#: elf/ldconfig.c:310 elf/ldconfig.c:351
+#: elf/ldconfig.c:309 elf/ldconfig.c:350
#, c-format
msgid "Could not form glibc-hwcaps path"
msgstr "Glibc-hwcaps yolu oluşturulamadı"
-#: elf/ldconfig.c:324
+#: elf/ldconfig.c:323
#, c-format
msgid "Listing directory %s"
msgstr "Listeleme dizini %s"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "Stat %s yapılamıyor"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "Stat %s yapılamıyor\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s bir sembolik baÄŸ deÄŸil\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "%s bağı kaldırılamadı"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "%s den %s'e bağ yapılamıyor"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (deÄŸiÅŸti)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (ATLANDI)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "%s bulunamıyor"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "Lstat %s yapılamıyor"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "Normal bir dosya olmadığından %s dosyası yoksayıldı."
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "%s için kitaplık ismi bulunamadığından bağ oluşturulmadı"
-#: elf/ldconfig.c:701
+#: elf/ldconfig.c:700
#, c-format
msgid " (from %s:%d)\n"
msgstr " (%s:%d itibaren)\n"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "%s dizini açılamıyor"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "Girdi dosyası %s bulunamadı.\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "Stat %s yapılamıyor"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "libc6 kitaplığı %s yanlış dizinde"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "%s ve %s kitaplıkları %s dizininde ve aynı isme sahip oldukları halde farklı türde."
-#: elf/ldconfig.c:1051
+#: elf/ldconfig.c:1050
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr "Uyarı: açılmayan yapılandırma dosyası yok sayılıyor: %s"
-#: elf/ldconfig.c:1099
+#: elf/ldconfig.c:1098
#, c-format
msgid "%s:%u: hwcap directive ignored"
msgstr "%s:%u: hwcap yönergesi göz ardı edildi"
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "-r kullanılırken yapılandırma dosyası için soyut dosya ismi gerekir"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "bellek tükendi"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: %s dizini okunamıyor"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "arabelleğin oluşturulduğu göreli yol `%s'"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "Dizin chdir'e geçilemiyor /"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "Arabellek dosyasının dizini %s açılamıyor\n"
@@ -1232,82 +1232,82 @@ msgstr "SHOBJ [PROFDATA]"
msgid "failed to load shared object `%s'"
msgstr "paylaşımlı nesne `%s' yüklenemedi"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "iç tanıtıcı oluşturulamıyor"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "`%s' paylaşımlı nesnesinin yeniden açılması başarısız"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "bölüm başlıkları okunamadı"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "bölüm başlık dizgeleri tablosu okunamadı"
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** debuginfo dosya ismi okunamıyor: %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "dosya ismi saptanamıyor"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "başlık ELF okunamıyor"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** `%s' dosyası lime lime edildi: detaylı çözümleme mümkün değil\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "sembol verisi yüklenemedi"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "şekillendirici verisi yüklenemiyor"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "şekillendirici veri dosyası durumlanırken"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "şekillendirme veri dosyası `%s' paylaşımlı nesne `%s' ile uyuşmuyor"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "şekillendirme verisi dosyası mmap olamadı"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "şekillendirici verisi dosyası kapatılırken hata"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "`%s' `%s' için doğru olmayan şekillendirici verisi dosyası"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "sembol verisi ayrılamadı"
@@ -2739,7 +2739,7 @@ msgid "cannot resize archive file"
msgstr "arşiv dosyasının boyutu değiştirilemiyor"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "arşiv başlığı eşlenemiyor"
@@ -2798,59 +2798,59 @@ msgstr "\"%s\" yerel arşivi durumlanamıyor"
msgid "cannot lock locale archive \"%s\""
msgstr "\"%s\" yerel arÅŸivi kilitlenemiyor"
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "arşiv başlığı okunamıyor"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "`%s' yereli zaten var"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "yerel arşive ekleme yapılamıyor"
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "`%s' yerel isim dosyası bulunamadı"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "%s ekleniyor\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "\"%s\" durumlaması başarısız: %s: yoksayıldı"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "\"%s\" dizinsiz; yoksayıldı"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "\"%s\" dizini açılamıyor: %s: yoksayıldı"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "\"%s\" içindeki yerel dosyaları kümesi tamamlanmamış"
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "\"%s\" içindeki hiçbir dosya okunamıyor: yoksayıldı"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "\"%s\" yeri arÅŸivde deÄŸil"
diff --git a/po/uk.po b/po/uk.po
index b8f1af7..c796f24 100644
--- a/po/uk.po
+++ b/po/uk.po
@@ -6,9 +6,9 @@
# Volodymyr M. Lisivka <lvm@mystery.lviv.net>, 2013.
msgid ""
msgstr ""
-"Project-Id-Version: libc 2.40.9000\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
-"PO-Revision-Date: 2025-01-06 18:51+0200\n"
+"Project-Id-Version: libc 2.41.9000\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
+"PO-Revision-Date: 2025-07-20 16:13+0300\n"
"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
"Language-Team: Ukrainian <trans-uk@lists.fedoraproject.org>\n"
"Language: uk\n"
@@ -99,7 +99,7 @@ msgstr "(ПОМИЛКРПРОГРÐМИ) Ðевідома верÑÑ–Ñ!?"
msgid "%s: Too many arguments\n"
msgstr "%s: занадто багато аргументів\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(ПОМИЛКРПРОГРÐМИ) Параметр має розпізнаватиÑÑ!?"
@@ -141,7 +141,7 @@ msgstr ""
"-o ФÐЙЛ-ВИВЕДЕÐÐЯ [ФÐЙЛ-ВХІДÐИХ-ДÐÐИХ]...\n"
"[ФÐЙЛ-ВИВЕДЕÐÐЯ [ФÐЙЛ-ВХІДÐИХ-ДÐÐИХ]...]"
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -156,7 +156,7 @@ msgstr ""
"%s.\n"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -171,7 +171,7 @@ msgstr ""
"Це програмне Ð·Ð°Ð±ÐµÐ·Ð¿ÐµÑ‡ÐµÐ½Ð½Ñ Ñ” вільним, умови ÐºÐ¾Ð¿Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ Ð²Ð¸ÐºÐ»Ð°Ð´ÐµÐ½Ð¾ у його початкових кодах. Умовами Ð»Ñ–Ñ†ÐµÐ½Ð·ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¸ ÐЕ передбачено жодних гарантій, зокрема гарантій працездатноÑті або придатноÑті Ð´Ð»Ñ Ð¿ÐµÐ²Ð½Ð¾Ñ— мети.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -402,7 +402,7 @@ msgstr "ПорÑдок байтів у файлі кешу Ñ” помилкови
msgid "Cache generated by: "
msgstr "ЗаÑіб ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ ÐºÐµÑˆÑƒ:"
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Ðе вдалоÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸ файл кешу %s\n"
@@ -471,11 +471,11 @@ msgstr "помилка під Ñ‡Ð°Ñ Ñпроби завантажити бібÐ
msgid "DYNAMIC LINKER BUG!!!"
msgstr "Ð’ÐДРДИÐÐМІЧÐОГО КОМПОÐУВÐЛЬÐИКÐ!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "не вдалоÑÑ Ñтворити ÑпиÑок облаÑтей дії"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "об’єкт Ñпільного викориÑÑ‚Ð°Ð½Ð½Ñ Ð½Ðµ відкрито"
@@ -504,11 +504,11 @@ msgstr "не вдалоÑÑ Ñ€Ð¾Ð·Ð¼Ñ–Ñтити ÑпиÑок залежноÑÑ‚
msgid "cannot allocate symbol search list"
msgstr "не вдалоÑÑ Ñ€Ð¾Ð·Ð¼Ñ–Ñтити ÑпиÑок Ñимволів Ð´Ð»Ñ Ð¿Ð¾ÑˆÑƒÐºÑƒ у пам’Ñті"
-#: elf/dl-hwcaps.c:104
+#: elf/dl-hwcaps.c:103
msgid "cannot create HWCAP priorities"
msgstr "не вдалоÑÑ Ñтворити пріоритетноÑті HWCAP"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "не вдалоÑÑ Ñтворити ÑпиÑок можливоÑтей"
@@ -528,99 +528,99 @@ msgstr "не вдалоÑÑ Ñтворити копію RUNPATH/RPATH"
msgid "cannot create search path array"
msgstr "не вдалоÑÑ Ñтворити маÑив шлÑхів пошуку"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "не вдалоÑÑ Ð²Ð¸ÐºÐ¾Ð½Ð°Ñ‚Ð¸ ÑтатиÑтичну обробку об’єкта Ñпільного викориÑтаннÑ"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "не вдалоÑÑ Ñтворити деÑкриптор об’єкта Ñпільного викориÑтаннÑ"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ дані файла"
-#: elf/dl-load.c:1138 elf/dl-map-segments.h:117
+#: elf/dl-load.c:1143 elf/dl-map-segments.h:118
msgid "ELF load command address/offset not page-aligned"
msgstr "адреÑа або Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¸ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ ELF не вирівнÑно за межами Ñторінки"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "у об’єктному файлі немає придатних до Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñегментів"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "не вдалоÑÑ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶Ð¸Ñ‚Ð¸ виконуваний файл у динамічному режимі"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "у об’єктному файлі немає динамічного розділу"
-#: elf/dl-load.c:1289
+#: elf/dl-load.c:1294
msgid "cannot dynamically load position-independent executable"
msgstr "не вдалоÑÑ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶Ð¸Ñ‚Ð¸ позиційно незалежний виконуваний файл у динамічному режимі"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "об’єкт Ñпільного викориÑÑ‚Ð°Ð½Ð½Ñ Ð½Ðµ може бути відкрито за допомогою dlopen()"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ пам’Ñть Ð´Ð»Ñ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÐ° програми"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "не вдалоÑÑ ÑƒÐ²Ñ–Ð¼ÐºÐ½ÑƒÑ‚Ð¸ Ñтек виконаннÑ, Ñк цього вимагає об’єкт Ñпільного викориÑтаннÑ"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "не вдалоÑÑ Ð·Ð°ÐºÑ€Ð¸Ñ‚Ð¸ деÑкриптор файла"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "файл є надто коротким"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "некоректний заголовок ELF"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "байти у даних файла ELF впорÑдковано не у зворотному порÑдку"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "байти у даних файла ELF впорÑдковано не у прÑмому порÑдку"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "ідентифікатор верÑÑ–Ñ— файла ELF не відповідає поточному"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "некоректний ABI ОС у файлі ELF"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "некоректна верÑÑ–Ñ ABI у файлі ELF"
-#: elf/dl-load.c:1669
+#: elf/dl-load.c:1670
msgid "nonzero padding in e_ident"
msgstr "ненульове Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ñƒ e_ident"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "верÑÑ–Ñ Ñ„Ð°Ð¹Ð»Ð° ELF не збігаєтьÑÑ Ð· поточною"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "можна завантажити лише ET_DYN і ET_EXEC"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "phentsize файла ELF не є очікуваним"
@@ -648,19 +648,19 @@ msgstr "зміна захиÑту облаÑті пам’Ñті неможлиÐ
msgid "cannot map zero-fill pages"
msgstr "не вдалоÑÑ Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð·Ð¸Ñ‚Ð¸ Ñторінки Ð·Ð°Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð½ÑƒÐ»Ñми"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "помилка під Ñ‡Ð°Ñ Ð¿Ð¾ÑˆÑƒÐºÑƒ Ñимволів"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "не вдалоÑÑ Ñ€Ð¾Ð·ÑˆÐ¸Ñ€Ð¸Ñ‚Ð¸ загальну облаÑть"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "Переповнено лічильник ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ TLS! Будь лаÑка, повідомте про цю помилку розробникам."
-#: elf/dl-open.c:716
+#: elf/dl-open.c:717
msgid "cannot allocate address lookup data"
msgstr "не вдалоÑÑ Ñ€Ð¾Ð·Ð¼Ñ–Ñтити дані пошуку адреÑи"
@@ -701,7 +701,7 @@ msgstr "не вдалоÑÑ Ð·Ð°ÑтоÑувати додатковий захи
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "ВикориÑтаний у коді Ñимвол RTLD_NEXT не завантажуєтьÑÑ Ð´Ð¸Ð½Ð°Ð¼Ñ–Ñ‡Ð½Ð¾"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "не вдалоÑÑ Ñтворити Ñтруктури даних TLS"
@@ -713,220 +713,220 @@ msgstr "помилка під Ñ‡Ð°Ñ Ð¿Ð¾ÑˆÑƒÐºÑƒ верÑÑ–Ñ—"
msgid "cannot allocate version reference table"
msgstr "не вдалоÑÑ Ñ€Ð¾Ð·Ð¼Ñ–Ñтити таблицю поÑилань на верÑÑ–Ñ—"
-#: elf/dl-version.c:380
+#: elf/dl-version.c:387
msgid "DT_RELR without GLIBC_ABI_DT_RELR dependency"
msgstr "DT_RELR без залежноÑті від GLIBC_ABI_DT_RELR"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "ВивеÑти кеш"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "Режим докладних повідомлень"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "Ðе збирати кеш"
-#: elf/ldconfig.c:128
+#: elf/ldconfig.c:127
msgid "Don't update symbolic links"
msgstr "Ðе оновлювати Ñимволічні поÑиланнÑ"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "Перейти до каталогу КОРІÐЬ Ñ– викориÑтовувати його Ñк кореневий"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "КОРІÐЬ"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "КЕШ"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "ВикориÑтовувати КЕШ Ñк файл кешу"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "КОÐФ"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "ВикориÑтовувати КОÐФ Ñк файл налаштувань"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "ОброблÑти лише каталоги, вказані у командному Ñ€Ñдку. Ðе будувати кеш."
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "Під’єднати окремі бібліотеки вручну."
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "ФОРМÐТ"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "Format to use: new (default), old, or compat"
msgstr "Формат, Ñким Ñлід ÑкориÑтатиÑÑ: new (типовий), old або compat"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "Ігнорувати допоміжний файл кешу"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "Ðалаштувати прив’Ñзки динамічного компонувальника під Ñ‡Ð°Ñ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ."
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "ШлÑÑ… «%s» вказано декілька разів"
-#: elf/ldconfig.c:278
+#: elf/ldconfig.c:277
#, c-format
msgid "(from %s:%d and %s:%d)\n"
msgstr "(від %s:%d і %s:%d)\n"
-#: elf/ldconfig.c:310 elf/ldconfig.c:351
+#: elf/ldconfig.c:309 elf/ldconfig.c:350
#, c-format
msgid "Could not form glibc-hwcaps path"
msgstr "Ðе вдалоÑÑ Ñформувати шлÑÑ… glibc-hwcaps"
-#: elf/ldconfig.c:324
+#: elf/ldconfig.c:323
#, c-format
msgid "Listing directory %s"
msgstr "Будуємо ÑпиÑок каталогу %s"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "Ðе вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ ÑтатиÑтичні дані щодо %s"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "Ðе вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ ÑтатиÑтичні дані щодо %s\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s не Ñ” Ñимволічним поÑиланнÑм\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "Ðе вдалоÑÑ Ð²Ñ–Ð´â€™Ñ”Ð´Ð½Ð°Ñ‚Ð¸ %s"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "Ðе вдалоÑÑ Ð¿Ñ–Ð´â€™Ñ”Ð´Ð½Ð°Ñ‚Ð¸ %s до %s"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (змінено)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (ПРОПУЩЕÐО)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "Ðе вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ %s"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "Ðе вдалоÑÑ Ð¾Ð±Ñ€Ð¾Ð±Ð¸Ñ‚Ð¸ lstat %s"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "Файл %s проігноровано, оÑкільки він не Ñ” звичайним файлом."
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "Зв’Ñзку не Ñтворено, оÑкільки не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ бібліотеку so Ð´Ð»Ñ %s"
-#: elf/ldconfig.c:701
+#: elf/ldconfig.c:700
#, c-format
msgid " (from %s:%d)\n"
msgstr " (від %s:%d)\n"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "Ðе вдалоÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸ каталог %s"
-#: elf/ldconfig.c:743 elf/ldconfig.c:748
+#: elf/ldconfig.c:742 elf/ldconfig.c:747
#, c-format
msgid "Could not form library path"
msgstr "Ðе вдалоÑÑ Ñформувати шлÑÑ… до бібліотеки"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "Файл вхідних даних %s не знайдено.\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "Ðе вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ ÑтатиÑтичні дані щодо %s"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "Бібліотека libc6 %s зберігаєтьÑÑ Ñƒ помилковому каталозі"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "бібліотеки %s і %s у каталозі %s мають однакові назви so, але належать до різних типів."
-#: elf/ldconfig.c:1051
+#: elf/ldconfig.c:1050
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr "ПопередженнÑ: ігноруємо файл налаштувань, Ñкий не вдалоÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸: %s"
-#: elf/ldconfig.c:1099
+#: elf/ldconfig.c:1098
#, c-format
msgid "%s:%u: hwcap directive ignored"
msgstr "%s:%u: інÑтрукцію hwcap проігноровано"
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "Ñкщо викориÑтано -r, Ñлід вказати абÑолютну назву файла Ð´Ð»Ñ Ñ„Ð°Ð¹Ð»Ð° налаштувань"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "пам’Ñть вичерпано"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ каталог %s"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "відноÑний шлÑÑ… «%s» викориÑтано Ð´Ð»Ñ Ð·Ð±Ð¸Ñ€Ð°Ð½Ð½Ñ ÐºÐµÑˆÑƒ"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "Ðе вдалоÑÑ Ð·Ð¼Ñ–Ð½Ð¸Ñ‚Ð¸ каталог на /"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "Ðе вдалоÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸ каталог файлів кешу %s\n"
@@ -1278,82 +1278,82 @@ msgstr "ОСВ [ДÐÐІ_ПРОФІЛЮВÐÐÐЯ]"
msgid "failed to load shared object `%s'"
msgstr "не вдалоÑÑ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶Ð¸Ñ‚Ð¸ об’єкт Ñпільного викориÑÑ‚Ð°Ð½Ð½Ñ Â«%s»"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "не вдалоÑÑ Ñтворити внутрішній деÑкриптор"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "Спроба повторного Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð¾Ð±â€™Ñ”ÐºÑ‚Ð° Ñпільного викориÑÑ‚Ð°Ð½Ð½Ñ Â«%s» зазнала невдачі"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "Ñпроба Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÑ–Ð² розділів зазнала невдачі"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "Ñпроба Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ– Ñ€Ñдків заголовка розділу завершилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾"
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** Ðе вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ назву файла з діагноÑтичними даними: %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "не вдалоÑÑ Ð²Ð¸Ð·Ð½Ð°Ñ‡Ð¸Ñ‚Ð¸ назву файла"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "Ñпроба Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÐ° ELF зазнала невдачі"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** Файл «%s» очищено від додаткових даних: докладний аналіз неможливий\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "не вдалоÑÑ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶Ð¸Ñ‚Ð¸ дані Ñимволів"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "не вдалоÑÑ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶Ð¸Ñ‚Ð¸ дані профілюваннÑ"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "під Ñ‡Ð°Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ ÑтатиÑтичних даних щодо файла даних профілюваннÑ"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "файл даних Ð¿Ñ€Ð¾Ñ„Ñ–Ð»ÑŽÐ²Ð°Ð½Ð½Ñ Â«%s» не відповідає об’єкту Ñпільного викориÑÑ‚Ð°Ð½Ð½Ñ Â«%s»"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "не вдалоÑÑ Ð²Ð¸ÐºÐ¾Ð½Ð°Ñ‚Ð¸ mmap Ð´Ð»Ñ Ñ„Ð°Ð¹Ð»Ð° даних профілюваннÑ"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "помилка під Ñ‡Ð°Ñ Ñпроби закрити файл даних профілюваннÑ"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "«%s» не Ñ” коректним файлом даних Ð¿Ñ€Ð¾Ñ„Ñ–Ð»ÑŽÐ²Ð°Ð½Ð½Ñ Ð´Ð»Ñ Â«%s»"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "не вдалоÑÑ Ñ€Ð¾Ð·Ð¼Ñ–Ñтити дані Ñимволу"
@@ -2851,7 +2851,7 @@ msgid "cannot resize archive file"
msgstr "зміна розмірів файла архіву неможлива"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "не вдалоÑÑ Ð¿Ñ€Ð¸Ð²â€™Ñзати заголовок архіву"
@@ -2910,64 +2910,70 @@ msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ ÑтатиÑтичні дані щÐ
msgid "cannot lock locale archive \"%s\""
msgstr "не вдалоÑÑ Ð·Ð°Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ñ‚Ð¸ архів локалі «%s»"
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:642 locale/programs/locarchive.c:656
+#: locale/programs/locarchive.c:664 locale/programs/locarchive.c:685
+#, c-format
+msgid "cannot unlock archive header"
+msgstr "не вдалоÑÑ Ñ€Ð¾Ð·Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ñ‚Ð¸ заголовок архіву"
+
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ заголовок архіву"
-#: locale/programs/locarchive.c:661
+#: locale/programs/locarchive.c:665
#, c-format
msgid "bad magic value in archive header"
msgstr "помилкове Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÑŒÐ½Ð¾Ñ— Ñуми у заголовку архіву"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "локаль «%s» вже Ñ–Ñнує"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "не вдалоÑÑ Ð´Ð¾Ð´Ð°Ñ‚Ð¸ до архіву локалі"
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "альтернативний файл локалі «%s» не знайдено"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "Додаємо %s\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "помилка під Ñ‡Ð°Ñ Ñпроби отримати ÑтатиÑтичні дані щодо «%s»: %s: проігноровано"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "«%s» не є каталогом; проігноровано"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "не вдалоÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸ каталог «%s»: %s: проігноровано"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "набір файлів локалі у «%s» є неповним"
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ уÑÑ– файли у «%s»: проігноровано"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "локаль «%s» поза архівом"
diff --git a/po/vi.po b/po/vi.po
index 899bbb8..312905c 100644
--- a/po/vi.po
+++ b/po/vi.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: libc 2.37.9000\n"
"Report-Msgid-Bugs-To: http://www.gnu.org/software/libc/bugs.html\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
"PO-Revision-Date: 2023-07-22 10:02+0700\n"
"Last-Translator: Trần Ngá»c Quân <vnwildman@gmail.com>\n"
"Language-Team: Vietnamese <translation-team-vi@lists.sourceforge.net>\n"
@@ -102,7 +102,7 @@ msgstr "(LỖI CHƯƠNG TRÌNH) Không có phiên bản đã biết!?"
msgid "%s: Too many arguments\n"
msgstr "%s: Quá nhiá»u đối số\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(Lá»–I CHƯƠNG TRÃŒNH) Nên nhận biệt tùy chá»n mà chưa?"
@@ -135,7 +135,7 @@ msgstr ""
"-o TẬP-TIN-ÄẦU-RA [TẬP-TIN-ÄẦU-VÀO]…\n"
"[TẬP-TIN-ÄẦU-RA [TẬP-TIN-ÄẦU-VÀO]…]"
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -151,7 +151,7 @@ msgstr ""
"Thông báo lỗi dịch cho: <https://translationproject.org/team/vi.html>.\n"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -167,7 +167,7 @@ msgstr ""
"KHÔNG CÓ BẢO HÀNH GÃŒ CẢ; NGAY CẢ KHI NÓ ÄÆ¯á»¢C BÃN HAY THÃCH HỢP CHO MỤC ÄÃCH Cà NHÂN.\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -378,7 +378,7 @@ msgstr "Tập tin nhớ đêm sai endianness.\n"
msgid "Cache generated by: "
msgstr "Bộ nhớ tạm được tạo bởi: "
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "Không thể mở tập tin nhớ tạm %s\n"
@@ -447,11 +447,11 @@ msgstr "gặp lỗi khi nạp thư viện dùng chung"
msgid "DYNAMIC LINKER BUG!!!"
msgstr "Lá»–I LIÊN KẾT ÄỘNG!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "không thể tạo danh sách phạm vi"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "chưa mở đối tượng dùng chung"
@@ -480,11 +480,11 @@ msgstr "không thể cấp phát danh sách quan hệ phụ thuộc"
msgid "cannot allocate symbol search list"
msgstr "không thể cấp phát danh sách tìm kiếm ký hiệu"
-#: elf/dl-hwcaps.c:104
+#: elf/dl-hwcaps.c:103
msgid "cannot create HWCAP priorities"
msgstr "không thể tạo ưu tiên HWCAP"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "không thể tạo danh sách khả năng"
@@ -504,99 +504,99 @@ msgstr "không thể tạo bản sao RUNPATH/RPATH"
msgid "cannot create search path array"
msgstr "không thể tạo mảng đưá»ng dẫn tìm kiếm"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "không thể lấy trạng thái vỠđối tượng dùng chung"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "không thể tạo bộ mô tả đối tượng dùng chung"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "không thể Ä‘á»c dữ liệu tập tin"
-#: elf/dl-load.c:1138 elf/dl-map-segments.h:117
+#: elf/dl-load.c:1143 elf/dl-map-segments.h:118
msgid "ELF load command address/offset not page-aligned"
msgstr "Äịa chỉ/bù cá»§a câu lệnh nạp ELF không phải được sắp trang đúng"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "tập tin đối tượng không có đoạn nạp được"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "không thể nạp động tập tin thực hiện được"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "tập tin đối tượng không có phần động"
-#: elf/dl-load.c:1289
+#: elf/dl-load.c:1294
msgid "cannot dynamically load position-independent executable"
msgstr "không thể nạp động tập tin thực hiện được không phụ thuộc vị trí"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "đối tượng dùng chung không thể được dlopen()"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "không thể cấp phát bộ nhớ cho phần đầu chương trình"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "không thể hiệu lực ngăn xếp thực hiện được theo yêu cầu của đối tượng dùng chung"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "không thể đóng bộ mô tả tập tin"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "tập tin quá ngắn"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "phần đầu ELF không hợp lệ"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "Bảng mã dữ liệu tập tin ELF không có kiểu vỠcuối lớn (big-endian)"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "Bảng mã dữ liệu tập tin ELF không có kiểu vỠcuối nhỠ(little-endian)"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "ident phiên bản tập tin ELF không tương ứng với cái hiện tại"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "Hệ Ä‘iá»u hành ABI cá»§a tập tin ELF không phải hợp lệ"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "Phiên bản ABI của tập tin ELF không phải hợp lệ"
-#: elf/dl-load.c:1669
+#: elf/dl-load.c:1670
msgid "nonzero padding in e_ident"
msgstr "không có phần đệm số không trong e_ident"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "lá»—i ná»™i bá»™"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "Phiên bản tập tin ELF không tương ứng vá»›i Ä‘iá»u hiện thá»i"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "chỉ có thể nạp ET_DYN và ET_EXEC"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "kích cỡ phentsize cá»§a tập tin ELF là bất thưá»ng"
@@ -624,19 +624,19 @@ msgstr "không thể thay đổi sự bảo vệ bộ nhớ"
msgid "cannot map zero-fill pages"
msgstr "không thể ánh xạ trang Ä‘iá»n số không"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "lỗi tra cứu ký hiệu"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "không thể kéo dài phạm vi toàn cục"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "Bá»™ đếm tạo TLS đã bao bá»c! Hãy thông báo lá»—i này."
-#: elf/dl-open.c:716
+#: elf/dl-open.c:717
msgid "cannot allocate address lookup data"
msgstr "không thể cấp phát dữ liệu tìm kiếm địa chỉ"
@@ -677,7 +677,7 @@ msgstr "không thể áp dụng sự bảo vệ bộ nhớ thêm sau khi tái đ
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "RTLD_NEXT được dùng trong mã không phải được nạp động"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "không thể tạo các cấu trúc dữ liệu TLS"
@@ -689,220 +689,220 @@ msgstr "lỗi tra cứu phiên bản"
msgid "cannot allocate version reference table"
msgstr "không thể cấp phát bảng tham chiếu phiên bản"
-#: elf/dl-version.c:380
+#: elf/dl-version.c:387
msgid "DT_RELR without GLIBC_ABI_DT_RELR dependency"
msgstr "DT_RELR không phụ thuộc GLIBC_ABI_DT_RELR"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "In bộ nhớ đệm"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "Tạo thông tin chi tiết"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "Äừng xây dá»±ng bá»™ nhá»› tạm"
-#: elf/ldconfig.c:128
+#: elf/ldconfig.c:127
msgid "Don't update symbolic links"
msgstr "Äừng cập nhật các liên kết má»m"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "Chuyển đổi và dùng Gá»C làm thư mục gốc"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "Gá»C"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "NHỚ_ÄỆM"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "Dùng cái này làm TẬP-TIN nhớ đệm"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "CẤU_HÌNH"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "Dùng CẤU_HÌNH làm tập tin cấu hình"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "Chỉ xá»­ lý các thư mục được chỉ ra trên dòng lệnh. Äừng xây dá»±ng bá»™ nhá»› tạm."
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "Liên kết bằng tay các thư viện riêng."
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "ÄỊNH_DẠNG"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "Format to use: new (default), old, or compat"
msgstr "Äịnh dạng cần dùng: new (mặc định), old, compat (má»›i,cÅ©,tương thích)"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "BỠqua tập tin nhớ tạm bổ trợ"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "Cấu hình ràng buộc liên kết động khi chạy."
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "ÄÆ°á»ng dẫn “%s†được đưa ra nhiá»u lần"
-#: elf/ldconfig.c:278
+#: elf/ldconfig.c:277
#, c-format
msgid "(from %s:%d and %s:%d)\n"
msgstr "(từ %s:%d và %s:%d)\n"
-#: elf/ldconfig.c:310 elf/ldconfig.c:351
+#: elf/ldconfig.c:309 elf/ldconfig.c:350
#, c-format
msgid "Could not form glibc-hwcaps path"
msgstr "Không thể tạo thành đưá»ng dẫn glibc-hwcaps"
-#: elf/ldconfig.c:324
+#: elf/ldconfig.c:323
#, c-format
msgid "Listing directory %s"
msgstr "Thư mục liệt kê “%sâ€"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "Không thể lấy thống kê vỠ%s"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "Không thể lấy thống kê vỠ%s\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s không phải là má»™t liên kết má»m\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "Không thể bỠliên kết %s"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "Không thể liên kết %s tới %s"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (đã thay đổi)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (BỊ BỎ QUA)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "Không tìm thấy %s"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "Không thể lstat %s"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "Äã bá» qua tập tin %s vì nó không phải là tập tin thông thưá»ng."
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "Chưa tạo liên kết vì không tìm thấy soname đối với %s"
-#: elf/ldconfig.c:701
+#: elf/ldconfig.c:700
#, c-format
msgid " (from %s:%d)\n"
msgstr " (từ %s:%d)\n"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "Không thể mở thư mục %s"
-#: elf/ldconfig.c:743 elf/ldconfig.c:748
+#: elf/ldconfig.c:742 elf/ldconfig.c:747
#, c-format
msgid "Could not form library path"
msgstr "Không thể tạo đưá»ng dẫn thư viện"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "Không tìm thấy tập tin đầu vào %s.\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "Không thể lấy trạng thái vỠ%s"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "thư viện libc6 %s nằm trong thư mục không đúng"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "thư viện %s và %s trong thư mục %s có cùng một soname còn có kiểu khác nhau."
-#: elf/ldconfig.c:1051
+#: elf/ldconfig.c:1050
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr "Cảnh báo: đang bỠqua tập tin cấu hình, cái mà đã không thể mở được: %s"
-#: elf/ldconfig.c:1099
+#: elf/ldconfig.c:1098
#, c-format
msgid "%s:%u: hwcap directive ignored"
msgstr "%s:%u: chỉ thị hwcap bị bỠqua"
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "dùng tùy chá»n “-r†thì cÅ©ng cần tên tập tin tuyệt đối cho tập tin cấu hình"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "hết bộ nhớ"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: không thể Ä‘á»c thư mục %s"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "đưá»ng dẫn tương đối “%s†được dùng để xây dá»±ng bá»™ nhá»› tạm"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "Không thể chuyển đổi thư mục (chdir) sang /"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "Không thể mở thư mục nhớ tạm %s\n"
@@ -1254,82 +1254,82 @@ msgstr "SHOBJ [DỮ_LIỆU_LƯỢC_TẢ]"
msgid "failed to load shared object `%s'"
msgstr "lá»—i nạp đối tượng dùng chung “%sâ€"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "không thể tạo bộ mô tả nội bộ"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "Lá»—i mở lại đối tượng dùng chung “%sâ€"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "lá»—i Ä‘á»c phần đầu cá»§a phần"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "lá»—i Ä‘á»c bảng chuá»—i phần đầu cá»§a phần"
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** Không thể Ä‘á»c tên tập tin chứa thông tin gỡ lá»—i: %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "không thể phân giải tên tập tin"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "lá»—i Ä‘á»c phần đầu ELF"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** Tập tin “%s†bị tước nên không thể phân tích chi tiết\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "lỗi nạp dữ liệu ký hiệu"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "không thể nạp dữ liệu đo hiệu năng sử dụng"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "trong khi lấy thống kê vỠtập tin dữ liệu do hiệu năng sử dụng"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "tập tin dữ liệu do hiệu năng sá»­ dụng “%s†không tương ứng vá»›i đối tượng dùng chung “%sâ€"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "lỗi mmap tập tin dữ liệu do hiệu năng sử dụng"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "gặp lỗi khi đóng tập tin dữ liệu do hiệu năng sử dụng"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "“%s†không phải là tập tin dữ liệu lược tả đúng dành cho “%sâ€"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "không thể cấp phát dữ liệu ký hiệu"
@@ -2809,7 +2809,7 @@ msgid "cannot resize archive file"
msgstr "không thể thay đổi kích cỡ của tập tin kho lưu"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "không thể ánh xạ phần đầu của kho lưu"
@@ -2868,64 +2868,64 @@ msgstr "không thể lấy thống kê vá» kho lưu miá»n địa phương “%
msgid "cannot lock locale archive \"%s\""
msgstr "không thể khóa kho lưu miá»n địa phương “%sâ€"
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "không thể Ä‘á»c phần đầu cá»§a kho lưu"
-#: locale/programs/locarchive.c:661
+#: locale/programs/locarchive.c:665
#, c-format
msgid "bad magic value in archive header"
msgstr "giá trị ma thuật sai trong phần đầu lưu trữ"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "miá»n địa phương “%s†đã có"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "không thể thêm vào kho lưu miá»n địa phương"
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "không tìm thấy tập tin bí danh miá»n địa phương “%sâ€"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "Äang thêm “%sâ€\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "gặp lá»—i khi lấy thống kê vỠ“%sâ€: %s: bị bá» qua"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "“%s†không phải là thư mục nên bị bỠqua"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "không thể mở thư mục “%sâ€: %s: bị bá» qua"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "tập hợp tập tin miá»n địa phương chưa hoàn toàn trong “%sâ€"
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "không thể Ä‘á»c tất cả các tập tin trong “%sâ€: bị bá» qua"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "miá»n địa phương “%s†không nằm trong kho lưu"
diff --git a/po/zh_CN.po b/po/zh_CN.po
index a744fca..e31fea6 100644
--- a/po/zh_CN.po
+++ b/po/zh_CN.po
@@ -14,9 +14,9 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: libc 2.40.9000\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
-"PO-Revision-Date: 2025-01-07 09:05+0800\n"
+"Project-Id-Version: libc 2.41.9000\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
+"PO-Revision-Date: 2025-07-20 17:45+0800\n"
"Last-Translator: Wenbin Lv <wenbin816@gmail.com>\n"
"Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n"
"Language: zh_CN\n"
@@ -25,7 +25,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Bugs: Report translation errors to the Language-Team address.\n"
-"X-Generator: Poedit 3.5\n"
+"X-Generator: Poedit 3.6\n"
#: argp/argp-help.c:229
#, c-format
@@ -107,7 +107,7 @@ msgstr "(程åºé”™è¯¯ï¼‰ç‰ˆæœ¬å·æœªçŸ¥ï¼ï¼Ÿ"
msgid "%s: Too many arguments\n"
msgstr "%s: 傿•°å¤ªå¤š\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(程åºé”™è¯¯ï¼‰é€‰é¡¹åº”该å¯è¯†åˆ«ï¼ï¼Ÿ"
@@ -149,7 +149,7 @@ msgstr ""
"-o 输出文件 [输入文件]...\n"
"[输出文件 [输入文件]...]"
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -164,7 +164,7 @@ msgstr ""
"%s。\n"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -180,7 +180,7 @@ msgstr ""
"å“è´¨ä¿è¯ï¼›ç”šè‡³ä¸ä¿è¯é€‚销性或是适用于æŸç§ç‰¹å®šç”¨é€”。\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -410,7 +410,7 @@ msgstr "缓存文件使用了错误的字节顺åºã€‚\n"
msgid "Cache generated by: "
msgstr "缓存生æˆè€…:"
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "无法打开缓存文件 %s\n"
@@ -479,11 +479,11 @@ msgstr "载入共享库时出错"
msgid "DYNAMIC LINKER BUG!!!"
msgstr "动æ€é“¾æŽ¥å™¨ BUGï¼ï¼ï¼"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "无法创建作用域列表"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "共享目标未打开"
@@ -512,11 +512,11 @@ msgstr "无法分é…ä¾èµ–列表"
msgid "cannot allocate symbol search list"
msgstr "无法分é…ç¬¦å·æœç´¢åˆ—表"
-#: elf/dl-hwcaps.c:104
+#: elf/dl-hwcaps.c:103
msgid "cannot create HWCAP priorities"
msgstr "无法创建 HWCAP 优先级"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "无法创建功能列表"
@@ -536,100 +536,100 @@ msgstr "无法创建 RUNPATH/RPATH 的副本"
msgid "cannot create search path array"
msgstr "无法创建æœç´¢è·¯å¾„数组"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "无法对共享目标进行 stat æ“作"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "无法创建共享目标æè¿°ç¬¦"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "无法读入文件数æ®"
-#: elf/dl-load.c:1138 elf/dl-map-segments.h:117
+#: elf/dl-load.c:1143 elf/dl-map-segments.h:118
msgid "ELF load command address/offset not page-aligned"
msgstr "ELF 载入命令的地å€/åç§»é‡æ²¡æœ‰å¯¹é½åˆ°é¡µ"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "目标文件没有å¯åŠ è½½çš„æ®µ"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "无法动æ€åŠ è½½å¯æ‰§è¡Œæ–‡ä»¶"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "目标文件没有动æ€èŠ‚"
-#: elf/dl-load.c:1289
+#: elf/dl-load.c:1294
msgid "cannot dynamically load position-independent executable"
msgstr "无法动æ€åŠ è½½ä½ç½®æ— å…³å¯æ‰§è¡Œæ–‡ä»¶"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "无法用 dlopen() 打开共享目标"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "无法为程åºå¤´åˆ†é…内存"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "无法å¯ç”¨å…±äº«ç›®æ ‡éœ€è¦çš„坿‰§è¡Œæ ˆ"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "无法关闭文件æè¿°ç¬¦"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "文件过短"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "无效的 ELF 头"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "ELF 文件数æ®ç¼–ç ä¸æ˜¯å¤§ç«¯åº"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "ELF 文件数æ®ç¼–ç ä¸æ˜¯å°ç«¯åº"
# e_ident[]
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "ELF 文件的版本标识符ä¸ç¬¦åˆç›®å‰æ‰€ä½¿ç”¨çš„"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "ELF 文件 OS ABI 无效"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "ELF 文件 ABI 版本无效"
-#: elf/dl-load.c:1669
+#: elf/dl-load.c:1670
msgid "nonzero padding in e_ident"
msgstr "e_ident 的填充长度éžé›¶"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "内部错误"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "ELF 文件版本与当å‰ç‰ˆæœ¬ä¸åŒ¹é…"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "åªæœ‰ ET_DYN ä»¥åŠ ET_EXEC å¯ä»¥åŠ è½½"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "ELF æ–‡ä»¶çš„æ ‡å¤´é¡¹ç›®å¤§å° (phentsize) å‡ºä¹Žæ„æ–™"
@@ -657,19 +657,19 @@ msgstr "无法改å˜å†…å­˜ä¿æŠ¤"
msgid "cannot map zero-fill pages"
msgstr "无法映射用零填充的页"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "ç¬¦å·æŸ¥æ‰¾é”™è¯¯"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "无法扩展全局作用域"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "TLS 生æˆè®¡æ•°å™¨æº¢å‡ºï¼è¯·æŠ¥å‘Šè¿™ä¸ªæƒ…况。"
-#: elf/dl-open.c:716
+#: elf/dl-open.c:717
msgid "cannot allocate address lookup data"
msgstr "无法分é…åœ°å€æŸ¥è¯¢æ•°æ®"
@@ -710,7 +710,7 @@ msgstr "无法在é‡å®šä½åŽåº”用é¢å¤–çš„å†…å­˜ä¿æŠ¤"
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "ä»£ç æ‰€ä½¿ç”¨çš„ RTLD_NEXT 没有动æ€åŠ è½½"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "无法创建 TLS æ•°æ®ç»“æž„"
@@ -722,220 +722,220 @@ msgstr "版本查找错误"
msgid "cannot allocate version reference table"
msgstr "无法分é…版本引用表格"
-#: elf/dl-version.c:380
+#: elf/dl-version.c:387
msgid "DT_RELR without GLIBC_ABI_DT_RELR dependency"
msgstr "DT_RELR 没有 GLIBC_ABI_DT_RELR ä¾èµ–"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "打å°ç¼“å­˜"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "生æˆè¯¦ç»†æ¶ˆæ¯"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "ä¸è¦åˆ›å»ºç¼“å­˜"
-#: elf/ldconfig.c:128
+#: elf/ldconfig.c:127
msgid "Don't update symbolic links"
msgstr "ä¸è¦æ›´æ–°ç¬¦å·é“¾æŽ¥"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "进入 <根> 目录并将其作为根目录"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "æ ¹"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "缓存"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "将 <缓存> 用作缓存文件"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "é…ç½®"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "å°† <é…ç½®> 用作é…置文件"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "åªå¤„ç†å‘½ä»¤è¡Œä¸­æŒ‡å®šçš„目录。ä¸è¦åˆ›å»ºç¼“存。"
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "手动链接å„个库。"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "æ ¼å¼"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "Format to use: new (default), old, or compat"
msgstr "使用的格å¼ï¼šnew(默认)ã€old 或 compat"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "忽略辅助缓存文件"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "é…置动æ€é“¾æŽ¥å™¨çš„è¿è¡Œæ—¶çš„绑定。"
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "多次给出路径 \"%s\""
-#: elf/ldconfig.c:278
+#: elf/ldconfig.c:277
#, c-format
msgid "(from %s:%d and %s:%d)\n"
msgstr "(æ¥è‡ª %s:%d å’Œ %s:%d)\n"
-#: elf/ldconfig.c:310 elf/ldconfig.c:351
+#: elf/ldconfig.c:309 elf/ldconfig.c:350
#, c-format
msgid "Could not form glibc-hwcaps path"
msgstr "æ— æ³•å½¢æˆ glibc-hwcaps 路径"
-#: elf/ldconfig.c:324
+#: elf/ldconfig.c:323
#, c-format
msgid "Listing directory %s"
msgstr "正在列出目录 %s"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "无法对 %s 进行 stat æ“作"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "无法对 %s 进行 stat æ“作\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s 䏿˜¯ç¬¦å·é“¾æŽ¥\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "æ— æ³•å–æ¶ˆé“¾æŽ¥ %s"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "无法将 %s 链接到 %s"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr "(已改å˜ï¼‰\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr "(已跳过)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "无法找到 %s"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "无法对 %s 进行 lstat æ“作"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "忽略文件 %sï¼Œå› ä¸ºå®ƒä¸æ˜¯ä¸€ä¸ªæ™®é€šæ–‡ä»¶ã€‚"
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "未创建链接,因为 %s 无法找到 soname"
-#: elf/ldconfig.c:701
+#: elf/ldconfig.c:700
#, c-format
msgid " (from %s:%d)\n"
msgstr "(æ¥è‡ª %s:%d)\n"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "无法打开目录 %s"
-#: elf/ldconfig.c:743 elf/ldconfig.c:748
+#: elf/ldconfig.c:742 elf/ldconfig.c:747
#, c-format
msgid "Could not form library path"
msgstr "无法形æˆåº“路径"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "未找到输入文件 %s。\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "无法对 %s 进行 stat æ“作"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "libc6 的库 %s 处于错误的目录中"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "目录 %3$s 中的库 %1$s å’Œ %2$s çš„ soname 相åŒä½†ç±»åž‹ä¸åŒã€‚"
-#: elf/ldconfig.c:1051
+#: elf/ldconfig.c:1050
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr "警告:已忽略无法打开的é…置文件:%s"
-#: elf/ldconfig.c:1099
+#: elf/ldconfig.c:1098
#, c-format
msgid "%s:%u: hwcap directive ignored"
msgstr "%s:%u: hwcap 指令已忽略"
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "使用 -r 时,é…置文件的文件å需è¦ä½¿ç”¨ç»å¯¹è·¯å¾„"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "内存耗尽"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: 无法读å–目录 %s"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "ç”¨æ¥æž„建缓存的路径 \"%s\" 是相对路径"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "无法改å˜ç›®å½•到 /"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "无法打开缓存文件目录 %s\n"
@@ -1288,82 +1288,82 @@ msgstr "共享对象 [性能数æ®]"
msgid "failed to load shared object `%s'"
msgstr "载入共享目标 \"%s\" 失败"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "无法创建内部æè¿°ç¬¦"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "釿–°æ‰“开共享目标 \"%s\" 失败"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "读å–节头部失败"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "读å–节头部字符串表失败"
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** 无法读å–è°ƒè¯•ä¿¡æ¯æ–‡ä»¶å:%m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "无法确定文件å"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "è¯»å– ELF 头部失败"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** 文件 \"%s\" 已剥离(stripped):ä¸å¯èƒ½è¿›è¡Œç»†èŠ‚åˆ†æž\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "è½½å…¥ç¬¦å·æ•°æ®å¤±è´¥"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "æ— æ³•åŠ è½½æ€§èƒ½åˆ†æžæ•°æ®"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "å¯¹æ€§èƒ½åˆ†æžæ•°æ®æ–‡ä»¶æ‰§è¡Œ stat æ“作时"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "æ€§èƒ½åˆ†æžæ•°æ®æ–‡ä»¶ \"%s\" 与共享目标 \"%s\" ä¸åŒ¹é…"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "å¯¹æ€§èƒ½åˆ†æžæ•°æ®æ–‡ä»¶è¿›è¡Œ mmap æ“作失败"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "å…³é—­æ€§èƒ½åˆ†æžæ•°æ®æ–‡ä»¶æ—¶å‡ºé”™"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "\"%s\" 䏿˜¯é€‚用于 \"%s\" çš„æ­£ç¡®çš„æ€§èƒ½åˆ†æžæ•°æ®æ–‡ä»¶"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "无法分é…ç¬¦å·æ•°æ®"
@@ -2862,7 +2862,7 @@ msgid "cannot resize archive file"
msgstr "无法改å˜å½’档文件的大å°"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "无法映射归档文件头"
@@ -2921,64 +2921,70 @@ msgstr "无法对区域设置归档文件 \"%s\" 进行 stat æ“作"
msgid "cannot lock locale archive \"%s\""
msgstr "无法é”定区域设置归档文件 \"%s\""
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:642 locale/programs/locarchive.c:656
+#: locale/programs/locarchive.c:664 locale/programs/locarchive.c:685
+#, c-format
+msgid "cannot unlock archive header"
+msgstr "无法解é”归档文件头"
+
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "无法读入归档文件头"
-#: locale/programs/locarchive.c:661
+#: locale/programs/locarchive.c:665
#, c-format
msgid "bad magic value in archive header"
msgstr "归档文件头中的魔数无效"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "区域设置 \"%s\" 已存在"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "无法添加到区域设置归档文件"
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "找ä¸åˆ°åŒºåŸŸè®¾ç½®åˆ«å文件 \"%s\""
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "正在添加 %s\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "无法对 \"%s\" 进行 stat æ“作:%s:已忽略"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "\"%s\" 䏿˜¯ç›®å½•;已忽略"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "无法打开目录 \"%s\":%s:已忽略"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "\"%s\" 中的区域设置文件集ä¸å®Œæ•´"
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "无法读入 \"%s\" 中的所有文件:已忽略"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "区域设置 \"%s\" ä¸åœ¨å½’档文件中"
diff --git a/po/zh_TW.po b/po/zh_TW.po
index ee749e0..45b72e8 100644
--- a/po/zh_TW.po
+++ b/po/zh_TW.po
@@ -16,7 +16,7 @@
msgid ""
msgstr ""
"Project-Id-Version: libc 2.39.9000\n"
-"POT-Creation-Date: 2025-01-28 12:35+0100\n"
+"POT-Creation-Date: 2025-07-19 22:21+0200\n"
"PO-Revision-Date: 2024-12-02 09:47+0800\n"
"Last-Translator: Yi-Jyun Pan <pan93412@gmail.com>\n"
"Language-Team: Chinese (traditional) <zh-l10n@lists.slat.org>\n"
@@ -108,7 +108,7 @@ msgstr "(程å¼éŒ¯èª¤ï¼‰æ²’有已知版本ï¼ï¼Ÿ"
msgid "%s: Too many arguments\n"
msgstr "%s: éŽå¤šåƒæ•¸\n"
-#: argp/argp-parse.c:751
+#: argp/argp-parse.c:754
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(程å¼éŒ¯èª¤ï¼‰é¸é …應該已被識別ï¼ï¼Ÿ"
@@ -140,7 +140,7 @@ msgstr ""
"-o 輸出檔案å稱 [輸入檔案å稱]...\n"
"[輸出檔案å稱 [輸入檔案å稱]...]"
-#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:217
+#: catgets/gencat.c:230 debug/pcprofiledump.c:219 elf/ldconfig.c:216
#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:371 iconv/iconv_prog.c:374
#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
@@ -155,7 +155,7 @@ msgstr ""
"%s。\n"
#: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63
-#: elf/ldconfig.c:233 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75
#: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
#: locale/programs/locale.c:292 locale/programs/localedef.c:459
#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
@@ -171,7 +171,7 @@ msgstr ""
"售或者é©åˆæŸäº›ç‰¹æ®Šç›®çš„。\n"
#: catgets/gencat.c:251 debug/pcprofiledump.c:240 debug/xtrace.sh:67
-#: elf/ldconfig.c:238 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:394 iconv/iconv_prog.c:396
#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
#: locale/programs/localedef.c:464 malloc/memusage.sh:74
#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
@@ -387,7 +387,7 @@ msgstr "å¿«å–æª”æ¡ˆçš„å­—ç¯€é †åºæœ‰èª¤ã€‚\n"
msgid "Cache generated by: "
msgstr "å¿«å–產生者: "
-#: elf/cache.c:296 elf/ldconfig.c:1239
+#: elf/cache.c:296 elf/ldconfig.c:1238
#, c-format
msgid "Can't open cache file %s\n"
msgstr "ç„¡æ³•é–‹å•Ÿå¿«å–æª” %s\n"
@@ -456,11 +456,11 @@ msgstr "載入共用函å¼åº«æ™‚發生錯誤"
msgid "DYNAMIC LINKER BUG!!!"
msgstr "å‹•æ…‹é€£æŽ¥ç¨‹å¼æœ‰å•題!!!"
-#: elf/dl-close.c:363 elf/dl-open.c:298
+#: elf/dl-close.c:363 elf/dl-open.c:297
msgid "cannot create scope list"
msgstr "無法建立作用域列表"
-#: elf/dl-close.c:792
+#: elf/dl-close.c:790
msgid "shared object not open"
msgstr "共用物件案沒有開啟"
@@ -489,11 +489,11 @@ msgstr "無法é…置相關性列表"
msgid "cannot allocate symbol search list"
msgstr "無法é…置符號æœå°‹åˆ—表"
-#: elf/dl-hwcaps.c:104
+#: elf/dl-hwcaps.c:103
msgid "cannot create HWCAP priorities"
msgstr "無法建立 HWCAP 優先級"
-#: elf/dl-hwcaps.c:196
+#: elf/dl-hwcaps.c:195
msgid "cannot create capability list"
msgstr "無法建立 capability 列表"
@@ -513,99 +513,99 @@ msgstr "無法建立 RUNPATH/RPATH 的副本"
msgid "cannot create search path array"
msgstr "無法建立æœå°‹è·¯å¾‘陣列"
-#: elf/dl-load.c:973
+#: elf/dl-load.c:978
msgid "cannot stat shared object"
msgstr "無法 stat 共用物件"
-#: elf/dl-load.c:1066 elf/dl-load.c:2155
+#: elf/dl-load.c:1071 elf/dl-load.c:2155
msgid "cannot create shared object descriptor"
msgstr "無法建立共用物件敘述項"
-#: elf/dl-load.c:1085 elf/dl-load.c:1604 elf/dl-load.c:1710
+#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711
msgid "cannot read file data"
msgstr "ç„¡æ³•è®€å–æª”案資料"
-#: elf/dl-load.c:1138 elf/dl-map-segments.h:117
+#: elf/dl-load.c:1143 elf/dl-map-segments.h:118
msgid "ELF load command address/offset not page-aligned"
msgstr "ELF 載入命令的ä½å€æˆ–ä½ç§»æ²’有å°é½Šé é¢"
-#: elf/dl-load.c:1230
+#: elf/dl-load.c:1235
msgid "object file has no loadable segments"
msgstr "目的檔中沒有å¯è¼‰å…¥çš„倿®µ"
-#: elf/dl-load.c:1247
+#: elf/dl-load.c:1252
msgid "cannot dynamically load executable"
msgstr "無法動態載入執行檔"
-#: elf/dl-load.c:1254
+#: elf/dl-load.c:1259
msgid "object file has no dynamic section"
msgstr "å…±ç”¨ç‰©ä»¶ä¸­æ²’æœ‰å‹•æ…‹å€æ®µ"
-#: elf/dl-load.c:1289
+#: elf/dl-load.c:1294
msgid "cannot dynamically load position-independent executable"
msgstr "無法動態載入地å€ç„¡é—œå¯åŸ·è¡Œæª”"
-#: elf/dl-load.c:1291
+#: elf/dl-load.c:1296
msgid "shared object cannot be dlopen()ed"
msgstr "共用物件無法被 dlopen()"
-#: elf/dl-load.c:1304
+#: elf/dl-load.c:1309
msgid "cannot allocate memory for program header"
msgstr "無法é…ç½®è¨˜æ†¶é«”çµ¦ç¨‹å¼æ¨™é ­å€ä½¿ç”¨"
-#: elf/dl-load.c:1329
+#: elf/dl-load.c:1334
msgid "cannot enable executable stack as shared object requires"
msgstr "無法開啟å¯åŸ·è¡Œå †ç–Šåšç‚ºå…±ç”¨ç‰©ä»¶"
-#: elf/dl-load.c:1357
+#: elf/dl-load.c:1362
msgid "cannot close file descriptor"
msgstr "無法關閉檔案æè¿°ç¬¦è™Ÿ"
-#: elf/dl-load.c:1604
+#: elf/dl-load.c:1605
msgid "file too short"
msgstr "檔案太å°"
-#: elf/dl-load.c:1638
+#: elf/dl-load.c:1639
msgid "invalid ELF header"
msgstr "無效的 ELF 標頭"
-#: elf/dl-load.c:1653
+#: elf/dl-load.c:1654
msgid "ELF file data encoding not big-endian"
msgstr "ELF 檔資料編碼並éžå¤§å°¾åº"
-#: elf/dl-load.c:1655
+#: elf/dl-load.c:1656
msgid "ELF file data encoding not little-endian"
msgstr "ELF 檔資料編碼並éžå°å°¾åº"
-#: elf/dl-load.c:1659
+#: elf/dl-load.c:1660
msgid "ELF file version ident does not match current one"
msgstr "ELF 檔版本 ident ä¸ç¬¦åˆç›®å‰æ‰€ä½¿ç”¨çš„"
-#: elf/dl-load.c:1663
+#: elf/dl-load.c:1664
msgid "ELF file OS ABI invalid"
msgstr "ELF 檔 OS ABI 版本ä¸é©ç”¨"
-#: elf/dl-load.c:1666
+#: elf/dl-load.c:1667
msgid "ELF file ABI version invalid"
msgstr "ELF 檔 ABI 版本ä¸é©ç”¨"
-#: elf/dl-load.c:1669
+#: elf/dl-load.c:1670
msgid "nonzero padding in e_ident"
msgstr "在 e_ident 中填補éžé›¶å€¼"
-#: elf/dl-load.c:1672
+#: elf/dl-load.c:1673
msgid "internal error"
msgstr "內部錯誤"
-#: elf/dl-load.c:1679
+#: elf/dl-load.c:1680
msgid "ELF file version does not match current one"
msgstr "ELF 檔版本ä¸ç¬¦åˆç›®å‰çš„版本"
-#: elf/dl-load.c:1691
+#: elf/dl-load.c:1692
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "åªæœ‰ ET_DYN ä»¥åŠ ET_EXEC å¯ä»¥è¼‰å…¥"
-#: elf/dl-load.c:1696
+#: elf/dl-load.c:1697
msgid "ELF file's phentsize not the expected size"
msgstr "ELF 檔的 phentsize 䏦䏿˜¯é æœŸä¸­çš„大å°"
@@ -633,19 +633,19 @@ msgstr "無法改變記憶體ä¿è­·ç‹€æ…‹"
msgid "cannot map zero-fill pages"
msgstr "ç„¡æ³•å°æ‡‰ä»¥é›¶å¡«æ»¿çš„分é å€"
-#: elf/dl-lookup.c:800
+#: elf/dl-lookup.c:810
msgid "symbol lookup error"
msgstr "符號查找錯誤"
-#: elf/dl-open.c:84
+#: elf/dl-open.c:83
msgid "cannot extend global scope"
msgstr "無法延展全域變數的作用域"
-#: elf/dl-open.c:382
+#: elf/dl-open.c:381
msgid "TLS generation counter wrapped! Please report this."
msgstr "TLS 產生計數器被轉æ›åŸ·è¡Œï¼ 請報告這個情æ³ã€‚"
-#: elf/dl-open.c:716
+#: elf/dl-open.c:717
msgid "cannot allocate address lookup data"
msgstr "無法é…ç½®åœ°å€æŸ¥è©¢è³‡æ–™"
@@ -686,7 +686,7 @@ msgstr "é‡å®šå€ä¹‹å¾Œç„¡æ³•套用é¡å¤–記憶體ä¿è­·"
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "程å¼ç¢¼æ‰€ä½¿ç”¨çš„ RTLD_NEXT 沒有動態載入"
-#: elf/dl-tls.c:1196
+#: elf/dl-tls.c:1209
msgid "cannot create TLS data structures"
msgstr "無法建立 TLS è³‡æ–™çµæ§‹"
@@ -698,220 +698,220 @@ msgstr "版本查找錯誤"
msgid "cannot allocate version reference table"
msgstr "無法é…置版本åƒç…§è¡¨"
-#: elf/dl-version.c:380
+#: elf/dl-version.c:387
msgid "DT_RELR without GLIBC_ABI_DT_RELR dependency"
msgstr "DT_RELR 缺少 GLIBC_ABI_DT_RELR ä¾è³´é—œä¿‚"
-#: elf/ldconfig.c:125
+#: elf/ldconfig.c:124
msgid "Print cache"
msgstr "å°å‡ºå¿«å–"
-#: elf/ldconfig.c:126
+#: elf/ldconfig.c:125
msgid "Generate verbose messages"
msgstr "產生更多的訊æ¯"
-#: elf/ldconfig.c:127
+#: elf/ldconfig.c:126
msgid "Don't build cache"
msgstr "ä¸å»ºç«‹å¿«å–"
-#: elf/ldconfig.c:128
+#: elf/ldconfig.c:127
msgid "Don't update symbolic links"
msgstr "ä¸è¦æ›´æ–°ç¬¦è™Ÿé€£çµ"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "Change to and use ROOT as root directory"
msgstr "變æ›åˆ° ROOT 目錄並以它åšç‚ºæ ¹ç›®éŒ„"
-#: elf/ldconfig.c:129
+#: elf/ldconfig.c:128
msgid "ROOT"
msgstr "ROOT"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "CACHE"
msgstr "CACHE"
-#: elf/ldconfig.c:130
+#: elf/ldconfig.c:129
msgid "Use CACHE as cache file"
msgstr "使用 CACHE ç•¶ä½œå¿«å–æª”案"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "CONF"
msgstr "CONF"
-#: elf/ldconfig.c:131
+#: elf/ldconfig.c:130
msgid "Use CONF as configuration file"
msgstr "使用 CONF 當作設定檔"
-#: elf/ldconfig.c:132
+#: elf/ldconfig.c:131
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "åªè™•ç†åœ¨æŒ‡ä»¤åˆ—引數中有指定的目錄,ä¸å»ºç«‹å¿«å–檔案。"
-#: elf/ldconfig.c:133
+#: elf/ldconfig.c:132
msgid "Manually link individual libraries."
msgstr "手動個別連çµå‡½å¼åº«ã€‚"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "FORMAT"
msgstr "FORMAT"
-#: elf/ldconfig.c:134
+#: elf/ldconfig.c:133
msgid "Format to use: new (default), old, or compat"
msgstr "è¦ä½¿ç”¨çš„æ ¼å¼: new (é è¨­å€¼)ã€old 或 compat"
-#: elf/ldconfig.c:135
+#: elf/ldconfig.c:134
msgid "Ignore auxiliary cache file"
msgstr "å¿½ç•¥è¼”åŠ©è¨­å‚™å¿«å–æª”案"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:142
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "設定執行時期動態連接。"
-#: elf/ldconfig.c:277
+#: elf/ldconfig.c:276
#, c-format
msgid "Path `%s' given more than once"
msgstr "路徑 `%s' 使用超éŽä¸€æ¬¡"
-#: elf/ldconfig.c:278
+#: elf/ldconfig.c:277
#, c-format
msgid "(from %s:%d and %s:%d)\n"
msgstr "(自 %s:%d 和 %s:%d)\n"
-#: elf/ldconfig.c:310 elf/ldconfig.c:351
+#: elf/ldconfig.c:309 elf/ldconfig.c:350
#, c-format
msgid "Could not form glibc-hwcaps path"
msgstr "無法建構 glibc-hwcaps 路徑"
-#: elf/ldconfig.c:324
+#: elf/ldconfig.c:323
#, c-format
msgid "Listing directory %s"
msgstr "列出目錄 %s"
-#: elf/ldconfig.c:406
+#: elf/ldconfig.c:405
#, c-format
msgid "Can't stat %s"
msgstr "無法 stat %s"
-#: elf/ldconfig.c:487
+#: elf/ldconfig.c:486
#, c-format
msgid "Can't stat %s\n"
msgstr "無法 stat %s\n"
-#: elf/ldconfig.c:497
+#: elf/ldconfig.c:496
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s 䏿˜¯ä¸€å€‹ç¬¦è™Ÿé€£æŽ¥æª”\n"
-#: elf/ldconfig.c:516
+#: elf/ldconfig.c:515
#, c-format
msgid "Can't unlink %s"
msgstr "ç„¡æ³•å–æ¶ˆé€£çµ %s"
-#: elf/ldconfig.c:522
+#: elf/ldconfig.c:521
#, c-format
msgid "Can't link %s to %s"
msgstr "無法從 %s 連çµåˆ° %s"
-#: elf/ldconfig.c:528
+#: elf/ldconfig.c:527
msgid " (changed)\n"
msgstr " (已改變)\n"
-#: elf/ldconfig.c:530
+#: elf/ldconfig.c:529
msgid " (SKIPPED)\n"
msgstr " (已忽略)\n"
-#: elf/ldconfig.c:585
+#: elf/ldconfig.c:584
#, c-format
msgid "Can't find %s"
msgstr "找ä¸åˆ° %s"
-#: elf/ldconfig.c:601 elf/ldconfig.c:760 elf/ldconfig.c:827
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
#, c-format
msgid "Cannot lstat %s"
msgstr "無法 lstat %s"
-#: elf/ldconfig.c:607
+#: elf/ldconfig.c:606
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "忽略檔案 %s å› ç‚ºå®ƒä¸æ˜¯ä¸€å€‹æ­£å¸¸çš„æª”案。"
-#: elf/ldconfig.c:615
+#: elf/ldconfig.c:614
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "由於找ä¸åˆ° %s 的共用物件å稱,連çµä¸¦æœªè¢«å»ºç«‹"
-#: elf/ldconfig.c:701
+#: elf/ldconfig.c:700
#, c-format
msgid " (from %s:%d)\n"
msgstr " (自 %s:%d)\n"
-#: elf/ldconfig.c:716
+#: elf/ldconfig.c:715
#, c-format
msgid "Can't open directory %s"
msgstr "無法開啟目錄 %s"
-#: elf/ldconfig.c:743 elf/ldconfig.c:748
+#: elf/ldconfig.c:742 elf/ldconfig.c:747
#, c-format
msgid "Could not form library path"
msgstr "無法組織函å¼åº«è·¯å¾‘"
-#: elf/ldconfig.c:777 elf/ldconfig.c:815 elf/readlib.c:81
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
#, c-format
msgid "Input file %s not found.\n"
msgstr "輸入檔 %s 找ä¸åˆ°ã€‚\n"
-#: elf/ldconfig.c:784
+#: elf/ldconfig.c:783
#, c-format
msgid "Cannot stat %s"
msgstr "無法顯示狀態 %s"
-#: elf/ldconfig.c:903
+#: elf/ldconfig.c:902
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "libc6 函å¼åº« %s 擺錯目錄了"
-#: elf/ldconfig.c:922
+#: elf/ldconfig.c:921
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "函å¼åº« %s è·Ÿ %s (在目錄 %s 底下) 有共åŒçš„共用函å¼åº«å稱,ä¸éŽå…¶æ ¼å¼å»ä¸åŒã€‚"
-#: elf/ldconfig.c:1051
+#: elf/ldconfig.c:1050
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr "警告: 正在忽略無法開啟的組態檔案: %s"
-#: elf/ldconfig.c:1099
+#: elf/ldconfig.c:1098
#, c-format
msgid "%s:%u: hwcap directive ignored"
msgstr "%s:%u: 忽略 hwcap 指示詞"
-#: elf/ldconfig.c:1118
+#: elf/ldconfig.c:1117
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "需è¦çµ•å°æª”案å稱用於組態檔案時正在使用 -r"
-#: elf/ldconfig.c:1125 locale/programs/xasprintf.c:31
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
#: posix/getconf.c:460 posix/getconf.c:699
#, c-format
msgid "memory exhausted"
msgstr "記憶體用盡"
-#: elf/ldconfig.c:1158
+#: elf/ldconfig.c:1157
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: 無法讀å–目錄 %s"
-#: elf/ldconfig.c:1196
+#: elf/ldconfig.c:1195
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "用來建置快å–的相å°è·¯å¾‘ `%s'"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1217
#, c-format
msgid "Can't chdir to /"
msgstr "無法變更目錄到 /"
-#: elf/ldconfig.c:1259
+#: elf/ldconfig.c:1258
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "ç„¡æ³•é–‹å•Ÿå¿«å–æª”案目錄 %s\n"
@@ -1263,82 +1263,82 @@ msgstr "SHOBJ [PROFDATA]"
msgid "failed to load shared object `%s'"
msgstr "開啟共用物件 `%s' 失敗"
-#: elf/sprof.c:441 elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:441 elf/sprof.c:821 elf/sprof.c:919
#, c-format
msgid "cannot create internal descriptor"
msgstr "無法建立內部敘述項"
-#: elf/sprof.c:553
+#: elf/sprof.c:550
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "釿–°é–‹å•Ÿå…±ç”¨ç‰©ä»¶ %s 失敗"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:557 elf/sprof.c:652
#, c-format
msgid "reading of section headers failed"
msgstr "讀å–å°ç¯€æ¨™é ­æ™‚失敗"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:565 elf/sprof.c:660
#, c-format
msgid "reading of section header string table failed"
msgstr "讀å–å°ç¯€æ¨™é ­å­—串表格時失敗"
-#: elf/sprof.c:594
+#: elf/sprof.c:591
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** 無法讀å–除錯資訊檔案å稱: %m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:612
#, c-format
msgid "cannot determine file name"
msgstr "無法決定檔案å稱"
-#: elf/sprof.c:648
+#: elf/sprof.c:645
#, c-format
msgid "reading of ELF header failed"
msgstr "è®€å– ELF 標頭時失敗"
-#: elf/sprof.c:684
+#: elf/sprof.c:681
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** 檔案 `%s' 被è£å‰ªäº†: 無法åšè©³ç´°çš„分æž\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:711
#, c-format
msgid "failed to load symbol data"
msgstr "載入函å¼ç¬¦è™Ÿè³‡æ–™å¤±æ•—"
-#: elf/sprof.c:779
+#: elf/sprof.c:776
#, c-format
msgid "cannot load profiling data"
msgstr "無法載入測試資料"
-#: elf/sprof.c:788
+#: elf/sprof.c:785
#, c-format
msgid "while stat'ing profiling data file"
msgstr "åœ¨å°æ¸¬è©¦è³‡æ–™æª”案進行統計的時候"
-#: elf/sprof.c:796
+#: elf/sprof.c:793
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "測試資料檔 `%s' 與共用物件 `%s' ä¸ç¬¦åˆ"
-#: elf/sprof.c:807
+#: elf/sprof.c:804
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "測試資料檔案 mmap 失敗"
-#: elf/sprof.c:815
+#: elf/sprof.c:812
#, c-format
msgid "error while closing the profiling data file"
msgstr "正在關閉測試資料檔案時發生錯誤"
-#: elf/sprof.c:898
+#: elf/sprof.c:895
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "`%s' 䏿˜¯ `%s' 中正確的測速評估資料檔"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1076 elf/sprof.c:1134
#, c-format
msgid "cannot allocate symbol data"
msgstr "無法é…置函å¼ç¬¦è™Ÿè³‡æ–™"
@@ -2817,7 +2817,7 @@ msgid "cannot resize archive file"
msgstr "無法改變ä¿å­˜æª”大å°"
#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
-#: locale/programs/locarchive.c:680
+#: locale/programs/locarchive.c:686
#, c-format
msgid "cannot map archive header"
msgstr "無法註記ä¿å­˜æª”表頭"
@@ -2876,64 +2876,64 @@ msgstr "無法統計語å€è³‡æ–™ä¿å­˜æª” \"%s\""
msgid "cannot lock locale archive \"%s\""
msgstr "無法鎖定語å€è³‡æ–™ä¿å­˜æª” \"%s\""
-#: locale/programs/locarchive.c:654
+#: locale/programs/locarchive.c:657
#, c-format
msgid "cannot read archive header"
msgstr "無法讀å–ä¿å­˜æª”表頭資料"
-#: locale/programs/locarchive.c:661
+#: locale/programs/locarchive.c:665
#, c-format
msgid "bad magic value in archive header"
msgstr "å°å­˜æª”標頭的 magic 值無效"
-#: locale/programs/locarchive.c:734
+#: locale/programs/locarchive.c:740
#, c-format
msgid "locale '%s' already exists"
msgstr "語å€è³‡æ–™ `%s' 已經存在"
-#: locale/programs/locarchive.c:1009 locale/programs/locarchive.c:1024
-#: locale/programs/locarchive.c:1036 locale/programs/locarchive.c:1048
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
#: locale/programs/locfile.c:349
#, c-format
msgid "cannot add to locale archive"
msgstr "無法加入語å€è³‡æ–™ä¿å­˜æª”"
-#: locale/programs/locarchive.c:1217
+#: locale/programs/locarchive.c:1223
#, c-format
msgid "locale alias file `%s' not found"
msgstr "找ä¸åˆ°èªžå€è³‡æ–™åˆ¥å檔 `%s'"
-#: locale/programs/locarchive.c:1365
+#: locale/programs/locarchive.c:1371
#, c-format
msgid "Adding %s\n"
msgstr "加入 %s 中\n"
-#: locale/programs/locarchive.c:1371
+#: locale/programs/locarchive.c:1377
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "å–å¾— \"%s\" 的資訊時失敗: %s: 已忽略"
-#: locale/programs/locarchive.c:1377
+#: locale/programs/locarchive.c:1383
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "\"%s\" 並éžç›®éŒ„; 已忽略"
-#: locale/programs/locarchive.c:1384
+#: locale/programs/locarchive.c:1390
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "無法開啟目錄 \"%s\": %s: 已忽略"
-#: locale/programs/locarchive.c:1452
+#: locale/programs/locarchive.c:1458
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "ä¸å®Œæ•´çš„一組語å€è³‡æ–™æª”案存在於 \"%s\" 之中"
-#: locale/programs/locarchive.c:1516
+#: locale/programs/locarchive.c:1522
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "ç„¡æ³•è®€å– \"%s\" 中的所有檔案: 已忽略"
-#: locale/programs/locarchive.c:1586
+#: locale/programs/locarchive.c:1592
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "語å€è³‡æ–™ \"%s\" ä¸åœ¨ä¿å­˜æª”中"
diff --git a/posix/Makefile b/posix/Makefile
index c0e2242..a36e5de 100644
--- a/posix/Makefile
+++ b/posix/Makefile
@@ -304,6 +304,7 @@ tests := \
tst-posix_spawn-setsid \
tst-preadwrite \
tst-preadwrite64 \
+ tst-regcomp-bracket-free \
tst-regcomp-truncated \
tst-regex \
tst-regex2 \
@@ -348,6 +349,7 @@ tests-internal := \
bug-regex5 \
bug-regex20 \
bug-regex33 \
+ tst-libc-message \
# tests-internal
tests-container := \
@@ -391,6 +393,7 @@ endif
tests-static = \
tst-exec-static \
+ tst-libc-message \
tst-spawn-static \
# tests-static
diff --git a/posix/fnmatch_loop.c b/posix/fnmatch_loop.c
index 9ec5e0e..83f8861 100644
--- a/posix/fnmatch_loop.c
+++ b/posix/fnmatch_loop.c
@@ -537,7 +537,7 @@ FCT (const CHAR *pattern, const CHAR *string, const CHAR *string_end,
that it was properly set in the loop
above. */
DIAG_PUSH_NEEDS_COMMENT;
- DIAG_IGNORE_Os_NEEDS_COMMENT (8, "-Wmaybe-uninitialized");
+ DIAG_IGNORE_NEEDS_COMMENT (16, "-Wmaybe-uninitialized");
if (! is_range
# if WIDE_CHAR_VERSION
@@ -560,7 +560,7 @@ FCT (const CHAR *pattern, const CHAR *string, const CHAR *string_end,
above it will be properly set by the loop.
*/
DIAG_PUSH_NEEDS_COMMENT;
- DIAG_IGNORE_Os_NEEDS_COMMENT (8, "-Wmaybe-uninitialized");
+ DIAG_IGNORE_NEEDS_COMMENT (16, "-Wmaybe-uninitialized");
cold = wextra[1 + wextra[0]];
DIAG_POP_NEEDS_COMMENT;
# else
@@ -745,7 +745,7 @@ FCT (const CHAR *pattern, const CHAR *string, const CHAR *string_end,
means that it was properly set in the
loop above. */
DIAG_PUSH_NEEDS_COMMENT;
- DIAG_IGNORE_Os_NEEDS_COMMENT (8, "-Wmaybe-uninitialized");
+ DIAG_IGNORE_NEEDS_COMMENT (16, "-Wmaybe-uninitialized");
cend = wextra[1 + wextra[0]];
DIAG_POP_NEEDS_COMMENT;
# else
@@ -754,7 +754,7 @@ FCT (const CHAR *pattern, const CHAR *string, const CHAR *string_end,
wextra above it will be properly set by
the loop. */
DIAG_PUSH_NEEDS_COMMENT;
- DIAG_IGNORE_Os_NEEDS_COMMENT (8, "-Wmaybe-uninitialized");
+ DIAG_IGNORE_NEEDS_COMMENT (16, "-Wmaybe-uninitialized");
idx += 1 + extra[idx];
DIAG_POP_NEEDS_COMMENT;
/* Adjust for the alignment. */
diff --git a/posix/glob.h b/posix/glob.h
index 6bb0c6f..e5442dd 100644
--- a/posix/glob.h
+++ b/posix/glob.h
@@ -195,7 +195,8 @@ extern void globfree64 (glob64_t *__pglob) __THROW;
This function is not part of the interface specified by POSIX.2
but several programs want to use it. */
-extern int glob_pattern_p (const char *__pattern, int __quote) __THROW;
+extern int glob_pattern_p (const char *__pattern, int __quote) __THROW
+ __nonnull ((1));
#endif
__END_DECLS
diff --git a/posix/regcomp.c b/posix/regcomp.c
index 69675d8..f7278bb 100644
--- a/posix/regcomp.c
+++ b/posix/regcomp.c
@@ -3301,8 +3301,11 @@ parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token,
#ifdef RE_ENABLE_I18N
mbcset, &coll_sym_alloc,
#endif /* RE_ENABLE_I18N */
- start_elem.opr.name,
- nrules, table_size, symb_table, extra);
+ start_elem.opr.name
+#ifdef _LIBC
+ , nrules, table_size, symb_table, extra
+#endif
+ );
if (__glibc_unlikely (*err != REG_NOERROR))
goto parse_bracket_exp_free_return;
break;
@@ -3384,6 +3387,7 @@ parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token,
{
#ifdef RE_ENABLE_I18N
free_charset (mbcset);
+ mbcset = NULL;
#endif
/* Build a tree for simple bracket. */
br_token.type = SIMPLE_BRACKET;
@@ -3399,7 +3403,8 @@ parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token,
parse_bracket_exp_free_return:
re_free (sbcset);
#ifdef RE_ENABLE_I18N
- free_charset (mbcset);
+ if (__glibc_likely (mbcset != NULL))
+ free_charset (mbcset);
#endif /* RE_ENABLE_I18N */
return NULL;
}
diff --git a/posix/tst-libc-message.c b/posix/tst-libc-message.c
new file mode 100644
index 0000000..b85195e
--- /dev/null
+++ b/posix/tst-libc-message.c
@@ -0,0 +1,48 @@
+/* Internal test to verify __libc_fatal.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <signal.h>
+#include <stdio.h>
+
+#include <support/check.h>
+#include <support/capture_subprocess.h>
+
+static _Noreturn void
+run_libc_message (void *closure)
+{
+ /* We only support 4 arguments. Call with 5 to trigger failure. */
+ __libc_message_impl ("%s %s %s %s %s\n", "1", "2", "3", "4", "5");
+ __builtin_unreachable ();
+}
+
+static int
+do_test (void)
+{
+ struct support_capture_subprocess result
+ = support_capture_subprocess (run_libc_message, NULL);
+ support_capture_subprocess_check (&result, "libc_message", -SIGABRT,
+ sc_allow_stderr);
+
+ TEST_COMPARE_STRING (result.err.buffer, IOVEC_MAX_ERR_MSG);
+
+ support_capture_subprocess_free (&result);
+
+ return 0;
+}
+
+#include <support/test-driver.c>
diff --git a/posix/tst-regcomp-bracket-free.c b/posix/tst-regcomp-bracket-free.c
new file mode 100644
index 0000000..3c091d8
--- /dev/null
+++ b/posix/tst-regcomp-bracket-free.c
@@ -0,0 +1,176 @@
+/* Test regcomp bracket parsing with injected allocation failures (bug 33185).
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+/* This test invokes regcomp multiple times, failing one memory
+ allocation in each call. The function call should fail with
+ REG_ESPACE (or succeed if it can recover from the allocation
+ failure). Previously, there was double-free bug. */
+
+#include <errno.h>
+#include <regex.h>
+#include <stdio.h>
+#include <string.h>
+#include <support/check.h>
+#include <support/namespace.h>
+#include <support/support.h>
+
+/* Data structure allocated via MAP_SHARED, so that writes from the
+ subprocess are visible. */
+struct shared_data
+{
+ /* Number of tracked allocations performed so far. */
+ volatile unsigned int allocation_count;
+
+ /* If this number is reached, one allocation fails. */
+ volatile unsigned int failing_allocation;
+
+ /* The subprocess stores the expected name here. */
+ char name[100];
+};
+
+/* Allocation count in shared mapping. */
+static struct shared_data *shared;
+
+/* Returns true if a failure should be injected for this allocation. */
+static bool
+fail_this_allocation (void)
+{
+ if (shared != NULL)
+ {
+ unsigned int count = shared->allocation_count;
+ shared->allocation_count = count + 1;
+ return count == shared->failing_allocation;
+ }
+ else
+ return false;
+}
+
+/* Failure-injecting wrappers for allocation functions used by glibc. */
+
+void *
+malloc (size_t size)
+{
+ if (fail_this_allocation ())
+ {
+ errno = ENOMEM;
+ return NULL;
+ }
+ extern __typeof (malloc) __libc_malloc;
+ return __libc_malloc (size);
+}
+
+void *
+calloc (size_t a, size_t b)
+{
+ if (fail_this_allocation ())
+ {
+ errno = ENOMEM;
+ return NULL;
+ }
+ extern __typeof (calloc) __libc_calloc;
+ return __libc_calloc (a, b);
+}
+
+void *
+realloc (void *ptr, size_t size)
+{
+ if (fail_this_allocation ())
+ {
+ errno = ENOMEM;
+ return NULL;
+ }
+ extern __typeof (realloc) __libc_realloc;
+ return __libc_realloc (ptr, size);
+}
+
+/* No-op subprocess to verify that support_isolate_in_subprocess does
+ not perform any heap allocations. */
+static void
+no_op (void *ignored)
+{
+}
+
+/* Perform a regcomp call in a subprocess. Used to count its
+ allocations. */
+static void
+initialize (void *regexp1)
+{
+ const char *regexp = regexp1;
+
+ shared->allocation_count = 0;
+
+ regex_t reg;
+ TEST_COMPARE (regcomp (&reg, regexp, 0), 0);
+}
+
+/* Perform regcomp in a subprocess with fault injection. */
+static void
+test_in_subprocess (void *regexp1)
+{
+ const char *regexp = regexp1;
+ unsigned int inject_at = shared->failing_allocation;
+
+ regex_t reg;
+ int ret = regcomp (&reg, regexp, 0);
+
+ if (ret != 0)
+ {
+ TEST_COMPARE (ret, REG_ESPACE);
+ printf ("info: allocation %u failure results in return value %d,"
+ " error %s (%d)\n",
+ inject_at, ret, strerrorname_np (errno), errno);
+ }
+}
+
+static int
+do_test (void)
+{
+ char regexp[] = "[:alpha:]";
+
+ shared = support_shared_allocate (sizeof (*shared));
+
+ /* Disable fault injection. */
+ shared->failing_allocation = ~0U;
+
+ support_isolate_in_subprocess (no_op, NULL);
+ TEST_COMPARE (shared->allocation_count, 0);
+
+ support_isolate_in_subprocess (initialize, regexp);
+
+ /* The number of allocations in the successful case, plus some
+ slack. Once the number of expected allocations is exceeded,
+ injecting further failures does not make a difference. */
+ unsigned int maximum_allocation_count = shared->allocation_count;
+ printf ("info: successful call performs %u allocations\n",
+ maximum_allocation_count);
+ maximum_allocation_count += 10;
+
+ for (unsigned int inject_at = 0; inject_at <= maximum_allocation_count;
+ ++inject_at)
+ {
+ shared->allocation_count = 0;
+ shared->failing_allocation = inject_at;
+ support_isolate_in_subprocess (test_in_subprocess, regexp);
+ }
+
+ support_shared_free (shared);
+
+ return 0;
+}
+
+#include <support/test-driver.c>
diff --git a/posix/tst-regex.input b/posix/tst-regex.input
index 1de30b3..38b8db6 100644
--- a/posix/tst-regex.input
+++ b/posix/tst-regex.input
@@ -8423,11 +8423,6 @@
* sysdeps/libm-ieee754/s_exp2f.c (__exp2f_deltatable): Renamed
from __exp2_deltatable.
-1998-02-26 Ulrich Drepper <drepper@cygnus.com>
-
- * nis/ypclnt.c (yp_master): Check result of strdup.
- Patch by Thorsten Kukuk.
-
1998-02-26 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
* nis/ypclnt.c: Give clnt handle after error checking free, change
@@ -11089,13 +11084,6 @@
inline functions by feature tests to avoid warning about missing
prototype declarations.
-1997-12-09 15:08 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
-
- * nis/nss_compat/compat-grp.c: Reset the blacklist correct, fix
- return code for non existent +name entries.
- * nis/nss_compat/compat-pwd.c: Likewise.
- * nis/nss_compat/compat-spwd.c: Likewise.
-
1997-12-10 13:52 Philip Blundell <pb@nexus.co.uk>
* sysdeps/standalone/arm/bits/errno.h (EAGAIN): Added.
diff --git a/posix/tst-truncate-common.c b/posix/tst-truncate-common.c
index 19c96b7..20ce168 100644
--- a/posix/tst-truncate-common.c
+++ b/posix/tst-truncate-common.c
@@ -36,7 +36,7 @@ static int temp_fd;
static void
do_prepare (void)
{
- temp_fd = create_temp_file ("tst-trucate.", &temp_filename);
+ temp_fd = create_temp_file ("tst-truncate.", &temp_filename);
if (temp_fd == -1)
{
printf ("cannot create temporary file: %m\n");
diff --git a/resolv/Makefile b/resolv/Makefile
index a49fac7..8fa3398 100644
--- a/resolv/Makefile
+++ b/resolv/Makefile
@@ -140,6 +140,7 @@ tests += \
tst-resolv-ai_idn-latin1 \
tst-resolv-ai_idn-nolibidn2 \
tst-resolv-canonname \
+ tst-resolv-getaddrinfo-fqdn \
tst-resolv-trustad \
# Needs resolv_context.
@@ -316,6 +317,7 @@ $(objpfx)tst-resolv-threads: $(objpfx)libresolv.so $(shared-thread-library)
$(objpfx)tst-resolv-txnid-collision: $(objpfx)libresolv.a \
$(static-thread-library)
$(objpfx)tst-resolv-canonname: $(objpfx)libresolv.so $(shared-thread-library)
+$(objpfx)tst-resolv-getaddrinfo-fqdn: $(objpfx)libresolv.so $(shared-thread-library)
$(objpfx)tst-resolv-trustad: $(objpfx)libresolv.so $(shared-thread-library)
$(objpfx)tst-ns_name: $(objpfx)libresolv.so
diff --git a/resolv/inet_ntop.c b/resolv/inet_ntop.c
index acf5f3cb..0fdef32 100644
--- a/resolv/inet_ntop.c
+++ b/resolv/inet_ntop.c
@@ -1,186 +1,210 @@
-/*
- * Copyright (c) 1996-1999 by Internet Software Consortium.
- *
- * Permission to use, copy, modify, and distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM DISCLAIMS
- * ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE
- * CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
- * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
- * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
- * ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
- * SOFTWARE.
- */
-
-#include <sys/param.h>
-#include <sys/types.h>
-#include <sys/socket.h>
-
-#include <netinet/in.h>
+/* Convert IPv4/IPv6 addresses from binary to text form.
+ Copyright (C) 1996-2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
#include <arpa/inet.h>
#include <arpa/nameser.h>
-
#include <errno.h>
-#include <stdio.h>
#include <string.h>
+#include <_itoa.h>
-#ifdef SPRINTF_CHAR
-# define SPRINTF(x) strlen(sprintf/**/x)
-#else
-# define SPRINTF(x) ((size_t)sprintf x)
-#endif
-
-/*
- * WARNING: Don't even consider trying to compile this on a system where
- * sizeof(int) < 4. sizeof(int) > 4 is fine; all the world's not a VAX.
- */
-
-static const char *inet_ntop4 (const u_char *src, char *dst, socklen_t size);
-static const char *inet_ntop6 (const u_char *src, char *dst, socklen_t size);
-
-/* char *
- * __inet_ntop(af, src, dst, size)
- * convert a network format address to presentation format.
- * return:
- * pointer to presentation format address (`dst'), or NULL (see errno).
- * author:
- * Paul Vixie, 1996.
- */
-const char *
-__inet_ntop (int af, const void *src, char *dst, socklen_t size)
+static inline char *
+put_uint8 (uint8_t word, char *tp)
{
- switch (af) {
- case AF_INET:
- return (inet_ntop4(src, dst, size));
- case AF_INET6:
- return (inet_ntop6(src, dst, size));
- default:
- __set_errno (EAFNOSUPPORT);
- return (NULL);
+ int s = 1;
+ if (word >= 10)
+ {
+ if (word >= 100)
+ {
+ tp[2] = '0' + word % 10;
+ word /= 10;
+ s += 1;
}
- /* NOTREACHED */
+
+ tp[1] = '0' + word % 10;
+ word /= 10;
+ s += 1;
+ }
+ *tp = '0' + word;
+ return tp + s;
}
-libc_hidden_def (__inet_ntop)
-weak_alias (__inet_ntop, inet_ntop)
-/* const char *
- * inet_ntop4(src, dst, size)
- * format an IPv4 address
- * return:
- * `dst' (as a const)
- * notes:
- * (1) uses no statics
- * (2) takes a u_char* not an in_addr as input
- * author:
- * Paul Vixie, 1996.
- */
-static const char *
-inet_ntop4 (const u_char *src, char *dst, socklen_t size)
+static inline char *
+put_uint16 (uint16_t word, char *tp)
{
- static const char fmt[] = "%u.%u.%u.%u";
- char tmp[sizeof "255.255.255.255"];
+ if (word >= 0x1000)
+ *tp++ = _itoa_lower_digits[(word >> 12) & 0xf];
+ if (word >= 0x100)
+ *tp++ = _itoa_lower_digits[(word >> 8) & 0xf];
+ if (word >= 0x10)
+ *tp++ = _itoa_lower_digits[(word >> 4) & 0xf];
+ *tp++ = _itoa_lower_digits[word & 0xf];
+ return tp;
+}
- if (SPRINTF((tmp, fmt, src[0], src[1], src[2], src[3])) >= size) {
- __set_errno (ENOSPC);
- return (NULL);
- }
- return strcpy(dst, tmp);
+static __always_inline char *
+inet_ntop4_format (const uint8_t *src, char *dst)
+{
+ dst = put_uint8 (src[0], dst);
+ *(dst++) = '.';
+ dst = put_uint8 (src[1], dst);
+ *(dst++) = '.';
+ dst = put_uint8 (src[2], dst);
+ *(dst++) = '.';
+ dst = put_uint8 (src[3], dst);
+ *dst++ = '\0';
+ return dst;
}
-/* const char *
- * inet_ntop6(src, dst, size)
- * convert IPv6 binary address into presentation (printable) format
- * author:
- * Paul Vixie, 1996.
- */
-static const char *
-inet_ntop6 (const u_char *src, char *dst, socklen_t size)
+static __always_inline const char *
+inet_ntop4 (const uint8_t *src, char *dst, socklen_t size)
+{
+ if (size >= INET_ADDRSTRLEN)
+ {
+ inet_ntop4_format (src, dst);
+ return dst;
+ }
+
+ char tmp[INET_ADDRSTRLEN];
+ char *tp = inet_ntop4_format (src, tmp);
+ socklen_t tmp_s = tp - tmp;
+ if (tmp_s > size)
+ {
+ __set_errno (ENOSPC);
+ return NULL;
+ }
+ return memcpy (dst, tmp, tmp_s);
+}
+
+struct best_t
+{
+ int base;
+ int len;
+};
+
+static inline uint16_t
+in6_addr_addr16 (const struct in6_addr *src, int idx)
{
- /*
- * Note that int32_t and int16_t need only be "at least" large enough
- * to contain a value of the specified size. On some systems, like
- * Crays, there is no such thing as an integer variable with 16 bits.
- * Keep this in mind if you think this function should have been coded
- * to use pointer overlays. All the world's not a VAX.
- */
- char tmp[sizeof "ffff:ffff:ffff:ffff:ffff:ffff:255.255.255.255"], *tp;
- struct { int base, len; } best, cur;
- u_int words[NS_IN6ADDRSZ / NS_INT16SZ];
- int i;
-
- /*
- * Preprocess:
- * Copy the input (bytewise) array into a wordwise array.
- * Find the longest run of 0x00's in src[] for :: shorthanding.
- */
- memset(words, '\0', sizeof words);
- for (i = 0; i < NS_IN6ADDRSZ; i += 2)
- words[i / 2] = (src[i] << 8) | src[i + 1];
- best.base = -1;
- cur.base = -1;
- best.len = 0;
- cur.len = 0;
- for (i = 0; i < (NS_IN6ADDRSZ / NS_INT16SZ); i++) {
- if (words[i] == 0) {
- if (cur.base == -1)
- cur.base = i, cur.len = 1;
- else
- cur.len++;
- } else {
- if (cur.base != -1) {
- if (best.base == -1 || cur.len > best.len)
- best = cur;
- cur.base = -1;
- }
- }
+ const struct { uint16_t x; } __attribute__((__packed__)) *pptr =
+ (typeof(pptr))(&src->s6_addr16[idx]);
+ return ntohs (pptr->x);
+}
+
+static __always_inline char *
+inet_ntop6_format (const struct in6_addr *src, struct best_t best, char *dst)
+{
+ char *tp = dst;
+ for (int i = 0; i < (NS_IN6ADDRSZ / NS_INT16SZ); i++)
+ {
+ /* Are we inside the best run of 0x00's? */
+ if (best.base != -1 && i >= best.base && i < (best.base + best.len))
+ {
+ if (i == best.base)
+ *tp++ = ':';
+ continue;
}
- if (cur.base != -1) {
- if (best.base == -1 || cur.len > best.len)
- best = cur;
+ /* Are we following an initial run of 0x00s or any real hex? */
+ if (i != 0)
+ *tp++ = ':';
+ /* Is this address an encapsulated IPv4? */
+ if (i == 6 && best.base == 0
+ && (best.len == 6 || (best.len == 5
+ && in6_addr_addr16 (src, 5) == 0xffff)))
+ {
+ if (!inet_ntop4 (src->s6_addr + 12, tp,
+ INET6_ADDRSTRLEN - (tp - dst)))
+ return NULL;
+ tp += strlen (tp);
+ break;
}
- if (best.base != -1 && best.len < 2)
- best.base = -1;
-
- /*
- * Format the result.
- */
- tp = tmp;
- for (i = 0; i < (NS_IN6ADDRSZ / NS_INT16SZ); i++) {
- /* Are we inside the best run of 0x00's? */
- if (best.base != -1 && i >= best.base &&
- i < (best.base + best.len)) {
- if (i == best.base)
- *tp++ = ':';
- continue;
- }
- /* Are we following an initial run of 0x00s or any real hex? */
- if (i != 0)
- *tp++ = ':';
- /* Is this address an encapsulated IPv4? */
- if (i == 6 && best.base == 0 &&
- (best.len == 6 || (best.len == 5 && words[5] == 0xffff))) {
- if (!inet_ntop4(src+12, tp, sizeof tmp - (tp - tmp)))
- return (NULL);
- tp += strlen(tp);
- break;
- }
- tp += SPRINTF((tp, "%x", words[i]));
+ tp = put_uint16 (in6_addr_addr16 (src, i), tp);
+ }
+ /* Was it a trailing run of 0x00's? */
+ if (best.base != -1 && (best.base + best.len) == (NS_IN6ADDRSZ / NS_INT16SZ))
+ *tp++ = ':';
+ *tp++ = '\0';
+
+ return tp;
+}
+
+static inline const char *
+inet_ntop6 (const struct in6_addr *src, char *dst, socklen_t size)
+{
+ struct best_t best = { -1, 0 }, cur = { -1, 0 };
+
+ /* ind the longest run of 0x00's in src[] for :: shorthanding. */
+ for (int i = 0; i < (NS_IN6ADDRSZ / NS_INT16SZ); i++)
+ {
+ if (in6_addr_addr16 (src, i) == 0)
+ {
+ if (cur.base == -1)
+ cur.base = i, cur.len = 1;
+ else
+ cur.len++;
}
- /* Was it a trailing run of 0x00's? */
- if (best.base != -1 && (best.base + best.len) ==
- (NS_IN6ADDRSZ / NS_INT16SZ))
- *tp++ = ':';
- *tp++ = '\0';
-
- /*
- * Check for overflow, copy, and we're done.
- */
- if ((socklen_t)(tp - tmp) > size) {
- __set_errno (ENOSPC);
- return (NULL);
+ else
+ {
+ if (cur.base != -1)
+ {
+ if (best.base == -1 || cur.len > best.len)
+ best = cur;
+ cur.base = -1;
+ }
}
- return strcpy(dst, tmp);
+ }
+ if (cur.base != -1)
+ {
+ if (best.base == -1 || cur.len > best.len)
+ best = cur;
+ }
+ if (best.base != -1 && best.len < 2)
+ best.base = -1;
+
+ if (size >= INET6_ADDRSTRLEN)
+ {
+ inet_ntop6_format (src, best, dst);
+ return dst;
+ }
+
+ char tmp[INET6_ADDRSTRLEN];
+ char *tp = inet_ntop6_format (src, best, tmp);
+
+ socklen_t tmp_s = tp - tmp;
+ if (tmp_s > size)
+ {
+ __set_errno (ENOSPC);
+ return (NULL);
+ }
+ return memcpy (dst, tmp, tmp_s);
}
+
+const char *
+__inet_ntop (int af, const void *src, char *dst, socklen_t size)
+{
+ switch (af)
+ {
+ case AF_INET:
+ return (inet_ntop4 (src, dst, size));
+ case AF_INET6:
+ return (inet_ntop6 (src, dst, size));
+ default:
+ __set_errno (EAFNOSUPPORT);
+ return (NULL);
+ }
+}
+libc_hidden_def (__inet_ntop)
+weak_alias (__inet_ntop, inet_ntop)
diff --git a/resolv/tst-resolv-getaddrinfo-fqdn.c b/resolv/tst-resolv-getaddrinfo-fqdn.c
new file mode 100644
index 0000000..75bfe7e
--- /dev/null
+++ b/resolv/tst-resolv-getaddrinfo-fqdn.c
@@ -0,0 +1,147 @@
+/* Test for BZ #15218. Verify that getaddrinfo returns FQDN in
+ ai_canonname, when AI_CANONNAME is requested and search domain apply.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <resolv.h>
+#include <stdlib.h>
+#include <string.h>
+#include <support/check.h>
+#include <support/check_nss.h>
+#include <support/resolv_test.h>
+#include <support/support.h>
+
+static void
+response (const struct resolv_response_context *ctx,
+ struct resolv_response_builder *b,
+ const char *qname, uint16_t qclass, uint16_t qtype)
+{
+ if (strcmp (qname, "foo.site.example") == 0
+ || strcmp (qname, "bar.foo.site.example") == 0
+ || strcmp (qname, "site.example") == 0)
+ {
+ struct resolv_response_flags flags = { };
+ resolv_response_init (b, flags);
+ resolv_response_add_question (b, qname, qclass, qtype);
+ resolv_response_section (b, ns_s_an);
+ if (qtype == T_A)
+ {
+ char addr_ipv4[4] = { 127, 126, 125, 124 };
+ resolv_response_open_record (b, qname, qclass, T_A, 0x12345678);
+ resolv_response_add_data (b, addr_ipv4, sizeof (addr_ipv4));
+ resolv_response_close_record (b);
+ }
+ else if (qtype == T_AAAA)
+ {
+ char addr_ipv6[16] =
+ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 };
+ resolv_response_open_record (b, qname, qclass, T_AAAA, 0x12345678);
+ resolv_response_add_data (b, addr_ipv6, sizeof (addr_ipv6));
+ resolv_response_close_record (b);
+ }
+ else
+ FAIL_EXIT1 ("qtype must be one of A, AAAA");
+ }
+ else
+ {
+ struct resolv_response_flags flags = {.rcode = ns_r_nxdomain, };
+ resolv_response_init (b, flags);
+ resolv_response_add_question (b, qname, qclass, qtype);
+ }
+}
+
+void
+query_host (const char *host_name, const char *expected_name)
+{
+ int family[] = { AF_INET, AF_INET6, AF_UNSPEC };
+ const char *family_names[] = { "AF_INET", "AF_INET6", "AF_UNSPEC" };
+
+ for (int i = 0; i < 3; i++)
+ {
+ struct addrinfo hints = {
+ .ai_socktype = 0,
+ .ai_protocol = 0,
+ .ai_family = family[i],
+ .ai_flags = AI_CANONNAME,
+ };
+ struct addrinfo *result, *current;
+ int res = getaddrinfo (host_name, NULL, &hints, &result);
+ if (res != 0)
+ FAIL_EXIT1 ("getaddrinfo (%s, %s): %s\n", host_name, family_names[i],
+ gai_strerror (res));
+ else
+ {
+ int count = 0;
+ for (current = result;
+ current != NULL && current->ai_canonname != NULL;
+ current = current->ai_next)
+ {
+ TEST_COMPARE_STRING (current->ai_canonname, expected_name);
+ count++;
+ }
+ freeaddrinfo (result);
+ if (count > 1)
+ FAIL_EXIT1 ("Expected exactly one canonname, but got %d\n", count);
+ }
+ }
+}
+
+/* test with site.example domain. */
+void
+test_search_with_site_example_domain (void)
+{
+ struct resolv_test *aux = resolv_test_start
+ ((struct resolv_redirect_config)
+ {
+ .response_callback = response,
+ .search = { "site.example" },
+ });
+
+ query_host ("foo", "foo.site.example");
+ query_host ("bar.foo", "bar.foo.site.example");
+
+ resolv_test_end (aux);
+}
+
+/* test with example domain. */
+void
+test_search_with_example_domain (void)
+{
+ struct resolv_test *aux = resolv_test_start
+ ((struct resolv_redirect_config)
+ {
+ .response_callback = response,
+ .search = { "example" },
+ });
+
+ query_host ("foo.site", "foo.site.example");
+ query_host ("bar.foo.site", "bar.foo.site.example");
+ query_host ("site", "site.example");
+
+ resolv_test_end (aux);
+}
+
+static int
+do_test (void)
+{
+ test_search_with_site_example_domain ();
+ test_search_with_example_domain ();
+
+ return 0;
+}
+
+#include <support/test-driver.c>
diff --git a/resource/Makefile b/resource/Makefile
index 44321cb..9b49981 100644
--- a/resource/Makefile
+++ b/resource/Makefile
@@ -25,7 +25,11 @@ headers := sys/resource.h bits/resource.h sys/vlimit.h \
routines := getrlimit setrlimit getrlimit64 setrlimit64 getrusage ulimit \
vlimit vtimes getpriority setpriority nice
-tests = tst-getrlimit bug-ulimit1
+tests := \
+ bug-ulimit1 \
+ tst-getrlimit \
+# tests
+
include ../Rules
diff --git a/scripts/build-many-glibcs.py b/scripts/build-many-glibcs.py
index 28258e3..315693e 100755
--- a/scripts/build-many-glibcs.py
+++ b/scripts/build-many-glibcs.py
@@ -742,7 +742,13 @@ class Context(object):
logsdir = os.path.join(self.logsdir, 'host-libraries')
self.remove_recreate_dirs(installdir, builddir, logsdir)
cmdlist = CommandList('host-libraries', self.keep)
- self.build_host_library(cmdlist, 'gmp')
+ # This CFLAGS setting works around GMP 6.3.0's configure
+ # script being incompatible with compilers defaulting to C23
+ # and should be removed when this script is updated to use a
+ # release of GMP from after that configure test was fixed in
+ # Jan 2025.
+ self.build_host_library(cmdlist, 'gmp',
+ ['CFLAGS=-Wall -O2 -std=gnu17'])
self.build_host_library(cmdlist, 'mpfr',
['--with-gmp=%s' % installdir])
self.build_host_library(cmdlist, 'mpc',
@@ -827,11 +833,11 @@ class Context(object):
def checkout(self, versions):
"""Check out the desired component versions."""
- default_versions = {'binutils': 'vcs-2.44',
- 'gcc': 'vcs-14',
+ default_versions = {'binutils': 'vcs-2.45',
+ 'gcc': 'vcs-15',
'glibc': 'vcs-mainline',
'gmp': '6.3.0',
- 'linux': '6.14',
+ 'linux': '6.16',
'mpc': '1.3.1',
'mpfr': '4.2.2',
'mig': 'vcs-mainline',
diff --git a/scripts/pylintrc b/scripts/pylintrc
index d772cb0..ac635c3 100644
--- a/scripts/pylintrc
+++ b/scripts/pylintrc
@@ -10,10 +10,6 @@
# Profiled execution.
profile=no
-# Add files or directories to the blacklist. They should be base names, not
-# paths.
-ignore=CVS
-
# Pickle collected data for later comparisons.
persistent=yes
diff --git a/stdio-common/Makefile b/stdio-common/Makefile
index 3709222..64b3575 100644
--- a/stdio-common/Makefile
+++ b/stdio-common/Makefile
@@ -262,6 +262,7 @@ tests := \
tst-bz11319-fortify2 \
tst-cookie \
tst-dprintf-length \
+ tst-fclose-devzero \
tst-fclose-offset \
tst-fdopen \
tst-fdopen2 \
diff --git a/stdio-common/printf-parsemb.c b/stdio-common/printf-parsemb.c
index aad697a..a7ba52a 100644
--- a/stdio-common/printf-parsemb.c
+++ b/stdio-common/printf-parsemb.c
@@ -17,6 +17,7 @@
<https://www.gnu.org/licenses/>. */
#include <ctype.h>
+#include <errno.h>
#include <limits.h>
#include <stdlib.h>
#include <string.h>
diff --git a/stdio-common/printf_fp.c b/stdio-common/printf_fp.c
index 5b46ddc..0039e1b 100644
--- a/stdio-common/printf_fp.c
+++ b/stdio-common/printf_fp.c
@@ -29,7 +29,6 @@
#include <gmp.h>
#include <ieee754.h>
#include <stdlib/gmp-impl.h>
-#include <stdlib/longlong.h>
#include <stdlib/fpioconst.h>
#include <locale/localeinfo.h>
#include <limits.h>
@@ -40,6 +39,7 @@
#include <stdlib.h>
#include <wchar.h>
#include <stdbool.h>
+#include <stdbit.h>
#include <rounding-mode.h>
#include <printf_buffer.h>
#include <printf_buffer_to_file.h>
@@ -386,7 +386,7 @@ __printf_fp_buffer_1 (struct __printf_buffer *buf, locale_t loc,
{
int cnt;
MPN_ASSIGN (p.scale, p.tmp);
- count_leading_zeros (cnt, p.scale[p.scalesize - 1]);
+ cnt = stdc_leading_zeros (p.scale[p.scalesize - 1]);
scaleexpo = (p.scalesize - 2) * BITS_PER_MP_LIMB - cnt - 1;
exp10 |= 1 << explog;
}
@@ -408,7 +408,7 @@ __printf_fp_buffer_1 (struct __printf_buffer *buf, locale_t loc,
;
/* Determine number of bits the scaling factor is misplaced. */
- count_leading_zeros (cnt_h, p.scale[p.scalesize - 1]);
+ cnt_h = stdc_leading_zeros (p.scale[p.scalesize - 1]);
if (cnt_h == 0)
{
@@ -426,17 +426,17 @@ __printf_fp_buffer_1 (struct __printf_buffer *buf, locale_t loc,
{
if (p.scale[i] != 0)
{
- count_trailing_zeros (cnt_l, p.scale[i]);
+ cnt_l = stdc_trailing_zeros (p.scale[i]);
if (p.frac[i] != 0)
{
int cnt_l2;
- count_trailing_zeros (cnt_l2, p.frac[i]);
+ cnt_l2 = stdc_trailing_zeros (p.frac[i]);
if (cnt_l2 < cnt_l)
cnt_l = cnt_l2;
}
}
else
- count_trailing_zeros (cnt_l, p.frac[i]);
+ cnt_l = stdc_trailing_zeros (p.frac[i]);
/* Now shift the numbers to their optimal position. */
if (i == 0 && BITS_PER_MP_LIMB - cnt_h > cnt_l)
@@ -528,7 +528,7 @@ __printf_fp_buffer_1 (struct __printf_buffer *buf, locale_t loc,
if (cy == 0)
--p.tmpsize;
- count_leading_zeros (cnt_h, p.tmp[p.tmpsize - 1]);
+ cnt_h = stdc_leading_zeros (p.tmp[p.tmpsize - 1]);
incr = (p.tmpsize - p.fracsize) * BITS_PER_MP_LIMB
+ BITS_PER_MP_LIMB - 1 - cnt_h;
@@ -584,7 +584,7 @@ __printf_fp_buffer_1 (struct __printf_buffer *buf, locale_t loc,
}
else
{
- count_trailing_zeros (cnt_l, p.tmp[i]);
+ cnt_l = stdc_trailing_zeros (p.tmp[i]);
/* Now shift the numbers to their optimal position. */
if (i == 0 && BITS_PER_MP_LIMB - 1 - cnt_h > cnt_l)
@@ -630,7 +630,7 @@ __printf_fp_buffer_1 (struct __printf_buffer *buf, locale_t loc,
p.tmpsize = p.fracsize;
assert (cy == 0 || p.tmp[p.tmpsize - 1] < 20);
- count_trailing_zeros (cnt_l, p.tmp[0]);
+ cnt_l = stdc_trailing_zeros (p.tmp[0]);
if (cnt_l < MIN (4, p.exponent))
{
cy = __mpn_lshift (p.frac, p.tmp, p.tmpsize,
diff --git a/stdio-common/stdio_ext.h b/stdio-common/stdio_ext.h
index 3a9a981..397b37f 100644
--- a/stdio-common/stdio_ext.h
+++ b/stdio-common/stdio_ext.h
@@ -43,43 +43,43 @@ __BEGIN_DECLS
/* Return the size of the buffer of FP in bytes currently in use by
the given stream. */
-extern size_t __fbufsize (FILE *__fp) __THROW;
+extern size_t __fbufsize (FILE *__fp) __THROW __nonnull ((1));
/* Return non-zero value iff the stream FP is opened readonly, or if the
last operation on the stream was a read operation. */
-extern int __freading (FILE *__fp) __THROW;
+extern int __freading (FILE *__fp) __THROW __nonnull ((1));
/* Return non-zero value iff the stream FP is opened write-only or
append-only, or if the last operation on the stream was a write
operation. */
-extern int __fwriting (FILE *__fp) __THROW;
+extern int __fwriting (FILE *__fp) __THROW __nonnull ((1));
/* Return non-zero value iff stream FP is not opened write-only or
append-only. */
-extern int __freadable (FILE *__fp) __THROW;
+extern int __freadable (FILE *__fp) __THROW __nonnull ((1));
/* Return non-zero value iff stream FP is not opened read-only. */
-extern int __fwritable (FILE *__fp) __THROW;
+extern int __fwritable (FILE *__fp) __THROW __nonnull ((1));
/* Return non-zero value iff the stream FP is line-buffered. */
-extern int __flbf (FILE *__fp) __THROW;
+extern int __flbf (FILE *__fp) __THROW __nonnull ((1));
/* Discard all pending buffered I/O on the stream FP. */
-extern void __fpurge (FILE *__fp) __THROW;
+extern void __fpurge (FILE *__fp) __THROW __nonnull ((1));
/* Return amount of output in bytes pending on a stream FP. */
-extern size_t __fpending (FILE *__fp) __THROW;
+extern size_t __fpending (FILE *__fp) __THROW __nonnull ((1));
/* Flush all line-buffered files. */
extern void _flushlbf (void);
/* Set locking status of stream FP to TYPE. */
-extern int __fsetlocking (FILE *__fp, int __type) __THROW;
+extern int __fsetlocking (FILE *__fp, int __type) __THROW __nonnull ((1));
__END_DECLS
diff --git a/stdio-common/tst-fclose-devzero.c b/stdio-common/tst-fclose-devzero.c
new file mode 100644
index 0000000..1c7b39a
--- /dev/null
+++ b/stdio-common/tst-fclose-devzero.c
@@ -0,0 +1,50 @@
+/* Test that always-zero lseek does not cause fclose failure after fread.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <errno.h>
+#include <stdio.h>
+#include <string.h>
+
+#include <support/check.h>
+#include <support/xstdio.h>
+
+int
+do_test (void)
+{
+ for (int do_ftello = 0; do_ftello < 2; ++do_ftello)
+ {
+ FILE *fp = xfopen ("/dev/zero", "r");
+ char buf[17];
+ memset (buf, 0xcc, sizeof (buf));
+ xfread (buf, 1, sizeof (buf), fp);
+ static const char zeros[sizeof (buf)] = { 0 };
+ TEST_COMPARE_BLOB (buf, sizeof (buf), zeros, sizeof (zeros));
+ if (do_ftello)
+ {
+ errno = 0;
+ TEST_COMPARE (ftello (fp), -1);
+ TEST_COMPARE (errno, ESPIPE);
+ }
+ /* Do not use xfclose because it flushes first. */
+ TEST_COMPARE (fclose (fp), 0);
+ }
+
+ return 0;
+}
+
+#include <support/test-driver.c>
diff --git a/stdio-common/tst-scanf-format-ss.h b/stdio-common/tst-scanf-format-ss.h
index 2fb1ca2..b35e5bc 100644
--- a/stdio-common/tst-scanf-format-ss.h
+++ b/stdio-common/tst-scanf-format-ss.h
@@ -1,4 +1,4 @@
-/* Test feature wrapper for formatted 'scanf' input.
+/* Test feature wrapper for formatted 'sscanf' input.
Copyright (C) 2025 Free Software Foundation, Inc.
This file is part of the GNU C Library.
diff --git a/stdio-common/tst-setvbuf2.c b/stdio-common/tst-setvbuf2.c
index 6cc8335..84d8b43 100644
--- a/stdio-common/tst-setvbuf2.c
+++ b/stdio-common/tst-setvbuf2.c
@@ -240,6 +240,21 @@ typedef struct {
/* It's OK if this is static, we only run one at a time. */
ThreadData thread_data;
+static void
+end_thread (pthread_t *ptid)
+{
+ if (*ptid)
+ {
+ pthread_cancel (*ptid);
+ xpthread_join (*ptid);
+ /* The descriptor was passed in, or the helper thread made
+ sufficient progress and opened the file. */
+ if (thread_data.fd >= 0)
+ xclose (thread_data.fd);
+ *ptid = 0;
+ }
+}
+
static void *
writer_thread_proc (void *closure)
{
@@ -306,7 +321,7 @@ static void
start_writer_thread_n (const char *fname)
{
debug;
- thread_data.fd = 0;
+ thread_data.fd = -1;
thread_data.fname = fname;
writer_thread_tid = xpthread_create (NULL, writer_thread_proc,
(void *)&thread_data);
@@ -316,13 +331,7 @@ static void
end_writer_thread (void)
{
debug;
- if (writer_thread_tid)
- {
- pthread_cancel (writer_thread_tid);
- xpthread_join (writer_thread_tid);
- xclose (thread_data.fd);
- writer_thread_tid = 0;
- }
+ end_thread (&writer_thread_tid);
}
static void
@@ -339,7 +348,7 @@ static void
start_reader_thread_n (const char *fname)
{
debug;
- thread_data.fd = 0;
+ thread_data.fd = -1;
thread_data.fname = fname;
reader_thread_tid = xpthread_create (NULL, reader_thread_proc,
(void *)&thread_data);
@@ -349,13 +358,7 @@ static void
end_reader_thread (void)
{
debug;
- if (reader_thread_tid)
- {
- pthread_cancel (reader_thread_tid);
- xpthread_join (reader_thread_tid);
- xclose (thread_data.fd);
- reader_thread_tid = 0;
- }
+ end_thread (&reader_thread_tid);
}
/*------------------------------------------------------------*/
@@ -852,7 +855,7 @@ do_second_part (FILE *fp,
}
- fclose (fp);
+ xfclose (fp);
return rv;
}
@@ -939,7 +942,7 @@ recurse (FILE *fp,
break;
default: /* parent */
- fclose (fp);
+ xfclose (fp);
xwaitpid (pid, &status, 0);
if (WIFEXITED (status)
&& WEXITSTATUS (status) == 0)
diff --git a/stdio-common/vfscanf-internal.c b/stdio-common/vfscanf-internal.c
index b965c7b..86ae501 100644
--- a/stdio-common/vfscanf-internal.c
+++ b/stdio-common/vfscanf-internal.c
@@ -1737,7 +1737,7 @@ __vfscanf_internal (FILE *s, const char *format, va_list argptr,
#endif
}
- if (n < 10)
+ if (n < num_digits_len)
{
/* Found it. */
from_level = level;
diff --git a/stdlib/Makefile b/stdlib/Makefile
index 513445b..25f777e 100644
--- a/stdlib/Makefile
+++ b/stdlib/Makefile
@@ -211,6 +211,9 @@ routines := \
strtoull_l \
swapcontext \
system \
+ uabs \
+ ulabs \
+ ullabs \
wcstombs \
wctomb \
xpg_basename \
@@ -363,6 +366,10 @@ tests := \
tst-swapcontext2 \
tst-thread-quick_exit \
tst-tininess \
+ tst-uabs \
+ tst-uimaxabs \
+ tst-ulabs \
+ tst-ullabs \
tst-unsetenv1 \
tst-width \
tst-width-stdint \
@@ -412,6 +419,11 @@ CFLAGS-tst-abs.c += -fno-builtin
CFLAGS-tst-labs.c += -fno-builtin
CFLAGS-tst-llabs.c += -fno-builtin
+CFLAGS-tst-uabs.c += -fno-builtin
+CFLAGS-tst-uimaxabs.c += -fno-builtin
+CFLAGS-tst-ulabs.c += -fno-builtin
+CFLAGS-tst-ullabs.c += -fno-builtin
+
CFLAGS-tst-stdbit-Wconversion.c += -Wconversion -Werror
CFLAGS-tst-stdc_trailing_zeros.c += -fno-builtin
CFLAGS-tst-stdc_trailing_ones.c += -fno-builtin
@@ -654,7 +666,6 @@ $(objpfx)tst-setcontext3.out: tst-setcontext3.sh $(objpfx)tst-setcontext3
$(common-objpfx)stdlib/; \
$(evaluate-test)
-$(objpfx)tst-qsort5: $(libm)
$(objpfx)tst-concurrent-exit: $(shared-thread-library)
$(objpfx)tst-concurrent-quick_exit: $(shared-thread-library)
$(objpfx)tst-getrandom2: $(shared-thread-library)
diff --git a/stdlib/Versions b/stdlib/Versions
index ea2265b..6d02400 100644
--- a/stdlib/Versions
+++ b/stdlib/Versions
@@ -223,6 +223,12 @@ libc {
stdc_bit_ceil_ul;
stdc_bit_ceil_ull;
}
+ GLIBC_2.42 {
+ uabs;
+ uimaxabs;
+ ulabs;
+ ullabs;
+ }
GLIBC_PRIVATE {
# functions which have an additional interface since they are
# are cancelable.
diff --git a/stdlib/abort.c b/stdlib/abort.c
index caa9e6d..904244a 100644
--- a/stdlib/abort.c
+++ b/stdlib/abort.c
@@ -19,6 +19,7 @@
#include <internal-signals.h>
#include <libc-lock.h>
#include <pthreadP.h>
+#include <string.h>
#include <unistd.h>
/* Try to get a machine dependent instruction which will make the
@@ -42,7 +43,10 @@ __libc_rwlock_define_initialized (static, lock);
void
__abort_fork_reset_child (void)
{
- __libc_rwlock_init (lock);
+ /* Reinitialize lock without calling pthread_rwlock_init, to
+ avoid a valgrind DRD false positive. */
+ __libc_rwlock_define_initialized (, reset_lock);
+ memcpy (&lock, &reset_lock, sizeof (lock));
}
void
diff --git a/stdlib/inttypes.h b/stdlib/inttypes.h
index 95324f0..9726abf 100644
--- a/stdlib/inttypes.h
+++ b/stdlib/inttypes.h
@@ -350,6 +350,11 @@ typedef struct
/* Compute absolute value of N. */
extern intmax_t imaxabs (intmax_t __n) __THROW __attribute__ ((__const__));
+
+#if __GLIBC_USE (ISOC2Y)
+extern uintmax_t uimaxabs (intmax_t __n) __THROW __attribute__ ((__const__));
+#endif
+
/* Return the `imaxdiv_t' representation of the value of NUMER over DENOM. */
extern imaxdiv_t imaxdiv (intmax_t __numer, intmax_t __denom)
__THROW __attribute__ ((__const__));
diff --git a/stdlib/stdlib.h b/stdlib/stdlib.h
index 975f5ae..cd4503c 100644
--- a/stdlib/stdlib.h
+++ b/stdlib/stdlib.h
@@ -985,6 +985,12 @@ __extension__ extern long long int llabs (long long int __x)
__THROW __attribute__ ((__const__)) __wur;
#endif
+#if __GLIBC_USE (ISOC2Y)
+extern unsigned int uabs (int __x) __THROW __attribute__ ((__const__)) __wur;
+extern unsigned long int ulabs (long int __x) __THROW __attribute__ ((__const__)) __wur;
+__extension__ extern unsigned long long int ullabs (long long int __x)
+ __THROW __attribute__ ((__const__)) __wur;
+#endif
/* Return the `div_t', `ldiv_t' or `lldiv_t' representation
of the value of NUMER over DENOM. */
diff --git a/stdlib/tst-secure-getenv.c b/stdlib/tst-secure-getenv.c
index 3fd1d23..c12c63a 100644
--- a/stdlib/tst-secure-getenv.c
+++ b/stdlib/tst-secure-getenv.c
@@ -57,13 +57,7 @@ do_test (void)
exit (1);
}
- int status = support_capture_subprogram_self_sgid (MAGIC_ARGUMENT);
-
- if (WEXITSTATUS (status) == EXIT_UNSUPPORTED)
- return EXIT_UNSUPPORTED;
-
- if (!WIFEXITED (status))
- FAIL_EXIT1 ("Unexpected exit status %d from child process\n", status);
+ support_capture_subprogram_self_sgid (MAGIC_ARGUMENT);
return 0;
}
@@ -82,6 +76,7 @@ alternative_main (int argc, char **argv)
if (secure_getenv ("PATH") != NULL)
FAIL_EXIT (4, "PATH variable not filtered out\n");
+ support_record_failure_barrier ();
exit (EXIT_SUCCESS);
}
}
diff --git a/stdlib/tst-uabs.c b/stdlib/tst-uabs.c
new file mode 100644
index 0000000..13c9f58
--- /dev/null
+++ b/stdlib/tst-uabs.c
@@ -0,0 +1,45 @@
+/* Basic tests for uabs.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <limits.h>
+#include <stdlib.h>
+
+#include <support/check.h>
+
+#define LARGE_PRIME 49999
+
+static int do_test (void)
+{
+ int i;
+
+ TEST_COMPARE (uabs (INT_MAX), INT_MAX);
+ TEST_COMPARE (uabs (INT_MIN), (unsigned int)INT_MAX + 1);
+ TEST_COMPARE (uabs (-1), 1);
+ TEST_COMPARE (uabs (0), 0);
+ TEST_COMPARE (uabs (1), 1);
+
+ for (i = INT_MIN + 1; i < 0; i += LARGE_PRIME)
+ TEST_COMPARE (uabs (i), -i);
+
+ for (i = 0; i < INT_MAX - LARGE_PRIME; i += LARGE_PRIME)
+ TEST_COMPARE (uabs (i), i);
+
+ return EXIT_SUCCESS;
+}
+
+#include <support/test-driver.c>
diff --git a/stdlib/tst-uimaxabs.c b/stdlib/tst-uimaxabs.c
new file mode 100644
index 0000000..4500ec1
--- /dev/null
+++ b/stdlib/tst-uimaxabs.c
@@ -0,0 +1,51 @@
+/* Basic tests for uimaxabs.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <inttypes.h>
+#include <limits.h>
+#include <stdlib.h>
+
+#include <support/check.h>
+
+#define LARGE_PRIME 49999
+
+static int do_test (void)
+{
+ intmax_t i;
+
+ TEST_COMPARE (uimaxabs (INTMAX_MIN), (uintmax_t)INTMAX_MAX + 1);
+ TEST_COMPARE (uimaxabs (-1), 1);
+ TEST_COMPARE (uimaxabs (0), 0);
+ TEST_COMPARE (uimaxabs (1), 1);
+
+ for (i = INTMAX_MIN + 1; i < INTMAX_MIN + INT_MAX; i += LARGE_PRIME)
+ TEST_COMPARE (uimaxabs (i), -i);
+
+ for (i = INTMAX_MAX - INT_MAX; i < INTMAX_MAX - LARGE_PRIME; i += LARGE_PRIME)
+ TEST_COMPARE (uimaxabs (i), i);
+
+ for (i = INT_MIN + 1; i < 0; i += LARGE_PRIME)
+ TEST_COMPARE (uimaxabs (i), -i);
+
+ for (i = 0; i < INT_MAX; i += LARGE_PRIME)
+ TEST_COMPARE (uimaxabs (i), i);
+
+ return EXIT_SUCCESS;
+}
+
+#include <support/test-driver.c>
diff --git a/stdlib/tst-ulabs.c b/stdlib/tst-ulabs.c
new file mode 100644
index 0000000..3b5323e
--- /dev/null
+++ b/stdlib/tst-ulabs.c
@@ -0,0 +1,52 @@
+/* Basic tests for ulabs.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <limits.h>
+#include <stdlib.h>
+
+#include <support/check.h>
+
+#define LARGE_PRIME 49999
+
+static int do_test (void)
+{
+ long int i;
+
+ TEST_COMPARE (ulabs (LONG_MAX), LONG_MAX);
+ TEST_COMPARE (ulabs (LONG_MIN), (unsigned long int)LONG_MAX + 1);
+ TEST_COMPARE (ulabs (-1), 1);
+ TEST_COMPARE (ulabs (0), 0);
+ TEST_COMPARE (ulabs (1), 1);
+
+ for (i = LONG_MIN + 1; i < LONG_MIN + INT_MAX; i += LARGE_PRIME)
+ TEST_COMPARE (ulabs (i), -i);
+
+ for (i = LONG_MAX - INT_MAX; i < LONG_MAX - LARGE_PRIME;
+ i += LARGE_PRIME)
+ TEST_COMPARE (ulabs (i), i);
+
+ for (i = INT_MIN + 1; i < 0; i += LARGE_PRIME)
+ TEST_COMPARE (ulabs (i), -i);
+
+ for (i = 0; i <= INT_MAX - LARGE_PRIME; i += LARGE_PRIME)
+ TEST_COMPARE (ulabs (i), i);
+
+ return EXIT_SUCCESS;
+}
+
+#include <support/test-driver.c>
diff --git a/stdlib/tst-ullabs.c b/stdlib/tst-ullabs.c
new file mode 100644
index 0000000..ac34ec7
--- /dev/null
+++ b/stdlib/tst-ullabs.c
@@ -0,0 +1,55 @@
+/* Basic tests for ullabs.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <limits.h>
+#include <stdlib.h>
+
+#include <support/check.h>
+
+#define LARGE_PRIME 49999
+
+static int do_test (void)
+{
+ long long int i;
+
+ TEST_COMPARE (ullabs (LLONG_MAX), LLONG_MAX);
+ TEST_COMPARE (ullabs (LLONG_MIN), (unsigned long long int)LLONG_MAX + 1);
+ TEST_COMPARE (ullabs (0x00000000ffffffffL), 0x00000000ffffffffL);
+ TEST_COMPARE (ullabs (0x0000000100000000L), 0x0000000100000000L);
+ TEST_COMPARE (ullabs (0x80000000ffffffffL), 0x7fffffff00000001L);
+ TEST_COMPARE (ullabs (0x8000000100000000L), 0x7fffffff00000000L);
+ TEST_COMPARE (ullabs (-1), 1);
+ TEST_COMPARE (ullabs (0), 0);
+ TEST_COMPARE (ullabs (1), 1);
+
+ for (i = LLONG_MIN + 1; i < LLONG_MIN + INT_MAX; i += LARGE_PRIME)
+ TEST_COMPARE (ullabs (i), -i);
+
+ for (i = LLONG_MAX - INT_MAX; i < LLONG_MAX - LARGE_PRIME; i += LARGE_PRIME)
+ TEST_COMPARE (ullabs (i), i);
+
+ for (i = INT_MIN + 1; i < 0; i += LARGE_PRIME)
+ TEST_COMPARE (ullabs (i), -i);
+
+ for (i = 0; i < INT_MAX; i += LARGE_PRIME)
+ TEST_COMPARE (ullabs (i), i);
+
+ return EXIT_SUCCESS;
+}
+
+#include <support/test-driver.c>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strncase-power7.c b/stdlib/uabs.c
index a5b0685..72aea5f 100644
--- a/sysdeps/powerpc/powerpc64/multiarch/strncase-power7.c
+++ b/stdlib/uabs.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2013-2025 Free Software Foundation, Inc.
+/* Copyright (C) 2025 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -15,10 +15,14 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
-#include <string.h>
+#include <stdlib.h>
-#define __strncasecmp __strncasecmp_power7
+#undef uabs
-extern __typeof (strncasecmp) __strncasecmp_power7 attribute_hidden;
-
-#include <string/strncase.c>
+/* Return the absolute value of I. */
+unsigned int
+uabs (int i)
+{
+ unsigned int j = i;
+ return i < 0 ? -j : i;
+}
diff --git a/stdlib/ulabs.c b/stdlib/ulabs.c
new file mode 100644
index 0000000..c2ccfb8
--- /dev/null
+++ b/stdlib/ulabs.c
@@ -0,0 +1,33 @@
+/* Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <limits.h>
+#include <stdlib.h>
+
+#undef ulabs
+
+/* Return the absolute value of I. */
+unsigned long int
+ulabs (long int i)
+{
+ unsigned long int j = i;
+ return i < 0 ? -j : i;
+}
+
+#if ULONG_MAX != UINT_MAX
+weak_alias (ulabs, uimaxabs)
+#endif
diff --git a/stdlib/ullabs.c b/stdlib/ullabs.c
new file mode 100644
index 0000000..11268c2
--- /dev/null
+++ b/stdlib/ullabs.c
@@ -0,0 +1,33 @@
+/* Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <limits.h>
+#include <stdlib.h>
+
+#undef ullabs
+
+/* Return the absolute value of I. */
+unsigned long long int
+ullabs (long long int i)
+{
+ unsigned long long int j = i;
+ return i < 0 ? -j : i;
+}
+
+#if ULONG_MAX == UINT_MAX
+weak_alias (ullabs, uimaxabs)
+#endif
diff --git a/string/strerror.c b/string/strerror.c
index 3c02640..daabec8 100644
--- a/string/strerror.c
+++ b/string/strerror.c
@@ -21,5 +21,5 @@
char *
strerror (int errnum)
{
- return __strerror_l (errnum, __libc_tsd_get (locale_t, LOCALE));
+ return __strerror_l (errnum, __libc_tsd_LOCALE);
}
diff --git a/sunrpc/rpc_thread.c b/sunrpc/rpc_thread.c
index a04b7ec..e20f0a6 100644
--- a/sunrpc/rpc_thread.c
+++ b/sunrpc/rpc_thread.c
@@ -3,7 +3,6 @@
#include <assert.h>
#include <libc-lock.h>
-#include <libc-tsd.h>
#include <shlib-compat.h>
#include <libc-symbols.h>
diff --git a/support/capture_subprocess.h b/support/capture_subprocess.h
index 91d75e5..b37462d 100644
--- a/support/capture_subprocess.h
+++ b/support/capture_subprocess.h
@@ -42,11 +42,12 @@ struct support_capture_subprocess support_capture_subprocess
struct support_capture_subprocess support_capture_subprogram
(const char *file, char *const argv[], char *const envp[]);
-/* Copy the running program into a setgid binary and run it with CHILD_ID
- argument. If execution is successful, return the exit status of the child
- program, otherwise return a non-zero failure exit code. */
-int support_capture_subprogram_self_sgid
- (char *child_id);
+/* Copy the running program into a setgid binary and run it with
+ CHILD_ID argument. If the program exits with a non-zero status,
+ exit with that exit status (or status 1 if the program did not exit
+ normally). If the test cannot be performed, exit with
+ EXIT_UNSUPPORTED. */
+void support_capture_subprogram_self_sgid (const char *child_id);
/* Deallocate the subprocess data captured by
support_capture_subprocess. */
diff --git a/support/support_capture_subprocess.c b/support/support_capture_subprocess.c
index c3ef478..b4e4bf9 100644
--- a/support/support_capture_subprocess.c
+++ b/support/support_capture_subprocess.c
@@ -21,12 +21,17 @@
#include <errno.h>
#include <fcntl.h>
+#include <grp.h>
+#include <scratch_buffer.h>
+#include <stdio_ext.h>
#include <stdlib.h>
+#include <string.h>
#include <support/check.h>
#include <support/xunistd.h>
#include <support/xsocket.h>
#include <support/xspawn.h>
#include <support/support.h>
+#include <support/temp_file.h>
#include <support/test-driver.h>
static void
@@ -109,111 +114,88 @@ support_capture_subprogram (const char *file, char *const argv[],
/* Copies the executable into a restricted directory, so that we can
safely make it SGID with the TARGET group ID. Then runs the
executable. */
-static int
-copy_and_spawn_sgid (char *child_id, gid_t gid)
+static void
+copy_and_spawn_sgid (const char *child_id, gid_t gid)
{
- char *dirname = xasprintf ("%s/tst-tunables-setuid.%jd",
- test_dir, (intmax_t) getpid ());
+ char *dirname = support_create_temp_directory ("tst-glibc-sgid-");
char *execname = xasprintf ("%s/bin", dirname);
- int infd = -1;
- int outfd = -1;
- int ret = 1, status = 1;
-
- TEST_VERIFY (mkdir (dirname, 0700) == 0);
- if (support_record_failure_is_failed ())
- goto err;
+ add_temp_file (execname);
- infd = open ("/proc/self/exe", O_RDONLY);
- if (infd < 0)
+ if (access ("/proc/self/exe", R_OK) != 0)
FAIL_UNSUPPORTED ("unsupported: Cannot read binary from procfs\n");
- outfd = open (execname, O_WRONLY | O_CREAT | O_EXCL, 0700);
- TEST_VERIFY (outfd >= 0);
- if (support_record_failure_is_failed ())
- goto err;
-
- char buf[4096];
- for (;;)
- {
- ssize_t rdcount = read (infd, buf, sizeof (buf));
- TEST_VERIFY (rdcount >= 0);
- if (support_record_failure_is_failed ())
- goto err;
- if (rdcount == 0)
- break;
- char *p = buf;
- char *end = buf + rdcount;
- while (p != end)
- {
- ssize_t wrcount = write (outfd, buf, end - p);
- if (wrcount == 0)
- errno = ENOSPC;
- TEST_VERIFY (wrcount > 0);
- if (support_record_failure_is_failed ())
- goto err;
- p += wrcount;
- }
- }
+ support_copy_file ("/proc/self/exe", execname);
- bool chowned = false;
- TEST_VERIFY ((chowned = fchown (outfd, getuid (), gid) == 0)
- || errno == EPERM);
- if (support_record_failure_is_failed ())
- goto err;
- else if (!chowned)
- {
- ret = 77;
- goto err;
- }
+ if (chown (execname, getuid (), gid) != 0)
+ FAIL_UNSUPPORTED ("cannot change group of \"%s\" to %jd: %m",
+ execname, (intmax_t) gid);
- TEST_VERIFY (fchmod (outfd, 02750) == 0);
- if (support_record_failure_is_failed ())
- goto err;
- TEST_VERIFY (close (outfd) == 0);
- if (support_record_failure_is_failed ())
- goto err;
- TEST_VERIFY (close (infd) == 0);
- if (support_record_failure_is_failed ())
- goto err;
+ if (chmod (execname, 02750) != 0)
+ FAIL_UNSUPPORTED ("cannot make \"%s\" SGID: %m ", execname);
/* We have the binary, now spawn the subprocess. Avoid using
support_subprogram because we only want the program exit status, not the
contents. */
- ret = 0;
- infd = outfd = -1;
- char * const args[] = {execname, child_id, NULL};
+ char * const args[] = {execname, (char *) child_id, NULL};
+ int status = support_subprogram_wait (args[0], args);
- status = support_subprogram_wait (args[0], args);
+ free (execname);
+ free (dirname);
-err:
- if (outfd >= 0)
- close (outfd);
- if (infd >= 0)
- close (infd);
- if (execname != NULL)
+ if (WIFEXITED (status))
{
- unlink (execname);
- free (execname);
+ if (WEXITSTATUS (status) == 0)
+ return;
+ else
+ exit (WEXITSTATUS (status));
}
- if (dirname != NULL)
+ else
+ FAIL_EXIT1 ("subprogram failed with status %d", status);
+}
+
+/* Returns true if a group with NAME has been found, and writes its
+ GID to *TARGET. */
+static bool
+find_sgid_group (gid_t *target, const char *name)
+{
+ /* Do not use getgrname_r because it does not work in statically
+ linked binaries if the system libc is different. */
+ FILE *fp = fopen ("/etc/group", "rce");
+ if (fp == NULL)
+ return false;
+ __fsetlocking (fp, FSETLOCKING_BYCALLER);
+
+ bool ok = false;
+ struct scratch_buffer buf;
+ scratch_buffer_init (&buf);
+ while (true)
{
- rmdir (dirname);
- free (dirname);
+ struct group grp;
+ struct group *result = NULL;
+ int status = fgetgrent_r (fp, &grp, buf.data, buf.length, &result);
+ if (status == 0 && result != NULL)
+ {
+ if (strcmp (result->gr_name, name) == 0)
+ {
+ *target = result->gr_gid;
+ ok = true;
+ break;
+ }
+ }
+ else if (errno != ERANGE)
+ break;
+ else if (!scratch_buffer_grow (&buf))
+ break;
}
-
- if (ret == 77)
- FAIL_UNSUPPORTED ("Failed to make sgid executable for test\n");
- if (ret != 0)
- FAIL_EXIT1 ("Failed to make sgid executable for test\n");
-
- return status;
+ scratch_buffer_free (&buf);
+ fclose (fp);
+ return ok;
}
-int
-support_capture_subprogram_self_sgid (char *child_id)
+void
+support_capture_subprogram_self_sgid (const char *child_id)
{
- gid_t target = 0;
const int count = 64;
gid_t groups[count];
@@ -225,6 +207,7 @@ support_capture_subprogram_self_sgid (char *child_id)
(intmax_t) getuid ());
gid_t current = getgid ();
+ gid_t target = current;
for (int i = 0; i < ret; ++i)
{
if (groups[i] != current)
@@ -234,11 +217,18 @@ support_capture_subprogram_self_sgid (char *child_id)
}
}
- if (target == 0)
- FAIL_UNSUPPORTED("Could not find a suitable GID for user %jd\n",
- (intmax_t) getuid ());
+ if (target == current)
+ {
+ /* If running as root, try to find a harmless group for SGID. */
+ if (getuid () != 0
+ || (!find_sgid_group (&target, "nogroup")
+ && !find_sgid_group (&target, "bin")
+ && !find_sgid_group (&target, "daemon")))
+ FAIL_UNSUPPORTED("Could not find a suitable GID for user %jd\n",
+ (intmax_t) getuid ());
+ }
- return copy_and_spawn_sgid (child_id, target);
+ copy_and_spawn_sgid (child_id, target);
}
void
diff --git a/support/test-container.c b/support/test-container.c
index a641250..1c40ab3 100644
--- a/support/test-container.c
+++ b/support/test-container.c
@@ -740,7 +740,7 @@ main (int argc, char **argv)
char *command_basename;
char *so_base;
int do_postclean = 0;
- bool do_ldconfig = false;
+ bool do_ldconfig = true;
char *change_cwd = NULL;
int pipes[2];
diff --git a/sysdeps/aarch64/Makefile b/sysdeps/aarch64/Makefile
index 4b7f8a5..bb97d31 100644
--- a/sysdeps/aarch64/Makefile
+++ b/sysdeps/aarch64/Makefile
@@ -41,15 +41,18 @@ gen-as-const-headers += \
dl-link.sym \
rtld-global-offsets.sym
-tests-internal += tst-ifunc-arg-1 tst-ifunc-arg-2
+tests-internal += \
+ tst-ifunc-arg-1 \
+ tst-ifunc-arg-2 \
+ tst-ifunc-arg-3 \
+ tst-ifunc-arg-4 \
+ # tests-internal
-ifeq (yes,$(aarch64-variant-pcs))
tests += tst-vpcs
modules-names += tst-vpcs-mod
LDFLAGS-tst-vpcs-mod.so = -Wl,-z,lazy
$(objpfx)tst-vpcs: $(objpfx)tst-vpcs-mod.so
endif
-endif
ifeq ($(subdir),csu)
gen-as-const-headers += \
@@ -75,7 +78,9 @@ sysdep_routines += \
__alloc_gcs
tests += \
- tst-sme-jmp
+ tst-sme-jmp \
+ tst-sme-za-state \
+ # tests
endif
ifeq ($(subdir),malloc)
diff --git a/sysdeps/aarch64/__alloc_gcs.c b/sysdeps/aarch64/__alloc_gcs.c
index e70b459..b98e5fc 100644
--- a/sysdeps/aarch64/__alloc_gcs.c
+++ b/sysdeps/aarch64/__alloc_gcs.c
@@ -15,6 +15,8 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
+#include "aarch64-gcs.h"
+
#include <sysdep.h>
#include <unistd.h>
#include <sys/mman.h>
@@ -34,7 +36,7 @@ map_shadow_stack (void *addr, size_t size, unsigned long flags)
#define GCS_ALTSTACK_RESERVE 160
void *
-__alloc_gcs (size_t stack_size, void **ss_base, size_t *ss_size)
+__alloc_gcs (size_t stack_size, struct gcs_record *gcs)
{
size_t size = (stack_size / 2 + GCS_ALTSTACK_RESERVE) & -8UL;
if (size > GCS_MAX_SIZE)
@@ -45,9 +47,6 @@ __alloc_gcs (size_t stack_size, void **ss_base, size_t *ss_size)
if (base == MAP_FAILED)
return NULL;
- *ss_base = base;
- *ss_size = size;
-
uint64_t *gcsp = (uint64_t *) ((char *) base + size);
/* Skip end of GCS token. */
gcsp--;
@@ -58,6 +57,14 @@ __alloc_gcs (size_t stack_size, void **ss_base, size_t *ss_size)
__munmap (base, size);
return NULL;
}
+
+ if (gcs != NULL)
+ {
+ gcs->gcs_base = base;
+ gcs->gcs_token = gcsp;
+ gcs->gcs_size = size;
+ }
+
/* Return the target GCS pointer for context switch. */
return gcsp + 1;
}
diff --git a/sysdeps/aarch64/__arm_za_disable.S b/sysdeps/aarch64/__arm_za_disable.S
index 6290803..92f4814 100644
--- a/sysdeps/aarch64/__arm_za_disable.S
+++ b/sysdeps/aarch64/__arm_za_disable.S
@@ -88,10 +88,8 @@ L(save_loop):
L(end):
ret
L(fail):
-#if HAVE_AARCH64_PAC_RET
- PACIASP
- cfi_window_save
-#endif
+ paciasp
+ cfi_negate_ra_state
stp x29, x30, [sp, -32]!
cfi_adjust_cfa_offset (32)
cfi_rel_offset (x29, 0)
diff --git a/sysdeps/aarch64/__longjmp.S b/sysdeps/aarch64/__longjmp.S
index 981bf80..70ac02c 100644
--- a/sysdeps/aarch64/__longjmp.S
+++ b/sysdeps/aarch64/__longjmp.S
@@ -24,51 +24,43 @@
/* __longjmp(jmpbuf, val) */
ENTRY (__longjmp)
- cfi_def_cfa(x0, 0)
- cfi_offset(x19, JB_X19<<3)
- cfi_offset(x20, JB_X20<<3)
- cfi_offset(x21, JB_X21<<3)
- cfi_offset(x22, JB_X22<<3)
- cfi_offset(x23, JB_X23<<3)
- cfi_offset(x24, JB_X24<<3)
- cfi_offset(x25, JB_X25<<3)
- cfi_offset(x26, JB_X26<<3)
- cfi_offset(x27, JB_X27<<3)
- cfi_offset(x28, JB_X28<<3)
- cfi_offset(x29, JB_X29<<3)
- cfi_offset(x30, JB_LR<<3)
-
- cfi_offset( d8, JB_D8<<3)
- cfi_offset( d9, JB_D9<<3)
- cfi_offset(d10, JB_D10<<3)
- cfi_offset(d11, JB_D11<<3)
- cfi_offset(d12, JB_D12<<3)
- cfi_offset(d13, JB_D13<<3)
- cfi_offset(d14, JB_D14<<3)
- cfi_offset(d15, JB_D15<<3)
#if IS_IN(libc)
- /* Disable ZA state of SME in libc.a and libc.so, but not in ld.so. */
-# if HAVE_AARCH64_PAC_RET
- PACIASP
- cfi_window_save
-# endif
- stp x29, x30, [sp, -16]!
- cfi_adjust_cfa_offset (16)
- cfi_rel_offset (x29, 0)
- cfi_rel_offset (x30, 8)
- mov x29, sp
+ /* Disable ZA state of SME in libc.a and libc.so, but not in ld.so.
+ The calling convention of __libc_arm_za_disable allows to do
+ this thus allowing to avoid saving to and reading from stack.
+ As a result we also don't need to sign the return address and
+ check it after returning because it is not stored to stack. */
+ mov x13, x30
+ cfi_register (x30, x13)
bl __libc_arm_za_disable
- ldp x29, x30, [sp], 16
- cfi_adjust_cfa_offset (-16)
- cfi_restore (x29)
- cfi_restore (x30)
-# if HAVE_AARCH64_PAC_RET
- AUTIASP
- cfi_window_save
-# endif
+ mov x30, x13
+ cfi_register (x13, x30)
#endif
+ cfi_def_cfa (x0, 0)
+ cfi_offset (x19, JB_X19<<3)
+ cfi_offset (x20, JB_X20<<3)
+ cfi_offset (x21, JB_X21<<3)
+ cfi_offset (x22, JB_X22<<3)
+ cfi_offset (x23, JB_X23<<3)
+ cfi_offset (x24, JB_X24<<3)
+ cfi_offset (x25, JB_X25<<3)
+ cfi_offset (x26, JB_X26<<3)
+ cfi_offset (x27, JB_X27<<3)
+ cfi_offset (x28, JB_X28<<3)
+ cfi_offset (x29, JB_X29<<3)
+ cfi_offset (x30, JB_LR<<3)
+
+ cfi_offset ( d8, JB_D8<<3)
+ cfi_offset ( d9, JB_D9<<3)
+ cfi_offset (d10, JB_D10<<3)
+ cfi_offset (d11, JB_D11<<3)
+ cfi_offset (d12, JB_D12<<3)
+ cfi_offset (d13, JB_D13<<3)
+ cfi_offset (d14, JB_D14<<3)
+ cfi_offset (d15, JB_D15<<3)
+
ldp x19, x20, [x0, #JB_X19<<3]
ldp x21, x22, [x0, #JB_X21<<3]
ldp x23, x24, [x0, #JB_X23<<3]
diff --git a/sysdeps/aarch64/aarch64-gcs.h b/sysdeps/aarch64/aarch64-gcs.h
index 162ef18..8e253ed 100644
--- a/sysdeps/aarch64/aarch64-gcs.h
+++ b/sysdeps/aarch64/aarch64-gcs.h
@@ -23,6 +23,21 @@
#include <stddef.h>
#include <stdbool.h>
-void *__alloc_gcs (size_t, void **, size_t *) attribute_hidden;
+struct gcs_record
+{
+ void *gcs_base;
+ void *gcs_token;
+ size_t gcs_size;
+};
+
+void *__alloc_gcs (size_t, struct gcs_record *) attribute_hidden;
+
+static inline bool
+has_gcs (void)
+{
+ register unsigned long x16 asm ("x16") = 1;
+ asm ("hint 40" /* chkfeat x16 */ : "+r" (x16));
+ return x16 == 0;
+}
#endif
diff --git a/sysdeps/aarch64/configure b/sysdeps/aarch64/configure
index 4bd5496..f364e65 100755
--- a/sysdeps/aarch64/configure
+++ b/sysdeps/aarch64/configure
@@ -185,219 +185,14 @@ else
default-abi = lp64"
fi
-# Only consider BTI supported if -mbranch-protection=bti is
-# on by default in the compiler and the linker produces
-# binaries with GNU property notes in PT_GNU_PROPERTY segment.
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for BTI support" >&5
-printf %s "checking for BTI support... " >&6; }
-if test ${libc_cv_aarch64_bti+y}
-then :
- printf %s "(cached) " >&6
-else case e in #(
- e) cat > conftest.c <<EOF
-void foo (void) { }
-EOF
- libc_cv_aarch64_bti=no
- if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -nostdlib -nostartfiles $no_ssp -shared -fPIC -o conftest.so conftest.c'
- { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; } \
- && { ac_try='$READELF -lW conftest.so | grep -q GNU_PROPERTY'
- { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; } \
- && { ac_try='$READELF -nW conftest.so | grep -q "NT_GNU_PROPERTY_TYPE_0.*AArch64 feature:.* BTI"'
- { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }
- then
- libc_cv_aarch64_bti=yes
- fi
- rm -rf conftest.* ;;
-esac
-fi
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_aarch64_bti" >&5
-printf "%s\n" "$libc_cv_aarch64_bti" >&6; }
-config_vars="$config_vars
-aarch64-bti = $libc_cv_aarch64_bti"
-if test $libc_cv_aarch64_bti = yes; then
- printf "%s\n" "#define HAVE_AARCH64_BTI 1" >>confdefs.h
-
-fi
-
-# Check if glibc is built with return address signing, i.e.
-# if -mbranch-protection=pac-ret is on. We need this because
-# pac-ret relies on unwinder support so it's not safe to use
-# it in assembly code unconditionally, but there is no
-# feature test macro for it in gcc.
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if pac-ret is enabled" >&5
-printf %s "checking if pac-ret is enabled... " >&6; }
-if test ${libc_cv_aarch64_pac_ret+y}
-then :
- printf %s "(cached) " >&6
-else case e in #(
- e) cat > conftest.c <<EOF
-int bar (void);
-int foo (void) { return bar () + 1; }
-EOF
- libc_cv_aarch64_pac_ret=no
- if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -S -o conftest.s conftest.c'
- { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; } \
- && { ac_try='grep -q -E '\''(hint( | )+25|paciasp)'\'' conftest.s'
- { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }
- then
- libc_cv_aarch64_pac_ret=yes
- fi
- rm -rf conftest.* ;;
-esac
-fi
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_aarch64_pac_ret" >&5
-printf "%s\n" "$libc_cv_aarch64_pac_ret" >&6; }
-if test $libc_cv_aarch64_pac_ret = yes; then
- printf "%s\n" "#define HAVE_AARCH64_PAC_RET 1" >>confdefs.h
-
-fi
-
-# Check if binutils supports variant PCS symbols.
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for variant PCS support" >&5
-printf %s "checking for variant PCS support... " >&6; }
-if test ${libc_cv_aarch64_variant_pcs+y}
-then :
- printf %s "(cached) " >&6
-else case e in #(
- e) cat > conftest.S <<EOF
-.global foo
-.type foo, %function
-.variant_pcs foo
-foo:
- ret
-.global bar
-.type bar, %function
-bar:
- b foo
-EOF
- libc_cv_aarch64_variant_pcs=no
- if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -nostdlib -nostartfiles $no_ssp -shared -fPIC -o conftest.so conftest.S'
- { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; } \
- && { ac_try='$READELF -dW conftest.so | grep -q AARCH64_VARIANT_PCS'
- { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }
- then
- libc_cv_aarch64_variant_pcs=yes
- fi
- rm -rf conftest.* ;;
-esac
-fi
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_aarch64_variant_pcs" >&5
-printf "%s\n" "$libc_cv_aarch64_variant_pcs" >&6; }
-config_vars="$config_vars
-aarch64-variant-pcs = $libc_cv_aarch64_variant_pcs"
-
-# Check if asm support armv8.2-a+sve
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for SVE support in assembler" >&5
-printf %s "checking for SVE support in assembler... " >&6; }
-if test ${libc_cv_aarch64_sve_asm+y}
-then :
- printf %s "(cached) " >&6
-else case e in #(
- e) cat > conftest.s <<\EOF
- .arch armv8.2-a+sve
- ptrue p0.b
-EOF
-if { ac_try='${CC-cc} -c conftest.s 1>&5'
- { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }; then
- libc_cv_aarch64_sve_asm=yes
-else
- libc_cv_aarch64_sve_asm=no
-fi
-rm -f conftest* ;;
-esac
-fi
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_aarch64_sve_asm" >&5
-printf "%s\n" "$libc_cv_aarch64_sve_asm" >&6; }
-if test $libc_cv_aarch64_sve_asm = yes; then
- printf "%s\n" "#define HAVE_AARCH64_SVE_ASM 1" >>confdefs.h
-
-fi
-
if test x"$build_mathvec" = xnotset; then
build_mathvec=yes
fi
-# Check if compiler supports SVE ACLE.
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for availability of SVE ACLE" >&5
-printf %s "checking for availability of SVE ACLE... " >&6; }
-if test ${libc_cv_aarch64_sve_acle+y}
-then :
- printf %s "(cached) " >&6
-else case e in #(
- e) cat > conftest.c <<EOF
-#include <arm_sve.h>
-EOF
- if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -fsyntax-only -ffreestanding conftest.c'
- { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }; then
- libc_cv_aarch64_sve_acle=yes
- else
- libc_cv_aarch64_sve_acle=no
- fi
- rm conftest.c ;;
-esac
-fi
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_aarch64_sve_acle" >&5
-printf "%s\n" "$libc_cv_aarch64_sve_acle" >&6; }
-
-# Check if compiler is sufficient to build mathvec
-if test $build_mathvec = yes; then
- fail=no
- if test $libc_cv_aarch64_variant_pcs = no; then
- fail=yes
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: mathvec is enabled but linker does not support variant PCS." >&5
-printf "%s\n" "$as_me: WARNING: mathvec is enabled but linker does not support variant PCS." >&2;}
- fi
- if test $libc_cv_aarch64_sve_asm = no; then
- fail=yes
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: mathvec is enabled but assembler does not support SVE." >&5
-printf "%s\n" "$as_me: WARNING: mathvec is enabled but assembler does not support SVE." >&2;}
- fi
- if test $libc_cv_aarch64_sve_acle = no; then
- fail=yes
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: mathvec is enabled but compiler does not have SVE ACLE." >&5
-printf "%s\n" "$as_me: WARNING: mathvec is enabled but compiler does not have SVE ACLE." >&2;}
- fi
- if test $fail = yes; then
- as_fn_error $? "use a compatible toolchain or configure with --disable-mathvec (this results in incomplete ABI)." "$LINENO" 5
- fi
-else
+if test $build_mathvec = no; then
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: mathvec is disabled, this results in incomplete ABI." >&5
printf "%s\n" "$as_me: WARNING: mathvec is disabled, this results in incomplete ABI." >&2;}
fi
+libc_cv_support_sframe=yes
+
diff --git a/sysdeps/aarch64/configure.ac b/sysdeps/aarch64/configure.ac
index 56d12d6..a9a1b74 100644
--- a/sysdeps/aarch64/configure.ac
+++ b/sysdeps/aarch64/configure.ac
@@ -24,119 +24,12 @@ else
LIBC_CONFIG_VAR([default-abi], [lp64])
fi
-# Only consider BTI supported if -mbranch-protection=bti is
-# on by default in the compiler and the linker produces
-# binaries with GNU property notes in PT_GNU_PROPERTY segment.
-AC_CACHE_CHECK([for BTI support], [libc_cv_aarch64_bti], [dnl
- cat > conftest.c <<EOF
-void foo (void) { }
-EOF
- libc_cv_aarch64_bti=no
- if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -nostdlib -nostartfiles $no_ssp -shared -fPIC -o conftest.so conftest.c]) \
- && AC_TRY_COMMAND([$READELF -lW conftest.so | grep -q GNU_PROPERTY]) \
- && AC_TRY_COMMAND([$READELF -nW conftest.so | grep -q "NT_GNU_PROPERTY_TYPE_0.*AArch64 feature:.* BTI"])
- then
- libc_cv_aarch64_bti=yes
- fi
- rm -rf conftest.*])
-LIBC_CONFIG_VAR([aarch64-bti], [$libc_cv_aarch64_bti])
-if test $libc_cv_aarch64_bti = yes; then
- AC_DEFINE(HAVE_AARCH64_BTI)
-fi
-
-# Check if glibc is built with return address signing, i.e.
-# if -mbranch-protection=pac-ret is on. We need this because
-# pac-ret relies on unwinder support so it's not safe to use
-# it in assembly code unconditionally, but there is no
-# feature test macro for it in gcc.
-AC_CACHE_CHECK([if pac-ret is enabled], [libc_cv_aarch64_pac_ret], [dnl
- cat > conftest.c <<EOF
-int bar (void);
-int foo (void) { return bar () + 1; }
-EOF
- libc_cv_aarch64_pac_ret=no
- if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS -S -o conftest.s conftest.c]) \
- && AC_TRY_COMMAND([grep -q -E '\''(hint( | )+25|paciasp)'\'' conftest.s])
- then
- libc_cv_aarch64_pac_ret=yes
- fi
- rm -rf conftest.*])
-if test $libc_cv_aarch64_pac_ret = yes; then
- AC_DEFINE(HAVE_AARCH64_PAC_RET)
-fi
-
-# Check if binutils supports variant PCS symbols.
-AC_CACHE_CHECK([for variant PCS support], [libc_cv_aarch64_variant_pcs], [dnl
- cat > conftest.S <<EOF
-.global foo
-.type foo, %function
-.variant_pcs foo
-foo:
- ret
-.global bar
-.type bar, %function
-bar:
- b foo
-EOF
- libc_cv_aarch64_variant_pcs=no
- if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -nostdlib -nostartfiles $no_ssp -shared -fPIC -o conftest.so conftest.S]) \
- && AC_TRY_COMMAND([$READELF -dW conftest.so | grep -q AARCH64_VARIANT_PCS])
- then
- libc_cv_aarch64_variant_pcs=yes
- fi
- rm -rf conftest.*])
-LIBC_CONFIG_VAR([aarch64-variant-pcs], [$libc_cv_aarch64_variant_pcs])
-
-# Check if asm support armv8.2-a+sve
-AC_CACHE_CHECK([for SVE support in assembler], [libc_cv_aarch64_sve_asm], [dnl
-cat > conftest.s <<\EOF
- .arch armv8.2-a+sve
- ptrue p0.b
-EOF
-if AC_TRY_COMMAND(${CC-cc} -c conftest.s 1>&AS_MESSAGE_LOG_FD); then
- libc_cv_aarch64_sve_asm=yes
-else
- libc_cv_aarch64_sve_asm=no
-fi
-rm -f conftest*])
-if test $libc_cv_aarch64_sve_asm = yes; then
- AC_DEFINE(HAVE_AARCH64_SVE_ASM)
-fi
-
if test x"$build_mathvec" = xnotset; then
build_mathvec=yes
fi
-# Check if compiler supports SVE ACLE.
-AC_CACHE_CHECK(for availability of SVE ACLE, libc_cv_aarch64_sve_acle, [dnl
- cat > conftest.c <<EOF
-#include <arm_sve.h>
-EOF
- if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS -fsyntax-only -ffreestanding conftest.c]); then
- libc_cv_aarch64_sve_acle=yes
- else
- libc_cv_aarch64_sve_acle=no
- fi
- rm conftest.c])
-
-# Check if compiler is sufficient to build mathvec
-if test $build_mathvec = yes; then
- fail=no
- if test $libc_cv_aarch64_variant_pcs = no; then
- fail=yes
- AC_MSG_WARN([mathvec is enabled but linker does not support variant PCS.])
- fi
- if test $libc_cv_aarch64_sve_asm = no; then
- fail=yes
- AC_MSG_WARN([mathvec is enabled but assembler does not support SVE.])
- fi
- if test $libc_cv_aarch64_sve_acle = no; then
- fail=yes
- AC_MSG_WARN([mathvec is enabled but compiler does not have SVE ACLE.])
- fi
- if test $fail = yes; then
- AC_MSG_ERROR([use a compatible toolchain or configure with --disable-mathvec (this results in incomplete ABI).])
- fi
-else
+if test $build_mathvec = no; then
AC_MSG_WARN([mathvec is disabled, this results in incomplete ABI.])
fi
+
+libc_cv_support_sframe=yes
diff --git a/sysdeps/aarch64/crti.S b/sysdeps/aarch64/crti.S
index 0c3ee40..e9e530c 100644
--- a/sysdeps/aarch64/crti.S
+++ b/sysdeps/aarch64/crti.S
@@ -65,7 +65,7 @@ call_weak_fn:
cbz x0, 1f
b PREINIT_FUNCTION
1:
- RET
+ ret
.size call_weak_fn, .-call_weak_fn
#endif
@@ -75,11 +75,7 @@ call_weak_fn:
.hidden _init
.type _init, %function
_init:
-#if HAVE_AARCH64_PAC_RET
- PACIASP
-#else
- BTI_C
-#endif
+ paciasp
stp x29, x30, [sp, -16]!
mov x29, sp
#if PREINIT_FUNCTION_WEAK
@@ -94,10 +90,6 @@ _init:
.hidden _fini
.type _fini, %function
_fini:
-#if HAVE_AARCH64_PAC_RET
- PACIASP
-#else
- BTI_C
-#endif
+ paciasp
stp x29, x30, [sp, -16]!
mov x29, sp
diff --git a/sysdeps/aarch64/crtn.S b/sysdeps/aarch64/crtn.S
index b52b10e..653a548 100644
--- a/sysdeps/aarch64/crtn.S
+++ b/sysdeps/aarch64/crtn.S
@@ -41,14 +41,10 @@
.section .init,"ax",%progbits
ldp x29, x30, [sp], 16
-#if HAVE_AARCH64_PAC_RET
- AUTIASP
-#endif
- RET
+ autiasp
+ ret
.section .fini,"ax",%progbits
ldp x29, x30, [sp], 16
-#if HAVE_AARCH64_PAC_RET
- AUTIASP
-#endif
- RET
+ autiasp
+ ret
diff --git a/sysdeps/aarch64/dl-irel.h b/sysdeps/aarch64/dl-irel.h
index ae402bc..7bae3c3 100644
--- a/sysdeps/aarch64/dl-irel.h
+++ b/sysdeps/aarch64/dl-irel.h
@@ -21,11 +21,26 @@
#define _DL_IREL_H
#include <stdio.h>
-#include <unistd.h>
#include <ldsodefs.h>
-#include <sysdep.h>
#include <sys/ifunc.h>
+#define _IFUNC_ARG_SIZE_VER0 24 /* sizeof 1st published __ifunc_arg_t */
+#define _IFUNC_ARG_SIZE_VER1 40 /* sizeof 2nd published __ifunc_arg_t */
+
+#define sizeof_field(TYPE, MEMBER) sizeof ((((TYPE *)0)->MEMBER))
+#define offsetofend(TYPE, MEMBER) \
+ (offsetof (TYPE, MEMBER) + sizeof_field (TYPE, MEMBER))
+
+_Static_assert (sizeof (__ifunc_arg_t) == _IFUNC_ARG_SIZE_VER1,
+ "sizeof (__ifunc_arg_t) != _IFUNC_ARG_SIZE_VER1");
+
+_Static_assert (_IFUNC_ARG_SIZE_VER1
+ == (_IFUNC_HWCAP_MAX + 1) * sizeof (unsigned long),
+ "_IFUNC_ARG_SIZE_VER1 and _IFUNC_HWCAP_MAX mismatch");
+
+#undef offsetofend
+#undef sizeof_field
+
#define ELF_MACHINE_IRELA 1
static inline ElfW(Addr)
@@ -37,6 +52,8 @@ elf_ifunc_invoke (ElfW(Addr) addr)
arg._size = sizeof (arg);
arg._hwcap = GLRO(dl_hwcap);
arg._hwcap2 = GLRO(dl_hwcap2);
+ arg._hwcap3 = GLRO(dl_hwcap3);
+ arg._hwcap4 = GLRO(dl_hwcap4);
return ((ElfW(Addr) (*) (uint64_t, const __ifunc_arg_t *)) (addr))
(GLRO(dl_hwcap) | _IFUNC_ARG_HWCAP, &arg);
}
diff --git a/sysdeps/aarch64/dl-tlsdesc.S b/sysdeps/aarch64/dl-tlsdesc.S
index fc40d66..2ff8d95 100644
--- a/sysdeps/aarch64/dl-tlsdesc.S
+++ b/sysdeps/aarch64/dl-tlsdesc.S
@@ -74,9 +74,9 @@
cfi_startproc
.align 2
_dl_tlsdesc_return:
- BTI_C
+ bti c
ldr x0, [x0, 8]
- RET
+ ret
cfi_endproc
.size _dl_tlsdesc_return, .-_dl_tlsdesc_return
@@ -95,7 +95,7 @@ _dl_tlsdesc_return:
cfi_startproc
.align 2
_dl_tlsdesc_undefweak:
- BTI_C
+ bti c
str x1, [sp, #-16]!
cfi_adjust_cfa_offset (16)
ldr x0, [x0, 8]
@@ -103,7 +103,7 @@ _dl_tlsdesc_undefweak:
sub x0, x0, x1
ldr x1, [sp], #16
cfi_adjust_cfa_offset (-16)
- RET
+ ret
cfi_endproc
.size _dl_tlsdesc_undefweak, .-_dl_tlsdesc_undefweak
@@ -141,12 +141,8 @@ _dl_tlsdesc_undefweak:
cfi_startproc
.align 2
_dl_tlsdesc_dynamic:
-# if HAVE_AARCH64_PAC_RET
- PACIASP
- cfi_window_save
-# else
- BTI_C
-# endif
+ paciasp
+ cfi_negate_ra_state
/* Save just enough registers to support fast path, if we fall
into slow path we will save additional registers. */
@@ -177,12 +173,10 @@ _dl_tlsdesc_dynamic:
1:
ldp x3, x4, [sp, #16]
ldp x1, x2, [sp], #32
-# if HAVE_AARCH64_PAC_RET
- AUTIASP
- cfi_window_save
-# endif
+ autiasp
+ cfi_negate_ra_state
cfi_adjust_cfa_offset (-32)
- RET
+ ret
2:
/* This is the slow path. We need to call __tls_get_addr() which
means we need to save and restore all the register that the
diff --git a/sysdeps/aarch64/dl-trampoline.S b/sysdeps/aarch64/dl-trampoline.S
index d6bed96..d628b01 100644
--- a/sysdeps/aarch64/dl-trampoline.S
+++ b/sysdeps/aarch64/dl-trampoline.S
@@ -34,7 +34,7 @@
cfi_startproc
.align 2
_dl_runtime_resolve:
- BTI_C
+ bti c
/* AArch64 we get called with:
ip0 &PLTGOT[2]
ip1 temp(dl resolver entry point)
@@ -127,12 +127,8 @@ _dl_runtime_resolve:
cfi_startproc
.align 2
_dl_runtime_profile:
-# if HAVE_AARCH64_PAC_RET
- PACIASP
- cfi_window_save
-# else
- BTI_C
-# endif
+ paciasp
+ cfi_negate_ra_state
/* AArch64 we get called with:
ip0 &PLTGOT[2]
ip1 temp(dl resolver entry point)
@@ -251,17 +247,12 @@ _dl_runtime_profile:
cfi_restore(x29)
cfi_restore(x30)
-# if HAVE_AARCH64_PAC_RET
add sp, sp, SF_SIZE
cfi_adjust_cfa_offset (-SF_SIZE)
- AUTIASP
- cfi_window_save
+ autiasp
+ cfi_negate_ra_state
add sp, sp, 16
cfi_adjust_cfa_offset (-16)
-# else
- add sp, sp, SF_SIZE + 16
- cfi_adjust_cfa_offset (- SF_SIZE - 16)
-# endif
/* Jump to the newly found address. */
br ip0
@@ -321,10 +312,8 @@ _dl_runtime_profile:
/* LR from within La_aarch64_reg */
ldr lr, [x29, #OFFSET_RG + DL_OFFSET_RG_LR]
cfi_restore(lr)
-# if HAVE_AARCH64_PAC_RET
/* Note: LR restored from La_aarch64_reg has no PAC. */
- cfi_window_save
-# endif
+ cfi_negate_ra_state
mov sp, x29
cfi_def_cfa_register (sp)
ldr x29, [x29, #0]
diff --git a/sysdeps/aarch64/fpu/Makefile b/sysdeps/aarch64/fpu/Makefile
index aadedf1..068c11c 100644
--- a/sysdeps/aarch64/fpu/Makefile
+++ b/sysdeps/aarch64/fpu/Makefile
@@ -1,10 +1,14 @@
libmvec-supported-funcs = acos \
acosh \
+ acospi \
asin \
asinh \
+ asinpi \
atan \
atanh \
+ atanpi \
atan2 \
+ atan2pi \
cbrt \
cos \
cosh \
@@ -52,8 +56,11 @@ libmvec-support = $(addsuffix f_advsimd,$(float-advsimd-funcs)) \
v_powf_data
endif
-sve-cflags = -march=armv8-a+sve
+# Enable SVE for building libmvec. Since CFLAGS may contain a -mcpu or -march,
+# add a generic -mcpu and -march with SVE enabled. Also use a tune for a modern
+# SVE core.
+sve-cflags = -mcpu=generic+sve -march=armv8-a+sve -mtune=neoverse-v1
ifeq ($(build-mathvec),yes)
bench-libmvec = $(addprefix float-advsimd-,$(float-advsimd-funcs)) \
diff --git a/sysdeps/aarch64/fpu/Versions b/sysdeps/aarch64/fpu/Versions
index 0f9503f..2980cb7 100644
--- a/sysdeps/aarch64/fpu/Versions
+++ b/sysdeps/aarch64/fpu/Versions
@@ -157,4 +157,26 @@ libmvec {
_ZGVsMxv_tanpi;
_ZGVsMxv_tanpif;
}
+ GLIBC_2.42 {
+ _ZGVnN2v_acospi;
+ _ZGVnN2v_acospif;
+ _ZGVnN4v_acospif;
+ _ZGVsMxv_acospi;
+ _ZGVsMxv_acospif;
+ _ZGVnN2v_asinpi;
+ _ZGVnN2v_asinpif;
+ _ZGVnN4v_asinpif;
+ _ZGVsMxv_asinpi;
+ _ZGVsMxv_asinpif;
+ _ZGVnN2v_atanpi;
+ _ZGVnN2v_atanpif;
+ _ZGVnN4v_atanpif;
+ _ZGVsMxv_atanpi;
+ _ZGVsMxv_atanpif;
+ _ZGVnN2vv_atan2pi;
+ _ZGVnN2vv_atan2pif;
+ _ZGVnN4vv_atan2pif;
+ _ZGVsMxvv_atan2pi;
+ _ZGVsMxvv_atan2pif;
+ }
}
diff --git a/sysdeps/aarch64/fpu/acos_advsimd.c b/sysdeps/aarch64/fpu/acos_advsimd.c
index 7709b54..453f780 100644
--- a/sysdeps/aarch64/fpu/acos_advsimd.c
+++ b/sysdeps/aarch64/fpu/acos_advsimd.c
@@ -18,24 +18,23 @@
<https://www.gnu.org/licenses/>. */
#include "v_math.h"
-#include "poly_advsimd_f64.h"
static const struct data
{
- float64x2_t poly[12];
- float64x2_t pi, pi_over_2;
+ double c1, c3, c5, c7, c9, c11;
+ float64x2_t c0, c2, c4, c6, c8, c10;
uint64x2_t abs_mask;
+ float64x2_t pi, pi_over_2;
} data = {
/* Polynomial approximation of (asin(sqrt(x)) - sqrt(x)) / (x * sqrt(x))
on [ 0x1p-106, 0x1p-2 ], relative error: 0x1.c3d8e169p-57. */
- .poly = { V2 (0x1.555555555554ep-3), V2 (0x1.3333333337233p-4),
- V2 (0x1.6db6db67f6d9fp-5), V2 (0x1.f1c71fbd29fbbp-6),
- V2 (0x1.6e8b264d467d6p-6), V2 (0x1.1c5997c357e9dp-6),
- V2 (0x1.c86a22cd9389dp-7), V2 (0x1.856073c22ebbep-7),
- V2 (0x1.fd1151acb6bedp-8), V2 (0x1.087182f799c1dp-6),
- V2 (-0x1.6602748120927p-7), V2 (0x1.cfa0dd1f9478p-6), },
- .pi = V2 (0x1.921fb54442d18p+1),
- .pi_over_2 = V2 (0x1.921fb54442d18p+0),
+ .c0 = V2 (0x1.555555555554ep-3), .c1 = 0x1.3333333337233p-4,
+ .c2 = V2 (0x1.6db6db67f6d9fp-5), .c3 = 0x1.f1c71fbd29fbbp-6,
+ .c4 = V2 (0x1.6e8b264d467d6p-6), .c5 = 0x1.1c5997c357e9dp-6,
+ .c6 = V2 (0x1.c86a22cd9389dp-7), .c7 = 0x1.856073c22ebbep-7,
+ .c8 = V2 (0x1.fd1151acb6bedp-8), .c9 = 0x1.087182f799c1dp-6,
+ .c10 = V2 (-0x1.6602748120927p-7), .c11 = 0x1.cfa0dd1f9478p-6,
+ .pi = V2 (0x1.921fb54442d18p+1), .pi_over_2 = V2 (0x1.921fb54442d18p+0),
.abs_mask = V2 (0x7fffffffffffffff),
};
@@ -63,7 +62,7 @@ special_case (float64x2_t x, float64x2_t y, uint64x2_t special)
acos(x) ~ pi/2 - (x + x^3 P(x^2)).
- The largest observed error in this region is 1.18 ulps,
+ The largest observed error in this region is 1.18 ulp:
_ZGVnN2v_acos (0x1.fbab0a7c460f6p-2) got 0x1.0d54d1985c068p+0
want 0x1.0d54d1985c069p+0.
@@ -71,9 +70,9 @@ special_case (float64x2_t x, float64x2_t y, uint64x2_t special)
acos(x) = y + y * z * P(z), with z = (1-x)/2 and y = sqrt(z).
- The largest observed error in this region is 1.52 ulps,
- _ZGVnN2v_acos (0x1.23d362722f591p-1) got 0x1.edbbedf8a7d6ep-1
- want 0x1.edbbedf8a7d6cp-1. */
+ The largest observed error in this region is 1.50 ulp:
+ _ZGVnN2v_acos (0x1.252a2cf3fb9acp-1) got 0x1.ec1a46aa82901p-1
+ want 0x1.ec1a46aa829p-1. */
float64x2_t VPCS_ATTR V_NAME_D1 (acos) (float64x2_t x)
{
const struct data *d = ptr_barrier (&data);
@@ -99,13 +98,32 @@ float64x2_t VPCS_ATTR V_NAME_D1 (acos) (float64x2_t x)
float64x2_t z = vbslq_f64 (a_le_half, ax, vsqrtq_f64 (z2));
/* Use a single polynomial approximation P for both intervals. */
+ float64x2_t z3 = vmulq_f64 (z2, z);
float64x2_t z4 = vmulq_f64 (z2, z2);
float64x2_t z8 = vmulq_f64 (z4, z4);
- float64x2_t z16 = vmulq_f64 (z8, z8);
- float64x2_t p = v_estrin_11_f64 (z2, z4, z8, z16, d->poly);
- /* Finalize polynomial: z + z * z2 * P(z2). */
- p = vfmaq_f64 (z, vmulq_f64 (z, z2), p);
+ /* Order-11 Estrin. */
+ float64x2_t c13 = vld1q_f64 (&d->c1);
+ float64x2_t c57 = vld1q_f64 (&d->c5);
+ float64x2_t c911 = vld1q_f64 (&d->c9);
+
+ float64x2_t p01 = vfmaq_laneq_f64 (d->c0, z2, c13, 0);
+ float64x2_t p23 = vfmaq_laneq_f64 (d->c2, z2, c13, 1);
+ float64x2_t p03 = vfmaq_f64 (p01, z4, p23);
+
+ float64x2_t p45 = vfmaq_laneq_f64 (d->c4, z2, c57, 0);
+ float64x2_t p67 = vfmaq_laneq_f64 (d->c6, z2, c57, 1);
+ float64x2_t p47 = vfmaq_f64 (p45, z4, p67);
+
+ float64x2_t p89 = vfmaq_laneq_f64 (d->c8, z2, c911, 0);
+ float64x2_t p1011 = vfmaq_laneq_f64 (d->c10, z2, c911, 1);
+ float64x2_t p811 = vfmaq_f64 (p89, z4, p1011);
+
+ float64x2_t p411 = vfmaq_f64 (p47, z8, p811);
+ float64x2_t p = vfmaq_f64 (p03, z8, p411);
+
+ /* Finalize polynomial: z + z3 * P(z2). */
+ p = vfmaq_f64 (z, z3, p);
/* acos(|x|) = pi/2 - sign(x) * Q(|x|), for |x| < 0.5
= 2 Q(|x|) , for 0.5 < x < 1.0
diff --git a/sysdeps/aarch64/fpu/acos_sve.c b/sysdeps/aarch64/fpu/acos_sve.c
index 74e2f7d..104f0d7 100644
--- a/sysdeps/aarch64/fpu/acos_sve.c
+++ b/sysdeps/aarch64/fpu/acos_sve.c
@@ -18,20 +18,21 @@
<https://www.gnu.org/licenses/>. */
#include "sv_math.h"
-#include "poly_sve_f64.h"
static const struct data
{
- float64_t poly[12];
- float64_t pi, pi_over_2;
+ float64_t c1, c3, c5, c7, c9, c11;
+ float64_t c0, c2, c4, c6, c8, c10;
+ float64_t pi_over_2;
} data = {
/* Polynomial approximation of (asin(sqrt(x)) - sqrt(x)) / (x * sqrt(x))
on [ 0x1p-106, 0x1p-2 ], relative error: 0x1.c3d8e169p-57. */
- .poly = { 0x1.555555555554ep-3, 0x1.3333333337233p-4, 0x1.6db6db67f6d9fp-5,
- 0x1.f1c71fbd29fbbp-6, 0x1.6e8b264d467d6p-6, 0x1.1c5997c357e9dp-6,
- 0x1.c86a22cd9389dp-7, 0x1.856073c22ebbep-7, 0x1.fd1151acb6bedp-8,
- 0x1.087182f799c1dp-6, -0x1.6602748120927p-7, 0x1.cfa0dd1f9478p-6, },
- .pi = 0x1.921fb54442d18p+1,
+ .c0 = 0x1.555555555554ep-3, .c1 = 0x1.3333333337233p-4,
+ .c2 = 0x1.6db6db67f6d9fp-5, .c3 = 0x1.f1c71fbd29fbbp-6,
+ .c4 = 0x1.6e8b264d467d6p-6, .c5 = 0x1.1c5997c357e9dp-6,
+ .c6 = 0x1.c86a22cd9389dp-7, .c7 = 0x1.856073c22ebbep-7,
+ .c8 = 0x1.fd1151acb6bedp-8, .c9 = 0x1.087182f799c1dp-6,
+ .c10 = -0x1.6602748120927p-7, .c11 = 0x1.cfa0dd1f9478p-6,
.pi_over_2 = 0x1.921fb54442d18p+0,
};
@@ -42,20 +43,21 @@ static const struct data
acos(x) ~ pi/2 - (x + x^3 P(x^2)).
- The largest observed error in this region is 1.18 ulps,
- _ZGVsMxv_acos (0x1.fbc5fe28ee9e3p-2) got 0x1.0d4d0f55667f6p+0
- want 0x1.0d4d0f55667f7p+0.
+ The largest observed error in this region is 1.18 ulp:
+ _ZGVsMxv_acos (0x1.fbb7c9079b429p-2) got 0x1.0d51266607582p+0
+ want 0x1.0d51266607583p+0.
For |x| in [0.5, 1.0], use same approximation with a change of variable
acos(x) = y + y * z * P(z), with z = (1-x)/2 and y = sqrt(z).
- The largest observed error in this region is 1.52 ulps,
- _ZGVsMxv_acos (0x1.24024271a500ap-1) got 0x1.ed82df4243f0dp-1
- want 0x1.ed82df4243f0bp-1. */
+ The largest observed error in this region is 1.50 ulp:
+ _ZGVsMxv_acos (0x1.252a2cf3fb9acp-1) got 0x1.ec1a46aa82901p-1
+ want 0x1.ec1a46aa829p-1. */
svfloat64_t SV_NAME_D1 (acos) (svfloat64_t x, const svbool_t pg)
{
const struct data *d = ptr_barrier (&data);
+ svbool_t ptrue = svptrue_b64 ();
svuint64_t sign = svand_x (pg, svreinterpret_u64 (x), 0x8000000000000000);
svfloat64_t ax = svabs_x (pg, x);
@@ -70,24 +72,41 @@ svfloat64_t SV_NAME_D1 (acos) (svfloat64_t x, const svbool_t pg)
svfloat64_t z = svsqrt_m (ax, a_gt_half, z2);
/* Use a single polynomial approximation P for both intervals. */
- svfloat64_t z4 = svmul_x (pg, z2, z2);
- svfloat64_t z8 = svmul_x (pg, z4, z4);
- svfloat64_t z16 = svmul_x (pg, z8, z8);
- svfloat64_t p = sv_estrin_11_f64_x (pg, z2, z4, z8, z16, d->poly);
+ svfloat64_t z3 = svmul_x (ptrue, z2, z);
+ svfloat64_t z4 = svmul_x (ptrue, z2, z2);
+ svfloat64_t z8 = svmul_x (ptrue, z4, z4);
+
+ svfloat64_t c13 = svld1rq (ptrue, &d->c1);
+ svfloat64_t c57 = svld1rq (ptrue, &d->c5);
+ svfloat64_t c911 = svld1rq (ptrue, &d->c9);
+
+ svfloat64_t p01 = svmla_lane (sv_f64 (d->c0), z2, c13, 0);
+ svfloat64_t p23 = svmla_lane (sv_f64 (d->c2), z2, c13, 1);
+ svfloat64_t p03 = svmla_x (pg, p01, z4, p23);
+
+ svfloat64_t p45 = svmla_lane (sv_f64 (d->c4), z2, c57, 0);
+ svfloat64_t p67 = svmla_lane (sv_f64 (d->c6), z2, c57, 1);
+ svfloat64_t p47 = svmla_x (pg, p45, z4, p67);
+
+ svfloat64_t p89 = svmla_lane (sv_f64 (d->c8), z2, c911, 0);
+ svfloat64_t p1011 = svmla_lane (sv_f64 (d->c10), z2, c911, 1);
+ svfloat64_t p811 = svmla_x (pg, p89, z4, p1011);
+
+ svfloat64_t p411 = svmla_x (pg, p47, z8, p811);
+ svfloat64_t p = svmad_x (pg, p411, z8, p03);
/* Finalize polynomial: z + z * z2 * P(z2). */
- p = svmla_x (pg, z, svmul_x (pg, z, z2), p);
+ p = svmad_x (pg, p, z3, z);
/* acos(|x|) = pi/2 - sign(x) * Q(|x|), for |x| < 0.5
= 2 Q(|x|) , for 0.5 < x < 1.0
= pi - 2 Q(|x|) , for -1.0 < x < -0.5. */
- svfloat64_t y
- = svreinterpret_f64 (svorr_x (pg, svreinterpret_u64 (p), sign));
-
- svbool_t is_neg = svcmplt (pg, x, 0.0);
- svfloat64_t off = svdup_f64_z (is_neg, d->pi);
- svfloat64_t mul = svsel (a_gt_half, sv_f64 (2.0), sv_f64 (-1.0));
- svfloat64_t add = svsel (a_gt_half, off, sv_f64 (d->pi_over_2));
-
- return svmla_x (pg, add, mul, y);
+ svfloat64_t mul = svreinterpret_f64 (
+ svlsl_m (a_gt_half, svreinterpret_u64 (sv_f64 (1.0)), 10));
+ mul = svreinterpret_f64 (sveor_x (ptrue, svreinterpret_u64 (mul), sign));
+ svfloat64_t add = svreinterpret_f64 (
+ svorr_x (ptrue, sign, svreinterpret_u64 (sv_f64 (d->pi_over_2))));
+ add = svsub_m (a_gt_half, sv_f64 (d->pi_over_2), add);
+
+ return svmsb_x (pg, p, mul, add);
}
diff --git a/sysdeps/aarch64/fpu/acosh_sve.c b/sysdeps/aarch64/fpu/acosh_sve.c
index 326b2cc..3a84959 100644
--- a/sysdeps/aarch64/fpu/acosh_sve.c
+++ b/sysdeps/aarch64/fpu/acosh_sve.c
@@ -30,10 +30,10 @@ special_case (svfloat64_t x, svfloat64_t y, svbool_t special)
}
/* SVE approximation for double-precision acosh, based on log1p.
- The largest observed error is 3.19 ULP in the region where the
+ The largest observed error is 3.14 ULP in the region where the
argument to log1p falls in the k=0 interval, i.e. x close to 1:
- SV_NAME_D1 (acosh)(0x1.1e4388d4ca821p+0) got 0x1.ed23399f5137p-2
- want 0x1.ed23399f51373p-2. */
+ SV_NAME_D1 (acosh)(0x1.1e80ed12f0ad1p+0) got 0x1.ef0cee7c33ce1p-2
+ want 0x1.ef0cee7c33ce4p-2. */
svfloat64_t SV_NAME_D1 (acosh) (svfloat64_t x, const svbool_t pg)
{
/* (ix - One) >= (BigBound - One). */
diff --git a/sysdeps/aarch64/fpu/acospi_advsimd.c b/sysdeps/aarch64/fpu/acospi_advsimd.c
new file mode 100644
index 0000000..bb6c209
--- /dev/null
+++ b/sysdeps/aarch64/fpu/acospi_advsimd.c
@@ -0,0 +1,118 @@
+/* Double-Precision vector (Advanced SIMD) inverse cospi function
+
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include "v_math.h"
+
+static const struct data
+{
+ float64x2_t c0, c2, c4, c6, c8, c10;
+ uint64x2_t abs_mask;
+ float64x2_t one, inv_pi;
+ double c1, c3, c5, c7, c9, c11;
+} data = {
+ /* Coefficients of polynomial P such that asin(x)/pi~ x/pi + x^3 * poly(x^2)
+ on [ 0x1p-126 0x1p-2 ]. rel error: 0x1.ef9f94b1p-33. Generated using
+ iterative approach for minimisation of relative error in asinpif Sollya
+ file. */
+ .c0 = V2 (0x1.b2995e7b7b5fbp-5), .c1 = 0x1.8723a1d58d83p-6,
+ .c2 = V2 (0x1.d1a452eacf2fep-7), .c3 = 0x1.3ce52c4d75582p-7,
+ .c4 = V2 (0x1.d2b2a0aea27d5p-8), .c5 = 0x1.6a0b9b92cad8bp-8,
+ .c6 = V2 (0x1.2290c84438caep-8), .c7 = 0x1.efba896580d02p-9,
+ .c8 = V2 (0x1.44446707af38p-9), .c9 = 0x1.5070b3e7aa03ep-8,
+ .c10 = V2 (-0x1.c70015d0ebdafp-9), .c11 = 0x1.27029c383fed9p-7,
+ .abs_mask = V2 (0x7fffffffffffffff), .one = V2 (1.0),
+ .inv_pi = V2 (0x1.45f306dc9c883p-2),
+};
+
+/* Double-precision implementation of vector acospi(x).
+
+ For |x| in [0, 0.5], use order-11 polynomial P to approximate asinpi
+ such that the final approximation of acospi is an odd polynomial:
+
+ acospi(x) ~ 1/2 - (x/pi + x^3 P(x^2)).
+
+ The largest observed error in this region is 1.35 ulp:
+ _ZGVnN2v_acospi (0x1.fb16ed35a6d64p-2) got 0x1.5722a3dbcafb4p-2
+ want 0x1.5722a3dbcafb5p-2.
+
+ For |x| in [0.5, 1.0], use same approximation with a change of variable
+
+ acospi(x) = y/pi + y * z * P(z), with z = (1-x)/2 and y = sqrt(z).
+
+ The largest observed error in this region is 2.55 ulp:
+ _ZGVnN2v_acospi (0x1.d90d50357410cp-1) got 0x1.ffd43d5dd3a9ep-4
+ want 0x1.ffd43d5dd3a9bp-4. */
+float64x2_t VPCS_ATTR NOINLINE V_NAME_D1 (acospi) (float64x2_t x)
+{
+ const struct data *d = ptr_barrier (&data);
+
+ uint64x2_t ix = vreinterpretq_u64_f64 (x);
+ uint64x2_t ia = vandq_u64 (ix, d->abs_mask);
+
+ float64x2_t ax = vreinterpretq_f64_u64 (ia);
+ uint64x2_t a_le_half = vcaltq_f64 (x, v_f64 (0.5));
+
+ /* Evaluate polynomial Q(x) = z + z * z2 * P(z2) with
+ z2 = x ^ 2 and z = |x| , if |x| < 0.5
+ z2 = (1 - |x|) / 2 and z = sqrt(z2), if |x| >= 0.5. */
+ float64x2_t z2 = vbslq_f64 (a_le_half, vmulq_f64 (x, x),
+ vfmsq_n_f64 (v_f64 (0.5), ax, 0.5));
+ float64x2_t z = vbslq_f64 (a_le_half, ax, vsqrtq_f64 (z2));
+
+ /* Use a single polynomial approximation P for both intervals. */
+ float64x2_t z4 = vmulq_f64 (z2, z2);
+ float64x2_t z8 = vmulq_f64 (z4, z4);
+
+ /* Order-11 Estrin. */
+ float64x2_t c13 = vld1q_f64 (&d->c1);
+ float64x2_t c57 = vld1q_f64 (&d->c5);
+ float64x2_t c911 = vld1q_f64 (&d->c9);
+
+ float64x2_t p01 = vfmaq_laneq_f64 (d->c0, z2, c13, 0);
+ float64x2_t p23 = vfmaq_laneq_f64 (d->c2, z2, c13, 1);
+ float64x2_t p03 = vfmaq_f64 (p01, z4, p23);
+
+ float64x2_t p45 = vfmaq_laneq_f64 (d->c4, z2, c57, 0);
+ float64x2_t p67 = vfmaq_laneq_f64 (d->c6, z2, c57, 1);
+ float64x2_t p47 = vfmaq_f64 (p45, z4, p67);
+
+ float64x2_t p89 = vfmaq_laneq_f64 (d->c8, z2, c911, 0);
+ float64x2_t p1011 = vfmaq_laneq_f64 (d->c10, z2, c911, 1);
+ float64x2_t p811 = vfmaq_f64 (p89, z4, p1011);
+
+ float64x2_t p411 = vfmaq_f64 (p47, z8, p811);
+ float64x2_t p = vfmaq_f64 (p03, z8, p411);
+
+ /* Finalize polynomial: z + z * z2 * P(z2). */
+ p = vfmaq_f64 (d->inv_pi, z2, p);
+ p = vmulq_f64 (p, z);
+
+ /* acospi(|x|)
+ = 1/2 - sign(x) * Q(|x|), for |x| < 0.5
+ = 2 Q(|x|) , for 0.5 < x < 1.0
+ = 1 - 2 Q(|x|) , for -1.0 < x < -0.5. */
+ float64x2_t y = vbslq_f64 (d->abs_mask, p, x);
+ uint64x2_t is_neg = vcltzq_f64 (x);
+ float64x2_t off = vreinterpretq_f64_u64 (
+ vandq_u64 (is_neg, vreinterpretq_u64_f64 (d->one)));
+ float64x2_t mul = vbslq_f64 (a_le_half, d->one, v_f64 (-2.0));
+ float64x2_t add = vbslq_f64 (a_le_half, v_f64 (0.5), off);
+
+ return vfmsq_f64 (add, mul, y);
+}
diff --git a/sysdeps/aarch64/fpu/acospi_sve.c b/sysdeps/aarch64/fpu/acospi_sve.c
new file mode 100644
index 0000000..e41eaad
--- /dev/null
+++ b/sysdeps/aarch64/fpu/acospi_sve.c
@@ -0,0 +1,112 @@
+/* Double-Precision vector (SVE) inverse cospi function
+
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include "sv_math.h"
+
+static const struct data
+{
+ float64_t c1, c3, c5, c7, c9, c11;
+ float64_t c0, c2, c4, c6, c8, c10;
+ float64_t inv_pi, half;
+} data = {
+ /* Coefficients of polynomial P such that asin(x)/pi~ x/pi + x^3 * poly(x^2)
+ on [ 0x1p-126 0x1p-2 ]. rel error: 0x1.ef9f94b1p-33. Generated using
+ iterative approach for minimisation of relative error in asinpif Sollya
+ file. */
+ .c0 = 0x1.b2995e7b7b5fbp-5, .c1 = 0x1.8723a1d58d83p-6,
+ .c2 = 0x1.d1a452eacf2fep-7, .c3 = 0x1.3ce52c4d75582p-7,
+ .c4 = 0x1.d2b2a0aea27d5p-8, .c5 = 0x1.6a0b9b92cad8bp-8,
+ .c6 = 0x1.2290c84438caep-8, .c7 = 0x1.efba896580d02p-9,
+ .c8 = 0x1.44446707af38p-9, .c9 = 0x1.5070b3e7aa03ep-8,
+ .c10 = -0x1.c70015d0ebdafp-9, .c11 = 0x1.27029c383fed9p-7,
+ .inv_pi = 0x1.45f306dc9c883p-2, .half = 0.5,
+};
+
+/* Double-precision SVE implementation of vector acospi(x).
+
+ For |x| in [0, 0.5], use order 11 polynomial P to approximate asinpi
+ such that the final approximation of acospi is:
+
+ acospi(x) ~ 1/2 - (x/pi + x^3 P(x^2)).
+
+ The largest observed error in this region is 1.35 ulp:
+ _ZGVsMxv_acospi (0x1.fb014996aea18p-2) got 0x1.572a91755bbf6p-2
+ want 0x1.572a91755bbf7p-2.
+
+ For |x| in [0.5, 1.0], use same approximation with a change of variable
+
+ acospi(x) = y/pi + y * z * P(z), with z = (1-x)/2 and y = sqrt(z).
+
+ The largest observed error in this region is 2.55 ulp:
+ _ZGVsMxv_acospi(0x1.d90d50357410cp-1) got 0x1.ffd43d5dd3a9ep-4
+ want 0x1.ffd43d5dd3a9bp-4. */
+svfloat64_t SV_NAME_D1 (acospi) (svfloat64_t x, const svbool_t pg)
+{
+ const struct data *d = ptr_barrier (&data);
+ svbool_t ptrue = svptrue_b64 ();
+
+ svuint64_t sign = svand_x (pg, svreinterpret_u64 (x), 0x8000000000000000);
+ svfloat64_t ax = svabs_x (pg, x);
+ svbool_t a_gt_half = svacgt (pg, x, 0.5f);
+
+ /* Evaluate polynomial Q(x) = z + z * z2 * P(z2) with
+ z2 = x ^ 2 and z = |x| , if |x| < 0.5
+ z2 = (1 - |x|) / 2 and z = sqrt(z2), if |x| >= 0.5. */
+ svfloat64_t z2 = svsel (a_gt_half, svmls_x (pg, sv_f64 (0.5), ax, 0.5),
+ svmul_x (ptrue, x, x));
+ svfloat64_t z = svsqrt_m (ax, a_gt_half, z2);
+
+ /* Order-11 Estrin. */
+ svfloat64_t z4 = svmul_x (ptrue, z2, z2);
+ svfloat64_t z8 = svmul_x (ptrue, z4, z4);
+
+ svfloat64_t c13 = svld1rq (ptrue, &d->c1);
+ svfloat64_t c57 = svld1rq (ptrue, &d->c5);
+ svfloat64_t c911 = svld1rq (ptrue, &d->c9);
+
+ svfloat64_t p01 = svmla_lane (sv_f64 (d->c0), z2, c13, 0);
+ svfloat64_t p23 = svmla_lane (sv_f64 (d->c2), z2, c13, 1);
+ svfloat64_t p03 = svmla_x (pg, p01, z4, p23);
+
+ svfloat64_t p45 = svmla_lane (sv_f64 (d->c4), z2, c57, 0);
+ svfloat64_t p67 = svmla_lane (sv_f64 (d->c6), z2, c57, 1);
+ svfloat64_t p47 = svmla_x (pg, p45, z4, p67);
+
+ svfloat64_t p89 = svmla_lane (sv_f64 (d->c8), z2, c911, 0);
+ svfloat64_t p1011 = svmla_lane (sv_f64 (d->c10), z2, c911, 1);
+ svfloat64_t p811 = svmla_x (pg, p89, z4, p1011);
+
+ svfloat64_t p411 = svmla_x (pg, p47, z8, p811);
+ svfloat64_t p = svmla_x (pg, p03, z8, p411);
+
+ p = svmla_x (pg, sv_f64 (d->inv_pi), z2, p);
+ p = svmul_x (ptrue, p, z);
+
+ /* acospi(|x|) = 1/2 - sign(x) * Q(|x|), for |x| < 0.5
+ = 2 Q(|x|) , for 0.5 < x < 1.0
+ = 1 - 2 Q(|x|) , for -1.0 < x < -0.5. */
+ svfloat64_t mul = svreinterpret_f64 (
+ svlsl_m (a_gt_half, svreinterpret_u64 (sv_f64 (1.0)), 10));
+ mul = svreinterpret_f64 (sveor_x (ptrue, svreinterpret_u64 (mul), sign));
+ svfloat64_t add = svreinterpret_f64 (
+ svorr_x (ptrue, sign, svreinterpret_u64 (sv_f64 (d->half))));
+ add = svsub_m (a_gt_half, sv_f64 (d->half), add);
+
+ return svmsb_x (pg, p, mul, add);
+}
diff --git a/sysdeps/aarch64/fpu/acospif_advsimd.c b/sysdeps/aarch64/fpu/acospif_advsimd.c
new file mode 100644
index 0000000..8486b62
--- /dev/null
+++ b/sysdeps/aarch64/fpu/acospif_advsimd.c
@@ -0,0 +1,106 @@
+/* Single-Precision vector (Advanced SIMD) inverse cospi function
+
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include "v_math.h"
+
+static const struct data
+{
+ float32x4_t c0, c2, c4, inv_pi;
+ float c1, c3, c5, null;
+} data = {
+ /* Coefficients of polynomial P such that asin(x)/pi~ x/pi + x^3 * poly(x^2)
+ on [ 0x1p-126 0x1p-2 ]. rel error: 0x1.ef9f94b1p-33. Generated using
+ iterative approach for minimisation of relative error in asinpif Sollya
+ file. */
+ .c0 = V4 (0x1.b2995ep-5f), .c1 = 0x1.8724ep-6f,
+ .c2 = V4 (0x1.d1301ep-7f), .c3 = 0x1.446d3cp-7f,
+ .c4 = V4 (0x1.654848p-8f), .c5 = 0x1.5fdaa8p-7f,
+ .inv_pi = V4 (0x1.45f306p-2f),
+};
+
+#define AbsMask 0x7fffffff
+
+/* Single-precision implementation of vector acospi(x).
+
+ For |x| in [0, 0.5], use order 5 polynomial P to approximate asinpi
+ such that the final approximation of acospi is an odd polynomial:
+
+ acospi(x) ~ 1/2 - (x/pi + x^3 P(x^2)).
+
+ The largest observed error in this region is 1.23 ulps,
+ _ZGVnN4v_acospif (0x1.fee13ep-2) got 0x1.55beb4p-2 want 0x1.55beb2p-2.
+
+ For |x| in [0.5, 1.0], use same approximation with a change of variable
+
+ acospi(x) = y/pi + y * z * P(z), with z = (1-x)/2 and y = sqrt(z).
+
+ The largest observed error in this region is 2.53 ulps,
+ _ZGVnN4v_acospif (0x1.6ad644p-1) got 0x1.fe8f96p-3
+ want 0x1.fe8f9cp-3. */
+float32x4_t VPCS_ATTR NOINLINE V_NAME_F1 (acospi) (float32x4_t x)
+{
+ const struct data *d = ptr_barrier (&data);
+
+ uint32x4_t ix = vreinterpretq_u32_f32 (x);
+ uint32x4_t ia = vandq_u32 (ix, v_u32 (AbsMask));
+
+ float32x4_t ax = vreinterpretq_f32_u32 (ia);
+ uint32x4_t a_le_half = vcaltq_f32 (x, v_f32 (0.5f));
+
+ /* Evaluate polynomial Q(x) = z + z * z2 * P(z2) with
+ z2 = x ^ 2 and z = |x| , if |x| < 0.5
+ z2 = (1 - |x|) / 2 and z = sqrt(z2), if |x| >= 0.5. */
+
+ float32x4_t z2 = vbslq_f32 (a_le_half, vmulq_f32 (x, x),
+ vfmsq_n_f32 (v_f32 (0.5f), ax, 0.5f));
+ float32x4_t z = vbslq_f32 (a_le_half, ax, vsqrtq_f32 (z2));
+
+ /* Use a single polynomial approximation P for both intervals. */
+
+ /* Order-5 Estrin evaluation scheme. */
+ float32x4_t z4 = vmulq_f32 (z2, z2);
+ float32x4_t z8 = vmulq_f32 (z4, z4);
+ float32x4_t c135 = vld1q_f32 (&d->c1);
+ float32x4_t p01 = vfmaq_laneq_f32 (d->c0, z2, c135, 0);
+ float32x4_t p23 = vfmaq_laneq_f32 (d->c2, z2, c135, 1);
+ float32x4_t p03 = vfmaq_f32 (p01, z4, p23);
+ float32x4_t p45 = vfmaq_laneq_f32 (d->c4, z2, c135, 2);
+ float32x4_t p = vfmaq_f32 (p03, z8, p45);
+ /* Add 1/pi as final coeff. */
+ p = vfmaq_f32 (d->inv_pi, z2, p);
+
+ /* Finalize polynomial: z * P(z^2). */
+ p = vmulq_f32 (z, p);
+
+ /* acospi(|x|)
+ = 1/2 - sign(x) * Q(|x|), for |x| < 0.5
+ = 2 Q(|x|) , for 0.5 < x < 1.0
+ = 1 - 2 Q(|x|) , for -1.0 < x < -0.5. */
+
+ float32x4_t y = vbslq_f32 (v_u32 (AbsMask), p, x);
+ uint32x4_t is_neg = vcltzq_f32 (x);
+ float32x4_t off = vreinterpretq_f32_u32 (
+ vandq_u32 (vreinterpretq_u32_f32 (v_f32 (1.0f)), is_neg));
+ float32x4_t mul = vbslq_f32 (a_le_half, v_f32 (1.0f), v_f32 (-2.0f));
+ float32x4_t add = vbslq_f32 (a_le_half, v_f32 (0.5f), off);
+
+ return vfmsq_f32 (add, mul, y);
+}
+libmvec_hidden_def (V_NAME_F1 (acospi))
+HALF_WIDTH_ALIAS_F1 (acospi)
diff --git a/sysdeps/aarch64/fpu/acospif_sve.c b/sysdeps/aarch64/fpu/acospif_sve.c
new file mode 100644
index 0000000..ea4fc4a
--- /dev/null
+++ b/sysdeps/aarch64/fpu/acospif_sve.c
@@ -0,0 +1,91 @@
+/* Single-Precision vector (SVE) inverse cospi function
+
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include "sv_math.h"
+
+static const struct data
+{
+ float32_t c0, c1, c2, c3, c4, inv_pi, half;
+} data = {
+ /* Coefficients of polynomial P such that asin(x)/pi~ x/pi + x^3 * poly(x^2)
+ on [ 0x1p-126 0x1p-2 ]. rel error: 0x1.ef9f94b1p-33. Generated using
+ iterative approach for minimisation of relative error. */
+ .c0 = 0x1.b29968p-5f, .c1 = 0x1.871424p-6f, .c2 = 0x1.d56e44p-7f,
+ .c3 = 0x1.149bb8p-7f, .c4 = 0x1.8e07fep-7f, .inv_pi = 0x1.45f306p-2f,
+ .half = 0.5f,
+};
+
+/* Single-precision SVE implementation of vector acospi(x).
+
+ For |x| in [0, 0.5], use order 5 polynomial P to approximate asinpi
+ such that the final approximation of acospi is:
+
+ acospi(x) ~ 1/2 - (x/pi + x^3 P(x^2)).
+
+ The largest observed error in this region is 1.3 ulps,
+ _ZGVsMxv_acospif(0x1.ffa9d2p-2) got 0x1.557504p-2
+ want 0x1.557502p-2.
+
+ For |x| in [0.5, 1.0], use same approximation with a change of variable
+
+ acospi(x) = y/pi + y * z * P(z), with z = (1-x)/2 and y = sqrt(z).
+
+ The largest observed error in this region is 2.61 ulps,
+ _ZGVsMxv_acospif (0x1.6b232ep-1) got 0x1.fe04bap-3
+ want 0x1.fe04cp-3. */
+svfloat32_t SV_NAME_F1 (acospi) (svfloat32_t x, const svbool_t pg)
+{
+ const struct data *d = ptr_barrier (&data);
+
+ svbool_t ptrue = svptrue_b32 ();
+
+ svuint32_t sign = svand_x (pg, svreinterpret_u32 (x), 0x80000000);
+ svfloat32_t ax = svabs_x (pg, x);
+ svbool_t a_gt_half = svacgt (pg, x, 0.5f);
+
+ /* Evaluate polynomial Q(x) = z + z * z2 * P(z2) with
+ z2 = x ^ 2 and z = |x| , if |x| < 0.5
+ z2 = (1 - |x|) / 2 and z = sqrt(z2), if |x| >= 0.5. */
+ svfloat32_t z2 = svsel (a_gt_half, svmls_x (pg, sv_f32 (0.5f), ax, 0.5f),
+ svmul_x (ptrue, x, x));
+ svfloat32_t z = svsqrt_m (ax, a_gt_half, z2);
+
+ /* Use a single polynomial approximation P for both intervals. */
+ svfloat32_t p = svmla_x (pg, sv_f32 (d->c3), z2, d->c4);
+ p = svmad_x (pg, z2, p, d->c2);
+ p = svmad_x (pg, z2, p, d->c1);
+ p = svmad_x (pg, z2, p, d->c0);
+ /* Add 1/pi as final coeff. */
+ p = svmla_x (pg, sv_f32 (d->inv_pi), z2, p);
+ /* Finalize polynomial: z * P(z^2). */
+ p = svmul_x (ptrue, z, p);
+
+ /* acospi(|x|)
+ = 1/2 - sign(x) * Q(|x|), for |x| < 0.5
+ = 2 Q(|x|) , for 0.5 < x < 1.0
+ = 1 - 2 Q(|x|) , for -1.0 < x < -0.5. */
+ svfloat32_t y
+ = svreinterpret_f32 (svorr_x (ptrue, svreinterpret_u32 (p), sign));
+ svfloat32_t mul = svsel (a_gt_half, sv_f32 (2.0f), sv_f32 (-1.0f));
+ svfloat32_t add = svreinterpret_f32 (
+ svorr_x (ptrue, sign, svreinterpret_u32 (sv_f32 (d->half))));
+ add = svsub_m (a_gt_half, sv_f32 (d->half), add);
+
+ return svmad_x (pg, y, mul, add);
+}
diff --git a/sysdeps/aarch64/fpu/advsimd_f32_protos.h b/sysdeps/aarch64/fpu/advsimd_f32_protos.h
index 38681a4..c202bda 100644
--- a/sysdeps/aarch64/fpu/advsimd_f32_protos.h
+++ b/sysdeps/aarch64/fpu/advsimd_f32_protos.h
@@ -19,10 +19,13 @@
libmvec_hidden_proto (V_NAME_F1(acos));
libmvec_hidden_proto (V_NAME_F1(acosh));
+libmvec_hidden_proto (V_NAME_F1(acospi));
libmvec_hidden_proto (V_NAME_F1(asin));
libmvec_hidden_proto (V_NAME_F1(asinh));
+libmvec_hidden_proto (V_NAME_F1(asinpi));
libmvec_hidden_proto (V_NAME_F1(atan));
libmvec_hidden_proto (V_NAME_F1(atanh));
+libmvec_hidden_proto (V_NAME_F1(atanpi));
libmvec_hidden_proto (V_NAME_F1(cbrt));
libmvec_hidden_proto (V_NAME_F1(cos));
libmvec_hidden_proto (V_NAME_F1(cosh));
@@ -47,3 +50,4 @@ libmvec_hidden_proto (V_NAME_F1(tan));
libmvec_hidden_proto (V_NAME_F1(tanh));
libmvec_hidden_proto (V_NAME_F1(tanpi));
libmvec_hidden_proto (V_NAME_F2(atan2));
+libmvec_hidden_proto (V_NAME_F2(atan2pi));
diff --git a/sysdeps/aarch64/fpu/asin_advsimd.c b/sysdeps/aarch64/fpu/asin_advsimd.c
index 4142116..f74141c 100644
--- a/sysdeps/aarch64/fpu/asin_advsimd.c
+++ b/sysdeps/aarch64/fpu/asin_advsimd.c
@@ -18,24 +18,23 @@
<https://www.gnu.org/licenses/>. */
#include "v_math.h"
-#include "poly_advsimd_f64.h"
static const struct data
{
- float64x2_t poly[12];
+ float64x2_t c0, c2, c4, c6, c8, c10;
float64x2_t pi_over_2;
uint64x2_t abs_mask;
+ double c1, c3, c5, c7, c9, c11;
} data = {
/* Polynomial approximation of (asin(sqrt(x)) - sqrt(x)) / (x * sqrt(x))
on [ 0x1p-106, 0x1p-2 ], relative error: 0x1.c3d8e169p-57. */
- .poly = { V2 (0x1.555555555554ep-3), V2 (0x1.3333333337233p-4),
- V2 (0x1.6db6db67f6d9fp-5), V2 (0x1.f1c71fbd29fbbp-6),
- V2 (0x1.6e8b264d467d6p-6), V2 (0x1.1c5997c357e9dp-6),
- V2 (0x1.c86a22cd9389dp-7), V2 (0x1.856073c22ebbep-7),
- V2 (0x1.fd1151acb6bedp-8), V2 (0x1.087182f799c1dp-6),
- V2 (-0x1.6602748120927p-7), V2 (0x1.cfa0dd1f9478p-6), },
- .pi_over_2 = V2 (0x1.921fb54442d18p+0),
- .abs_mask = V2 (0x7fffffffffffffff),
+ .c0 = V2 (0x1.555555555554ep-3), .c1 = 0x1.3333333337233p-4,
+ .c2 = V2 (0x1.6db6db67f6d9fp-5), .c3 = 0x1.f1c71fbd29fbbp-6,
+ .c4 = V2 (0x1.6e8b264d467d6p-6), .c5 = 0x1.1c5997c357e9dp-6,
+ .c6 = V2 (0x1.c86a22cd9389dp-7), .c7 = 0x1.856073c22ebbep-7,
+ .c8 = V2 (0x1.fd1151acb6bedp-8), .c9 = 0x1.087182f799c1dp-6,
+ .c10 = V2 (-0x1.6602748120927p-7), .c11 = 0x1.cfa0dd1f9478p-6,
+ .pi_over_2 = V2 (0x1.921fb54442d18p+0), .abs_mask = V2 (0x7fffffffffffffff),
};
#define AllMask v_u64 (0xffffffffffffffff)
@@ -68,8 +67,8 @@ special_case (float64x2_t x, float64x2_t y, uint64x2_t special)
asin(x) = pi/2 - (y + y * z * P(z)), with z = (1-x)/2 and y = sqrt(z).
The largest observed error in this region is 2.69 ulps,
- _ZGVnN2v_asin (0x1.044ac9819f573p-1) got 0x1.110d7e85fdd5p-1
- want 0x1.110d7e85fdd53p-1. */
+ _ZGVnN2v_asin (0x1.044e8cefee301p-1) got 0x1.1111dd54ddf96p-1
+ want 0x1.1111dd54ddf99p-1. */
float64x2_t VPCS_ATTR V_NAME_D1 (asin) (float64x2_t x)
{
const struct data *d = ptr_barrier (&data);
@@ -86,7 +85,7 @@ float64x2_t VPCS_ATTR V_NAME_D1 (asin) (float64x2_t x)
return special_case (x, x, AllMask);
#endif
- uint64x2_t a_lt_half = vcltq_f64 (ax, v_f64 (0.5));
+ uint64x2_t a_lt_half = vcaltq_f64 (x, v_f64 (0.5));
/* Evaluate polynomial Q(x) = y + y * z * P(z) with
z = x ^ 2 and y = |x| , if |x| < 0.5
@@ -99,7 +98,26 @@ float64x2_t VPCS_ATTR V_NAME_D1 (asin) (float64x2_t x)
float64x2_t z4 = vmulq_f64 (z2, z2);
float64x2_t z8 = vmulq_f64 (z4, z4);
float64x2_t z16 = vmulq_f64 (z8, z8);
- float64x2_t p = v_estrin_11_f64 (z2, z4, z8, z16, d->poly);
+
+ /* order-11 estrin. */
+ float64x2_t c13 = vld1q_f64 (&d->c1);
+ float64x2_t c57 = vld1q_f64 (&d->c5);
+ float64x2_t c911 = vld1q_f64 (&d->c9);
+
+ float64x2_t p01 = vfmaq_laneq_f64 (d->c0, z2, c13, 0);
+ float64x2_t p23 = vfmaq_laneq_f64 (d->c2, z2, c13, 1);
+ float64x2_t p03 = vfmaq_f64 (p01, z4, p23);
+
+ float64x2_t p45 = vfmaq_laneq_f64 (d->c4, z2, c57, 0);
+ float64x2_t p67 = vfmaq_laneq_f64 (d->c6, z2, c57, 1);
+ float64x2_t p47 = vfmaq_f64 (p45, z4, p67);
+
+ float64x2_t p89 = vfmaq_laneq_f64 (d->c8, z2, c911, 0);
+ float64x2_t p1011 = vfmaq_laneq_f64 (d->c10, z2, c911, 1);
+ float64x2_t p811 = vfmaq_f64 (p89, z4, p1011);
+
+ float64x2_t p07 = vfmaq_f64 (p03, z8, p47);
+ float64x2_t p = vfmaq_f64 (p07, z16, p811);
/* Finalize polynomial: z + z * z2 * P(z2). */
p = vfmaq_f64 (z, vmulq_f64 (z, z2), p);
diff --git a/sysdeps/aarch64/fpu/asin_sve.c b/sysdeps/aarch64/fpu/asin_sve.c
index 9314466..975f408 100644
--- a/sysdeps/aarch64/fpu/asin_sve.c
+++ b/sysdeps/aarch64/fpu/asin_sve.c
@@ -18,45 +18,43 @@
<https://www.gnu.org/licenses/>. */
#include "sv_math.h"
-#include "poly_sve_f64.h"
static const struct data
{
- float64_t poly[12];
- float64_t pi_over_2f;
+ float64_t c1, c3, c5, c7, c9, c11;
+ float64_t c0, c2, c4, c6, c8, c10;
+ float64_t pi_over_2;
} data = {
/* Polynomial approximation of (asin(sqrt(x)) - sqrt(x)) / (x * sqrt(x))
on [ 0x1p-106, 0x1p-2 ], relative error: 0x1.c3d8e169p-57. */
- .poly = { 0x1.555555555554ep-3, 0x1.3333333337233p-4,
- 0x1.6db6db67f6d9fp-5, 0x1.f1c71fbd29fbbp-6,
- 0x1.6e8b264d467d6p-6, 0x1.1c5997c357e9dp-6,
- 0x1.c86a22cd9389dp-7, 0x1.856073c22ebbep-7,
- 0x1.fd1151acb6bedp-8, 0x1.087182f799c1dp-6,
- -0x1.6602748120927p-7, 0x1.cfa0dd1f9478p-6, },
- .pi_over_2f = 0x1.921fb54442d18p+0,
+ .c0 = 0x1.555555555554ep-3, .c1 = 0x1.3333333337233p-4,
+ .c2 = 0x1.6db6db67f6d9fp-5, .c3 = 0x1.f1c71fbd29fbbp-6,
+ .c4 = 0x1.6e8b264d467d6p-6, .c5 = 0x1.1c5997c357e9dp-6,
+ .c6 = 0x1.c86a22cd9389dp-7, .c7 = 0x1.856073c22ebbep-7,
+ .c8 = 0x1.fd1151acb6bedp-8, .c9 = 0x1.087182f799c1dp-6,
+ .c10 = -0x1.6602748120927p-7, .c11 = 0x1.cfa0dd1f9478p-6,
+ .pi_over_2 = 0x1.921fb54442d18p+0,
};
-#define P(i) sv_f64 (d->poly[i])
-
/* Double-precision SVE implementation of vector asin(x).
For |x| in [0, 0.5], use an order 11 polynomial P such that the final
approximation is an odd polynomial: asin(x) ~ x + x^3 P(x^2).
- The largest observed error in this region is 0.52 ulps,
- _ZGVsMxv_asin(0x1.d95ae04998b6cp-2) got 0x1.ec13757305f27p-2
- want 0x1.ec13757305f26p-2.
-
- For |x| in [0.5, 1.0], use same approximation with a change of variable
+ The largest observed error in this region is 0.98 ulp:
+ _ZGVsMxv_asin (0x1.d98f6a748ed8ap-2) got 0x1.ec4eb661a73d3p-2
+ want 0x1.ec4eb661a73d2p-2.
- asin(x) = pi/2 - (y + y * z * P(z)), with z = (1-x)/2 and y = sqrt(z).
+ For |x| in [0.5, 1.0], use same approximation with a change of variable:
+ asin(x) = pi/2 - (y + y * z * P(z)), with z = (1-x)/2 and y = sqrt(z).
- The largest observed error in this region is 2.69 ulps,
- _ZGVsMxv_asin(0x1.044ac9819f573p-1) got 0x1.110d7e85fdd5p-1
- want 0x1.110d7e85fdd53p-1. */
+ The largest observed error in this region is 2.66 ulp:
+ _ZGVsMxv_asin (0x1.04024f6e2a2fbp-1) got 0x1.10b9586f087a8p-1
+ want 0x1.10b9586f087abp-1. */
svfloat64_t SV_NAME_D1 (asin) (svfloat64_t x, const svbool_t pg)
{
const struct data *d = ptr_barrier (&data);
+ svbool_t ptrue = svptrue_b64 ();
svuint64_t sign = svand_x (pg, svreinterpret_u64 (x), 0x8000000000000000);
svfloat64_t ax = svabs_x (pg, x);
@@ -70,17 +68,37 @@ svfloat64_t SV_NAME_D1 (asin) (svfloat64_t x, const svbool_t pg)
svfloat64_t z = svsqrt_m (ax, a_ge_half, z2);
/* Use a single polynomial approximation P for both intervals. */
+ svfloat64_t z3 = svmul_x (pg, z2, z);
svfloat64_t z4 = svmul_x (pg, z2, z2);
svfloat64_t z8 = svmul_x (pg, z4, z4);
- svfloat64_t z16 = svmul_x (pg, z8, z8);
- svfloat64_t p = sv_estrin_11_f64_x (pg, z2, z4, z8, z16, d->poly);
+
+ svfloat64_t c13 = svld1rq (ptrue, &d->c1);
+ svfloat64_t c57 = svld1rq (ptrue, &d->c5);
+ svfloat64_t c911 = svld1rq (ptrue, &d->c9);
+
+ /* Order-11 Estrin scheme. */
+ svfloat64_t p01 = svmla_lane (sv_f64 (d->c0), z2, c13, 0);
+ svfloat64_t p23 = svmla_lane (sv_f64 (d->c2), z2, c13, 1);
+ svfloat64_t p03 = svmla_x (pg, p01, z4, p23);
+
+ svfloat64_t p45 = svmla_lane (sv_f64 (d->c4), z2, c57, 0);
+ svfloat64_t p67 = svmla_lane (sv_f64 (d->c6), z2, c57, 1);
+ svfloat64_t p47 = svmla_x (pg, p45, z4, p67);
+
+ svfloat64_t p89 = svmla_lane (sv_f64 (d->c8), z2, c911, 0);
+ svfloat64_t p1011 = svmla_lane (sv_f64 (d->c10), z2, c911, 1);
+ svfloat64_t p811 = svmla_x (pg, p89, z4, p1011);
+
+ svfloat64_t p411 = svmla_x (pg, p47, z8, p811);
+ svfloat64_t p = svmla_x (pg, p03, z8, p411);
+
/* Finalize polynomial: z + z * z2 * P(z2). */
- p = svmla_x (pg, z, svmul_x (pg, z, z2), p);
+ p = svmla_x (pg, z, z3, p);
- /* asin(|x|) = Q(|x|) , for |x| < 0.5
- = pi/2 - 2 Q(|x|), for |x| >= 0.5. */
- svfloat64_t y = svmad_m (a_ge_half, p, sv_f64 (-2.0), d->pi_over_2f);
+ /* asin(|x|) = Q(|x|), for |x| < 0.5
+ = pi/2 - 2 Q(|x|), for |x| >= 0.5. */
+ svfloat64_t y = svmad_m (a_ge_half, p, sv_f64 (-2.0), d->pi_over_2);
- /* Copy sign. */
+ /* Reinsert the sign from the argument. */
return svreinterpret_f64 (svorr_x (pg, svreinterpret_u64 (y), sign));
}
diff --git a/sysdeps/aarch64/fpu/asinf_advsimd.c b/sysdeps/aarch64/fpu/asinf_advsimd.c
index 52c7c0e..013936c 100644
--- a/sysdeps/aarch64/fpu/asinf_advsimd.c
+++ b/sysdeps/aarch64/fpu/asinf_advsimd.c
@@ -18,22 +18,21 @@
<https://www.gnu.org/licenses/>. */
#include "v_math.h"
-#include "poly_advsimd_f32.h"
static const struct data
{
- float32x4_t poly[5];
+ float32x4_t c0, c2, c4;
+ float c1, c3;
float32x4_t pi_over_2f;
} data = {
/* Polynomial approximation of (asin(sqrt(x)) - sqrt(x)) / (x * sqrt(x)) on
[ 0x1p-24 0x1p-2 ] order = 4 rel error: 0x1.00a23bbp-29 . */
- .poly = { V4 (0x1.55555ep-3), V4 (0x1.33261ap-4), V4 (0x1.70d7dcp-5),
- V4 (0x1.b059dp-6), V4 (0x1.3af7d8p-5) },
- .pi_over_2f = V4 (0x1.921fb6p+0f),
+ .c0 = V4 (0x1.55555ep-3f), .c1 = 0x1.33261ap-4f,
+ .c2 = V4 (0x1.70d7dcp-5f), .c3 = 0x1.b059dp-6f,
+ .c4 = V4 (0x1.3af7d8p-5f), .pi_over_2f = V4 (0x1.921fb6p+0f),
};
#define AbsMask 0x7fffffff
-#define Half 0x3f000000
#define One 0x3f800000
#define Small 0x39800000 /* 2^-12. */
@@ -47,11 +46,8 @@ special_case (float32x4_t x, float32x4_t y, uint32x4_t special)
/* Single-precision implementation of vector asin(x).
- For |x| < Small, approximate asin(x) by x. Small = 2^-12 for correct
- rounding. If WANT_SIMD_EXCEPT = 0, Small = 0 and we proceed with the
- following approximation.
- For |x| in [Small, 0.5], use order 4 polynomial P such that the final
+ For |x| <0.5, use order 4 polynomial P such that the final
approximation is an odd polynomial: asin(x) ~ x + x^3 P(x^2).
The largest observed error in this region is 0.83 ulps,
@@ -80,24 +76,31 @@ float32x4_t VPCS_ATTR NOINLINE V_NAME_F1 (asin) (float32x4_t x)
#endif
float32x4_t ax = vreinterpretq_f32_u32 (ia);
- uint32x4_t a_lt_half = vcltq_u32 (ia, v_u32 (Half));
+ uint32x4_t a_lt_half = vcaltq_f32 (x, v_f32 (0.5f));
/* Evaluate polynomial Q(x) = y + y * z * P(z) with
z = x ^ 2 and y = |x| , if |x| < 0.5
z = (1 - |x|) / 2 and y = sqrt(z), if |x| >= 0.5. */
float32x4_t z2 = vbslq_f32 (a_lt_half, vmulq_f32 (x, x),
- vfmsq_n_f32 (v_f32 (0.5), ax, 0.5));
+ vfmsq_n_f32 (v_f32 (0.5f), ax, 0.5f));
float32x4_t z = vbslq_f32 (a_lt_half, ax, vsqrtq_f32 (z2));
/* Use a single polynomial approximation P for both intervals. */
- float32x4_t p = v_horner_4_f32 (z2, d->poly);
+
+ /* PW Horner 3 evaluation scheme. */
+ float32x4_t z4 = vmulq_f32 (z2, z2);
+ float32x4_t c13 = vld1q_f32 (&d->c1);
+ float32x4_t p01 = vfmaq_laneq_f32 (d->c0, z2, c13, 0);
+ float32x4_t p23 = vfmaq_laneq_f32 (d->c2, z2, c13, 1);
+ float32x4_t p = vfmaq_f32 (p23, d->c4, z4);
+ p = vfmaq_f32 (p01, p, z4);
/* Finalize polynomial: z + z * z2 * P(z2). */
p = vfmaq_f32 (z, vmulq_f32 (z, z2), p);
/* asin(|x|) = Q(|x|) , for |x| < 0.5
= pi/2 - 2 Q(|x|), for |x| >= 0.5. */
float32x4_t y
- = vbslq_f32 (a_lt_half, p, vfmsq_n_f32 (d->pi_over_2f, p, 2.0));
+ = vbslq_f32 (a_lt_half, p, vfmsq_n_f32 (d->pi_over_2f, p, 2.0f));
/* Copy sign. */
return vbslq_f32 (v_u32 (AbsMask), y, x);
diff --git a/sysdeps/aarch64/fpu/asinpi_advsimd.c b/sysdeps/aarch64/fpu/asinpi_advsimd.c
new file mode 100644
index 0000000..b11f98b
--- /dev/null
+++ b/sysdeps/aarch64/fpu/asinpi_advsimd.c
@@ -0,0 +1,109 @@
+/* Double-Precision vector (Advanced SIMD) inverse sinpi function
+
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include "v_math.h"
+
+static const struct data
+{
+ float64x2_t c0, c2, c4, c6, c8, c10;
+ float64x2_t pi_over_2, inv_pi;
+ uint64x2_t abs_mask;
+ double c1, c3, c5, c7, c9, c11;
+} data = {
+ /* Polynomial approximation of (asin(sqrt(x)) - sqrt(x)) / (x * sqrt(x))
+ on [ 0x1p-106, 0x1p-2 ], relative error: 0x1.c3d8e169p-57. */
+ .c0 = V2 (0x1.555555555554ep-3), .c1 = 0x1.3333333337233p-4,
+ .c2 = V2 (0x1.6db6db67f6d9fp-5), .c3 = 0x1.f1c71fbd29fbbp-6,
+ .c4 = V2 (0x1.6e8b264d467d6p-6), .c5 = 0x1.1c5997c357e9dp-6,
+ .c6 = V2 (0x1.c86a22cd9389dp-7), .c7 = 0x1.856073c22ebbep-7,
+ .c8 = V2 (0x1.fd1151acb6bedp-8), .c9 = 0x1.087182f799c1dp-6,
+ .c10 = V2 (-0x1.6602748120927p-7), .c11 = 0x1.cfa0dd1f9478p-6,
+ .pi_over_2 = V2 (0x1.921fb54442d18p+0), .abs_mask = V2 (0x7fffffffffffffff),
+ .inv_pi = V2 (0x1.45f306dc9c883p-2),
+};
+
+/* Double-precision implementation of vector asinpi(x).
+
+ For |x| in [0, 0.5], use an order 11 polynomial P such that the final
+ approximation is an odd polynomial: asin(x) ~ x + x^3 P(x^2).
+ asinpi(x) = asin(x) * 1/pi.
+
+ The largest observed error in this region is 1.63 ulps,
+ _ZGVnN2v_asinpi (0x1.9125919fa617p-19) got 0x1.fec183497ea53p-21
+ want 0x1.fec183497ea51p-21.
+
+ For |x| in [0.5, 1.0], use same approximation with a change of variable
+
+ asin(x) = pi/2 - (y + y * z * P(z)), with z = (1-x)/2 and y = sqrt(z).
+
+ The largest observed error in this region is 3.04 ulps,
+ _ZGVnN2v_asinpi (0x1.0479b7bd98553p-1) got 0x1.5beebec797326p-3
+ want 0x1.5beebec797329p-3. */
+
+float64x2_t VPCS_ATTR V_NAME_D1 (asinpi) (float64x2_t x)
+{
+ const struct data *d = ptr_barrier (&data);
+ float64x2_t ax = vabsq_f64 (x);
+
+ uint64x2_t a_lt_half = vcaltq_f64 (x, v_f64 (0.5));
+
+ /* Evaluate polynomial Q(x) = y + y * z * P(z) with
+ z = x ^ 2 and y = |x| , if |x| < 0.5
+ z = (1 - |x|) / 2 and y = sqrt(z), if |x| >= 0.5. */
+ float64x2_t z2 = vbslq_f64 (a_lt_half, vmulq_f64 (x, x),
+ vfmsq_n_f64 (v_f64 (0.5), ax, 0.5));
+ float64x2_t z = vbslq_f64 (a_lt_half, ax, vsqrtq_f64 (z2));
+
+ /* Use a single polynomial approximation P for both intervals. */
+ float64x2_t z4 = vmulq_f64 (z2, z2);
+ float64x2_t z8 = vmulq_f64 (z4, z4);
+ float64x2_t z16 = vmulq_f64 (z8, z8);
+
+ /* order-11 Estrin. */
+ float64x2_t c13 = vld1q_f64 (&d->c1);
+ float64x2_t c57 = vld1q_f64 (&d->c5);
+ float64x2_t c911 = vld1q_f64 (&d->c9);
+
+ float64x2_t p01 = vfmaq_laneq_f64 (d->c0, z2, c13, 0);
+ float64x2_t p23 = vfmaq_laneq_f64 (d->c2, z2, c13, 1);
+ float64x2_t p03 = vfmaq_f64 (p01, z4, p23);
+
+ float64x2_t p45 = vfmaq_laneq_f64 (d->c4, z2, c57, 0);
+ float64x2_t p67 = vfmaq_laneq_f64 (d->c6, z2, c57, 1);
+ float64x2_t p47 = vfmaq_f64 (p45, z4, p67);
+
+ float64x2_t p89 = vfmaq_laneq_f64 (d->c8, z2, c911, 0);
+ float64x2_t p1011 = vfmaq_laneq_f64 (d->c10, z2, c911, 1);
+ float64x2_t p811 = vfmaq_f64 (p89, z4, p1011);
+
+ float64x2_t p07 = vfmaq_f64 (p03, z8, p47);
+ float64x2_t p = vfmaq_f64 (p07, z16, p811);
+
+ /* Finalize polynomial: z + z * z2 * P(z2). */
+ p = vfmaq_f64 (z, vmulq_f64 (z, z2), p);
+
+ /* asin(|x|) = Q(|x|) , for |x| < 0.5
+ = pi/2 - 2 Q(|x|), for |x| >= 0.5. */
+ float64x2_t y = vbslq_f64 (a_lt_half, p, vfmsq_n_f64 (d->pi_over_2, p, 2.0));
+ /* asinpi(|x|) = asin(|x|) /pi. */
+ y = vmulq_f64 (y, d->inv_pi);
+
+ /* Copy sign. */
+ return vbslq_f64 (d->abs_mask, y, x);
+}
diff --git a/sysdeps/aarch64/fpu/asinpi_sve.c b/sysdeps/aarch64/fpu/asinpi_sve.c
new file mode 100644
index 0000000..71ef8ce
--- /dev/null
+++ b/sysdeps/aarch64/fpu/asinpi_sve.c
@@ -0,0 +1,107 @@
+/* Double-Precision vector (SVE) inverse sinpi function
+
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include "sv_math.h"
+
+static const struct data
+{
+ float64_t c1, c3, c5, c7, c9, c11;
+ float64_t c0, c2, c4, c6, c8, c10;
+ float64_t pi_over_2, inv_pi;
+} data = {
+ /* Polynomial approximation of (asin(sqrt(x)) - sqrt(x)) / (x * sqrt(x))
+ on [ 0x1p-106, 0x1p-2 ], relative error: 0x1.c3d8e169p-57. */
+ .c0 = 0x1.555555555554ep-3, .c1 = 0x1.3333333337233p-4,
+ .c2 = 0x1.6db6db67f6d9fp-5, .c3 = 0x1.f1c71fbd29fbbp-6,
+ .c4 = 0x1.6e8b264d467d6p-6, .c5 = 0x1.1c5997c357e9dp-6,
+ .c6 = 0x1.c86a22cd9389dp-7, .c7 = 0x1.856073c22ebbep-7,
+ .c8 = 0x1.fd1151acb6bedp-8, .c9 = 0x1.087182f799c1dp-6,
+ .c10 = -0x1.6602748120927p-7, .c11 = 0x1.cfa0dd1f9478p-6,
+ .pi_over_2 = 0x1.921fb54442d18p+0, .inv_pi = 0x1.45f306dc9c883p-2,
+};
+
+/* Double-precision SVE implementation of vector asinpi(x).
+
+ For |x| in [0, 0.5], use an order 11 polynomial P such that the final
+ approximation is an odd polynomial: asin(x) ~ x + x^3 P(x^2).
+
+ The largest observed error in this region is 1.32 ulp:
+ _ZGVsMxv_asinpi (0x1.fc12356dbdefbp-2) got 0x1.5272e9658ba66p-3
+ want 0x1.5272e9658ba64p-3
+
+ For |x| in [0.5, 1.0], use same approximation with a change of variable:
+ asin(x) = pi/2 - (y + y * z * P(z)), with z = (1-x)/2 and y = sqrt(z).
+
+ The largest observed error in this region is 3.48 ulp:
+ _ZGVsMxv_asinpi (0x1.03da0c2295424p-1) got 0x1.5b02b3dcafaefp-3
+ want 0x1.5b02b3dcafaf2p-3. */
+svfloat64_t SV_NAME_D1 (asinpi) (svfloat64_t x, const svbool_t pg)
+{
+ const struct data *d = ptr_barrier (&data);
+ svbool_t ptrue = svptrue_b64 ();
+
+ svuint64_t sign = svand_x (pg, svreinterpret_u64 (x), 0x8000000000000000);
+ svfloat64_t ax = svabs_x (pg, x);
+ svbool_t a_ge_half = svacge (pg, x, 0.5);
+
+ /* Evaluate polynomial Q(x) = y + y * z * P(z) with
+ z = x ^ 2 and y = |x| , if |x| < 0.5
+ z = (1 - |x|) / 2 and y = sqrt(z), if |x| >= 0.5. */
+ svfloat64_t z2 = svsel (a_ge_half, svmls_x (pg, sv_f64 (0.5), ax, 0.5),
+ svmul_x (ptrue, x, x));
+ svfloat64_t z = svsqrt_m (ax, a_ge_half, z2);
+
+ /* Use a single polynomial approximation P for both intervals. */
+ svfloat64_t z3 = svmul_x (pg, z2, z);
+ svfloat64_t z4 = svmul_x (pg, z2, z2);
+ svfloat64_t z8 = svmul_x (pg, z4, z4);
+
+ svfloat64_t c13 = svld1rq (ptrue, &d->c1);
+ svfloat64_t c57 = svld1rq (ptrue, &d->c5);
+ svfloat64_t c911 = svld1rq (ptrue, &d->c9);
+
+ /* Order-11 Estrin scheme. */
+ svfloat64_t p01 = svmla_lane (sv_f64 (d->c0), z2, c13, 0);
+ svfloat64_t p23 = svmla_lane (sv_f64 (d->c2), z2, c13, 1);
+ svfloat64_t p03 = svmla_x (pg, p01, z4, p23);
+
+ svfloat64_t p45 = svmla_lane (sv_f64 (d->c4), z2, c57, 0);
+ svfloat64_t p67 = svmla_lane (sv_f64 (d->c6), z2, c57, 1);
+ svfloat64_t p47 = svmla_x (pg, p45, z4, p67);
+
+ svfloat64_t p89 = svmla_lane (sv_f64 (d->c8), z2, c911, 0);
+ svfloat64_t p1011 = svmla_lane (sv_f64 (d->c10), z2, c911, 1);
+ svfloat64_t p811 = svmla_x (pg, p89, z4, p1011);
+
+ svfloat64_t p411 = svmla_x (pg, p47, z8, p811);
+ svfloat64_t p = svmla_x (pg, p03, z8, p411);
+
+ /* Finalize polynomial: z + z3 * P(z2). */
+ p = svmla_x (pg, z, z3, p);
+
+ /* asin(|x|) = Q(|x|) , for |x| < 0.5
+ = pi/2 - 2 Q(|x|), for |x| >= 0.5. */
+ svfloat64_t y = svmad_m (a_ge_half, p, sv_f64 (-2.0), d->pi_over_2);
+
+ /* Reinsert the sign from the argument. */
+ svfloat64_t inv_pi = svreinterpret_f64 (
+ svorr_x (pg, svreinterpret_u64 (sv_f64 (d->inv_pi)), sign));
+
+ return svmul_x (pg, y, inv_pi);
+}
diff --git a/sysdeps/aarch64/fpu/asinpif_advsimd.c b/sysdeps/aarch64/fpu/asinpif_advsimd.c
new file mode 100644
index 0000000..1483ea8
--- /dev/null
+++ b/sysdeps/aarch64/fpu/asinpif_advsimd.c
@@ -0,0 +1,95 @@
+/* Single-Precision vector (Advanced SIMD) inverse sinpi function
+
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include "v_math.h"
+
+static const struct data
+{
+ float32x4_t c0, c2, c4, inv_pi;
+ float c1, c3, c5, null;
+} data = {
+ /* Coefficients of polynomial P such that asin(x)/pi~ x/pi + x^3 * poly(x^2)
+ on [ 0x1p-126 0x1p-2 ]. rel error: 0x1.ef9f94b1p-33. Generated using
+ iterative approach for minimisation of relative error in Sollya file. */
+ .c0 = V4 (0x1.b2995ep-5f), .c1 = 0x1.8724ep-6f,
+ .c2 = V4 (0x1.d1301ep-7f), .c3 = 0x1.446d3cp-7f,
+ .c4 = V4 (0x1.654848p-8f), .c5 = 0x1.5fdaa8p-7f,
+ .inv_pi = V4 (0x1.45f306p-2f),
+};
+
+#define AbsMask 0x7fffffff
+
+/* Single-precision implementation of vector asinpi(x).
+
+ For |x| < 0.5, use order 5 polynomial P such that the final
+ approximation is an odd polynomial: asinpif(x) ~ x/pi + x^3 P(x^2).
+
+ The largest observed error in this region is 1.68 ulps,
+ _ZGVnN4v_asinpif (0x1.86e514p-2) got 0x1.fea8c8p-4 want 0x1.fea8ccp-4.
+
+ For |x| in [0.5, 1.0], use same approximation with a change of variable
+
+ asin(x) = pi/2 - (y + y * z * P(z)), with z = (1-x)/2 and y = sqrt(z).
+
+ The largest observed error in this region is 3.49 ulps,
+ _ZGVnN4v_asinpif(0x1.0d93fep-1) got 0x1.697aap-3 want 0x1.697a9ap-3. */
+float32x4_t VPCS_ATTR NOINLINE V_NAME_F1 (asinpi) (float32x4_t x)
+{
+ const struct data *d = ptr_barrier (&data);
+
+ uint32x4_t ix = vreinterpretq_u32_f32 (x);
+ uint32x4_t ia = vandq_u32 (ix, v_u32 (AbsMask));
+
+ float32x4_t ax = vreinterpretq_f32_u32 (ia);
+ uint32x4_t a_lt_half = vcaltq_f32 (x, v_f32 (0.5f));
+
+ /* Evaluate polynomial Q(x) = y/pi + y * z * P(z) with
+ z = x ^ 2 and y = |x| , if |x| < 0.5
+ z = (1 - |x|) / 2 and y = sqrt(z), if |x| >= 0.5. */
+ float32x4_t z2 = vbslq_f32 (a_lt_half, vmulq_f32 (x, x),
+ vfmsq_n_f32 (v_f32 (0.5f), ax, 0.5f));
+ float32x4_t z = vbslq_f32 (a_lt_half, ax, vsqrtq_f32 (z2));
+
+ /* Use a single polynomial approximation P for both intervals. */
+
+ /* Order-5 Estrin evaluation scheme. */
+ float32x4_t z4 = vmulq_f32 (z2, z2);
+ float32x4_t z8 = vmulq_f32 (z4, z4);
+ float32x4_t c135 = vld1q_f32 (&d->c1);
+ float32x4_t p01 = vfmaq_laneq_f32 (d->c0, z2, c135, 0);
+ float32x4_t p23 = vfmaq_laneq_f32 (d->c2, z2, c135, 1);
+ float32x4_t p03 = vfmaq_f32 (p01, z4, p23);
+ float32x4_t p45 = vfmaq_laneq_f32 (d->c4, z2, c135, 2);
+ float32x4_t p = vfmaq_f32 (p03, z8, p45);
+ /* Add 1/pi as final coeff. */
+ p = vfmaq_f32 (d->inv_pi, z2, p);
+
+ /* Finalize polynomial: z * P(z2). */
+ p = vmulq_f32 (z, p);
+
+ /* asinpi(|x|) = Q(|x|), for |x| < 0.5
+ = 1/2 - 2 Q(|x|), for |x| >= 0.5. */
+ float32x4_t y
+ = vbslq_f32 (a_lt_half, p, vfmsq_n_f32 (v_f32 (0.5f), p, 2.0f));
+
+ /* Copy sign. */
+ return vbslq_f32 (v_u32 (AbsMask), y, x);
+}
+libmvec_hidden_def (V_NAME_F1 (asinpi))
+HALF_WIDTH_ALIAS_F1 (asinpi)
diff --git a/sysdeps/aarch64/fpu/asinpif_sve.c b/sysdeps/aarch64/fpu/asinpif_sve.c
new file mode 100644
index 0000000..046b258
--- /dev/null
+++ b/sysdeps/aarch64/fpu/asinpif_sve.c
@@ -0,0 +1,88 @@
+/* Single-Precision vector (SVE) inverse sinpi function
+
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include "sv_math.h"
+
+static const struct data
+{
+ float32_t c1, c3, c5;
+ float32_t c0, c2, c4, inv_pi;
+} data = {
+ /* Polynomial approximation of (asin(sqrt(x)) - sqrt(x)) / (x * sqrt(x)) on
+ [ 0x1p-24 0x1p-2 ] order = 4 rel error: 0x1.00a23bbp-29 . */
+ .c0 = 0x1.b2995ep-5f, .c1 = 0x1.8724ep-6f, .c2 = 0x1.d1301ep-7f,
+ .c3 = 0x1.446d3cp-7f, .c4 = 0x1.654848p-8f, .c5 = 0x1.5fdaa8p-7f,
+ .inv_pi = 0x1.45f306p-2f,
+};
+
+/* Single-precision SVE implementation of vector asin(x).
+
+ For |x| in [0, 0.5], use order 5 polynomial P such that the final
+ approximation is an odd polynomial: asinpi(x) ~ x/pi + x^3 P(x^2).
+
+ The largest observed error in this region is 1.96 ulps:
+ _ZGVsMxv_asinpif (0x1.8e534ep-3) got 0x1.fe6ab4p-5
+ want 0x1.fe6ab8p-5.
+
+ For |x| in [0.5, 1.0], use same approximation with a change of variable
+
+ asinpi(x) = 1/2 - (y + y * z * P(z)), with z = (1-x)/2 and y = sqrt(z).
+
+ The largest observed error in this region is 3.46 ulps:
+ _ZGVsMxv_asinpif (0x1.0df892p-1) got 0x1.6a114cp-3
+ want 0x1.6a1146p-3. */
+svfloat32_t SV_NAME_F1 (asinpi) (svfloat32_t x, const svbool_t pg)
+{
+ const struct data *d = ptr_barrier (&data);
+ svbool_t ptrue = svptrue_b32 ();
+
+ svuint32_t sign = svand_x (pg, svreinterpret_u32 (x), 0x80000000);
+
+ svfloat32_t ax = svabs_x (pg, x);
+ svbool_t a_ge_half = svacge (pg, x, 0.5);
+
+ /* Evaluate polynomial Q(x) = y + y * z * P(z) with
+ z = x ^ 2 and y = |x| , if |x| < 0.5
+ z = (1 - |x|) / 2 and y = sqrt(z), if |x| >= 0.5. */
+ svfloat32_t z2 = svsel (a_ge_half, svmls_x (pg, sv_f32 (0.5), ax, 0.5),
+ svmul_x (pg, x, x));
+ svfloat32_t z = svsqrt_m (ax, a_ge_half, z2);
+
+ svfloat32_t z4 = svmul_x (ptrue, z2, z2);
+ svfloat32_t c135_two = svld1rq (ptrue, &d->c1);
+
+ /* Order-5 Pairwise Horner evaluation scheme. */
+ svfloat32_t p01 = svmla_lane (sv_f32 (d->c0), z2, c135_two, 0);
+ svfloat32_t p23 = svmla_lane (sv_f32 (d->c2), z2, c135_two, 1);
+ svfloat32_t p45 = svmla_lane (sv_f32 (d->c4), z2, c135_two, 2);
+
+ svfloat32_t p25 = svmla_x (pg, p23, z4, p45);
+ svfloat32_t p = svmla_x (pg, p01, z4, p25);
+
+ /* Add 1/pi as final coeff. */
+ p = svmla_x (pg, sv_f32 (d->inv_pi), z2, p);
+ p = svmul_x (pg, p, z);
+
+ /* asinpi(|x|) = Q(|x|), for |x| < 0.5
+ = 1/2 - 2 Q(|x|), for |x| >= 0.5. */
+ svfloat32_t y = svmsb_m (a_ge_half, p, sv_f32 (2.0), 0.5);
+
+ /* Reinsert sign from argument. */
+ return svreinterpret_f32 (sveor_x (pg, svreinterpret_u32 (y), sign));
+}
diff --git a/sysdeps/aarch64/fpu/atan2_advsimd.c b/sysdeps/aarch64/fpu/atan2_advsimd.c
index 00b4a4f..a31d52f 100644
--- a/sysdeps/aarch64/fpu/atan2_advsimd.c
+++ b/sysdeps/aarch64/fpu/atan2_advsimd.c
@@ -19,40 +19,38 @@
#include "math_config.h"
#include "v_math.h"
-#include "poly_advsimd_f64.h"
static const struct data
{
+ double c1, c3, c5, c7, c9, c11, c13, c15, c17, c19;
float64x2_t c0, c2, c4, c6, c8, c10, c12, c14, c16, c18;
float64x2_t pi_over_2;
- double c1, c3, c5, c7, c9, c11, c13, c15, c17, c19;
- uint64x2_t zeroinfnan, minustwo;
+ uint64x2_t zeroinfnan;
} data = {
- /* Coefficients of polynomial P such that atan(x)~x+x*P(x^2) on
- [2**-1022, 1.0]. */
- .c0 = V2 (-0x1.5555555555555p-2),
- .c1 = 0x1.99999999996c1p-3,
- .c2 = V2 (-0x1.2492492478f88p-3),
- .c3 = 0x1.c71c71bc3951cp-4,
- .c4 = V2 (-0x1.745d160a7e368p-4),
- .c5 = 0x1.3b139b6a88ba1p-4,
- .c6 = V2 (-0x1.11100ee084227p-4),
- .c7 = 0x1.e1d0f9696f63bp-5,
- .c8 = V2 (-0x1.aebfe7b418581p-5),
- .c9 = 0x1.842dbe9b0d916p-5,
- .c10 = V2 (-0x1.5d30140ae5e99p-5),
- .c11 = 0x1.338e31eb2fbbcp-5,
- .c12 = V2 (-0x1.00e6eece7de8p-5),
- .c13 = 0x1.860897b29e5efp-6,
- .c14 = V2 (-0x1.0051381722a59p-6),
- .c15 = 0x1.14e9dc19a4a4ep-7,
- .c16 = V2 (-0x1.d0062b42fe3bfp-9),
- .c17 = 0x1.17739e210171ap-10,
- .c18 = V2 (-0x1.ab24da7be7402p-13),
- .c19 = 0x1.358851160a528p-16,
+ /* Coefficients of polynomial P such that
+ atan(x)~x+x*P(x^2) on [2^-1022, 1.0]. */
+ .c0 = V2 (-0x1.555555555552ap-2),
+ .c1 = 0x1.9999999995aebp-3,
+ .c2 = V2 (-0x1.24924923923f6p-3),
+ .c3 = 0x1.c71c7184288a2p-4,
+ .c4 = V2 (-0x1.745d11fb3d32bp-4),
+ .c5 = 0x1.3b136a18051b9p-4,
+ .c6 = V2 (-0x1.110e6d985f496p-4),
+ .c7 = 0x1.e1bcf7f08801dp-5,
+ .c8 = V2 (-0x1.ae644e28058c3p-5),
+ .c9 = 0x1.82eeb1fed85c6p-5,
+ .c10 = V2 (-0x1.59d7f901566cbp-5),
+ .c11 = 0x1.2c982855ab069p-5,
+ .c12 = V2 (-0x1.eb49592998177p-6),
+ .c13 = 0x1.69d8b396e3d38p-6,
+ .c14 = V2 (-0x1.ca980345c4204p-7),
+ .c15 = 0x1.dc050eafde0b3p-8,
+ .c16 = V2 (-0x1.7ea70755b8eccp-9),
+ .c17 = 0x1.ba3da3de903e8p-11,
+ .c18 = V2 (-0x1.44a4b059b6f67p-13),
+ .c19 = 0x1.c4a45029e5a91p-17,
.pi_over_2 = V2 (0x1.921fb54442d18p+0),
.zeroinfnan = V2 (2 * 0x7ff0000000000000ul - 1),
- .minustwo = V2 (0xc000000000000000),
};
#define SignMask v_u64 (0x8000000000000000)
@@ -77,10 +75,9 @@ zeroinfnan (uint64x2_t i, const struct data *d)
}
/* Fast implementation of vector atan2.
- Maximum observed error is 2.8 ulps:
- _ZGVnN2vv_atan2 (0x1.9651a429a859ap+5, 0x1.953075f4ee26p+5)
- got 0x1.92d628ab678ccp-1
- want 0x1.92d628ab678cfp-1. */
+ Maximum observed error is 1.97 ulps:
+ _ZGVnN2vv_atan2 (0x1.42337dba73768p+5, 0x1.422d748cd3e29p+5)
+ got 0x1.9224810264efcp-1 want 0x1.9224810264efep-1. */
float64x2_t VPCS_ATTR V_NAME_D2 (atan2) (float64x2_t y, float64x2_t x)
{
const struct data *d = ptr_barrier (&data);
@@ -101,26 +98,29 @@ float64x2_t VPCS_ATTR V_NAME_D2 (atan2) (float64x2_t y, float64x2_t x)
uint64x2_t pred_xlt0 = vcltzq_f64 (x);
uint64x2_t pred_aygtax = vcagtq_f64 (y, x);
- /* Set up z for call to atan. */
- float64x2_t n = vbslq_f64 (pred_aygtax, vnegq_f64 (ax), ay);
- float64x2_t q = vbslq_f64 (pred_aygtax, ay, ax);
- float64x2_t z = vdivq_f64 (n, q);
-
- /* Work out the correct shift. */
- float64x2_t shift
- = vreinterpretq_f64_u64 (vandq_u64 (pred_xlt0, d->minustwo));
- shift = vbslq_f64 (pred_aygtax, vaddq_f64 (shift, v_f64 (1.0)), shift);
- shift = vmulq_f64 (shift, d->pi_over_2);
-
- /* Calculate the polynomial approximation.
- Use split Estrin scheme for P(z^2) with deg(P)=19. Use split instead of
- full scheme to avoid underflow in x^16.
- The order 19 polynomial P approximates
- (atan(sqrt(x))-sqrt(x))/x^(3/2). */
+ /* Set up z for evaluation of atan. */
+ float64x2_t num = vbslq_f64 (pred_aygtax, vnegq_f64 (ax), ay);
+ float64x2_t den = vbslq_f64 (pred_aygtax, ay, ax);
+ float64x2_t z = vdivq_f64 (num, den);
+
+ /* Work out the correct shift for atan2:
+ Multiplication by pi is done later.
+ -pi when x < 0 and ax < ay
+ -pi/2 when x < 0 and ax > ay
+ 0 when x >= 0 and ax < ay
+ pi/2 when x >= 0 and ax > ay. */
+ float64x2_t shift = vreinterpretq_f64_u64 (
+ vandq_u64 (pred_xlt0, vreinterpretq_u64_f64 (v_f64 (-2.0))));
+ float64x2_t shift2 = vreinterpretq_f64_u64 (
+ vandq_u64 (pred_aygtax, vreinterpretq_u64_f64 (v_f64 (1.0))));
+ shift = vaddq_f64 (shift, shift2);
+
+ /* Calculate the polynomial approximation. */
float64x2_t z2 = vmulq_f64 (z, z);
- float64x2_t x2 = vmulq_f64 (z2, z2);
- float64x2_t x4 = vmulq_f64 (x2, x2);
- float64x2_t x8 = vmulq_f64 (x4, x4);
+ float64x2_t z3 = vmulq_f64 (z2, z);
+ float64x2_t z4 = vmulq_f64 (z2, z2);
+ float64x2_t z8 = vmulq_f64 (z4, z4);
+ float64x2_t z16 = vmulq_f64 (z8, z8);
float64x2_t c13 = vld1q_f64 (&d->c1);
float64x2_t c57 = vld1q_f64 (&d->c5);
@@ -128,45 +128,43 @@ float64x2_t VPCS_ATTR V_NAME_D2 (atan2) (float64x2_t y, float64x2_t x)
float64x2_t c1315 = vld1q_f64 (&d->c13);
float64x2_t c1719 = vld1q_f64 (&d->c17);
- /* estrin_7. */
+ /* Order-7 Estrin. */
float64x2_t p01 = vfmaq_laneq_f64 (d->c0, z2, c13, 0);
float64x2_t p23 = vfmaq_laneq_f64 (d->c2, z2, c13, 1);
- float64x2_t p03 = vfmaq_f64 (p01, x2, p23);
+ float64x2_t p03 = vfmaq_f64 (p01, z4, p23);
float64x2_t p45 = vfmaq_laneq_f64 (d->c4, z2, c57, 0);
float64x2_t p67 = vfmaq_laneq_f64 (d->c6, z2, c57, 1);
- float64x2_t p47 = vfmaq_f64 (p45, x2, p67);
+ float64x2_t p47 = vfmaq_f64 (p45, z4, p67);
- float64x2_t p07 = vfmaq_f64 (p03, x4, p47);
+ float64x2_t p07 = vfmaq_f64 (p03, z8, p47);
- /* estrin_11. */
+ /* Order-11 Estrin. */
float64x2_t p89 = vfmaq_laneq_f64 (d->c8, z2, c911, 0);
float64x2_t p1011 = vfmaq_laneq_f64 (d->c10, z2, c911, 1);
- float64x2_t p811 = vfmaq_f64 (p89, x2, p1011);
+ float64x2_t p811 = vfmaq_f64 (p89, z4, p1011);
float64x2_t p1213 = vfmaq_laneq_f64 (d->c12, z2, c1315, 0);
float64x2_t p1415 = vfmaq_laneq_f64 (d->c14, z2, c1315, 1);
- float64x2_t p1215 = vfmaq_f64 (p1213, x2, p1415);
+ float64x2_t p1215 = vfmaq_f64 (p1213, z4, p1415);
float64x2_t p1617 = vfmaq_laneq_f64 (d->c16, z2, c1719, 0);
float64x2_t p1819 = vfmaq_laneq_f64 (d->c18, z2, c1719, 1);
- float64x2_t p1619 = vfmaq_f64 (p1617, x2, p1819);
+ float64x2_t p1619 = vfmaq_f64 (p1617, z4, p1819);
- float64x2_t p815 = vfmaq_f64 (p811, x4, p1215);
- float64x2_t p819 = vfmaq_f64 (p815, x8, p1619);
+ float64x2_t p815 = vfmaq_f64 (p811, z8, p1215);
+ float64x2_t p819 = vfmaq_f64 (p815, z16, p1619);
- float64x2_t ret = vfmaq_f64 (p07, p819, x8);
+ float64x2_t poly = vfmaq_f64 (p07, p819, z16);
/* Finalize. y = shift + z + z^3 * P(z^2). */
- ret = vfmaq_f64 (z, ret, vmulq_f64 (z2, z));
- ret = vaddq_f64 (ret, shift);
+ float64x2_t ret = vfmaq_f64 (z, shift, d->pi_over_2);
+ ret = vfmaq_f64 (ret, z3, poly);
if (__glibc_unlikely (v_any_u64 (special_cases)))
return special_case (y, x, ret, sign_xy, special_cases);
/* Account for the sign of x and y. */
- ret = vreinterpretq_f64_u64 (
+ return vreinterpretq_f64_u64 (
veorq_u64 (vreinterpretq_u64_f64 (ret), sign_xy));
-
- return ret;
}
diff --git a/sysdeps/aarch64/fpu/atan2_sve.c b/sysdeps/aarch64/fpu/atan2_sve.c
index 163f613..9e2dd24 100644
--- a/sysdeps/aarch64/fpu/atan2_sve.c
+++ b/sysdeps/aarch64/fpu/atan2_sve.c
@@ -19,25 +19,25 @@
#include "math_config.h"
#include "sv_math.h"
-#include "poly_sve_f64.h"
static const struct data
{
- float64_t poly[20];
- float64_t pi_over_2;
+ float64_t c0, c2, c4, c6, c8, c10, c12, c14, c16, c18;
+ float64_t c1, c3, c5, c7, c9, c11, c13, c15, c17, c19;
} data = {
/* Coefficients of polynomial P such that atan(x)~x+x*P(x^2) on
[2**-1022, 1.0]. */
- .poly = { -0x1.5555555555555p-2, 0x1.99999999996c1p-3, -0x1.2492492478f88p-3,
- 0x1.c71c71bc3951cp-4, -0x1.745d160a7e368p-4, 0x1.3b139b6a88ba1p-4,
- -0x1.11100ee084227p-4, 0x1.e1d0f9696f63bp-5, -0x1.aebfe7b418581p-5,
- 0x1.842dbe9b0d916p-5, -0x1.5d30140ae5e99p-5, 0x1.338e31eb2fbbcp-5,
- -0x1.00e6eece7de8p-5, 0x1.860897b29e5efp-6, -0x1.0051381722a59p-6,
- 0x1.14e9dc19a4a4ep-7, -0x1.d0062b42fe3bfp-9, 0x1.17739e210171ap-10,
- -0x1.ab24da7be7402p-13, 0x1.358851160a528p-16, },
- .pi_over_2 = 0x1.921fb54442d18p+0,
+ .c0 = -0x1.555555555552ap-2, .c1 = 0x1.9999999995aebp-3,
+ .c2 = -0x1.24924923923f6p-3, .c3 = 0x1.c71c7184288a2p-4,
+ .c4 = -0x1.745d11fb3d32bp-4, .c5 = 0x1.3b136a18051b9p-4,
+ .c6 = -0x1.110e6d985f496p-4, .c7 = 0x1.e1bcf7f08801dp-5,
+ .c8 = -0x1.ae644e28058c3p-5, .c9 = 0x1.82eeb1fed85c6p-5,
+ .c10 = -0x1.59d7f901566cbp-5, .c11 = 0x1.2c982855ab069p-5,
+ .c12 = -0x1.eb49592998177p-6, .c13 = 0x1.69d8b396e3d38p-6,
+ .c14 = -0x1.ca980345c4204p-7, .c15 = 0x1.dc050eafde0b3p-8,
+ .c16 = -0x1.7ea70755b8eccp-9, .c17 = 0x1.ba3da3de903e8p-11,
+ .c18 = -0x1.44a4b059b6f67p-13, .c19 = 0x1.c4a45029e5a91p-17,
};
-
/* Special cases i.e. 0, infinity, nan (fall back to scalar calls). */
static svfloat64_t NOINLINE
special_case (svfloat64_t y, svfloat64_t x, svfloat64_t ret,
@@ -56,15 +56,17 @@ zeroinfnan (svuint64_t i, const svbool_t pg)
}
/* Fast implementation of SVE atan2. Errors are greatest when y and
- x are reasonably close together. The greatest observed error is 2.28 ULP:
- _ZGVsMxvv_atan2 (-0x1.5915b1498e82fp+732, 0x1.54d11ef838826p+732)
- got -0x1.954f42f1fa841p-1 want -0x1.954f42f1fa843p-1. */
-svfloat64_t SV_NAME_D2 (atan2) (svfloat64_t y, svfloat64_t x, const svbool_t pg)
+ x are reasonably close together. The greatest observed error is 1.94 ULP:
+ _ZGVsMxvv_atan2 (0x1.8a4bf7167228ap+5, 0x1.84971226bb57bp+5)
+ got 0x1.95db19dfef9ccp-1 want 0x1.95db19dfef9cep-1. */
+svfloat64_t SV_NAME_D2 (atan2) (svfloat64_t y, svfloat64_t x,
+ const svbool_t pg)
{
- const struct data *data_ptr = ptr_barrier (&data);
+ const struct data *d = ptr_barrier (&data);
svuint64_t ix = svreinterpret_u64 (x);
svuint64_t iy = svreinterpret_u64 (y);
+ svbool_t ptrue = svptrue_b64 ();
svbool_t cmp_x = zeroinfnan (ix, pg);
svbool_t cmp_y = zeroinfnan (iy, pg);
@@ -81,32 +83,67 @@ svfloat64_t SV_NAME_D2 (atan2) (svfloat64_t y, svfloat64_t x, const svbool_t pg)
svbool_t pred_aygtax = svcmpgt (pg, ay, ax);
- /* Set up z for call to atan. */
- svfloat64_t n = svsel (pred_aygtax, svneg_x (pg, ax), ay);
- svfloat64_t d = svsel (pred_aygtax, ay, ax);
- svfloat64_t z = svdiv_x (pg, n, d);
-
- /* Work out the correct shift. */
+ /* Set up z for evaluation of atan. */
+ svfloat64_t num = svsel (pred_aygtax, svneg_x (pg, ax), ay);
+ svfloat64_t den = svsel (pred_aygtax, ay, ax);
+ svfloat64_t z = svdiv_x (pg, num, den);
+
+ /* Work out the correct shift for atan2:
+ Multiplication by pi is done later.
+ -pi when x < 0 and ax < ay
+ -pi/2 when x < 0 and ax > ay
+ 0 when x >= 0 and ax < ay
+ pi/2 when x >= 0 and ax > ay. */
svfloat64_t shift = svreinterpret_f64 (svlsr_x (pg, sign_x, 1));
+ svfloat64_t shift_mul = svreinterpret_f64 (
+ svorr_x (pg, sign_x, svreinterpret_u64 (sv_f64 (0x1.921fb54442d18p+0))));
shift = svsel (pred_aygtax, sv_f64 (1.0), shift);
- shift = svreinterpret_f64 (svorr_x (pg, sign_x, svreinterpret_u64 (shift)));
- shift = svmul_x (pg, shift, data_ptr->pi_over_2);
+ shift = svmla_x (pg, z, shift, shift_mul);
/* Use split Estrin scheme for P(z^2) with deg(P)=19. */
svfloat64_t z2 = svmul_x (pg, z, z);
- svfloat64_t x2 = svmul_x (pg, z2, z2);
- svfloat64_t x4 = svmul_x (pg, x2, x2);
- svfloat64_t x8 = svmul_x (pg, x4, x4);
+ svfloat64_t z3 = svmul_x (pg, z2, z);
+ svfloat64_t z4 = svmul_x (pg, z2, z2);
+ svfloat64_t z8 = svmul_x (pg, z4, z4);
+ svfloat64_t z16 = svmul_x (pg, z8, z8);
- svfloat64_t ret = svmla_x (
- pg, sv_estrin_7_f64_x (pg, z2, x2, x4, data_ptr->poly),
- sv_estrin_11_f64_x (pg, z2, x2, x4, x8, data_ptr->poly + 8), x8);
+ /* Order-7 Estrin. */
+ svfloat64_t c13 = svld1rq (ptrue, &d->c1);
+ svfloat64_t c57 = svld1rq (ptrue, &d->c5);
- /* y = shift + z + z^3 * P(z^2). */
- svfloat64_t z3 = svmul_x (pg, z2, z);
- ret = svmla_x (pg, z, z3, ret);
+ svfloat64_t p01 = svmla_lane (sv_f64 (d->c0), z2, c13, 0);
+ svfloat64_t p23 = svmla_lane (sv_f64 (d->c2), z2, c13, 1);
+ svfloat64_t p45 = svmla_lane (sv_f64 (d->c4), z2, c57, 0);
+ svfloat64_t p67 = svmla_lane (sv_f64 (d->c6), z2, c57, 1);
+
+ svfloat64_t p03 = svmla_x (pg, p01, z4, p23);
+ svfloat64_t p47 = svmla_x (pg, p45, z4, p67);
+ svfloat64_t p07 = svmla_x (pg, p03, z8, p47);
+
+ /* Order-11 Estrin. */
+ svfloat64_t c911 = svld1rq (ptrue, &d->c9);
+ svfloat64_t c1315 = svld1rq (ptrue, &d->c13);
+ svfloat64_t c1719 = svld1rq (ptrue, &d->c17);
- ret = svadd_m (pg, ret, shift);
+ svfloat64_t p89 = svmla_lane (sv_f64 (d->c8), z2, c911, 0);
+ svfloat64_t p1011 = svmla_lane (sv_f64 (d->c10), z2, c911, 1);
+ svfloat64_t p811 = svmla_x (pg, p89, z4, p1011);
+
+ svfloat64_t p1213 = svmla_lane (sv_f64 (d->c12), z2, c1315, 0);
+ svfloat64_t p1415 = svmla_lane (sv_f64 (d->c14), z2, c1315, 1);
+ svfloat64_t p1215 = svmla_x (pg, p1213, z4, p1415);
+
+ svfloat64_t p1617 = svmla_lane (sv_f64 (d->c16), z2, c1719, 0);
+ svfloat64_t p1819 = svmla_lane (sv_f64 (d->c18), z2, c1719, 1);
+ svfloat64_t p1619 = svmla_x (pg, p1617, z4, p1819);
+
+ svfloat64_t p815 = svmla_x (pg, p811, z8, p1215);
+ svfloat64_t p819 = svmla_x (pg, p815, z16, p1619);
+
+ svfloat64_t poly = svmla_x (pg, p07, z16, p819);
+
+ /* y = shift + z + z^3 * P(z^2). */
+ svfloat64_t ret = svmla_x (pg, shift, z3, poly);
/* Account for the sign of x and y. */
if (__glibc_unlikely (svptest_any (pg, cmp_xy)))
diff --git a/sysdeps/aarch64/fpu/atan2f_advsimd.c b/sysdeps/aarch64/fpu/atan2f_advsimd.c
index e65406f..75d8738 100644
--- a/sysdeps/aarch64/fpu/atan2f_advsimd.c
+++ b/sysdeps/aarch64/fpu/atan2f_advsimd.c
@@ -18,22 +18,22 @@
<https://www.gnu.org/licenses/>. */
#include "v_math.h"
-#include "poly_advsimd_f32.h"
static const struct data
{
- float32x4_t c0, pi_over_2, c4, c6, c2;
+ float32x4_t c0, c4, c6, c2;
float c1, c3, c5, c7;
uint32x4_t comp_const;
+ float32x4_t pi;
} data = {
/* Coefficients of polynomial P such that atan(x)~x+x*P(x^2) on
[2**-128, 1.0].
Generated using fpminimax between FLT_MIN and 1. */
- .c0 = V4 (-0x1.55555p-2f), .c1 = 0x1.99935ep-3f,
- .c2 = V4 (-0x1.24051ep-3f), .c3 = 0x1.bd7368p-4f,
- .c4 = V4 (-0x1.491f0ep-4f), .c5 = 0x1.93a2c0p-5f,
- .c6 = V4 (-0x1.4c3c60p-6f), .c7 = 0x1.01fd88p-8f,
- .pi_over_2 = V4 (0x1.921fb6p+0f), .comp_const = V4 (2 * 0x7f800000lu - 1),
+ .c0 = V4 (-0x1.5554dcp-2), .c1 = 0x1.9978ecp-3,
+ .c2 = V4 (-0x1.230a94p-3), .c3 = 0x1.b4debp-4,
+ .c4 = V4 (-0x1.3550dap-4), .c5 = 0x1.61eebp-5,
+ .c6 = V4 (-0x1.0c17d4p-6), .c7 = 0x1.7ea694p-9,
+ .pi = V4 (0x1.921fb6p+1f), .comp_const = V4 (2 * 0x7f800000lu - 1),
};
#define SignMask v_u32 (0x80000000)
@@ -54,13 +54,13 @@ static inline uint32x4_t
zeroinfnan (uint32x4_t i, const struct data *d)
{
/* 2 * i - 1 >= 2 * 0x7f800000lu - 1. */
- return vcgeq_u32 (vsubq_u32 (vmulq_n_u32 (i, 2), v_u32 (1)), d->comp_const);
+ return vcgeq_u32 (vsubq_u32 (vshlq_n_u32 (i, 1), v_u32 (1)), d->comp_const);
}
/* Fast implementation of vector atan2f. Maximum observed error is
- 2.95 ULP in [0x1.9300d6p+6 0x1.93c0c6p+6] x [0x1.8c2dbp+6 0x1.8cea6p+6]:
- _ZGVnN4vv_atan2f (0x1.93836cp+6, 0x1.8cae1p+6) got 0x1.967f06p-1
- want 0x1.967f00p-1. */
+ 2.13 ULP in [0x1.9300d6p+6 0x1.93c0c6p+6] x [0x1.8c2dbp+6 0x1.8cea6p+6]:
+ _ZGVnN4vv_atan2f (0x1.14a9d4p-87, 0x1.0eb886p-87) got 0x1.97aea2p-1
+ want 0x1.97ae9ep-1. */
float32x4_t VPCS_ATTR NOINLINE V_NAME_F2 (atan2) (float32x4_t y, float32x4_t x)
{
const struct data *d = ptr_barrier (&data);
@@ -81,28 +81,31 @@ float32x4_t VPCS_ATTR NOINLINE V_NAME_F2 (atan2) (float32x4_t y, float32x4_t x)
uint32x4_t pred_xlt0 = vcltzq_f32 (x);
uint32x4_t pred_aygtax = vcgtq_f32 (ay, ax);
- /* Set up z for call to atanf. */
- float32x4_t n = vbslq_f32 (pred_aygtax, vnegq_f32 (ax), ay);
- float32x4_t q = vbslq_f32 (pred_aygtax, ay, ax);
- float32x4_t z = vdivq_f32 (n, q);
-
- /* Work out the correct shift. */
+ /* Set up z for evaluation of atanf. */
+ float32x4_t num = vbslq_f32 (pred_aygtax, vnegq_f32 (ax), ay);
+ float32x4_t den = vbslq_f32 (pred_aygtax, ay, ax);
+ float32x4_t z = vdivq_f32 (num, den);
+
+ /* Work out the correct shift for atan2:
+ Multiplication by pi is done later.
+ -pi when x < 0 and ax < ay
+ -pi/2 when x < 0 and ax > ay
+ 0 when x >= 0 and ax < ay
+ pi/2 when x >= 0 and ax > ay. */
float32x4_t shift = vreinterpretq_f32_u32 (
- vandq_u32 (pred_xlt0, vreinterpretq_u32_f32 (v_f32 (-2.0f))));
- shift = vbslq_f32 (pred_aygtax, vaddq_f32 (shift, v_f32 (1.0f)), shift);
- shift = vmulq_f32 (shift, d->pi_over_2);
-
- /* Calculate the polynomial approximation.
- Use 2-level Estrin scheme for P(z^2) with deg(P)=7. However,
- a standard implementation using z8 creates spurious underflow
- in the very last fma (when z^8 is small enough).
- Therefore, we split the last fma into a mul and an fma.
- Horner and single-level Estrin have higher errors that exceed
- threshold. */
+ vandq_u32 (pred_xlt0, vreinterpretq_u32_f32 (v_f32 (-1.0f))));
+ float32x4_t shift2 = vreinterpretq_f32_u32 (
+ vandq_u32 (pred_aygtax, vreinterpretq_u32_f32 (v_f32 (0.5f))));
+ shift = vaddq_f32 (shift, shift2);
+
+ /* Calculate the polynomial approximation. */
float32x4_t z2 = vmulq_f32 (z, z);
+ float32x4_t z3 = vmulq_f32 (z2, z);
float32x4_t z4 = vmulq_f32 (z2, z2);
+ float32x4_t z8 = vmulq_f32 (z4, z4);
float32x4_t c1357 = vld1q_f32 (&d->c1);
+
float32x4_t p01 = vfmaq_laneq_f32 (d->c0, z2, c1357, 0);
float32x4_t p23 = vfmaq_laneq_f32 (d->c2, z2, c1357, 1);
float32x4_t p45 = vfmaq_laneq_f32 (d->c4, z2, c1357, 2);
@@ -110,10 +113,11 @@ float32x4_t VPCS_ATTR NOINLINE V_NAME_F2 (atan2) (float32x4_t y, float32x4_t x)
float32x4_t p03 = vfmaq_f32 (p01, z4, p23);
float32x4_t p47 = vfmaq_f32 (p45, z4, p67);
- float32x4_t ret = vfmaq_f32 (p03, z4, vmulq_f32 (z4, p47));
+ float32x4_t poly = vfmaq_f32 (p03, z8, p47);
/* y = shift + z * P(z^2). */
- ret = vaddq_f32 (vfmaq_f32 (z, ret, vmulq_f32 (z2, z)), shift);
+ float32x4_t ret = vfmaq_f32 (z, shift, d->pi);
+ ret = vfmaq_f32 (ret, z3, poly);
if (__glibc_unlikely (v_any_u32 (special_cases)))
{
diff --git a/sysdeps/aarch64/fpu/atan2f_sve.c b/sysdeps/aarch64/fpu/atan2f_sve.c
index 5f26e2a..4d93419 100644
--- a/sysdeps/aarch64/fpu/atan2f_sve.c
+++ b/sysdeps/aarch64/fpu/atan2f_sve.c
@@ -18,18 +18,18 @@
<https://www.gnu.org/licenses/>. */
#include "sv_math.h"
-#include "poly_sve_f32.h"
static const struct data
{
- float32_t poly[8];
+ float32_t c0, c2, c4, c6;
+ float32_t c1, c3, c5, c7;
float32_t pi_over_2;
} data = {
/* Coefficients of polynomial P such that atan(x)~x+x*P(x^2) on
[2**-128, 1.0]. */
- .poly = { -0x1.55555p-2f, 0x1.99935ep-3f, -0x1.24051ep-3f, 0x1.bd7368p-4f,
- -0x1.491f0ep-4f, 0x1.93a2c0p-5f, -0x1.4c3c60p-6f, 0x1.01fd88p-8f },
- .pi_over_2 = 0x1.921fb6p+0f,
+ .c0 = -0x1.5554dcp-2, .c1 = 0x1.9978ecp-3, .c2 = -0x1.230a94p-3,
+ .c3 = 0x1.b4debp-4, .c4 = -0x1.3550dap-4, .c5 = 0x1.61eebp-5,
+ .c6 = -0x1.0c17d4p-6, .c7 = 0x1.7ea694p-9, .pi_over_2 = 0x1.921fb6p+0f,
};
/* Special cases i.e. 0, infinity, nan (fall back to scalar calls). */
@@ -51,12 +51,14 @@ zeroinfnan (svuint32_t i, const svbool_t pg)
/* Fast implementation of SVE atan2f based on atan(x) ~ shift + z + z^3 *
P(z^2) with reduction to [0,1] using z=1/x and shift = pi/2. Maximum
- observed error is 2.95 ULP:
- _ZGVsMxvv_atan2f (0x1.93836cp+6, 0x1.8cae1p+6) got 0x1.967f06p-1
- want 0x1.967f00p-1. */
-svfloat32_t SV_NAME_F2 (atan2) (svfloat32_t y, svfloat32_t x, const svbool_t pg)
+ observed error is 2.21 ULP:
+ _ZGVnN4vv_atan2f (0x1.a04aa8p+6, 0x1.9a274p+6) got 0x1.95ed3ap-1
+ want 0x1.95ed36p-1. */
+svfloat32_t SV_NAME_F2 (atan2) (svfloat32_t y, svfloat32_t x,
+ const svbool_t pg)
{
- const struct data *data_ptr = ptr_barrier (&data);
+ const struct data *d = ptr_barrier (&data);
+ svbool_t ptrue = svptrue_b32 ();
svuint32_t ix = svreinterpret_u32 (x);
svuint32_t iy = svreinterpret_u32 (y);
@@ -76,29 +78,42 @@ svfloat32_t SV_NAME_F2 (atan2) (svfloat32_t y, svfloat32_t x, const svbool_t pg)
svbool_t pred_aygtax = svcmpgt (pg, ay, ax);
- /* Set up z for call to atan. */
- svfloat32_t n = svsel (pred_aygtax, svneg_x (pg, ax), ay);
- svfloat32_t d = svsel (pred_aygtax, ay, ax);
- svfloat32_t z = svdiv_x (pg, n, d);
-
- /* Work out the correct shift. */
+ /* Set up z for evaluation of atanf. */
+ svfloat32_t num = svsel (pred_aygtax, svneg_x (pg, ax), ay);
+ svfloat32_t den = svsel (pred_aygtax, ay, ax);
+ svfloat32_t z = svdiv_x (ptrue, num, den);
+
+ /* Work out the correct shift for atan2:
+ Multiplication by pi is done later.
+ -pi when x < 0 and ax < ay
+ -pi/2 when x < 0 and ax > ay
+ 0 when x >= 0 and ax < ay
+ pi/2 when x >= 0 and ax > ay. */
svfloat32_t shift = svreinterpret_f32 (svlsr_x (pg, sign_x, 1));
shift = svsel (pred_aygtax, sv_f32 (1.0), shift);
shift = svreinterpret_f32 (svorr_x (pg, sign_x, svreinterpret_u32 (shift)));
- shift = svmul_x (pg, shift, sv_f32 (data_ptr->pi_over_2));
/* Use pure Estrin scheme for P(z^2) with deg(P)=7. */
- svfloat32_t z2 = svmul_x (pg, z, z);
+ svfloat32_t z2 = svmul_x (ptrue, z, z);
+ svfloat32_t z3 = svmul_x (pg, z2, z);
svfloat32_t z4 = svmul_x (pg, z2, z2);
svfloat32_t z8 = svmul_x (pg, z4, z4);
- svfloat32_t ret = sv_estrin_7_f32_x (pg, z2, z4, z8, data_ptr->poly);
+ svfloat32_t odd_coeffs = svld1rq (ptrue, &d->c1);
- /* ret = shift + z + z^3 * P(z^2). */
- svfloat32_t z3 = svmul_x (pg, z2, z);
- ret = svmla_x (pg, z, z3, ret);
+ svfloat32_t p01 = svmla_lane (sv_f32 (d->c0), z2, odd_coeffs, 0);
+ svfloat32_t p23 = svmla_lane (sv_f32 (d->c2), z2, odd_coeffs, 1);
+ svfloat32_t p45 = svmla_lane (sv_f32 (d->c4), z2, odd_coeffs, 2);
+ svfloat32_t p67 = svmla_lane (sv_f32 (d->c6), z2, odd_coeffs, 3);
- ret = svadd_m (pg, ret, shift);
+ svfloat32_t p03 = svmla_x (pg, p01, z4, p23);
+ svfloat32_t p47 = svmla_x (pg, p45, z4, p67);
+
+ svfloat32_t poly = svmla_x (pg, p03, z8, p47);
+
+ /* ret = shift + z + z^3 * P(z^2). */
+ svfloat32_t ret = svmla_x (pg, z, shift, sv_f32 (d->pi_over_2));
+ ret = svmla_x (pg, ret, z3, poly);
/* Account for the sign of x and y. */
diff --git a/sysdeps/aarch64/fpu/atan2pi_advsimd.c b/sysdeps/aarch64/fpu/atan2pi_advsimd.c
new file mode 100644
index 0000000..3cf231b
--- /dev/null
+++ b/sysdeps/aarch64/fpu/atan2pi_advsimd.c
@@ -0,0 +1,175 @@
+/* Double-Precision vector (Advanced SIMD) inverse tan2pi function
+
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include "v_math.h"
+
+static const struct data
+{
+ float64_t c2, c4, c6, c8, c10, c12, c14, c16, c18, c20;
+ float64x2_t c0;
+ uint64x2_t zeroinfnan;
+ float64x2_t c1, c3, c5, c7, c9, c11, c13, c15, c17, c19;
+} data = {
+ /* Coefficients of polynomial P such that atan(x)~x+x*P(x^2) on
+ [2**-1022, 1.0]. */
+ .c0 = V2 (0x1.45f306dc9c883p-2),
+ .c1 = V2 (-0x1.b2995e7b7ba4ap-4),
+ .c2 = 0x1.04c26be3d2c1p-4,
+ .c3 = V2 (-0x1.7483759c17ea1p-5),
+ .c4 = 0x1.21bb95c315d57p-5,
+ .c5 = V2 (-0x1.da1bdc3d453f3p-6),
+ .c6 = 0x1.912d20459b4bfp-6,
+ .c7 = V2 (-0x1.5bbd4545cad1fp-6),
+ .c8 = 0x1.331b83bec30a1p-6,
+ .c9 = V2 (-0x1.13d6457f44de3p-6),
+ .c10 = 0x1.f8e802974db94p-7,
+ .c11 = V2 (-0x1.d7e173ab04a1ap-7),
+ .c12 = 0x1.bdfa47d6a4f28p-7,
+ .c13 = V2 (-0x1.9ba78f3232ceep-7),
+ .c14 = 0x1.5e6044590ab4fp-7,
+ .c15 = V2 (-0x1.01ccfdeb9f77fp-7),
+ .c16 = 0x1.345cf0d4eb1c1p-8,
+ .c17 = V2 (-0x1.19e5f00f67e3ap-9),
+ .c18 = 0x1.6d3035ac7625bp-11,
+ .c19 = V2 (-0x1.286bb9ae4ed79p-13),
+ .c20 = 0x1.c37ec36da0e1ap-17,
+ .zeroinfnan = V2 (2 * 0x7ff0000000000000ul - 1),
+};
+
+#define SignMask v_u64 (0x8000000000000000)
+#define OneOverPi v_f64 (0x1.45f306dc9c883p-2)
+
+/* Special cases i.e. 0, infinity, NaN (fall back to scalar calls). */
+static float64x2_t VPCS_ATTR NOINLINE
+special_case (float64x2_t y, float64x2_t x, float64x2_t ret,
+ uint64x2_t sign_xy, uint64x2_t cmp)
+{
+ /* Account for the sign of x and y. */
+ ret = vreinterpretq_f64_u64 (
+ veorq_u64 (vreinterpretq_u64_f64 (ret), sign_xy));
+
+ /* Since we have no scalar fallback for atan2pi,
+ we can instead make a call to atan2f and divide by pi. */
+ ret = v_call2_f64 (atan2, y, x, ret, cmp);
+
+ /* Only divide the special cases by pi, and leave the rest unchanged. */
+ return vbslq_f64 (cmp, vmulq_f64 (ret, OneOverPi), ret);
+}
+
+/* Returns 1 if input is the bit representation of 0, infinity or nan. */
+static inline uint64x2_t
+zeroinfnan (uint64x2_t i, const struct data *d)
+{
+ /* (2 * i - 1) >= (2 * asuint64 (INFINITY) - 1). */
+ return vcgeq_u64 (vsubq_u64 (vaddq_u64 (i, i), v_u64 (1)), d->zeroinfnan);
+}
+
+/* Fast implementation of vector atan2pi.
+ Maximum observed error is 3.04 ulps:
+ _ZGVnN2vv_atan2pi (0x1.1e0733532ce28p+5, 0x1.2d803379cca1fp+5)
+ got 0x1.eed60c1e89317p-3 want 0x1.eed60c1e89314p-3. */
+float64x2_t VPCS_ATTR V_NAME_D2 (atan2pi) (float64x2_t y, float64x2_t x)
+{
+ const struct data *d = ptr_barrier (&data);
+
+ uint64x2_t ix = vreinterpretq_u64_f64 (x);
+ uint64x2_t iy = vreinterpretq_u64_f64 (y);
+
+ uint64x2_t special_cases
+ = vorrq_u64 (zeroinfnan (ix, d), zeroinfnan (iy, d));
+
+ uint64x2_t sign_x = vandq_u64 (ix, SignMask);
+ uint64x2_t sign_y = vandq_u64 (iy, SignMask);
+ uint64x2_t sign_xy = veorq_u64 (sign_x, sign_y);
+
+ float64x2_t ax = vabsq_f64 (x);
+ float64x2_t ay = vabsq_f64 (y);
+
+ uint64x2_t pred_xlt0 = vcltzq_f64 (x);
+ uint64x2_t pred_aygtax = vcgtq_f64 (ay, ax);
+
+ /* Set up z for evaluation of atanpi. */
+ float64x2_t num = vbslq_f64 (pred_aygtax, vnegq_f64 (ax), ay);
+ float64x2_t den = vbslq_f64 (pred_aygtax, ay, ax);
+ float64x2_t z = vdivq_f64 (num, den);
+
+ /* Work out the correct shift for atan2pi:
+ -1.0 when x < 0 and ax < ay
+ -0.5 when x < 0 and ax > ay
+ 0 when x >= 0 and ax < ay
+ 0.5 when x >= 0 and ax > ay. */
+ float64x2_t shift = vreinterpretq_f64_u64 (
+ vandq_u64 (pred_xlt0, vreinterpretq_u64_f64 (v_f64 (-1.0))));
+ float64x2_t shift2 = vreinterpretq_f64_u64 (
+ vandq_u64 (pred_aygtax, vreinterpretq_u64_f64 (v_f64 (0.5))));
+ shift = vaddq_f64 (shift, shift2);
+
+ /* Calculate the polynomial approximation. */
+ float64x2_t z2 = vmulq_f64 (z, z);
+ float64x2_t z3 = vmulq_f64 (z2, z);
+ float64x2_t z4 = vmulq_f64 (z2, z2);
+ float64x2_t z8 = vmulq_f64 (z4, z4);
+ float64x2_t z16 = vmulq_f64 (z8, z8);
+
+ float64x2_t c24 = vld1q_f64 (&d->c2);
+ float64x2_t c68 = vld1q_f64 (&d->c6);
+
+ /* Order-7 Estrin. */
+ float64x2_t p12 = vfmaq_laneq_f64 (d->c1, z2, c24, 0);
+ float64x2_t p34 = vfmaq_laneq_f64 (d->c3, z2, c24, 1);
+ float64x2_t p56 = vfmaq_laneq_f64 (d->c5, z2, c68, 0);
+ float64x2_t p78 = vfmaq_laneq_f64 (d->c7, z2, c68, 1);
+
+ float64x2_t p14 = vfmaq_f64 (p12, z4, p34);
+ float64x2_t p58 = vfmaq_f64 (p56, z4, p78);
+ float64x2_t p18 = vfmaq_f64 (p14, z8, p58);
+
+ /* Order-11 Estrin. */
+ float64x2_t c1012 = vld1q_f64 (&d->c10);
+ float64x2_t c1416 = vld1q_f64 (&d->c14);
+ float64x2_t c1820 = vld1q_f64 (&d->c18);
+
+ float64x2_t p910 = vfmaq_laneq_f64 (d->c9, z2, c1012, 0);
+ float64x2_t p1112 = vfmaq_laneq_f64 (d->c11, z2, c1012, 1);
+ float64x2_t p912 = vfmaq_f64 (p910, z4, p1112);
+
+ float64x2_t p1314 = vfmaq_laneq_f64 (d->c13, z2, c1416, 0);
+ float64x2_t p1516 = vfmaq_laneq_f64 (d->c15, z2, c1416, 1);
+ float64x2_t p1316 = vfmaq_f64 (p1314, z4, p1516);
+
+ float64x2_t p1718 = vfmaq_laneq_f64 (d->c17, z2, c1820, 0);
+ float64x2_t p1920 = vfmaq_laneq_f64 (d->c19, z2, c1820, 1);
+ float64x2_t p1720 = vfmaq_f64 (p1718, z4, p1920);
+
+ float64x2_t p916 = vfmaq_f64 (p912, z8, p1316);
+ float64x2_t p920 = vfmaq_f64 (p916, z16, p1720);
+
+ float64x2_t poly = vfmaq_f64 (p18, z16, p920);
+
+ /* y = shift + z * P(z^2). */
+ float64x2_t ret = vfmaq_f64 (shift, z, d->c0);
+ ret = vfmaq_f64 (ret, z3, poly);
+
+ if (__glibc_unlikely (v_any_u64 (special_cases)))
+ return special_case (y, x, ret, sign_xy, special_cases);
+
+ /* Account for the sign of x and y. */
+ return vreinterpretq_f64_u64 (
+ veorq_u64 (vreinterpretq_u64_f64 (ret), sign_xy));
+}
diff --git a/sysdeps/aarch64/fpu/atan2pi_sve.c b/sysdeps/aarch64/fpu/atan2pi_sve.c
new file mode 100644
index 0000000..f1d1f1c
--- /dev/null
+++ b/sysdeps/aarch64/fpu/atan2pi_sve.c
@@ -0,0 +1,159 @@
+/* Double-Precision vector (SVE) inverse tan2pi function
+
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include "math_config.h"
+#include "sv_math.h"
+
+static const struct data
+{
+ float64_t c2, c4, c6, c8, c10, c12, c14, c16, c18, c20;
+ float64_t c0, c1, c3, c5, c7, c9, c11, c13, c15, c17, c19;
+ float64_t shift_val;
+} data = {
+ /* Coefficients of polnomial P such that atan(x)~x+x*P(x^2) on
+ [2^-1022, 1.0]. */
+ .c0 = 0x1.45f306dc9c883p-2, .c1 = -0x1.b2995e7b7ba4ap-4,
+ .c2 = 0x1.04c26be3d2c1p-4, .c3 = -0x1.7483759c17ea1p-5,
+ .c4 = 0x1.21bb95c315d57p-5, .c5 = -0x1.da1bdc3d453f3p-6,
+ .c6 = 0x1.912d20459b4bfp-6, .c7 = -0x1.5bbd4545cad1fp-6,
+ .c8 = 0x1.331b83bec30a1p-6, .c9 = -0x1.13d6457f44de3p-6,
+ .c10 = 0x1.f8e802974db94p-7, .c11 = -0x1.d7e173ab04a1ap-7,
+ .c12 = 0x1.bdfa47d6a4f28p-7, .c13 = -0x1.9ba78f3232ceep-7,
+ .c14 = 0x1.5e6044590ab4fp-7, .c15 = -0x1.01ccfdeb9f77fp-7,
+ .c16 = 0x1.345cf0d4eb1c1p-8, .c17 = -0x1.19e5f00f67e3ap-9,
+ .c18 = 0x1.6d3035ac7625bp-11, .c19 = -0x1.286bb9ae4ed79p-13,
+ .c20 = 0x1.c37ec36da0e1ap-17, .shift_val = 0.5,
+};
+
+#define OneOverPi sv_f64 (0x1.45f306dc9c883p-2)
+
+/* Special cases i.e. 0, infinity, nan (fall back to scalar calls). */
+static svfloat64_t NOINLINE
+special_case (svfloat64_t y, svfloat64_t x, svfloat64_t ret,
+ const svbool_t cmp)
+{
+ ret = sv_call2_f64 (atan2, y, x, ret, cmp);
+ return svmul_f64_m (cmp, ret, OneOverPi);
+}
+
+/* Returns a predicate indicating true if the input is the bit representation
+ of 0, infinity or nan. */
+static inline svbool_t
+zeroinfnan (svuint64_t i, const svbool_t pg)
+{
+ return svcmpge (pg, svsub_x (pg, svlsl_x (pg, i, 1), 1),
+ sv_u64 (2 * asuint64 (INFINITY) - 1));
+}
+
+/* Fast implementation of SVE atan2pi.
+ Maximum observed error is 3.11 ulps:
+ _ZGVsMxvv_atan2pi (0x1.ef284a877f6b5p+6, 0x1.03fdde8242b17p+7)
+ got 0x1.f00f800163079p-3 want 0x1.f00f800163076p-3. */
+svfloat64_t SV_NAME_D2 (atan2pi) (svfloat64_t y, svfloat64_t x,
+ const svbool_t pg)
+{
+ const struct data *d = ptr_barrier (&data);
+ svbool_t ptrue = svptrue_b64 ();
+
+ svuint64_t ix = svreinterpret_u64 (x);
+ svuint64_t iy = svreinterpret_u64 (y);
+
+ svbool_t cmp_x = zeroinfnan (ix, pg);
+ svbool_t cmp_y = zeroinfnan (iy, pg);
+ svbool_t cmp_xy = svorr_z (pg, cmp_x, cmp_y);
+
+ svfloat64_t ax = svabs_x (pg, x);
+ svfloat64_t ay = svabs_x (pg, y);
+ svuint64_t iax = svreinterpret_u64 (ax);
+ svuint64_t iay = svreinterpret_u64 (ay);
+
+ svuint64_t sign_x = sveor_x (pg, ix, iax);
+ svuint64_t sign_y = sveor_x (pg, iy, iay);
+ svuint64_t sign_xy = sveor_x (pg, sign_x, sign_y);
+
+ svbool_t pred_aygtax = svcmpgt (pg, ay, ax);
+
+ /* Set up z for evaluation of atanpi. */
+ svfloat64_t num = svsel (pred_aygtax, svneg_x (pg, ax), ay);
+ svfloat64_t den = svsel (pred_aygtax, ay, ax);
+ svfloat64_t z = svdiv_x (pg, num, den);
+
+ /* Work out the correct shift for atan2pi:
+ -1.0 when x < 0 and ax < ay
+ -0.5 when x < 0 and ax > ay
+ 0 when x >= 0 and ax < ay
+ 0.5 when x >= 0 and ax > ay. */
+ svfloat64_t shift = svreinterpret_f64 (svlsr_x (pg, sign_x, 1));
+ shift = svmul_x (ptrue, shift, sv_f64 (d->shift_val));
+ shift = svsel (pred_aygtax, sv_f64 (d->shift_val), shift);
+ shift = svreinterpret_f64 (svorr_x (pg, sign_x, svreinterpret_u64 (shift)));
+
+ /* Use split Estrin scheme for P(z^2) with deg(P)=19. */
+ svfloat64_t z2 = svmul_x (pg, z, z);
+ svfloat64_t z3 = svmul_x (pg, z2, z);
+ svfloat64_t z4 = svmul_x (pg, z2, z2);
+ svfloat64_t z8 = svmul_x (pg, z4, z4);
+ svfloat64_t z16 = svmul_x (pg, z8, z8);
+
+ /* Order-7 Estrin. */
+ svfloat64_t c24 = svld1rq (ptrue, &d->c2);
+ svfloat64_t c68 = svld1rq (ptrue, &d->c6);
+
+ svfloat64_t p12 = svmla_lane (sv_f64 (d->c1), z2, c24, 0);
+ svfloat64_t p34 = svmla_lane (sv_f64 (d->c3), z2, c24, 1);
+ svfloat64_t p56 = svmla_lane (sv_f64 (d->c5), z2, c68, 0);
+ svfloat64_t p78 = svmla_lane (sv_f64 (d->c7), z2, c68, 1);
+
+ svfloat64_t p14 = svmla_x (pg, p12, z4, p34);
+ svfloat64_t p58 = svmla_x (pg, p56, z4, p78);
+ svfloat64_t p18 = svmla_x (pg, p14, z8, p58);
+
+ /* Order-11 Estrin. */
+ svfloat64_t c1012 = svld1rq (ptrue, &d->c10);
+ svfloat64_t c1416 = svld1rq (ptrue, &d->c14);
+ svfloat64_t c1820 = svld1rq (ptrue, &d->c18);
+
+ svfloat64_t p910 = svmla_lane (sv_f64 (d->c9), z2, c1012, 0);
+ svfloat64_t p1112 = svmla_lane (sv_f64 (d->c11), z2, c1012, 1);
+ svfloat64_t p912 = svmla_x (pg, p910, z4, p1112);
+
+ svfloat64_t p1314 = svmla_lane (sv_f64 (d->c13), z2, c1416, 0);
+ svfloat64_t p1516 = svmla_lane (sv_f64 (d->c15), z2, c1416, 1);
+ svfloat64_t p1316 = svmla_x (pg, p1314, z4, p1516);
+
+ svfloat64_t p1718 = svmla_lane (sv_f64 (d->c17), z2, c1820, 0);
+ svfloat64_t p1920 = svmla_lane (sv_f64 (d->c19), z2, c1820, 1);
+ svfloat64_t p1720 = svmla_x (pg, p1718, z4, p1920);
+
+ svfloat64_t p916 = svmla_x (pg, p912, z8, p1316);
+ svfloat64_t p920 = svmla_x (pg, p916, z16, p1720);
+
+ svfloat64_t poly = svmla_x (pg, p18, z16, p920);
+
+ svfloat64_t ret = svmla_x (pg, shift, z, sv_f64 (d->c0));
+ ret = svmla_x (pg, ret, z3, poly);
+
+ /* Account for the sign of x and y. */
+ if (__glibc_unlikely (svptest_any (pg, cmp_xy)))
+ return special_case (
+ y, x,
+ svreinterpret_f64 (sveor_x (pg, svreinterpret_u64 (ret), sign_xy)),
+ cmp_xy);
+ return svreinterpret_f64 (sveor_x (pg, svreinterpret_u64 (ret), sign_xy));
+}
diff --git a/sysdeps/aarch64/fpu/atan2pif_advsimd.c b/sysdeps/aarch64/fpu/atan2pif_advsimd.c
new file mode 100644
index 0000000..f1f542b
--- /dev/null
+++ b/sysdeps/aarch64/fpu/atan2pif_advsimd.c
@@ -0,0 +1,138 @@
+/* Single-Precision vector (Advanced SIMD) inverse tan2pi function
+
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include "v_math.h"
+
+static const struct data
+{
+ float32x4_t c1, c3, c5, c7;
+ float c2, c4, c6, c8;
+ float32x4_t c0;
+ uint32x4_t comp_const;
+} data = {
+ /* Coefficients of polynomial P such that atan(x)~x+x*P(x^2) on
+ [2^-128, 1.0].
+ Generated using fpminimax between FLT_MIN and 1. */
+ .c0 = V4 (0x1.45f306p-2), .c1 = V4 (-0x1.b2975ep-4),
+ .c2 = 0x1.0490e4p-4, .c3 = V4 (-0x1.70c272p-5),
+ .c4 = 0x1.0eef52p-5, .c5 = V4 (-0x1.6abbbap-6),
+ .c6 = 0x1.78157p-7, .c7 = V4 (-0x1.f0b406p-9),
+ .c8 = 0x1.2ae7fep-11, .comp_const = V4 (2 * 0x7f800000lu - 1),
+};
+
+#define SignMask v_u32 (0x80000000)
+#define OneOverPi v_f32 (0x1.45f307p-2)
+
+/* Special cases i.e. 0, infinity and nan (fall back to scalar calls). */
+static float32x4_t VPCS_ATTR NOINLINE
+special_case (float32x4_t y, float32x4_t x, float32x4_t ret,
+ uint32x4_t sign_xy, uint32x4_t cmp)
+{
+ /* Account for the sign of y. */
+ ret = vreinterpretq_f32_u32 (
+ veorq_u32 (vreinterpretq_u32_f32 (ret), sign_xy));
+
+ /* Since we have no scalar fallback for atan2pif,
+ we can instead make a call to atan2f and divide by pi. */
+ ret = v_call2_f32 (atan2f, y, x, ret, cmp);
+
+ /* Only divide the special cases by pi, and leave the rest unchanged. */
+ return vbslq_f32 (cmp, vmulq_f32 (ret, OneOverPi), ret);
+}
+
+/* Returns 1 if input is the bit representation of 0, infinity or nan. */
+static inline uint32x4_t
+zeroinfnan (uint32x4_t i, const struct data *d)
+{
+ /* 2 * i - 1 >= 2 * 0x7f800000lu - 1. */
+ return vcgeq_u32 (vsubq_u32 (vshlq_n_u32 (i, 1), v_u32 (1)), d->comp_const);
+}
+
+/* Fast implementation of vector atan2f. Maximum observed error is 2.89 ULP:
+ _ZGVnN4vv_atan2pif (0x1.bd397p+54, 0x1.e79a4ap+54) got 0x1.e2678ep-3
+ want 0x1.e26794p-3. */
+float32x4_t VPCS_ATTR NOINLINE V_NAME_F2 (atan2pi) (float32x4_t y,
+ float32x4_t x)
+{
+ const struct data *d = ptr_barrier (&data);
+
+ uint32x4_t ix = vreinterpretq_u32_f32 (x);
+ uint32x4_t iy = vreinterpretq_u32_f32 (y);
+
+ uint32x4_t special_cases
+ = vorrq_u32 (zeroinfnan (ix, d), zeroinfnan (iy, d));
+
+ uint32x4_t sign_x = vandq_u32 (ix, SignMask);
+ uint32x4_t sign_y = vandq_u32 (iy, SignMask);
+ uint32x4_t sign_xy = veorq_u32 (sign_x, sign_y);
+
+ float32x4_t ax = vabsq_f32 (x);
+ float32x4_t ay = vabsq_f32 (y);
+
+ uint32x4_t pred_xlt0 = vcltzq_f32 (x);
+ uint32x4_t pred_aygtax = vcgtq_f32 (ay, ax);
+
+ /* Set up z for evaluation of atanpif. */
+ float32x4_t num = vbslq_f32 (pred_aygtax, vnegq_f32 (ax), ay);
+ float32x4_t den = vbslq_f32 (pred_aygtax, ay, ax);
+ float32x4_t z = vdivq_f32 (num, den);
+
+ /* Work out the correct shift for atan2pi:
+ -1.0 when x < 0 and ax < ay
+ -0.5 when x < 0 and ax > ay
+ 0 when x >= 0 and ax < ay
+ 0.5 when x >= 0 and ax > ay. */
+ float32x4_t shift = vreinterpretq_f32_u32 (
+ vandq_u32 (pred_xlt0, vreinterpretq_u32_f32 (v_f32 (-1.0f))));
+ float32x4_t shift2 = vreinterpretq_f32_u32 (
+ vandq_u32 (pred_aygtax, vreinterpretq_u32_f32 (v_f32 (0.5f))));
+ shift = vaddq_f32 (shift, shift2);
+
+ /* Calculate the polynomial approximation. */
+ float32x4_t z2 = vmulq_f32 (z, z);
+ float32x4_t z3 = vmulq_f32 (z2, z);
+ float32x4_t z4 = vmulq_f32 (z2, z2);
+ float32x4_t z8 = vmulq_f32 (z4, z4);
+
+ float32x4_t c2468 = vld1q_f32 (&d->c2);
+
+ float32x4_t p12 = vfmaq_laneq_f32 (d->c1, z2, c2468, 0);
+ float32x4_t p34 = vfmaq_laneq_f32 (d->c3, z2, c2468, 1);
+ float32x4_t p56 = vfmaq_laneq_f32 (d->c5, z2, c2468, 2);
+ float32x4_t p78 = vfmaq_laneq_f32 (d->c7, z2, c2468, 3);
+ float32x4_t p14 = vfmaq_f32 (p12, z4, p34);
+ float32x4_t p58 = vfmaq_f32 (p56, z4, p78);
+
+ float32x4_t poly = vfmaq_f32 (p14, z8, p58);
+
+ /* y = shift + z * P(z^2). */
+ float32x4_t ret = vfmaq_f32 (shift, z, d->c0);
+ ret = vfmaq_f32 (ret, z3, poly);
+
+ if (__glibc_unlikely (v_any_u32 (special_cases)))
+ {
+ return special_case (y, x, ret, sign_xy, special_cases);
+ }
+
+ /* Account for the sign of y. */
+ return vreinterpretq_f32_u32 (
+ veorq_u32 (vreinterpretq_u32_f32 (ret), sign_xy));
+}
+libmvec_hidden_def (V_NAME_F2 (atan2pi))
+HALF_WIDTH_ALIAS_F2 (atan2pi)
diff --git a/sysdeps/aarch64/fpu/atan2pif_sve.c b/sysdeps/aarch64/fpu/atan2pif_sve.c
new file mode 100644
index 0000000..d5ac4b7
--- /dev/null
+++ b/sysdeps/aarch64/fpu/atan2pif_sve.c
@@ -0,0 +1,137 @@
+/* Single-Precision vector (SVE) inverse tan2pi function
+
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include "sv_math.h"
+
+static const struct data
+{
+ float32_t c0, c1, c3, c5, c7;
+ float32_t c2, c4, c6, c8;
+ float32_t shift_val;
+ uint32_t comp_const;
+} data = {
+ /* Coefficients of polynomial P such that atan(x)~x+x*P(x^2) on
+ [2**-128, 1.0]. */
+ .c0 = 0x1.45f306p-2,
+ .c1 = -0x1.b2975ep-4,
+ .c2 = 0x1.0490e4p-4,
+ .c3 = -0x1.70c272p-5,
+ .c4 = 0x1.0eef52p-5,
+ .c5 = -0x1.6abbbap-6,
+ .c6 = 0x1.78157p-7,
+ .c7 = -0x1.f0b406p-9,
+ .c8 = 0x1.2ae7fep-11,
+ .shift_val = 0.5f,
+ .comp_const = 2 * 0x7f800000lu - 1,
+};
+
+#define OneOverPi sv_f32 (0x1.45f307p-2)
+
+/* Special cases i.e. 0, infinity, nan (fall back to scalar calls). */
+static svfloat32_t NOINLINE
+special_case (svfloat32_t y, svfloat32_t x, svfloat32_t ret,
+ const svbool_t cmp)
+{
+ ret = sv_call2_f32 (atan2f, y, x, ret, cmp);
+ return svmul_f32_x (cmp, ret, OneOverPi);
+}
+
+/* Returns a predicate indicating true if the input is the bit representation
+ of 0, infinity or nan. */
+static inline svbool_t
+zeroinfnan (svuint32_t i, const svbool_t pg, const struct data *d)
+{
+ return svcmpge (pg, svsub_x (pg, svlsl_x (pg, i, 1), 1),
+ sv_u32 (d->comp_const));
+}
+
+/* Fast implementation of SVE atan2pif based on atan(x) ~ shift + z + z^3 *
+ P(z^2) with reduction to [0,1] using z=1/x and shift = 1/2. Maximum
+ observed error is 2.90 ULP:
+ _ZGVsMxvv_atan2pif (0x1.a28542p+5, 0x1.adb7c6p+5) got 0x1.f76524p-3
+ want 0x1.f7651ep-3. */
+svfloat32_t SV_NAME_F2 (atan2pi) (svfloat32_t y, svfloat32_t x,
+ const svbool_t pg)
+{
+ const struct data *d = ptr_barrier (&data);
+ svbool_t ptrue = svptrue_b32 ();
+
+ svuint32_t ix = svreinterpret_u32 (x);
+ svuint32_t iy = svreinterpret_u32 (y);
+
+ svbool_t cmp_x = zeroinfnan (ix, pg, d);
+ svbool_t cmp_y = zeroinfnan (iy, pg, d);
+ svbool_t cmp_xy = svorr_z (pg, cmp_x, cmp_y);
+
+ svfloat32_t ax = svabs_x (pg, x);
+ svfloat32_t ay = svabs_x (pg, y);
+ svuint32_t iax = svreinterpret_u32 (ax);
+ svuint32_t iay = svreinterpret_u32 (ay);
+
+ svuint32_t sign_x = sveor_x (pg, ix, iax);
+ svuint32_t sign_y = sveor_x (pg, iy, iay);
+ svuint32_t sign_xy = sveor_x (pg, sign_x, sign_y);
+
+ svbool_t pred_aygtax = svcmpgt (pg, ay, ax);
+
+ /* Set up z for evaluation of atanpif. */
+ svfloat32_t num = svsel (pred_aygtax, svneg_x (pg, ax), ay);
+ svfloat32_t den = svsel (pred_aygtax, ay, ax);
+ svfloat32_t z = svdiv_x (ptrue, num, den);
+
+ /* Work out the correct shift for atan2pi:
+ -1.0 when x < 0 and ax < ay
+ -0.5 when x < 0 and ax > ay
+ 0 when x >= 0 and ax < ay
+ 0.5 when x >= 0 and ax > ay. */
+ svfloat32_t shift = svreinterpret_f32 (svlsr_x (pg, sign_x, 1));
+ shift = svmul_x (ptrue, shift, sv_f32 (d->shift_val));
+ shift = svsel (pred_aygtax, sv_f32 (d->shift_val), shift);
+ shift = svreinterpret_f32 (svorr_x (pg, sign_x, svreinterpret_u32 (shift)));
+
+ /* Use pure Estrin scheme for P(z^2) with deg(P)=7. */
+ svfloat32_t z2 = svmul_x (pg, z, z);
+ svfloat32_t z4 = svmul_x (pg, z2, z2);
+ svfloat32_t z8 = svmul_x (pg, z4, z4);
+
+ svfloat32_t even_coeffs = svld1rq (ptrue, &d->c2);
+
+ svfloat32_t p12 = svmla_lane (sv_f32 (d->c1), z2, even_coeffs, 0);
+ svfloat32_t p34 = svmla_lane (sv_f32 (d->c3), z2, even_coeffs, 1);
+ svfloat32_t p56 = svmla_lane (sv_f32 (d->c5), z2, even_coeffs, 2);
+ svfloat32_t p78 = svmla_lane (sv_f32 (d->c7), z2, even_coeffs, 3);
+
+ svfloat32_t p14 = svmad_x (pg, z4, p34, p12);
+ svfloat32_t p58 = svmad_x (pg, z4, p78, p56);
+
+ svfloat32_t p18 = svmad_x (pg, z8, p58, p14);
+
+ /* ret = shift + z + z^3 * P(z^2). */
+ svfloat32_t poly = svmad_x (pg, z2, p18, d->c0);
+ svfloat32_t ret = svmad_x (pg, poly, z, shift);
+
+ if (__glibc_unlikely (svptest_any (pg, cmp_xy)))
+ return special_case (
+ y, x,
+ svreinterpret_f32 (sveor_x (pg, svreinterpret_u32 (ret), sign_xy)),
+ cmp_xy);
+
+ /* Account for the sign of x and y. */
+ return svreinterpret_f32 (sveor_x (pg, svreinterpret_u32 (ret), sign_xy));
+}
diff --git a/sysdeps/aarch64/fpu/atan_advsimd.c b/sysdeps/aarch64/fpu/atan_advsimd.c
index f024fd1..da0d371 100644
--- a/sysdeps/aarch64/fpu/atan_advsimd.c
+++ b/sysdeps/aarch64/fpu/atan_advsimd.c
@@ -18,7 +18,6 @@
<https://www.gnu.org/licenses/>. */
#include "v_math.h"
-#include "poly_advsimd_f64.h"
static const struct data
{
@@ -28,16 +27,16 @@ static const struct data
} data = {
/* Coefficients of polynomial P such that atan(x)~x+x*P(x^2) on
[2**-1022, 1.0]. */
- .c0 = V2 (-0x1.5555555555555p-2), .c1 = 0x1.99999999996c1p-3,
- .c2 = V2 (-0x1.2492492478f88p-3), .c3 = 0x1.c71c71bc3951cp-4,
- .c4 = V2 (-0x1.745d160a7e368p-4), .c5 = 0x1.3b139b6a88ba1p-4,
- .c6 = V2 (-0x1.11100ee084227p-4), .c7 = 0x1.e1d0f9696f63bp-5,
- .c8 = V2 (-0x1.aebfe7b418581p-5), .c9 = 0x1.842dbe9b0d916p-5,
- .c10 = V2 (-0x1.5d30140ae5e99p-5), .c11 = 0x1.338e31eb2fbbcp-5,
- .c12 = V2 (-0x1.00e6eece7de8p-5), .c13 = 0x1.860897b29e5efp-6,
- .c14 = V2 (-0x1.0051381722a59p-6), .c15 = 0x1.14e9dc19a4a4ep-7,
- .c16 = V2 (-0x1.d0062b42fe3bfp-9), .c17 = 0x1.17739e210171ap-10,
- .c18 = V2 (-0x1.ab24da7be7402p-13), .c19 = 0x1.358851160a528p-16,
+ .c0 = V2 (-0x1.555555555552ap-2), .c1 = 0x1.9999999995aebp-3,
+ .c2 = V2 (-0x1.24924923923f6p-3), .c3 = 0x1.c71c7184288a2p-4,
+ .c4 = V2 (-0x1.745d11fb3d32bp-4), .c5 = 0x1.3b136a18051b9p-4,
+ .c6 = V2 (-0x1.110e6d985f496p-4), .c7 = 0x1.e1bcf7f08801dp-5,
+ .c8 = V2 (-0x1.ae644e28058c3p-5), .c9 = 0x1.82eeb1fed85c6p-5,
+ .c10 = V2 (-0x1.59d7f901566cbp-5), .c11 = 0x1.2c982855ab069p-5,
+ .c12 = V2 (-0x1.eb49592998177p-6), .c13 = 0x1.69d8b396e3d38p-6,
+ .c14 = V2 (-0x1.ca980345c4204p-7), .c15 = 0x1.dc050eafde0b3p-8,
+ .c16 = V2 (-0x1.7ea70755b8eccp-9), .c17 = 0x1.ba3da3de903e8p-11,
+ .c18 = V2 (-0x1.44a4b059b6f67p-13), .c19 = 0x1.c4a45029e5a91p-17,
.pi_over_2 = V2 (0x1.921fb54442d18p+0),
};
@@ -47,9 +46,9 @@ static const struct data
/* Fast implementation of vector atan.
Based on atan(x) ~ shift + z + z^3 * P(z^2) with reduction to [0,1] using
- z=1/x and shift = pi/2. Maximum observed error is 2.27 ulps:
- _ZGVnN2v_atan (0x1.0005af27c23e9p+0) got 0x1.9225645bdd7c1p-1
- want 0x1.9225645bdd7c3p-1. */
+ z=1/x and shift = pi/2. Maximum observed error is 2.45 ulps:
+ _ZGVnN2v_atan (0x1.0008d737eb3e6p+0) got 0x1.92288c551a4c1p-1
+ want 0x1.92288c551a4c3p-1. */
float64x2_t VPCS_ATTR V_NAME_D1 (atan) (float64x2_t x)
{
const struct data *d = ptr_barrier (&data);
@@ -78,59 +77,53 @@ float64x2_t VPCS_ATTR V_NAME_D1 (atan) (float64x2_t x)
y := arctan(x) for x < 1
y := pi/2 + arctan(-1/x) for x > 1
Hence, use z=-1/a if x>=1, otherwise z=a. */
- uint64x2_t red = vcagtq_f64 (x, v_f64 (1.0));
+ uint64x2_t red = vcagtq_f64 (x, v_f64 (-1.0));
/* Avoid dependency in abs(x) in division (and comparison). */
- float64x2_t z = vbslq_f64 (red, vdivq_f64 (v_f64 (1.0), x), x);
+ float64x2_t z = vbslq_f64 (red, vdivq_f64 (v_f64 (-1.0), x), x);
+
float64x2_t shift = vreinterpretq_f64_u64 (
vandq_u64 (red, vreinterpretq_u64_f64 (d->pi_over_2)));
- /* Use absolute value only when needed (odd powers of z). */
- float64x2_t az = vbslq_f64 (
- SignMask, vreinterpretq_f64_u64 (vandq_u64 (SignMask, red)), z);
-
- /* Calculate the polynomial approximation.
- Use split Estrin scheme for P(z^2) with deg(P)=19. Use split instead of
- full scheme to avoid underflow in x^16.
- The order 19 polynomial P approximates
- (atan(sqrt(x))-sqrt(x))/x^(3/2). */
+
+ /* Reinsert sign bit from argument into the shift value. */
+ shift = vreinterpretq_f64_u64 (
+ veorq_u64 (vreinterpretq_u64_f64 (shift), sign));
+
+ /* Calculate polynomial approximation P(z^2) with deg(P)=19. */
float64x2_t z2 = vmulq_f64 (z, z);
- float64x2_t x2 = vmulq_f64 (z2, z2);
- float64x2_t x4 = vmulq_f64 (x2, x2);
- float64x2_t x8 = vmulq_f64 (x4, x4);
+ float64x2_t z4 = vmulq_f64 (z2, z2);
+ float64x2_t z8 = vmulq_f64 (z4, z4);
+ float64x2_t z16 = vmulq_f64 (z8, z8);
- /* estrin_7. */
+ /* Order-7 Estrin. */
float64x2_t p01 = vfmaq_laneq_f64 (d->c0, z2, c13, 0);
float64x2_t p23 = vfmaq_laneq_f64 (d->c2, z2, c13, 1);
- float64x2_t p03 = vfmaq_f64 (p01, x2, p23);
+ float64x2_t p03 = vfmaq_f64 (p01, z4, p23);
float64x2_t p45 = vfmaq_laneq_f64 (d->c4, z2, c57, 0);
float64x2_t p67 = vfmaq_laneq_f64 (d->c6, z2, c57, 1);
- float64x2_t p47 = vfmaq_f64 (p45, x2, p67);
+ float64x2_t p47 = vfmaq_f64 (p45, z4, p67);
- float64x2_t p07 = vfmaq_f64 (p03, x4, p47);
+ float64x2_t p07 = vfmaq_f64 (p03, z8, p47);
- /* estrin_11. */
+ /* Order-11 Estrin. */
float64x2_t p89 = vfmaq_laneq_f64 (d->c8, z2, c911, 0);
float64x2_t p1011 = vfmaq_laneq_f64 (d->c10, z2, c911, 1);
- float64x2_t p811 = vfmaq_f64 (p89, x2, p1011);
+ float64x2_t p811 = vfmaq_f64 (p89, z4, p1011);
float64x2_t p1213 = vfmaq_laneq_f64 (d->c12, z2, c1315, 0);
float64x2_t p1415 = vfmaq_laneq_f64 (d->c14, z2, c1315, 1);
- float64x2_t p1215 = vfmaq_f64 (p1213, x2, p1415);
+ float64x2_t p1215 = vfmaq_f64 (p1213, z4, p1415);
float64x2_t p1617 = vfmaq_laneq_f64 (d->c16, z2, c1719, 0);
float64x2_t p1819 = vfmaq_laneq_f64 (d->c18, z2, c1719, 1);
- float64x2_t p1619 = vfmaq_f64 (p1617, x2, p1819);
+ float64x2_t p1619 = vfmaq_f64 (p1617, z4, p1819);
- float64x2_t p815 = vfmaq_f64 (p811, x4, p1215);
- float64x2_t p819 = vfmaq_f64 (p815, x8, p1619);
+ float64x2_t p815 = vfmaq_f64 (p811, z8, p1215);
+ float64x2_t p819 = vfmaq_f64 (p815, z16, p1619);
- float64x2_t y = vfmaq_f64 (p07, p819, x8);
+ float64x2_t y = vfmaq_f64 (p07, p819, z16);
/* Finalize. y = shift + z + z^3 * P(z^2). */
- y = vfmaq_f64 (az, y, vmulq_f64 (z2, az));
- y = vaddq_f64 (y, shift);
-
- /* y = atan(x) if x>0, -atan(-x) otherwise. */
- y = vreinterpretq_f64_u64 (veorq_u64 (vreinterpretq_u64_f64 (y), sign));
- return y;
+ y = vfmsq_f64 (v_f64 (-1.0), z2, y);
+ return vfmsq_f64 (shift, z, y);
}
diff --git a/sysdeps/aarch64/fpu/atan_sve.c b/sysdeps/aarch64/fpu/atan_sve.c
index 3880ced..a6b0489 100644
--- a/sysdeps/aarch64/fpu/atan_sve.c
+++ b/sysdeps/aarch64/fpu/atan_sve.c
@@ -18,23 +18,26 @@
<https://www.gnu.org/licenses/>. */
#include "sv_math.h"
-#include "poly_sve_f64.h"
static const struct data
{
- float64_t poly[20];
- float64_t pi_over_2;
+ float64_t c0, c2, c4, c6, c8, c10, c12, c14, c16, c18;
+ float64_t c1, c3, c5, c7, c9, c11, c13, c15, c17, c19;
+ float64_t shift_val, neg_one;
} data = {
/* Coefficients of polynomial P such that atan(x)~x+x*P(x^2) on
[2**-1022, 1.0]. */
- .poly = { -0x1.5555555555555p-2, 0x1.99999999996c1p-3, -0x1.2492492478f88p-3,
- 0x1.c71c71bc3951cp-4, -0x1.745d160a7e368p-4, 0x1.3b139b6a88ba1p-4,
- -0x1.11100ee084227p-4, 0x1.e1d0f9696f63bp-5, -0x1.aebfe7b418581p-5,
- 0x1.842dbe9b0d916p-5, -0x1.5d30140ae5e99p-5, 0x1.338e31eb2fbbcp-5,
- -0x1.00e6eece7de8p-5, 0x1.860897b29e5efp-6, -0x1.0051381722a59p-6,
- 0x1.14e9dc19a4a4ep-7, -0x1.d0062b42fe3bfp-9, 0x1.17739e210171ap-10,
- -0x1.ab24da7be7402p-13, 0x1.358851160a528p-16, },
- .pi_over_2 = 0x1.921fb54442d18p+0,
+ .c0 = -0x1.555555555552ap-2, .c1 = 0x1.9999999995aebp-3,
+ .c2 = -0x1.24924923923f6p-3, .c3 = 0x1.c71c7184288a2p-4,
+ .c4 = -0x1.745d11fb3d32bp-4, .c5 = 0x1.3b136a18051b9p-4,
+ .c6 = -0x1.110e6d985f496p-4, .c7 = 0x1.e1bcf7f08801dp-5,
+ .c8 = -0x1.ae644e28058c3p-5, .c9 = 0x1.82eeb1fed85c6p-5,
+ .c10 = -0x1.59d7f901566cbp-5, .c11 = 0x1.2c982855ab069p-5,
+ .c12 = -0x1.eb49592998177p-6, .c13 = 0x1.69d8b396e3d38p-6,
+ .c14 = -0x1.ca980345c4204p-7, .c15 = 0x1.dc050eafde0b3p-8,
+ .c16 = -0x1.7ea70755b8eccp-9, .c17 = 0x1.ba3da3de903e8p-11,
+ .c18 = -0x1.44a4b059b6f67p-13, .c19 = 0x1.c4a45029e5a91p-17,
+ .shift_val = 0x1.490fdaa22168cp+1, .neg_one = -1,
};
/* Useful constants. */
@@ -43,15 +46,14 @@ static const struct data
/* Fast implementation of SVE atan.
Based on atan(x) ~ shift + z + z^3 * P(z^2) with reduction to [0,1] using
z=1/x and shift = pi/2. Largest errors are close to 1. The maximum observed
- error is 2.27 ulps:
- _ZGVsMxv_atan (0x1.0005af27c23e9p+0) got 0x1.9225645bdd7c1p-1
- want 0x1.9225645bdd7c3p-1. */
+ error is 2.08 ulps:
+ _ZGVsMxv_atan (0x1.000a7c56975e8p+0) got 0x1.922a3163e15c2p-1
+ want 0x1.922a3163e15c4p-1. */
svfloat64_t SV_NAME_D1 (atan) (svfloat64_t x, const svbool_t pg)
{
const struct data *d = ptr_barrier (&data);
- /* No need to trigger special case. Small cases, infs and nans
- are supported by our approximation technique. */
+ svbool_t ptrue = svptrue_b64 ();
svuint64_t ix = svreinterpret_u64 (x);
svuint64_t sign = svand_x (pg, ix, SignMask);
@@ -59,32 +61,60 @@ svfloat64_t SV_NAME_D1 (atan) (svfloat64_t x, const svbool_t pg)
y := arctan(x) for x < 1
y := pi/2 + arctan(-1/x) for x > 1
Hence, use z=-1/a if x>=1, otherwise z=a. */
- svbool_t red = svacgt (pg, x, 1.0);
- /* Avoid dependency in abs(x) in division (and comparison). */
- svfloat64_t z = svsel (red, svdivr_x (pg, x, 1.0), x);
- /* Use absolute value only when needed (odd powers of z). */
- svfloat64_t az = svabs_x (pg, z);
- az = svneg_m (az, red, az);
+ svbool_t red = svacgt (pg, x, d->neg_one);
+ svfloat64_t z = svsel (red, svdiv_x (pg, sv_f64 (d->neg_one), x), x);
+
+ /* Reuse of -1.0f to reduce constant loads,
+ We need a shift value of 1/2, which is created via -1 + (1 + 1/2). */
+ svfloat64_t shift
+ = svadd_z (red, sv_f64 (d->neg_one), sv_f64 (d->shift_val));
+
+ /* Reinserts the sign bit of the argument to handle the case of x < -1. */
+ shift = svreinterpret_f64 (sveor_x (pg, svreinterpret_u64 (shift), sign));
/* Use split Estrin scheme for P(z^2) with deg(P)=19. */
- svfloat64_t z2 = svmul_x (pg, z, z);
- svfloat64_t x2 = svmul_x (pg, z2, z2);
- svfloat64_t x4 = svmul_x (pg, x2, x2);
- svfloat64_t x8 = svmul_x (pg, x4, x4);
+ svfloat64_t z2 = svmul_x (ptrue, z, z);
+ svfloat64_t z4 = svmul_x (ptrue, z2, z2);
+ svfloat64_t z8 = svmul_x (ptrue, z4, z4);
+ svfloat64_t z16 = svmul_x (ptrue, z8, z8);
- svfloat64_t y
- = svmla_x (pg, sv_estrin_7_f64_x (pg, z2, x2, x4, d->poly),
- sv_estrin_11_f64_x (pg, z2, x2, x4, x8, d->poly + 8), x8);
+ /* Order-7 Estrin. */
+ svfloat64_t c13 = svld1rq (ptrue, &d->c1);
+ svfloat64_t c57 = svld1rq (ptrue, &d->c5);
- /* y = shift + z + z^3 * P(z^2). */
- svfloat64_t z3 = svmul_x (pg, z2, az);
- y = svmla_x (pg, az, z3, y);
+ svfloat64_t p01 = svmla_lane (sv_f64 (d->c0), z2, c13, 0);
+ svfloat64_t p23 = svmla_lane (sv_f64 (d->c2), z2, c13, 1);
+ svfloat64_t p45 = svmla_lane (sv_f64 (d->c4), z2, c57, 0);
+ svfloat64_t p67 = svmla_lane (sv_f64 (d->c6), z2, c57, 1);
+
+ svfloat64_t p03 = svmla_x (pg, p01, z4, p23);
+ svfloat64_t p47 = svmla_x (pg, p45, z4, p67);
+ svfloat64_t p07 = svmla_x (pg, p03, z8, p47);
+
+ /* Order-11 Estrin. */
+ svfloat64_t c911 = svld1rq (ptrue, &d->c9);
+ svfloat64_t c1315 = svld1rq (ptrue, &d->c13);
+ svfloat64_t c1719 = svld1rq (ptrue, &d->c17);
- /* Apply shift as indicated by `red` predicate. */
- y = svadd_m (red, y, d->pi_over_2);
+ svfloat64_t p89 = svmla_lane (sv_f64 (d->c8), z2, c911, 0);
+ svfloat64_t p1011 = svmla_lane (sv_f64 (d->c10), z2, c911, 1);
+ svfloat64_t p811 = svmla_x (pg, p89, z4, p1011);
- /* y = atan(x) if x>0, -atan(-x) otherwise. */
- y = svreinterpret_f64 (sveor_x (pg, svreinterpret_u64 (y), sign));
+ svfloat64_t p1213 = svmla_lane (sv_f64 (d->c12), z2, c1315, 0);
+ svfloat64_t p1415 = svmla_lane (sv_f64 (d->c14), z2, c1315, 1);
+ svfloat64_t p1215 = svmla_x (pg, p1213, z4, p1415);
- return y;
+ svfloat64_t p1617 = svmla_lane (sv_f64 (d->c16), z2, c1719, 0);
+ svfloat64_t p1819 = svmla_lane (sv_f64 (d->c18), z2, c1719, 1);
+ svfloat64_t p1619 = svmla_x (pg, p1617, z4, p1819);
+
+ svfloat64_t p815 = svmla_x (pg, p811, z8, p1215);
+ svfloat64_t p819 = svmla_x (pg, p815, z16, p1619);
+
+ svfloat64_t y = svmla_x (pg, p07, z16, p819);
+
+ /* y = shift + z + z^3 * P(z^2). */
+ shift = svadd_m (red, z, shift);
+ y = svmul_x (pg, z2, y);
+ return svmla_x (pg, shift, z, y);
}
diff --git a/sysdeps/aarch64/fpu/atanf_advsimd.c b/sysdeps/aarch64/fpu/atanf_advsimd.c
index 472865e..817a47e 100644
--- a/sysdeps/aarch64/fpu/atanf_advsimd.c
+++ b/sysdeps/aarch64/fpu/atanf_advsimd.c
@@ -22,26 +22,35 @@
static const struct data
{
+ uint32x4_t sign_mask, pi_over_2;
+ float32x4_t neg_one;
+#if WANT_SIMD_EXCEPT
float32x4_t poly[8];
- float32x4_t pi_over_2;
+} data = {
+ .poly = { V4 (-0x1.5554dcp-2), V4 (0x1.9978ecp-3), V4 (-0x1.230a94p-3),
+ V4 (0x1.b4debp-4), V4 (-0x1.3550dap-4), V4 (0x1.61eebp-5),
+ V4 (-0x1.0c17d4p-6), V4 (0x1.7ea694p-9) },
+#else
+ float32x4_t c0, c2, c4, c6;
+ float c1, c3, c5, c7;
} data = {
/* Coefficients of polynomial P such that atan(x)~x+x*P(x^2) on
[2**-128, 1.0].
Generated using fpminimax between FLT_MIN and 1. */
- .poly = { V4 (-0x1.55555p-2f), V4 (0x1.99935ep-3f), V4 (-0x1.24051ep-3f),
- V4 (0x1.bd7368p-4f), V4 (-0x1.491f0ep-4f), V4 (0x1.93a2c0p-5f),
- V4 (-0x1.4c3c60p-6f), V4 (0x1.01fd88p-8f) },
- .pi_over_2 = V4 (0x1.921fb6p+0f),
+ .c0 = V4 (-0x1.5554dcp-2), .c1 = 0x1.9978ecp-3,
+ .c2 = V4 (-0x1.230a94p-3), .c3 = 0x1.b4debp-4,
+ .c4 = V4 (-0x1.3550dap-4), .c5 = 0x1.61eebp-5,
+ .c6 = V4 (-0x1.0c17d4p-6), .c7 = 0x1.7ea694p-9,
+#endif
+ .pi_over_2 = V4 (0x3fc90fdb),
+ .neg_one = V4 (-1.0f),
+ .sign_mask = V4 (0x80000000),
};
-#define SignMask v_u32 (0x80000000)
-
-#define P(i) d->poly[i]
-
+#if WANT_SIMD_EXCEPT
#define TinyBound 0x30800000 /* asuint(0x1p-30). */
#define BigBound 0x4e800000 /* asuint(0x1p30). */
-#if WANT_SIMD_EXCEPT
static float32x4_t VPCS_ATTR NOINLINE
special_case (float32x4_t x, float32x4_t y, uint32x4_t special)
{
@@ -51,19 +60,20 @@ special_case (float32x4_t x, float32x4_t y, uint32x4_t special)
/* Fast implementation of vector atanf based on
atan(x) ~ shift + z + z^3 * P(z^2) with reduction to [0,1]
- using z=-1/x and shift = pi/2. Maximum observed error is 2.9ulps:
- _ZGVnN4v_atanf (0x1.0468f6p+0) got 0x1.967f06p-1 want 0x1.967fp-1. */
+ using z=-1/x and shift = pi/2. Maximum observed error is 2.02 ulps:
+ _ZGVnN4v_atanf (0x1.03d4cep+0) got 0x1.95ed3ap-1
+ want 0x1.95ed36p-1. */
float32x4_t VPCS_ATTR NOINLINE V_NAME_F1 (atan) (float32x4_t x)
{
const struct data *d = ptr_barrier (&data);
- /* Small cases, infs and nans are supported by our approximation technique,
- but do not set fenv flags correctly. Only trigger special case if we need
- fenv. */
uint32x4_t ix = vreinterpretq_u32_f32 (x);
- uint32x4_t sign = vandq_u32 (ix, SignMask);
+ uint32x4_t sign = vandq_u32 (ix, d->sign_mask);
#if WANT_SIMD_EXCEPT
+ /* Small cases, infs and nans are supported by our approximation technique,
+ but do not set fenv flags correctly. Only trigger special case if we need
+ fenv. */
uint32x4_t ia = vandq_u32 (ix, v_u32 (0x7ff00000));
uint32x4_t special = vcgtq_u32 (vsubq_u32 (ia, v_u32 (TinyBound)),
v_u32 (BigBound - TinyBound));
@@ -71,41 +81,52 @@ float32x4_t VPCS_ATTR NOINLINE V_NAME_F1 (atan) (float32x4_t x)
if (__glibc_unlikely (v_any_u32 (special)))
return special_case (x, x, v_u32 (-1));
#endif
-
/* Argument reduction:
- y := arctan(x) for x < 1
- y := pi/2 + arctan(-1/x) for x > 1
- Hence, use z=-1/a if x>=1, otherwise z=a. */
- uint32x4_t red = vcagtq_f32 (x, v_f32 (1.0));
- /* Avoid dependency in abs(x) in division (and comparison). */
- float32x4_t z = vbslq_f32 (red, vdivq_f32 (v_f32 (1.0f), x), x);
+ y := arctan(x) for |x| < 1
+ y := arctan(-1/x) + pi/2 for x > +1
+ y := arctan(-1/x) - pi/2 for x < -1
+ Hence, use z=-1/a if x>=|-1|, otherwise z=a. */
+ uint32x4_t red = vcagtq_f32 (x, d->neg_one);
+
+ float32x4_t z = vbslq_f32 (red, vdivq_f32 (d->neg_one, x), x);
+
+ /* Shift is calculated as +-pi/2 or 0, depending on the argument case. */
float32x4_t shift = vreinterpretq_f32_u32 (
- vandq_u32 (red, vreinterpretq_u32_f32 (d->pi_over_2)));
- /* Use absolute value only when needed (odd powers of z). */
- float32x4_t az = vbslq_f32 (
- SignMask, vreinterpretq_f32_u32 (vandq_u32 (SignMask, red)), z);
+ vandq_u32 (red, veorq_u32 (d->pi_over_2, sign)));
+
+ float32x4_t z2 = vmulq_f32 (z, z);
+ float32x4_t z3 = vmulq_f32 (z, z2);
+ float32x4_t z4 = vmulq_f32 (z2, z2);
+#if WANT_SIMD_EXCEPT
/* Calculate the polynomial approximation.
Use 2-level Estrin scheme for P(z^2) with deg(P)=7. However,
a standard implementation using z8 creates spurious underflow
in the very last fma (when z^8 is small enough).
- Therefore, we split the last fma into a mul and an fma.
- Horner and single-level Estrin have higher errors that exceed
- threshold. */
- float32x4_t z2 = vmulq_f32 (z, z);
- float32x4_t z4 = vmulq_f32 (z2, z2);
-
+ Therefore, we split the last fma into a mul and an fma. */
float32x4_t y = vfmaq_f32 (
v_pairwise_poly_3_f32 (z2, z4, d->poly), z4,
vmulq_f32 (z4, v_pairwise_poly_3_f32 (z2, z4, d->poly + 4)));
- /* y = shift + z * P(z^2). */
- y = vaddq_f32 (vfmaq_f32 (az, y, vmulq_f32 (z2, az)), shift);
+#else
+ float32x4_t z8 = vmulq_f32 (z4, z4);
+
+ /* Uses an Estrin scheme for polynomial approximation. */
+ float32x4_t odd_coeffs = vld1q_f32 (&d->c1);
+
+ float32x4_t p01 = vfmaq_laneq_f32 (d->c0, z2, odd_coeffs, 0);
+ float32x4_t p23 = vfmaq_laneq_f32 (d->c2, z2, odd_coeffs, 1);
+ float32x4_t p45 = vfmaq_laneq_f32 (d->c4, z2, odd_coeffs, 2);
+ float32x4_t p67 = vfmaq_laneq_f32 (d->c6, z2, odd_coeffs, 3);
- /* y = atan(x) if x>0, -atan(-x) otherwise. */
- y = vreinterpretq_f32_u32 (veorq_u32 (vreinterpretq_u32_f32 (y), sign));
+ float32x4_t p03 = vfmaq_f32 (p01, z4, p23);
+ float32x4_t p47 = vfmaq_f32 (p45, z4, p67);
- return y;
+ float32x4_t y = vfmaq_f32 (p03, z8, p47);
+#endif
+
+ /* y = shift + z * P(z^2). */
+ return vfmaq_f32 (vaddq_f32 (shift, z), z3, y);
}
libmvec_hidden_def (V_NAME_F1 (atan))
HALF_WIDTH_ALIAS_F1 (atan)
diff --git a/sysdeps/aarch64/fpu/atanf_sve.c b/sysdeps/aarch64/fpu/atanf_sve.c
index 3a98d70..6558223 100644
--- a/sysdeps/aarch64/fpu/atanf_sve.c
+++ b/sysdeps/aarch64/fpu/atanf_sve.c
@@ -18,18 +18,26 @@
<https://www.gnu.org/licenses/>. */
#include "sv_math.h"
-#include "poly_sve_f32.h"
static const struct data
{
- float32_t poly[8];
- float32_t pi_over_2;
+ float32_t c1, c3, c5, c7;
+ float32_t c0, c2, c4, c6;
+ float32_t shift_val, neg_one;
} data = {
/* Coefficients of polynomial P such that atan(x)~x+x*P(x^2) on
[2**-128, 1.0]. */
- .poly = { -0x1.55555p-2f, 0x1.99935ep-3f, -0x1.24051ep-3f, 0x1.bd7368p-4f,
- -0x1.491f0ep-4f, 0x1.93a2c0p-5f, -0x1.4c3c60p-6f, 0x1.01fd88p-8f },
- .pi_over_2 = 0x1.921fb6p+0f,
+ .c0 = -0x1.5554dcp-2,
+ .c1 = 0x1.9978ecp-3,
+ .c2 = -0x1.230a94p-3,
+ .c3 = 0x1.b4debp-4,
+ .c4 = -0x1.3550dap-4,
+ .c5 = 0x1.61eebp-5,
+ .c6 = -0x1.0c17d4p-6,
+ .c7 = 0x1.7ea694p-9,
+ /* pi/2, used as a shift value after reduction. */
+ .shift_val = 0x1.921fb54442d18p+0,
+ .neg_one = -1.0f,
};
#define SignMask (0x80000000)
@@ -37,43 +45,49 @@ static const struct data
/* Fast implementation of SVE atanf based on
atan(x) ~ shift + z + z^3 * P(z^2) with reduction to [0,1] using
z=-1/x and shift = pi/2.
- Largest observed error is 2.9 ULP, close to +/-1.0:
- _ZGVsMxv_atanf (0x1.0468f6p+0) got -0x1.967f06p-1
- want -0x1.967fp-1. */
+ Largest observed error is 2.12 ULP:
+ _ZGVsMxv_atanf (0x1.03d4cep+0) got 0x1.95ed3ap-1
+ want 0x1.95ed36p-1. */
svfloat32_t SV_NAME_F1 (atan) (svfloat32_t x, const svbool_t pg)
{
const struct data *d = ptr_barrier (&data);
+ svbool_t ptrue = svptrue_b32 ();
/* No need to trigger special case. Small cases, infs and nans
are supported by our approximation technique. */
svuint32_t ix = svreinterpret_u32 (x);
- svuint32_t sign = svand_x (pg, ix, SignMask);
+ svuint32_t sign = svand_x (ptrue, ix, SignMask);
/* Argument reduction:
y := arctan(x) for x < 1
- y := pi/2 + arctan(-1/x) for x > 1
- Hence, use z=-1/a if x>=1, otherwise z=a. */
- svbool_t red = svacgt (pg, x, 1.0f);
- /* Avoid dependency in abs(x) in division (and comparison). */
- svfloat32_t z = svsel (red, svdiv_x (pg, sv_f32 (1.0f), x), x);
- /* Use absolute value only when needed (odd powers of z). */
- svfloat32_t az = svabs_x (pg, z);
- az = svneg_m (az, red, az);
-
- /* Use split Estrin scheme for P(z^2) with deg(P)=7. */
- svfloat32_t z2 = svmul_x (pg, z, z);
- svfloat32_t z4 = svmul_x (pg, z2, z2);
- svfloat32_t z8 = svmul_x (pg, z4, z4);
-
- svfloat32_t y = sv_estrin_7_f32_x (pg, z2, z4, z8, d->poly);
-
- /* y = shift + z + z^3 * P(z^2). */
- svfloat32_t z3 = svmul_x (pg, z2, az);
- y = svmla_x (pg, az, z3, y);
-
- /* Apply shift as indicated by 'red' predicate. */
- y = svadd_m (red, y, sv_f32 (d->pi_over_2));
-
- /* y = atan(x) if x>0, -atan(-x) otherwise. */
- return svreinterpret_f32 (sveor_x (pg, svreinterpret_u32 (y), sign));
+ y := arctan(-1/x) + pi/2 for x > +1
+ y := arctan(-1/x) - pi/2 for x < -1
+ Hence, use z=-1/a if |x|>=|-1|, otherwise z=a. */
+ svbool_t red = svacgt (pg, x, d->neg_one);
+ svfloat32_t z = svsel (red, svdiv_x (pg, sv_f32 (d->neg_one), x), x);
+
+ /* Reinserts the sign bit of the argument to handle the case of x < -1. */
+ svfloat32_t shift = svreinterpret_f32 (
+ sveor_x (red, svreinterpret_u32 (sv_f32 (d->shift_val)), sign));
+
+ svfloat32_t z2 = svmul_x (ptrue, z, z);
+ svfloat32_t z3 = svmul_x (ptrue, z2, z);
+ svfloat32_t z4 = svmul_x (ptrue, z2, z2);
+ svfloat32_t z8 = svmul_x (ptrue, z4, z4);
+
+ svfloat32_t odd_coeffs = svld1rq (ptrue, &d->c1);
+
+ svfloat32_t p01 = svmla_lane (sv_f32 (d->c0), z2, odd_coeffs, 0);
+ svfloat32_t p23 = svmla_lane (sv_f32 (d->c2), z2, odd_coeffs, 1);
+ svfloat32_t p45 = svmla_lane (sv_f32 (d->c4), z2, odd_coeffs, 2);
+ svfloat32_t p67 = svmla_lane (sv_f32 (d->c6), z2, odd_coeffs, 3);
+
+ svfloat32_t p03 = svmla_x (pg, p01, z4, p23);
+ svfloat32_t p47 = svmla_x (pg, p45, z4, p67);
+
+ svfloat32_t y = svmla_x (pg, p03, z8, p47);
+
+ /* shift + z + z^3 * P(z^2). */
+ shift = svadd_m (red, z, shift);
+ return svmla_x (pg, shift, z3, y);
}
diff --git a/sysdeps/aarch64/fpu/atanh_sve.c b/sysdeps/aarch64/fpu/atanh_sve.c
index 16a7cf6..958d69a 100644
--- a/sysdeps/aarch64/fpu/atanh_sve.c
+++ b/sysdeps/aarch64/fpu/atanh_sve.c
@@ -30,7 +30,7 @@ special_case (svfloat64_t x, svfloat64_t y, svbool_t special)
}
/* SVE approximation for double-precision atanh, based on log1p.
- The greatest observed error is 2.81 ULP:
+ The greatest observed error is 3.3 ULP:
_ZGVsMxv_atanh(0x1.ffae6288b601p-6) got 0x1.ffd8ff31b5019p-6
want 0x1.ffd8ff31b501cp-6. */
svfloat64_t SV_NAME_D1 (atanh) (svfloat64_t x, const svbool_t pg)
@@ -42,7 +42,6 @@ svfloat64_t SV_NAME_D1 (atanh) (svfloat64_t x, const svbool_t pg)
svfloat64_t halfsign = svreinterpret_f64 (svorr_x (pg, sign, Half));
/* It is special if iax >= 1. */
-// svbool_t special = svcmpge (pg, iax, One);
svbool_t special = svacge (pg, x, 1.0);
/* Computation is performed based on the following sequence of equality:
diff --git a/sysdeps/aarch64/fpu/atanpi_advsimd.c b/sysdeps/aarch64/fpu/atanpi_advsimd.c
new file mode 100644
index 0000000..9101419
--- /dev/null
+++ b/sysdeps/aarch64/fpu/atanpi_advsimd.c
@@ -0,0 +1,117 @@
+/* Double-Precision vector (Advanced SIMD) inverse tanpi function
+
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include "v_math.h"
+
+static const struct data
+{
+ double c2, c4, c6, c8, c10, c12, c14, c16, c18, c20;
+ float64x2_t c0, c1, c3, c5, c7, c9, c11, c13, c15, c17, c19;
+} data = {
+ /* Coefficients of polynomial P such that atanpi(x)~x*P(x^2) on
+ [2^-1022, 1.0]. */
+ .c0 = V2 (0x1.45f306dc9c883p-2), .c1 = V2 (-0x1.b2995e7b7ba4ap-4),
+ .c2 = 0x1.04c26be3d2c1p-4, .c3 = V2 (-0x1.7483759c17ea1p-5),
+ .c4 = 0x1.21bb95c315d57p-5, .c5 = V2 (-0x1.da1bdc3d453f3p-6),
+ .c6 = 0x1.912d20459b4bfp-6, .c7 = V2 (-0x1.5bbd4545cad1fp-6),
+ .c8 = 0x1.331b83bec30a1p-6, .c9 = V2 (-0x1.13d6457f44de3p-6),
+ .c10 = 0x1.f8e802974db94p-7, .c11 = V2 (-0x1.d7e173ab04a1ap-7),
+ .c12 = 0x1.bdfa47d6a4f28p-7, .c13 = V2 (-0x1.9ba78f3232ceep-7),
+ .c14 = 0x1.5e6044590ab4fp-7, .c15 = V2 (-0x1.01ccfdeb9f77fp-7),
+ .c16 = 0x1.345cf0d4eb1c1p-8, .c17 = V2 (-0x1.19e5f00f67e3ap-9),
+ .c18 = 0x1.6d3035ac7625bp-11, .c19 = V2 (-0x1.286bb9ae4ed79p-13),
+ .c20 = 0x1.c37ec36da0e1ap-17,
+};
+
+#define SignMask v_u64 (0x8000000000000000)
+
+/* Fast implementation of vector atanpi.
+ atanpi(x) ~ shift + z * P(z^2) with reduction to [0,1] using
+ z=1/x and shift = +-1/2. Maximum observed error is 2.76 ulps:
+ _ZGVnN2v_atanpi(0x1.fa2d6912cd64fp-1) got 0x1.fc45a51bd497fp-3
+ want 0x1.fc45a51bd497cp-3. */
+float64x2_t VPCS_ATTR V_NAME_D1 (atanpi) (float64x2_t x)
+{
+ const struct data *d = ptr_barrier (&data);
+
+ uint64x2_t ix = vreinterpretq_u64_f64 (x);
+ uint64x2_t sign = vandq_u64 (ix, SignMask);
+
+ /* Argument Reduction:
+ y := arctanpi(x) for |x| < 1
+ y := arctanpi(-1/x) + 1/2 for x > 1
+ y := arctanpi(-1/x) - 1/2 for x < -1
+ Hence, use z=-1/a if |x|>=|-1|, otherwise z=a. */
+ uint64x2_t red = vcagtq_f64 (x, v_f64 (-1.0));
+ float64x2_t z = vbslq_f64 (red, vdivq_f64 (v_f64 (-1.0), x), x);
+
+ /* Shift is calculated as +1/2 or 0, depending on the argument case. */
+ float64x2_t shift = vreinterpretq_f64_u64 (
+ vandq_u64 (red, vreinterpretq_u64_f64 (v_f64 (0.5))));
+
+ /* Reinsert sign bit from argument into the shift value. */
+ shift = vreinterpretq_f64_u64 (
+ veorq_u64 (vreinterpretq_u64_f64 (shift), sign));
+
+ /* Calculate polynomial approximation P(z^2) with deg(P)=19. */
+ float64x2_t z2 = vmulq_f64 (z, z);
+ float64x2_t z4 = vmulq_f64 (z2, z2);
+ float64x2_t z8 = vmulq_f64 (z4, z4);
+ float64x2_t z16 = vmulq_f64 (z8, z8);
+
+ float64x2_t c24 = vld1q_f64 (&d->c2);
+ float64x2_t c68 = vld1q_f64 (&d->c6);
+
+ /* Order-7 Estrin. */
+ float64x2_t p12 = vfmaq_laneq_f64 (d->c1, z2, c24, 0);
+ float64x2_t p34 = vfmaq_laneq_f64 (d->c3, z2, c24, 1);
+ float64x2_t p56 = vfmaq_laneq_f64 (d->c5, z2, c68, 0);
+ float64x2_t p78 = vfmaq_laneq_f64 (d->c7, z2, c68, 1);
+
+ float64x2_t p14 = vfmaq_f64 (p12, z4, p34);
+ float64x2_t p58 = vfmaq_f64 (p56, z4, p78);
+ float64x2_t p18 = vfmaq_f64 (p14, z8, p58);
+
+ /* Order-11 Estrin. */
+ float64x2_t c1012 = vld1q_f64 (&d->c10);
+ float64x2_t c1416 = vld1q_f64 (&d->c14);
+ float64x2_t c1820 = vld1q_f64 (&d->c18);
+
+ float64x2_t p910 = vfmaq_laneq_f64 (d->c9, z2, c1012, 0);
+ float64x2_t p1112 = vfmaq_laneq_f64 (d->c11, z2, c1012, 1);
+ float64x2_t p912 = vfmaq_f64 (p910, z4, p1112);
+
+ float64x2_t p1314 = vfmaq_laneq_f64 (d->c13, z2, c1416, 0);
+ float64x2_t p1516 = vfmaq_laneq_f64 (d->c15, z2, c1416, 1);
+ float64x2_t p1316 = vfmaq_f64 (p1314, z4, p1516);
+
+ float64x2_t p1718 = vfmaq_laneq_f64 (d->c17, z2, c1820, 0);
+ float64x2_t p1920 = vfmaq_laneq_f64 (d->c19, z2, c1820, 1);
+ float64x2_t p1720 = vfmaq_f64 (p1718, z4, p1920);
+
+ float64x2_t p916 = vfmaq_f64 (p912, z8, p1316);
+ float64x2_t p920 = vfmaq_f64 (p916, z16, p1720);
+
+ float64x2_t y = vfmaq_f64 (p18, p920, z16);
+
+ y = vfmaq_f64 (d->c0, z2, y);
+
+ /* y = shift + z * p(z^2). */
+ return vfmaq_f64 (shift, z, y);
+}
diff --git a/sysdeps/aarch64/fpu/atanpi_sve.c b/sysdeps/aarch64/fpu/atanpi_sve.c
new file mode 100644
index 0000000..3f8f277
--- /dev/null
+++ b/sysdeps/aarch64/fpu/atanpi_sve.c
@@ -0,0 +1,127 @@
+/* Double-Precision vector (SVE) inverse tanpi function
+
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include "sv_math.h"
+
+static const struct data
+{
+ float64_t c2, c4, c6, c8, c10, c12, c14, c16, c18, c20;
+ float64_t c0, c1, c3, c5, c7, c9, c11, c13, c15, c17, c19;
+ float64_t shift_val, neg_one;
+} data = {
+ /* Coefficients of polnomial P such that atan(x)~x+x*P(x^2) on
+ [2^-1022, 1.0]. */
+ .c0 = 0x1.45f306dc9c883p-2,
+ .c1 = -0x1.b2995e7b7ba4ap-4,
+ .c2 = 0x1.04c26be3d2c1p-4,
+ .c3 = -0x1.7483759c17ea1p-5,
+ .c4 = 0x1.21bb95c315d57p-5,
+ .c5 = -0x1.da1bdc3d453f3p-6,
+ .c6 = 0x1.912d20459b4bfp-6,
+ .c7 = -0x1.5bbd4545cad1fp-6,
+ .c8 = 0x1.331b83bec30a1p-6,
+ .c9 = -0x1.13d6457f44de3p-6,
+ .c10 = 0x1.f8e802974db94p-7,
+ .c11 = -0x1.d7e173ab04a1ap-7,
+ .c12 = 0x1.bdfa47d6a4f28p-7,
+ .c13 = -0x1.9ba78f3232ceep-7,
+ .c14 = 0x1.5e6044590ab4fp-7,
+ .c15 = -0x1.01ccfdeb9f77fp-7,
+ .c16 = 0x1.345cf0d4eb1c1p-8,
+ .c17 = -0x1.19e5f00f67e3ap-9,
+ .c18 = 0x1.6d3035ac7625bp-11,
+ .c19 = -0x1.286bb9ae4ed79p-13,
+ .c20 = 0x1.c37ec36da0e1ap-17,
+ .shift_val = 1.5,
+ .neg_one = -1,
+};
+
+/* Fast implementation of SVE atan.
+ Based on atan(x) ~ shift + z + z^3 * P(z^2) with reduction to 0,1 using
+ z=1/x and shift = pi/2. Largest errors are close to 1. The maximum observed
+ error is 2.80 ulps:
+ _ZGVsMxv_atanpi(0x1.f19587d63c76fp-1) got 0x1.f6b1304817d02p-3
+ want 0x1.f6b1304817d05p-3. */
+svfloat64_t SV_NAME_D1 (atanpi) (svfloat64_t x, const svbool_t pg)
+{
+ const struct data *d = ptr_barrier (&data);
+
+ svbool_t ptrue = svptrue_b64 ();
+ svuint64_t ix = svreinterpret_u64 (x);
+ svuint64_t sign = svand_x (pg, ix, 0x8000000000000000);
+
+ /* Argument reduction:
+ y := arctan(x) for x < 1
+ y := pi/2 + arctan(-1/x) for x > 1
+ Hence, use z=-1/a if x>=1, otherwise z=a. */
+ svbool_t red = svacgt (pg, x, d->neg_one);
+ svfloat64_t z = svsel (red, svdiv_x (pg, sv_f64 (d->neg_one), x), x);
+
+ /* Reuse of -1.0f to reduce constant loads,
+ We need a shift value of 1/2, which is created via -1 + (1 + 1/2). */
+ svfloat64_t shift
+ = svadd_z (red, sv_f64 (d->neg_one), sv_f64 (d->shift_val));
+
+ /* Reinserts the sign bit of the argument to handle the case of x < -1. */
+ shift = svreinterpret_f64 (sveor_x (pg, svreinterpret_u64 (shift), sign));
+
+ /* Use split Estrin scheme for P(z^2) with deg(P)=19. */
+ svfloat64_t z2 = svmul_x (ptrue, z, z);
+ svfloat64_t z4 = svmul_x (ptrue, z2, z2);
+ svfloat64_t z8 = svmul_x (ptrue, z4, z4);
+ svfloat64_t z16 = svmul_x (ptrue, z8, z8);
+
+ /* Order-7 Estrin. */
+ svfloat64_t c24 = svld1rq (ptrue, &d->c2);
+ svfloat64_t c68 = svld1rq (ptrue, &d->c6);
+
+ svfloat64_t p12 = svmla_lane (sv_f64 (d->c1), z2, c24, 0);
+ svfloat64_t p34 = svmla_lane (sv_f64 (d->c3), z2, c24, 1);
+ svfloat64_t p56 = svmla_lane (sv_f64 (d->c5), z2, c68, 0);
+ svfloat64_t p78 = svmla_lane (sv_f64 (d->c7), z2, c68, 1);
+
+ svfloat64_t p14 = svmla_x (pg, p12, z4, p34);
+ svfloat64_t p58 = svmla_x (pg, p56, z4, p78);
+ svfloat64_t p18 = svmla_x (pg, p14, z8, p58);
+
+ /* Order-11 Estrin. */
+ svfloat64_t c1012 = svld1rq (ptrue, &d->c10);
+ svfloat64_t c1416 = svld1rq (ptrue, &d->c14);
+ svfloat64_t c1820 = svld1rq (ptrue, &d->c18);
+
+ svfloat64_t p910 = svmla_lane (sv_f64 (d->c9), z2, c1012, 0);
+ svfloat64_t p1112 = svmla_lane (sv_f64 (d->c11), z2, c1012, 1);
+ svfloat64_t p912 = svmla_x (pg, p910, z4, p1112);
+
+ svfloat64_t p1314 = svmla_lane (sv_f64 (d->c13), z2, c1416, 0);
+ svfloat64_t p1516 = svmla_lane (sv_f64 (d->c15), z2, c1416, 1);
+ svfloat64_t p1316 = svmla_x (pg, p1314, z4, p1516);
+
+ svfloat64_t p1718 = svmla_lane (sv_f64 (d->c17), z2, c1820, 0);
+ svfloat64_t p1920 = svmla_lane (sv_f64 (d->c19), z2, c1820, 1);
+ svfloat64_t p1720 = svmla_x (pg, p1718, z4, p1920);
+
+ svfloat64_t p916 = svmla_x (pg, p912, z8, p1316);
+ svfloat64_t p920 = svmla_x (pg, p916, z16, p1720);
+
+ svfloat64_t y = svmla_x (pg, p18, z16, p920);
+
+ y = svmla_x (pg, sv_f64 (d->c0), z2, y);
+ return svmla_x (pg, shift, z, y);
+}
diff --git a/sysdeps/aarch64/fpu/atanpif_advsimd.c b/sysdeps/aarch64/fpu/atanpif_advsimd.c
new file mode 100644
index 0000000..9295156
--- /dev/null
+++ b/sysdeps/aarch64/fpu/atanpif_advsimd.c
@@ -0,0 +1,92 @@
+/* Single-Precision vector (Advanced SIMD) inverse tanpi function
+
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include "v_math.h"
+
+static const struct data
+{
+ uint32x4_t half;
+ float32x4_t neg_one;
+ float32x4_t c0, c1, c3, c5, c7;
+ float c2, c4, c6, c8;
+} data = {
+ /* Polynomial coefficients generated using Remez algorithm,
+ see atanpi.sollya for details. */
+ .c0 = V4 (0x1.45f306p-2), .c1 = V4 (-0x1.b2975ep-4),
+ .c2 = 0x1.0490e4p-4, .c3 = V4 (-0x1.70c272p-5),
+ .c4 = 0x1.0eef52p-5, .c5 = V4 (-0x1.6abbbap-6),
+ .c6 = 0x1.78157p-7, .c7 = V4 (-0x1.f0b406p-9),
+ .c8 = 0x1.2ae7fep-11, .half = V4 (0x3f000000),
+ .neg_one = V4 (-1.0f),
+};
+
+#define SignMask v_u32 (0x80000000)
+
+/* Fast implementation of vector atanpif based on
+ atanpi(x) ~ shift + z * P(z^2) with reduction to [0,1]
+ using z=-1/x and shift = +-1/2.
+ Maximum observed error is 2.59ulps:
+ _ZGVnN4v_atanpif (0x1.f2a89cp-1) got 0x1.f76524p-3
+ want 0x1.f7651ep-3. */
+float32x4_t VPCS_ATTR NOINLINE V_NAME_F1 (atanpi) (float32x4_t x)
+{
+ const struct data *d = ptr_barrier (&data);
+
+ uint32x4_t ix = vreinterpretq_u32_f32 (x);
+ uint32x4_t sign = vandq_u32 (ix, SignMask);
+
+ /* Argument Reduction:
+ y := arctanpi(x) for |x| < 1
+ y := arctanpi(-1/x) + 1/2 for x > 1
+ y := arctanpi(-1/x) - 1/2 for x < -1
+ Hence, use z=-1/a if |x|>=|-1|, otherwise z=a. */
+ uint32x4_t red = vcagtq_f32 (x, d->neg_one);
+
+ float32x4_t z = vbslq_f32 (red, vdivq_f32 (d->neg_one, x), x);
+
+ /* Shift is calculated as +1/2 or 0, depending on the argument case. */
+ float32x4_t shift = vreinterpretq_f32_u32 (vandq_u32 (red, d->half));
+
+ /* Reinsert sign bit from argument into the shift value. */
+ shift = vreinterpretq_f32_u32 (
+ veorq_u32 (vreinterpretq_u32_f32 (shift), sign));
+
+ /* Uses an Estrin scheme for polynomial approximation. */
+ float32x4_t z2 = vmulq_f32 (z, z);
+ float32x4_t z4 = vmulq_f32 (z2, z2);
+ float32x4_t z8 = vmulq_f32 (z4, z4);
+
+ float32x4_t even_coeffs = vld1q_f32 (&d->c2);
+
+ float32x4_t p12 = vfmaq_laneq_f32 (d->c1, z2, even_coeffs, 0);
+ float32x4_t p34 = vfmaq_laneq_f32 (d->c3, z2, even_coeffs, 1);
+ float32x4_t p56 = vfmaq_laneq_f32 (d->c5, z2, even_coeffs, 2);
+ float32x4_t p78 = vfmaq_laneq_f32 (d->c7, z2, even_coeffs, 3);
+
+ float32x4_t p14 = vfmaq_f32 (p12, z4, p34);
+ float32x4_t p58 = vfmaq_f32 (p56, z4, p78);
+
+ float32x4_t y = vfmaq_f32 (p14, z8, p58);
+ y = vfmaq_f32 (d->c0, z2, y);
+
+ /* y = shift + z * P(z^2). */
+ return vfmaq_f32 (shift, z, y);
+}
+libmvec_hidden_def (V_NAME_F1 (atanpi))
+HALF_WIDTH_ALIAS_F1 (atanpi)
diff --git a/sysdeps/aarch64/fpu/atanpif_sve.c b/sysdeps/aarch64/fpu/atanpif_sve.c
new file mode 100644
index 0000000..2abd788
--- /dev/null
+++ b/sysdeps/aarch64/fpu/atanpif_sve.c
@@ -0,0 +1,89 @@
+/* Single-Precision vector (SVE) inverse tanpi function
+
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include "sv_math.h"
+
+static const struct data
+{
+ float32_t c2, c4, c6, c8;
+ float32_t c0, c1, c3, c5, c7;
+ float32_t shift_val, neg_one;
+} data = {
+ /* Coefficients of polynomial P such that atan(x)~x+x*P(x^2) on
+ [2**-128, 1.0]. */
+ .c0 = 0x1.45f306p-2, .c1 = -0x1.b2975ep-4, .c2 = 0x1.0490e4p-4,
+ .c3 = -0x1.70c272p-5, .c4 = 0x1.0eef52p-5, .c5 = -0x1.6abbbap-6,
+ .c6 = 0x1.78157p-7, .c7 = -0x1.f0b406p-9, .c8 = 0x1.2ae7fep-11,
+ .shift_val = 1.5f, .neg_one = -1.0f,
+};
+
+#define SignMask (0x80000000)
+
+/* Fast implementation of SVE atanpif based on
+ atan(x) ~ shift + z * P(z^2) with reduction to [0,1] using
+ z=-1/x and shift = 1/2.
+ Largest observed error is 2.59 ULP, close to +/-1.0:
+ _ZGVsMxv_atanpif(0x1.f2a89cp-1) got 0x1.f76524p-3
+ want 0x1.f7651ep-3. */
+svfloat32_t SV_NAME_F1 (atanpi) (svfloat32_t x, const svbool_t pg)
+{
+ const struct data *d = ptr_barrier (&data);
+ svbool_t ptrue = svptrue_b32 ();
+
+ /* No need to trigger special case. Small cases, infs and nans
+ are supported by our approximation technique. */
+ svuint32_t ix = svreinterpret_u32 (x);
+ svuint32_t sign = svand_x (pg, ix, SignMask);
+
+ /* Argument reduction:
+ y := arctan(x) for x < 1
+ y := arctan(-1/x) + 1/2 for x > +1
+ y := arctan(-1/x) - 1/2 for x < -1
+ Hence, use z=-1/a if |x|>=|-1|, otherwise z=a. */
+ svbool_t red = svacgt (pg, x, d->neg_one);
+ svfloat32_t z = svsel (red, svdiv_x (ptrue, sv_f32 (d->neg_one), x), x);
+
+ /* Reuse of -1.0f to reduce constant loads,
+ We need a shift value of 1/2, which is created via -1 + (1 + 1/2). */
+ svfloat32_t shift
+ = svadd_z (red, sv_f32 (d->neg_one), sv_f32 (d->shift_val));
+
+ /* Reinserts the sign bit of the argument to handle the case of x < -1. */
+ shift = svreinterpret_f32 (sveor_x (pg, svreinterpret_u32 (shift), sign));
+
+ svfloat32_t z2 = svmul_x (ptrue, z, z);
+ svfloat32_t z4 = svmul_x (ptrue, z2, z2);
+ svfloat32_t z8 = svmul_x (ptrue, z4, z4);
+
+ svfloat32_t even_coeffs = svld1rq (ptrue, &d->c2);
+
+ svfloat32_t p12 = svmla_lane (sv_f32 (d->c1), z2, even_coeffs, 0);
+ svfloat32_t p34 = svmla_lane (sv_f32 (d->c3), z2, even_coeffs, 1);
+ svfloat32_t p56 = svmla_lane (sv_f32 (d->c5), z2, even_coeffs, 2);
+ svfloat32_t p78 = svmla_lane (sv_f32 (d->c7), z2, even_coeffs, 3);
+
+ svfloat32_t p14 = svmad_x (pg, z4, p34, p12);
+ svfloat32_t p58 = svmad_x (pg, z4, p78, p56);
+
+ svfloat32_t p18 = svmad_x (pg, z8, p58, p14);
+ svfloat32_t y = svmad_x (pg, z2, p18, d->c0);
+
+ /* shift + z * P(z^2). */
+ return svmad_x (pg, y, z, shift);
+}
diff --git a/sysdeps/aarch64/fpu/bits/math-vector.h b/sysdeps/aarch64/fpu/bits/math-vector.h
index 5152c0d..77ae10d 100644
--- a/sysdeps/aarch64/fpu/bits/math-vector.h
+++ b/sysdeps/aarch64/fpu/bits/math-vector.h
@@ -37,6 +37,10 @@
# define __DECL_SIMD_acosh __DECL_SIMD_aarch64
# undef __DECL_SIMD_acoshf
# define __DECL_SIMD_acoshf __DECL_SIMD_aarch64
+# undef __DECL_SIMD_acospi
+# define __DECL_SIMD_acospi __DECL_SIMD_aarch64
+# undef __DECL_SIMD_acospif
+# define __DECL_SIMD_acospif __DECL_SIMD_aarch64
# undef __DECL_SIMD_asin
# define __DECL_SIMD_asin __DECL_SIMD_aarch64
# undef __DECL_SIMD_asinf
@@ -45,6 +49,10 @@
# define __DECL_SIMD_asinh __DECL_SIMD_aarch64
# undef __DECL_SIMD_asinhf
# define __DECL_SIMD_asinhf __DECL_SIMD_aarch64
+# undef __DECL_SIMD_asinpi
+# define __DECL_SIMD_asinpi __DECL_SIMD_aarch64
+# undef __DECL_SIMD_asinpif
+# define __DECL_SIMD_asinpif __DECL_SIMD_aarch64
# undef __DECL_SIMD_atan
# define __DECL_SIMD_atan __DECL_SIMD_aarch64
# undef __DECL_SIMD_atanf
@@ -53,10 +61,18 @@
# define __DECL_SIMD_atanh __DECL_SIMD_aarch64
# undef __DECL_SIMD_atanhf
# define __DECL_SIMD_atanhf __DECL_SIMD_aarch64
+# undef __DECL_SIMD_atanpi
+# define __DECL_SIMD_atanpi __DECL_SIMD_aarch64
+# undef __DECL_SIMD_atanpif
+# define __DECL_SIMD_atanpif __DECL_SIMD_aarch64
# undef __DECL_SIMD_atan2
# define __DECL_SIMD_atan2 __DECL_SIMD_aarch64
# undef __DECL_SIMD_atan2f
# define __DECL_SIMD_atan2f __DECL_SIMD_aarch64
+# undef __DECL_SIMD_atan2pi
+# define __DECL_SIMD_atan2pi __DECL_SIMD_aarch64
+# undef __DECL_SIMD_atan2pif
+# define __DECL_SIMD_atan2pif __DECL_SIMD_aarch64
# undef __DECL_SIMD_cbrt
# define __DECL_SIMD_cbrt __DECL_SIMD_aarch64
# undef __DECL_SIMD_cbrtf
@@ -176,12 +192,16 @@ typedef __SVBool_t __sv_bool_t;
# define __vpcs __attribute__ ((__aarch64_vector_pcs__))
__vpcs __f32x4_t _ZGVnN4vv_atan2f (__f32x4_t, __f32x4_t);
+__vpcs __f32x4_t _ZGVnN4vv_atan2pif (__f32x4_t, __f32x4_t);
__vpcs __f32x4_t _ZGVnN4v_acosf (__f32x4_t);
__vpcs __f32x4_t _ZGVnN4v_acoshf (__f32x4_t);
+__vpcs __f32x4_t _ZGVnN4v_acospif (__f32x4_t);
__vpcs __f32x4_t _ZGVnN4v_asinf (__f32x4_t);
__vpcs __f32x4_t _ZGVnN4v_asinhf (__f32x4_t);
+__vpcs __f32x4_t _ZGVnN4v_asinpif (__f32x4_t);
__vpcs __f32x4_t _ZGVnN4v_atanf (__f32x4_t);
__vpcs __f32x4_t _ZGVnN4v_atanhf (__f32x4_t);
+__vpcs __f32x4_t _ZGVnN4v_atanpif (__f32x4_t);
__vpcs __f32x4_t _ZGVnN4v_cbrtf (__f32x4_t);
__vpcs __f32x4_t _ZGVnN4v_cosf (__f32x4_t);
__vpcs __f32x4_t _ZGVnN4v_coshf (__f32x4_t);
@@ -207,12 +227,16 @@ __vpcs __f32x4_t _ZGVnN4v_tanhf (__f32x4_t);
__vpcs __f32x4_t _ZGVnN4v_tanpif (__f32x4_t);
__vpcs __f64x2_t _ZGVnN2vv_atan2 (__f64x2_t, __f64x2_t);
+__vpcs __f64x2_t _ZGVnN2vv_atan2pi (__f64x2_t, __f64x2_t);
__vpcs __f64x2_t _ZGVnN2v_acos (__f64x2_t);
__vpcs __f64x2_t _ZGVnN2v_acosh (__f64x2_t);
+__vpcs __f64x2_t _ZGVnN2v_acospi (__f64x2_t);
__vpcs __f64x2_t _ZGVnN2v_asin (__f64x2_t);
__vpcs __f64x2_t _ZGVnN2v_asinh (__f64x2_t);
+__vpcs __f64x2_t _ZGVnN2v_asinpi (__f64x2_t);
__vpcs __f64x2_t _ZGVnN2v_atan (__f64x2_t);
__vpcs __f64x2_t _ZGVnN2v_atanh (__f64x2_t);
+__vpcs __f64x2_t _ZGVnN2v_atanpi (__f64x2_t);
__vpcs __f64x2_t _ZGVnN2v_cbrt (__f64x2_t);
__vpcs __f64x2_t _ZGVnN2v_cos (__f64x2_t);
__vpcs __f64x2_t _ZGVnN2v_cosh (__f64x2_t);
@@ -243,12 +267,16 @@ __vpcs __f64x2_t _ZGVnN2v_tanpi (__f64x2_t);
#ifdef __SVE_VEC_MATH_SUPPORTED
__sv_f32_t _ZGVsMxvv_atan2f (__sv_f32_t, __sv_f32_t, __sv_bool_t);
+__sv_f32_t _ZGVsMxvv_atan2pif (__sv_f32_t, __sv_f32_t, __sv_bool_t);
__sv_f32_t _ZGVsMxv_acosf (__sv_f32_t, __sv_bool_t);
__sv_f32_t _ZGVsMxv_acoshf (__sv_f32_t, __sv_bool_t);
+__sv_f32_t _ZGVsMxv_acospif (__sv_f32_t, __sv_bool_t);
__sv_f32_t _ZGVsMxv_asinf (__sv_f32_t, __sv_bool_t);
__sv_f32_t _ZGVsMxv_asinhf (__sv_f32_t, __sv_bool_t);
+__sv_f32_t _ZGVsMxv_asinpif (__sv_f32_t, __sv_bool_t);
__sv_f32_t _ZGVsMxv_atanf (__sv_f32_t, __sv_bool_t);
__sv_f32_t _ZGVsMxv_atanhf (__sv_f32_t, __sv_bool_t);
+__sv_f32_t _ZGVsMxv_atanpif (__sv_f32_t, __sv_bool_t);
__sv_f32_t _ZGVsMxv_cbrtf (__sv_f32_t, __sv_bool_t);
__sv_f32_t _ZGVsMxv_cosf (__sv_f32_t, __sv_bool_t);
__sv_f32_t _ZGVsMxv_coshf (__sv_f32_t, __sv_bool_t);
@@ -274,12 +302,16 @@ __sv_f32_t _ZGVsMxv_tanhf (__sv_f32_t, __sv_bool_t);
__sv_f32_t _ZGVsMxv_tanpif (__sv_f32_t, __sv_bool_t);
__sv_f64_t _ZGVsMxvv_atan2 (__sv_f64_t, __sv_f64_t, __sv_bool_t);
+__sv_f64_t _ZGVsMxvv_atan2pi (__sv_f64_t, __sv_f64_t, __sv_bool_t);
__sv_f64_t _ZGVsMxv_acos (__sv_f64_t, __sv_bool_t);
__sv_f64_t _ZGVsMxv_acosh (__sv_f64_t, __sv_bool_t);
+__sv_f64_t _ZGVsMxv_acospi (__sv_f64_t, __sv_bool_t);
__sv_f64_t _ZGVsMxv_asin (__sv_f64_t, __sv_bool_t);
__sv_f64_t _ZGVsMxv_asinh (__sv_f64_t, __sv_bool_t);
+__sv_f64_t _ZGVsMxv_asinpi (__sv_f64_t, __sv_bool_t);
__sv_f64_t _ZGVsMxv_atan (__sv_f64_t, __sv_bool_t);
__sv_f64_t _ZGVsMxv_atanh (__sv_f64_t, __sv_bool_t);
+__sv_f64_t _ZGVsMxv_atanpi (__sv_f64_t, __sv_bool_t);
__sv_f64_t _ZGVsMxv_cbrt (__sv_f64_t, __sv_bool_t);
__sv_f64_t _ZGVsMxv_cos (__sv_f64_t, __sv_bool_t);
__sv_f64_t _ZGVsMxv_cosh (__sv_f64_t, __sv_bool_t);
diff --git a/sysdeps/aarch64/fpu/cosh_sve.c b/sysdeps/aarch64/fpu/cosh_sve.c
index 77e58e1..f5a163b 100644
--- a/sysdeps/aarch64/fpu/cosh_sve.c
+++ b/sysdeps/aarch64/fpu/cosh_sve.c
@@ -21,71 +21,99 @@
static const struct data
{
- float64_t poly[3];
- float64_t inv_ln2, ln2_hi, ln2_lo, shift, thres;
+ double c0, c2;
+ double c1, c3;
+ float64_t inv_ln2, ln2_hi, ln2_lo, shift;
uint64_t special_bound;
} data = {
- .poly = { 0x1.fffffffffffd4p-2, 0x1.5555571d6b68cp-3,
- 0x1.5555576a59599p-5, },
-
- .inv_ln2 = 0x1.71547652b82fep8, /* N/ln2. */
- /* -ln2/N. */
- .ln2_hi = -0x1.62e42fefa39efp-9,
- .ln2_lo = -0x1.abc9e3b39803f3p-64,
- .shift = 0x1.8p+52,
- .thres = 704.0,
-
- /* 0x1.6p9, above which exp overflows. */
- .special_bound = 0x4086000000000000,
+ /* Generated using Remez, in [-log(2)/128, log(2)/128]. */
+ .c0 = 0x1.fffffffffdbcdp-2,
+ .c1 = 0x1.555555555444cp-3,
+ .c2 = 0x1.555573c6a9f7dp-5,
+ .c3 = 0x1.1111266d28935p-7,
+ .ln2_hi = 0x1.62e42fefa3800p-1,
+ .ln2_lo = 0x1.ef35793c76730p-45,
+ /* 1/ln2. */
+ .inv_ln2 = 0x1.71547652b82fep+0,
+ .shift = 0x1.800000000ff80p+46, /* 1.5*2^46+1022. */
+
+ /* asuint(ln(2^(1024 - 1/128))), the value above which exp overflows. */
+ .special_bound = 0x40862e37e7d8ba72,
};
-static svfloat64_t NOINLINE
-special_case (svfloat64_t x, svbool_t pg, svfloat64_t t, svbool_t special)
-{
- svfloat64_t half_t = svmul_x (svptrue_b64 (), t, 0.5);
- svfloat64_t half_over_t = svdivr_x (pg, t, 0.5);
- svfloat64_t y = svadd_x (pg, half_t, half_over_t);
- return sv_call_f64 (cosh, x, y, special);
-}
-
-/* Helper for approximating exp(x). Copied from sv_exp_tail, with no
- special-case handling or tail. */
+/* Helper for approximating exp(x)/2.
+ Functionally identical to FEXPA exp(x), but an adjustment in
+ the shift value which leads to a reduction in the exponent of scale by 1,
+ thus halving the result at no cost. */
static inline svfloat64_t
-exp_inline (svfloat64_t x, const svbool_t pg, const struct data *d)
+exp_over_two_inline (const svbool_t pg, svfloat64_t x, const struct data *d)
{
/* Calculate exp(x). */
svfloat64_t z = svmla_x (pg, sv_f64 (d->shift), x, d->inv_ln2);
+ svuint64_t u = svreinterpret_u64 (z);
svfloat64_t n = svsub_x (pg, z, d->shift);
- svfloat64_t r = svmla_x (pg, x, n, d->ln2_hi);
- r = svmla_x (pg, r, n, d->ln2_lo);
+ svfloat64_t c13 = svld1rq (svptrue_b64 (), &d->c1);
+ svfloat64_t ln2 = svld1rq (svptrue_b64 (), &d->ln2_hi);
- svuint64_t u = svreinterpret_u64 (z);
- svuint64_t e = svlsl_x (pg, u, 52 - V_EXP_TAIL_TABLE_BITS);
- svuint64_t i = svand_x (svptrue_b64 (), u, 0xff);
+ svfloat64_t r = x;
+ r = svmls_lane (r, n, ln2, 0);
+ r = svmls_lane (r, n, ln2, 1);
- svfloat64_t y = svmla_x (pg, sv_f64 (d->poly[1]), r, d->poly[2]);
- y = svmla_x (pg, sv_f64 (d->poly[0]), r, y);
- y = svmla_x (pg, sv_f64 (1.0), r, y);
- y = svmul_x (svptrue_b64 (), r, y);
+ svfloat64_t r2 = svmul_x (svptrue_b64 (), r, r);
+ svfloat64_t p01 = svmla_lane (sv_f64 (d->c0), r, c13, 0);
+ svfloat64_t p23 = svmla_lane (sv_f64 (d->c2), r, c13, 1);
+ svfloat64_t p04 = svmla_x (pg, p01, p23, r2);
+ svfloat64_t p = svmla_x (pg, r, p04, r2);
- /* s = 2^(n/N). */
- u = svld1_gather_index (pg, __v_exp_tail_data, i);
- svfloat64_t s = svreinterpret_f64 (svadd_x (pg, u, e));
+ svfloat64_t scale = svexpa (u);
- return svmla_x (pg, s, s, y);
+ return svmla_x (pg, scale, scale, p);
+}
+
+/* Vectorised special case to handle values past where exp_inline overflows.
+ Halves the input value and uses the identity exp(x) = exp(x/2)^2 to double
+ the valid range of inputs, and returns inf for anything past that. */
+static svfloat64_t NOINLINE
+special_case (svbool_t pg, svbool_t special, svfloat64_t ax, svfloat64_t t,
+ const struct data *d)
+{
+ /* Finish fast path to compute values for non-special cases. */
+ svfloat64_t inv_twoexp = svdivr_x (pg, t, 0.25);
+ svfloat64_t y = svadd_x (pg, t, inv_twoexp);
+
+ /* Halves input value, and then check if any cases
+ are still going to overflow. */
+ ax = svmul_x (special, ax, 0.5);
+ svbool_t is_safe
+ = svcmplt (special, svreinterpret_u64 (ax), d->special_bound);
+
+ /* Computes exp(x/2), and sets any overflowing lanes to inf. */
+ svfloat64_t half_exp = exp_over_two_inline (special, ax, d);
+ half_exp = svsel (is_safe, half_exp, sv_f64 (INFINITY));
+
+ /* Construct special case cosh(x) = (exp(x/2)^2)/2. */
+ svfloat64_t exp = svmul_x (svptrue_b64 (), half_exp, 2);
+ svfloat64_t special_y = svmul_x (special, exp, half_exp);
+
+ /* Select correct return values for special and non-special cases. */
+ special_y = svsel (special, special_y, y);
+
+ /* Ensure an input of nan is correctly propagated. */
+ svbool_t is_nan
+ = svcmpgt (special, svreinterpret_u64 (ax), sv_u64 (0x7ff0000000000000));
+ return svsel (is_nan, ax, svsel (special, special_y, y));
}
/* Approximation for SVE double-precision cosh(x) using exp_inline.
cosh(x) = (exp(x) + exp(-x)) / 2.
- The greatest observed error is in the scalar fall-back region, so is the
- same as the scalar routine, 1.93 ULP:
- _ZGVsMxv_cosh (0x1.628ad45039d2fp+9) got 0x1.fd774e958236dp+1021
- want 0x1.fd774e958236fp+1021.
-
- The greatest observed error in the non-special region is 1.54 ULP:
- _ZGVsMxv_cosh (0x1.ba5651dd4486bp+2) got 0x1.f5e2bb8d5c98fp+8
- want 0x1.f5e2bb8d5c991p+8. */
+ The greatest observed error in special case region is 2.66 + 0.5 ULP:
+ _ZGVsMxv_cosh (0x1.633b532ffbc1ap+9) got 0x1.f9b2d3d22399ep+1023
+ want 0x1.f9b2d3d22399bp+1023
+
+ The greatest observed error in the non-special region is 1.01 + 0.5 ULP:
+ _ZGVsMxv_cosh (0x1.998ecbb3c1f81p+1) got 0x1.890b225657f84p+3
+ want 0x1.890b225657f82p+3. */
svfloat64_t SV_NAME_D1 (cosh) (svfloat64_t x, const svbool_t pg)
{
const struct data *d = ptr_barrier (&data);
@@ -94,14 +122,13 @@ svfloat64_t SV_NAME_D1 (cosh) (svfloat64_t x, const svbool_t pg)
svbool_t special = svcmpgt (pg, svreinterpret_u64 (ax), d->special_bound);
/* Up to the point that exp overflows, we can use it to calculate cosh by
- exp(|x|) / 2 + 1 / (2 * exp(|x|)). */
- svfloat64_t t = exp_inline (ax, pg, d);
+ (exp(|x|)/2 + 1) / (2 * exp(|x|)). */
+ svfloat64_t half_exp = exp_over_two_inline (pg, ax, d);
- /* Fall back to scalar for any special cases. */
+ /* Falls back to entirely standalone vectorized special case. */
if (__glibc_unlikely (svptest_any (pg, special)))
- return special_case (x, pg, t, special);
+ return special_case (pg, special, ax, half_exp, d);
- svfloat64_t half_t = svmul_x (svptrue_b64 (), t, 0.5);
- svfloat64_t half_over_t = svdivr_x (pg, t, 0.5);
- return svadd_x (pg, half_t, half_over_t);
+ svfloat64_t inv_twoexp = svdivr_x (pg, half_exp, 0.25);
+ return svadd_x (pg, half_exp, inv_twoexp);
}
diff --git a/sysdeps/aarch64/fpu/exp10f_sve.c b/sysdeps/aarch64/fpu/exp10f_sve.c
index 1a74db2..f3e7f8b 100644
--- a/sysdeps/aarch64/fpu/exp10f_sve.c
+++ b/sysdeps/aarch64/fpu/exp10f_sve.c
@@ -19,26 +19,19 @@
#include "sv_math.h"
-/* For x < -Thres, the result is subnormal and not handled correctly by
- FEXPA. */
-#define Thres 37.9
+/* For x < -Thres (-log10(2^126)), the result is subnormal and not handled
+ correctly by FEXPA. */
+#define Thres 0x1.2f702p+5
static const struct data
{
- float log2_10_lo, c0, c2, c4;
- float c1, c3, log10_2;
- float shift, log2_10_hi, thres;
+ float log10_2, log2_10_hi, log2_10_lo, c1;
+ float c0, shift, thres;
} data = {
/* Coefficients generated using Remez algorithm with minimisation of relative
- error.
- rel error: 0x1.89dafa3p-24
- abs error: 0x1.167d55p-23 in [-log10(2)/2, log10(2)/2]
- maxerr: 0.52 +0.5 ulp. */
- .c0 = 0x1.26bb16p+1f,
- .c1 = 0x1.5350d2p+1f,
- .c2 = 0x1.04744ap+1f,
- .c3 = 0x1.2d8176p+0f,
- .c4 = 0x1.12b41ap-1f,
+ error. */
+ .c0 = 0x1.26bb62p1,
+ .c1 = 0x1.53524cp1,
/* 1.5*2^17 + 127, a shift value suitable for FEXPA. */
.shift = 0x1.803f8p17f,
.log10_2 = 0x1.a934fp+1,
@@ -53,28 +46,23 @@ sv_exp10f_inline (svfloat32_t x, const svbool_t pg, const struct data *d)
/* exp10(x) = 2^(n/N) * 10^r = 2^n * (1 + poly (r)),
with poly(r) in [1/sqrt(2), sqrt(2)] and
x = r + n * log10(2) / N, with r in [-log10(2)/2N, log10(2)/2N]. */
-
- svfloat32_t lane_consts = svld1rq (svptrue_b32 (), &d->log2_10_lo);
+ svfloat32_t lane_consts = svld1rq (svptrue_b32 (), &d->log10_2);
/* n = round(x/(log10(2)/N)). */
svfloat32_t shift = sv_f32 (d->shift);
- svfloat32_t z = svmad_x (pg, sv_f32 (d->log10_2), x, shift);
- svfloat32_t n = svsub_x (svptrue_b32 (), z, shift);
+ svfloat32_t z = svmla_lane (shift, x, lane_consts, 0);
+ svfloat32_t n = svsub_x (pg, z, shift);
/* r = x - n*log10(2)/N. */
- svfloat32_t r = svmsb_x (pg, sv_f32 (d->log2_10_hi), n, x);
- r = svmls_lane (r, n, lane_consts, 0);
+ svfloat32_t r = x;
+ r = svmls_lane (r, n, lane_consts, 1);
+ r = svmls_lane (r, n, lane_consts, 2);
svfloat32_t scale = svexpa (svreinterpret_u32 (z));
/* Polynomial evaluation: poly(r) ~ exp10(r)-1. */
- svfloat32_t p12 = svmla_lane (sv_f32 (d->c1), r, lane_consts, 2);
- svfloat32_t p34 = svmla_lane (sv_f32 (d->c3), r, lane_consts, 3);
- svfloat32_t r2 = svmul_x (svptrue_b32 (), r, r);
- svfloat32_t p14 = svmla_x (pg, p12, p34, r2);
- svfloat32_t p0 = svmul_lane (r, lane_consts, 1);
- svfloat32_t poly = svmla_x (pg, p0, r2, p14);
-
+ svfloat32_t poly = svmla_lane (sv_f32 (d->c0), r, lane_consts, 3);
+ poly = svmul_x (pg, poly, r);
return svmla_x (pg, scale, scale, poly);
}
@@ -85,11 +73,10 @@ special_case (svfloat32_t x, svbool_t special, const struct data *d)
special);
}
-/* Single-precision SVE exp10f routine. Implements the same algorithm
- as AdvSIMD exp10f.
- Worst case error is 1.02 ULPs.
- _ZGVsMxv_exp10f(-0x1.040488p-4) got 0x1.ba5f9ep-1
- want 0x1.ba5f9cp-1. */
+/* Single-precision SVE exp10f routine. Based on the FEXPA instruction.
+ Worst case error is 1.10 ULP.
+ _ZGVsMxv_exp10f (0x1.cc76dep+3) got 0x1.be0172p+47
+ want 0x1.be017p+47. */
svfloat32_t SV_NAME_F1 (exp10) (svfloat32_t x, const svbool_t pg)
{
const struct data *d = ptr_barrier (&data);
diff --git a/sysdeps/aarch64/fpu/exp2_sve.c b/sysdeps/aarch64/fpu/exp2_sve.c
index 6db8526..c135852 100644
--- a/sysdeps/aarch64/fpu/exp2_sve.c
+++ b/sysdeps/aarch64/fpu/exp2_sve.c
@@ -19,23 +19,21 @@
#include "sv_math.h"
-#define N (1 << V_EXP_TABLE_BITS)
-
#define BigBound 1022
#define UOFlowBound 1280
static const struct data
{
- double c0, c2;
- double c1, c3;
+ double c2, c4;
+ double c0, c1, c3;
double shift, big_bound, uoflow_bound;
} data = {
/* Coefficients are computed using Remez algorithm with
minimisation of the absolute error. */
- .c0 = 0x1.62e42fefa3686p-1, .c1 = 0x1.ebfbdff82c241p-3,
- .c2 = 0x1.c6b09b16de99ap-5, .c3 = 0x1.3b2abf5571ad8p-7,
- .shift = 0x1.8p52 / N, .uoflow_bound = UOFlowBound,
- .big_bound = BigBound,
+ .c0 = 0x1.62e42fefa39efp-1, .c1 = 0x1.ebfbdff82a31bp-3,
+ .c2 = 0x1.c6b08d706c8a5p-5, .c3 = 0x1.3b2ad2ff7d2f3p-7,
+ .c4 = 0x1.5d8761184beb3p-10, .shift = 0x1.800000000ffc0p+46,
+ .uoflow_bound = UOFlowBound, .big_bound = BigBound,
};
#define SpecialOffset 0x6000000000000000 /* 0x1p513. */
@@ -64,50 +62,52 @@ special_case (svbool_t pg, svfloat64_t s, svfloat64_t y, svfloat64_t n,
svadd_x (pg, svsub_x (pg, svreinterpret_u64 (s), SpecialBias2), b));
/* |n| > 1280 => 2^(n) overflows. */
- svbool_t p_cmp = svacgt (pg, n, d->uoflow_bound);
+ svbool_t p_cmp = svacle (pg, n, d->uoflow_bound);
svfloat64_t r1 = svmul_x (svptrue_b64 (), s1, s1);
svfloat64_t r2 = svmla_x (pg, s2, s2, y);
svfloat64_t r0 = svmul_x (svptrue_b64 (), r2, s1);
- return svsel (p_cmp, r1, r0);
+ return svsel (p_cmp, r0, r1);
}
/* Fast vector implementation of exp2.
- Maximum measured error is 1.65 ulp.
- _ZGVsMxv_exp2(-0x1.4c264ab5b559bp-6) got 0x1.f8db0d4df721fp-1
- want 0x1.f8db0d4df721dp-1. */
+ Maximum measured error is 0.52 + 0.5 ulp.
+ _ZGVsMxv_exp2 (0x1.3b72ad5b701bfp-1) got 0x1.8861641b49e08p+0
+ want 0x1.8861641b49e07p+0. */
svfloat64_t SV_NAME_D1 (exp2) (svfloat64_t x, svbool_t pg)
{
const struct data *d = ptr_barrier (&data);
- svbool_t no_big_scale = svacle (pg, x, d->big_bound);
- svbool_t special = svnot_z (pg, no_big_scale);
-
- /* Reduce x to k/N + r, where k is integer and r in [-1/2N, 1/2N]. */
- svfloat64_t shift = sv_f64 (d->shift);
- svfloat64_t kd = svadd_x (pg, x, shift);
- svuint64_t ki = svreinterpret_u64 (kd);
- /* kd = k/N. */
- kd = svsub_x (pg, kd, shift);
- svfloat64_t r = svsub_x (pg, x, kd);
-
- /* scale ~= 2^(k/N). */
- svuint64_t idx = svand_x (pg, ki, N - 1);
- svuint64_t sbits = svld1_gather_index (pg, __v_exp_data, idx);
- /* This is only a valid scale when -1023*N < k < 1024*N. */
- svuint64_t top = svlsl_x (pg, ki, 52 - V_EXP_TABLE_BITS);
- svfloat64_t scale = svreinterpret_f64 (svadd_x (pg, sbits, top));
-
- svfloat64_t c13 = svld1rq (svptrue_b64 (), &d->c1);
- /* Approximate exp2(r) using polynomial. */
- /* y = exp2(r) - 1 ~= C0 r + C1 r^2 + C2 r^3 + C3 r^4. */
+ svbool_t special = svacge (pg, x, d->big_bound);
+
+ svfloat64_t z = svadd_x (svptrue_b64 (), x, d->shift);
+ svfloat64_t n = svsub_x (svptrue_b64 (), z, d->shift);
+ svfloat64_t r = svsub_x (svptrue_b64 (), x, n);
+
+ svfloat64_t scale = svexpa (svreinterpret_u64 (z));
+
svfloat64_t r2 = svmul_x (svptrue_b64 (), r, r);
- svfloat64_t p01 = svmla_lane (sv_f64 (d->c0), r, c13, 0);
- svfloat64_t p23 = svmla_lane (sv_f64 (d->c2), r, c13, 1);
- svfloat64_t p = svmla_x (pg, p01, p23, r2);
+ svfloat64_t c24 = svld1rq (svptrue_b64 (), &d->c2);
+
+ /* Approximate exp2(r) using polynomial. */
+ /* y = exp2(r) - 1 ~= r * (C0 + C1 r + C2 r^2 + C3 r^3 + C4 r^4). */
+ svfloat64_t p12 = svmla_lane (sv_f64 (d->c1), r, c24, 0);
+ svfloat64_t p34 = svmla_lane (sv_f64 (d->c3), r, c24, 1);
+ svfloat64_t p = svmla_x (pg, p12, p34, r2);
+ p = svmad_x (pg, p, r, d->c0);
svfloat64_t y = svmul_x (svptrue_b64 (), r, p);
+
/* Assemble exp2(x) = exp2(r) * scale. */
if (__glibc_unlikely (svptest_any (pg, special)))
- return special_case (pg, scale, y, kd, d);
+ {
+ /* FEXPA zeroes the sign bit, however the sign is meaningful to the
+ special case function so needs to be copied.
+ e = sign bit of u << 46. */
+ svuint64_t e = svand_x (pg, svlsl_x (pg, svreinterpret_u64 (z), 46),
+ 0x8000000000000000);
+ scale = svreinterpret_f64 (svadd_x (pg, e, svreinterpret_u64 (scale)));
+ return special_case (pg, scale, y, n, d);
+ }
+
return svmla_x (pg, scale, scale, y);
}
diff --git a/sysdeps/aarch64/fpu/exp2f_sve.c b/sysdeps/aarch64/fpu/exp2f_sve.c
index fcd7830..989cefb 100644
--- a/sysdeps/aarch64/fpu/exp2f_sve.c
+++ b/sysdeps/aarch64/fpu/exp2f_sve.c
@@ -18,21 +18,17 @@
<https://www.gnu.org/licenses/>. */
#include "sv_math.h"
-#include "poly_sve_f32.h"
#define Thres 0x1.5d5e2ap+6f
static const struct data
{
- float c0, c2, c4, c1, c3;
- float shift, thres;
+ float c0, c1, shift, thres;
} data = {
- /* Coefficients copied from the polynomial in AdvSIMD variant. */
- .c0 = 0x1.62e422p-1f,
- .c1 = 0x1.ebf9bcp-3f,
- .c2 = 0x1.c6bd32p-5f,
- .c3 = 0x1.3ce9e4p-7f,
- .c4 = 0x1.59977ap-10f,
+ /* Coefficients generated using Remez algorithm with minimisation of relative
+ error. */
+ .c0 = 0x1.62e485p-1,
+ .c1 = 0x1.ebfbe0p-3,
/* 1.5*2^17 + 127. */
.shift = 0x1.803f8p17f,
/* Roughly 87.3. For x < -Thres, the result is subnormal and not handled
@@ -51,16 +47,8 @@ sv_exp2f_inline (svfloat32_t x, const svbool_t pg, const struct data *d)
svfloat32_t scale = svexpa (svreinterpret_u32 (z));
- /* Polynomial evaluation: poly(r) ~ exp2(r)-1.
- Evaluate polynomial use hybrid scheme - offset ESTRIN by 1 for
- coefficients 1 to 4, and apply most significant coefficient directly. */
- svfloat32_t even_coeffs = svld1rq (svptrue_b32 (), &d->c0);
- svfloat32_t r2 = svmul_x (svptrue_b32 (), r, r);
- svfloat32_t p12 = svmla_lane (sv_f32 (d->c1), r, even_coeffs, 1);
- svfloat32_t p34 = svmla_lane (sv_f32 (d->c3), r, even_coeffs, 2);
- svfloat32_t p14 = svmla_x (pg, p12, r2, p34);
- svfloat32_t p0 = svmul_lane (r, even_coeffs, 0);
- svfloat32_t poly = svmla_x (pg, p0, r2, p14);
+ svfloat32_t poly = svmla_x (pg, sv_f32 (d->c0), r, sv_f32 (d->c1));
+ poly = svmul_x (svptrue_b32 (), poly, r);
return svmla_x (pg, scale, scale, poly);
}
@@ -72,11 +60,10 @@ special_case (svfloat32_t x, svbool_t special, const struct data *d)
special);
}
-/* Single-precision SVE exp2f routine. Implements the same algorithm
- as AdvSIMD exp2f.
- Worst case error is 1.04 ULPs.
- _ZGVsMxv_exp2f(-0x1.af994ap-3) got 0x1.ba6a66p-1
- want 0x1.ba6a64p-1. */
+/* Single-precision SVE exp2f routine, based on the FEXPA instruction.
+ Worst case error is 1.09 ULPs.
+ _ZGVsMxv_exp2f (0x1.9a2a94p-1) got 0x1.be1054p+0
+ want 0x1.be1052p+0. */
svfloat32_t SV_NAME_F1 (exp2) (svfloat32_t x, const svbool_t pg)
{
const struct data *d = ptr_barrier (&data);
diff --git a/sysdeps/aarch64/fpu/expm1_sve.c b/sysdeps/aarch64/fpu/expm1_sve.c
index d4ba8cc..b1d940b 100644
--- a/sysdeps/aarch64/fpu/expm1_sve.c
+++ b/sysdeps/aarch64/fpu/expm1_sve.c
@@ -18,82 +18,164 @@
<https://www.gnu.org/licenses/>. */
#include "sv_math.h"
-#include "poly_sve_f64.h"
-#define SpecialBound 0x1.62b7d369a5aa9p+9
-#define ExponentBias 0x3ff0000000000000
+#define FexpaBound 0x1.4cb5ecef28adap-3 /* 15*ln2/64. */
+#define SpecialBound 0x1.628c2855bfaddp+9 /* ln(2^(1023 + 1/128)). */
static const struct data
{
- double poly[11];
- double shift, inv_ln2, special_bound;
- /* To be loaded in one quad-word. */
+ double c2, c4;
+ double inv_ln2;
double ln2_hi, ln2_lo;
+ double c0, c1, c3;
+ double shift, thres;
+ uint64_t expm1_data[32];
} data = {
- /* Generated using fpminimax. */
- .poly = { 0x1p-1, 0x1.5555555555559p-3, 0x1.555555555554bp-5,
- 0x1.111111110f663p-7, 0x1.6c16c16c1b5f3p-10, 0x1.a01a01affa35dp-13,
- 0x1.a01a018b4ecbbp-16, 0x1.71ddf82db5bb4p-19, 0x1.27e517fc0d54bp-22,
- 0x1.af5eedae67435p-26, 0x1.1f143d060a28ap-29, },
-
- .special_bound = SpecialBound,
- .inv_ln2 = 0x1.71547652b82fep0,
- .ln2_hi = 0x1.62e42fefa39efp-1,
- .ln2_lo = 0x1.abc9e3b39803fp-56,
- .shift = 0x1.8p52,
+ /* Table emulating FEXPA - 1, for values of FEXPA close to 1.
+ The table holds values of 2^(i/64) - 1, computed in arbitrary precision.
+ The first half of the table stores values associated to i from 0 to 15.
+ The second half of the table stores values associated to i from 0 to -15. */
+ .expm1_data = {
+ 0x0000000000000000, 0x3f864d1f3bc03077, 0x3f966c34c5615d0f, 0x3fa0e8a30eb37901,
+ 0x3fa6ab0d9f3121ec, 0x3fac7d865a7a3440, 0x3fb1301d0125b50a, 0x3fb429aaea92ddfb,
+ 0x3fb72b83c7d517ae, 0x3fba35beb6fcb754, 0x3fbd4873168b9aa8, 0x3fc031dc431466b2,
+ 0x3fc1c3d373ab11c3, 0x3fc35a2b2f13e6e9, 0x3fc4f4efa8fef709, 0x3fc6942d3720185a,
+ 0x0000000000000000, 0xbfc331751ec3a814, 0xbfc20224341286e4, 0xbfc0cf85bed0f8b7,
+ 0xbfbf332113d56b1f, 0xbfbcc0768d4175a6, 0xbfba46f918837cb7, 0xbfb7c695afc3b424,
+ 0xbfb53f391822dbc7, 0xbfb2b0cfe1266bd4, 0xbfb01b466423250a, 0xbfaafd11874c009e,
+ 0xbfa5b505d5b6f268, 0xbfa05e4119ea5d89, 0xbf95f134923757f3, 0xbf860f9f985bc9f4,
+ },
+
+ /* Generated using Remez, in [-log(2)/128, log(2)/128]. */
+ .c0 = 0x1p-1,
+ .c1 = 0x1.55555555548f9p-3,
+ .c2 = 0x1.5555555554c22p-5,
+ .c3 = 0x1.111123aaa2fb2p-7,
+ .c4 = 0x1.6c16d77d98e5bp-10,
+ .ln2_hi = 0x1.62e42fefa3800p-1,
+ .ln2_lo = 0x1.ef35793c76730p-45,
+ .inv_ln2 = 0x1.71547652b82fep+0,
+ .shift = 0x1.800000000ffc0p+46, /* 1.5*2^46+1023. */
+ .thres = SpecialBound,
};
-static svfloat64_t NOINLINE
-special_case (svfloat64_t x, svfloat64_t y, svbool_t pg)
+#define SpecialOffset 0x6000000000000000 /* 0x1p513. */
+/* SpecialBias1 + SpecialBias1 = asuint(1.0). */
+#define SpecialBias1 0x7000000000000000 /* 0x1p769. */
+#define SpecialBias2 0x3010000000000000 /* 0x1p-254. */
+
+static NOINLINE svfloat64_t
+special_case (svbool_t pg, svfloat64_t y, svfloat64_t s, svfloat64_t p,
+ svfloat64_t n)
{
- return sv_call_f64 (expm1, x, y, pg);
+ /* s=2^n may overflow, break it up into s=s1*s2,
+ such that exp = s + s*y can be computed as s1*(s2+s2*y)
+ and s1*s1 overflows only if n>0. */
+
+ /* If n<=0 then set b to 0x6, 0 otherwise. */
+ svbool_t p_sign = svcmple (pg, n, 0.0); /* n <= 0. */
+ svuint64_t b
+ = svdup_u64_z (p_sign, SpecialOffset); /* Inactive lanes set to 0. */
+
+ /* Set s1 to generate overflow depending on sign of exponent n,
+ ie. s1 = 0x70...0 - b. */
+ svfloat64_t s1 = svreinterpret_f64 (svsubr_x (pg, b, SpecialBias1));
+ /* Offset s to avoid overflow in final result if n is below threshold.
+ ie. s2 = as_u64 (s) - 0x3010...0 + b. */
+ svfloat64_t s2 = svreinterpret_f64 (
+ svadd_x (pg, svsub_x (pg, svreinterpret_u64 (s), SpecialBias2), b));
+
+ /* |n| > 1280 => 2^(n) overflows. */
+ svbool_t p_cmp = svacgt (pg, n, 1280.0);
+
+ svfloat64_t r1 = svmul_x (svptrue_b64 (), s1, s1);
+ svfloat64_t r2 = svmla_x (pg, s2, s2, p);
+ svfloat64_t r0 = svmul_x (svptrue_b64 (), r2, s1);
+
+ svbool_t is_safe = svacle (pg, n, 1023); /* Only correct special lanes. */
+ return svsel (is_safe, y, svsub_x (pg, svsel (p_cmp, r1, r0), 1.0));
}
-/* Double-precision vector exp(x) - 1 function.
- The maximum error observed error is 2.18 ULP:
- _ZGVsMxv_expm1(0x1.634ba0c237d7bp-2) got 0x1.a8b9ea8d66e22p-2
- want 0x1.a8b9ea8d66e2p-2. */
+/* FEXPA based SVE expm1 algorithm.
+ Maximum measured error is 2.81 + 0.5 ULP:
+ _ZGVsMxv_expm1 (0x1.974060e619bfp-3) got 0x1.c290e5858bb53p-3
+ want 0x1.c290e5858bb5p-3. */
svfloat64_t SV_NAME_D1 (expm1) (svfloat64_t x, svbool_t pg)
{
const struct data *d = ptr_barrier (&data);
- /* Large, Nan/Inf. */
- svbool_t special = svnot_z (pg, svaclt (pg, x, d->special_bound));
-
- /* Reduce argument to smaller range:
- Let i = round(x / ln2)
- and f = x - i * ln2, then f is in [-ln2/2, ln2/2].
- exp(x) - 1 = 2^i * (expm1(f) + 1) - 1
- where 2^i is exact because i is an integer. */
- svfloat64_t shift = sv_f64 (d->shift);
- svfloat64_t n = svsub_x (pg, svmla_x (pg, shift, x, d->inv_ln2), shift);
- svint64_t i = svcvt_s64_x (pg, n);
- svfloat64_t ln2 = svld1rq (svptrue_b64 (), &d->ln2_hi);
- svfloat64_t f = svmls_lane (x, n, ln2, 0);
- f = svmls_lane (f, n, ln2, 1);
-
- /* Approximate expm1(f) using polynomial.
- Taylor expansion for expm1(x) has the form:
- x + ax^2 + bx^3 + cx^4 ....
- So we calculate the polynomial P(f) = a + bf + cf^2 + ...
- and assemble the approximation expm1(f) ~= f + f^2 * P(f). */
- svfloat64_t f2 = svmul_x (pg, f, f);
- svfloat64_t f4 = svmul_x (pg, f2, f2);
- svfloat64_t f8 = svmul_x (pg, f4, f4);
- svfloat64_t p
- = svmla_x (pg, f, f2, sv_estrin_10_f64_x (pg, f, f2, f4, f8, d->poly));
-
- /* Assemble the result.
- expm1(x) ~= 2^i * (p + 1) - 1
- Let t = 2^i. */
- svint64_t u = svadd_x (pg, svlsl_x (pg, i, 52), ExponentBias);
- svfloat64_t t = svreinterpret_f64 (u);
-
- /* expm1(x) ~= p * t + (t - 1). */
- svfloat64_t y = svmla_x (pg, svsub_x (pg, t, 1), p, t);
+ svbool_t special = svacgt (pg, x, d->thres);
- if (__glibc_unlikely (svptest_any (pg, special)))
- return special_case (x, y, special);
+ svfloat64_t z = svmla_x (pg, sv_f64 (d->shift), x, d->inv_ln2);
+ svuint64_t u = svreinterpret_u64 (z);
+ svfloat64_t n = svsub_x (pg, z, d->shift);
+ /* r = x - n * ln2, r is in [-ln2/128, ln2/128]. */
+ svfloat64_t ln2 = svld1rq (svptrue_b64 (), &d->ln2_hi);
+ svfloat64_t r = x;
+ r = svmls_lane (r, n, ln2, 0);
+ r = svmls_lane (r, n, ln2, 1);
+
+ /* y = exp(r) - 1 ~= r + C0 r^2 + C1 r^3 + C2 r^4 + C3 r^5 + C4 r^6. */
+ svfloat64_t r2 = svmul_x (svptrue_b64 (), r, r);
+ svfloat64_t c24 = svld1rq (svptrue_b64 (), &d->c2);
+
+ svfloat64_t p;
+ svfloat64_t c12 = svmla_lane (sv_f64 (d->c1), r, c24, 0);
+ svfloat64_t c34 = svmla_lane (sv_f64 (d->c3), r, c24, 1);
+ p = svmad_x (pg, c34, r2, c12);
+ p = svmad_x (pg, p, r, sv_f64 (d->c0));
+ p = svmad_x (pg, p, r2, r);
+
+ svfloat64_t scale = svexpa (u);
+ svfloat64_t scalem1 = svsub_x (pg, scale, sv_f64 (1.0));
+
+ /* We want to construct expm1(x) = (scale - 1) + scale * poly.
+ However, for values of scale close to 1, scale-1 causes large ULP errors
+ due to cancellation.
+
+ This can be circumvented by using a small lookup for scale-1
+ when our input is below a certain bound, otherwise we can use FEXPA.
+
+ This bound is based upon the table size:
+ Bound = (TableSize-1/64) * ln2.
+ The current bound is based upon a table size of 16. */
+ svbool_t is_small = svaclt (pg, x, FexpaBound);
+
+ if (svptest_any (pg, is_small))
+ {
+ /* Index via the input of FEXPA, but we only care about the lower 4 bits.
+ */
+ svuint64_t base_idx = svand_x (pg, u, 0xf);
+
+ /* We can use the sign of x as a fifth bit to account for the asymmetry
+ of e^x around 0. */
+ svuint64_t signBit
+ = svlsl_x (pg, svlsr_x (pg, svreinterpret_u64 (x), 63), 4);
+ svuint64_t idx = svorr_x (pg, base_idx, signBit);
+
+ /* Lookup values for scale - 1 for small x. */
+ svfloat64_t lookup = svreinterpret_f64 (
+ svld1_gather_index (is_small, d->expm1_data, idx));
+
+ /* Select the appropriate scale - 1 value based on x. */
+ scalem1 = svsel (is_small, lookup, scalem1);
+ }
+
+ svfloat64_t y = svmla_x (pg, scalem1, scale, p);
+
+ /* FEXPA returns nan for large inputs so we special case those. */
+ if (__glibc_unlikely (svptest_any (pg, special)))
+ {
+ /* FEXPA zeroes the sign bit, however the sign is meaningful to the
+ special case function so needs to be copied.
+ e = sign bit of u << 46. */
+ svuint64_t e = svand_x (pg, svlsl_x (pg, u, 46), 0x8000000000000000);
+ /* Copy sign to s. */
+ scale = svreinterpret_f64 (svadd_x (pg, e, svreinterpret_u64 (scale)));
+ return special_case (pg, y, scale, p, n);
+ }
+
+ /* return expm1 = (scale - 1) + (scale * poly). */
return y;
}
diff --git a/sysdeps/aarch64/fpu/log1p_sve.c b/sysdeps/aarch64/fpu/log1p_sve.c
index 862c13f..821c078 100644
--- a/sysdeps/aarch64/fpu/log1p_sve.c
+++ b/sysdeps/aarch64/fpu/log1p_sve.c
@@ -22,19 +22,33 @@
static const struct data
{
- double poly[19];
+ float64_t c0, c2, c4, c6, c8, c10, c12, c14, c16;
+ float64_t c1, c3, c5, c7, c9, c11, c13, c15, c17, c18;
double ln2_hi, ln2_lo;
uint64_t hfrt2_top, onemhfrt2_top, inf, mone;
} data = {
/* Generated using Remez in [ sqrt(2)/2 - 1, sqrt(2) - 1]. Order 20
- polynomial, however first 2 coefficients are 0 and 1 so are not stored. */
- .poly = { -0x1.ffffffffffffbp-2, 0x1.55555555551a9p-2, -0x1.00000000008e3p-2,
- 0x1.9999999a32797p-3, -0x1.555555552fecfp-3, 0x1.249248e071e5ap-3,
- -0x1.ffffff8bf8482p-4, 0x1.c71c8f07da57ap-4, -0x1.9999ca4ccb617p-4,
- 0x1.7459ad2e1dfa3p-4, -0x1.554d2680a3ff2p-4, 0x1.3b4c54d487455p-4,
- -0x1.2548a9ffe80e6p-4, 0x1.0f389a24b2e07p-4, -0x1.eee4db15db335p-5,
- 0x1.e95b494d4a5ddp-5, -0x1.15fdf07cb7c73p-4, 0x1.0310b70800fcfp-4,
- -0x1.cfa7385bdb37ep-6, },
+ polynomial, however first 2 coefficients are 0 and 1 so are not
+ stored. */
+ .c0 = -0x1.ffffffffffffbp-2,
+ .c1 = 0x1.55555555551a9p-2,
+ .c2 = -0x1.00000000008e3p-2,
+ .c3 = 0x1.9999999a32797p-3,
+ .c4 = -0x1.555555552fecfp-3,
+ .c5 = 0x1.249248e071e5ap-3,
+ .c6 = -0x1.ffffff8bf8482p-4,
+ .c7 = 0x1.c71c8f07da57ap-4,
+ .c8 = -0x1.9999ca4ccb617p-4,
+ .c9 = 0x1.7459ad2e1dfa3p-4,
+ .c10 = -0x1.554d2680a3ff2p-4,
+ .c11 = 0x1.3b4c54d487455p-4,
+ .c12 = -0x1.2548a9ffe80e6p-4,
+ .c13 = 0x1.0f389a24b2e07p-4,
+ .c14 = -0x1.eee4db15db335p-5,
+ .c15 = 0x1.e95b494d4a5ddp-5,
+ .c16 = -0x1.15fdf07cb7c73p-4,
+ .c17 = 0x1.0310b70800fcfp-4,
+ .c18 = -0x1.cfa7385bdb37ep-6,
.ln2_hi = 0x1.62e42fefa3800p-1,
.ln2_lo = 0x1.ef35793c76730p-45,
/* top32(asuint64(sqrt(2)/2)) << 32. */
@@ -49,7 +63,7 @@ static const struct data
#define BottomMask 0xffffffff
static svfloat64_t NOINLINE
-special_case (svbool_t special, svfloat64_t x, svfloat64_t y)
+special_case (svfloat64_t x, svfloat64_t y, svbool_t special)
{
return sv_call_f64 (log1p, x, y, special);
}
@@ -91,8 +105,9 @@ svfloat64_t SV_NAME_D1 (log1p) (svfloat64_t x, svbool_t pg)
/* Reduce x to f in [sqrt(2)/2, sqrt(2)]. */
svuint64_t utop
= svadd_x (pg, svand_x (pg, u, 0x000fffff00000000), d->hfrt2_top);
- svuint64_t u_red = svorr_x (pg, utop, svand_x (pg, mi, BottomMask));
- svfloat64_t f = svsub_x (pg, svreinterpret_f64 (u_red), 1);
+ svuint64_t u_red
+ = svorr_x (pg, utop, svand_x (svptrue_b64 (), mi, BottomMask));
+ svfloat64_t f = svsub_x (svptrue_b64 (), svreinterpret_f64 (u_red), 1);
/* Correction term c/m. */
svfloat64_t cm = svdiv_x (pg, svsub_x (pg, x, svsub_x (pg, m, 1)), m);
@@ -103,18 +118,49 @@ svfloat64_t SV_NAME_D1 (log1p) (svfloat64_t x, svbool_t pg)
Hence approximation has the form f + f^2 * P(f)
where P(x) = C0 + C1*x + C2x^2 + ...
Assembling this all correctly is dealt with at the final step. */
- svfloat64_t f2 = svmul_x (pg, f, f), f4 = svmul_x (pg, f2, f2),
- f8 = svmul_x (pg, f4, f4), f16 = svmul_x (pg, f8, f8);
- svfloat64_t p = sv_estrin_18_f64_x (pg, f, f2, f4, f8, f16, d->poly);
+ svfloat64_t f2 = svmul_x (svptrue_b64 (), f, f),
+ f4 = svmul_x (svptrue_b64 (), f2, f2),
+ f8 = svmul_x (svptrue_b64 (), f4, f4),
+ f16 = svmul_x (svptrue_b64 (), f8, f8);
+
+ svfloat64_t c13 = svld1rq (svptrue_b64 (), &d->c1);
+ svfloat64_t c57 = svld1rq (svptrue_b64 (), &d->c5);
+ svfloat64_t c911 = svld1rq (svptrue_b64 (), &d->c9);
+ svfloat64_t c1315 = svld1rq (svptrue_b64 (), &d->c13);
+ svfloat64_t c1718 = svld1rq (svptrue_b64 (), &d->c17);
+
+ /* Order-18 Estrin scheme. */
+ svfloat64_t p01 = svmla_lane (sv_f64 (d->c0), f, c13, 0);
+ svfloat64_t p23 = svmla_lane (sv_f64 (d->c2), f, c13, 1);
+ svfloat64_t p45 = svmla_lane (sv_f64 (d->c4), f, c57, 0);
+ svfloat64_t p67 = svmla_lane (sv_f64 (d->c6), f, c57, 1);
+
+ svfloat64_t p03 = svmla_x (pg, p01, f2, p23);
+ svfloat64_t p47 = svmla_x (pg, p45, f2, p67);
+ svfloat64_t p07 = svmla_x (pg, p03, f4, p47);
+
+ svfloat64_t p89 = svmla_lane (sv_f64 (d->c8), f, c911, 0);
+ svfloat64_t p1011 = svmla_lane (sv_f64 (d->c10), f, c911, 1);
+ svfloat64_t p1213 = svmla_lane (sv_f64 (d->c12), f, c1315, 0);
+ svfloat64_t p1415 = svmla_lane (sv_f64 (d->c14), f, c1315, 1);
+
+ svfloat64_t p811 = svmla_x (pg, p89, f2, p1011);
+ svfloat64_t p1215 = svmla_x (pg, p1213, f2, p1415);
+ svfloat64_t p815 = svmla_x (pg, p811, f4, p1215);
+
+ svfloat64_t p015 = svmla_x (pg, p07, f8, p815);
+ svfloat64_t p1617 = svmla_lane (sv_f64 (d->c16), f, c1718, 0);
+ svfloat64_t p1618 = svmla_lane (p1617, f2, c1718, 1);
+ svfloat64_t p = svmla_x (pg, p015, f16, p1618);
svfloat64_t ylo = svmla_x (pg, cm, k, d->ln2_lo);
svfloat64_t yhi = svmla_x (pg, f, k, d->ln2_hi);
- svfloat64_t y = svmla_x (pg, svadd_x (pg, ylo, yhi), f2, p);
if (__glibc_unlikely (svptest_any (pg, special)))
- return special_case (special, x, y);
-
- return y;
+ return special_case (
+ x, svmla_x (svptrue_b64 (), svadd_x (svptrue_b64 (), ylo, yhi), f2, p),
+ special);
+ return svmla_x (svptrue_b64 (), svadd_x (svptrue_b64 (), ylo, yhi), f2, p);
}
strong_alias (SV_NAME_D1 (log1p), SV_NAME_D1 (logp1))
diff --git a/sysdeps/aarch64/fpu/sinh_sve.c b/sysdeps/aarch64/fpu/sinh_sve.c
index 963453f..072ba8f 100644
--- a/sysdeps/aarch64/fpu/sinh_sve.c
+++ b/sysdeps/aarch64/fpu/sinh_sve.c
@@ -18,90 +18,153 @@
<https://www.gnu.org/licenses/>. */
#include "sv_math.h"
-#include "poly_sve_f64.h"
static const struct data
{
- float64_t poly[11];
- float64_t inv_ln2, m_ln2_hi, m_ln2_lo, shift;
uint64_t halff;
- int64_t onef;
- uint64_t large_bound;
+ double c2, c4;
+ double inv_ln2;
+ double ln2_hi, ln2_lo;
+ double c0, c1, c3;
+ double shift, special_bound, bound;
+ uint64_t expm1_data[20];
} data = {
- /* Generated using Remez, deg=12 in [-log(2)/2, log(2)/2]. */
- .poly = { 0x1p-1, 0x1.5555555555559p-3, 0x1.555555555554bp-5,
- 0x1.111111110f663p-7, 0x1.6c16c16c1b5f3p-10,
- 0x1.a01a01affa35dp-13, 0x1.a01a018b4ecbbp-16,
- 0x1.71ddf82db5bb4p-19, 0x1.27e517fc0d54bp-22,
- 0x1.af5eedae67435p-26, 0x1.1f143d060a28ap-29, },
-
- .inv_ln2 = 0x1.71547652b82fep0,
- .m_ln2_hi = -0x1.62e42fefa39efp-1,
- .m_ln2_lo = -0x1.abc9e3b39803fp-56,
- .shift = 0x1.8p52,
-
+ /* Table lookup of 2^(i/64) - 1, for values of i from 0..19. */
+ .expm1_data = {
+ 0x0000000000000000, 0x3f864d1f3bc03077, 0x3f966c34c5615d0f, 0x3fa0e8a30eb37901,
+ 0x3fa6ab0d9f3121ec, 0x3fac7d865a7a3440, 0x3fb1301d0125b50a, 0x3fb429aaea92ddfb,
+ 0x3fb72b83c7d517ae, 0x3fba35beb6fcb754, 0x3fbd4873168b9aa8, 0x3fc031dc431466b2,
+ 0x3fc1c3d373ab11c3, 0x3fc35a2b2f13e6e9, 0x3fc4f4efa8fef709, 0x3fc6942d3720185a,
+ 0x3fc837f0518db8a9, 0x3fc9e0459320b7fa, 0x3fcb8d39b9d54e55, 0x3fcd3ed9a72cffb7,
+ },
+
+ /* Generated using Remez, in [-log(2)/128, log(2)/128]. */
+ .c0 = 0x1p-1,
+ .c1 = 0x1.55555555548f9p-3,
+ .c2 = 0x1.5555555554c22p-5,
+ .c3 = 0x1.111123aaa2fb2p-7,
+ .c4 = 0x1.6c16d77d98e5bp-10,
+ .ln2_hi = 0x1.62e42fefa3800p-1,
+ .ln2_lo = 0x1.ef35793c76730p-45,
+ .inv_ln2 = 0x1.71547652b82fep+0,
+ .shift = 0x1.800000000ffc0p+46, /* 1.5*2^46+1023. */
.halff = 0x3fe0000000000000,
- .onef = 0x3ff0000000000000,
- /* 2^9. expm1 helper overflows for large input. */
- .large_bound = 0x4080000000000000,
+ .special_bound = 0x1.62e37e7d8ba72p+9, /* ln(2^(1024 - 1/128)). */
+ .bound = 0x1.a56ef8ec924ccp-3 /* 19*ln2/64. */
};
+/* A specialised FEXPA expm1 that is only valid for positive inputs and
+ has no special cases. Based off the full FEXPA expm1 implementated for
+ _ZGVsMxv_expm1, with a slightly modified file to keep sinh under 3.5ULP. */
static inline svfloat64_t
-expm1_inline (svfloat64_t x, svbool_t pg)
+expm1_inline (svbool_t pg, svfloat64_t x)
{
const struct data *d = ptr_barrier (&data);
- /* Reduce argument:
- exp(x) - 1 = 2^i * (expm1(f) + 1) - 1
- where i = round(x / ln2)
- and f = x - i * ln2 (f in [-ln2/2, ln2/2]). */
- svfloat64_t j
- = svsub_x (pg, svmla_x (pg, sv_f64 (d->shift), x, d->inv_ln2), d->shift);
- svint64_t i = svcvt_s64_x (pg, j);
- svfloat64_t f = svmla_x (pg, x, j, d->m_ln2_hi);
- f = svmla_x (pg, f, j, d->m_ln2_lo);
- /* Approximate expm1(f) using polynomial. */
- svfloat64_t f2 = svmul_x (pg, f, f);
- svfloat64_t f4 = svmul_x (pg, f2, f2);
- svfloat64_t f8 = svmul_x (pg, f4, f4);
- svfloat64_t p
- = svmla_x (pg, f, f2, sv_estrin_10_f64_x (pg, f, f2, f4, f8, d->poly));
- /* t = 2^i. */
- svfloat64_t t = svscale_x (pg, sv_f64 (1), i);
- /* expm1(x) ~= p * t + (t - 1). */
- return svmla_x (pg, svsub_x (pg, t, 1.0), p, t);
+ svfloat64_t z = svmla_x (pg, sv_f64 (d->shift), x, d->inv_ln2);
+ svuint64_t u = svreinterpret_u64 (z);
+ svfloat64_t n = svsub_x (pg, z, d->shift);
+
+ svfloat64_t ln2 = svld1rq (svptrue_b64 (), &d->ln2_hi);
+ svfloat64_t c24 = svld1rq (svptrue_b64 (), &d->c2);
+
+ svfloat64_t r = x;
+ r = svmls_lane (r, n, ln2, 0);
+ r = svmls_lane (r, n, ln2, 1);
+
+ svfloat64_t r2 = svmul_x (svptrue_b64 (), r, r);
+
+ svfloat64_t p;
+ svfloat64_t c12 = svmla_lane (sv_f64 (d->c1), r, c24, 0);
+ svfloat64_t c34 = svmla_lane (sv_f64 (d->c3), r, c24, 1);
+ p = svmad_x (pg, c34, r2, c12);
+ p = svmad_x (pg, p, r, sv_f64 (d->c0));
+ p = svmad_x (pg, p, r2, r);
+
+ svfloat64_t scale = svexpa (u);
+
+ /* We want to construct expm1(x) = (scale - 1) + scale * poly.
+ However, for values of scale close to 1, scale-1 causes large ULP errors
+ due to cancellation.
+
+ This can be circumvented by using a small lookup for scale-1
+ when our input is below a certain bound, otherwise we can use FEXPA. */
+ svbool_t is_small = svaclt (pg, x, d->bound);
+
+ /* Index via the input of FEXPA, but we only care about the lower 5 bits. */
+ svuint64_t base_idx = svand_x (pg, u, 0x1f);
+
+ /* Compute scale - 1 from FEXPA, and lookup values where this fails. */
+ svfloat64_t scalem1_estimate = svsub_x (pg, scale, sv_f64 (1.0));
+ svuint64_t scalem1_lookup
+ = svld1_gather_index (is_small, d->expm1_data, base_idx);
+
+ /* Select the appropriate scale - 1 value based on x. */
+ svfloat64_t scalem1
+ = svsel (is_small, svreinterpret_f64 (scalem1_lookup), scalem1_estimate);
+
+ /* return expm1 = scale - 1 + (scale * poly). */
+ return svmla_x (pg, scalem1, scale, p);
}
+/* Vectorised special case to handle values past where exp_inline overflows.
+ Halves the input value and uses the identity exp(x) = exp(x/2)^2 to double
+ the valid range of inputs, and returns inf for anything past that. */
static svfloat64_t NOINLINE
-special_case (svfloat64_t x, svbool_t pg)
+special_case (svbool_t pg, svbool_t special, svfloat64_t ax,
+ svfloat64_t halfsign, const struct data *d)
{
- return sv_call_f64 (sinh, x, x, pg);
+ /* Halves input value, and then check if any cases
+ are still going to overflow. */
+ ax = svmul_x (special, ax, 0.5);
+ svbool_t is_safe = svaclt (special, ax, d->special_bound);
+
+ svfloat64_t t = expm1_inline (pg, ax);
+
+ /* Finish fastpass to compute values for non-special cases. */
+ svfloat64_t y = svadd_x (pg, t, svdiv_x (pg, t, svadd_x (pg, t, 1.0)));
+ y = svmul_x (pg, y, halfsign);
+
+ /* Computes special lane, and set remaining overflow lanes to inf. */
+ svfloat64_t half_special_y = svmul_x (svptrue_b64 (), t, halfsign);
+ svfloat64_t special_y = svmul_x (svptrue_b64 (), half_special_y, t);
+
+ svuint64_t signed_inf
+ = svorr_x (svptrue_b64 (), svreinterpret_u64 (halfsign),
+ sv_u64 (0x7ff0000000000000));
+ special_y = svsel (is_safe, special_y, svreinterpret_f64 (signed_inf));
+
+ /* Join resulting vectors together and return. */
+ return svsel (special, special_y, y);
}
-/* Approximation for SVE double-precision sinh(x) using expm1.
- sinh(x) = (exp(x) - exp(-x)) / 2.
- The greatest observed error is 2.57 ULP:
- _ZGVsMxv_sinh (0x1.a008538399931p-2) got 0x1.ab929fc64bd66p-2
- want 0x1.ab929fc64bd63p-2. */
+/* Approximation for SVE double-precision sinh(x) using FEXPA expm1.
+ Uses sinh(x) = e^2x - 1 / 2e^x, rewritten for accuracy.
+ The greatest observed error in the non-special region is 2.63 + 0.5 ULP:
+ _ZGVsMxv_sinh (0x1.b5e0e13ba88aep-2) got 0x1.c3587faf97b0cp-2
+ want 0x1.c3587faf97b09p-2
+
+ The greatest observed error in the special region is 2.65 + 0.5 ULP:
+ _ZGVsMxv_sinh (0x1.633ce847dab1ap+9) got 0x1.fffd30eea0066p+1023
+ want 0x1.fffd30eea0063p+1023. */
svfloat64_t SV_NAME_D1 (sinh) (svfloat64_t x, svbool_t pg)
{
const struct data *d = ptr_barrier (&data);
+ svbool_t special = svacge (pg, x, d->special_bound);
svfloat64_t ax = svabs_x (pg, x);
svuint64_t sign
= sveor_x (pg, svreinterpret_u64 (x), svreinterpret_u64 (ax));
svfloat64_t halfsign = svreinterpret_f64 (svorr_x (pg, sign, d->halff));
- svbool_t special = svcmpge (pg, svreinterpret_u64 (ax), d->large_bound);
-
/* Fall back to scalar variant for all lanes if any are special. */
if (__glibc_unlikely (svptest_any (pg, special)))
- return special_case (x, pg);
+ return special_case (pg, special, ax, halfsign, d);
/* Up to the point that expm1 overflows, we can use it to calculate sinh
using a slight rearrangement of the definition of sinh. This allows us to
retain acceptable accuracy for very small inputs. */
- svfloat64_t t = expm1_inline (ax, pg);
+ svfloat64_t t = expm1_inline (pg, ax);
t = svadd_x (pg, t, svdiv_x (pg, t, svadd_x (pg, t, 1.0)));
return svmul_x (pg, t, halfsign);
}
diff --git a/sysdeps/aarch64/fpu/sv_log1p_inline.h b/sysdeps/aarch64/fpu/sv_log1p_inline.h
index 71f88e0..c2b196f 100644
--- a/sysdeps/aarch64/fpu/sv_log1p_inline.h
+++ b/sysdeps/aarch64/fpu/sv_log1p_inline.h
@@ -21,11 +21,12 @@
#define AARCH64_FPU_SV_LOG1P_INLINE_H
#include "sv_math.h"
-#include "poly_sve_f64.h"
static const struct sv_log1p_data
{
- double poly[19], ln2[2];
+ double c0, c2, c4, c6, c8, c10, c12, c14, c16;
+ double c1, c3, c5, c7, c9, c11, c13, c15, c17, c18;
+ double ln2_lo, ln2_hi;
uint64_t hf_rt2_top;
uint64_t one_m_hf_rt2_top;
uint32_t bottom_mask;
@@ -33,15 +34,30 @@ static const struct sv_log1p_data
} sv_log1p_data = {
/* Coefficients generated using Remez, deg=20, in [sqrt(2)/2-1, sqrt(2)-1].
*/
- .poly = { -0x1.ffffffffffffbp-2, 0x1.55555555551a9p-2, -0x1.00000000008e3p-2,
- 0x1.9999999a32797p-3, -0x1.555555552fecfp-3, 0x1.249248e071e5ap-3,
- -0x1.ffffff8bf8482p-4, 0x1.c71c8f07da57ap-4, -0x1.9999ca4ccb617p-4,
- 0x1.7459ad2e1dfa3p-4, -0x1.554d2680a3ff2p-4, 0x1.3b4c54d487455p-4,
- -0x1.2548a9ffe80e6p-4, 0x1.0f389a24b2e07p-4, -0x1.eee4db15db335p-5,
- 0x1.e95b494d4a5ddp-5, -0x1.15fdf07cb7c73p-4, 0x1.0310b70800fcfp-4,
- -0x1.cfa7385bdb37ep-6 },
- .ln2 = { 0x1.62e42fefa3800p-1, 0x1.ef35793c76730p-45 },
+ .c0 = -0x1.ffffffffffffbp-2,
+ .c1 = 0x1.55555555551a9p-2,
+ .c2 = -0x1.00000000008e3p-2,
+ .c3 = 0x1.9999999a32797p-3,
+ .c4 = -0x1.555555552fecfp-3,
+ .c5 = 0x1.249248e071e5ap-3,
+ .c6 = -0x1.ffffff8bf8482p-4,
+ .c7 = 0x1.c71c8f07da57ap-4,
+ .c8 = -0x1.9999ca4ccb617p-4,
+ .c9 = 0x1.7459ad2e1dfa3p-4,
+ .c10 = -0x1.554d2680a3ff2p-4,
+ .c11 = 0x1.3b4c54d487455p-4,
+ .c12 = -0x1.2548a9ffe80e6p-4,
+ .c13 = 0x1.0f389a24b2e07p-4,
+ .c14 = -0x1.eee4db15db335p-5,
+ .c15 = 0x1.e95b494d4a5ddp-5,
+ .c16 = -0x1.15fdf07cb7c73p-4,
+ .c17 = 0x1.0310b70800fcfp-4,
+ .c18 = -0x1.cfa7385bdb37ep-6,
+ .ln2_lo = 0x1.62e42fefa3800p-1,
+ .ln2_hi = 0x1.ef35793c76730p-45,
+ /* top32(asuint64(sqrt(2)/2)) << 32. */
.hf_rt2_top = 0x3fe6a09e00000000,
+ /* (top32(asuint64(1)) - top32(asuint64(sqrt(2)/2))) << 32. */
.one_m_hf_rt2_top = 0x00095f6200000000,
.bottom_mask = 0xffffffff,
.one_top = 0x3ff
@@ -51,14 +67,14 @@ static inline svfloat64_t
sv_log1p_inline (svfloat64_t x, const svbool_t pg)
{
/* Helper for calculating log(x + 1). Adapted from v_log1p_inline.h, which
- differs from v_log1p_2u5.c by:
+ differs from advsimd/log1p.c by:
- No special-case handling - this should be dealt with by the caller.
- Pairwise Horner polynomial evaluation for improved accuracy.
- Optionally simulate the shortcut for k=0, used in the scalar routine,
using svsel, for improved accuracy when the argument to log1p is close
to 0. This feature is enabled by defining WANT_SV_LOG1P_K0_SHORTCUT as 1
in the source of the caller before including this file.
- See sv_log1p_2u1.c for details of the algorithm. */
+ See sve/log1p.c for details of the algorithm. */
const struct sv_log1p_data *d = ptr_barrier (&sv_log1p_data);
svfloat64_t m = svadd_x (pg, x, 1);
svuint64_t mi = svreinterpret_u64 (m);
@@ -79,7 +95,7 @@ sv_log1p_inline (svfloat64_t x, const svbool_t pg)
svfloat64_t cm;
#ifndef WANT_SV_LOG1P_K0_SHORTCUT
-#error \
+#error \
"Cannot use sv_log1p_inline.h without specifying whether you need the k0 shortcut for greater accuracy close to 0"
#elif WANT_SV_LOG1P_K0_SHORTCUT
/* Shortcut if k is 0 - set correction term to 0 and f to x. The result is
@@ -96,14 +112,46 @@ sv_log1p_inline (svfloat64_t x, const svbool_t pg)
#endif
/* Approximate log1p(f) on the reduced input using a polynomial. */
- svfloat64_t f2 = svmul_x (pg, f, f);
- svfloat64_t p = sv_pw_horner_18_f64_x (pg, f, f2, d->poly);
+ svfloat64_t f2 = svmul_x (svptrue_b64 (), f, f),
+ f4 = svmul_x (svptrue_b64 (), f2, f2),
+ f8 = svmul_x (svptrue_b64 (), f4, f4),
+ f16 = svmul_x (svptrue_b64 (), f8, f8);
+
+ svfloat64_t c13 = svld1rq (svptrue_b64 (), &d->c1);
+ svfloat64_t c57 = svld1rq (svptrue_b64 (), &d->c5);
+ svfloat64_t c911 = svld1rq (svptrue_b64 (), &d->c9);
+ svfloat64_t c1315 = svld1rq (svptrue_b64 (), &d->c13);
+ svfloat64_t c1718 = svld1rq (svptrue_b64 (), &d->c17);
+
+ /* Order-18 Estrin scheme. */
+ svfloat64_t p01 = svmla_lane (sv_f64 (d->c0), f, c13, 0);
+ svfloat64_t p23 = svmla_lane (sv_f64 (d->c2), f, c13, 1);
+ svfloat64_t p45 = svmla_lane (sv_f64 (d->c4), f, c57, 0);
+ svfloat64_t p67 = svmla_lane (sv_f64 (d->c6), f, c57, 1);
+
+ svfloat64_t p03 = svmla_x (pg, p01, f2, p23);
+ svfloat64_t p47 = svmla_x (pg, p45, f2, p67);
+ svfloat64_t p07 = svmla_x (pg, p03, f4, p47);
+
+ svfloat64_t p89 = svmla_lane (sv_f64 (d->c8), f, c911, 0);
+ svfloat64_t p1011 = svmla_lane (sv_f64 (d->c10), f, c911, 1);
+ svfloat64_t p1213 = svmla_lane (sv_f64 (d->c12), f, c1315, 0);
+ svfloat64_t p1415 = svmla_lane (sv_f64 (d->c14), f, c1315, 1);
+
+ svfloat64_t p811 = svmla_x (pg, p89, f2, p1011);
+ svfloat64_t p1215 = svmla_x (pg, p1213, f2, p1415);
+ svfloat64_t p815 = svmla_x (pg, p811, f4, p1215);
+
+ svfloat64_t p015 = svmla_x (pg, p07, f8, p815);
+ svfloat64_t p1617 = svmla_lane (sv_f64 (d->c16), f, c1718, 0);
+ svfloat64_t p1618 = svmla_lane (p1617, f2, c1718, 1);
+ svfloat64_t p = svmla_x (pg, p015, f16, p1618);
/* Assemble log1p(x) = k * log2 + log1p(f) + c/m. */
- svfloat64_t ylo = svmla_x (pg, cm, k, d->ln2[0]);
- svfloat64_t yhi = svmla_x (pg, f, k, d->ln2[1]);
+ svfloat64_t ln2_lo_hi = svld1rq (svptrue_b64 (), &d->ln2_lo);
+ svfloat64_t ylo = svmla_lane (cm, k, ln2_lo_hi, 0);
+ svfloat64_t yhi = svmla_lane (f, k, ln2_lo_hi, 1);
- return svmla_x (pg, svadd_x (pg, ylo, yhi), f2, p);
+ return svmad_x (pg, p, f2, svadd_x (pg, ylo, yhi));
}
-
#endif
diff --git a/sysdeps/aarch64/fpu/tanh_sve.c b/sysdeps/aarch64/fpu/tanh_sve.c
index 789cc68..5869419 100644
--- a/sysdeps/aarch64/fpu/tanh_sve.c
+++ b/sysdeps/aarch64/fpu/tanh_sve.c
@@ -18,83 +18,117 @@
<https://www.gnu.org/licenses/>. */
#include "sv_math.h"
-#include "poly_sve_f64.h"
static const struct data
{
- float64_t poly[11];
- float64_t inv_ln2, ln2_hi, ln2_lo, shift;
- uint64_t thresh, tiny_bound;
+ double ln2_hi, ln2_lo;
+ double c2, c4;
+ double c0, c1, c3;
+ double two_over_ln2, shift;
+ uint64_t tiny_bound;
+ double large_bound, fexpa_bound;
+ uint64_t e2xm1_data[20];
} data = {
- /* Generated using Remez, deg=12 in [-log(2)/2, log(2)/2]. */
- .poly = { 0x1p-1, 0x1.5555555555559p-3, 0x1.555555555554bp-5,
- 0x1.111111110f663p-7, 0x1.6c16c16c1b5f3p-10,
- 0x1.a01a01affa35dp-13, 0x1.a01a018b4ecbbp-16,
- 0x1.71ddf82db5bb4p-19, 0x1.27e517fc0d54bp-22,
- 0x1.af5eedae67435p-26, 0x1.1f143d060a28ap-29, },
-
- .inv_ln2 = 0x1.71547652b82fep0,
- .ln2_hi = -0x1.62e42fefa39efp-1,
- .ln2_lo = -0x1.abc9e3b39803fp-56,
- .shift = 0x1.8p52,
-
+ /* Generated using Remez, in [-log(2)/128, log(2)/128]. */
+ .c0 = 0x1p-1,
+ .c1 = 0x1.55555555548f9p-3,
+ .c2 = 0x1.5555555554c22p-5,
+ .c3 = 0x1.111123aaa2fb2p-7,
+ .c4 = 0x1.6c16d77d98e5bp-10,
+ .ln2_hi = 0x1.62e42fefa3800p-1,
+ .ln2_lo = 0x1.ef35793c76730p-45,
+ .two_over_ln2 = 0x1.71547652b82fep+1,
+ .shift = 0x1.800000000ffc0p+46, /* 1.5*2^46+1023. */
.tiny_bound = 0x3e40000000000000, /* asuint64 (0x1p-27). */
- /* asuint64(0x1.241bf835f9d5fp+4) - asuint64(tiny_bound). */
- .thresh = 0x01f241bf835f9d5f,
+ .large_bound = 0x1.30fc1931f09cap+4, /* arctanh(1 - 2^-54). */
+ .fexpa_bound = 0x1.a56ef8ec924ccp-4, /* 19/64 * ln2/2. */
+ /* Table lookup of 2^(i/64) - 1, for values of i from 0..19. */
+ .e2xm1_data = {
+ 0x0000000000000000, 0x3f864d1f3bc03077, 0x3f966c34c5615d0f, 0x3fa0e8a30eb37901,
+ 0x3fa6ab0d9f3121ec, 0x3fac7d865a7a3440, 0x3fb1301d0125b50a, 0x3fb429aaea92ddfb,
+ 0x3fb72b83c7d517ae, 0x3fba35beb6fcb754, 0x3fbd4873168b9aa8, 0x3fc031dc431466b2,
+ 0x3fc1c3d373ab11c3, 0x3fc35a2b2f13e6e9, 0x3fc4f4efa8fef709, 0x3fc6942d3720185a,
+ 0x3fc837f0518db8a9, 0x3fc9e0459320b7fa, 0x3fcb8d39b9d54e55, 0x3fcd3ed9a72cffb7,
+ },
};
+/* An expm1 inspired, FEXPA based helper function that returns an
+ accurate estimate for e^2x - 1. With no special case or support for
+ negative inputs of x. */
static inline svfloat64_t
-expm1_inline (svfloat64_t x, const svbool_t pg, const struct data *d)
-{
- /* Helper routine for calculating exp(x) - 1. Vector port of the helper from
- the scalar variant of tanh. */
-
- /* Reduce argument: f in [-ln2/2, ln2/2], i is exact. */
- svfloat64_t j
- = svsub_x (pg, svmla_x (pg, sv_f64 (d->shift), x, d->inv_ln2), d->shift);
- svint64_t i = svcvt_s64_x (pg, j);
- svfloat64_t f = svmla_x (pg, x, j, d->ln2_hi);
- f = svmla_x (pg, f, j, d->ln2_lo);
-
- /* Approximate expm1(f) using polynomial. */
- svfloat64_t f2 = svmul_x (pg, f, f);
- svfloat64_t f4 = svmul_x (pg, f2, f2);
- svfloat64_t p = svmla_x (
- pg, f, f2,
- sv_estrin_10_f64_x (pg, f, f2, f4, svmul_x (pg, f4, f4), d->poly));
-
- /* t = 2 ^ i. */
- svfloat64_t t = svscale_x (pg, sv_f64 (1), i);
- /* expm1(x) = p * t + (t - 1). */
- return svmla_x (pg, svsub_x (pg, t, 1), p, t);
-}
-
-static svfloat64_t NOINLINE
-special_case (svfloat64_t x, svfloat64_t y, svbool_t special)
+e2xm1_inline (const svbool_t pg, svfloat64_t x, const struct data *d)
{
- return sv_call_f64 (tanh, x, y, special);
+ svfloat64_t z = svmla_x (pg, sv_f64 (d->shift), x, d->two_over_ln2);
+ svuint64_t u = svreinterpret_u64 (z);
+ svfloat64_t n = svsub_x (pg, z, d->shift);
+
+ /* r = x - n * ln2/2, r is in [-ln2/(2N), ln2/(2N)]. */
+ svfloat64_t ln2 = svld1rq (svptrue_b64 (), &d->ln2_hi);
+ svfloat64_t r = svadd_x (pg, x, x);
+ r = svmls_lane (r, n, ln2, 0);
+ r = svmls_lane (r, n, ln2, 1);
+
+ /* y = exp(r) - 1 ~= r + C0 r^2 + C1 r^3 + C2 r^4 + C3 r^5 + C4 r^6. */
+ svfloat64_t r2 = svmul_x (svptrue_b64 (), r, r);
+ svfloat64_t c24 = svld1rq (svptrue_b64 (), &d->c2);
+
+ svfloat64_t p;
+ svfloat64_t c12 = svmla_lane (sv_f64 (d->c1), r, c24, 0);
+ svfloat64_t c34 = svmla_lane (sv_f64 (d->c3), r, c24, 1);
+ p = svmad_x (pg, c34, r2, c12);
+ p = svmad_x (pg, p, r, sv_f64 (d->c0));
+ p = svmad_x (pg, p, r2, r);
+
+ svfloat64_t scale = svexpa (u);
+
+ /* We want to construct e2xm1(x) = (scale - 1) + scale * poly.
+ However, for values of scale close to 1, scale-1 causes large ULP errors
+ due to cancellation.
+
+ This can be circumvented by using a small lookup for scale-1
+ when our input is below a certain bound, otherwise we can use FEXPA. */
+ svbool_t is_small = svaclt (pg, x, d->fexpa_bound);
+
+ /* Index via the input of FEXPA, but we only care about the lower 5 bits. */
+ svuint64_t base_idx = svand_x (pg, u, 0x1f);
+
+ /* Compute scale - 1 from FEXPA, and lookup values where this fails. */
+ svfloat64_t scalem1_estimate = svsub_x (pg, scale, sv_f64 (1.0));
+ svuint64_t scalem1_lookup
+ = svld1_gather_index (is_small, d->e2xm1_data, base_idx);
+
+ /* Select the appropriate scale - 1 value based on x. */
+ svfloat64_t scalem1
+ = svsel (is_small, svreinterpret_f64 (scalem1_lookup), scalem1_estimate);
+ return svmla_x (pg, scalem1, scale, p);
}
-/* SVE approximation for double-precision tanh(x), using a simplified
- version of expm1. The greatest observed error is 2.77 ULP:
- _ZGVsMxv_tanh(-0x1.c4a4ca0f9f3b7p-3) got -0x1.bd6a21a163627p-3
- want -0x1.bd6a21a163624p-3. */
+/* SVE approximation for double-precision tanh(x), using a modified version of
+ FEXPA expm1 to calculate e^2x - 1.
+ The greatest observed error is 2.79 + 0.5 ULP:
+ _ZGVsMxv_tanh (0x1.fff868eb3c223p-9) got 0x1.fff7be486cae6p-9
+ want 0x1.fff7be486cae9p-9. */
svfloat64_t SV_NAME_D1 (tanh) (svfloat64_t x, svbool_t pg)
{
const struct data *d = ptr_barrier (&data);
- svuint64_t ia = svreinterpret_u64 (svabs_x (pg, x));
+ svbool_t large = svacge (pg, x, d->large_bound);
- /* Trigger special-cases for tiny, boring and infinity/NaN. */
- svbool_t special = svcmpgt (pg, svsub_x (pg, ia, d->tiny_bound), d->thresh);
+ /* We can use tanh(x) = (e^2x - 1) / (e^2x + 1) to approximate tanh.
+ As an additional optimisation, we can ensure more accurate values of e^x
+ by only using positive inputs. So we calculate tanh(|x|), and restore the
+ sign of the input before returning. */
+ svfloat64_t ax = svabs_x (pg, x);
+ svuint64_t sign_bit
+ = sveor_x (pg, svreinterpret_u64 (x), svreinterpret_u64 (ax));
- svfloat64_t u = svadd_x (pg, x, x);
+ svfloat64_t p = e2xm1_inline (pg, ax, d);
+ svfloat64_t q = svadd_x (pg, p, 2);
- /* tanh(x) = (e^2x - 1) / (e^2x + 1). */
- svfloat64_t q = expm1_inline (u, pg, d);
- svfloat64_t qp2 = svadd_x (pg, q, 2);
+ /* For sufficiently high inputs, the result of tanh(|x|) is 1 when correctly
+ rounded, at this point we can return 1 directly, with sign correction.
+ This will also act as a guard against our approximation overflowing. */
+ svfloat64_t y = svsel (large, sv_f64 (1.0), svdiv_x (pg, p, q));
- if (__glibc_unlikely (svptest_any (pg, special)))
- return special_case (x, svdiv_x (pg, q, qp2), special);
- return svdiv_x (pg, q, qp2);
+ return svreinterpret_f64 (svorr_x (pg, sign_bit, svreinterpret_u64 (y)));
}
diff --git a/sysdeps/aarch64/fpu/test-double-advsimd-wrappers.c b/sysdeps/aarch64/fpu/test-double-advsimd-wrappers.c
index 07133eb..a3fef22 100644
--- a/sysdeps/aarch64/fpu/test-double-advsimd-wrappers.c
+++ b/sysdeps/aarch64/fpu/test-double-advsimd-wrappers.c
@@ -25,11 +25,15 @@
VPCS_VECTOR_WRAPPER (acos_advsimd, _ZGVnN2v_acos)
VPCS_VECTOR_WRAPPER (acosh_advsimd, _ZGVnN2v_acosh)
+VPCS_VECTOR_WRAPPER (acospi_advsimd, _ZGVnN2v_acospi)
VPCS_VECTOR_WRAPPER (asin_advsimd, _ZGVnN2v_asin)
VPCS_VECTOR_WRAPPER (asinh_advsimd, _ZGVnN2v_asinh)
+VPCS_VECTOR_WRAPPER (asinpi_advsimd, _ZGVnN2v_asinpi)
VPCS_VECTOR_WRAPPER (atan_advsimd, _ZGVnN2v_atan)
VPCS_VECTOR_WRAPPER (atanh_advsimd, _ZGVnN2v_atanh)
+VPCS_VECTOR_WRAPPER (atanpi_advsimd, _ZGVnN2v_atanpi)
VPCS_VECTOR_WRAPPER_ff (atan2_advsimd, _ZGVnN2vv_atan2)
+VPCS_VECTOR_WRAPPER_ff (atan2pi_advsimd, _ZGVnN2vv_atan2pi)
VPCS_VECTOR_WRAPPER (cbrt_advsimd, _ZGVnN2v_cbrt)
VPCS_VECTOR_WRAPPER (cos_advsimd, _ZGVnN2v_cos)
VPCS_VECTOR_WRAPPER (cosh_advsimd, _ZGVnN2v_cosh)
diff --git a/sysdeps/aarch64/fpu/test-double-sve-wrappers.c b/sysdeps/aarch64/fpu/test-double-sve-wrappers.c
index 02953cb..f4a5ae8 100644
--- a/sysdeps/aarch64/fpu/test-double-sve-wrappers.c
+++ b/sysdeps/aarch64/fpu/test-double-sve-wrappers.c
@@ -44,11 +44,15 @@
SVE_VECTOR_WRAPPER (acos_sve, _ZGVsMxv_acos)
SVE_VECTOR_WRAPPER (acosh_sve, _ZGVsMxv_acosh)
+SVE_VECTOR_WRAPPER (acospi_sve, _ZGVsMxv_acospi)
SVE_VECTOR_WRAPPER (asin_sve, _ZGVsMxv_asin)
SVE_VECTOR_WRAPPER (asinh_sve, _ZGVsMxv_asinh)
+SVE_VECTOR_WRAPPER (asinpi_sve, _ZGVsMxv_asinpi)
SVE_VECTOR_WRAPPER (atan_sve, _ZGVsMxv_atan)
SVE_VECTOR_WRAPPER (atanh_sve, _ZGVsMxv_atanh)
+SVE_VECTOR_WRAPPER (atanpi_sve, _ZGVsMxv_atanpi)
SVE_VECTOR_WRAPPER_ff (atan2_sve, _ZGVsMxvv_atan2)
+SVE_VECTOR_WRAPPER_ff (atan2pi_sve, _ZGVsMxvv_atan2pi)
SVE_VECTOR_WRAPPER (cbrt_sve, _ZGVsMxv_cbrt)
SVE_VECTOR_WRAPPER (cos_sve, _ZGVsMxv_cos)
SVE_VECTOR_WRAPPER (cosh_sve, _ZGVsMxv_cosh)
diff --git a/sysdeps/aarch64/fpu/test-float-advsimd-wrappers.c b/sysdeps/aarch64/fpu/test-float-advsimd-wrappers.c
index 118bbb0..bc22956 100644
--- a/sysdeps/aarch64/fpu/test-float-advsimd-wrappers.c
+++ b/sysdeps/aarch64/fpu/test-float-advsimd-wrappers.c
@@ -25,11 +25,15 @@
VPCS_VECTOR_WRAPPER (acosf_advsimd, _ZGVnN4v_acosf)
VPCS_VECTOR_WRAPPER (acoshf_advsimd, _ZGVnN4v_acoshf)
+VPCS_VECTOR_WRAPPER (acospif_advsimd, _ZGVnN4v_acospif)
VPCS_VECTOR_WRAPPER (asinf_advsimd, _ZGVnN4v_asinf)
VPCS_VECTOR_WRAPPER (asinhf_advsimd, _ZGVnN4v_asinhf)
+VPCS_VECTOR_WRAPPER (asinpif_advsimd, _ZGVnN4v_asinpif)
VPCS_VECTOR_WRAPPER (atanf_advsimd, _ZGVnN4v_atanf)
VPCS_VECTOR_WRAPPER (atanhf_advsimd, _ZGVnN4v_atanhf)
+VPCS_VECTOR_WRAPPER (atanpif_advsimd, _ZGVnN4v_atanpif)
VPCS_VECTOR_WRAPPER_ff (atan2f_advsimd, _ZGVnN4vv_atan2f)
+VPCS_VECTOR_WRAPPER_ff (atan2pif_advsimd, _ZGVnN4vv_atan2pif)
VPCS_VECTOR_WRAPPER (cbrtf_advsimd, _ZGVnN4v_cbrtf)
VPCS_VECTOR_WRAPPER (cosf_advsimd, _ZGVnN4v_cosf)
VPCS_VECTOR_WRAPPER (coshf_advsimd, _ZGVnN4v_coshf)
diff --git a/sysdeps/aarch64/fpu/test-float-sve-wrappers.c b/sysdeps/aarch64/fpu/test-float-sve-wrappers.c
index f5e7c8c..ad0d6ad 100644
--- a/sysdeps/aarch64/fpu/test-float-sve-wrappers.c
+++ b/sysdeps/aarch64/fpu/test-float-sve-wrappers.c
@@ -44,11 +44,15 @@
SVE_VECTOR_WRAPPER (acosf_sve, _ZGVsMxv_acosf)
SVE_VECTOR_WRAPPER (acoshf_sve, _ZGVsMxv_acoshf)
+SVE_VECTOR_WRAPPER (acospif_sve, _ZGVsMxv_acospif)
SVE_VECTOR_WRAPPER (asinf_sve, _ZGVsMxv_asinf)
SVE_VECTOR_WRAPPER (asinhf_sve, _ZGVsMxv_asinhf)
+SVE_VECTOR_WRAPPER (asinpif_sve, _ZGVsMxv_asinpif)
SVE_VECTOR_WRAPPER (atanf_sve, _ZGVsMxv_atanf)
SVE_VECTOR_WRAPPER (atanhf_sve, _ZGVsMxv_atanhf)
+SVE_VECTOR_WRAPPER (atanpif_sve, _ZGVsMxv_atanpif)
SVE_VECTOR_WRAPPER_ff (atan2f_sve, _ZGVsMxvv_atan2f)
+SVE_VECTOR_WRAPPER_ff (atan2pif_sve, _ZGVsMxvv_atan2pif)
SVE_VECTOR_WRAPPER (cbrtf_sve, _ZGVsMxv_cbrtf)
SVE_VECTOR_WRAPPER (cosf_sve, _ZGVsMxv_cosf)
SVE_VECTOR_WRAPPER (coshf_sve, _ZGVsMxv_coshf)
diff --git a/sysdeps/aarch64/machine-gmon.h b/sysdeps/aarch64/machine-gmon.h
index eba7c24..05323c9 100644
--- a/sysdeps/aarch64/machine-gmon.h
+++ b/sysdeps/aarch64/machine-gmon.h
@@ -27,9 +27,8 @@ static void mcount_internal (u_long frompc, u_long selfpc);
#define _MCOUNT_DECL(frompc, selfpc) \
static inline void mcount_internal (u_long frompc, u_long selfpc)
-/* Note: strip_pac is needed for frompc because of gcc PR target/94791. */
#define MCOUNT \
void __mcount (void *frompc) \
{ \
- mcount_internal ((u_long) strip_pac (frompc), (u_long) RETURN_ADDRESS (0)); \
+ mcount_internal ((u_long) frompc, (u_long) RETURN_ADDRESS (0)); \
}
diff --git a/sysdeps/aarch64/multiarch/ifunc-impl-list.c b/sysdeps/aarch64/multiarch/ifunc-impl-list.c
index 8dc314b..0e26171 100644
--- a/sysdeps/aarch64/multiarch/ifunc-impl-list.c
+++ b/sysdeps/aarch64/multiarch/ifunc-impl-list.c
@@ -36,18 +36,14 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array,
/* Support sysdeps/aarch64/multiarch/memcpy.c, memmove.c and memset.c. */
IFUNC_IMPL (i, name, memcpy,
IFUNC_IMPL_ADD (array, i, memcpy, 1, __memcpy_oryon1)
-#if HAVE_AARCH64_SVE_ASM
- IFUNC_IMPL_ADD (array, i, memcpy, sve && !bti, __memcpy_a64fx)
+ IFUNC_IMPL_ADD (array, i, memcpy, sve, __memcpy_a64fx)
IFUNC_IMPL_ADD (array, i, memcpy, sve, __memcpy_sve)
-#endif
IFUNC_IMPL_ADD (array, i, memcpy, mops, __memcpy_mops)
IFUNC_IMPL_ADD (array, i, memcpy, 1, __memcpy_generic))
IFUNC_IMPL (i, name, memmove,
IFUNC_IMPL_ADD (array, i, memmove, 1, __memmove_oryon1)
-#if HAVE_AARCH64_SVE_ASM
- IFUNC_IMPL_ADD (array, i, memmove, sve && !bti, __memmove_a64fx)
+ IFUNC_IMPL_ADD (array, i, memmove, sve, __memmove_a64fx)
IFUNC_IMPL_ADD (array, i, memmove, sve, __memmove_sve)
-#endif
IFUNC_IMPL_ADD (array, i, memmove, mops, __memmove_mops)
IFUNC_IMPL_ADD (array, i, memmove, 1, __memmove_generic))
IFUNC_IMPL (i, name, memset,
@@ -55,10 +51,8 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array,
IFUNC_IMPL_ADD (array, i, memset, (zva_size == 64), __memset_oryon1)
IFUNC_IMPL_ADD (array, i, memset, 1, __memset_emag)
IFUNC_IMPL_ADD (array, i, memset, 1, __memset_kunpeng)
-#if HAVE_AARCH64_SVE_ASM
- IFUNC_IMPL_ADD (array, i, memset, sve && !bti && zva_size == 256, __memset_a64fx)
+ IFUNC_IMPL_ADD (array, i, memset, sve && zva_size == 256, __memset_a64fx)
IFUNC_IMPL_ADD (array, i, memset, sve && zva_size == 64, __memset_sve_zva64)
-#endif
IFUNC_IMPL_ADD (array, i, memset, mops, __memset_mops)
IFUNC_IMPL_ADD (array, i, memset, 1, __memset_generic))
IFUNC_IMPL (i, name, memchr,
diff --git a/sysdeps/aarch64/multiarch/init-arch.h b/sysdeps/aarch64/multiarch/init-arch.h
index 63c24e7..75b3e08 100644
--- a/sysdeps/aarch64/multiarch/init-arch.h
+++ b/sysdeps/aarch64/multiarch/init-arch.h
@@ -31,7 +31,7 @@
unsigned __attribute__((unused)) zva_size = \
GLRO(dl_aarch64_cpu_features).zva_size; \
bool __attribute__((unused)) bti = \
- HAVE_AARCH64_BTI && GLRO(dl_aarch64_cpu_features).bti; \
+ GLRO(dl_aarch64_cpu_features).bti; \
bool __attribute__((unused)) mte = \
MTE_ENABLED (); \
bool __attribute__((unused)) sve = \
diff --git a/sysdeps/aarch64/multiarch/memcpy.c b/sysdeps/aarch64/multiarch/memcpy.c
index 0e33d19..894dabe 100644
--- a/sysdeps/aarch64/multiarch/memcpy.c
+++ b/sysdeps/aarch64/multiarch/memcpy.c
@@ -43,7 +43,7 @@ select_memcpy_ifunc (void)
if (mops)
return __memcpy_mops;
- if (sve && HAVE_AARCH64_SVE_ASM)
+ if (sve)
{
if (IS_A64FX (midr))
return __memcpy_a64fx;
diff --git a/sysdeps/aarch64/multiarch/memcpy_a64fx.S b/sysdeps/aarch64/multiarch/memcpy_a64fx.S
index ed18682..acad6e8 100644
--- a/sysdeps/aarch64/multiarch/memcpy_a64fx.S
+++ b/sysdeps/aarch64/multiarch/memcpy_a64fx.S
@@ -19,9 +19,6 @@
#include <sysdep.h>
-#undef BTI_C
-#define BTI_C
-
/* Assumptions:
*
* ARMv8.2-a, AArch64, unaligned accesses, sve
@@ -38,8 +35,6 @@
#define vlen x7
#define vlen8 x8
-#if HAVE_AARCH64_SVE_ASM
-
.arch armv8.2-a+sve
.macro ld1b_unroll8
@@ -91,9 +86,6 @@
st1b z7.b, p0, [dst, 7, mul vl]
.endm
-#undef BTI_C
-#define BTI_C
-
ENTRY (__memcpy_a64fx)
cntb vlen
@@ -296,4 +288,3 @@ L(full_overlap):
b L(last_bytes)
END (__memmove_a64fx)
-#endif /* HAVE_AARCH64_SVE_ASM */
diff --git a/sysdeps/aarch64/multiarch/memcpy_oryon1.S b/sysdeps/aarch64/multiarch/memcpy_oryon1.S
index e86d8b0..cc267db 100644
--- a/sysdeps/aarch64/multiarch/memcpy_oryon1.S
+++ b/sysdeps/aarch64/multiarch/memcpy_oryon1.S
@@ -152,6 +152,46 @@ L(copy96):
.p2align 6
L(copy_long):
+ /* On oryon1 cores, large memcpy's are helped by using ldnp/stnp.
+ This loop is identical to the one below it but using ldnp/stnp
+ instructions. For loops that are less than 32768 bytes,
+ the ldnp/stnp instructions will not help and will cause a slow
+ down so only use the ldnp/stnp loop for the largest sizes. */
+
+ cmp count, #32768
+ b.lo L(copy_long_without_nontemp)
+ and tmp1, dstin, 15
+ bic dst, dstin, 15
+ ldnp D_l, D_h, [src]
+ sub src, src, tmp1
+ add count, count, tmp1 /* Count is now 16 too large. */
+ ldnp A_l, A_h, [src, 16]
+ stnp D_l, D_h, [dstin]
+ ldnp B_l, B_h, [src, 32]
+ ldnp C_l, C_h, [src, 48]
+ ldnp D_l, D_h, [src, 64]
+ add src, src, #64
+ subs count, count, 128 + 16 /* Test and readjust count. */
+
+L(nontemp_loop64):
+ tbz src, #6, 1f
+1:
+ stnp A_l, A_h, [dst, 16]
+ ldnp A_l, A_h, [src, 16]
+ stnp B_l, B_h, [dst, 32]
+ ldnp B_l, B_h, [src, 32]
+ stnp C_l, C_h, [dst, 48]
+ ldnp C_l, C_h, [src, 48]
+ stnp D_l, D_h, [dst, 64]
+ ldnp D_l, D_h, [src, 64]
+ add src, src, #64
+ add dst, dst, #64
+ subs count, count, 64
+ b.hi L(nontemp_loop64)
+ b L(last64)
+
+L(copy_long_without_nontemp):
+
and tmp1, dstin, 15
bic dst, dstin, 15
ldp D_l, D_h, [src]
diff --git a/sysdeps/aarch64/multiarch/memcpy_sve.S b/sysdeps/aarch64/multiarch/memcpy_sve.S
index 26d4890..0ba6358 100644
--- a/sysdeps/aarch64/multiarch/memcpy_sve.S
+++ b/sysdeps/aarch64/multiarch/memcpy_sve.S
@@ -56,8 +56,6 @@
The loop tail is handled by always copying 64 bytes from the end.
*/
-#if HAVE_AARCH64_SVE_ASM
-
.arch armv8.2-a+sve
ENTRY (__memcpy_sve)
@@ -199,4 +197,3 @@ L(return):
ret
END (__memmove_sve)
-#endif
diff --git a/sysdeps/aarch64/multiarch/memmove.c b/sysdeps/aarch64/multiarch/memmove.c
index 47b7268..6b0d0ce 100644
--- a/sysdeps/aarch64/multiarch/memmove.c
+++ b/sysdeps/aarch64/multiarch/memmove.c
@@ -41,7 +41,7 @@ select_memmove_ifunc (void)
if (mops)
return __memmove_mops;
- if (sve && HAVE_AARCH64_SVE_ASM)
+ if (sve)
{
if (IS_A64FX (midr))
return __memmove_a64fx;
diff --git a/sysdeps/aarch64/multiarch/memset.c b/sysdeps/aarch64/multiarch/memset.c
index 872f39f..2b0a58b 100644
--- a/sysdeps/aarch64/multiarch/memset.c
+++ b/sysdeps/aarch64/multiarch/memset.c
@@ -46,7 +46,7 @@ select_memset_ifunc (void)
if (mops)
return __memset_mops;
- if (sve && HAVE_AARCH64_SVE_ASM)
+ if (sve)
{
if (IS_A64FX (midr) && zva_size == 256)
return __memset_a64fx;
diff --git a/sysdeps/aarch64/multiarch/memset_a64fx.S b/sysdeps/aarch64/multiarch/memset_a64fx.S
index ea60b78..e921240 100644
--- a/sysdeps/aarch64/multiarch/memset_a64fx.S
+++ b/sysdeps/aarch64/multiarch/memset_a64fx.S
@@ -31,8 +31,6 @@
#define PF_DIST_L1 (CACHE_LINE_SIZE * 16) // Prefetch distance L1
#define vector_length x9
-#if HAVE_AARCH64_SVE_ASM
-
.arch armv8.2-a+sve
#define dstin x0
@@ -50,10 +48,6 @@
.endif
.endm
-
-#undef BTI_C
-#define BTI_C
-
ENTRY (__memset_a64fx)
cntb vector_length
@@ -170,5 +164,3 @@ L(L2):
b L(last)
END (__memset_a64fx)
-
-#endif /* HAVE_AARCH64_SVE_ASM */
diff --git a/sysdeps/aarch64/multiarch/memset_oryon1.S b/sysdeps/aarch64/multiarch/memset_oryon1.S
index 0f9b718..88f4ef4 100644
--- a/sysdeps/aarch64/multiarch/memset_oryon1.S
+++ b/sysdeps/aarch64/multiarch/memset_oryon1.S
@@ -90,6 +90,8 @@ L(set_long):
cmp count, 256
ccmp valw, 0, 0, cs
b.eq L(try_zva)
+ cmp count, #32768
+ b.hi L(set_long_with_nontemp)
/* Small-size or non-zero memset does not use DC ZVA. */
sub count, dstend, dst
@@ -112,6 +114,30 @@ L(set_long):
stp val, val, [dstend, -16]
ret
+L(set_long_with_nontemp):
+ /* Small-size or non-zero memset does not use DC ZVA. */
+ sub count, dstend, dst
+
+ /* Adjust count and bias for loop. By subtracting extra 1 from count,
+ it is easy to use tbz instruction to check whether loop tailing
+ count is less than 33 bytes, so as to bypass 2 unnecessary stps. */
+ sub count, count, 64+16+1
+
+1: stnp val, val, [dst, 16]
+ stnp val, val, [dst, 32]
+ stnp val, val, [dst, 48]
+ stnp val, val, [dst, 64]
+ add dst, dst, #64
+ subs count, count, 64
+ b.hs 1b
+
+ tbz count, 5, 1f /* Remaining count is less than 33 bytes? */
+ stnp val, val, [dst, 16]
+ stnp val, val, [dst, 32]
+1: stnp val, val, [dstend, -32]
+ stnp val, val, [dstend, -16]
+ ret
+
L(try_zva):
/* Write the first and last 64 byte aligned block using stp rather
than using DC ZVA as it is faster. */
diff --git a/sysdeps/aarch64/multiarch/memset_sve_zva64.S b/sysdeps/aarch64/multiarch/memset_sve_zva64.S
index 7fb40fd..c385e1a 100644
--- a/sysdeps/aarch64/multiarch/memset_sve_zva64.S
+++ b/sysdeps/aarch64/multiarch/memset_sve_zva64.S
@@ -25,8 +25,6 @@
* ZVA size is 64.
*/
-#if HAVE_AARCH64_SVE_ASM
-
.arch armv8.2-a+sve
#define dstin x0
@@ -120,4 +118,3 @@ L(no_zva_loop):
ret
END (__memset_sve_zva64)
-#endif
diff --git a/sysdeps/aarch64/preconfigure b/sysdeps/aarch64/preconfigure
index 19657b6..e1b772c 100644
--- a/sysdeps/aarch64/preconfigure
+++ b/sysdeps/aarch64/preconfigure
@@ -3,5 +3,6 @@ aarch64*)
base_machine=aarch64
machine=aarch64
mtls_descriptor=desc
+ mtls_traditional=trad
;;
esac
diff --git a/sysdeps/aarch64/setjmp.S b/sysdeps/aarch64/setjmp.S
index d82d62c..53c5e7d 100644
--- a/sysdeps/aarch64/setjmp.S
+++ b/sysdeps/aarch64/setjmp.S
@@ -35,6 +35,20 @@ libc_hidden_def (_setjmp)
ENTRY_ALIGN (__sigsetjmp, 2)
1:
+
+#if IS_IN(libc)
+ /* Disable ZA state of SME in libc.a and libc.so, but not in ld.so.
+ The calling convention of __libc_arm_za_disable allows to do
+ this thus allowing to avoid saving to and reading from stack.
+ As a result we also don't need to sign the return address and
+ check it after returning because it is not stored to stack. */
+ mov x13, x30
+ cfi_register (x30, x13)
+ bl __libc_arm_za_disable
+ mov x30, x13
+ cfi_register (x13, x30)
+#endif
+
stp x19, x20, [x0, #JB_X19<<3]
stp x21, x22, [x0, #JB_X21<<3]
stp x23, x24, [x0, #JB_X23<<3]
@@ -73,7 +87,7 @@ L(gcs_done):
#if IS_IN (rtld)
/* In ld.so we never save the signal mask */
mov w0, #0
- RET
+ ret
#else
b C_SYMBOL_NAME(__sigjmp_save)
#endif
diff --git a/sysdeps/aarch64/start.S b/sysdeps/aarch64/start.S
index 544e397..694c338 100644
--- a/sysdeps/aarch64/start.S
+++ b/sysdeps/aarch64/start.S
@@ -108,7 +108,7 @@ ENTRY(_start)
because crt1.o and rcrt1.o share code and the later must avoid the
use of GOT relocations before __libc_start_main is called. */
__wrap_main:
- BTI_C
+ bti c
b main
#endif
END(_start)
diff --git a/sysdeps/aarch64/sys/ifunc.h b/sysdeps/aarch64/sys/ifunc.h
index 7781b37..a3322a9 100644
--- a/sysdeps/aarch64/sys/ifunc.h
+++ b/sysdeps/aarch64/sys/ifunc.h
@@ -19,24 +19,77 @@
#ifndef _SYS_IFUNC_H
#define _SYS_IFUNC_H
+#include <sys/cdefs.h>
+
/* A second argument is passed to the ifunc resolver. */
#define _IFUNC_ARG_HWCAP (1ULL << 62)
-/* The prototype of a gnu indirect function resolver on AArch64 is
+/* Maximum number of HWCAP elements that are currently supported. */
+#define _IFUNC_HWCAP_MAX 4
+
+/* The prototype of a GNU indirect function resolver on AArch64 is
+
+ ElfW(Addr) ifunc_resolver (uint64_t, const uint64_t *);
+
+ The following prototype is also compatible:
ElfW(Addr) ifunc_resolver (uint64_t, const __ifunc_arg_t *);
- the first argument should have the _IFUNC_ARG_HWCAP bit set and
- the remaining bits should match the AT_HWCAP settings. */
+ The first argument might have the _IFUNC_ARG_HWCAP bit set and
+ the remaining bits should match the AT_HWCAP settings.
+
+ If the _IFUNC_ARG_HWCAP bit is set in the first argument, then
+ the second argument is passed to the resolver function. In
+ this case, the second argument is a const pointer to a buffer
+ that allows to access all available HWCAP elements.
+
+ This buffer has its size in bytes at offset 0. The HWCAP elements
+ are available at offsets 8, 16, 24, 32... respectively for AT_HWCAP,
+ AT_HWCAP2, AT_HWCAP3, AT_HWCAP4... (these offsets are multiples of
+ sizeof (unsigned long)).
+
+ Indirect function resolvers must check availability of HWCAP
+ elements at runtime before accessing them using the size of the
+ buffer. */
-/* Second argument to an ifunc resolver. */
struct __ifunc_arg_t
{
- unsigned long _size; /* Size of the struct, so it can grow. */
+ unsigned long _size; /* Size of the struct, so it can grow. */
unsigned long _hwcap;
- unsigned long _hwcap2;
+ unsigned long _hwcap2; /* End of 1st published struct. */
+ unsigned long _hwcap3;
+ unsigned long _hwcap4; /* End of 2nd published struct. */
};
typedef struct __ifunc_arg_t __ifunc_arg_t;
+/* Constants for IDs of HWCAP elements to be used with the
+ __ifunc_hwcap function below. */
+enum
+{
+ _IFUNC_ARG_AT_HWCAP = 1,
+ _IFUNC_ARG_AT_HWCAP2 = 2,
+ _IFUNC_ARG_AT_HWCAP3 = 3,
+ _IFUNC_ARG_AT_HWCAP4 = 4,
+};
+
+/* A helper function to obtain HWCAP element by its ID from the
+ parameters ARG0 and ARG1 passed to the ifunc resolver. Note that
+ ID 1 corresponds to AT_HWCAP, ID 2 corresponds to AT_HWCAP2, etc.
+ If there is no element available for the requested ID then 0 is
+ returned. If ID doesn't much any supported AT_HWCAP{,2,...} value,
+ then 0 is also returned. */
+static __inline unsigned long __attribute__ ((unused, always_inline))
+__ifunc_hwcap (unsigned long __id,
+ unsigned long __arg0, const unsigned long *__arg1)
+{
+ if (__glibc_likely (__arg0 & _IFUNC_ARG_HWCAP))
+ {
+ const unsigned long size = __arg1[0];
+ const unsigned long offset = __id * sizeof (unsigned long);
+ return offset < size && __id > 0 ? __arg1[__id] : 0;
+ }
+ return __id == 1 ? __arg0 : 0;
+}
+
#endif
diff --git a/sysdeps/aarch64/sysdep.h b/sysdeps/aarch64/sysdep.h
index 9424115..f5e28cb 100644
--- a/sysdeps/aarch64/sysdep.h
+++ b/sysdeps/aarch64/sysdep.h
@@ -21,43 +21,15 @@
#include <sysdeps/generic/sysdep.h>
-#ifndef __ASSEMBLER__
-/* Strip pointer authentication code from pointer p. */
-static inline void *
-strip_pac (void *p)
-{
- register void *ra asm ("x30") = (p);
- asm ("hint 7 // xpaclri" : "+r"(ra));
- return ra;
-}
-
-/* This is needed when glibc is built with -mbranch-protection=pac-ret
- with a gcc that is affected by PR target/94891. */
-# if HAVE_AARCH64_PAC_RET
-# undef RETURN_ADDRESS
-# define RETURN_ADDRESS(n) strip_pac (__builtin_return_address (n))
-# endif
-#endif
-
#ifdef __ASSEMBLER__
+/* CFI directive for return address. */
+#define cfi_negate_ra_state .cfi_negate_ra_state
+
/* Syntactic details of assembler. */
#define ASM_SIZE_DIRECTIVE(name) .size name,.-name
-/* Branch Target Identitication support. */
-#if HAVE_AARCH64_BTI
-# define BTI_C hint 34
-# define BTI_J hint 36
-#else
-# define BTI_C nop
-# define BTI_J nop
-#endif
-
-/* Return address signing support (pac-ret). */
-#define PACIASP hint 25
-#define AUTIASP hint 29
-
/* Guarded Control Stack support. */
#define CHKFEAT_X16 hint 40
#define MRS_GCSPR(x) mrs x, s3_3_c2_c5_1
@@ -87,11 +59,7 @@ strip_pac (void *p)
/* Add GNU property note with the supported features to all asm code
where sysdep.h is included. */
-#if HAVE_AARCH64_BTI && HAVE_AARCH64_PAC_RET
GNU_PROPERTY (FEATURE_1_AND, FEATURE_1_BTI|FEATURE_1_PAC|FEATURE_1_GCS)
-#elif HAVE_AARCH64_BTI
-GNU_PROPERTY (FEATURE_1_AND, FEATURE_1_BTI|FEATURE_1_GCS)
-#endif
/* Define an entry point visible from C. */
#define ENTRY(name) \
@@ -100,7 +68,7 @@ GNU_PROPERTY (FEATURE_1_AND, FEATURE_1_BTI|FEATURE_1_GCS)
.p2align 6; \
C_LABEL(name) \
cfi_startproc; \
- BTI_C; \
+ bti c; \
CALL_MCOUNT
/* Define an entry point visible from C. */
@@ -110,7 +78,7 @@ GNU_PROPERTY (FEATURE_1_AND, FEATURE_1_BTI|FEATURE_1_GCS)
.p2align align; \
C_LABEL(name) \
cfi_startproc; \
- BTI_C; \
+ bti c; \
CALL_MCOUNT
/* Define an entry point visible from C with a specified alignment and
@@ -127,7 +95,7 @@ GNU_PROPERTY (FEATURE_1_AND, FEATURE_1_BTI|FEATURE_1_GCS)
.endr; \
C_LABEL(name) \
cfi_startproc; \
- BTI_C; \
+ bti c; \
CALL_MCOUNT
#undef END
diff --git a/sysdeps/aarch64/tst-ifunc-arg-1.c b/sysdeps/aarch64/tst-ifunc-arg-1.c
index b90c836..292c5ae 100644
--- a/sysdeps/aarch64/tst-ifunc-arg-1.c
+++ b/sysdeps/aarch64/tst-ifunc-arg-1.c
@@ -57,6 +57,21 @@ do_test (void)
TEST_COMPARE (saved_arg2._size, sizeof (__ifunc_arg_t));
TEST_COMPARE (saved_arg2._hwcap, getauxval (AT_HWCAP));
TEST_COMPARE (saved_arg2._hwcap2, getauxval (AT_HWCAP2));
+ TEST_COMPARE (saved_arg2._hwcap3, getauxval (AT_HWCAP3));
+ TEST_COMPARE (saved_arg2._hwcap4, getauxval (AT_HWCAP4));
+
+ const unsigned long *saved_arg2_ptr = (const unsigned long *)&saved_arg2;
+
+ TEST_COMPARE (__ifunc_hwcap (1, saved_arg1, saved_arg2_ptr),
+ getauxval (AT_HWCAP));
+ TEST_COMPARE (__ifunc_hwcap (2, saved_arg1, saved_arg2_ptr),
+ getauxval (AT_HWCAP2));
+ TEST_COMPARE (__ifunc_hwcap (3, saved_arg1, saved_arg2_ptr),
+ getauxval (AT_HWCAP3));
+ TEST_COMPARE (__ifunc_hwcap (4, saved_arg1, saved_arg2_ptr),
+ getauxval (AT_HWCAP4));
+
+
return 0;
}
diff --git a/sysdeps/aarch64/tst-ifunc-arg-2.c b/sysdeps/aarch64/tst-ifunc-arg-2.c
index dac144d..c05129a 100644
--- a/sysdeps/aarch64/tst-ifunc-arg-2.c
+++ b/sysdeps/aarch64/tst-ifunc-arg-2.c
@@ -60,6 +60,20 @@ do_test (void)
TEST_COMPARE (saved_arg2._size, sizeof (__ifunc_arg_t));
TEST_COMPARE (saved_arg2._hwcap, getauxval (AT_HWCAP));
TEST_COMPARE (saved_arg2._hwcap2, getauxval (AT_HWCAP2));
+ TEST_COMPARE (saved_arg2._hwcap3, getauxval (AT_HWCAP3));
+ TEST_COMPARE (saved_arg2._hwcap4, getauxval (AT_HWCAP4));
+
+ const unsigned long *saved_arg2_ptr = (const unsigned long *)&saved_arg2;
+
+ TEST_COMPARE (__ifunc_hwcap (1, saved_arg1, saved_arg2_ptr),
+ getauxval (AT_HWCAP));
+ TEST_COMPARE (__ifunc_hwcap (2, saved_arg1, saved_arg2_ptr),
+ getauxval (AT_HWCAP2));
+ TEST_COMPARE (__ifunc_hwcap (3, saved_arg1, saved_arg2_ptr),
+ getauxval (AT_HWCAP3));
+ TEST_COMPARE (__ifunc_hwcap (4, saved_arg1, saved_arg2_ptr),
+ getauxval (AT_HWCAP4));
+
return 0;
}
diff --git a/sysdeps/aarch64/tst-ifunc-arg-3.c b/sysdeps/aarch64/tst-ifunc-arg-3.c
new file mode 100644
index 0000000..49d8866
--- /dev/null
+++ b/sysdeps/aarch64/tst-ifunc-arg-3.c
@@ -0,0 +1,97 @@
+/* Tests for __ifunc_hwcap helper function.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <stdint.h>
+#include <sys/ifunc.h>
+#include <support/check.h>
+
+#define CHECK_VALUES_WITH_ARG(p1, p2, p3, p4) \
+ ({ \
+ TEST_COMPARE (__ifunc_hwcap (0, _IFUNC_ARG_HWCAP, arg), 0); \
+ TEST_COMPARE (__ifunc_hwcap (_IFUNC_ARG_AT_HWCAP, _IFUNC_ARG_HWCAP, arg), p1); \
+ TEST_COMPARE (__ifunc_hwcap (_IFUNC_ARG_AT_HWCAP2, _IFUNC_ARG_HWCAP, arg), p2); \
+ TEST_COMPARE (__ifunc_hwcap (_IFUNC_ARG_AT_HWCAP3, _IFUNC_ARG_HWCAP, arg), p3); \
+ TEST_COMPARE (__ifunc_hwcap (_IFUNC_ARG_AT_HWCAP4, _IFUNC_ARG_HWCAP, arg), p4); \
+ TEST_COMPARE (__ifunc_hwcap (5, _IFUNC_ARG_HWCAP, arg), 0); \
+ })
+
+#define CHECK_VALUES_WITHOUT_ARG(p1) \
+ ({ \
+ TEST_COMPARE (__ifunc_hwcap (0, p1, arg), 0); \
+ TEST_COMPARE (__ifunc_hwcap (_IFUNC_ARG_AT_HWCAP, p1, arg), p1); \
+ TEST_COMPARE (__ifunc_hwcap (_IFUNC_ARG_AT_HWCAP2, p1, arg), 0); \
+ TEST_COMPARE (__ifunc_hwcap (_IFUNC_ARG_AT_HWCAP3, p1, arg), 0); \
+ TEST_COMPARE (__ifunc_hwcap (_IFUNC_ARG_AT_HWCAP4, p1, arg), 0); \
+ TEST_COMPARE (__ifunc_hwcap (5, p1, arg), 0); \
+ })
+
+static void
+test_one (const unsigned long *arg)
+{
+ uint64_t size = arg[0] / sizeof (uint64_t);
+
+ switch (size)
+ {
+ case 1:
+ CHECK_VALUES_WITH_ARG (0, 0, 0, 0);
+ CHECK_VALUES_WITHOUT_ARG (0);
+ break;
+ case 2:
+ CHECK_VALUES_WITH_ARG (1, 0, 0, 0);
+ CHECK_VALUES_WITHOUT_ARG (1);
+ break;
+ case 3:
+ CHECK_VALUES_WITH_ARG (1, 2, 0, 0);
+ CHECK_VALUES_WITHOUT_ARG (1);
+ break;
+ case 4:
+ CHECK_VALUES_WITH_ARG (1, 2, 3, 0);
+ CHECK_VALUES_WITHOUT_ARG (1);
+ break;
+ case 5:
+ CHECK_VALUES_WITH_ARG (1, 2, 3, 4);
+ CHECK_VALUES_WITHOUT_ARG (1);
+ break;
+ default:
+ TEST_VERIFY (0); // unexpected size
+ break;
+ }
+}
+
+static int
+do_test (void)
+{
+ uint64_t arg[_IFUNC_HWCAP_MAX + 1] = {
+ 0, /* Placeholder for size */
+ _IFUNC_ARG_AT_HWCAP, /* AT_HWCAP */
+ _IFUNC_ARG_AT_HWCAP2, /* AT_HWCAP2 */
+ _IFUNC_ARG_AT_HWCAP3, /* AT_HWCAP3 */
+ _IFUNC_ARG_AT_HWCAP4, /* AT_HWCAP4 */
+ };
+
+ for (int k = 0; k <= _IFUNC_HWCAP_MAX; k++)
+ {
+ /* Update size */
+ arg[0] = (k + 1) * sizeof (uint64_t);
+ test_one (arg);
+ }
+
+ return 0;
+}
+
+#include <support/test-driver.c>
diff --git a/sysdeps/aarch64/tst-ifunc-arg-4.c b/sysdeps/aarch64/tst-ifunc-arg-4.c
new file mode 100644
index 0000000..c95ef9e
--- /dev/null
+++ b/sysdeps/aarch64/tst-ifunc-arg-4.c
@@ -0,0 +1,67 @@
+/* Test for ifunc resolver that uses __ifunc_hwcap helper function.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <stdio.h>
+#include <stdint.h>
+#include <sys/auxv.h>
+#include <sys/ifunc.h>
+#include <support/check.h>
+
+static int
+one (void)
+{
+ return 1;
+}
+
+static int
+two (void)
+{
+ return 2;
+}
+
+/* Resolver function. */
+static void *
+resolver (uint64_t arg0, const uint64_t arg1[])
+{
+ uint64_t hwcap2 = __ifunc_hwcap (_IFUNC_ARG_AT_HWCAP2, arg0, arg1);
+ if (hwcap2 & HWCAP2_POE)
+ return (void *)one;
+ else
+ return (void *)two;
+}
+
+/* An extern visible ifunc symbol. */
+int fun (void) __attribute__((ifunc ("resolver")));
+
+static int
+do_test (void)
+{
+ if (getauxval (AT_HWCAP2) & HWCAP2_POE)
+ {
+ printf ("using 1st implementation\n");
+ TEST_VERIFY (fun () == 1);
+ }
+ else
+ {
+ printf ("using 2nd implementation\n");
+ TEST_VERIFY (fun () == 2);
+ }
+ return 0;
+}
+
+#include <support/test-driver.c>
diff --git a/sysdeps/aarch64/tst-sme-helper.h b/sysdeps/aarch64/tst-sme-helper.h
new file mode 100644
index 0000000..f049416
--- /dev/null
+++ b/sysdeps/aarch64/tst-sme-helper.h
@@ -0,0 +1,97 @@
+/* Utility functions for SME tests.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+/* Streaming SVE vector register size. */
+static unsigned long svl;
+
+struct blk {
+ void *za_save_buffer;
+ uint16_t num_za_save_slices;
+ char __reserved[6];
+};
+
+/* Read SVCR to get SM (bit0) and ZA (bit1) state. */
+static unsigned long
+get_svcr (void)
+{
+ register unsigned long x0 asm ("x0");
+ asm volatile (
+ ".inst 0xd53b4240 /* mrs x0, svcr */\n"
+ : "=r" (x0));
+ return x0;
+}
+
+/* Returns tpidr2. */
+static void *
+get_tpidr2 (void)
+{
+ register unsigned long x0 asm ("x0");
+ asm volatile (
+ ".inst 0xd53bd0a0 /* mrs x0, tpidr2_el0 */\n"
+ : "=r"(x0) :: "memory");
+ return (void *) x0;
+}
+
+/* Obtains current streaming SVE vector register size. */
+static unsigned long
+get_svl (void)
+{
+ register unsigned long x0 asm ("x0");
+ asm volatile (
+ ".inst 0x04bf5820 /* rdsvl x0, 1 */\n"
+ : "=r" (x0));
+ return x0;
+}
+
+/* PSTATE.ZA = 1, set ZA state to active. */
+static void
+start_za (void)
+{
+ asm volatile (
+ ".inst 0xd503457f /* smstart za */");
+}
+
+/* Load data into ZA byte by byte from p. */
+static void __attribute__ ((noinline))
+load_za (const void *p)
+{
+ register unsigned long x15 asm ("x15") = 0;
+ register unsigned long x16 asm ("x16") = (unsigned long)p;
+ register unsigned long x17 asm ("x17") = svl;
+
+ asm volatile (
+ ".inst 0xd503437f /* smstart sm */\n"
+ ".L_ldr_loop:\n"
+ ".inst 0xe1006200 /* ldr za[w15, 0], [x16] */\n"
+ "add w15, w15, 1\n"
+ ".inst 0x04305030 /* addvl x16, x16, 1 */\n"
+ "cmp w15, w17\n"
+ "bne .L_ldr_loop\n"
+ ".inst 0xd503427f /* smstop sm */\n"
+ : "+r"(x15), "+r"(x16), "+r"(x17));
+}
+
+/* Set tpidr2 to BLK. */
+static void
+set_tpidr2 (struct blk *blk)
+{
+ register unsigned long x0 asm ("x0") = (unsigned long)blk;
+ asm volatile (
+ ".inst 0xd51bd0a0 /* msr tpidr2_el0, x0 */\n"
+ :: "r"(x0) : "memory");
+}
diff --git a/sysdeps/aarch64/tst-sme-jmp.c b/sysdeps/aarch64/tst-sme-jmp.c
index 62c419f..103897a 100644
--- a/sysdeps/aarch64/tst-sme-jmp.c
+++ b/sysdeps/aarch64/tst-sme-jmp.c
@@ -27,87 +27,12 @@
#include <support/support.h>
#include <support/test-driver.h>
-struct blk {
- void *za_save_buffer;
- uint16_t num_za_save_slices;
- char __reserved[6];
-};
+#include "tst-sme-helper.h"
-static unsigned long svl;
static uint8_t *za_orig;
static uint8_t *za_dump;
static uint8_t *za_save;
-static unsigned long
-get_svl (void)
-{
- register unsigned long x0 asm ("x0");
- asm volatile (
- ".inst 0x04bf5820 /* rdsvl x0, 1 */\n"
- : "=r" (x0));
- return x0;
-}
-
-/* PSTATE.ZA = 1, set ZA state to active. */
-static void
-start_za (void)
-{
- asm volatile (
- ".inst 0xd503457f /* smstart za */");
-}
-
-/* Read SVCR to get SM (bit0) and ZA (bit1) state. */
-static unsigned long
-get_svcr (void)
-{
- register unsigned long x0 asm ("x0");
- asm volatile (
- ".inst 0xd53b4240 /* mrs x0, svcr */\n"
- : "=r" (x0));
- return x0;
-}
-
-/* Load data into ZA byte by byte from p. */
-static void __attribute__ ((noinline))
-load_za (const void *p)
-{
- register unsigned long x15 asm ("x15") = 0;
- register unsigned long x16 asm ("x16") = (unsigned long)p;
- register unsigned long x17 asm ("x17") = svl;
-
- asm volatile (
- ".inst 0xd503437f /* smstart sm */\n"
- ".L_ldr_loop:\n"
- ".inst 0xe1006200 /* ldr za[w15, 0], [x16] */\n"
- "add w15, w15, 1\n"
- ".inst 0x04305030 /* addvl x16, x16, 1 */\n"
- "cmp w15, w17\n"
- "bne .L_ldr_loop\n"
- ".inst 0xd503427f /* smstop sm */\n"
- : "+r"(x15), "+r"(x16), "+r"(x17));
-}
-
-/* Set tpidr2 to BLK. */
-static void
-set_tpidr2 (struct blk *blk)
-{
- register unsigned long x0 asm ("x0") = (unsigned long)blk;
- asm volatile (
- ".inst 0xd51bd0a0 /* msr tpidr2_el0, x0 */\n"
- :: "r"(x0) : "memory");
-}
-
-/* Returns tpidr2. */
-static void *
-get_tpidr2 (void)
-{
- register unsigned long x0 asm ("x0");
- asm volatile (
- ".inst 0xd53bd0a0 /* mrs x0, tpidr2_el0 */\n"
- : "=r"(x0) :: "memory");
- return (void *) x0;
-}
-
static void
print_data(const char *msg, void *p)
{
@@ -168,8 +93,8 @@ longjmp_test (void)
{
p = get_tpidr2 ();
printf ("before longjmp: tp2 = %p\n", p);
- if (p != &blk)
- FAIL_EXIT1 ("tpidr2 is clobbered");
+ if (p != NULL)
+ FAIL_EXIT1 ("tpidr2 has not been reset to null");
do_longjmp (env);
FAIL_EXIT1 ("longjmp returned");
}
diff --git a/sysdeps/aarch64/tst-sme-za-state.c b/sysdeps/aarch64/tst-sme-za-state.c
new file mode 100644
index 0000000..63f6eeb
--- /dev/null
+++ b/sysdeps/aarch64/tst-sme-za-state.c
@@ -0,0 +1,119 @@
+/* Test for SME ZA state being cleared on setjmp and longjmp.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <stdio.h>
+#include <setjmp.h>
+#include <stdlib.h>
+#include <string.h>
+#include <sys/auxv.h>
+
+#include <support/check.h>
+#include <support/support.h>
+#include <support/test-driver.h>
+
+#include "tst-sme-helper.h"
+
+static uint8_t *state;
+
+static void
+enable_sme_za_state (struct blk *ptr)
+{
+ set_tpidr2 (ptr);
+ start_za ();
+ load_za (state);
+}
+
+static void
+check_sme_za_state (const char msg[], bool clear)
+{
+ unsigned long svcr = get_svcr ();
+ void *tpidr2 = get_tpidr2 ();
+ printf ("[%s]\n", msg);
+ printf ("svcr = %016lx\n", svcr);
+ printf ("tpidr2 = %016lx\n", (unsigned long)tpidr2);
+ if (clear)
+ {
+ TEST_VERIFY (svcr == 0);
+ TEST_VERIFY (tpidr2 == NULL);
+ }
+ else
+ {
+ TEST_VERIFY (svcr != 0);
+ TEST_VERIFY (tpidr2 != NULL);
+ }
+}
+
+static void
+run (struct blk *ptr)
+{
+ jmp_buf buf;
+ int ret;
+
+ check_sme_za_state ("initial state", /* Clear. */ true);
+
+ /* Enabled ZA state so that effect of disabling be observable. */
+ enable_sme_za_state (ptr);
+ check_sme_za_state ("before setjmp", /* Clear. */ false);
+
+ if ((ret = setjmp (buf)) == 0)
+ {
+ check_sme_za_state ("after setjmp", /* Clear. */ true);
+
+ /* Enabled ZA state so that effect of disabling be observable. */
+ enable_sme_za_state (ptr);
+ check_sme_za_state ("before longjmp", /* Clear. */ false);
+
+ longjmp (buf, 42);
+
+ /* Unreachable. */
+ TEST_VERIFY (false);
+ __builtin_unreachable ();
+ }
+
+ TEST_COMPARE (ret, 42);
+ check_sme_za_state ("after longjmp", /* Clear. */ true);
+}
+
+static int
+do_test (void)
+{
+ unsigned long hwcap2 = getauxval (AT_HWCAP2);
+ if ((hwcap2 & HWCAP2_SME) == 0)
+ return EXIT_UNSUPPORTED;
+
+ /* Get current streaming SVE vector register size. */
+ svl = get_svl ();
+ printf ("svl: %lu\n", svl);
+ TEST_VERIFY_EXIT (!(svl < 16 || svl % 16 != 0 || svl >= (1 << 16)));
+
+ /* Initialise buffer for ZA state of SME. */
+ state = xmalloc (svl * svl);
+ memset (state, 1, svl * svl);
+ struct blk blk = {
+ .za_save_buffer = state,
+ .num_za_save_slices = svl,
+ .__reserved = {0},
+ };
+
+ run (&blk);
+
+ free (state);
+ return 0;
+}
+
+#include <support/test-driver.c>
diff --git a/sysdeps/generic/Makefile b/sysdeps/generic/Makefile
index 3ed75dd..1be63b7 100644
--- a/sysdeps/generic/Makefile
+++ b/sysdeps/generic/Makefile
@@ -21,6 +21,9 @@ CFLAGS-wordcopy.c += -Wno-uninitialized
endif
ifeq ($(subdir),elf)
+ifeq ($(enable-gsframe),yes)
+sysdep_routines += sframe-read sframe
+endif
ifeq (yes:yes,$(build-shared):$(unwind-find-fde))
# This is needed to support g++ v2 and v3.
sysdep_routines += framestate unwind-pe
diff --git a/sysdeps/generic/getrandom-internal.h b/sysdeps/generic/getrandom-internal.h
index 7c54194..4872598 100644
--- a/sysdeps/generic/getrandom-internal.h
+++ b/sysdeps/generic/getrandom-internal.h
@@ -19,7 +19,7 @@
#ifndef _GETRANDOM_INTERNAL_H
#define _GETRANDOM_INTERNAL_H
-static inline void __getrandom_early_init (_Bool)
+static inline void __getrandom_early_init (_Bool initial)
{
}
diff --git a/sysdeps/generic/ldsodefs.h b/sysdeps/generic/ldsodefs.h
index 5b12a41..74025f1 100644
--- a/sysdeps/generic/ldsodefs.h
+++ b/sysdeps/generic/ldsodefs.h
@@ -368,8 +368,6 @@ struct rtld_global
size_t n_elements;
void (*free) (void *);
} _ns_unique_sym_table;
- /* Keep track of changes to each namespace' list. */
- struct r_debug_extended _ns_debug;
} _dl_ns[DL_NNS];
/* One higher than index of last used namespace. */
EXTERN size_t _dl_nns;
@@ -717,10 +715,23 @@ extern const ElfW(Phdr) *_dl_phdr;
extern size_t _dl_phnum;
#endif
+/* Possible values for the glibc.rtld.execstack tunable. */
+enum stack_tunable_mode
+ {
+ /* Do not allow executable stacks, even if program requires it. */
+ stack_tunable_mode_disable = 0,
+ /* Follows either ABI requirement, or the PT_GNU_STACK value. */
+ stack_tunable_mode_enable = 1,
+ /* Always enable an executable stack. */
+ stack_tunable_mode_force = 2
+ };
+
+void _dl_handle_execstack_tunable (void) attribute_hidden;
+
/* This function changes the permission of the memory region pointed
by STACK_ENDP to executable and update the internal memory protection
flags for future thread stack creation. */
-int _dl_make_stack_executable (void **stack_endp) attribute_hidden;
+int _dl_make_stack_executable (const void *stack_endp) attribute_hidden;
/* Variable pointing to the end of the stack (or close to it). This value
must be constant over the runtime of the application. Some programs
@@ -1076,15 +1087,29 @@ extern void _dl_debug_state (void);
rtld_hidden_proto (_dl_debug_state)
/* Initialize `struct r_debug_extended' for the namespace NS. LDBASE
- is the run-time load address of the dynamic linker, to be put in the
- `r_ldbase' member. Return the address of the structure. */
+ is the run-time load address of the dynamic linker, to be put in
+ the `r_ldbase' member.
+
+ Return the address of the r_debug structure for the namespace.
+ This is not merely a convenience or optimization, but it is
+ necessary for the LIBC_PROBE Systemtap/debugger probes to work
+ reliably: direct variable access can create probes that tools
+ cannot consume. */
extern struct r_debug *_dl_debug_initialize (ElfW(Addr) ldbase, Lmid_t ns)
attribute_hidden;
+/* This is called after relocation processing to handle a potential
+ copy relocation for _r_debug. */
+void _dl_debug_post_relocate (struct link_map *main_map) attribute_hidden;
+
/* Update the `r_map' member and return the address of `struct r_debug'
of the namespace NS. */
extern struct r_debug *_dl_debug_update (Lmid_t ns) attribute_hidden;
+/* Update R->r_state to STATE and notify the debugger by calling
+ _dl_debug_state. */
+void _dl_debug_change_state (struct r_debug *r, int state) attribute_hidden;
+
/* Initialize the basic data structure for the search paths. SOURCE
is either "LD_LIBRARY_PATH" or "--library-path".
GLIBC_HWCAPS_PREPEND adds additional glibc-hwcaps subdirectories to
diff --git a/sysdeps/generic/libc-tsd.h b/sysdeps/generic/libc-tsd.h
deleted file mode 100644
index b95e409..0000000
--- a/sysdeps/generic/libc-tsd.h
+++ /dev/null
@@ -1,60 +0,0 @@
-/* libc-internal interface for thread-specific data. Stub or TLS version.
- Copyright (C) 1998-2025 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <https://www.gnu.org/licenses/>. */
-
-#ifndef _GENERIC_LIBC_TSD_H
-#define _GENERIC_LIBC_TSD_H 1
-
-/* This file defines the following macros for accessing a small fixed
- set of thread-specific `void *' data used only internally by libc.
-
- __libc_tsd_define(CLASS, TYPE, KEY) -- Define or declare a datum with TYPE
- for KEY. CLASS can be `static' for
- keys used in only one source file,
- empty for global definitions, or
- `extern' for global declarations.
- __libc_tsd_address(TYPE, KEY) -- Return the `TYPE *' pointing to
- the current thread's datum for KEY.
- __libc_tsd_get(TYPE, KEY) -- Return the `TYPE' datum for KEY.
- __libc_tsd_set(TYPE, KEY, VALUE) -- Set the datum for KEY to VALUE.
-
- The set of available KEY's will usually be provided as an enum,
- and contains (at least):
- _LIBC_TSD_KEY_MALLOC
- _LIBC_TSD_KEY_DL_ERROR
- _LIBC_TSD_KEY_RPC_VARS
- All uses must be the literal _LIBC_TSD_* name in the __libc_tsd_* macros.
- Some implementations may not provide any enum at all and instead
- using string pasting in the macros. */
-
-#include <tls.h>
-
-/* When full support for __thread variables is available, this interface is
- just a trivial wrapper for it. Without TLS, this is the generic/stub
- implementation for wholly single-threaded systems.
-
- We don't define an enum for the possible key values, because the KEYs
- translate directly into variables by macro magic. */
-
-#define __libc_tsd_define(CLASS, TYPE, KEY) \
- CLASS __thread TYPE __libc_tsd_##KEY attribute_tls_model_ie;
-
-#define __libc_tsd_address(TYPE, KEY) (&__libc_tsd_##KEY)
-#define __libc_tsd_get(TYPE, KEY) (__libc_tsd_##KEY)
-#define __libc_tsd_set(TYPE, KEY, VALUE) (__libc_tsd_##KEY = (VALUE))
-
-#endif /* libc-tsd.h */
diff --git a/sysdeps/generic/sframe-read.c b/sysdeps/generic/sframe-read.c
new file mode 100644
index 0000000..a6ebc42
--- /dev/null
+++ b/sysdeps/generic/sframe-read.c
@@ -0,0 +1,636 @@
+/* Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public License as
+ published by the Free Software Foundation; either version 2.1 of the
+ License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdarg.h>
+#include <string.h>
+#include <assert.h>
+#include <sframe-read.h>
+
+/* Get the SFrame header size. */
+
+static inline uint32_t
+sframe_get_hdr_size (sframe_header *sfh)
+{
+ return SFRAME_V1_HDR_SIZE (*sfh);
+}
+
+/* Access functions for frame row entry data. */
+
+static inline uint8_t
+sframe_fre_get_offset_count (uint8_t fre_info)
+{
+ return SFRAME_V1_FRE_OFFSET_COUNT (fre_info);
+}
+
+static inline uint8_t
+sframe_fre_get_offset_size (uint8_t fre_info)
+{
+ return SFRAME_V1_FRE_OFFSET_SIZE (fre_info);
+}
+
+static inline bool
+sframe_get_fre_ra_mangled_p (uint8_t fre_info)
+{
+ return SFRAME_V1_FRE_MANGLED_RA_P (fre_info);
+}
+
+/* Access functions for info from function descriptor entry. */
+
+static uint32_t
+sframe_get_fre_type (sframe_func_desc_entry *fdep)
+{
+ uint32_t fre_type = 0;
+ if (fdep != NULL)
+ fre_type = SFRAME_V1_FUNC_FRE_TYPE (fdep->sfde_func_info);
+ return fre_type;
+}
+
+static uint32_t
+sframe_get_fde_type (sframe_func_desc_entry *fdep)
+{
+ uint32_t fde_type = 0;
+ if (fdep != NULL)
+ fde_type = SFRAME_V1_FUNC_FDE_TYPE (fdep->sfde_func_info);
+ return fde_type;
+}
+
+/* Check if SFrame header has valid data. Only consider SFrame type
+ 2. */
+
+static bool
+sframe_header_sanity_check_p (sframe_header *hp)
+{
+ /* Check preamble is valid. */
+ if ((hp->sfh_preamble.sfp_magic != SFRAME_MAGIC)
+ || (hp->sfh_preamble.sfp_version != SFRAME_VERSION_2)
+ || (hp->sfh_preamble.sfp_flags & ~SFRAME_V2_F_ALL_FLAGS))
+ return false;
+
+ /* Check offsets are valid. */
+ if (hp->sfh_fdeoff > hp->sfh_freoff)
+ return false;
+
+ return true;
+}
+
+/* Get the FRE start address size. */
+
+static size_t
+sframe_fre_start_addr_size (uint32_t fre_type)
+{
+ size_t addr_size = 0;
+ switch (fre_type)
+ {
+ case SFRAME_FRE_TYPE_ADDR1:
+ addr_size = 1;
+ break;
+ case SFRAME_FRE_TYPE_ADDR2:
+ addr_size = 2;
+ break;
+ case SFRAME_FRE_TYPE_ADDR4:
+ addr_size = 4;
+ break;
+ default:
+ break;
+ }
+ return addr_size;
+}
+
+/* Check if the FREP has valid data. */
+
+static bool
+sframe_fre_sanity_check_p (sframe_frame_row_entry *frep)
+{
+ uint8_t offset_size, offset_cnt;
+ uint8_t fre_info;
+
+ if (frep == NULL)
+ return false;
+
+ fre_info = frep->fre_info;
+ offset_size = sframe_fre_get_offset_size (fre_info);
+
+ if (offset_size != SFRAME_FRE_OFFSET_1B
+ && offset_size != SFRAME_FRE_OFFSET_2B
+ && offset_size != SFRAME_FRE_OFFSET_4B)
+ return false;
+
+ offset_cnt = sframe_fre_get_offset_count (fre_info);
+ if (offset_cnt > MAX_NUM_STACK_OFFSETS)
+ return false;
+
+ return true;
+}
+
+/* Get FRE_INFO's offset size in bytes. */
+
+static size_t
+sframe_fre_offset_bytes_size (uint8_t fre_info)
+{
+ uint8_t offset_size, offset_cnt;
+
+ offset_size = sframe_fre_get_offset_size (fre_info);
+
+ offset_cnt = sframe_fre_get_offset_count (fre_info);
+
+ if (offset_size == SFRAME_FRE_OFFSET_2B
+ || offset_size == SFRAME_FRE_OFFSET_4B) /* 2 or 4 bytes. */
+ return (offset_cnt * (offset_size * 2));
+
+ return (offset_cnt);
+}
+
+/* Get total size in bytes to represent FREP in the binary format. This
+ includes the starting address, FRE info, and all the offsets. */
+
+static size_t
+sframe_fre_entry_size (sframe_frame_row_entry *frep, size_t addr_size)
+{
+ if (frep == NULL)
+ return 0;
+
+ uint8_t fre_info = frep->fre_info;
+
+ return (addr_size + sizeof (frep->fre_info)
+ + sframe_fre_offset_bytes_size (fre_info));
+}
+
+/* Get SFrame header from the given decoder context DCTX. */
+
+static inline sframe_header *
+sframe_decoder_get_header (sframe_decoder_ctx *dctx)
+{
+ sframe_header *hp = NULL;
+ if (dctx != NULL)
+ hp = &dctx->sfd_header;
+ return hp;
+}
+
+/* Get the offset of the sfde_func_start_address field (from the start of the
+ on-disk layout of the SFrame section) of the FDE at FUNC_IDX in the decoder
+ context DCTX. */
+
+static uint32_t
+sframe_decoder_get_offsetof_fde_start_addr (sframe_decoder_ctx *dctx,
+ uint32_t func_idx,
+ _Unwind_Reason_Code *errp)
+{
+ sframe_header *dhp;
+
+ dhp = sframe_decoder_get_header (dctx);
+ if (dhp == NULL)
+ {
+ if (errp != NULL)
+ *errp = _URC_END_OF_STACK;
+ return 0;
+ }
+
+ if (func_idx >= dhp->sfh_num_fdes)
+ {
+ if (errp != NULL)
+ *errp = _URC_END_OF_STACK;
+ return 0;
+ }
+ else if (errp != NULL)
+ *errp = _URC_NO_REASON;
+
+ return (sframe_get_hdr_size (dhp)
+ + func_idx * sizeof (sframe_func_desc_entry)
+ + offsetof (sframe_func_desc_entry, sfde_func_start_address));
+}
+
+
+/* Get the offset of the start PC of the SFrame FDE at FUNC_IDX from
+ the start of the SFrame section. If the flag
+ SFRAME_F_FDE_FUNC_START_PCREL is set, sfde_func_start_address is
+ the offset of the start PC of the function from the field itself.
+
+ If FUNC_IDX is not a valid index in the given decoder object, returns 0. */
+
+static int32_t
+sframe_decoder_get_secrel_func_start_addr (sframe_decoder_ctx *dctx,
+ uint32_t func_idx)
+{
+ int32_t func_start_addr;
+ _Unwind_Reason_Code err = 0;
+ int32_t offsetof_fde_in_sec = 0;
+
+ /* Check if we have SFRAME_F_FDE_FUNC_START_PCREL. */
+ sframe_header *sh = &dctx->sfd_header;
+ if ((sh->sfh_preamble.sfp_flags & SFRAME_F_FDE_FUNC_START_PCREL))
+ {
+ offsetof_fde_in_sec =
+ sframe_decoder_get_offsetof_fde_start_addr (dctx, func_idx, &err);
+ /* If func_idx is not a valid index, return 0. */
+ if (err == _URC_END_OF_STACK)
+ return 0;
+ }
+
+ func_start_addr = dctx->sfd_funcdesc[func_idx].sfde_func_start_address;
+
+ return func_start_addr + offsetof_fde_in_sec;
+}
+
+/* Check if the SFrame Frame Row Entry identified via the
+ START_IP_OFFSET and the END_IP_OFFSET (for SFrame FDE at
+ FUNC_IDX). */
+
+static bool
+sframe_fre_check_range_p (sframe_decoder_ctx *dctx, uint32_t func_idx,
+ uint32_t start_ip_offset, uint32_t end_ip_offset,
+ int32_t pc)
+{
+ sframe_func_desc_entry *fdep;
+ int32_t func_start_addr;
+ uint8_t rep_block_size;
+ uint32_t fde_type;
+ uint32_t pc_offset;
+ bool mask_p;
+
+ fdep = &dctx->sfd_funcdesc[func_idx];
+ if (fdep == NULL)
+ return false;
+
+ func_start_addr = sframe_decoder_get_secrel_func_start_addr (dctx, func_idx);
+ fde_type = sframe_get_fde_type (fdep);
+ mask_p = (fde_type == SFRAME_FDE_TYPE_PCMASK);
+ rep_block_size = fdep->sfde_func_rep_size;
+
+ if (func_start_addr > pc)
+ return false;
+
+ /* Given func_start_addr <= pc, pc - func_start_addr must be positive. */
+ pc_offset = pc - func_start_addr;
+ /* For SFrame FDEs encoding information for repetitive pattern of insns,
+ masking with the rep_block_size is necessary to find the matching FRE. */
+ if (mask_p)
+ pc_offset = pc_offset % rep_block_size;
+
+ return (start_ip_offset <= pc_offset) && (end_ip_offset >= pc_offset);
+}
+
+/* Get IDX'th offset from FRE. Set ERRP as applicable. */
+
+static int32_t
+sframe_get_fre_offset (sframe_frame_row_entry *fre,
+ int idx,
+ _Unwind_Reason_Code *errp)
+{
+ uint8_t offset_cnt, offset_size;
+
+ if (!sframe_fre_sanity_check_p (fre))
+ {
+ *errp = _URC_END_OF_STACK;
+ return 0;
+ }
+
+ offset_cnt = sframe_fre_get_offset_count (fre->fre_info);
+ offset_size = sframe_fre_get_offset_size (fre->fre_info);
+
+ if (offset_cnt < (idx + 1))
+ {
+ *errp = _URC_END_OF_STACK;
+ return 0;
+ }
+ *errp = _URC_NO_REASON;
+
+ if (offset_size == SFRAME_FRE_OFFSET_1B)
+ {
+ int8_t *sp = (int8_t *)fre->fre_offsets;
+ return sp[idx];
+ }
+ else if (offset_size == SFRAME_FRE_OFFSET_2B)
+ {
+ int16_t *sp = (int16_t *)fre->fre_offsets;
+ return sp[idx];
+ }
+ else
+ {
+ int32_t *ip = (int32_t *)fre->fre_offsets;
+ return ip[idx];
+ }
+}
+
+/* Decode the SFrame FRE start address offset value from FRE_BUF in on-disk
+ binary format, given the FRE_TYPE. Updates the FRE_START_ADDR. */
+
+static void
+sframe_decode_fre_start_address (const char *fre_buf,
+ uint32_t *fre_start_addr,
+ uint32_t fre_type)
+{
+ uint32_t saddr = 0;
+
+ if (fre_type == SFRAME_FRE_TYPE_ADDR1)
+ {
+ uint8_t *uc = (uint8_t *)fre_buf;
+ saddr = (uint32_t)*uc;
+ }
+ else if (fre_type == SFRAME_FRE_TYPE_ADDR2)
+ {
+ uint16_t *ust = (uint16_t *)fre_buf;
+ saddr = (uint32_t)*ust;
+ }
+ else if (fre_type == SFRAME_FRE_TYPE_ADDR4)
+ {
+ uint32_t *uit = (uint32_t *)fre_buf;
+ saddr = (uint32_t)*uit;
+ }
+ else
+ return;
+
+ *fre_start_addr = saddr;
+}
+
+/* Find the function descriptor entry starting which contains the specified
+ address ADDR. */
+
+static sframe_func_desc_entry *
+sframe_get_funcdesc_with_addr_internal (sframe_decoder_ctx *ctx, int32_t addr,
+ int *errp, uint32_t *func_idx)
+{
+ sframe_header *dhp;
+ sframe_func_desc_entry *fdp;
+ int low, high;
+
+ if (ctx == NULL)
+ return NULL;
+
+ dhp = sframe_decoder_get_header (ctx);
+
+ if (dhp == NULL || dhp->sfh_num_fdes == 0 || ctx->sfd_funcdesc == NULL)
+ return NULL;
+ /* If the FDE sub-section is not sorted on PCs, skip the lookup because
+ binary search cannot be used. */
+ if ((dhp->sfh_preamble.sfp_flags & SFRAME_F_FDE_SORTED) == 0)
+ return NULL;
+
+ /* Do the binary search. */
+ fdp = (sframe_func_desc_entry *) ctx->sfd_funcdesc;
+ low = 0;
+ high = dhp->sfh_num_fdes - 1;
+ while (low <= high)
+ {
+ int mid = low + (high - low) / 2;
+
+ /* Given sfde_func_start_address <= addr,
+ addr - sfde_func_start_address must be positive. */
+ if (sframe_decoder_get_secrel_func_start_addr (ctx, mid) <= addr
+ && ((uint32_t)(addr - sframe_decoder_get_secrel_func_start_addr (ctx,
+ mid))
+ < fdp[mid].sfde_func_size))
+ {
+ *func_idx = mid;
+ return fdp + mid;
+ }
+
+ if (sframe_decoder_get_secrel_func_start_addr (ctx, mid) < addr)
+ low = mid + 1;
+ else
+ high = mid - 1;
+ }
+
+ return NULL;
+}
+
+/* Get the end IP offset for the FRE at index i in the FDEP. The buffer FRES
+ is the starting location for the FRE. */
+
+static uint32_t
+sframe_fre_get_end_ip_offset (sframe_func_desc_entry *fdep, unsigned int i,
+ const char *fres)
+{
+ uint32_t end_ip_offset = 0;
+ uint32_t fre_type;
+
+ fre_type = sframe_get_fre_type (fdep);
+
+ /* Get the start address of the next FRE in sequence. */
+ if (i < fdep->sfde_func_num_fres - 1)
+ {
+ sframe_decode_fre_start_address (fres, &end_ip_offset, fre_type);
+ end_ip_offset -= 1;
+ }
+ else
+ /* The end IP offset for the FRE needs to be deduced from the function
+ size. */
+ end_ip_offset = fdep->sfde_func_size - 1;
+
+ return end_ip_offset;
+}
+
+/* Get the SFrame's fixed FP offset given the decoder context CTX. */
+
+static int8_t
+sframe_decoder_get_fixed_fp_offset (sframe_decoder_ctx *ctx)
+{
+ sframe_header *dhp;
+ dhp = sframe_decoder_get_header (ctx);
+ return dhp->sfh_cfa_fixed_fp_offset;
+}
+
+/* Get the SFrame's fixed RA offset given the decoder context CTX. */
+
+static int8_t
+sframe_decoder_get_fixed_ra_offset (sframe_decoder_ctx *ctx)
+{
+ sframe_header *dhp;
+ dhp = sframe_decoder_get_header (ctx);
+ return dhp->sfh_cfa_fixed_ra_offset;
+}
+
+/* Get the base reg id from the FRE info. Set errp if failure. */
+
+uint8_t
+__sframe_fre_get_base_reg_id (sframe_frame_row_entry *fre)
+{
+ uint8_t fre_info = fre->fre_info;
+ return SFRAME_V1_FRE_CFA_BASE_REG_ID (fre_info);
+}
+
+/* Get the CFA offset from the FRE. If the offset is unavailable,
+ sets errp. */
+
+int32_t
+__sframe_fre_get_cfa_offset (sframe_decoder_ctx *dctx __attribute__ ((__unused__)),
+ sframe_frame_row_entry *fre,
+ _Unwind_Reason_Code *errp)
+{
+ return sframe_get_fre_offset (fre, SFRAME_FRE_CFA_OFFSET_IDX, errp);
+}
+
+/* Get the FP offset from the FRE. If the offset is unavailable, sets
+ errp. */
+
+int32_t
+__sframe_fre_get_fp_offset (sframe_decoder_ctx *dctx,
+ sframe_frame_row_entry *fre,
+ _Unwind_Reason_Code *errp)
+{
+ uint32_t fp_offset_idx = 0;
+ int8_t fp_offset = sframe_decoder_get_fixed_fp_offset (dctx);
+
+ *errp = _URC_NO_REASON;
+ /* If the FP offset is not being tracked, return the fixed FP offset
+ from the SFrame header. */
+ if (fp_offset != SFRAME_CFA_FIXED_FP_INVALID)
+ return fp_offset;
+
+ /* In some ABIs, the stack offset to recover RA (using the CFA) from is
+ fixed (like AMD64). In such cases, the stack offset to recover FP will
+ appear at the second index. */
+ fp_offset_idx = ((sframe_decoder_get_fixed_ra_offset (dctx)
+ != SFRAME_CFA_FIXED_RA_INVALID)
+ ? SFRAME_FRE_RA_OFFSET_IDX
+ : SFRAME_FRE_FP_OFFSET_IDX);
+ return sframe_get_fre_offset (fre, fp_offset_idx, errp);
+}
+
+/* Get the RA offset from the FRE. If the offset is unavailable, sets
+ errp. */
+
+int32_t
+__sframe_fre_get_ra_offset (sframe_decoder_ctx *dctx,
+ sframe_frame_row_entry *fre,
+ _Unwind_Reason_Code *errp)
+{
+ int8_t ra_offset = sframe_decoder_get_fixed_ra_offset (dctx);
+ *errp = _URC_NO_REASON;
+
+ /* If the RA offset was not being tracked, return the fixed RA offset
+ from the SFrame header. */
+ if (ra_offset != SFRAME_CFA_FIXED_RA_INVALID)
+ return ra_offset;
+
+ /* Otherwise, get the RA offset from the FRE. */
+ return sframe_get_fre_offset (fre, SFRAME_FRE_RA_OFFSET_IDX, errp);
+}
+
+/* Decode the specified SFrame buffer SF_BUF and return the new SFrame
+ decoder context. */
+
+_Unwind_Reason_Code
+__sframe_decode (sframe_decoder_ctx *dctx, const char *sf_buf)
+{
+ const sframe_preamble *sfp;
+ size_t hdrsz;
+ sframe_header *sfheaderp;
+ char *frame_buf;
+
+ int fidx_size;
+ uint32_t fre_bytes;
+
+ if (sf_buf == NULL)
+ return _URC_END_OF_STACK;
+
+ sfp = (const sframe_preamble *) sf_buf;
+
+ /* Check for foreign endianness. */
+ if (sfp->sfp_magic != SFRAME_MAGIC)
+ return _URC_END_OF_STACK;
+
+ frame_buf = (char *)sf_buf;
+
+ /* Handle the SFrame header. */
+ dctx->sfd_header = *(sframe_header *) frame_buf;
+
+ /* Validate the contents of SFrame header. */
+ sfheaderp = &dctx->sfd_header;
+ if (!sframe_header_sanity_check_p (sfheaderp))
+ return _URC_END_OF_STACK;
+
+ hdrsz = sframe_get_hdr_size (sfheaderp);
+ frame_buf += hdrsz;
+
+ /* Handle the SFrame Function Descriptor Entry section. */
+ fidx_size
+ = sfheaderp->sfh_num_fdes * sizeof (sframe_func_desc_entry);
+ dctx->sfd_funcdesc = (sframe_func_desc_entry *)frame_buf;
+ frame_buf += (fidx_size);
+
+ dctx->sfd_fres = frame_buf;
+ fre_bytes = sfheaderp->sfh_fre_len;
+ dctx->sfd_fre_nbytes = fre_bytes;
+
+ return _URC_NO_REASON;
+}
+
+/* Find the SFrame Row Entry which contains the PC. Returns
+ _URC_END_OF_STACK if failure. */
+
+_Unwind_Reason_Code
+__sframe_find_fre (sframe_decoder_ctx *ctx, int32_t pc,
+ sframe_frame_row_entry *frep)
+{
+ sframe_func_desc_entry *fdep;
+ uint32_t func_idx;
+ uint32_t fre_type, i;
+ uint32_t start_ip_offset;
+ int32_t func_start_addr;
+ uint32_t end_ip_offset;
+ const char *fres;
+ size_t size = 0;
+ int err = 0;
+
+ if ((ctx == NULL) || (frep == NULL))
+ return _URC_END_OF_STACK;
+
+ /* Find the FDE which contains the PC, then scan its fre entries. */
+ fdep = sframe_get_funcdesc_with_addr_internal (ctx, pc, &err, &func_idx);
+ if (fdep == NULL || ctx->sfd_fres == NULL)
+ return _URC_END_OF_STACK;
+
+ fre_type = sframe_get_fre_type (fdep);
+
+ fres = ctx->sfd_fres + fdep->sfde_func_start_fre_off;
+ func_start_addr = sframe_decoder_get_secrel_func_start_addr (ctx, func_idx);
+
+ for (i = 0; i < fdep->sfde_func_num_fres; i++)
+ {
+ size_t addr_size;
+
+ /* Partially decode the FRE. */
+ sframe_decode_fre_start_address (fres, &frep->fre_start_addr, fre_type);
+
+ addr_size = sframe_fre_start_addr_size (fre_type);
+ if (addr_size == 0)
+ return _URC_END_OF_STACK;
+
+ frep->fre_info = *(uint8_t *)(fres + addr_size);
+ size = sframe_fre_entry_size (frep, addr_size);
+
+ start_ip_offset = frep->fre_start_addr;
+ end_ip_offset = sframe_fre_get_end_ip_offset (fdep, i, fres + size);
+
+ /* Stop search if FRE's start_ip is greater than pc. Given
+ func_start_addr <= pc, pc - func_start_addr must be positive. */
+ if (start_ip_offset > (uint32_t) (pc - func_start_addr))
+ return _URC_END_OF_STACK;
+
+ if (sframe_fre_check_range_p (ctx, func_idx, start_ip_offset,
+ end_ip_offset, pc))
+ {
+ /* Decode last FRE bits: offsets size. */
+ frep->fre_offsets = fres + addr_size + sizeof (frep->fre_info);
+ return _URC_NO_REASON;
+ }
+
+ fres += size;
+ }
+ return _URC_END_OF_STACK;
+}
diff --git a/sysdeps/generic/sframe-read.h b/sysdeps/generic/sframe-read.h
new file mode 100644
index 0000000..1461421
--- /dev/null
+++ b/sysdeps/generic/sframe-read.h
@@ -0,0 +1,112 @@
+/* Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public License as
+ published by the Free Software Foundation; either version 2.1 of the
+ License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+#ifndef _SFRAME_API_H
+#define _SFRAME_API_H
+
+#include <sframe.h>
+#include <stdbool.h>
+#include <unwind.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+typedef struct sframe_decoder_ctx
+{
+
+ sframe_header sfd_header;
+
+ sframe_func_desc_entry *sfd_funcdesc;
+ /* SFrame FRE table. */
+ char *sfd_fres;
+ /* Number of bytes needed for SFrame FREs. */
+ int sfd_fre_nbytes;
+} sframe_decoder_ctx;
+
+#define MAX_NUM_STACK_OFFSETS 3
+
+/* User interfacing SFrame Row Entry.
+ An abstraction provided by libsframe so the consumer is decoupled from
+ the binary format representation of the same.
+
+ The members are best ordered such that they are aligned at their natural
+ boundaries. This helps avoid usage of undesirable misaligned memory
+ accesses. See PR libsframe/29856. */
+
+typedef struct sframe_frame_row_entry
+{
+ uint32_t fre_start_addr;
+ const char *fre_offsets;
+ unsigned char fre_info;
+} sframe_frame_row_entry;
+
+/* The SFrame Decoder. */
+
+/* Decode the specified SFrame buffer CF_BUF and return the new SFrame
+ decoder context. */
+
+extern _Unwind_Reason_Code
+__sframe_decode (sframe_decoder_ctx *dctx, const char *cf_buf);
+
+/* Find the SFrame Frame Row Entry which contains the PC. Returns
+ _URC_END_OF_STACK if failure. */
+
+extern _Unwind_Reason_Code
+__sframe_find_fre (sframe_decoder_ctx *ctx, int32_t pc,
+ sframe_frame_row_entry *frep);
+
+/* Get the base reg id from the FRE info. */
+
+extern uint8_t
+__sframe_fre_get_base_reg_id (sframe_frame_row_entry *fre);
+
+/* Get the CFA offset from the FRE. Sets ERRP if an error is
+ detected. */
+
+extern int32_t
+__sframe_fre_get_cfa_offset (sframe_decoder_ctx *dtcx,
+ sframe_frame_row_entry *fre,
+ _Unwind_Reason_Code *errp);
+
+/* Get the FP offset from the FRE. If the offset is unavailable, sets
+ ERRP. */
+
+extern int32_t
+__sframe_fre_get_fp_offset (sframe_decoder_ctx *dctx,
+ sframe_frame_row_entry *fre,
+ _Unwind_Reason_Code *errp);
+
+/* Get the RA offset from the FRE. Sets ERRP if ra offset is
+ unavailable. */
+
+extern int32_t
+__sframe_fre_get_ra_offset (sframe_decoder_ctx *dctx,
+ sframe_frame_row_entry *fre,
+ _Unwind_Reason_Code *errp);
+
+/* Get the offset of the sfde_func_start_address field. */
+
+extern uint32_t
+__sframe_decoder_get_offsetof_fde_start_addr (sframe_decoder_ctx *dctx,
+ uint32_t func_idx,
+ _Unwind_Reason_Code *errp);
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _SFRAME_API_H */
diff --git a/sysdeps/generic/sframe.c b/sysdeps/generic/sframe.c
new file mode 100644
index 0000000..ba0830d
--- /dev/null
+++ b/sysdeps/generic/sframe.c
@@ -0,0 +1,187 @@
+/* Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public License as
+ published by the Free Software Foundation; either version 2.1 of the
+ License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+#include <sframe-read.h>
+#include <stdlib.h>
+#include <dlfcn.h>
+#include <unwind.h>
+#include <uw-sigframe.h>
+#include <ldsodefs.h>
+
+/* Some arches like s390x needs an offset to correct the value where
+ SP is located in relation to CFA. */
+#ifndef SFRAME_SP_VAL_OFFSET
+#define SFRAME_SP_VAL_OFFSET 0
+#endif
+
+static inline _Unwind_Ptr
+read_stack_value (_Unwind_Ptr loc)
+{
+ _Unwind_Ptr value = *((_Unwind_Ptr *) loc);
+ return value;
+}
+
+/* Helper to avoid PLT call in libc. Fixes elf/check-localplt
+ errors. */
+
+static int
+_dl_find_object_helper (void *address, struct dl_find_object *result)
+{
+ return GLRO (dl_find_object) (address, result);
+}
+
+/* Backtrace the stack and collect the stacktrace given SFrame info.
+ If successful, store the return addresses in RA_LST. The SIZE
+ argument specifies the maximum number of return addresses that can
+ be stored in RA_LST and contains the number of the addresses
+ collected. */
+
+int
+__stacktrace_sframe (void **ra_lst, int count, frame *frame)
+{
+ _Unwind_Ptr sframe_vma, cfa, return_addr, ra_stack_loc, fp_stack_loc, pc,
+ frame_ptr;
+ int cfa_offset, fp_offset, ra_offset, i;
+ sframe_frame_row_entry fred, *frep = &fred;
+
+ if (!ra_lst || !count)
+ return 0;
+
+ for (i = 0; i < count; i++)
+ {
+ _Unwind_Reason_Code err;
+ struct dl_find_object data;
+ sframe_decoder_ctx decoder_context, *dctx = &decoder_context;
+
+ /* Clean decoder context. */
+ memset (dctx, 0, sizeof (sframe_decoder_ctx));
+
+ /* Load and set up the SFrame stack trace info for pc. */
+ if (_dl_find_object_helper ((void *) frame->pc, &data) < 0)
+ /* Force fallback to DWARF stacktracer. */
+ return 0;
+
+ sframe_vma = (_Unwind_Ptr) data.dlfo_sframe;
+ if (!sframe_vma || !(data.dlfo_flags & DLFO_FLAG_SFRAME))
+ {
+#ifdef MD_DECODE_SIGNAL_FRAME
+ /* If there is no valid SFrame section or SFrame section is
+ corrupted then check if it is a signal frame. */
+ if (MD_DECODE_SIGNAL_FRAME (frame) == _URC_NO_REASON)
+ {
+ ra_lst[i] = (void *) frame->pc;
+ continue;
+ }
+#endif
+ /* Force fallback to DWARF stacktracer. */
+ return 0;
+ }
+
+ /* Decode the specified SFrame buffer populate sframe's decoder
+ context. */
+ if (__sframe_decode (dctx, (char *) data.dlfo_sframe) != _URC_NO_REASON)
+ /* Force fallback to DWARF stacktracer. */
+ return 0;
+
+ pc = frame->pc - sframe_vma;
+ /* Find the SFrame Row Entry which contains the PC. */
+ if (__sframe_find_fre (dctx, pc, frep) == _URC_END_OF_STACK)
+ {
+#ifdef MD_DECODE_SIGNAL_FRAME
+ /* If there are no valid FREs, check if it is a signal
+ frame, and if so decode it. */
+ if (MD_DECODE_SIGNAL_FRAME (frame) == _URC_NO_REASON)
+ {
+ ra_lst[i] = (void *) frame->pc;
+ continue;
+ }
+#endif
+#ifdef MD_DETECT_OUTERMOST_FRAME
+ if (MD_DETECT_OUTERMOST_FRAME (frame) == _URC_END_OF_STACK)
+ return i;
+#endif
+ /* Force fallback to DWARF stacktracer. */
+ return 0;
+ }
+
+ /* Get the CFA offset from the FRE. If offset is unavailable,
+ sets err. */
+ cfa_offset = __sframe_fre_get_cfa_offset (dctx, frep, &err);
+ if (err != _URC_NO_REASON)
+ /* Force fallback to DWARF stacktracer. */
+ return 0;
+
+ /* Get CFA using base reg id from the FRE info. */
+ cfa = ((__sframe_fre_get_base_reg_id (frep)
+ == SFRAME_BASE_REG_SP) ? frame->sp : frame->fp) + cfa_offset;
+
+ /* Get the RA offset from the FRE. If the offset is
+ unavailable, sets err. */
+ ra_offset = __sframe_fre_get_ra_offset (dctx, frep, &err);
+ if (err != _URC_NO_REASON)
+ /* Force fallback to DWARF stacktracer. */
+ return 0;
+
+ /* RA offset is available, get the value stored in the stack
+ location. */
+ ra_stack_loc = cfa + ra_offset;
+ return_addr = read_stack_value (ra_stack_loc);
+
+ ra_lst[i] = (void *) return_addr;
+
+ /* Get the FP offset from the FRE. If the offset is
+ unavailable, sets err. */
+ fp_offset = __sframe_fre_get_fp_offset (dctx, frep, &err);
+ frame_ptr = frame->fp;
+ if (err == _URC_NO_REASON)
+ {
+ /* FP offset is available, get the value stored in the stack
+ location. */
+ fp_stack_loc = cfa + fp_offset;
+ frame_ptr = read_stack_value (fp_stack_loc);
+ }
+
+ /* Set up for the next frame. */
+ frame->fp = frame_ptr;
+ frame->sp = cfa + SFRAME_SP_VAL_OFFSET;
+ frame->pc = return_addr;
+ }
+ return i;
+}
+
+libc_hidden_def (__stacktrace_sframe);
+
+/* A noinline helper used to obtain the caller's current PC. */
+
+_Unwind_Ptr __attribute__ ((noinline))
+__getPC (void)
+{
+ return (_Unwind_Ptr)
+ __builtin_extract_return_addr (__builtin_return_address (0));
+}
+
+libc_hidden_def (__getPC);
+
+/* A noinline helper used to obtain the caller's current SP. It
+ mimics gcc14's __builtin_stack_address() functionality. */
+
+_Unwind_Ptr __attribute__ ((noinline))
+__getSP (void)
+{
+ return (_Unwind_Ptr) __builtin_dwarf_cfa() + SFRAME_SP_VAL_OFFSET;
+}
+
+libc_hidden_def (__getSP);
diff --git a/sysdeps/generic/sframe.h b/sysdeps/generic/sframe.h
new file mode 100644
index 0000000..e38adcf
--- /dev/null
+++ b/sysdeps/generic/sframe.h
@@ -0,0 +1,378 @@
+/* SFrame format description.
+ Copyright (C) 2022-2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; see the file COPYING. If not see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef _SFRAME_H
+#define _SFRAME_H
+
+#include <sys/types.h>
+#include <limits.h>
+#include <stdint.h>
+#include <unwind.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+/* SFrame format.
+
+ SFrame format is a simple format to represent the information needed
+ for generating vanilla backtraces. SFrame format keeps track of the
+ minimal necessary information needed for stack tracing:
+ - Canonical Frame Address (CFA)
+ - Frame Pointer (FP)
+ - Return Address (RA)
+
+ The SFrame section itself has the following structure:
+
+ +--------+------------+---------+
+ | file | function | frame |
+ | header | descriptor | row |
+ | | entries | entries |
+ +--------+------------+---------+
+
+ The file header stores a magic number and version information, flags, and
+ the byte offset of each of the sections relative to the end of the header
+ itself. The file header also specifies the total number of Function
+ Descriptor Entries, Frame Row Entries and length of the FRE sub-section.
+
+ Following the header is a list of Function Descriptor Entries (FDEs).
+ This list may be sorted if the flags in the file header indicate it to be
+ so. The sort order, if applicable, is the order of functions in the
+ .text.* sections in the resulting binary artifact. Each Function
+ Descriptor Entry specifies the start PC of a function, the size in bytes
+ of the function and an offset to its first Frame Row Entry (FRE). Each FDE
+ additionally also specifies the type of FRE it uses to encode the stack
+ trace information.
+
+ Next, the SFrame Frame Row Entry sub-section is a list of variable size
+ records. Each entry represents stack trace information for a set of PCs
+ of the function. A singular Frame Row Entry is a self-sufficient record
+ which contains information on how to generate stack trace from the
+ applicable set of PCs.
+
+ */
+
+
+/* SFrame format versions. */
+#define SFRAME_VERSION_1 1
+#define SFRAME_VERSION_2 2
+/* SFrame magic number. */
+#define SFRAME_MAGIC 0xdee2
+/* Current version of SFrame format. */
+#define SFRAME_VERSION SFRAME_VERSION_2
+
+/* Various flags for SFrame. */
+
+/* Function Descriptor Entries are sorted on PC. */
+#define SFRAME_F_FDE_SORTED 0x1
+/* Functions preserve frame pointer. */
+#define SFRAME_F_FRAME_POINTER 0x2
+/* Function start address in SFrame FDE is encoded as the distance from the
+ location of the sfde_func_start_address to the start PC of the function.
+ If absent, the function start address in SFrame FDE is encoded as the
+ distance from the start of the SFrame FDE section to the start PC of the
+ function. */
+#define SFRAME_F_FDE_FUNC_START_PCREL 0x4
+
+/* Set of all defined flags in SFrame V2. */
+#define SFRAME_V2_F_ALL_FLAGS \
+ (SFRAME_F_FDE_SORTED | SFRAME_F_FRAME_POINTER \
+ | SFRAME_F_FDE_FUNC_START_PCREL)
+
+#define SFRAME_CFA_FIXED_FP_INVALID 0
+#define SFRAME_CFA_FIXED_RA_INVALID 0
+
+/* Supported ABIs/Arch. */
+#define SFRAME_ABI_AARCH64_ENDIAN_BIG 1 /* AARCH64 big endian. */
+#define SFRAME_ABI_AARCH64_ENDIAN_LITTLE 2 /* AARCH64 little endian. */
+#define SFRAME_ABI_AMD64_ENDIAN_LITTLE 3 /* AMD64 little endian. */
+
+/* SFrame FRE types. */
+#define SFRAME_FRE_TYPE_ADDR1 0
+#define SFRAME_FRE_TYPE_ADDR2 1
+#define SFRAME_FRE_TYPE_ADDR4 2
+
+/* SFrame Function Descriptor Entry types.
+
+ The SFrame format has two possible representations for functions. The
+ choice of which type to use is made according to the instruction patterns
+ in the relevant program stub.
+
+ An SFrame FDE of type SFRAME_FDE_TYPE_PCINC is an indication
+ that the PCs in the FREs should be treated as increments in bytes. This is
+ used for a bulk of the executable code of a program, which contains
+ instructions with no specific pattern.
+
+ An SFrame FDE of type SFRAME_FDE_TYPE_PCMASK is an indication
+ that the PCs in the FREs should be treated as masks. This type is useful
+ for the cases when a small pattern of instructions in a program stub is
+ repeatedly to cover a specific functionality. Typical usescases are pltN
+ entries, trampolines etc. */
+
+/* Unwinders perform a (PC >= FRE_START_ADDR) to look up a matching FRE. */
+#define SFRAME_FDE_TYPE_PCINC 0
+/* Unwinders perform a (PC % REP_BLOCK_SIZE >= FRE_START_ADDR) to look up a
+ matching FRE. */
+#define SFRAME_FDE_TYPE_PCMASK 1
+
+typedef struct sframe_preamble
+{
+ uint16_t sfp_magic; /* Magic number (SFRAME_MAGIC). */
+ uint8_t sfp_version; /* Data format version number (SFRAME_VERSION). */
+ uint8_t sfp_flags; /* Flags. */
+} __attribute__ ((packed)) sframe_preamble;
+
+typedef struct sframe_header
+{
+ sframe_preamble sfh_preamble;
+ /* Information about the arch (endianness) and ABI. */
+ uint8_t sfh_abi_arch;
+ /* Offset for the Frame Pointer (FP) from CFA may be fixed for some
+ ABIs (e.g, in AMD64 when -fno-omit-frame-pointer is used). When fixed,
+ this field specifies the fixed stack frame offset and the individual
+ FREs do not need to track it. When not fixed, it is set to
+ SFRAME_CFA_FIXED_FP_INVALID, and the individual FREs may provide
+ the applicable stack frame offset, if any. */
+ int8_t sfh_cfa_fixed_fp_offset;
+ /* Offset for the Return Address from CFA is fixed for some ABIs
+ (e.g., AMD64 has it as CFA-8). When fixed, the header specifies the
+ fixed stack frame offset and the individual FREs do not track it. When
+ not fixed, it is set to SFRAME_CFA_FIXED_RA_INVALID, and individual
+ FREs provide the applicable stack frame offset, if any. */
+ int8_t sfh_cfa_fixed_ra_offset;
+ /* Number of bytes making up the auxiliary header, if any.
+ Some ABI/arch, in the future, may use this space for extending the
+ information in SFrame header. Auxiliary header is contained in
+ bytes sequentially following the sframe_header. */
+ uint8_t sfh_auxhdr_len;
+ /* Number of SFrame FDEs in this SFrame section. */
+ uint32_t sfh_num_fdes;
+ /* Number of SFrame Frame Row Entries. */
+ uint32_t sfh_num_fres;
+ /* Number of bytes in the SFrame Frame Row Entry section. */
+ uint32_t sfh_fre_len;
+ /* Offset of SFrame Function Descriptor Entry section. */
+ uint32_t sfh_fdeoff;
+ /* Offset of SFrame Frame Row Entry section. */
+ uint32_t sfh_freoff;
+} __attribute__ ((packed)) sframe_header;
+
+#define SFRAME_V1_HDR_SIZE(sframe_hdr) \
+ ((sizeof (sframe_header) + (sframe_hdr).sfh_auxhdr_len))
+
+/* Two possible keys for executable (instruction) pointers signing. */
+#define SFRAME_AARCH64_PAUTH_KEY_A 0 /* Key A. */
+#define SFRAME_AARCH64_PAUTH_KEY_B 1 /* Key B. */
+
+typedef struct sframe_func_desc_entry
+{
+ /* Function start address. Encoded as a signed offset, relative to the
+ beginning of the current FDE. */
+ int32_t sfde_func_start_address;
+ /* Size of the function in bytes. */
+ uint32_t sfde_func_size;
+ /* Offset of the first SFrame Frame Row Entry of the function, relative to the
+ beginning of the SFrame Frame Row Entry sub-section. */
+ uint32_t sfde_func_start_fre_off;
+ /* Number of frame row entries for the function. */
+ uint32_t sfde_func_num_fres;
+ /* Additional information for stack tracing from the function:
+ - 4-bits: Identify the FRE type used for the function.
+ - 1-bit: Identify the FDE type of the function - mask or inc.
+ - 1-bit: PAC authorization A/B key (aarch64).
+ - 2-bits: Unused.
+ ------------------------------------------------------------------------
+ | Unused | PAC auth A/B key (aarch64) | FDE type | FRE type |
+ | | Unused (amd64) | | |
+ ------------------------------------------------------------------------
+ 8 6 5 4 0 */
+ uint8_t sfde_func_info;
+ /* Size of the block of repeating insns. Used for SFrame FDEs of type
+ SFRAME_FDE_TYPE_PCMASK. */
+ uint8_t sfde_func_rep_size;
+ uint16_t sfde_func_padding2;
+} __attribute__ ((packed)) sframe_func_desc_entry;
+
+/* Macros to compose and decompose function info in FDE. */
+
+/* Note: Set PAC auth key to SFRAME_AARCH64_PAUTH_KEY_A by default. */
+#define SFRAME_V1_FUNC_INFO(fde_type, fre_enc_type) \
+ (((SFRAME_AARCH64_PAUTH_KEY_A & 0x1) << 5) | \
+ (((fde_type) & 0x1) << 4) | ((fre_enc_type) & 0xf))
+
+#define SFRAME_V1_FUNC_FRE_TYPE(data) ((data) & 0xf)
+#define SFRAME_V1_FUNC_FDE_TYPE(data) (((data) >> 4) & 0x1)
+#define SFRAME_V1_FUNC_PAUTH_KEY(data) (((data) >> 5) & 0x1)
+
+/* Set the pauth key as indicated. */
+#define SFRAME_V1_FUNC_INFO_UPDATE_PAUTH_KEY(pauth_key, fde_info) \
+ ((((pauth_key) & 0x1) << 5) | ((fde_info) & 0xdf))
+
+/* Size of stack frame offsets in an SFrame Frame Row Entry. A single
+ SFrame FRE has all offsets of the same size. Offset size may vary
+ across frame row entries. */
+#define SFRAME_FRE_OFFSET_1B 0
+#define SFRAME_FRE_OFFSET_2B 1
+#define SFRAME_FRE_OFFSET_4B 2
+
+/* An SFrame Frame Row Entry can be SP or FP based. */
+#define SFRAME_BASE_REG_FP 0
+#define SFRAME_BASE_REG_SP 1
+
+/* The index at which a specific offset is presented in the variable length
+ bytes of an FRE. */
+#define SFRAME_FRE_CFA_OFFSET_IDX 0
+/* The RA stack offset, if present, will always be at index 1 in the variable
+ length bytes of the FRE. */
+#define SFRAME_FRE_RA_OFFSET_IDX 1
+/* The FP stack offset may appear at offset 1 or 2, depending on the ABI as RA
+ may or may not be tracked. */
+#define SFRAME_FRE_FP_OFFSET_IDX 2
+
+typedef struct sframe_fre_info
+{
+ /* Information about
+ - 1 bit: base reg for CFA
+ - 4 bits: Number of offsets (N). A value of upto 3 is allowed to track
+ all three of CFA, FP and RA (fixed implicit order).
+ - 2 bits: information about size of the offsets (S) in bytes.
+ Valid values are SFRAME_FRE_OFFSET_1B, SFRAME_FRE_OFFSET_2B,
+ SFRAME_FRE_OFFSET_4B
+ - 1 bit: Mangled RA state bit (aarch64 only).
+ ----------------------------------------------------------------------------------
+ | Mangled-RA (aarch64) | Size of offsets | Number of offsets | base_reg |
+ | Unused (amd64) | | | |
+ ----------------------------------------------------------------------------------
+ 8 7 5 1 0
+
+ */
+ uint8_t fre_info;
+} sframe_fre_info;
+
+/* Macros to compose and decompose FRE info. */
+
+/* Note: Set mangled_ra_p to zero by default. */
+#define SFRAME_V1_FRE_INFO(base_reg_id, offset_num, offset_size) \
+ (((0 & 0x1) << 7) | (((offset_size) & 0x3) << 5) | \
+ (((offset_num) & 0xf) << 1) | ((base_reg_id) & 0x1))
+
+/* Set the mangled_ra_p bit as indicated. */
+#define SFRAME_V1_FRE_INFO_UPDATE_MANGLED_RA_P(mangled_ra_p, fre_info) \
+ ((((mangled_ra_p) & 0x1) << 7) | ((fre_info) & 0x7f))
+
+#define SFRAME_V1_FRE_CFA_BASE_REG_ID(data) ((data) & 0x1)
+#define SFRAME_V1_FRE_OFFSET_COUNT(data) (((data) >> 1) & 0xf)
+#define SFRAME_V1_FRE_OFFSET_SIZE(data) (((data) >> 5) & 0x3)
+#define SFRAME_V1_FRE_MANGLED_RA_P(data) (((data) >> 7) & 0x1)
+
+/* SFrame Frame Row Entry definitions.
+
+ Used for both AMD64 and AARCH64.
+
+ An SFrame Frame Row Entry is a self-sufficient record which contains
+ information on how to generate the stack trace for the specified range of
+ PCs. Each SFrame Frame Row Entry is followed by S*N bytes, where:
+ S is the size of the stack frame offset for the FRE, and
+ N is the number of stack frame offsets in the FRE
+
+ The interpretation of FRE stack offsets is ABI-specific:
+
+ AMD64:
+ offset1 (interpreted as CFA = BASE_REG + offset1)
+ if FP is being tracked
+ offset2 (intrepreted as FP = CFA + offset2)
+ fi
+
+ AARCH64:
+ offset1 (interpreted as CFA = BASE_REG + offset1)
+ if FP is being tracked (in other words, if frame record created)
+ offset2 (interpreted as RA = CFA + offset2)
+ offset3 (intrepreted as FP = CFA + offset3)
+ fi
+ Note that in AAPCS64, a frame record, if created, will save both FP and
+ LR on stack.
+*/
+
+/* Used when SFRAME_FRE_TYPE_ADDR1 is specified as FRE type. */
+typedef struct sframe_frame_row_entry_addr1
+{
+ /* Start address of the frame row entry. Encoded as an 1-byte unsigned
+ offset, relative to the start address of the function. */
+ uint8_t sfre_start_address;
+ sframe_fre_info sfre_info;
+} __attribute__ ((packed)) sframe_frame_row_entry_addr1;
+
+/* Upper limit of start address in sframe_frame_row_entry_addr1
+ is 0x100 (not inclusive). */
+#define SFRAME_FRE_TYPE_ADDR1_LIMIT \
+ (1ULL << ((SFRAME_FRE_TYPE_ADDR1 + 1) * 8))
+
+/* Used when SFRAME_FRE_TYPE_ADDR2 is specified as FRE type. */
+typedef struct sframe_frame_row_entry_addr2
+{
+ /* Start address of the frame row entry. Encoded as an 2-byte unsigned
+ offset, relative to the start address of the function. */
+ uint16_t sfre_start_address;
+ sframe_fre_info sfre_info;
+} __attribute__ ((packed)) sframe_frame_row_entry_addr2;
+
+/* Upper limit of start address in sframe_frame_row_entry_addr2
+ is 0x10000 (not inclusive). */
+#define SFRAME_FRE_TYPE_ADDR2_LIMIT \
+ (1ULL << ((SFRAME_FRE_TYPE_ADDR2 * 2) * 8))
+
+/* Used when SFRAME_FRE_TYPE_ADDR4 is specified as FRE type. */
+typedef struct sframe_frame_row_entry_addr4
+{
+ /* Start address of the frame row entry. Encoded as a 4-byte unsigned
+ offset, relative to the start address of the function. */
+ uint32_t sfre_start_address;
+ sframe_fre_info sfre_info;
+} __attribute__ ((packed)) sframe_frame_row_entry_addr4;
+
+/* Upper limit of start address in sframe_frame_row_entry_addr2
+ is 0x100000000 (not inclusive). */
+#define SFRAME_FRE_TYPE_ADDR4_LIMIT \
+ (1ULL << ((SFRAME_FRE_TYPE_ADDR4 * 2) * 8))
+
+/* Used to pass frame information to stack trace routine. */
+typedef struct cframe
+{
+ _Unwind_Ptr pc;
+ _Unwind_Ptr sp;
+ _Unwind_Ptr fp;
+} frame;
+
+/* SFrame stack tracing support. */
+int __stacktrace_sframe (void **, int, frame *);
+libc_hidden_proto (__stacktrace_sframe);
+
+/* Helper used by SFrame tracing algorithm. */
+_Unwind_Ptr __getPC (void);
+libc_hidden_proto (__getPC);
+
+/* Helper used by SFrame tracing algorithm. */
+_Unwind_Ptr __getSP (void);
+libc_hidden_proto (__getSP);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _SFRAME_H */
diff --git a/sysdeps/generic/sysdep.h b/sysdeps/generic/sysdep.h
index 4c0dda4..ef5eba2 100644
--- a/sysdeps/generic/sysdep.h
+++ b/sysdeps/generic/sysdep.h
@@ -45,6 +45,7 @@
# define cfi_adjust_cfa_offset(off) .cfi_adjust_cfa_offset off
# define cfi_offset(reg, off) .cfi_offset reg, off
# define cfi_rel_offset(reg, off) .cfi_rel_offset reg, off
+# define cfi_val_offset(reg, off) .cfi_val_offset reg, off
# define cfi_register(r1, r2) .cfi_register r1, r2
# define cfi_return_column(reg) .cfi_return_column reg
# define cfi_restore(reg) .cfi_restore reg
@@ -74,6 +75,8 @@
".cfi_offset " CFI_STRINGIFY(reg) "," CFI_STRINGIFY(off)
# define CFI_REL_OFFSET(reg, off) \
".cfi_rel_offset " CFI_STRINGIFY(reg) "," CFI_STRINGIFY(off)
+# define CFI_VAL_OFFSET(reg, off) \
+ ".cfi_val_offset " CFI_STRINGIFY(reg) "," CFI_STRINGIFY(off)
# define CFI_REGISTER(r1, r2) \
".cfi_register " CFI_STRINGIFY(r1) "," CFI_STRINGIFY(r2)
# define CFI_RETURN_COLUMN(reg) \
diff --git a/sysdeps/generic/uw-sigframe.h b/sysdeps/generic/uw-sigframe.h
new file mode 100644
index 0000000..b357f8a
--- /dev/null
+++ b/sysdeps/generic/uw-sigframe.h
@@ -0,0 +1,31 @@
+/* Internal header file for handling signal frames. Generic version.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+/* Each architecture that supports SFrame may need to define several
+ macros to handle exceptional cases during stack backtracing.
+
+ MD_DECODE_SIGNAL_FRAME(frame) should recover frame information when
+ a signal-related exception occurs. The input frame must contain a
+ valid program counter (PC) field. On success, the macro should
+ return _URC_NO_REASON.
+
+ MD_DETECT_OUTERMOST_FRAME(frame) is used to detect the outermost
+ stack frame. It returns _URC_NO_REASON upon successful
+ detection.
+
+ The FRAME structure is defined in sysdeps/generic/sframe.h */
diff --git a/sysdeps/gnu/netinet/tcp.h b/sysdeps/gnu/netinet/tcp.h
index b2acbb4..7a3500b 100644
--- a/sysdeps/gnu/netinet/tcp.h
+++ b/sysdeps/gnu/netinet/tcp.h
@@ -212,6 +212,9 @@ enum
# define TCPI_OPT_ECN 8 /* ECN was negotiated at TCP session init */
# define TCPI_OPT_ECN_SEEN 16 /* we received at least one packet with ECT */
# define TCPI_OPT_SYN_DATA 32 /* SYN-ACK acked data in SYN sent or rcvd */
+# define TCPI_OPT_USEC_TS 64 /* usec timestamps */
+# define TCPI_OPT_TFO_CHILD 128 /* child from a Fast Open option on SYN */
+
/* Values for tcpi_state. */
enum tcp_ca_state
diff --git a/sysdeps/htl/include/bits/cancelation.h b/sysdeps/htl/include/bits/cancelation.h
new file mode 100644
index 0000000..ef2cd70
--- /dev/null
+++ b/sysdeps/htl/include/bits/cancelation.h
@@ -0,0 +1,5 @@
+#include_next <bits/cancelation.h>
+
+#ifndef _ISOMAC
+#include <pthreadP.h>
+#endif
diff --git a/sysdeps/htl/libc-lock.h b/sysdeps/htl/libc-lock.h
index 66779b9..8e764a7 100644
--- a/sysdeps/htl/libc-lock.h
+++ b/sysdeps/htl/libc-lock.h
@@ -37,13 +37,10 @@
{ \
__handler.__handler = FCT; \
__handler.__arg = ARG; \
- if (__pthread_get_cleanup_stack != NULL) \
- { \
- __handlers = __pthread_get_cleanup_stack (); \
- __handler.__next = *__handlers; \
- *__handlers = &__handler; \
- __registered = 1; \
- } \
+ __handlers = __pthread_get_cleanup_stack (); \
+ __handler.__next = *__handlers; \
+ *__handlers = &__handler; \
+ __registered = 1; \
} \
#define __libc_cleanup_end(DOIT) \
@@ -59,12 +56,4 @@
#define __libc_cleanup_push(fct, arg) __libc_cleanup_region_start (1, fct, arg)
#define __libc_cleanup_pop(execute) __libc_cleanup_region_end (execute)
-#if !IS_IN (libpthread)
-# ifdef weak_extern
-weak_extern (__pthread_get_cleanup_stack)
-# else
-# pragma weak __pthread_get_cleanup_stack
-# endif
-#endif
-
#endif
diff --git a/sysdeps/htl/libc-lockP.h b/sysdeps/htl/libc-lockP.h
index 092eb35..e9977e4 100644
--- a/sysdeps/htl/libc-lockP.h
+++ b/sysdeps/htl/libc-lockP.h
@@ -126,15 +126,9 @@ libc_hidden_proto (__pthread_setcancelstate)
single-threaded processes. */
#if !defined(__NO_WEAK_PTHREAD_ALIASES) && !IS_IN (libpthread)
# ifdef weak_extern
-weak_extern (__pthread_key_create)
-weak_extern (__pthread_setspecific)
-weak_extern (__pthread_getspecific)
weak_extern (__pthread_initialize)
weak_extern (__pthread_atfork)
# else
-# pragma weak __pthread_key_create
-# pragma weak __pthread_setspecific
-# pragma weak __pthread_getspecific
# pragma weak __pthread_initialize
# pragma weak __pthread_atfork
# endif
diff --git a/sysdeps/htl/pt-destroy-specific.c b/sysdeps/htl/pt-destroy-specific.c
index e63b807..b5eb0ba 100644
--- a/sysdeps/htl/pt-destroy-specific.c
+++ b/sysdeps/htl/pt-destroy-specific.c
@@ -20,6 +20,7 @@
#include <stdlib.h>
#include <pt-internal.h>
+#include <string.h>
void
__pthread_destroy_specific (struct __pthread *thread)
@@ -100,3 +101,4 @@ __pthread_destroy_specific (struct __pthread *thread)
memset (&thread->static_thread_specifics, 0,
sizeof (thread->static_thread_specifics));
}
+libc_hidden_def (__pthread_destroy_specific)
diff --git a/sysdeps/htl/pt-getspecific.c b/sysdeps/htl/pt-getspecific.c
index 0052ce8..d3ebb31 100644
--- a/sysdeps/htl/pt-getspecific.c
+++ b/sysdeps/htl/pt-getspecific.c
@@ -19,6 +19,7 @@
#include <pthread.h>
#include <pt-internal.h>
+#include <shlib-compat.h>
void *
__pthread_getspecific (pthread_key_t key)
@@ -42,5 +43,9 @@ __pthread_getspecific (pthread_key_t key)
return self->thread_specifics[key];
}
-weak_alias (__pthread_getspecific, pthread_getspecific);
-hidden_def (__pthread_getspecific)
+libc_hidden_def (__pthread_getspecific)
+versioned_symbol (libc, __pthread_getspecific, pthread_getspecific, GLIBC_2_42);
+
+#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)
+compat_symbol (libpthread, __pthread_getspecific, pthread_getspecific, GLIBC_2_12);
+#endif
diff --git a/sysdeps/htl/pt-key-create.c b/sysdeps/htl/pt-key-create.c
index cf8a8d1..92a9db8 100644
--- a/sysdeps/htl/pt-key-create.c
+++ b/sysdeps/htl/pt-key-create.c
@@ -22,6 +22,9 @@
#include <pt-internal.h>
#include <pthreadP.h>
+#include <shlib-compat.h>
+#include <ldsodefs.h>
+
pthread_mutex_t __pthread_key_lock;
pthread_once_t __pthread_key_once = PTHREAD_ONCE_INIT;
@@ -116,5 +119,9 @@ do_search:
__pthread_mutex_unlock (&__pthread_key_lock);
return 0;
}
-weak_alias (__pthread_key_create, pthread_key_create)
-hidden_def (__pthread_key_create)
+libc_hidden_def (__pthread_key_create)
+versioned_symbol (libc, __pthread_key_create, pthread_key_create, GLIBC_2_42);
+
+#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)
+compat_symbol (libpthread, __pthread_key_create, pthread_key_create, GLIBC_2_12);
+#endif
diff --git a/sysdeps/htl/pt-key-delete.c b/sysdeps/htl/pt-key-delete.c
index 79879e9..666314f 100644
--- a/sysdeps/htl/pt-key-delete.c
+++ b/sysdeps/htl/pt-key-delete.c
@@ -19,6 +19,8 @@
#include <pthread.h>
#include <pt-internal.h>
+#include <shlib-compat.h>
+#include <ldsodefs.h>
int
__pthread_key_delete (pthread_key_t key)
@@ -69,4 +71,9 @@ __pthread_key_delete (pthread_key_t key)
return err;
}
-weak_alias (__pthread_key_delete, pthread_key_delete)
+libc_hidden_def (__pthread_key_delete)
+versioned_symbol (libc, __pthread_key_delete, pthread_key_delete, GLIBC_2_42);
+
+#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)
+compat_symbol (libpthread, __pthread_key_delete, pthread_key_delete, GLIBC_2_12);
+#endif
diff --git a/sysdeps/htl/pt-setspecific.c b/sysdeps/htl/pt-setspecific.c
index dfd55b6..0535225 100644
--- a/sysdeps/htl/pt-setspecific.c
+++ b/sysdeps/htl/pt-setspecific.c
@@ -19,6 +19,8 @@
#include <pthread.h>
#include <pt-internal.h>
+#include <shlib-compat.h>
+#include <string.h>
int
__pthread_setspecific (pthread_key_t key, const void *value)
@@ -68,5 +70,9 @@ __pthread_setspecific (pthread_key_t key, const void *value)
self->thread_specifics[key] = (void *) value;
return 0;
}
-weak_alias (__pthread_setspecific, pthread_setspecific);
-hidden_def (__pthread_setspecific)
+libc_hidden_def (__pthread_setspecific)
+versioned_symbol (libc, __pthread_setspecific, pthread_setspecific, GLIBC_2_42);
+
+#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42)
+compat_symbol (libpthread, __pthread_setspecific, pthread_setspecific, GLIBC_2_12);
+#endif
diff --git a/sysdeps/htl/pthread-functions.h b/sysdeps/htl/pthread-functions.h
index 467d031..aec13a6 100644
--- a/sysdeps/htl/pthread-functions.h
+++ b/sysdeps/htl/pthread-functions.h
@@ -22,11 +22,6 @@
#include <pthread.h>
void __pthread_exit (void *) __attribute__ ((__noreturn__));
-struct __pthread_cancelation_handler **__pthread_get_cleanup_stack (void);
-int __pthread_once (pthread_once_t *, void (*) (void));
-int __pthread_key_create (pthread_key_t *, void (*) (void *));
-void *__pthread_getspecific (pthread_key_t);
-int __pthread_setspecific (pthread_key_t, const void *);
void _cthreads_flockfile (FILE *);
void _cthreads_funlockfile (FILE *);
@@ -38,11 +33,6 @@ int _cthreads_ftrylockfile (FILE *);
struct pthread_functions
{
void (*ptr___pthread_exit) (void *) __attribute__ ((__noreturn__));
- struct __pthread_cancelation_handler **(*ptr___pthread_get_cleanup_stack) (void);
- int (*ptr_pthread_once) (pthread_once_t *, void (*) (void));
- int (*ptr___pthread_key_create) (pthread_key_t *, void (*) (void *));
- void *(*ptr___pthread_getspecific) (pthread_key_t);
- int (*ptr___pthread_setspecific) (pthread_key_t, const void *);
void (*ptr__IO_flockfile) (FILE *);
void (*ptr__IO_funlockfile) (FILE *);
int (*ptr__IO_ftrylockfile) (FILE *);
diff --git a/sysdeps/htl/pthreadP.h b/sysdeps/htl/pthreadP.h
index 535deeb..535740f 100644
--- a/sysdeps/htl/pthreadP.h
+++ b/sysdeps/htl/pthreadP.h
@@ -182,9 +182,13 @@ int __cthread_keycreate (__cthread_key_t *);
int __cthread_getspecific (__cthread_key_t, void **);
int __cthread_setspecific (__cthread_key_t, void *);
int __pthread_key_create (pthread_key_t *key, void (*destr) (void *));
+libc_hidden_proto (__pthread_key_create)
void *__pthread_getspecific (pthread_key_t key);
+libc_hidden_proto (__pthread_getspecific)
int __pthread_setspecific (pthread_key_t key, const void *value);
+libc_hidden_proto (__pthread_setspecific)
int __pthread_key_delete (pthread_key_t key);
+libc_hidden_proto (__pthread_key_delete)
int __pthread_once (pthread_once_t *once_control, void (*init_routine) (void));
int __pthread_getattr_np (pthread_t, pthread_attr_t *);
@@ -212,14 +216,11 @@ int __pthread_condattr_init (pthread_condattr_t *attr);
libc_hidden_proto (__pthread_self)
libc_hidden_proto (__pthread_attr_init)
libc_hidden_proto (__pthread_condattr_init)
+libc_hidden_proto (__pthread_get_cleanup_stack)
#if IS_IN (libpthread)
hidden_proto (__pthread_create)
hidden_proto (__pthread_detach)
-hidden_proto (__pthread_key_create)
-hidden_proto (__pthread_getspecific)
-hidden_proto (__pthread_setspecific)
-hidden_proto (__pthread_get_cleanup_stack)
#endif
#if !defined(__NO_WEAK_PTHREAD_ALIASES) && !IS_IN (libpthread)
diff --git a/sysdeps/i386/Makefile b/sysdeps/i386/Makefile
index a2e8c0b..74068ea 100644
--- a/sysdeps/i386/Makefile
+++ b/sysdeps/i386/Makefile
@@ -17,20 +17,25 @@ ifeq ($(subdir),gmon)
sysdep_routines += i386-mcount
endif
-ifeq ($(subdir),elf)
-CFLAGS-rtld.c += -Wno-uninitialized -Wno-unused
-CFLAGS-dl-load.c += -Wno-unused
-CFLAGS-dl-reloc.c += -Wno-unused
-endif
-
ifeq ($(subdir),csu)
gen-as-const-headers += link-defines.sym
+gen-as-const-headers += tlsdesc.sym
else
stack-align-test-flags += -malign-double
endif
+# Make sure no code in ld.so uses mm/xmm/ymm/zmm registers on i386 since
+# the first 3 mm/xmm/ymm/zmm registers are used to pass vector parameters
+# which must be preserved.
+# With SSE disabled, ensure -fpmath is not set to use sse either.
+rtld-CFLAGS += -mno-sse -mno-mmx -mfpmath=387
ifeq ($(subdir),elf)
-sysdep-dl-routines += tlsdesc dl-tlsdesc
+CFLAGS-rtld.c += -Wno-uninitialized -Wno-unused
+CFLAGS-dl-load.c += -Wno-unused
+CFLAGS-dl-reloc.c += -Wno-unused
+sysdep-dl-routines += \
+ dl-tls-get-addr \
+# sysdep-dl-routines
tests += tst-audit3
modules-names += tst-auditmod3a tst-auditmod3b
@@ -38,18 +43,6 @@ modules-names += tst-auditmod3a tst-auditmod3b
$(objpfx)tst-audit3: $(objpfx)tst-auditmod3a.so
$(objpfx)tst-audit3.out: $(objpfx)tst-auditmod3b.so
tst-audit3-ENV = LD_AUDIT=$(objpfx)tst-auditmod3b.so
-endif
-
-ifeq ($(subdir),csu)
-gen-as-const-headers += tlsdesc.sym
-endif
-
-# Make sure no code in ld.so uses mm/xmm/ymm/zmm registers on i386 since
-# the first 3 mm/xmm/ymm/zmm registers are used to pass vector parameters
-# which must be preserved.
-# With SSE disabled, ensure -fpmath is not set to use sse either.
-rtld-CFLAGS += -mno-sse -mno-mmx -mfpmath=387
-ifeq ($(subdir),elf)
CFLAGS-.os += $(if $(filter $(@F),$(patsubst %,%.os,$(all-rtld-routines))),\
$(rtld-CFLAGS))
diff --git a/sysdeps/i386/dl-tls-get-addr.c b/sysdeps/i386/dl-tls-get-addr.c
new file mode 100644
index 0000000..c97e5c5
--- /dev/null
+++ b/sysdeps/i386/dl-tls-get-addr.c
@@ -0,0 +1,68 @@
+/* Ifunc selector for ___tls_get_addr.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#ifdef SHARED
+# define ___tls_get_addr __redirect____tls_get_addr
+# include <dl-tls.h>
+# undef ___tls_get_addr
+# undef __tls_get_addr
+
+# define SYMBOL_NAME ___tls_get_addr
+# include <init-arch.h>
+
+extern __typeof (REDIRECT_NAME) OPTIMIZE (fnsave) attribute_hidden;
+extern __typeof (REDIRECT_NAME) OPTIMIZE (fxsave) attribute_hidden;
+extern __typeof (REDIRECT_NAME) OPTIMIZE (xsave) attribute_hidden;
+extern __typeof (REDIRECT_NAME) OPTIMIZE (xsavec) attribute_hidden;
+
+static inline void *
+IFUNC_SELECTOR (void)
+{
+ const struct cpu_features* cpu_features = __get_cpu_features ();
+
+ if (cpu_features->xsave_state_size != 0)
+ {
+ if (CPU_FEATURE_USABLE_P (cpu_features, XSAVEC))
+ return OPTIMIZE (xsavec);
+ else
+ return OPTIMIZE (xsave);
+ }
+ else if (CPU_FEATURE_USABLE_P (cpu_features, FXSR))
+ return OPTIMIZE (fxsave);
+ return OPTIMIZE (fnsave);
+}
+
+libc_ifunc_redirected (__redirect____tls_get_addr, ___tls_get_addr,
+ IFUNC_SELECTOR ());
+
+/* The special thing about the x86 TLS ABI is that we have two
+ variants of the __tls_get_addr function with different calling
+ conventions. The GNU version, which we are mostly concerned here,
+ takes the parameter in a register. The name is changed by adding
+ an additional underscore at the beginning. The Sun version uses
+ the normal calling convention. */
+
+rtld_hidden_proto (___tls_get_addr)
+rtld_hidden_def (___tls_get_addr)
+
+void *
+__tls_get_addr (tls_index *ti)
+{
+ return ___tls_get_addr (ti);
+}
+#endif
diff --git a/sysdeps/i386/dl-tls.h b/sysdeps/i386/dl-tls.h
index f453931..ef605c5 100644
--- a/sysdeps/i386/dl-tls.h
+++ b/sysdeps/i386/dl-tls.h
@@ -37,34 +37,14 @@ typedef struct dl_tls_index
/* This is the prototype for the GNU version. */
extern void *___tls_get_addr (tls_index *ti)
__attribute__ ((__regparm__ (1)));
-extern void *___tls_get_addr_internal (tls_index *ti)
- __attribute__ ((__regparm__ (1))) attribute_hidden;
-
# if IS_IN (rtld)
-/* The special thing about the x86 TLS ABI is that we have two
- variants of the __tls_get_addr function with different calling
- conventions. The GNU version, which we are mostly concerned here,
- takes the parameter in a register. The name is changed by adding
- an additional underscore at the beginning. The Sun version uses
- the normal calling convention. */
-void *
-__tls_get_addr (tls_index *ti)
-{
- return ___tls_get_addr_internal (ti);
-}
-
-
/* Prepare using the definition of __tls_get_addr in the generic
version of this file. */
-# define __tls_get_addr __attribute__ ((__regparm__ (1))) ___tls_get_addr
-strong_alias (___tls_get_addr, ___tls_get_addr_internal)
-rtld_hidden_proto (___tls_get_addr)
-rtld_hidden_def (___tls_get_addr)
-#else
-
+# define __tls_get_addr \
+ __attribute__ ((__regparm__ (1))) ___tls_get_addr_internal
+# else
/* Users should get the better interface. */
-# define __tls_get_addr ___tls_get_addr
-
+# define __tls_get_addr ___tls_get_addr
# endif
#endif
diff --git a/sysdeps/i386/dl-tlsdesc-dynamic.h b/sysdeps/i386/dl-tlsdesc-dynamic.h
index 6aec06d..be9ecd6 100644
--- a/sysdeps/i386/dl-tlsdesc-dynamic.h
+++ b/sysdeps/i386/dl-tlsdesc-dynamic.h
@@ -16,34 +16,6 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
-#undef REGISTER_SAVE_AREA
-
-#if !defined USE_FNSAVE && (STATE_SAVE_ALIGNMENT % 16) != 0
-# error STATE_SAVE_ALIGNMENT must be multiple of 16
-#endif
-
-#if DL_RUNTIME_RESOLVE_REALIGN_STACK
-# ifdef USE_FNSAVE
-# error USE_FNSAVE shouldn't be defined
-# endif
-# ifdef USE_FXSAVE
-/* Use fxsave to save all registers. */
-# define REGISTER_SAVE_AREA 512
-# endif
-#else
-# ifdef USE_FNSAVE
-/* Use fnsave to save x87 FPU stack registers. */
-# define REGISTER_SAVE_AREA 108
-# else
-# ifndef USE_FXSAVE
-# error USE_FXSAVE must be defined
-# endif
-/* Use fxsave to save all registers. Add 12 bytes to align the stack
- to 16 bytes. */
-# define REGISTER_SAVE_AREA (512 + 12)
-# endif
-#endif
-
.hidden _dl_tlsdesc_dynamic
.global _dl_tlsdesc_dynamic
.type _dl_tlsdesc_dynamic,@function
@@ -104,85 +76,7 @@ _dl_tlsdesc_dynamic:
ret
.p2align 4,,7
2:
- cfi_adjust_cfa_offset (32)
-#if DL_RUNTIME_RESOLVE_REALIGN_STACK
- movl %ebx, -28(%esp)
- movl %esp, %ebx
- cfi_def_cfa_register(%ebx)
- and $-STATE_SAVE_ALIGNMENT, %esp
-#endif
-#ifdef REGISTER_SAVE_AREA
- subl $REGISTER_SAVE_AREA, %esp
-# if !DL_RUNTIME_RESOLVE_REALIGN_STACK
- cfi_adjust_cfa_offset(REGISTER_SAVE_AREA)
-# endif
-#else
-# if !DL_RUNTIME_RESOLVE_REALIGN_STACK
-# error DL_RUNTIME_RESOLVE_REALIGN_STACK must be true
-# endif
- /* Allocate stack space of the required size to save the state. */
- LOAD_PIC_REG (cx)
- subl RTLD_GLOBAL_RO_DL_X86_CPU_FEATURES_OFFSET+XSAVE_STATE_SIZE_OFFSET+_rtld_local_ro@GOTOFF(%ecx), %esp
-#endif
-#ifdef USE_FNSAVE
- fnsave (%esp)
-#elif defined USE_FXSAVE
- fxsave (%esp)
-#else
- /* Save the argument for ___tls_get_addr in EAX. */
- movl %eax, %ecx
- movl $TLSDESC_CALL_STATE_SAVE_MASK, %eax
- xorl %edx, %edx
- /* Clear the XSAVE Header. */
-# ifdef USE_XSAVE
- movl %edx, (512)(%esp)
- movl %edx, (512 + 4 * 1)(%esp)
- movl %edx, (512 + 4 * 2)(%esp)
- movl %edx, (512 + 4 * 3)(%esp)
-# endif
- movl %edx, (512 + 4 * 4)(%esp)
- movl %edx, (512 + 4 * 5)(%esp)
- movl %edx, (512 + 4 * 6)(%esp)
- movl %edx, (512 + 4 * 7)(%esp)
- movl %edx, (512 + 4 * 8)(%esp)
- movl %edx, (512 + 4 * 9)(%esp)
- movl %edx, (512 + 4 * 10)(%esp)
- movl %edx, (512 + 4 * 11)(%esp)
- movl %edx, (512 + 4 * 12)(%esp)
- movl %edx, (512 + 4 * 13)(%esp)
- movl %edx, (512 + 4 * 14)(%esp)
- movl %edx, (512 + 4 * 15)(%esp)
-# ifdef USE_XSAVE
- xsave (%esp)
-# else
- xsavec (%esp)
-# endif
- /* Restore the argument for ___tls_get_addr in EAX. */
- movl %ecx, %eax
-#endif
- call HIDDEN_JUMPTARGET (___tls_get_addr)
- /* Get register content back. */
-#ifdef USE_FNSAVE
- frstor (%esp)
-#elif defined USE_FXSAVE
- fxrstor (%esp)
-#else
- /* Save and retore ___tls_get_addr return value stored in EAX. */
- movl %eax, %ecx
- movl $TLSDESC_CALL_STATE_SAVE_MASK, %eax
- xorl %edx, %edx
- xrstor (%esp)
- movl %ecx, %eax
-#endif
-#if DL_RUNTIME_RESOLVE_REALIGN_STACK
- mov %ebx, %esp
- cfi_def_cfa_register(%esp)
- movl -28(%esp), %ebx
- cfi_restore(%ebx)
-#else
- addl $REGISTER_SAVE_AREA, %esp
- cfi_adjust_cfa_offset(-REGISTER_SAVE_AREA)
-#endif
+#include "tls-get-addr-wrapper.h"
jmp 1b
cfi_endproc
.size _dl_tlsdesc_dynamic, .-_dl_tlsdesc_dynamic
diff --git a/sysdeps/i386/dl-tlsdesc.S b/sysdeps/i386/dl-tlsdesc.S
index c080993..c914ca4 100644
--- a/sysdeps/i386/dl-tlsdesc.S
+++ b/sysdeps/i386/dl-tlsdesc.S
@@ -22,23 +22,6 @@
#include <features-offsets.h>
#include "tlsdesc.h"
-#ifndef DL_STACK_ALIGNMENT
-/* Due to GCC bug:
-
- https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58066
-
- __tls_get_addr may be called with 4-byte stack alignment. Although
- this bug has been fixed in GCC 4.9.4, 5.3 and 6, we can't assume
- that stack will be always aligned at 16 bytes. */
-# define DL_STACK_ALIGNMENT 4
-#endif
-
-/* True if _dl_tlsdesc_dynamic should align stack for STATE_SAVE or align
- stack to MINIMUM_ALIGNMENT bytes before calling ___tls_get_addr. */
-#define DL_RUNTIME_RESOLVE_REALIGN_STACK \
- (STATE_SAVE_ALIGNMENT > DL_STACK_ALIGNMENT \
- || MINIMUM_ALIGNMENT > DL_STACK_ALIGNMENT)
-
.text
/* This function is used to compute the TP offset for symbols in
diff --git a/sysdeps/i386/fpu/e_ilogb.S b/sysdeps/i386/fpu/e_ilogb.S
deleted file mode 100644
index f4b792c..0000000
--- a/sysdeps/i386/fpu/e_ilogb.S
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Public domain.
- */
-
-#include <machine/asm.h>
-
-RCSID("$NetBSD: s_ilogb.S,v 1.5 1995/10/12 15:53:09 jtc Exp $")
-
-ENTRY(__ieee754_ilogb)
- fldl 4(%esp)
-/* I added the following ugly construct because ilogb(+-Inf) is
- required to return INT_MAX in ISO C99.
- -- jakub@redhat.com. */
- fxam /* Is NaN or +-Inf? */
- fstsw %ax
- movb $0x45, %dh
- andb %ah, %dh
- cmpb $0x05, %dh
- je 1f /* Is +-Inf, jump. */
- cmpb $0x40, %dh
- je 2f /* Is +-0, jump. */
-
- fxtract
- pushl %eax
- cfi_adjust_cfa_offset (4)
- fstp %st
-
- fistpl (%esp)
- fwait
- popl %eax
- cfi_adjust_cfa_offset (-4)
-
- ret
-
-1: fstp %st
- movl $0x7fffffff, %eax
- ret
-2: fstp %st
- movl $0x80000000, %eax /* FP_ILOGB0 */
- ret
-END (__ieee754_ilogb)
diff --git a/sysdeps/i386/fpu/e_ilogbf.S b/sysdeps/i386/fpu/e_ilogbf.S
deleted file mode 100644
index 37298b9..0000000
--- a/sysdeps/i386/fpu/e_ilogbf.S
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Public domain.
- */
-
-#include <machine/asm.h>
-
-RCSID("$NetBSD: s_ilogbf.S,v 1.4 1995/10/22 20:32:43 pk Exp $")
-
-ENTRY(__ieee754_ilogbf)
- flds 4(%esp)
-/* I added the following ugly construct because ilogb(+-Inf) is
- required to return INT_MAX in ISO C99.
- -- jakub@redhat.com. */
- fxam /* Is NaN or +-Inf? */
- fstsw %ax
- movb $0x45, %dh
- andb %ah, %dh
- cmpb $0x05, %dh
- je 1f /* Is +-Inf, jump. */
- cmpb $0x40, %dh
- je 2f /* Is +-0, jump. */
-
- fxtract
- pushl %eax
- cfi_adjust_cfa_offset (4)
- fstp %st
-
- fistpl (%esp)
- fwait
- popl %eax
- cfi_adjust_cfa_offset (-4)
-
- ret
-
-1: fstp %st
- movl $0x7fffffff, %eax
- ret
-2: fstp %st
- movl $0x80000000, %eax /* FP_ILOGB0 */
- ret
-END (__ieee754_ilogbf)
diff --git a/sysdeps/i386/fpu/math_err.c b/sysdeps/i386/fpu/math_err.c
deleted file mode 100644
index 1cc8931..0000000
--- a/sysdeps/i386/fpu/math_err.c
+++ /dev/null
@@ -1 +0,0 @@
-/* Not needed. */
diff --git a/sysdeps/i386/tls-get-addr-wrapper.h b/sysdeps/i386/tls-get-addr-wrapper.h
new file mode 100644
index 0000000..0708e5a
--- /dev/null
+++ b/sysdeps/i386/tls-get-addr-wrapper.h
@@ -0,0 +1,127 @@
+/* Wrapper of i386 ___tls_get_addr to save and restore vector registers.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#undef REGISTER_SAVE_AREA
+
+#if !defined USE_FNSAVE && (STATE_SAVE_ALIGNMENT % 16) != 0
+# error STATE_SAVE_ALIGNMENT must be multiple of 16
+#endif
+
+#if DL_RUNTIME_RESOLVE_REALIGN_STACK
+# ifdef USE_FNSAVE
+# error USE_FNSAVE shouldn't be defined
+# endif
+# ifdef USE_FXSAVE
+/* Use fxsave to save all registers. */
+# define REGISTER_SAVE_AREA 512
+# endif
+#else
+# ifdef USE_FNSAVE
+/* Use fnsave to save x87 FPU stack registers. */
+# define REGISTER_SAVE_AREA 108
+# else
+# ifndef USE_FXSAVE
+# error USE_FXSAVE must be defined
+# endif
+/* Use fxsave to save all registers. Add 12 bytes to align the stack
+ to 16 bytes. */
+# define REGISTER_SAVE_AREA (512 + 12)
+# endif
+#endif
+
+#if DL_RUNTIME_RESOLVE_REALIGN_STACK
+ movl %ebx, 28(%esp)
+ movl %esp, %ebx
+ cfi_def_cfa_register(%ebx)
+ and $-STATE_SAVE_ALIGNMENT, %esp
+#endif
+#ifdef REGISTER_SAVE_AREA
+ subl $REGISTER_SAVE_AREA, %esp
+# if !DL_RUNTIME_RESOLVE_REALIGN_STACK
+ cfi_adjust_cfa_offset(REGISTER_SAVE_AREA)
+# endif
+#else
+# if !DL_RUNTIME_RESOLVE_REALIGN_STACK
+# error DL_RUNTIME_RESOLVE_REALIGN_STACK must be true
+# endif
+ /* Allocate stack space of the required size to save the state. */
+ LOAD_PIC_REG (cx)
+ subl RTLD_GLOBAL_RO_DL_X86_CPU_FEATURES_OFFSET \
+ +XSAVE_STATE_SIZE_OFFSET+_rtld_local_ro@GOTOFF(%ecx), %esp
+#endif
+#ifdef USE_FNSAVE
+ fnsave (%esp)
+#elif defined USE_FXSAVE
+ fxsave (%esp)
+#else
+ /* Save the argument for ___tls_get_addr in EAX. */
+ movl %eax, %ecx
+ movl $TLSDESC_CALL_STATE_SAVE_MASK, %eax
+ xorl %edx, %edx
+ /* Clear the XSAVE Header. */
+# ifdef USE_XSAVE
+ movl %edx, (512)(%esp)
+ movl %edx, (512 + 4 * 1)(%esp)
+ movl %edx, (512 + 4 * 2)(%esp)
+ movl %edx, (512 + 4 * 3)(%esp)
+# endif
+ movl %edx, (512 + 4 * 4)(%esp)
+ movl %edx, (512 + 4 * 5)(%esp)
+ movl %edx, (512 + 4 * 6)(%esp)
+ movl %edx, (512 + 4 * 7)(%esp)
+ movl %edx, (512 + 4 * 8)(%esp)
+ movl %edx, (512 + 4 * 9)(%esp)
+ movl %edx, (512 + 4 * 10)(%esp)
+ movl %edx, (512 + 4 * 11)(%esp)
+ movl %edx, (512 + 4 * 12)(%esp)
+ movl %edx, (512 + 4 * 13)(%esp)
+ movl %edx, (512 + 4 * 14)(%esp)
+ movl %edx, (512 + 4 * 15)(%esp)
+# ifdef USE_XSAVE
+ xsave (%esp)
+# else
+ xsavec (%esp)
+# endif
+ /* Restore the argument for ___tls_get_addr in EAX. */
+ movl %ecx, %eax
+#endif
+ call ___tls_get_addr_internal
+ /* Get register content back. */
+#ifdef USE_FNSAVE
+ frstor (%esp)
+#elif defined USE_FXSAVE
+ fxrstor (%esp)
+#else
+ /* Save and retore ___tls_get_addr return value stored in EAX. */
+ movl %eax, %ecx
+ movl $TLSDESC_CALL_STATE_SAVE_MASK, %eax
+ xorl %edx, %edx
+ xrstor (%esp)
+ movl %ecx, %eax
+#endif
+#if DL_RUNTIME_RESOLVE_REALIGN_STACK
+ mov %ebx, %esp
+ cfi_def_cfa_register(%esp)
+ movl 28(%esp), %ebx
+ cfi_restore(%ebx)
+#else
+ addl $REGISTER_SAVE_AREA, %esp
+ cfi_adjust_cfa_offset(-REGISTER_SAVE_AREA)
+#endif
+
+#undef STATE_SAVE_ALIGNMENT
diff --git a/sysdeps/i386/tls_get_addr.S b/sysdeps/i386/tls_get_addr.S
new file mode 100644
index 0000000..7d143d8
--- /dev/null
+++ b/sysdeps/i386/tls_get_addr.S
@@ -0,0 +1,57 @@
+/* Thread-local storage handling in the ELF dynamic linker. i386 version.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <tls.h>
+#include <cpu-features-offsets.h>
+#include <features-offsets.h>
+
+ .text
+#ifdef SHARED
+# define USE_FNSAVE
+# define MINIMUM_ALIGNMENT 4
+# define STATE_SAVE_ALIGNMENT 4
+# define ___tls_get_addr _____tls_get_addr_fnsave
+# include "tls_get_addr.h"
+# undef ___tls_get_addr
+# undef MINIMUM_ALIGNMENT
+# undef USE_FNSAVE
+
+# define MINIMUM_ALIGNMENT 16
+
+# define USE_FXSAVE
+# define STATE_SAVE_ALIGNMENT 16
+# define ___tls_get_addr _____tls_get_addr_fxsave
+# include "tls_get_addr.h"
+# undef ___tls_get_addr
+# undef USE_FXSAVE
+
+# define USE_XSAVE
+# define STATE_SAVE_ALIGNMENT 64
+# define ___tls_get_addr _____tls_get_addr_xsave
+# include "tls_get_addr.h"
+# undef ___tls_get_addr
+# undef USE_XSAVE
+
+# define USE_XSAVEC
+# define STATE_SAVE_ALIGNMENT 64
+# define ___tls_get_addr _____tls_get_addr_xsavec
+# include "tls_get_addr.h"
+# undef ___tls_get_addr
+# undef USE_XSAVEC
+#endif /* SHARED */
diff --git a/sysdeps/i386/tls_get_addr.h b/sysdeps/i386/tls_get_addr.h
new file mode 100644
index 0000000..1825798
--- /dev/null
+++ b/sysdeps/i386/tls_get_addr.h
@@ -0,0 +1,42 @@
+/* Thread-local storage handling in the ELF dynamic linker. i386 version.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+ .hidden ___tls_get_addr
+ .global ___tls_get_addr
+ .type ___tls_get_addr,@function
+
+ /* This function is a wrapper of ___tls_get_addr_internal to
+ preserve caller-saved vector registers. */
+
+ cfi_startproc
+ .align 16
+___tls_get_addr:
+ /* Like all TLS resolvers, preserve call-clobbered registers.
+ We need two scratch regs anyway. */
+ subl $32, %esp
+ cfi_adjust_cfa_offset (32)
+ movl %ecx, 20(%esp)
+ movl %edx, 24(%esp)
+#include "tls-get-addr-wrapper.h"
+ movl 20(%esp), %ecx
+ movl 24(%esp), %edx
+ addl $32, %esp
+ cfi_adjust_cfa_offset (-32)
+ ret
+ cfi_endproc
+ .size ___tls_get_addr, .-___tls_get_addr
diff --git a/sysdeps/ieee754/dbl-64/e_ilogb.c b/sysdeps/ieee754/dbl-64/e_ilogb.c
index 1e338a5..1ea2f23 100644
--- a/sysdeps/ieee754/dbl-64/e_ilogb.c
+++ b/sysdeps/ieee754/dbl-64/e_ilogb.c
@@ -1,63 +1 @@
-/* @(#)s_ilogb.c 5.1 93/09/24 */
-/*
- * ====================================================
- * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
- *
- * Developed at SunPro, a Sun Microsystems, Inc. business.
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-#if defined(LIBM_SCCS) && !defined(lint)
-static char rcsid[] = "$NetBSD: s_ilogb.c,v 1.9 1995/05/10 20:47:28 jtc Exp $";
-#endif
-
-/* ilogb(double x)
- * return the binary exponent of non-zero x
- * ilogb(0) = FP_ILOGB0
- * ilogb(NaN) = FP_ILOGBNAN (no signal is raised)
- * ilogb(+-Inf) = INT_MAX (no signal is raised)
- */
-
-#include <limits.h>
-#include <math.h>
-#include <math_private.h>
-
-int
-__ieee754_ilogb (double x)
-{
- int32_t hx, lx, ix;
-
- GET_HIGH_WORD (hx, x);
- hx &= 0x7fffffff;
- if (hx < 0x00100000)
- {
- GET_LOW_WORD (lx, x);
- if ((hx | lx) == 0)
- return FP_ILOGB0; /* ilogb(0) = FP_ILOGB0 */
- else /* subnormal x */
- if (hx == 0)
- {
- for (ix = -1043; lx > 0; lx <<= 1)
- ix -= 1;
- }
- else
- {
- for (ix = -1022, hx <<= 11; hx > 0; hx <<= 1)
- ix -= 1;
- }
- return ix;
- }
- else if (hx < 0x7ff00000)
- return (hx >> 20) - 1023;
- else if (FP_ILOGBNAN != INT_MAX)
- {
- /* ISO C99 requires ilogb(+-Inf) == INT_MAX. */
- GET_LOW_WORD (lx, x);
- if (((hx ^ 0x7ff00000) | lx) == 0)
- return INT_MAX;
- }
- return FP_ILOGBNAN;
-}
+/* ilogb is implemented at w_ilogb.c */
diff --git a/sysdeps/ieee754/dbl-64/math_config.h b/sysdeps/ieee754/dbl-64/math_config.h
index 3382e38..d9288c4 100644
--- a/sysdeps/ieee754/dbl-64/math_config.h
+++ b/sysdeps/ieee754/dbl-64/math_config.h
@@ -109,6 +109,7 @@ issignaling_inline (double x)
#define BIT_WIDTH 64
#define MANTISSA_WIDTH 52
#define EXPONENT_WIDTH 11
+#define EXPONENT_BIAS 1023
#define MANTISSA_MASK UINT64_C(0x000fffffffffffff)
#define EXPONENT_MASK UINT64_C(0x7ff0000000000000)
#define EXP_MANT_MASK UINT64_C(0x7fffffffffffffff)
@@ -121,12 +122,24 @@ is_nan (uint64_t x)
return (x & EXP_MANT_MASK) > EXPONENT_MASK;
}
+static inline bool
+is_inf (uint64_t x)
+{
+ return (x << 1) == (EXPONENT_MASK << 1);
+}
+
static inline uint64_t
get_mantissa (uint64_t x)
{
return x & MANTISSA_MASK;
}
+static inline int
+get_exponent (uint64_t x)
+{
+ return (int)((x >> MANTISSA_WIDTH & 0x7ff) - EXPONENT_BIAS);
+}
+
/* Convert integer number X, unbiased exponent EP, and sign S to double:
result = X * 2^(EP+1 - exponent_bias)
@@ -164,6 +177,8 @@ attribute_hidden double __math_divzero (uint32_t);
/* Invalid input unless it is a quiet NaN. */
attribute_hidden double __math_invalid (double);
+attribute_hidden int __math_invalid_i (int);
+attribute_hidden long int __math_invalid_li (long int);
/* Error handling using output checking, only for errno setting. */
diff --git a/sysdeps/ieee754/dbl-64/math_err.c b/sysdeps/ieee754/dbl-64/math_err.c
index 4a07fd5..b8c645a 100644
--- a/sysdeps/ieee754/dbl-64/math_err.c
+++ b/sysdeps/ieee754/dbl-64/math_err.c
@@ -29,8 +29,24 @@ with_errno (double y, int e)
errno = e;
return y;
}
+
+NOINLINE static int
+with_errno_i (int y, int e)
+{
+ errno = e;
+ return y;
+}
+
+NOINLINE static long int
+with_errno_li (long int y, int e)
+{
+ errno = e;
+ return y;
+}
#else
#define with_errno(x, e) (x)
+#define with_errno_i(x, e) (x)
+#define with_errno_li(x, e) (x)
#endif
attribute_hidden double
@@ -83,6 +99,22 @@ __math_invalid (double x)
return isnan (x) ? y : with_errno (y, EDOM);
}
+attribute_hidden int
+__math_invalid_i (int r)
+{
+ double y = 0.0 / 0.0;
+ math_force_eval (y);
+ return with_errno_i (r, EDOM);
+}
+
+attribute_hidden long int
+__math_invalid_li (long int r)
+{
+ double y = 0.0 / 0.0;
+ math_force_eval (y);
+ return with_errno_li (r, EDOM);
+}
+
/* Check result and set errno if necessary. */
attribute_hidden double
diff --git a/sysdeps/ieee754/dbl-64/s_modf.c b/sysdeps/ieee754/dbl-64/s_modf.c
index 0de2084..90cd8e8 100644
--- a/sysdeps/ieee754/dbl-64/s_modf.c
+++ b/sysdeps/ieee754/dbl-64/s_modf.c
@@ -1,63 +1,68 @@
-/*
- * ====================================================
- * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
- *
- * Developed at SunPro, a Sun Microsystems, Inc. business.
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
+/* Extract signed integral and fractional values.
+ Copyright (C) 1993-2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
-/*
- * modf(double x, double *iptr)
- * return fraction part of x, and return x's integral part in *iptr.
- * Method:
- * Bit twiddling.
- *
- * Exception:
- * No exception.
- */
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
#include <math.h>
-#include <math_private.h>
#include <libm-alias-double.h>
-#include <stdint.h>
-
-static const double one = 1.0;
+#include "math_config.h"
+#include <math-use-builtins-trunc.h>
double
-__modf(double x, double *iptr)
+__modf (double x, double *iptr)
{
- int64_t i0;
- int32_t j0;
- EXTRACT_WORDS64(i0,x);
- j0 = ((i0>>52)&0x7ff)-0x3ff; /* exponent of x */
- if(j0<52) { /* integer part in x */
- if(j0<0) { /* |x|<1 */
- /* *iptr = +-0 */
- INSERT_WORDS64(*iptr,i0&UINT64_C(0x8000000000000000));
- return x;
- } else {
- uint64_t i = UINT64_C(0x000fffffffffffff)>>j0;
- if((i0&i)==0) { /* x is integral */
- *iptr = x;
- /* return +-0 */
- INSERT_WORDS64(x,i0&UINT64_C(0x8000000000000000));
- return x;
- } else {
- INSERT_WORDS64(*iptr,i0&(~i));
- return x - *iptr;
- }
- }
- } else { /* no fraction part */
- *iptr = x*one;
- /* We must handle NaNs separately. */
- if (j0 == 0x400 && (i0 & UINT64_C(0xfffffffffffff)))
- return x*one;
- INSERT_WORDS64(x,i0&UINT64_C(0x8000000000000000)); /* return +-0 */
- return x;
+ uint64_t t = asuint64 (x);
+#if USE_TRUNC_BUILTIN
+ if (is_inf (t))
+ {
+ *iptr = x;
+ return copysign (0.0, x);
+ }
+ *iptr = trunc (x);
+ return copysign (x - *iptr, x);
+#else
+ int e = get_exponent (t);
+ /* No fraction part. */
+ if (e < MANTISSA_WIDTH)
+ {
+ if (e < 0)
+ {
+ /* |x|<1 -> *iptr = +-0 */
+ *iptr = asdouble (t & SIGN_MASK);
+ return x;
+ }
+
+ uint64_t i = MANTISSA_MASK >> e;
+ if ((t & i) == 0)
+ {
+ /* x in integral, return +-0 */
+ *iptr = x;
+ return asdouble (t & SIGN_MASK);
}
+
+ *iptr = asdouble (t & ~i);
+ return x - *iptr;
+ }
+
+ /* Set invalid operation for sNaN. */
+ *iptr = x * 1.0;
+ if ((e == 0x400) && (t & MANTISSA_MASK))
+ return *iptr;
+ return asdouble (t & SIGN_MASK);
+#endif
}
#ifndef __modf
libm_alias_double (__modf, modf)
diff --git a/sysdeps/ieee754/dbl-64/w_ilogb-impl.h b/sysdeps/ieee754/dbl-64/w_ilogb-impl.h
new file mode 100644
index 0000000..c919735
--- /dev/null
+++ b/sysdeps/ieee754/dbl-64/w_ilogb-impl.h
@@ -0,0 +1,37 @@
+/* Get integer exponent of a floating-point value.
+ Copyright (C) 1999-2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+static inline RET_TYPE
+IMPL_NAME (double x)
+{
+ uint64_t ux = asuint64 (x);
+ int ex = (ux & ~SIGN_MASK) >> MANTISSA_WIDTH;
+ if (__glibc_unlikely (ex == 0)) /* zero or subnormal */
+ {
+ /* Clear sign and exponent */
+ ux <<= 12;
+ if (ux == 0)
+ return RET_INVALID (RET_LOGB0);
+ /* subnormal */
+ return (RET_TYPE)-1023 - stdc_leading_zeros (ux);
+ }
+ if (__glibc_unlikely (ex == EXPONENT_MASK >> MANTISSA_WIDTH))
+ /* NaN or Inf */
+ return RET_INVALID (ux << 12 ? RET_LOGBNAN : RET_LOGMAX);
+ return ex - 1023;
+}
diff --git a/sysdeps/ieee754/dbl-64/w_ilogb.c b/sysdeps/ieee754/dbl-64/w_ilogb.c
new file mode 100644
index 0000000..e460f14
--- /dev/null
+++ b/sysdeps/ieee754/dbl-64/w_ilogb.c
@@ -0,0 +1,52 @@
+/* Get integer exponent of a floating-point value.
+ Copyright (C) 1999-2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <limits.h>
+#include <math.h>
+#include <stdbit.h>
+#include <libm-alias-double.h>
+#include "math_config.h"
+
+#ifdef DEF_AS_LLOGB
+# define DECL_NAME __llogb
+# define FUNC_NAME llogb
+# define RET_TYPE long int
+# define RET_LOGB0 FP_LLOGB0
+# define RET_LOGBNAN FP_LLOGBNAN
+# define RET_LOGMAX LONG_MAX
+# define RET_INVALID __math_invalid_li
+#else
+# define DECL_NAME __ilogb
+# define FUNC_NAME ilogb
+# define RET_TYPE int
+# define RET_LOGB0 FP_ILOGB0
+# define RET_LOGBNAN FP_ILOGBNAN
+# define RET_LOGMAX INT_MAX
+# define RET_INVALID __math_invalid_i
+#endif
+#define __IMPL_NAME(x,y) x ## _ ## y
+#define _IMPL_NAME(x,y) __IMPL_NAME(x,y)
+#define IMPL_NAME _IMPL_NAME(FUNC_NAME, impl)
+#include <w_ilogb-impl.h>
+
+RET_TYPE
+DECL_NAME (double x)
+{
+ return IMPL_NAME (x);
+}
+libm_alias_double (DECL_NAME, FUNC_NAME)
diff --git a/sysdeps/ieee754/dbl-64/w_llogb.c b/sysdeps/ieee754/dbl-64/w_llogb.c
new file mode 100644
index 0000000..c984cd15
--- /dev/null
+++ b/sysdeps/ieee754/dbl-64/w_llogb.c
@@ -0,0 +1,2 @@
+#define DEF_AS_LLOGB
+#include "w_ilogb.c"
diff --git a/sysdeps/ieee754/flt-32/e_atanhf.c b/sysdeps/ieee754/flt-32/e_atanhf.c
index 5138408..eeb1aae 100644
--- a/sysdeps/ieee754/flt-32/e_atanhf.c
+++ b/sysdeps/ieee754/flt-32/e_atanhf.c
@@ -3,7 +3,7 @@
Copyright (c) 2023-2024 Alexei Sibidanov.
The original version of this file was copied from the CORE-MATH
-project (file src/binary32/acosh/acoshf.c, revision bc385c2).
+project (file src/binary32/acosh/acoshf.c, revision 4d6192d2).
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
@@ -135,7 +135,7 @@ __ieee754_atanhf (float x)
}
double sgn = s[ux >> 31];
unsigned int e = ax >> 24;
- unsigned int md = ((ux << 8) | 1 << 31) >> (126 - e);
+ unsigned int md = ((ux << 8) | 1U << 31) >> (126 - e);
unsigned int mn = -md;
int nz = __builtin_clz (mn) + 1;
mn <<= nz;
diff --git a/sysdeps/ieee754/flt-32/e_coshf.c b/sysdeps/ieee754/flt-32/e_coshf.c
index 5f6ff8c..382cd55 100644
--- a/sysdeps/ieee754/flt-32/e_coshf.c
+++ b/sysdeps/ieee754/flt-32/e_coshf.c
@@ -3,7 +3,7 @@
Copyright (c) 2022-2024 Alexei Sibidanov.
The original version of this file was copied from the CORE-MATH
-project (file src/binary32/cosh/coshf.c, revision 5c58ea1).
+project (file src/binary32/cosh/coshf.c, revision de59ecfb).
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
@@ -69,8 +69,8 @@ __ieee754_coshf (float x)
double h2 = h * h;
int64_t jp = asuint64 (ia + 0x1.8p52);
int64_t jm = -jp;
- double sp = asdouble (TB[jp & 31] + ((jp >> 5) << 52));
- double sm = asdouble (TB[jm & 31] + ((jm >> 5) << 52));
+ double sp = asdouble (TB[jp & 31] + ((uint64_t)(jp >> 5) << 52));
+ double sm = asdouble (TB[jm & 31] + ((uint64_t)(jm >> 5) << 52));
double te = C[0] + h2 * C[2];
double to = (C[1] + h2 * C[3]);
double rp = sp * (te + h * to);
diff --git a/sysdeps/ieee754/flt-32/e_ilogbf.c b/sysdeps/ieee754/flt-32/e_ilogbf.c
index db24012..a27fb94 100644
--- a/sysdeps/ieee754/flt-32/e_ilogbf.c
+++ b/sysdeps/ieee754/flt-32/e_ilogbf.c
@@ -1,43 +1 @@
-/* s_ilogbf.c -- float version of s_ilogb.c.
- */
-
-/*
- * ====================================================
- * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
- *
- * Developed at SunPro, a Sun Microsystems, Inc. business.
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-#if defined(LIBM_SCCS) && !defined(lint)
-static char rcsid[] = "$NetBSD: s_ilogbf.c,v 1.4 1995/05/10 20:47:31 jtc Exp $";
-#endif
-
-#include <limits.h>
-#include <math.h>
-#include <math_private.h>
-
-int __ieee754_ilogbf(float x)
-{
- int32_t hx,ix;
-
- GET_FLOAT_WORD(hx,x);
- hx &= 0x7fffffff;
- if(hx<0x00800000) {
- if(hx==0)
- return FP_ILOGB0; /* ilogb(0) = FP_ILOGB0 */
- else /* subnormal x */
- for (ix = -126,hx<<=8; hx>0; hx<<=1) ix -=1;
- return ix;
- }
- else if (hx<0x7f800000) return (hx>>23)-127;
- else if (FP_ILOGBNAN != INT_MAX) {
- /* ISO C99 requires ilogbf(+-Inf) == INT_MAX. */
- if (hx==0x7f800000)
- return INT_MAX;
- }
- return FP_ILOGBNAN;
-}
+/* ilogbf is implemented at w_ilogbf.c */
diff --git a/sysdeps/ieee754/flt-32/e_logf.c b/sysdeps/ieee754/flt-32/e_logf.c
index 6a595cf..207151c 100644
--- a/sysdeps/ieee754/flt-32/e_logf.c
+++ b/sysdeps/ieee754/flt-32/e_logf.c
@@ -70,7 +70,7 @@ __logf (float x)
tmp = ix - OFF;
i = (tmp >> (23 - LOGF_TABLE_BITS)) % N;
k = (int32_t) tmp >> 23; /* arithmetic shift */
- iz = ix - (tmp & 0x1ff << 23);
+ iz = ix - (tmp & 0xff800000);
invc = T[i].invc;
logc = T[i].logc;
z = (double_t) asfloat (iz);
diff --git a/sysdeps/ieee754/flt-32/e_sinhf.c b/sysdeps/ieee754/flt-32/e_sinhf.c
index 754b84a..6c8c1db 100644
--- a/sysdeps/ieee754/flt-32/e_sinhf.c
+++ b/sysdeps/ieee754/flt-32/e_sinhf.c
@@ -3,7 +3,7 @@
Copyright (c) 2022-2024 Alexei Sibidanov.
The original version of this file was copied from the CORE-MATH
-project (file src/binary32/sinh/sinhf.c, revision 572ecec).
+project (file src/binary32/sinh/sinhf.c, revision bbfabd99).
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
@@ -83,8 +83,8 @@ __ieee754_sinhf (float x)
double h2 = h * h;
int64_t jp = asuint64 (ia + 0x1.8p52);
int64_t jm = -jp;
- double sp = asdouble (TB[jp & 31] + ((jp >> 5) << 52));
- double sm = asdouble (TB[jm & 31] + ((jm >> 5) << 52));
+ double sp = asdouble (TB[jp & 31] + ((uint64_t)(jp >> 5) << 52));
+ double sm = asdouble (TB[jm & 31] + ((uint64_t)(jm >> 5) << 52));
double te = C[0] + h2 * C[2];
double to = (C[1] + h2 * C[3]);
double rp = sp * (te + h * to);
diff --git a/sysdeps/ieee754/flt-32/math_config.h b/sysdeps/ieee754/flt-32/math_config.h
index 8d9c8ee..33ea631 100644
--- a/sysdeps/ieee754/flt-32/math_config.h
+++ b/sysdeps/ieee754/flt-32/math_config.h
@@ -165,6 +165,7 @@ issignalingf_inline (float x)
#define BIT_WIDTH 32
#define MANTISSA_WIDTH 23
#define EXPONENT_WIDTH 8
+#define EXPONENT_BIAS 127
#define MANTISSA_MASK 0x007fffff
#define EXPONENT_MASK 0x7f800000
#define EXP_MANT_MASK 0x7fffffff
@@ -177,12 +178,24 @@ is_nan (uint32_t x)
return (x & EXP_MANT_MASK) > EXPONENT_MASK;
}
+static inline bool
+is_inf (uint32_t x)
+{
+ return (x << 1) == (EXPONENT_MASK << 1);
+}
+
static inline uint32_t
get_mantissa (uint32_t x)
{
return x & MANTISSA_MASK;
}
+static inline int
+get_exponent (uint32_t x)
+{
+ return (int)((x >> MANTISSA_WIDTH & 0xff) - EXPONENT_BIAS);
+}
+
/* Convert integer number X, unbiased exponent EP, and sign S to double:
result = X * 2^(EP+1 - exponent_bias)
@@ -208,6 +221,8 @@ attribute_hidden float __math_uflowf (uint32_t);
attribute_hidden float __math_may_uflowf (uint32_t);
attribute_hidden float __math_divzerof (uint32_t);
attribute_hidden float __math_invalidf (float);
+attribute_hidden int __math_invalidf_i (int);
+attribute_hidden long int __math_invalidf_li (long int);
attribute_hidden float __math_edomf (float x);
/* Shared between expf, exp2f, exp10f, and powf. */
diff --git a/sysdeps/ieee754/flt-32/math_errf.c b/sysdeps/ieee754/flt-32/math_errf.c
index edcc4c0..244e38a 100644
--- a/sysdeps/ieee754/flt-32/math_errf.c
+++ b/sysdeps/ieee754/flt-32/math_errf.c
@@ -16,6 +16,7 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
+#include <math-barriers.h>
#include "math_config.h"
#if WANT_ERRNO
@@ -27,8 +28,24 @@ with_errnof (float y, int e)
errno = e;
return y;
}
+
+NOINLINE static int
+with_errnof_i (int y, int e)
+{
+ errno = e;
+ return y;
+}
+
+NOINLINE static long int
+with_errnof_li (long int y, int e)
+{
+ errno = e;
+ return y;
+}
#else
# define with_errnof(x, e) (x)
+# define with_errnof_i(x, x) (x)
+# define with_errnof_li(x, x) (x)
#endif
attribute_hidden float
@@ -80,3 +97,19 @@ __math_invalidf (float x)
float y = (x - x) / (x - x);
return isnan (x) ? y : with_errnof (y, EDOM);
}
+
+attribute_hidden int
+__math_invalidf_i (int x)
+{
+ float y = 0.0f / 0.0f;
+ math_force_eval (y);
+ return with_errnof_i (x, EDOM);
+}
+
+attribute_hidden long int
+__math_invalidf_li (long int x)
+{
+ float y = 0.0f / 0.0f;
+ math_force_eval (y);
+ return with_errnof_li (x, EDOM);
+}
diff --git a/sysdeps/ieee754/flt-32/s_cbrtf.c b/sysdeps/ieee754/flt-32/s_cbrtf.c
index 5a7a9a9..df9e888 100644
--- a/sysdeps/ieee754/flt-32/s_cbrtf.c
+++ b/sysdeps/ieee754/flt-32/s_cbrtf.c
@@ -3,7 +3,7 @@
Copyright (c) 2023, 2024 Alexei Sibidanov.
The original version of this file was copied from the CORE-MATH
-project (file src/binary32/cbrt/cbrtf.c, revision bc385c2).
+project (file src/binary32/cbrt/cbrtf.c, revision f7c7408d).
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
@@ -61,8 +61,8 @@ __cbrtf (float x)
e += 899;
uint32_t et = e / 3, it = e % 3;
uint64_t isc = escale[it].u;
- isc += (int64_t) (et - 342) << 52;
- isc |= (int64_t) sgn << 63;
+ isc += (uint64_t) (et - 342) << 52;
+ isc |= (uint64_t) sgn << 63;
double cvt2 = asdouble (isc);
static const double c[] =
{
diff --git a/sysdeps/ieee754/flt-32/s_cospif.c b/sysdeps/ieee754/flt-32/s_cospif.c
index 1e83803..eb4a10f 100644
--- a/sysdeps/ieee754/flt-32/s_cospif.c
+++ b/sysdeps/ieee754/flt-32/s_cospif.c
@@ -3,7 +3,7 @@
Copyright (c) 2022-2025 Alexei Sibidanov.
The original version of this file was copied from the CORE-MATH
-project (src/binary32/cospi/cospif.c, revision f786e13).
+project (src/binary32/cospi/cospif.c, revision bbfabd99).
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
@@ -58,10 +58,10 @@ __cospif (float x)
{
if (__glibc_unlikely (p > 63))
return 1.0f;
- int32_t iq = m << (p - 32);
+ int32_t iq = (uint32_t)m << (p - 32);
return S[(iq + 32) & 127];
}
- int32_t k = m << p;
+ int32_t k = (uint32_t)m << p;
if (__glibc_unlikely (k == 0))
{
int32_t iq = m >> (32 - p);
diff --git a/sysdeps/ieee754/flt-32/s_erfcf.c b/sysdeps/ieee754/flt-32/s_erfcf.c
index 3dae2a0..955f129 100644
--- a/sysdeps/ieee754/flt-32/s_erfcf.c
+++ b/sysdeps/ieee754/flt-32/s_erfcf.c
@@ -3,7 +3,7 @@
Copyright (c) 2023, 2024 Alexei Sibidanov.
This file is part of the CORE-MATH project
-project (file src/binary32/erfc/erfcf.c revision bc385c2).
+project (file src/binary32/erfc/erfcf.c revision d0a2be20).
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
@@ -142,7 +142,7 @@ __erfcf (float xf)
const double ln2l = 0x1.cf79abd6f5dc8p-47;
uint64_t jt = asuint64 (fma (x2, iln2, -(1024 + 0x1p-8)));
int64_t j = (int64_t) (jt << 12) >> 48;
- double S = asdouble (((j >> 7) + (0x3ff | sgn << 11)) << 52);
+ double S = asdouble ((uint64_t)((j >> 7) + (0x3ff | sgn << 11)) << 52);
static const double ch[] =
{
-0x1.ffffffffff333p-2, 0x1.5555555556a14p-3, -0x1.55556666659b4p-5,
diff --git a/sysdeps/ieee754/flt-32/s_modff.c b/sysdeps/ieee754/flt-32/s_modff.c
index ad2e91d..965136b 100644
--- a/sysdeps/ieee754/flt-32/s_modff.c
+++ b/sysdeps/ieee754/flt-32/s_modff.c
@@ -1,54 +1,69 @@
-/* s_modff.c -- float version of s_modf.c.
- */
-
-/*
- * ====================================================
- * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
- *
- * Developed at SunPro, a Sun Microsystems, Inc. business.
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
+/* Extract signed integral and fractional values.
+ Copyright (C) 1993-2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
#include <math.h>
-#include <math_private.h>
#include <libm-alias-float.h>
-
-static const float one = 1.0;
+#include "math_config.h"
+#include <math-use-builtins-trunc.h>
float
-__modff(float x, float *iptr)
+__modff (float x, float *iptr)
{
- int32_t i0,j0;
- uint32_t i;
- GET_FLOAT_WORD(i0,x);
- j0 = ((i0>>23)&0xff)-0x7f; /* exponent of x */
- if(__builtin_expect(j0<23, 1)) { /* integer part in x */
- if(j0<0) { /* |x|<1 */
- SET_FLOAT_WORD(*iptr,i0&0x80000000); /* *iptr = +-0 */
- return x;
- } else {
- i = (0x007fffff)>>j0;
- if((i0&i)==0) { /* x is integral */
- uint32_t ix;
- *iptr = x;
- GET_FLOAT_WORD(ix,x);
- SET_FLOAT_WORD(x,ix&0x80000000); /* return +-0 */
- return x;
- } else {
- SET_FLOAT_WORD(*iptr,i0&(~i));
- return x - *iptr;
- }
- }
- } else { /* no fraction part */
- *iptr = x*one;
- /* We must handle NaNs separately. */
- if (j0 == 0x80 && (i0 & 0x7fffff))
- return x*one;
- SET_FLOAT_WORD(x,i0&0x80000000); /* return +-0 */
- return x;
+ uint32_t t = asuint (x);
+#if USE_TRUNCF_BUILTIN
+ if (is_inf (t))
+ {
+ *iptr = x;
+ return copysignf (0.0, x);
+ }
+ *iptr = truncf (x);
+ return copysignf (x - *iptr, x);
+#else
+ int e = get_exponent (t);
+ /* No fraction part. */
+ if (e < MANTISSA_WIDTH)
+ {
+ if (e < 0)
+ {
+ /* |x|<1 -> *iptr = +-0 */
+ *iptr = asfloat (t & SIGN_MASK);
+ return x;
}
+
+ uint32_t i = MANTISSA_MASK >> e;
+ if ((t & i) == 0)
+ {
+ /* x in integral, return +-0 */
+ *iptr = x;
+ return asfloat (t & SIGN_MASK);
+ }
+
+ *iptr = asfloat (t & ~i);
+ return x - *iptr;
+ }
+
+ /* Set invalid operation for sNaN. */
+ *iptr = x * 1.0f;
+ if ((e == 0x80) && (t & MANTISSA_MASK))
+ return *iptr;
+ return asfloat (t & SIGN_MASK);
+#endif
}
+#ifndef __modff
libm_alias_float (__modf, modf)
+#endif
diff --git a/sysdeps/ieee754/flt-32/s_sinpif.c b/sysdeps/ieee754/flt-32/s_sinpif.c
index 99a8bbb..c0d15e7 100644
--- a/sysdeps/ieee754/flt-32/s_sinpif.c
+++ b/sysdeps/ieee754/flt-32/s_sinpif.c
@@ -3,7 +3,7 @@
Copyright (c) 2022-2025 Alexei Sibidanov.
The original version of this file was copied from the CORE-MATH
-project (src/binary32/sinpi/sinpif.c, revision f786e13).
+project (src/binary32/sinpi/sinpif.c, revision bbfabd99.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
@@ -51,7 +51,7 @@ __sinpif (float x)
{
if (__glibc_unlikely (s < -6))
return copysignf (0.0f, x);
- int32_t iq = m << (-s - 1);
+ int32_t iq = (uint32_t)m << (-s - 1);
iq &= 127;
if (iq == 0 || iq == 64)
return copysignf (0.0f, x);
@@ -63,10 +63,10 @@ __sinpif (float x)
return z * (0x1.921fb54442d18p+1 + z2 * (-0x1.4abbce625be53p+2));
}
int32_t si = 25 - s;
- if (__glibc_unlikely (si >= 0 && (m << si) == 0))
+ if (__glibc_unlikely (si >= 0 && ((uint32_t)m << si) == 0))
return copysignf (0.0f, x);
- int32_t k = m << (31 - s);
+ int32_t k = (uint32_t)m << (31 - s);
double z = k, z2 = z * z;
double fs = SN[0] + z2 * (SN[1] + z2 * SN[2]);
double fc = CN[0] + z2 * (CN[1] + z2 * CN[2]);
diff --git a/sysdeps/ieee754/flt-32/w_ilogbf-impl.h b/sysdeps/ieee754/flt-32/w_ilogbf-impl.h
new file mode 100644
index 0000000..5aa8bf0
--- /dev/null
+++ b/sysdeps/ieee754/flt-32/w_ilogbf-impl.h
@@ -0,0 +1,38 @@
+/* Get integer exponent of a floating-point value.
+ Copyright (C) 1999-2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+static inline RET_TYPE
+IMPL_NAME (float x)
+{
+ uint32_t ux = asuint (x);
+ int ex = (ux & ~SIGN_MASK) >> MANTISSA_WIDTH;
+ if (__glibc_unlikely (ex == 0))
+ {
+ /* Zero or subnormal.
+ Clear sign and exponent. */
+ ux <<= 1 + EXPONENT_WIDTH;
+ if (ux == 0)
+ return RET_INVALID (RET_LOGB0);
+ /* subnormal */
+ return (RET_TYPE)-127 - stdc_leading_zeros (ux);
+ }
+ if (__glibc_unlikely (ex == EXPONENT_MASK >> MANTISSA_WIDTH))
+ /* NaN or Inf */
+ return RET_INVALID (ux << (1 + EXPONENT_WIDTH) ? RET_LOGBNAN : RET_LOGMAX);
+ return ex - 127;
+}
diff --git a/sysdeps/ieee754/flt-32/w_ilogbf.c b/sysdeps/ieee754/flt-32/w_ilogbf.c
new file mode 100644
index 0000000..4e2a707
--- /dev/null
+++ b/sysdeps/ieee754/flt-32/w_ilogbf.c
@@ -0,0 +1,53 @@
+/* Get integer exponent of a floating-point value.
+ Copyright (C) 1999-2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <limits.h>
+#include <math.h>
+#include <stdbit.h>
+#include <libm-alias-float.h>
+#include <math-type-macros-float.h>
+#include "math_config.h"
+
+#ifdef DEF_AS_LLOGBF
+# define DECL_NAME __llogb
+# define FUNC_NAME llogb
+# define RET_TYPE long int
+# define RET_LOGB0 FP_LLOGB0
+# define RET_LOGBNAN FP_LLOGBNAN
+# define RET_LOGMAX LONG_MAX
+# define RET_INVALID __math_invalidf_li
+#else
+# define DECL_NAME __ilogb
+# define FUNC_NAME ilogb
+# define RET_TYPE int
+# define RET_LOGB0 FP_ILOGB0
+# define RET_LOGBNAN FP_ILOGBNAN
+# define RET_LOGMAX INT_MAX
+# define RET_INVALID __math_invalidf_i
+#endif
+#define __IMPL_NAME(x,y) x ## _ ## y
+#define _IMPL_NAME(x,y) __IMPL_NAME(x,y)
+#define IMPL_NAME _IMPL_NAME(FUNC_NAME, impl)
+#include <w_ilogbf-impl.h>
+
+RET_TYPE
+M_DECL_FUNC (DECL_NAME) (float x)
+{
+ return IMPL_NAME (x);
+}
+libm_alias_float (DECL_NAME, FUNC_NAME);
diff --git a/sysdeps/ieee754/flt-32/w_llogbf.c b/sysdeps/ieee754/flt-32/w_llogbf.c
new file mode 100644
index 0000000..8676434
--- /dev/null
+++ b/sysdeps/ieee754/flt-32/w_llogbf.c
@@ -0,0 +1,2 @@
+#define DEF_AS_LLOGBF
+#include "w_ilogbf.c"
diff --git a/sysdeps/ieee754/ldbl-128/Makefile b/sysdeps/ieee754/ldbl-128/Makefile
index 5476a55..e666bdc 100644
--- a/sysdeps/ieee754/ldbl-128/Makefile
+++ b/sysdeps/ieee754/ldbl-128/Makefile
@@ -83,7 +83,7 @@ CFLAGS-w_j1l.c += -fno-builtin-j1f64x -fno-builtin-j1f128
CFLAGS-w_jnl.c += -fno-builtin-jnf64x -fno-builtin-jnf128
CFLAGS-s_ldexpl.c += -fno-builtin-ldexpf64x -fno-builtin-ldexpf128
CFLAGS-w_lgammal.c += -fno-builtin-lgammaf64x -fno-builtin-lgammaf128
-CFLAGS-w_lgammal_r.c += -fno-builtin-lgammaf64x_r
+CFLAGS-w_lgammal_r.c += -fno-builtin-lgammaf64x_r -fno-builtin-lgammaf128_r
CFLAGS-w_llogbl.c += -fno-builtin-llogbf64x -fno-builtin-llogbf128
CFLAGS-s_llrintl.c += -fno-builtin-llrintf64x -fno-builtin-llrintf128
CFLAGS-s_llroundl.c += -fno-builtin-llroundf64x -fno-builtin-llroundf128
diff --git a/sysdeps/ieee754/ldbl-128/e_expl.c b/sysdeps/ieee754/ldbl-128/e_expl.c
index 25b45c7..4855c6b 100644
--- a/sysdeps/ieee754/ldbl-128/e_expl.c
+++ b/sysdeps/ieee754/ldbl-128/e_expl.c
@@ -79,7 +79,7 @@ L(-11433.4627433362978788372438434526231),
/* 3x2^96 */
#define THREEp96 C[2]
- L(59421121885698253195157962752.0),
+ L(237684487542793012780631851008.0),
/* 3x2^103 */
#define THREEp103 C[3]
diff --git a/sysdeps/ieee754/ldbl-128ibm-compat/Versions b/sysdeps/ieee754/ldbl-128ibm-compat/Versions
index cd39b6a..ae4bd5b 100644
--- a/sysdeps/ieee754/ldbl-128ibm-compat/Versions
+++ b/sysdeps/ieee754/ldbl-128ibm-compat/Versions
@@ -154,8 +154,10 @@ libm {
__tanpiieee128;
}
GLIBC_2.42 {
+ __compoundnieee128;
__pownieee128;
__powrieee128;
+ __rootnieee128;
__rsqrtieee128;
}
}
diff --git a/sysdeps/ieee754/ldbl-opt/Makefile b/sysdeps/ieee754/ldbl-opt/Makefile
index beaed61..ef7da1f 100644
--- a/sysdeps/ieee754/ldbl-opt/Makefile
+++ b/sysdeps/ieee754/ldbl-opt/Makefile
@@ -42,6 +42,7 @@ libnldbl-calls = \
cimag \
clog \
clog10 \
+ compoundn \
conj \
copysign \
cos \
@@ -180,6 +181,7 @@ libnldbl-calls = \
remainder \
remquo \
rint \
+ rootn \
round \
roundeven \
rsqrt \
@@ -264,7 +266,7 @@ extra-objs += $(addsuffix .oS, $(libnldbl-routines))
CFLAGS-nldbl-acos.c = -fno-builtin-acosl
CFLAGS-nldbl-acosh.c = -fno-builtin-acoshl
-CFLAGS-nldbl-acospi.c = -fno-builtin-acospi
+CFLAGS-nldbl-acospi.c = -fno-builtin-acospil
CFLAGS-nldbl-asin.c = -fno-builtin-asinl
CFLAGS-nldbl-asinh.c = -fno-builtin-asinhl
CFLAGS-nldbl-asinpi.c = -fno-builtin-asinpil
@@ -290,11 +292,12 @@ CFLAGS-nldbl-cexp.c = -fno-builtin-cexpl
CFLAGS-nldbl-cimag.c = -fno-builtin-cimagl
CFLAGS-nldbl-clog.c = -fno-builtin-clogl
CFLAGS-nldbl-clog10.c = -fno-builtin-clog10l
+CFLAGS-nldbl-compoundn.c = -fno-builtin-compoundnl
CFLAGS-nldbl-conj.c = -fno-builtin-conjl
CFLAGS-nldbl-copysign.c = -fno-builtin-copysignl
CFLAGS-nldbl-cos.c = -fno-builtin-cosl
CFLAGS-nldbl-cosh.c = -fno-builtin-coshl
-CFLAGS-nldbl-cospi.c = -fno-builtin-cospi
+CFLAGS-nldbl-cospi.c = -fno-builtin-cospil
CFLAGS-nldbl-cpow.c = -fno-builtin-cpowl
CFLAGS-nldbl-cproj.c = -fno-builtin-cprojl
CFLAGS-nldbl-creal.c = -fno-builtin-creall
@@ -382,6 +385,7 @@ CFLAGS-nldbl-powr.c = -fno-builtin-powrl
CFLAGS-nldbl-remainder.c = -fno-builtin-remainderl -fno-builtin-dreml
CFLAGS-nldbl-remquo.c = -fno-builtin-remquol
CFLAGS-nldbl-rint.c = -fno-builtin-rintl
+CFLAGS-nldbl-rootn.c = -fno-builtin-rootnl
CFLAGS-nldbl-round.c = -fno-builtin-roundl
CFLAGS-nldbl-roundeven.c = -fno-builtin-roundevenl
CFLAGS-nldbl-rsqrt.c = -fno-builtin-rsqrtl
@@ -394,11 +398,11 @@ CFLAGS-nldbl-significand.c = -fno-builtin-significandl
CFLAGS-nldbl-sin.c = -fno-builtin-sinl
CFLAGS-nldbl-sincos.c = -fno-builtin-sincosl
CFLAGS-nldbl-sinh.c = -fno-builtin-sinhl
-CFLAGS-nldbl-sinpi.c = -fno-builtin-sinpi
+CFLAGS-nldbl-sinpi.c = -fno-builtin-sinpil
CFLAGS-nldbl-sqrt.c = -fno-builtin-sqrtl
CFLAGS-nldbl-tan.c = -fno-builtin-tanl
CFLAGS-nldbl-tanh.c = -fno-builtin-tanhl
-CFLAGS-nldbl-tanpi.c = -fno-builtin-tanpi
+CFLAGS-nldbl-tanpi.c = -fno-builtin-tanpil
CFLAGS-nldbl-tgamma.c = -fno-builtin-tgammal
CFLAGS-nldbl-totalorder.c = -fno-builtin-totalorderl
CFLAGS-nldbl-totalordermag.c = -fno-builtin-totalordermagl
diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-compoundn.c b/sysdeps/ieee754/ldbl-opt/nldbl-compoundn.c
new file mode 100644
index 0000000..43da519
--- /dev/null
+++ b/sysdeps/ieee754/ldbl-opt/nldbl-compoundn.c
@@ -0,0 +1,8 @@
+#include "nldbl-compat.h"
+
+double
+attribute_hidden
+compoundnl (double x, long long int y)
+{
+ return compoundn (x, y);
+}
diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-rootn.c b/sysdeps/ieee754/ldbl-opt/nldbl-rootn.c
new file mode 100644
index 0000000..fb0d860
--- /dev/null
+++ b/sysdeps/ieee754/ldbl-opt/nldbl-rootn.c
@@ -0,0 +1,8 @@
+#include "nldbl-compat.h"
+
+double
+attribute_hidden
+rootnl (double x, long long int y)
+{
+ return rootn (x, y);
+}
diff --git a/sysdeps/loongarch/fpu/e_ilogbf.c b/sysdeps/loongarch/fpu/e_ilogbf.c
index adced63..a27fb94 100644
--- a/sysdeps/loongarch/fpu/e_ilogbf.c
+++ b/sysdeps/loongarch/fpu/e_ilogbf.c
@@ -1,39 +1 @@
-/* __ieee754_ilogbf(). LoongArch version.
- Copyright (C) 2022-2025 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <https://www.gnu.org/licenses/>. */
-
-#define NO_MATH_REDIRECT
-#include <math.h>
-#include <fpu_control.h>
-
-int
-__ieee754_ilogbf (float x)
-{
- int x_cond;
- asm volatile ("fclass.s \t%0, %1" : "=f" (x_cond) : "f" (x));
-
- if (__glibc_unlikely (x_cond & _FCLASS_ZERO))
- return FP_ILOGB0;
- else if (__glibc_unlikely (x_cond & ( _FCLASS_NAN | _FCLASS_INF)))
- return FP_ILOGBNAN;
- else
- {
- asm volatile ("fabs.s \t%0, %1" : "=f" (x) : "f" (x));
- asm volatile ("flogb.s \t%0, %1" : "=f" (x) : "f" (x));
- return x;
- }
-}
+/* ilogbf is implemented at w_ilogbf.c */
diff --git a/sysdeps/loongarch/fpu/e_ilogb.c b/sysdeps/loongarch/fpu/w_ilogb-impl.h
index f21fa5c..1905373 100644
--- a/sysdeps/loongarch/fpu/e_ilogb.c
+++ b/sysdeps/loongarch/fpu/w_ilogb-impl.h
@@ -1,4 +1,4 @@
-/* __ieee754_ilogb(). LoongArch version.
+/* Get integer exponent of a floating-point value. LoongArch version.
Copyright (C) 2022-2025 Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -16,20 +16,18 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
-#define NO_MATH_REDIRECT
-#include <math.h>
#include <fpu_control.h>
-int
-__ieee754_ilogb (double x)
+static inline RET_TYPE
+IMPL_NAME (double x)
{
int x_cond;
asm volatile ("fclass.d \t%0, %1" : "=f" (x_cond) : "f" (x));
if (__glibc_unlikely (x_cond & _FCLASS_ZERO))
- return FP_ILOGB0;
+ return RET_INVALID (RET_LOGB0);
else if (__glibc_unlikely (x_cond & ( _FCLASS_NAN | _FCLASS_INF)))
- return FP_ILOGBNAN;
+ return RET_INVALID (RET_LOGBNAN);
else
{
asm volatile ("fabs.d \t%0, %1" : "=f" (x) : "f" (x));
diff --git a/sysdeps/loongarch/fpu/w_ilogbf-impl.h b/sysdeps/loongarch/fpu/w_ilogbf-impl.h
new file mode 100644
index 0000000..9cb4172
--- /dev/null
+++ b/sysdeps/loongarch/fpu/w_ilogbf-impl.h
@@ -0,0 +1,37 @@
+/* Get integer exponent of a floating-point value. LoongArch version.
+ Copyright (C) 2022-2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <fpu_control.h>
+
+static inline RET_TYPE
+IMPL_NAME (float x)
+{
+ int x_cond;
+ asm volatile ("fclass.s \t%0, %1" : "=f" (x_cond) : "f" (x));
+
+ if (__glibc_unlikely (x_cond & _FCLASS_ZERO))
+ return RET_INVALID (RET_LOGB0);
+ else if (__glibc_unlikely (x_cond & ( _FCLASS_NAN | _FCLASS_INF)))
+ return RET_INVALID (RET_LOGBNAN);
+ else
+ {
+ asm volatile ("fabs.s \t%0, %1" : "=f" (x) : "f" (x));
+ asm volatile ("flogb.s \t%0, %1" : "=f" (x) : "f" (x));
+ return x;
+ }
+}
diff --git a/sysdeps/loongarch/preconfigure b/sysdeps/loongarch/preconfigure
index 0d1e9ed..6726ab8 100644
--- a/sysdeps/loongarch/preconfigure
+++ b/sysdeps/loongarch/preconfigure
@@ -44,6 +44,7 @@ loongarch*)
base_machine=loongarch
mtls_descriptor=desc
+ mtls_traditional=trad
;;
esac
diff --git a/sysdeps/loongarch/preconfigure.ac b/sysdeps/loongarch/preconfigure.ac
index df07dbf..5640226 100644
--- a/sysdeps/loongarch/preconfigure.ac
+++ b/sysdeps/loongarch/preconfigure.ac
@@ -42,6 +42,7 @@ loongarch*)
base_machine=loongarch
mtls_descriptor=desc
+ mtls_traditional=trad
;;
esac
diff --git a/sysdeps/m68k/m680x0/fpu/math_err.c b/sysdeps/m68k/m680x0/fpu/math_err.c
deleted file mode 100644
index 1cc8931..0000000
--- a/sysdeps/m68k/m680x0/fpu/math_err.c
+++ /dev/null
@@ -1 +0,0 @@
-/* Not needed. */
diff --git a/sysdeps/m68k/m680x0/w_ilogb.c b/sysdeps/m68k/m680x0/w_ilogb.c
new file mode 100644
index 0000000..9c26217
--- /dev/null
+++ b/sysdeps/m68k/m680x0/w_ilogb.c
@@ -0,0 +1,2 @@
+#include <math-type-macros-double.h>
+#include <w_ilogb_template.c>
diff --git a/sysdeps/m68k/m680x0/w_ilogbf.c b/sysdeps/m68k/m680x0/w_ilogbf.c
new file mode 100644
index 0000000..047ad4b
--- /dev/null
+++ b/sysdeps/m68k/m680x0/w_ilogbf.c
@@ -0,0 +1,2 @@
+#include <math-type-macros-float.h>
+#include <w_ilogb_template.c>
diff --git a/sysdeps/m68k/m680x0/w_llogb.c b/sysdeps/m68k/m680x0/w_llogb.c
new file mode 100644
index 0000000..5e8891a
--- /dev/null
+++ b/sysdeps/m68k/m680x0/w_llogb.c
@@ -0,0 +1,2 @@
+#include <math-type-macros-double.h>
+#include <w_llogb_template.c>
diff --git a/sysdeps/m68k/m680x0/w_llogbf.c b/sysdeps/m68k/m680x0/w_llogbf.c
new file mode 100644
index 0000000..edb7e9a
--- /dev/null
+++ b/sysdeps/m68k/m680x0/w_llogbf.c
@@ -0,0 +1,2 @@
+#include <math-type-macros-float.h>
+#include <w_llogb_template.c>
diff --git a/sysdeps/mach/hurd/Makefile b/sysdeps/mach/hurd/Makefile
index 994de00..32bba61 100644
--- a/sysdeps/mach/hurd/Makefile
+++ b/sysdeps/mach/hurd/Makefile
@@ -311,9 +311,6 @@ endif
ifeq ($(subdir),htl)
tests-unsupported += tst-basic7
endif
-ifeq ($(subdir),io)
-tests-unsupported += test-lfs
-endif
ifeq ($(subdir),libio)
tests-unsupported += tst-asprintf-null
endif
@@ -323,6 +320,7 @@ tests-unsupported += tst-malloc-thread-fail-malloc-check
tests-unsupported += tst-malloc-thread-fail-mcheck
tests-unsupported += tst-malloc-thread-fail-malloc-hugetlb1
tests-unsupported += tst-malloc-thread-fail-malloc-hugetlb2
+tests-unsupported += tst-malloc-thread-fail-malloc-largetcache
tests-unsupported += tst-dynarray-fail
endif
ifeq ($(subdir),misc)
@@ -339,7 +337,8 @@ ifeq ($(subdir),stdlib)
tests-unsupported += test-bz22786 tst-strtod-overflow
# pthread_cleanup_combined_push/pthread_cleanup_combined_pop requires cleanup
# support (BZ 32058).
-test-xfail-tst-qsortx7 = yes
+test-xfail-tst-qsort7-mem = yes
+test-xfail-tst-qsortx7-mem = yes
endif
ifeq ($(subdir),timezone)
tests-unsupported += tst-tzset
diff --git a/sysdeps/mach/hurd/bits/ioctls.h b/sysdeps/mach/hurd/bits/ioctls.h
index f01316d..faf1373 100644
--- a/sysdeps/mach/hurd/bits/ioctls.h
+++ b/sysdeps/mach/hurd/bits/ioctls.h
@@ -324,15 +324,8 @@ enum __ioctl_datum { IOC_8, IOC_16, IOC_32, IOC_64 };
From 4.4 <sys/ioctl_compat.h>. */
#ifdef __USE_MISC
-#ifdef USE_OLD_TTY
-# undef TIOCGETD
-# define TIOCGETD _IOR('t', 0, int) /* get line discipline */
-# undef TIOCSETD
-# define TIOCSETD _IOW('t', 1, int) /* set line discipline */
-#else
-# define OTIOCGETD _IOR('t', 0, int) /* get line discipline */
-# define OTIOCSETD _IOW('t', 1, int) /* set line discipline */
-#endif
+#define OTIOCGETD _IOR('t', 0, int) /* get line discipline */
+#define OTIOCSETD _IOW('t', 1, int) /* set line discipline */
#define TIOCHPCL _IO('t', 2) /* hang up on last close */
#define TIOCGETP _IOR('t', 8,struct sgttyb)/* get parameters -- gtty */
#define TIOCSETP _IOW('t', 9,struct sgttyb)/* set parameters -- stty */
@@ -411,26 +404,6 @@ enum __ioctl_datum { IOC_8, IOC_16, IOC_32, IOC_64 };
#define OTTYDISC 0
#define NETLDISC 1
#define NTTYDISC 2
-
-/* From 4.4 <sys/ttydev.h>. */
-#ifdef USE_OLD_TTY
-# define B0 0
-# define B50 1
-# define B75 2
-# define B110 3
-# define B134 4
-# define B150 5
-# define B200 6
-# define B300 7
-# define B600 8
-# define B1200 9
-# define B1800 10
-# define B2400 11
-# define B4800 12
-# define B9600 13
-# define EXTA 14
-# define EXTB 15
-#endif /* USE_OLD_TTY */
#endif
#endif /* bits/ioctls.h */
diff --git a/sysdeps/mach/hurd/dl-execstack.c b/sysdeps/mach/hurd/dl-execstack.c
index 0617d3a..dc4719b 100644
--- a/sysdeps/mach/hurd/dl-execstack.c
+++ b/sysdeps/mach/hurd/dl-execstack.c
@@ -26,12 +26,11 @@ extern struct hurd_startup_data *_dl_hurd_data attribute_hidden;
so as to mprotect it. */
int
-_dl_make_stack_executable (void **stack_endp)
+_dl_make_stack_executable (const void *stack_endp)
{
/* Challenge the caller. */
- if (__builtin_expect (*stack_endp != __libc_stack_end, 0))
+ if (__glibc_unlikely (stack_endp != __libc_stack_end))
return EPERM;
- *stack_endp = NULL;
#if IS_IN (rtld)
if (__mprotect ((void *)_dl_hurd_data->stack_base, _dl_hurd_data->stack_size,
diff --git a/sysdeps/mach/hurd/dup3.c b/sysdeps/mach/hurd/dup3.c
index 22af45b..49545ae 100644
--- a/sysdeps/mach/hurd/dup3.c
+++ b/sysdeps/mach/hurd/dup3.c
@@ -69,6 +69,7 @@ __dup3 (int fd, int fd2, int flags)
{
/* Get a hold of the destination descriptor. */
struct hurd_fd *d2;
+ error_t err;
__mutex_lock (&_hurd_dtable_lock);
@@ -107,22 +108,51 @@ __dup3 (int fd, int fd2, int flags)
}
else
{
- /* Give the ports each a user ref for the new descriptor. */
- __mach_port_mod_refs (__mach_task_self (), port,
- MACH_PORT_RIGHT_SEND, 1);
- if (ctty != MACH_PORT_NULL)
- __mach_port_mod_refs (__mach_task_self (), ctty,
- MACH_PORT_RIGHT_SEND, 1);
-
- /* Install the ports and flags in the new descriptor slot. */
- __spin_lock (&d2->port.lock);
- if (flags & O_CLOEXEC)
- d2->flags = d_flags | FD_CLOEXEC;
- else
- /* dup clears FD_CLOEXEC. */
- d2->flags = d_flags & ~FD_CLOEXEC;
- _hurd_port_set (&d2->ctty, ctty);
- _hurd_port_locked_set (&d2->port, port); /* Unlocks D2. */
+ /* Give the io server port a user ref for the new descriptor. */
+ err = __mach_port_mod_refs (__mach_task_self (), port,
+ MACH_PORT_RIGHT_SEND, 1);
+
+ if (err == KERN_UREFS_OVERFLOW)
+ fd2 = __hurd_fail (EMFILE);
+ else if (err)
+ fd2 = __hurd_fail (EINVAL);
+ else if (ctty != MACH_PORT_NULL)
+ {
+ /* We have confirmed the io server port has got a user ref
+ count, now give ctty port a user ref for the new
+ descriptor. */
+ err = __mach_port_mod_refs (__mach_task_self (), ctty,
+ MACH_PORT_RIGHT_SEND, 1);
+
+ if (err)
+ {
+ /* In this case the io server port has got a ref count
+ but the ctty port failed to get one, so we need to
+ clean the ref count we just assigned. */
+ __mach_port_mod_refs (__mach_task_self (), port,
+ MACH_PORT_RIGHT_SEND, -1);
+
+ if (err == KERN_UREFS_OVERFLOW)
+ fd2 = __hurd_fail (EMFILE);
+ else
+ fd2 = __hurd_fail (EINVAL);
+ }
+ }
+
+ if (!err)
+ {
+ /* The ref counts of the ports are incremented
+ successfully. */
+ /* Install the ports and flags in the new descriptor slot. */
+ __spin_lock (&d2->port.lock);
+ if (flags & O_CLOEXEC)
+ d2->flags = d_flags | FD_CLOEXEC;
+ else
+ /* dup clears FD_CLOEXEC. */
+ d2->flags = d_flags & ~FD_CLOEXEC;
+ _hurd_port_set (&d2->ctty, ctty);
+ _hurd_port_locked_set (&d2->port, port); /* Unlocks D2. */
+ }
}
}
diff --git a/sysdeps/mach/hurd/fcntl.c b/sysdeps/mach/hurd/fcntl.c
index a65c190..de576af 100644
--- a/sysdeps/mach/hurd/fcntl.c
+++ b/sysdeps/mach/hurd/fcntl.c
@@ -83,18 +83,47 @@ __libc_fcntl (int fd, int cmd, ...)
result = -1;
else
{
- /* Give the ports each a user ref for the new descriptor. */
- __mach_port_mod_refs (__mach_task_self (), port,
- MACH_PORT_RIGHT_SEND, 1);
- if (ctty != MACH_PORT_NULL)
- __mach_port_mod_refs (__mach_task_self (), ctty,
- MACH_PORT_RIGHT_SEND, 1);
-
- /* Install the ports and flags in the new descriptor. */
- if (ctty != MACH_PORT_NULL)
- _hurd_port_set (&new->ctty, ctty);
- new->flags = flags;
- _hurd_port_locked_set (&new->port, port); /* Unlocks NEW. */
+ /* Give the io server port a user ref for the new descriptor. */
+ err = __mach_port_mod_refs (__mach_task_self (), port,
+ MACH_PORT_RIGHT_SEND, 1);
+
+ if (err == KERN_UREFS_OVERFLOW)
+ result = __hurd_fail (EMFILE);
+ else if (err)
+ result = __hurd_fail (EINVAL);
+ else if (ctty != MACH_PORT_NULL)
+ {
+ /* We have confirmed the io server port has got a user ref
+ count, now give ctty port a user ref for the new
+ descriptor. */
+ err = __mach_port_mod_refs (__mach_task_self (), ctty,
+ MACH_PORT_RIGHT_SEND, 1);
+
+ if (err)
+ {
+ /* In this case the io server port has got a ref count
+ but the ctty port fails to get one, so we need to clean
+ the ref count we just assigned. */
+ __mach_port_mod_refs (__mach_task_self (), port,
+ MACH_PORT_RIGHT_SEND, -1);
+
+ if (err == KERN_UREFS_OVERFLOW)
+ result = __hurd_fail (EMFILE);
+ else
+ result = __hurd_fail (EINVAL);
+ }
+ }
+
+ if (!err)
+ {
+ /* The ref counts of the ports are incremented successfully. */
+ /* Install the ports and flags in the new descriptor. */
+ if (ctty != MACH_PORT_NULL)
+ _hurd_port_set (&new->ctty, ctty);
+ new->flags = flags;
+ /* Unlocks NEW. */
+ _hurd_port_locked_set (&new->port, port);
+ }
}
HURD_CRITICAL_END;
diff --git a/sysdeps/mach/hurd/futimens.c b/sysdeps/mach/hurd/futimens.c
index 30ef0a6..1212529 100644
--- a/sysdeps/mach/hurd/futimens.c
+++ b/sysdeps/mach/hurd/futimens.c
@@ -32,7 +32,9 @@ __futimens (int fd, const struct timespec tsp[2])
struct timespec atime, mtime;
error_t err;
- utime_ts_from_tspec (tsp, &atime, &mtime);
+ err = utime_ts_from_tspec (tsp, &atime, &mtime);
+ if (err)
+ return err;
err = HURD_DPORT_USE (fd, __file_utimens (port, atime, mtime));
@@ -40,7 +42,9 @@ __futimens (int fd, const struct timespec tsp[2])
{
time_value_t atim, mtim;
- utime_tvalue_from_tspec (tsp, &atim, &mtim);
+ err = utime_tvalue_from_tspec (tsp, &atim, &mtim);
+ if (err)
+ return err;
err = HURD_DPORT_USE (fd, __file_utimes (port, atim, mtim));
}
diff --git a/sysdeps/mach/hurd/futimes.c b/sysdeps/mach/hurd/futimes.c
index 20f47f3..97385d7 100644
--- a/sysdeps/mach/hurd/futimes.c
+++ b/sysdeps/mach/hurd/futimes.c
@@ -32,7 +32,9 @@ __futimes (int fd, const struct timeval tvp[2])
struct timespec atime, mtime;
error_t err;
- utime_ts_from_tval (tvp, &atime, &mtime);
+ err = utime_ts_from_tval (tvp, &atime, &mtime);
+ if (err)
+ return err;
err = HURD_DPORT_USE (fd, __file_utimens (port, atime, mtime));
@@ -40,7 +42,9 @@ __futimes (int fd, const struct timeval tvp[2])
{
time_value_t atim, mtim;
- utime_tvalue_from_tval (tvp, &atim, &mtim);
+ err = utime_tvalue_from_tval (tvp, &atim, &mtim);
+ if (err)
+ return err;
err = HURD_DPORT_USE (fd, __file_utimes (port, atim, mtim));
}
diff --git a/sysdeps/mach/hurd/getrandom-internal.h b/sysdeps/mach/hurd/getrandom-internal.h
new file mode 100644
index 0000000..8bd718b
--- /dev/null
+++ b/sysdeps/mach/hurd/getrandom-internal.h
@@ -0,0 +1,30 @@
+/* Internal definitions for Hurd getrandom implementation.
+ Copyright (C) 2024-2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#ifndef _GETRANDOM_INTERNAL_H
+#define _GETRANDOM_INTERNAL_H
+
+extern void __mach_init (void);
+
+static inline void __getrandom_early_init (_Bool initial)
+{
+ /* getrandom needs RPCs for time etc. */
+ __mach_init ();
+}
+
+#endif
diff --git a/sysdeps/mach/hurd/i386/bits/sigcontext.h b/sysdeps/mach/hurd/i386/bits/sigcontext.h
index 6e5e220..c44e4de 100644
--- a/sysdeps/mach/hurd/i386/bits/sigcontext.h
+++ b/sysdeps/mach/hurd/i386/bits/sigcontext.h
@@ -88,6 +88,8 @@ struct sigcontext
struct i386_fp_save sc_fpsave;
struct i386_fp_regs sc_fpregs;
int sc_fpexcsr; /* FPSR including exception bits. */
+
+ struct i386_xfloat_state *xstate;
};
/* Traditional BSD names for some members. */
diff --git a/sysdeps/mach/hurd/i386/libc.abilist b/sysdeps/mach/hurd/i386/libc.abilist
index 0b963dc..aac3cb3 100644
--- a/sysdeps/mach/hurd/i386/libc.abilist
+++ b/sysdeps/mach/hurd/i386/libc.abilist
@@ -28,6 +28,8 @@ GLIBC_2.11 mkostemps F
GLIBC_2.11 mkostemps64 F
GLIBC_2.11 mkstemps F
GLIBC_2.11 mkstemps64 F
+GLIBC_2.12 __pthread_get_cleanup_stack F
+GLIBC_2.12 __pthread_key_create F
GLIBC_2.12 __pthread_self F
GLIBC_2.12 pthread_attr_destroy F
GLIBC_2.12 pthread_attr_getdetachstate F
@@ -70,6 +72,9 @@ GLIBC_2.12 pthread_condattr_setclock F
GLIBC_2.12 pthread_condattr_setpshared F
GLIBC_2.12 pthread_equal F
GLIBC_2.12 pthread_getschedparam F
+GLIBC_2.12 pthread_getspecific F
+GLIBC_2.12 pthread_key_create F
+GLIBC_2.12 pthread_key_delete F
GLIBC_2.12 pthread_mutex_destroy F
GLIBC_2.12 pthread_mutex_getprioceiling F
GLIBC_2.12 pthread_mutex_init F
@@ -106,6 +111,7 @@ GLIBC_2.12 pthread_self F
GLIBC_2.12 pthread_setcancelstate F
GLIBC_2.12 pthread_setcanceltype F
GLIBC_2.12 pthread_setschedparam F
+GLIBC_2.12 pthread_setspecific F
GLIBC_2.12 pthread_sigmask F
GLIBC_2.13 __fentry__ F
GLIBC_2.14 syncfs F
@@ -2586,6 +2592,11 @@ GLIBC_2.41 pthread_mutexattr_settype F
GLIBC_2.41 pthread_sigmask F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetobaud F
GLIBC_2.42 pthread_barrier_destroy F
GLIBC_2.42 pthread_barrier_init F
GLIBC_2.42 pthread_barrier_wait F
@@ -2593,6 +2604,9 @@ GLIBC_2.42 pthread_barrierattr_destroy F
GLIBC_2.42 pthread_barrierattr_getpshared F
GLIBC_2.42 pthread_barrierattr_init F
GLIBC_2.42 pthread_barrierattr_setpshared F
+GLIBC_2.42 pthread_getspecific F
+GLIBC_2.42 pthread_key_create F
+GLIBC_2.42 pthread_key_delete F
GLIBC_2.42 pthread_mutex_consistent F
GLIBC_2.42 pthread_mutex_consistent_np F
GLIBC_2.42 pthread_mutex_getprioceiling F
@@ -2614,6 +2628,11 @@ GLIBC_2.42 pthread_rwlockattr_destroy F
GLIBC_2.42 pthread_rwlockattr_getpshared F
GLIBC_2.42 pthread_rwlockattr_init F
GLIBC_2.42 pthread_rwlockattr_setpshared F
+GLIBC_2.42 pthread_setspecific F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
GLIBC_2.5 __readlinkat_chk F
GLIBC_2.5 inet6_opt_append F
GLIBC_2.5 inet6_opt_find F
diff --git a/sysdeps/mach/hurd/i386/libm.abilist b/sysdeps/mach/hurd/i386/libm.abilist
index 8d76dd8..47d215f 100644
--- a/sysdeps/mach/hurd/i386/libm.abilist
+++ b/sysdeps/mach/hurd/i386/libm.abilist
@@ -1277,6 +1277,14 @@ GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpif64x F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf128 F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnf64x F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf128 F
@@ -1293,6 +1301,14 @@ GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrf64x F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf128 F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnf64x F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf128 F
diff --git a/sysdeps/mach/hurd/i386/libpthread.abilist b/sysdeps/mach/hurd/i386/libpthread.abilist
index b067d37..9d2c4cd 100644
--- a/sysdeps/mach/hurd/i386/libpthread.abilist
+++ b/sysdeps/mach/hurd/i386/libpthread.abilist
@@ -1,7 +1,5 @@
GLIBC_2.12 __mutex_lock_solid F
GLIBC_2.12 __mutex_unlock_solid F
-GLIBC_2.12 __pthread_get_cleanup_stack F
-GLIBC_2.12 __pthread_key_create F
GLIBC_2.12 __pthread_kill F
GLIBC_2.12 __pthread_mutex_transfer_np F
GLIBC_2.12 __pthread_spin_destroy F
@@ -29,15 +27,11 @@ GLIBC_2.12 pthread_exit F
GLIBC_2.12 pthread_getattr_np F
GLIBC_2.12 pthread_getconcurrency F
GLIBC_2.12 pthread_getcpuclockid F
-GLIBC_2.12 pthread_getspecific F
GLIBC_2.12 pthread_join F
-GLIBC_2.12 pthread_key_create F
-GLIBC_2.12 pthread_key_delete F
GLIBC_2.12 pthread_kill F
GLIBC_2.12 pthread_mutex_transfer_np F
GLIBC_2.12 pthread_setconcurrency F
GLIBC_2.12 pthread_setschedprio F
-GLIBC_2.12 pthread_setspecific F
GLIBC_2.12 pthread_spin_destroy F
GLIBC_2.12 pthread_spin_init F
GLIBC_2.12 pthread_spin_lock F
diff --git a/sysdeps/mach/hurd/i386/sigreturn.c b/sysdeps/mach/hurd/i386/sigreturn.c
index ce8df8d..dc57d61 100644
--- a/sysdeps/mach/hurd/i386/sigreturn.c
+++ b/sysdeps/mach/hurd/i386/sigreturn.c
@@ -21,6 +21,8 @@
#include <stdlib.h>
#include <string.h>
+#include <cpuid.h>
+
/* This is run on the thread stack after restoring it, to be able to
unlock SS off sigstack. */
static void
@@ -123,10 +125,35 @@ __sigreturn (struct sigcontext *scp)
if (scp->sc_onstack)
ss->sigaltstack.ss_flags &= ~SS_ONSTACK;
- if (scp->sc_fpused)
- /* Restore the FPU state. Mach conveniently stores the state
- in the format the i387 `frstor' instruction uses to restore it. */
- asm volatile ("frstor %0" : : "m" (scp->sc_fpsave));
+#ifdef i386_XFLOAT_STATE
+ if (scp->xstate)
+ {
+ if (scp->xstate->initialized)
+ {
+ unsigned eax, ebx, ecx, edx;
+ __cpuid_count(0xd, 0, eax, ebx, ecx, edx);
+ switch (scp->xstate->fp_save_kind)
+ {
+ case 0: // FNSAVE
+ asm volatile("frstor %0" : : "m" (scp->xstate->hw_state));
+ break;
+ case 1: // FXSAVE
+ asm volatile("fxrstor %0" : : "m" (scp->xstate->hw_state), \
+ "a" (eax), "d" (edx));
+ break;
+ default: // XSAVE, XSAVEOPT, XSAVEC, XSAVES
+ asm volatile("xrstor %0" : : "m" (scp->xstate->hw_state), \
+ "a" (eax), "d" (edx));
+ break;
+ }
+ }
+ }
+ else
+#endif
+ if (scp->sc_fpused)
+ /* Restore the FPU state. Mach conveniently stores the state
+ in the format the i387 `frstor' instruction uses to restore it. */
+ asm volatile ("frstor %0" : : "m" (scp->sc_fpsave));
{
/* There are convenient instructions to pop state off the stack, so we
diff --git a/sysdeps/mach/hurd/renameat2.c b/sysdeps/mach/hurd/renameat2.c
index 59a4e31..5b09fed 100644
--- a/sysdeps/mach/hurd/renameat2.c
+++ b/sysdeps/mach/hurd/renameat2.c
@@ -37,15 +37,28 @@ __renameat2 (int oldfd, const char *old, int newfd, const char *new,
if (flags & RENAME_NOREPLACE)
excl = 1;
- olddir = __directory_name_split_at (oldfd, old, (char **) &oldname);
+ olddir = __file_name_split_at (oldfd, old, (char **) &oldname);
if (olddir == MACH_PORT_NULL)
return -1;
- newdir = __directory_name_split_at (newfd, new, (char **) &newname);
+ if (!*oldname)
+ {
+ /* Trailing slash. */
+ __mach_port_deallocate (__mach_task_self (), olddir);
+ return __hurd_fail (ENOTDIR);
+ }
+ newdir = __file_name_split_at (newfd, new, (char **) &newname);
if (newdir == MACH_PORT_NULL)
{
- __mach_port_deallocate (__mach_task_self (), olddir);
+ __mach_port_deallocate (__mach_task_self (), olddir);
return -1;
}
+ if (!*newname)
+ {
+ /* Trailing slash. */
+ __mach_port_deallocate (__mach_task_self (), olddir);
+ __mach_port_deallocate (__mach_task_self (), newdir);
+ return __hurd_fail (ENOTDIR);
+ }
err = __dir_rename (olddir, oldname, newdir, newname, excl);
__mach_port_deallocate (__mach_task_self (), olddir);
diff --git a/sysdeps/mach/hurd/symlinkat.c b/sysdeps/mach/hurd/symlinkat.c
index e7dfb67..cb6250e 100644
--- a/sysdeps/mach/hurd/symlinkat.c
+++ b/sysdeps/mach/hurd/symlinkat.c
@@ -47,7 +47,7 @@ __symlinkat (const char *from, int fd, const char *to)
if (! *name)
/* Can't link to the existing directory itself. */
- err = ENOTDIR;
+ err = EEXIST;
else
/* Create a new, unlinked node in the target directory. */
err = __dir_mkfile (dir, O_WRITE, 0777 & ~_hurd_umask, &node);
diff --git a/sysdeps/mach/hurd/utime-helper.c b/sysdeps/mach/hurd/utime-helper.c
index d88bccd..6afa871 100644
--- a/sysdeps/mach/hurd/utime-helper.c
+++ b/sysdeps/mach/hurd/utime-helper.c
@@ -21,8 +21,14 @@
#include <stddef.h>
#include <sys/time.h>
+static inline bool
+check_tval (const struct timeval *tvp)
+{
+ return tvp->tv_usec >= 0 && tvp->tv_usec < USEC_PER_SEC;
+}
+
/* Initializes atime/mtime timespec structures from an array of timeval. */
-static inline void
+static inline error_t
utime_ts_from_tval (const struct timeval tvp[2],
struct timespec *atime, struct timespec *mtime)
{
@@ -37,13 +43,19 @@ utime_ts_from_tval (const struct timeval tvp[2],
}
else
{
+ if (!check_tval (&tvp[0]))
+ return EINVAL;
+ if (!check_tval (&tvp[1]))
+ return EINVAL;
+
TIMEVAL_TO_TIMESPEC (&tvp[0], atime);
TIMEVAL_TO_TIMESPEC (&tvp[1], mtime);
}
+ return 0;
}
/* Initializes atime/mtime time_value_t structures from an array of timeval. */
-static inline void
+static inline error_t
utime_tvalue_from_tval (const struct timeval tvp[2],
time_value_t *atime, time_value_t *mtime)
{
@@ -53,11 +65,17 @@ utime_tvalue_from_tval (const struct timeval tvp[2],
atime->microseconds = mtime->microseconds = -1;
else
{
+ if (!check_tval (&tvp[0]))
+ return EINVAL;
+ if (!check_tval (&tvp[1]))
+ return EINVAL;
+
atime->seconds = tvp[0].tv_sec;
atime->microseconds = tvp[0].tv_usec;
mtime->seconds = tvp[1].tv_sec;
mtime->microseconds = tvp[1].tv_usec;
}
+ return 0;
}
/* Changes the access time of the file behind PORT using a timeval array. */
@@ -67,7 +85,9 @@ hurd_futimes (const file_t port, const struct timeval tvp[2])
error_t err;
struct timespec atime, mtime;
- utime_ts_from_tval (tvp, &atime, &mtime);
+ err = utime_ts_from_tval (tvp, &atime, &mtime);
+ if (err)
+ return err;
err = __file_utimens (port, atime, mtime);
@@ -75,7 +95,9 @@ hurd_futimes (const file_t port, const struct timeval tvp[2])
{
time_value_t atim, mtim;
- utime_tvalue_from_tval (tvp, &atim, &mtim);
+ err = utime_tvalue_from_tval (tvp, &atim, &mtim);
+ if (err)
+ return err;
err = __file_utimes (port, atim, mtim);
}
@@ -83,8 +105,16 @@ hurd_futimes (const file_t port, const struct timeval tvp[2])
return err;
}
+static inline bool
+check_tspec (const struct timespec *tsp)
+{
+ return tsp->tv_nsec == UTIME_NOW
+ || tsp->tv_nsec == UTIME_OMIT
+ || tsp->tv_nsec >= 0 && tsp->tv_nsec < NSEC_PER_SEC;
+}
+
/* Initializes atime/mtime timespec structures from an array of timespec. */
-static inline void
+static inline error_t
utime_ts_from_tspec (const struct timespec tsp[2],
struct timespec *atime, struct timespec *mtime)
{
@@ -99,13 +129,19 @@ utime_ts_from_tspec (const struct timespec tsp[2],
}
else
{
+ if (!check_tspec (&tsp[0]))
+ return EINVAL;
+ if (!check_tspec (&tsp[1]))
+ return EINVAL;
+
*atime = tsp[0];
*mtime = tsp[1];
}
+ return 0;
}
/* Initializes atime/mtime time_value_t structures from an array of timespec. */
-static inline void
+static inline error_t
utime_tvalue_from_tspec (const struct timespec tsp[2],
time_value_t *atime, time_value_t *mtime)
{
@@ -115,6 +151,11 @@ utime_tvalue_from_tspec (const struct timespec tsp[2],
atime->microseconds = mtime->microseconds = -1;
else
{
+ if (!check_tspec (&tsp[0]))
+ return EINVAL;
+ if (!check_tspec (&tsp[1]))
+ return EINVAL;
+
if (tsp[0].tv_nsec == UTIME_NOW)
atime->microseconds = -1;
else if (tsp[0].tv_nsec == UTIME_OMIT)
@@ -128,6 +169,7 @@ utime_tvalue_from_tspec (const struct timespec tsp[2],
else
TIMESPEC_TO_TIME_VALUE (mtime, &(tsp[1]));
}
+ return 0;
}
/* Changes the access time of the file behind PORT using a timespec array. */
@@ -137,7 +179,9 @@ hurd_futimens (const file_t port, const struct timespec tsp[2])
error_t err;
struct timespec atime, mtime;
- utime_ts_from_tspec (tsp, &atime, &mtime);
+ err = utime_ts_from_tspec (tsp, &atime, &mtime);
+ if (err)
+ return err;
err = __file_utimens (port, atime, mtime);
@@ -145,7 +189,9 @@ hurd_futimens (const file_t port, const struct timespec tsp[2])
{
time_value_t atim, mtim;
- utime_tvalue_from_tspec (tsp, &atim, &mtim);
+ err = utime_tvalue_from_tspec (tsp, &atim, &mtim);
+ if (err)
+ return err;
err = __file_utimes (port, atim, mtim);
}
diff --git a/sysdeps/mach/hurd/x86/trampoline.c b/sysdeps/mach/hurd/x86/trampoline.c
index 8e2890f..6f23c56 100644
--- a/sysdeps/mach/hurd/x86/trampoline.c
+++ b/sysdeps/mach/hurd/x86/trampoline.c
@@ -26,7 +26,11 @@
#include "hurdfault.h"
#include <intr-msg.h>
#include <sys/ucontext.h>
-
+#ifdef __x86_64__
+#include <mach/x86_64/mach_i386.h>
+#else
+#include <mach/i386/mach_i386.h>
+#endif
/* Fill in a siginfo_t structure for SA_SIGINFO-enabled handlers. */
static void fill_siginfo (siginfo_t *si, int signo,
@@ -106,6 +110,7 @@ _hurd_setup_sighandler (struct hurd_sigstate *ss, const struct sigaction *action
void firewall (void);
void *sigsp;
struct sigcontext *scp;
+ vm_size_t xstate_size;
struct
{
union
@@ -145,6 +150,14 @@ _hurd_setup_sighandler (struct hurd_sigstate *ss, const struct sigaction *action
struct hurd_userlink link;
ucontext_t ucontext;
siginfo_t siginfo;
+#ifdef __x86_64__
+ char _pad2[56];
+#else
+ char _pad2[20];
+#endif
+ char xstate[];
+ /* Don't add anything after xstate, as it's dynamically
+ sized. */
} *stackframe;
#ifdef __x86_64__
@@ -170,6 +183,17 @@ _hurd_setup_sighandler (struct hurd_sigstate *ss, const struct sigaction *action
if (! machine_get_basic_state (ss->thread, state))
return NULL;
+ /* Initialize the size of the CPU extended state, to be saved during
+ * signal handling */
+#ifdef i386_XFLOAT_STATE
+ _Static_assert ((sizeof(*stackframe) + sizeof(struct i386_xfloat_state)) % 64 == 0,
+ "stackframe size must be multiple of 64-byte minus "
+ "sizeof(struct i386_xfloat_state), please adjust _pad2");
+
+ if (__i386_get_xstate_size(__mach_host_self(), &xstate_size))
+#endif
+ xstate_size = 0;
+
/* Save the original SP in the gratuitous `esp' slot.
We may need to reset the SP (the `uesp' slot) to avoid clobbering an
interrupted RPC frame. */
@@ -196,14 +220,21 @@ _hurd_setup_sighandler (struct hurd_sigstate *ss, const struct sigaction *action
#endif
}
- /* Push the arguments to call `trampoline' on the stack. */
- sigsp -= sizeof (*stackframe);
-#ifdef __x86_64__
- /* Align SP at 16 bytes. Coupled with the fact that sigreturn_addr is
- 16-byte aligned within the stackframe struct, this ensures that it ends
- up on a 16-byte aligned address, as required by the ABI. */
- sigsp = (void *) ((uintptr_t) sigsp & ~15UL);
-#endif
+ /* Push the arguments to call `trampoline' on the stack.
+ * The extended state might have a variable size depending on the platform,
+ * so we dynamically allocate it on the stack frame.*/
+ sigsp -= sizeof (*stackframe) + xstate_size;
+
+ /* Align SP at 64 bytes. This is needed for two reasons:
+ * - sigreturn_addr is 16-byte aligned within the stackframe
+ * struct, and this ensures that it ends up on a 16-byte aligned
+ * address, as required by the ABI.
+ * - the XSAVE state needs to be aligned at 64 bytes (on both i386 and
+ * x86_64), so we align the stackframe also at 64 bytes and add the
+ * required padding at the end, see the _pad2 field.
+ */
+ sigsp = (void *) ((uintptr_t) sigsp & ~63UL);
+
stackframe = sigsp;
if (_hurdsig_catch_memory_fault (stackframe))
@@ -248,14 +279,40 @@ _hurd_setup_sighandler (struct hurd_sigstate *ss, const struct sigaction *action
memcpy (&scp->sc_i386_thread_state,
&state->basic, sizeof (state->basic));
- /* struct sigcontext is laid out so that starting at sc_fpkind mimics
- a struct i386_float_state. */
- _Static_assert (offsetof (struct sigcontext, sc_i386_float_state)
- % __alignof__ (struct i386_float_state) == 0,
- "sc_i386_float_state layout mismatch");
- ok = machine_get_state (ss->thread, state, i386_FLOAT_STATE,
- &state->fpu, &scp->sc_i386_float_state,
- sizeof (state->fpu));
+ scp->xstate = NULL;
+#ifdef i386_XFLOAT_STATE
+ if (xstate_size > 0)
+ {
+ mach_msg_type_number_t got = (xstate_size / sizeof (int));
+
+ ok = (! __thread_get_state (ss->thread, i386_XFLOAT_STATE,
+ (thread_state_t) stackframe->xstate, &got)
+ && got == (xstate_size / sizeof (int)));
+
+ if (ok && ((struct i386_xfloat_state*) stackframe->xstate)->fp_save_kind > 5)
+ /* We support up to XSAVES */
+ ok = 0;
+
+ if (ok)
+ {
+ scp->xstate = (struct i386_xfloat_state*) stackframe->xstate;
+ assert((uintptr_t)scp->xstate->hw_state % 64 == 0);
+ }
+ }
+ else
+#endif
+ ok = 0;
+ if (!ok)
+ {
+ /* struct sigcontext is laid out so that starting at sc_fpkind mimics
+ a struct i386_float_state. */
+ _Static_assert (offsetof (struct sigcontext, sc_i386_float_state)
+ % __alignof__ (struct i386_float_state) == 0,
+ "sc_i386_float_state layout mismatch");
+ ok = machine_get_state (ss->thread, state, i386_FLOAT_STATE,
+ &state->fpu, &scp->sc_i386_float_state,
+ sizeof (state->fpu));
+ }
/* Set up the arguments for the signal handler. */
stackframe->signo = signo;
@@ -404,7 +461,10 @@ _hurd_setup_sighandler (struct hurd_sigstate *ss, const struct sigaction *action
- in gdb: gdb/i386-gnu-tdep.c gnu_sigtramp_code. */
#ifdef __x86_64__
-asm ("rpc_wait_trampoline:\n"
+asm ("trampoline:\n"
+ "fnclex\n" /* Clear any pending exception. */
+ "jmp _trampoline\n"
+ "rpc_wait_trampoline:\n"
/* This is the entry point when we have an RPC reply message to receive
before running the handler. The MACH_MSG_SEND bit has already been
cleared in the OPTION argument in our %rsi. The interrupted user
@@ -423,7 +483,7 @@ asm ("rpc_wait_trampoline:\n"
/* Switch to the signal stack. */
"movq %rbx, %rsp\n"
- "trampoline:\n"
+ "_trampoline:\n"
/* Entry point for running the handler normally. The arguments to the
handler function are on the top of the stack, same as in the i386
version:
@@ -449,7 +509,10 @@ asm ("rpc_wait_trampoline:\n"
"movq 16(%rsp), %rdi\n"
"ret");
#else
-asm ("rpc_wait_trampoline:\n");
+asm ("trampoline:\n"
+ "fnclex\n" /* Clear any pending exception. */
+ "jmp _trampoline\n"
+ "rpc_wait_trampoline:\n");
/* This is the entry point when we have an RPC reply message to receive
before running the handler. The MACH_MSG_SEND bit has already been
cleared in the OPTION argument on our stack. The interrupted user
@@ -469,7 +532,7 @@ asm (/* Retry the interrupted mach_msg system call. */
/* Switch to the signal stack. */
"movl %ebx, %esp\n");
- asm ("trampoline:\n");
+asm ("_trampoline:\n");
/* Entry point for running the handler normally. The arguments to the
handler function are already on the top of the stack:
diff --git a/sysdeps/mach/hurd/x86_64/bits/sigcontext.h b/sysdeps/mach/hurd/x86_64/bits/sigcontext.h
index 7bac881..d83795f 100644
--- a/sysdeps/mach/hurd/x86_64/bits/sigcontext.h
+++ b/sysdeps/mach/hurd/x86_64/bits/sigcontext.h
@@ -96,6 +96,8 @@ struct sigcontext
struct i386_fp_save sc_fpsave;
struct i386_fp_regs sc_fpregs;
int sc_fpexcsr; /* FPSR including exception bits. */
+
+ struct i386_xfloat_state *xstate;
};
/* Traditional BSD names for some members. */
diff --git a/sysdeps/mach/hurd/x86_64/libc.abilist b/sysdeps/mach/hurd/x86_64/libc.abilist
index b9e9349..8f9d6aa 100644
--- a/sysdeps/mach/hurd/x86_64/libc.abilist
+++ b/sysdeps/mach/hurd/x86_64/libc.abilist
@@ -392,6 +392,7 @@ GLIBC_2.38 __profile_frequency F
GLIBC_2.38 __progname D 0x8
GLIBC_2.38 __progname_full D 0x8
GLIBC_2.38 __pthread_get_cleanup_stack F
+GLIBC_2.38 __pthread_key_create F
GLIBC_2.38 __pthread_self F
GLIBC_2.38 __ptsname_r_chk F
GLIBC_2.38 __pwrite64 F
@@ -1554,6 +1555,9 @@ GLIBC_2.38 pthread_condattr_setpshared F
GLIBC_2.38 pthread_equal F
GLIBC_2.38 pthread_exit F
GLIBC_2.38 pthread_getschedparam F
+GLIBC_2.38 pthread_getspecific F
+GLIBC_2.38 pthread_key_create F
+GLIBC_2.38 pthread_key_delete F
GLIBC_2.38 pthread_mutex_clocklock F
GLIBC_2.38 pthread_mutex_consistent F
GLIBC_2.38 pthread_mutex_consistent_np F
@@ -1599,6 +1603,7 @@ GLIBC_2.38 pthread_self F
GLIBC_2.38 pthread_setcancelstate F
GLIBC_2.38 pthread_setcanceltype F
GLIBC_2.38 pthread_setschedparam F
+GLIBC_2.38 pthread_setspecific F
GLIBC_2.38 pthread_sigmask F
GLIBC_2.38 ptrace F
GLIBC_2.38 ptsname F
@@ -2269,6 +2274,11 @@ GLIBC_2.41 pthread_mutexattr_settype F
GLIBC_2.41 pthread_sigmask F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetobaud F
GLIBC_2.42 pthread_barrier_destroy F
GLIBC_2.42 pthread_barrier_init F
GLIBC_2.42 pthread_barrier_wait F
@@ -2276,6 +2286,9 @@ GLIBC_2.42 pthread_barrierattr_destroy F
GLIBC_2.42 pthread_barrierattr_getpshared F
GLIBC_2.42 pthread_barrierattr_init F
GLIBC_2.42 pthread_barrierattr_setpshared F
+GLIBC_2.42 pthread_getspecific F
+GLIBC_2.42 pthread_key_create F
+GLIBC_2.42 pthread_key_delete F
GLIBC_2.42 pthread_mutex_consistent F
GLIBC_2.42 pthread_mutex_consistent_np F
GLIBC_2.42 pthread_mutex_getprioceiling F
@@ -2297,6 +2310,11 @@ GLIBC_2.42 pthread_rwlockattr_destroy F
GLIBC_2.42 pthread_rwlockattr_getpshared F
GLIBC_2.42 pthread_rwlockattr_init F
GLIBC_2.42 pthread_rwlockattr_setpshared F
+GLIBC_2.42 pthread_setspecific F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
HURD_CTHREADS_0.3 __cthread_getspecific F
HURD_CTHREADS_0.3 __cthread_keycreate F
HURD_CTHREADS_0.3 __cthread_setspecific F
diff --git a/sysdeps/mach/hurd/x86_64/libm.abilist b/sysdeps/mach/hurd/x86_64/libm.abilist
index 12ae364..52c9d56 100644
--- a/sysdeps/mach/hurd/x86_64/libm.abilist
+++ b/sysdeps/mach/hurd/x86_64/libm.abilist
@@ -1134,6 +1134,14 @@ GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpif64x F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf128 F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnf64x F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf128 F
@@ -1150,6 +1158,14 @@ GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrf64x F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf128 F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnf64x F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf128 F
diff --git a/sysdeps/mach/hurd/x86_64/libpthread.abilist b/sysdeps/mach/hurd/x86_64/libpthread.abilist
index 6b8acec..81d355a 100644
--- a/sysdeps/mach/hurd/x86_64/libpthread.abilist
+++ b/sysdeps/mach/hurd/x86_64/libpthread.abilist
@@ -5,8 +5,6 @@ GLIBC_2.38 __errno_location F
GLIBC_2.38 __h_errno_location F
GLIBC_2.38 __mutex_lock_solid F
GLIBC_2.38 __mutex_unlock_solid F
-GLIBC_2.38 __pthread_get_cleanup_stack F
-GLIBC_2.38 __pthread_key_create F
GLIBC_2.38 __pthread_kill F
GLIBC_2.38 __pthread_mutex_transfer_np F
GLIBC_2.38 __pthread_spin_destroy F
@@ -47,17 +45,13 @@ GLIBC_2.38 pthread_exit F
GLIBC_2.38 pthread_getattr_np F
GLIBC_2.38 pthread_getconcurrency F
GLIBC_2.38 pthread_getcpuclockid F
-GLIBC_2.38 pthread_getspecific F
GLIBC_2.38 pthread_hurd_cond_timedwait_np F
GLIBC_2.38 pthread_hurd_cond_wait_np F
GLIBC_2.38 pthread_join F
-GLIBC_2.38 pthread_key_create F
-GLIBC_2.38 pthread_key_delete F
GLIBC_2.38 pthread_kill F
GLIBC_2.38 pthread_mutex_transfer_np F
GLIBC_2.38 pthread_setconcurrency F
GLIBC_2.38 pthread_setschedprio F
-GLIBC_2.38 pthread_setspecific F
GLIBC_2.38 pthread_spin_destroy F
GLIBC_2.38 pthread_spin_init F
GLIBC_2.38 pthread_spin_lock F
diff --git a/sysdeps/mach/hurd/x86_64/sigreturn.c b/sysdeps/mach/hurd/x86_64/sigreturn.c
index 81a2d3b..773c00f 100644
--- a/sysdeps/mach/hurd/x86_64/sigreturn.c
+++ b/sysdeps/mach/hurd/x86_64/sigreturn.c
@@ -20,6 +20,8 @@
#include <hurd/msg.h>
#include <stdlib.h>
+#include <cpuid.h>
+
/* This is run on the thread stack after restoring it, to be able to
unlock SS off sigstack. */
void
@@ -116,10 +118,35 @@ __sigreturn (struct sigcontext *scp)
if (scp->sc_onstack)
ss->sigaltstack.ss_flags &= ~SS_ONSTACK;
- if (scp->sc_fpused)
- /* Restore the FPU state. Mach conveniently stores the state
- in the format the i387 `frstor' instruction uses to restore it. */
- asm volatile ("frstor %0" : : "m" (scp->sc_fpsave));
+#ifdef i386_XFLOAT_STATE
+ if (scp->xstate)
+ {
+ if (scp->xstate->initialized)
+ {
+ unsigned eax, ebx, ecx, edx;
+ __cpuid_count(0xd, 0, eax, ebx, ecx, edx);
+ switch (scp->xstate->fp_save_kind)
+ {
+ case 0: // FNSAVE
+ asm volatile("frstor %0" : : "m" (scp->xstate->hw_state));
+ break;
+ case 1: // FXSAVE
+ asm volatile("fxrstor %0" : : "m" (scp->xstate->hw_state), \
+ "a" (eax), "d" (edx));
+ break;
+ default: // XSAVE, XSAVEOPT, XSAVEC, XSAVES
+ asm volatile("xrstor %0" : : "m" (scp->xstate->hw_state), \
+ "a" (eax), "d" (edx));
+ break;
+ }
+ }
+ }
+ else
+#endif
+ if (scp->sc_fpused)
+ /* Restore the FPU state. Mach conveniently stores the state
+ in the format the i387 `frstor' instruction uses to restore it. */
+ asm volatile ("frstor %0" : : "m" (scp->sc_fpsave));
/* Copy the registers onto the user's stack, to be able to release the
altstack (by unlocking sigstate). Note that unless an altstack is used,
diff --git a/sysdeps/mach/sysdep.h b/sysdeps/mach/sysdep.h
index 8293c66..581bdcd 100644
--- a/sysdeps/mach/sysdep.h
+++ b/sysdeps/mach/sysdep.h
@@ -20,6 +20,11 @@
/* Get the Mach definitions of ENTRY and kernel_trap. */
#include <mach/machine/syscall_sw.h>
+/* This macro is defined in Mach system headers, but string functions use it
+ with different definitions depending on whether being compiled for
+ wide-characters or not. */
+#undef P2ALIGN
+
/* The Mach definitions assume underscores should be prepended to
symbol names. Redefine them to do so only when appropriate. */
#undef EXT
diff --git a/sysdeps/posix/libc_fatal.c b/sysdeps/posix/libc_fatal.c
index d90cc6c..6f75197 100644
--- a/sysdeps/posix/libc_fatal.c
+++ b/sysdeps/posix/libc_fatal.c
@@ -16,23 +16,13 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
-#include <atomic.h>
-#include <errno.h>
-#include <fcntl.h>
+#include <assert.h>
#include <ldsodefs.h>
-#include <libc-pointer-arith.h>
-#include <paths.h>
+#include <setvmaname.h>
#include <stdarg.h>
-#include <stdbool.h>
#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <sysdep.h>
-#include <unistd.h>
-#include <sys/mman.h>
#include <sys/uio.h>
-#include <not-cancel.h>
-#include <setvmaname.h>
+#include <unistd.h>
#ifdef FATAL_PREPARE_INCLUDE
#include FATAL_PREPARE_INCLUDE
@@ -47,6 +37,10 @@ writev_for_fatal (int fd, const struct iovec *iov, size_t niov, size_t total)
}
#endif
+/* At most a substring before each conversion specification and the
+ trailing substring (the plus one). */
+#define IOVEC_MAX (LIBC_MESSAGE_MAX_ARGS * 2 + 1)
+
/* Abort with an error message. */
void
__libc_message_impl (const char *fmt, ...)
@@ -61,7 +55,7 @@ __libc_message_impl (const char *fmt, ...)
if (fd == -1)
fd = STDERR_FILENO;
- struct iovec iov[LIBC_MESSAGE_MAX_ARGS * 2 - 1];
+ struct iovec iov[IOVEC_MAX];
int iovcnt = 0;
ssize_t total = 0;
@@ -99,6 +93,16 @@ __libc_message_impl (const char *fmt, ...)
iov[iovcnt].iov_len = len;
total += len;
iovcnt++;
+
+ if (__glibc_unlikely (iovcnt > IOVEC_MAX))
+ {
+ len = IOVEC_MAX_ERR_MSG_LEN;
+ iov[0].iov_base = (char *) IOVEC_MAX_ERR_MSG;
+ iov[0].iov_len = len;
+ total = len;
+ iovcnt = 1;
+ break;
+ }
}
va_end (ap);
diff --git a/sysdeps/powerpc/Makefile b/sysdeps/powerpc/Makefile
index 5e6cb07..5cdb64f 100644
--- a/sysdeps/powerpc/Makefile
+++ b/sysdeps/powerpc/Makefile
@@ -28,6 +28,11 @@ tst-cache-ppc-static-dlopen-ENV = LD_LIBRARY_PATH=$(objpfx):$(common-objpfx):$(c
$(objpfx)tst-cache-ppc-static-dlopen.out: $(objpfx)mod-cache-ppc.so
$(objpfx)tst-cache-ppc: $(objpfx)mod-cache-ppc.so
+
+# The test checks if the __tls_get_addr does not clobber caller-saved
+# register, so disable the powerpc specific optimization to force a
+# __tls_get_addr call.
+LDFLAGS-tst-tls23-mod.so = -Wl,--no-tls-get-addr-optimize
endif
ifneq (no,$(multi-arch))
diff --git a/sysdeps/powerpc/fpu/math-use-builtins-trunc.h b/sysdeps/powerpc/fpu/math-use-builtins-trunc.h
new file mode 100644
index 0000000..3e6a55d
--- /dev/null
+++ b/sysdeps/powerpc/fpu/math-use-builtins-trunc.h
@@ -0,0 +1,9 @@
+#ifdef _ARCH_PWR5X
+# define USE_TRUNCF_BUILTIN 1
+# define USE_TRUNC_BUILTIN 1
+#else
+# define USE_TRUNCF_BUILTIN 0
+# define USE_TRUNC_BUILTIN 0
+#endif
+#define USE_TRUNCL_BUILTIN 0
+#define USE_TRUNCF128_BUILTIN 0
diff --git a/sysdeps/powerpc/fpu/s_modf.c b/sysdeps/powerpc/fpu/s_modf.c
deleted file mode 100644
index 831072b..0000000
--- a/sysdeps/powerpc/fpu/s_modf.c
+++ /dev/null
@@ -1,59 +0,0 @@
-/* Copyright (C) 2013-2025 Free Software Foundation, Inc.
- This file is part of the GNU C Library
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Library General Public License as
- published by the Free Software Foundation; either version 2 of the
- License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Library General Public License for more details.
-
- You should have received a copy of the GNU Library General Public
- License along with the GNU C Library; see the file COPYING.LIB. If
- not, see <https://www.gnu.org/licenses/>. */
-
-/* ISA 2.07 provides fast GPR to FP instruction (mfvsr{d,wz}) which make
- generic implementation faster. Also disables for old ISAs that do not
- have ceil/floor instructions. */
-#if defined(_ARCH_PWR8) || !defined(_ARCH_PWR5X)
-# include <sysdeps/ieee754/ldbl-opt/s_modf.c>
-#else
-# include <math.h>
-# include <math_ldbl_opt.h>
-# include <libm-alias-double.h>
-
-double
-__modf (double x, double *iptr)
-{
- if (__builtin_isinf (x))
- {
- *iptr = x;
- return copysign (0.0, x);
- }
- else if (__builtin_isnan (x))
- {
- *iptr = NAN;
- return NAN;
- }
-
- if (x >= 0.0)
- {
- *iptr = floor (x);
- return copysign (x - *iptr, x);
- }
- else
- {
- *iptr = ceil (x);
- return copysign (x - *iptr, x);
- }
-}
-# ifndef __modf
-libm_alias_double (__modf, modf)
-# if LONG_DOUBLE_COMPAT (libc, GLIBC_2_0)
-compat_symbol (libc, __modf, modfl, GLIBC_2_0);
-# endif
-# endif
-#endif
diff --git a/sysdeps/powerpc/fpu/s_modff.c b/sysdeps/powerpc/fpu/s_modff.c
deleted file mode 100644
index 79eeb7b..0000000
--- a/sysdeps/powerpc/fpu/s_modff.c
+++ /dev/null
@@ -1,55 +0,0 @@
-/* Copyright (C) 2013-2025 Free Software Foundation, Inc.
- This file is part of the GNU C Library
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Library General Public License as
- published by the Free Software Foundation; either version 2 of the
- License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Library General Public License for more details.
-
- You should have received a copy of the GNU Library General Public
- License along with the GNU C Library; see the file COPYING.LIB. If
- not, see <https://www.gnu.org/licenses/>. */
-
-/* ISA 2.07 provides fast GPR to FP instruction (mfvsr{d,wz}) which make
- generic implementation faster. Also disables for old ISAs that do not
- have ceil/floor instructions. */
-#if defined(_ARCH_PWR8) || !defined(_ARCH_PWR5X)
-# include <sysdeps/ieee754/flt-32/s_modff.c>
-#else
-# include <math.h>
-# include <libm-alias-float.h>
-
-float
-__modff (float x, float *iptr)
-{
- if (__builtin_isinff (x))
- {
- *iptr = x;
- return copysignf (0.0, x);
- }
- else if (__builtin_isnanf (x))
- {
- *iptr = NAN;
- return NAN;
- }
-
- if (x >= 0.0)
- {
- *iptr = floorf (x);
- return copysignf (x - *iptr, x);
- }
- else
- {
- *iptr = ceilf (x);
- return copysignf (x - *iptr, x);
- }
-}
-# ifndef __modff
-libm_alias_float (__modf, modf)
-# endif
-#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modf-power5+.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modf-power5+.c
index b8315c5..48f3a19 100644
--- a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modf-power5+.c
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modf-power5+.c
@@ -17,4 +17,4 @@
<https://www.gnu.org/licenses/>. */
#define __modf __modf_power5plus
-#include <sysdeps/powerpc/fpu/s_modf.c>
+#include <sysdeps/ieee754/dbl-64/s_modf.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modff-power5+.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modff-power5+.c
index 69591da..15bfa0b 100644
--- a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modff-power5+.c
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modff-power5+.c
@@ -17,4 +17,4 @@
<https://www.gnu.org/licenses/>. */
#define __modff __modff_power5plus
-#include <sysdeps/powerpc/fpu/s_modff.c>
+#include <sysdeps/ieee754/flt-32/s_modff.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/Makefile b/sysdeps/powerpc/powerpc32/power4/multiarch/Makefile
index 0a4e828..3a49b85 100644
--- a/sysdeps/powerpc/powerpc32/power4/multiarch/Makefile
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/Makefile
@@ -6,12 +6,9 @@ sysdep_routines += memcpy-power7 memcpy-a2 memcpy-power6 memcpy-cell \
memchr-ppc32 memrchr-power7 memrchr-ppc32 rawmemchr-power7 \
rawmemchr-ppc32 strlen-power7 strlen-ppc32 strnlen-power7 \
strnlen-ppc32 \
- strcasecmp-power7 strcasecmp_l-power7 strncase-power7 \
- strncase_l-power7 strchrnul-power7 strchrnul-ppc32 \
+ strcasecmp-power7 strcasecmp_l-power7 \
+ strchrnul-power7 strchrnul-ppc32 \
strchr-power7 strchr-ppc32 \
wordcopy-power7 wordcopy-ppc32 \
memmove-power7 memmove-ppc
-
-CFLAGS-strncase-power7.c += -mcpu=power7 -funroll-loops
-CFLAGS-strncase_l-power7.c += -mcpu=power7 -funroll-loops
endif
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list.c b/sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list.c
index 68a3f9d..7537f3a 100644
--- a/sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list.c
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list.c
@@ -138,21 +138,6 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array,
IFUNC_IMPL_ADD (array, i, strcasecmp_l, 1,
__strcasecmp_l_ppc))
- /* Support sysdeps/powerpc/powerpc32/power4/multiarch/strncase.c. */
- IFUNC_IMPL (i, name, strncasecmp,
- IFUNC_IMPL_ADD (array, i, strncasecmp,
- hwcap & PPC_FEATURE_HAS_VSX,
- __strncasecmp_power7)
- IFUNC_IMPL_ADD (array, i, strncasecmp, 1, __strncasecmp_ppc))
-
- /* Support sysdeps/powerpc/powerpc32/power4/multiarch/strncase_l.c. */
- IFUNC_IMPL (i, name, strncasecmp_l,
- IFUNC_IMPL_ADD (array, i, strncasecmp_l,
- hwcap & PPC_FEATURE_HAS_VSX,
- __strncasecmp_l_power7)
- IFUNC_IMPL_ADD (array, i, strncasecmp_l, 1,
- __strncasecmp_l_ppc))
-
/* Support sysdeps/powerpc/powerpc32/power4/multiarch/strchrnul.c. */
IFUNC_IMPL (i, name, strchrnul,
IFUNC_IMPL_ADD (array, i, strchrnul,
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strncase.c b/sysdeps/powerpc/powerpc32/power4/multiarch/strncase.c
deleted file mode 100644
index 3cd6433..0000000
--- a/sysdeps/powerpc/powerpc32/power4/multiarch/strncase.c
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Multiple versions of strncasecmp.
- Copyright (C) 2013-2025 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <https://www.gnu.org/licenses/>. */
-
-#if IS_IN (libc)
-# include <string.h>
-# define strncasecmp __strncasecmp_ppc
-extern __typeof (__strncasecmp) __strncasecmp_ppc attribute_hidden;
-extern __typeof (__strncasecmp) __strncasecmp_power7 attribute_hidden;
-#endif
-
-#include <string/strncase.c>
-#undef strncasecmp
-
-#if IS_IN (libc)
-# include <shlib-compat.h>
-# include "init-arch.h"
-
-/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
- ifunc symbol properly. */
-extern __typeof (__strncasecmp) __libc_strncasecmp;
-libc_ifunc (__libc_strncasecmp,
- (hwcap & PPC_FEATURE_HAS_VSX)
- ? __strncasecmp_power7
- : __strncasecmp_ppc);
-weak_alias (__libc_strncasecmp, strncasecmp)
-#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strncase_l.c b/sysdeps/powerpc/powerpc32/power4/multiarch/strncase_l.c
deleted file mode 100644
index 388d482..0000000
--- a/sysdeps/powerpc/powerpc32/power4/multiarch/strncase_l.c
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Multiple versions of strncasecmp_l.
- Copyright (C) 2013-2025 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <https://www.gnu.org/licenses/>. */
-
-#if IS_IN (libc)
-# include <string.h>
-# define strncasecmp_l __strncasecmp_l_ppc
-extern __typeof (__strncasecmp_l) __strncasecmp_l_ppc attribute_hidden;
-extern __typeof (__strncasecmp_l) __strncasecmp_l_power7 attribute_hidden;
-#endif
-
-#include <string/strncase_l.c>
-#undef strncasecmp_l
-
-#if IS_IN (libc)
-# include <shlib-compat.h>
-# include "init-arch.h"
-
-/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
- ifunc symbol properly. */
-extern __typeof (__strncasecmp_l) __libc_strncasecmp_l;
-libc_ifunc (__libc_strncasecmp_l,
- (hwcap & PPC_FEATURE_HAS_VSX)
- ? __strncasecmp_l_power7
- : __strncasecmp_l_ppc);
-
-weak_alias (__libc_strncasecmp_l, strncasecmp_l)
-#endif
diff --git a/sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_modf-power5+.c b/sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_modf-power5+.c
index b8315c5..48f3a19 100644
--- a/sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_modf-power5+.c
+++ b/sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_modf-power5+.c
@@ -17,4 +17,4 @@
<https://www.gnu.org/licenses/>. */
#define __modf __modf_power5plus
-#include <sysdeps/powerpc/fpu/s_modf.c>
+#include <sysdeps/ieee754/dbl-64/s_modf.c>
diff --git a/sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_modff-power5+.c b/sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_modff-power5+.c
index 69591da..15bfa0b 100644
--- a/sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_modff-power5+.c
+++ b/sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_modff-power5+.c
@@ -17,4 +17,4 @@
<https://www.gnu.org/licenses/>. */
#define __modff __modff_power5plus
-#include <sysdeps/powerpc/fpu/s_modff.c>
+#include <sysdeps/ieee754/flt-32/s_modff.c>
diff --git a/sysdeps/powerpc/powerpc64/dl-machine.h b/sysdeps/powerpc/powerpc64/dl-machine.h
index d8d7c8b..89e26bb 100644
--- a/sysdeps/powerpc/powerpc64/dl-machine.h
+++ b/sysdeps/powerpc/powerpc64/dl-machine.h
@@ -363,7 +363,6 @@ elf_machine_runtime_setup (struct link_map *map, struct r_scope_elem *scope[],
/ sizeof (Elf64_Rela));
Elf64_Addr l_addr = map->l_addr;
Elf64_Dyn **info = map->l_info;
- char *p;
extern void _dl_runtime_resolve (void);
extern void _dl_profile_resolve (void);
@@ -435,20 +434,6 @@ elf_machine_runtime_setup (struct link_map *map, struct r_scope_elem *scope[],
offset += PLT_ENTRY_WORDS;
glink_offset += GLINK_ENTRY_WORDS (i);
}
-
- /* Now, we've modified data. We need to write the changes from
- the data cache to a second-level unified cache, then make
- sure that stale data in the instruction cache is removed.
- (In a multiprocessor system, the effect is more complex.)
- Most of the PLT shouldn't be in the instruction cache, but
- there may be a little overlap at the start and the end.
-
- Assumes that dcbst and icbi apply to lines of 16 bytes or
- more. Current known line sizes are 16, 32, and 128 bytes. */
-
- for (p = (char *) plt; p < (char *) &plt[offset]; p += 16)
- PPC_DCBST (p);
- PPC_SYNC;
}
}
return lazy;
diff --git a/sysdeps/powerpc/powerpc64/le/configure b/sysdeps/powerpc/powerpc64/le/configure
index 7092f61..ef17f24 100644
--- a/sysdeps/powerpc/powerpc64/le/configure
+++ b/sysdeps/powerpc/powerpc64/le/configure
@@ -137,75 +137,5 @@ then :
critic_missing="$critic_missing The compiler must support -mabi=ieeelongdouble and -mlong-double-128 simultaneously."
fi
-for ac_prog in $OBJCOPY
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-printf %s "checking for $ac_word... " >&6; }
-if test ${ac_cv_prog_OBJCOPY+y}
-then :
- printf %s "(cached) " >&6
-else case e in #(
- e) if test -n "$OBJCOPY"; then
- ac_cv_prog_OBJCOPY="$OBJCOPY" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- case $as_dir in #(((
- '') as_dir=./ ;;
- */) ;;
- *) as_dir=$as_dir/ ;;
- esac
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
- ac_cv_prog_OBJCOPY="$ac_prog"
- printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi ;;
-esac
-fi
-OBJCOPY=$ac_cv_prog_OBJCOPY
-if test -n "$OBJCOPY"; then
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OBJCOPY" >&5
-printf "%s\n" "$OBJCOPY" >&6; }
-else
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
-printf "%s\n" "no" >&6; }
-fi
-
-
- test -n "$OBJCOPY" && break
-done
-
-if test -z "$OBJCOPY"; then
- ac_verc_fail=yes
-else
- # Found it, now check the version.
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking version of $OBJCOPY" >&5
-printf %s "checking version of $OBJCOPY... " >&6; }
- ac_prog_version=`$OBJCOPY --version 2>&1 | sed -n 's/^.*GNU objcopy.* \([0-9]*\.[0-9.]*\).*$/\1/p'`
- case $ac_prog_version in
- '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
- 2.1[0-9][0-9]*|2.2[6-9]*|2.[3-9][0-9]*|[3-9].*|[1-9][0-9]*)
- ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
- *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
-
- esac
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_prog_version" >&5
-printf "%s\n" "$ac_prog_version" >&6; }
-fi
-if test $ac_verc_fail = yes; then
- AS=: critic_missing="$critic_missing objcopy >= 2.26 is required on powerpc64le"
-fi
-
-
test -n "$critic_missing" && as_fn_error $? "*** $critic_missing" "$LINENO" 5
diff --git a/sysdeps/powerpc/powerpc64/le/configure.ac b/sysdeps/powerpc/powerpc64/le/configure.ac
index 48d7089..79b3d43 100644
--- a/sysdeps/powerpc/powerpc64/le/configure.ac
+++ b/sysdeps/powerpc/powerpc64/le/configure.ac
@@ -66,11 +66,4 @@ CFLAGS="$save_CFLAGS"])
AS_IF([test "$libc_cv_compiler_powerpc64le_ldbl128_mabi" = "no"],
[critic_missing="$critic_missing The compiler must support -mabi=ieeelongdouble and -mlong-double-128 simultaneously."])
-dnl objcopy (binutils) 2.26 or newer required to support the --update-section
-dnl feature for fixing up .gnu.attribute section with IEEE ldbl.
-AC_CHECK_PROG_VER(OBJCOPY, $OBJCOPY, --version,
- [GNU objcopy.* \([0-9]*\.[0-9.]*\)],
- [2.1[0-9][0-9]*|2.2[6-9]*|2.[3-9][0-9]*|[3-9].*|[1-9][0-9]*],
- AS=: critic_missing="$critic_missing objcopy >= 2.26 is required on powerpc64le")
-
test -n "$critic_missing" && AC_MSG_ERROR([*** $critic_missing])
diff --git a/sysdeps/powerpc/powerpc64/le/fpu/e_ilogb.c b/sysdeps/powerpc/powerpc64/le/fpu/e_ilogb.c
new file mode 100644
index 0000000..89e7498
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/le/fpu/e_ilogb.c
@@ -0,0 +1,41 @@
+/* Get integer exponent of a floating-point value.
+ Copyright (C) 1999-2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <limits.h>
+#include <math.h>
+#include <stdbit.h>
+#include "math_config.h"
+
+int
+__ieee754_ilogb (double x)
+{
+ uint64_t ux = asuint64 (x);
+ int ex = (ux & ~SIGN_MASK) >> MANTISSA_WIDTH;
+ if (ex == 0) /* zero or subnormal */
+ {
+ /* Clear sign and exponent */
+ ux <<= 12;
+ if (ux == 0)
+ return FP_ILOGB0;
+ /* subnormal */
+ return -1023 - stdc_leading_zeros (ux);
+ }
+ if (ex == EXPONENT_MASK >> MANTISSA_WIDTH) /* NaN or Inf */
+ return ux << 12 ? FP_ILOGBNAN : INT_MAX;
+ return ex - 1023;
+}
diff --git a/sysdeps/powerpc/powerpc64/le/fpu/e_ilogbf.c b/sysdeps/powerpc/powerpc64/le/fpu/e_ilogbf.c
new file mode 100644
index 0000000..1c2a8a5
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/le/fpu/e_ilogbf.c
@@ -0,0 +1,41 @@
+/* Get integer exponent of a floating-point value.
+ Copyright (C) 1999-2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <limits.h>
+#include <math.h>
+#include <stdbit.h>
+#include "sysdeps/ieee754/flt-32/math_config.h"
+
+int
+__ieee754_ilogbf (float x)
+{
+ uint32_t ux = asuint (x);
+ int ex = (ux & ~SIGN_MASK) >> MANTISSA_WIDTH;
+ if (ex == 0) /* zero or subnormal */
+ {
+ /* Clear sign and exponent. */
+ ux <<= 1 + EXPONENT_WIDTH;
+ if (ux == 0)
+ return FP_ILOGB0;
+ /* sbunormal */
+ return -127 - stdc_leading_zeros (ux);
+ }
+ if (ex == EXPONENT_MASK >> MANTISSA_WIDTH) /* NaN or Inf */
+ return ux << (1 + EXPONENT_WIDTH) ? FP_ILOGBNAN : INT_MAX;
+ return ex - 127;
+}
diff --git a/sysdeps/powerpc/powerpc64/le/fpu/multiarch/Makefile b/sysdeps/powerpc/powerpc64/le/fpu/multiarch/Makefile
index 6d74f09..1a0e496 100644
--- a/sysdeps/powerpc/powerpc64/le/fpu/multiarch/Makefile
+++ b/sysdeps/powerpc/powerpc64/le/fpu/multiarch/Makefile
@@ -91,8 +91,8 @@ gen-libm-f128-ifunc-routines = \
e_expf128 e_fmodf128 e_hypotf128 e_j0f128 e_j1f128 e_jnf128 \
e_lgammaf128_r e_logf128 e_log10f128 e_powf128 e_remainderf128 \
e_sinhf128 e_sqrtf128 e_gammaf128_r e_ilogbf128 k_tanf128 s_asinhf128 \
- s_atanf128 s_cbrtf128 s_ceilf128 s_cosf128 s_erff128 s_exp10m1f128 \
- s_exp2m1f128 s_expm1f128 \
+ s_atanf128 s_cbrtf128 s_ceilf128 s_compoundnf128 s_cosf128 s_erff128 \
+ s_exp10m1f128 s_exp2m1f128 s_expm1f128 \
s_fabsf128 s_floorf128 s_log1pf128 s_logbf128 \
s_rintf128 s_scalblnf128 s_sinf128 s_tanf128 \
s_tanhf128 s_truncf128 s_remquof128 e_log2f128 \
@@ -232,6 +232,7 @@ CFLAGS-s_cexpf128-ifunc.c += -fno-builtin-cexpf64x
CFLAGS-s_cimagf128-ifunc.c += -fno-builtin-cimagf64x
CFLAGS-s_clogf128-ifunc.c += -fno-builtin-clogf64x
CFLAGS-s_clog10f128-ifunc.c += -fno-builtin-clog10f64x
+CFLAGS-s_compoundnf128-ifunc.c += -fno-builtin-compoundnf64x
CFLAGS-s_conjf128-ifunc.c += -fno-builtin-conjf64x
CFLAGS-s_copysignf128-ifunc.c += -fno-builtin-copysignf64x
CFLAGS-s_cosf128-ifunc.c += -fno-builtin-cosf64x
diff --git a/sysdeps/powerpc/powerpc64/le/fpu/multiarch/float128-ifunc-redirects.h b/sysdeps/powerpc/powerpc64/le/fpu/multiarch/float128-ifunc-redirects.h
index 18d09bc..b0cc6fc 100644
--- a/sysdeps/powerpc/powerpc64/le/fpu/multiarch/float128-ifunc-redirects.h
+++ b/sysdeps/powerpc/powerpc64/le/fpu/multiarch/float128-ifunc-redirects.h
@@ -28,6 +28,7 @@ F128_REDIR_PFX_R (floorf128, __,);
F128_REDIR_PFX_R (truncf128, __,);
F128_REDIR_PFX_R (roundf128, __,);
F128_REDIR_PFX_R (fabsf128, __,);
+F128_REDIR_PFX_R (fmaf128, __,);
extern __typeof (ldexpf128) F128_SFX_APPEND (__ldexpf128);
diff --git a/sysdeps/powerpc/powerpc64/le/fpu/multiarch/float128_private.h b/sysdeps/powerpc/powerpc64/le/fpu/multiarch/float128_private.h
index d8d743c..1e3d8dc 100644
--- a/sysdeps/powerpc/powerpc64/le/fpu/multiarch/float128_private.h
+++ b/sysdeps/powerpc/powerpc64/le/fpu/multiarch/float128_private.h
@@ -55,6 +55,7 @@ F128_REDIR (__asinhf128)
F128_REDIR (__atanf128)
F128_REDIR (__cbrtf128)
F128_REDIR (__ceilf128)
+F128_REDIR (__compoundnf128)
F128_REDIR (__cosf128)
F128_REDIR (__erfcf128)
F128_REDIR (__erff128)
diff --git a/sysdeps/powerpc/powerpc64/le/fpu/multiarch/math-type-macros-float128.h b/sysdeps/powerpc/powerpc64/le/fpu/multiarch/math-type-macros-float128.h
index f125b88..56d1bb7 100644
--- a/sysdeps/powerpc/powerpc64/le/fpu/multiarch/math-type-macros-float128.h
+++ b/sysdeps/powerpc/powerpc64/le/fpu/multiarch/math-type-macros-float128.h
@@ -78,6 +78,7 @@ F128_REDIR (__ldexpf128);
F128_REDIR (__cargf128);
F128_REDIR (__cimagf128);
F128_REDIR (__crealf128);
+F128_REDIR (__compoundnf128);
F128_REDIR (__conjf128);
F128_REDIR (__cprojf128);
F128_REDIR (__cabsf128);
diff --git a/sysdeps/powerpc/powerpc64/le/fpu/w_ilogb.c b/sysdeps/powerpc/powerpc64/le/fpu/w_ilogb.c
new file mode 100644
index 0000000..9c26217
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/le/fpu/w_ilogb.c
@@ -0,0 +1,2 @@
+#include <math-type-macros-double.h>
+#include <w_ilogb_template.c>
diff --git a/sysdeps/powerpc/powerpc64/le/fpu/w_ilogbf.c b/sysdeps/powerpc/powerpc64/le/fpu/w_ilogbf.c
new file mode 100644
index 0000000..047ad4b
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/le/fpu/w_ilogbf.c
@@ -0,0 +1,2 @@
+#include <math-type-macros-float.h>
+#include <w_ilogb_template.c>
diff --git a/sysdeps/powerpc/powerpc64/le/fpu/w_llogb.c b/sysdeps/powerpc/powerpc64/le/fpu/w_llogb.c
new file mode 100644
index 0000000..5e8891a
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/le/fpu/w_llogb.c
@@ -0,0 +1,2 @@
+#include <math-type-macros-double.h>
+#include <w_llogb_template.c>
diff --git a/sysdeps/powerpc/powerpc64/le/fpu/w_llogbf.c b/sysdeps/powerpc/powerpc64/le/fpu/w_llogbf.c
new file mode 100644
index 0000000..edb7e9a
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/le/fpu/w_llogbf.c
@@ -0,0 +1,2 @@
+#include <math-type-macros-float.h>
+#include <w_llogb_template.c>
diff --git a/sysdeps/powerpc/powerpc64/le/power10/memchr.S b/sysdeps/powerpc/powerpc64/le/power10/memchr.S
deleted file mode 100644
index 96ad5a2..0000000
--- a/sysdeps/powerpc/powerpc64/le/power10/memchr.S
+++ /dev/null
@@ -1,315 +0,0 @@
-/* Optimized memchr implementation for POWER10 LE.
- Copyright (C) 2021-2025 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <https://www.gnu.org/licenses/>. */
-
-#include <sysdep.h>
-
-# ifndef MEMCHR
-# define MEMCHR __memchr
-# endif
-# define M_VREG_ZERO v20
-# define M_OFF_START_LOOP 256
-# define MEMCHR_SUBTRACT_VECTORS \
- vsububm v4,v4,v18; \
- vsububm v5,v5,v18; \
- vsububm v6,v6,v18; \
- vsububm v7,v7,v18;
-# define M_TAIL(vreg,increment) \
- vctzlsbb r4,vreg; \
- cmpld r5,r4; \
- ble L(null); \
- addi r4,r4,increment; \
- add r3,r6,r4; \
- blr
-
-/* TODO: Replace macros by the actual instructions when minimum binutils becomes
- >= 2.35. This is used to keep compatibility with older versions. */
-#define M_VEXTRACTBM(rt,vrb) \
- .long(((4)<<(32-6)) \
- | ((rt)<<(32-11)) \
- | ((8)<<(32-16)) \
- | ((vrb)<<(32-21)) \
- | 1602)
-
-#define M_LXVP(xtp,dq,ra) \
- .long(((6)<<(32-6)) \
- | ((((xtp)-32)>>1)<<(32-10)) \
- | ((1)<<(32-11)) \
- | ((ra)<<(32-16)) \
- | dq)
-
-#define CHECK16B(vreg,offset,addr,label) \
- lxv vreg+32,offset(addr); \
- vcmpequb. vreg,vreg,v18; \
- bne cr6,L(label); \
- cmpldi r5,16; \
- ble L(null); \
- addi r5,r5,-16;
-
-/* Load 4 quadwords, merge into one VR for speed and check for NULLs. r6 has #
- of bytes already checked. */
-#define CHECK64B(offset,addr,label) \
- M_LXVP(v4+32,offset,addr); \
- M_LXVP(v6+32,offset+32,addr); \
- MEMCHR_SUBTRACT_VECTORS; \
- vminub v14,v4,v5; \
- vminub v15,v6,v7; \
- vminub v16,v14,v15; \
- vcmpequb. v0,v16,M_VREG_ZERO; \
- beq cr6,$+12; \
- li r7,offset; \
- b L(label); \
- cmpldi r5,64; \
- ble L(null); \
- addi r5,r5,-64
-
-/* Implements the function
- void *[r3] memchr (const void *s [r3], int c [r4], size_t n [r5]). */
-
- .machine power9
-
-ENTRY_TOCLESS (MEMCHR)
- CALL_MCOUNT 3
-
- cmpldi r5,0
- beq L(null)
- mr r0,r5
- xori r6,r4,0xff
-
- mtvsrd v18+32,r4 /* matching char in v18 */
- mtvsrd v19+32,r6 /* non matching char in v19 */
-
- vspltb v18,v18,7 /* replicate */
- vspltb v19,v19,7 /* replicate */
- vspltisb M_VREG_ZERO,0
-
- /* Next 16B-aligned address. Prepare address for L(aligned). */
- addi r6,r3,16
- clrrdi r6,r6,4
-
- /* Align data and fill bytes not loaded with non matching char. */
- lvx v0,0,r3
- lvsr v1,0,r3
- vperm v0,v19,v0,v1
-
- vcmpequb. v6,v0,v18
- bne cr6,L(found)
- sub r4,r6,r3
- cmpld r5,r4
- ble L(null)
- sub r5,r5,r4
-
- /* Test up to OFF_START_LOOP-16 bytes in 16B chunks. The main loop is
- optimized for longer strings, so checking the first bytes in 16B
- chunks benefits a lot small strings. */
- .p2align 5
-L(aligned):
- cmpldi r5,0
- beq L(null)
-
- CHECK16B(v0,0,r6,tail1)
- CHECK16B(v1,16,r6,tail2)
- CHECK16B(v2,32,r6,tail3)
- CHECK16B(v3,48,r6,tail4)
- CHECK16B(v4,64,r6,tail5)
- CHECK16B(v5,80,r6,tail6)
- CHECK16B(v6,96,r6,tail7)
- CHECK16B(v7,112,r6,tail8)
- CHECK16B(v8,128,r6,tail9)
- CHECK16B(v9,144,r6,tail10)
- CHECK16B(v10,160,r6,tail11)
- CHECK16B(v0,176,r6,tail12)
- CHECK16B(v1,192,r6,tail13)
- CHECK16B(v2,208,r6,tail14)
- CHECK16B(v3,224,r6,tail15)
-
- cmpdi cr5,r4,0 /* Check if c == 0. This will be useful to
- choose how we will perform the main loop. */
-
- /* Prepare address for the loop. */
- addi r4,r3,M_OFF_START_LOOP
- clrrdi r4,r4,6
- sub r6,r4,r3
- sub r5,r0,r6
- addi r6,r4,128
-
- /* If c == 0, use the loop without the vsububm. */
- beq cr5,L(loop)
-
- /* This is very similar to the block after L(loop), the difference is
- that here MEMCHR_SUBTRACT_VECTORS is not empty, and we subtract
- each byte loaded by the char we are looking for, this way we can keep
- using vminub to merge the results and checking for nulls. */
- .p2align 5
-L(memchr_loop):
- CHECK64B(0,r4,pre_tail_64b)
- CHECK64B(64,r4,pre_tail_64b)
- addi r4,r4,256
-
- CHECK64B(0,r6,tail_64b)
- CHECK64B(64,r6,tail_64b)
- addi r6,r6,256
-
- CHECK64B(0,r4,pre_tail_64b)
- CHECK64B(64,r4,pre_tail_64b)
- addi r4,r4,256
-
- CHECK64B(0,r6,tail_64b)
- CHECK64B(64,r6,tail_64b)
- addi r6,r6,256
-
- b L(memchr_loop)
- /* Switch to a more aggressive approach checking 64B each time. Use 2
- pointers 128B apart and unroll the loop once to make the pointer
- updates and usages separated enough to avoid stalls waiting for
- address calculation. */
- .p2align 5
-L(loop):
-#undef MEMCHR_SUBTRACT_VECTORS
-#define MEMCHR_SUBTRACT_VECTORS /* nothing */
- CHECK64B(0,r4,pre_tail_64b)
- CHECK64B(64,r4,pre_tail_64b)
- addi r4,r4,256
-
- CHECK64B(0,r6,tail_64b)
- CHECK64B(64,r6,tail_64b)
- addi r6,r6,256
-
- CHECK64B(0,r4,pre_tail_64b)
- CHECK64B(64,r4,pre_tail_64b)
- addi r4,r4,256
-
- CHECK64B(0,r6,tail_64b)
- CHECK64B(64,r6,tail_64b)
- addi r6,r6,256
-
- b L(loop)
-
- .p2align 5
-L(pre_tail_64b):
- mr r6,r4
-L(tail_64b):
- /* OK, we found a null byte. Let's look for it in the current 64-byte
- block and mark it in its corresponding VR. lxvp vx,0(ry) puts the
- low 16B bytes into vx+1, and the high into vx, so the order here is
- v5, v4, v7, v6. */
- vcmpequb v1,v5,M_VREG_ZERO
- vcmpequb v2,v4,M_VREG_ZERO
- vcmpequb v3,v7,M_VREG_ZERO
- vcmpequb v4,v6,M_VREG_ZERO
-
- /* Take into account the other 64B blocks we had already checked. */
- add r6,r6,r7
- /* Extract first bit of each byte. */
- M_VEXTRACTBM(r8,v1)
- M_VEXTRACTBM(r9,v2)
- M_VEXTRACTBM(r10,v3)
- M_VEXTRACTBM(r11,v4)
-
- /* Shift each value into their corresponding position. */
- sldi r9,r9,16
- sldi r10,r10,32
- sldi r11,r11,48
-
- /* Merge the results. */
- or r8,r8,r9
- or r9,r10,r11
- or r11,r9,r8
-
- cnttzd r0,r11 /* Count trailing zeros before the match. */
- cmpld r5,r0
- ble L(null)
- add r3,r6,r0 /* Compute final address. */
- blr
-
- .p2align 5
-L(tail1):
- M_TAIL(v0,0)
-
- .p2align 5
-L(tail2):
- M_TAIL(v1,16)
-
- .p2align 5
-L(tail3):
- M_TAIL(v2,32)
-
- .p2align 5
-L(tail4):
- M_TAIL(v3,48)
-
- .p2align 5
-L(tail5):
- M_TAIL(v4,64)
-
- .p2align 5
-L(tail6):
- M_TAIL(v5,80)
-
- .p2align 5
-L(tail7):
- M_TAIL(v6,96)
-
- .p2align 5
-L(tail8):
- M_TAIL(v7,112)
-
- .p2align 5
-L(tail9):
- M_TAIL(v8,128)
-
- .p2align 5
-L(tail10):
- M_TAIL(v9,144)
-
- .p2align 5
-L(tail11):
- M_TAIL(v10,160)
-
- .p2align 5
-L(tail12):
- M_TAIL(v0,176)
-
- .p2align 5
-L(tail13):
- M_TAIL(v1,192)
-
- .p2align 5
-L(tail14):
- M_TAIL(v2,208)
-
- .p2align 5
-L(tail15):
- M_TAIL(v3,224)
-
- .p2align 5
-L(found):
- vctzlsbb r7,v6
- cmpld r5,r7
- ble L(null)
- add r3,r3,r7
- blr
-
- .p2align 5
-L(null):
- li r3,0
- blr
-
-END (MEMCHR)
-
-weak_alias (__memchr, memchr)
-libc_hidden_builtin_def (memchr)
diff --git a/sysdeps/powerpc/powerpc64/le/power10/memcmp.S b/sysdeps/powerpc/powerpc64/le/power10/memcmp.S
index f32dc38..734bf5f 100644
--- a/sysdeps/powerpc/powerpc64/le/power10/memcmp.S
+++ b/sysdeps/powerpc/powerpc64/le/power10/memcmp.S
@@ -18,26 +18,10 @@
#include <sysdep.h>
-/* TODO: Replace macros by the actual instructions when minimum binutils becomes
- >= 2.35. This is used to keep compatibility with older versions. */
-#define VEXTRACTBM(rt,vrb) \
- .long(((4)<<(32-6)) \
- | ((rt)<<(32-11)) \
- | ((8)<<(32-16)) \
- | ((vrb)<<(32-21)) \
- | 1602)
-
-#define LXVP(xtp,dq,ra) \
- .long(((6)<<(32-6)) \
- | ((((xtp)-32)>>1)<<(32-10)) \
- | ((1)<<(32-11)) \
- | ((ra)<<(32-16)) \
- | dq)
-
/* Compare 32 bytes. */
#define COMPARE_32(vr1,vr2,offset,tail_1,tail_2)\
- LXVP(32+vr1,offset,r3); \
- LXVP(32+vr2,offset,r4); \
+ lxvp 32+vr1,offset(r3); \
+ lxvp 32+vr2,offset(r4); \
vcmpneb. v5,vr1+1,vr2+1; \
bne cr6,L(tail_2); \
vcmpneb. v4,vr1,vr2; \
@@ -56,7 +40,7 @@
#ifndef MEMCMP
# define MEMCMP memcmp
#endif
- .machine power9
+ .machine power10
ENTRY_TOCLESS (MEMCMP, 4)
CALL_MCOUNT 3
diff --git a/sysdeps/powerpc/powerpc64/le/power10/memcpy.S b/sysdeps/powerpc/powerpc64/le/power10/memcpy.S
index ed7a9f5..f2a503e 100644
--- a/sysdeps/powerpc/powerpc64/le/power10/memcpy.S
+++ b/sysdeps/powerpc/powerpc64/le/power10/memcpy.S
@@ -26,7 +26,7 @@
/* __ptr_t [r3] memcpy (__ptr_t dst [r3], __ptr_t src [r4], size_t len [r5]);
Returns 'dst'. */
- .machine power9
+ .machine power10
ENTRY_TOCLESS (MEMCPY, 5)
CALL_MCOUNT 3
diff --git a/sysdeps/powerpc/powerpc64/le/power10/memmove.S b/sysdeps/powerpc/powerpc64/le/power10/memmove.S
index 47c2ac3..4aaa1ef 100644
--- a/sysdeps/powerpc/powerpc64/le/power10/memmove.S
+++ b/sysdeps/powerpc/powerpc64/le/power10/memmove.S
@@ -28,7 +28,7 @@
#ifndef MEMMOVE
# define MEMMOVE memmove
#endif
- .machine power9
+ .machine power10
ENTRY_TOCLESS (MEMMOVE, 5)
CALL_MCOUNT 3
diff --git a/sysdeps/powerpc/powerpc64/le/power10/memset.S b/sysdeps/powerpc/powerpc64/le/power10/memset.S
index 29d5114..f9442e7 100644
--- a/sysdeps/powerpc/powerpc64/le/power10/memset.S
+++ b/sysdeps/powerpc/powerpc64/le/power10/memset.S
@@ -25,7 +25,7 @@
# define MEMSET memset
#endif
- .machine power9
+ .machine power10
ENTRY_TOCLESS (MEMSET, 5)
CALL_MCOUNT 3
diff --git a/sysdeps/powerpc/powerpc64/le/power10/strcmp.S b/sysdeps/powerpc/powerpc64/le/power10/strcmp.S
deleted file mode 100644
index fffa1ee..0000000
--- a/sysdeps/powerpc/powerpc64/le/power10/strcmp.S
+++ /dev/null
@@ -1,233 +0,0 @@
-/* Optimized strcmp implementation for PowerPC64/POWER10.
- Copyright (C) 2021-2025 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <https://www.gnu.org/licenses/>. */
-#include <sysdep.h>
-
-#ifndef STRCMP
-# define STRCMP strcmp
-#endif
-
-/* Implements the function
- int [r3] strcmp (const char *s1 [r3], const char *s2 [r4]). */
-
-/* TODO: Change this to actual instructions when minimum binutils is upgraded
- to 2.27. Macros are defined below for these newer instructions in order
- to maintain compatibility. */
-
-#define LXVP(xtp,dq,ra) \
- .long(((6)<<(32-6)) \
- | ((((xtp)-32)>>1)<<(32-10)) \
- | ((1)<<(32-11)) \
- | ((ra)<<(32-16)) \
- | dq)
-
-#define COMPARE_16(vreg1,vreg2,offset) \
- lxv vreg1+32,offset(r3); \
- lxv vreg2+32,offset(r4); \
- vcmpnezb. v7,vreg1,vreg2; \
- bne cr6,L(different); \
-
-#define COMPARE_32(vreg1,vreg2,offset,label1,label2) \
- LXVP(vreg1+32,offset,r3); \
- LXVP(vreg2+32,offset,r4); \
- vcmpnezb. v7,vreg1+1,vreg2+1; \
- bne cr6,L(label1); \
- vcmpnezb. v7,vreg1,vreg2; \
- bne cr6,L(label2); \
-
-#define TAIL(vreg1,vreg2) \
- vctzlsbb r6,v7; \
- vextubrx r5,r6,vreg1; \
- vextubrx r4,r6,vreg2; \
- subf r3,r4,r5; \
- blr; \
-
-#define CHECK_N_BYTES(reg1,reg2,len_reg) \
- sldi r0,len_reg,56; \
- lxvl 32+v4,reg1,r0; \
- lxvl 32+v5,reg2,r0; \
- add reg1,reg1,len_reg; \
- add reg2,reg2,len_reg; \
- vcmpnezb v7,v4,v5; \
- vctzlsbb r6,v7; \
- cmpld cr7,r6,len_reg; \
- blt cr7,L(different); \
-
- /* TODO: change this to .machine power10 when the minimum required
- binutils allows it. */
-
- .machine power9
-ENTRY_TOCLESS (STRCMP, 4)
- andi. r7,r3,4095
- andi. r8,r4,4095
- cmpldi cr0,r7,4096-16
- cmpldi cr1,r8,4096-16
- bgt cr0,L(crosses)
- bgt cr1,L(crosses)
- COMPARE_16(v4,v5,0)
-
-L(crosses):
- andi. r7,r3,15
- subfic r7,r7,16 /* r7(nalign1) = 16 - (str1 & 15). */
- andi. r9,r4,15
- subfic r5,r9,16 /* r5(nalign2) = 16 - (str2 & 15). */
- cmpld cr7,r7,r5
- beq cr7,L(same_aligned)
- blt cr7,L(nalign1_min)
-
- /* nalign2 is minimum and s2 pointer is aligned. */
- CHECK_N_BYTES(r3,r4,r5)
- /* Are we on the 64B hunk which crosses a page? */
- andi. r10,r3,63 /* Determine offset into 64B hunk. */
- andi. r8,r3,15 /* The offset into the 16B hunk. */
- neg r7,r3
- andi. r9,r7,15 /* Number of bytes after a 16B cross. */
- rlwinm. r7,r7,26,0x3F /* ((r3-4096))>>6&63. */
- beq L(compare_64_pagecross)
- mtctr r7
- b L(compare_64B_unaligned)
-
- /* nalign1 is minimum and s1 pointer is aligned. */
-L(nalign1_min):
- CHECK_N_BYTES(r3,r4,r7)
- /* Are we on the 64B hunk which crosses a page? */
- andi. r10,r4,63 /* Determine offset into 64B hunk. */
- andi. r8,r4,15 /* The offset into the 16B hunk. */
- neg r7,r4
- andi. r9,r7,15 /* Number of bytes after a 16B cross. */
- rlwinm. r7,r7,26,0x3F /* ((r4-4096))>>6&63. */
- beq L(compare_64_pagecross)
- mtctr r7
-
- .p2align 5
-L(compare_64B_unaligned):
- COMPARE_16(v4,v5,0)
- COMPARE_16(v4,v5,16)
- COMPARE_16(v4,v5,32)
- COMPARE_16(v4,v5,48)
- addi r3,r3,64
- addi r4,r4,64
- bdnz L(compare_64B_unaligned)
-
- /* Cross the page boundary of s2, carefully. Only for first
- iteration we have to get the count of 64B blocks to be checked.
- From second iteration and beyond, loop counter is always 63. */
-L(compare_64_pagecross):
- li r11, 63
- mtctr r11
- cmpldi r10,16
- ble L(cross_4)
- cmpldi r10,32
- ble L(cross_3)
- cmpldi r10,48
- ble L(cross_2)
-L(cross_1):
- CHECK_N_BYTES(r3,r4,r9)
- CHECK_N_BYTES(r3,r4,r8)
- COMPARE_16(v4,v5,0)
- COMPARE_16(v4,v5,16)
- COMPARE_16(v4,v5,32)
- addi r3,r3,48
- addi r4,r4,48
- b L(compare_64B_unaligned)
-L(cross_2):
- COMPARE_16(v4,v5,0)
- addi r3,r3,16
- addi r4,r4,16
- CHECK_N_BYTES(r3,r4,r9)
- CHECK_N_BYTES(r3,r4,r8)
- COMPARE_16(v4,v5,0)
- COMPARE_16(v4,v5,16)
- addi r3,r3,32
- addi r4,r4,32
- b L(compare_64B_unaligned)
-L(cross_3):
- COMPARE_16(v4,v5,0)
- COMPARE_16(v4,v5,16)
- addi r3,r3,32
- addi r4,r4,32
- CHECK_N_BYTES(r3,r4,r9)
- CHECK_N_BYTES(r3,r4,r8)
- COMPARE_16(v4,v5,0)
- addi r3,r3,16
- addi r4,r4,16
- b L(compare_64B_unaligned)
-L(cross_4):
- COMPARE_16(v4,v5,0)
- COMPARE_16(v4,v5,16)
- COMPARE_16(v4,v5,32)
- addi r3,r3,48
- addi r4,r4,48
- CHECK_N_BYTES(r3,r4,r9)
- CHECK_N_BYTES(r3,r4,r8)
- b L(compare_64B_unaligned)
-
-L(same_aligned):
- CHECK_N_BYTES(r3,r4,r7)
- /* Align s1 to 32B and adjust s2 address.
- Use lxvp only if both s1 and s2 are 32B aligned. */
- COMPARE_16(v4,v5,0)
- COMPARE_16(v4,v5,16)
- COMPARE_16(v4,v5,32)
- COMPARE_16(v4,v5,48)
- addi r3,r3,64
- addi r4,r4,64
- COMPARE_16(v4,v5,0)
- COMPARE_16(v4,v5,16)
-
- clrldi r6,r3,59
- subfic r5,r6,32
- add r3,r3,r5
- add r4,r4,r5
- andi. r5,r4,0x1F
- beq cr0,L(32B_aligned_loop)
-
- .p2align 5
-L(16B_aligned_loop):
- COMPARE_16(v4,v5,0)
- COMPARE_16(v4,v5,16)
- COMPARE_16(v4,v5,32)
- COMPARE_16(v4,v5,48)
- addi r3,r3,64
- addi r4,r4,64
- b L(16B_aligned_loop)
-
- /* Calculate and return the difference. */
-L(different):
- TAIL(v4,v5)
-
- .p2align 5
-L(32B_aligned_loop):
- COMPARE_32(v14,v16,0,tail1,tail2)
- COMPARE_32(v18,v20,32,tail3,tail4)
- COMPARE_32(v22,v24,64,tail5,tail6)
- COMPARE_32(v26,v28,96,tail7,tail8)
- addi r3,r3,128
- addi r4,r4,128
- b L(32B_aligned_loop)
-
-L(tail1): TAIL(v15,v17)
-L(tail2): TAIL(v14,v16)
-L(tail3): TAIL(v19,v21)
-L(tail4): TAIL(v18,v20)
-L(tail5): TAIL(v23,v25)
-L(tail6): TAIL(v22,v24)
-L(tail7): TAIL(v27,v29)
-L(tail8): TAIL(v26,v28)
-
-END (STRCMP)
-libc_hidden_builtin_def (strcmp)
diff --git a/sysdeps/powerpc/powerpc64/le/power10/strlen.S b/sysdeps/powerpc/powerpc64/le/power10/strlen.S
index 4985a92..ec644d5 100644
--- a/sysdeps/powerpc/powerpc64/le/power10/strlen.S
+++ b/sysdeps/powerpc/powerpc64/le/power10/strlen.S
@@ -63,22 +63,6 @@
blr
#endif /* USE_AS_RAWMEMCHR */
-/* TODO: Replace macros by the actual instructions when minimum binutils becomes
- >= 2.35. This is used to keep compatibility with older versions. */
-#define VEXTRACTBM(rt,vrb) \
- .long(((4)<<(32-6)) \
- | ((rt)<<(32-11)) \
- | ((8)<<(32-16)) \
- | ((vrb)<<(32-21)) \
- | 1602)
-
-#define LXVP(xtp,dq,ra) \
- .long(((6)<<(32-6)) \
- | ((((xtp)-32)>>1)<<(32-10)) \
- | ((1)<<(32-11)) \
- | ((ra)<<(32-16)) \
- | dq)
-
#define CHECK16(vreg,offset,addr,label) \
lxv vreg+32,offset(addr); \
vcmpequb. vreg,vreg,v18; \
@@ -88,8 +72,8 @@
of bytes already checked. */
#define CHECK64(offset,addr,label) \
li r6,offset; \
- LXVP(v4+32,offset,addr); \
- LXVP(v6+32,offset+32,addr); \
+ lxvp v4+32,offset(addr); \
+ lxvp v6+32,offset+32(addr); \
RAWMEMCHR_SUBTRACT_VECTORS; \
vminub v14,v4,v5; \
vminub v15,v6,v7; \
@@ -108,7 +92,7 @@
The implementation can load bytes past a matching byte, but only
up to the next 64B boundary, so it never crosses a page. */
-.machine power9
+.machine power10
ENTRY_TOCLESS (FUNCNAME, 4)
CALL_MCOUNT MCOUNT_NARGS
@@ -234,10 +218,10 @@ L(tail_64b):
add r5,r5,r6
/* Extract first bit of each byte. */
- VEXTRACTBM(r7,v1)
- VEXTRACTBM(r8,v2)
- VEXTRACTBM(r9,v3)
- VEXTRACTBM(r10,v4)
+ vextractbm r7,v1
+ vextractbm r8,v2
+ vextractbm r9,v3
+ vextractbm r10,v4
/* Shift each value into their corresponding position. */
sldi r8,r8,16
diff --git a/sysdeps/powerpc/powerpc64/le/power10/strncmp.S b/sysdeps/powerpc/powerpc64/le/power10/strncmp.S
deleted file mode 100644
index 10700dd..0000000
--- a/sysdeps/powerpc/powerpc64/le/power10/strncmp.S
+++ /dev/null
@@ -1,271 +0,0 @@
-/* Optimized strncmp implementation for PowerPC64/POWER10.
- Copyright (C) 2024-2025 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <https://www.gnu.org/licenses/>. */
-
-#include <sysdep.h>
-
-/* Implements the function
-
- int [r3] strncmp (const char *s1 [r3], const char *s2 [r4], size_t [r5] n)
-
- The implementation uses unaligned doubleword access to avoid specialized
- code paths depending of data alignment for first 32 bytes and uses
- vectorised loops after that. */
-
-#ifndef STRNCMP
-# define STRNCMP strncmp
-#endif
-
-/* TODO: Change this to actual instructions when minimum binutils is upgraded
- to 2.27. Macros are defined below for these newer instructions in order
- to maintain compatibility. */
-
-#define LXVP(xtp,dq,ra) \
- .long(((6)<<(32-6)) \
- | ((((xtp)-32)>>1)<<(32-10)) \
- | ((1)<<(32-11)) \
- | ((ra)<<(32-16)) \
- | dq)
-
-#define COMPARE_16(vreg1,vreg2,offset) \
- lxv vreg1+32,offset(r3); \
- lxv vreg2+32,offset(r4); \
- vcmpnezb. v7,vreg1,vreg2; \
- bne cr6,L(different); \
- cmpldi cr7,r5,16; \
- ble cr7,L(ret0); \
- addi r5,r5,-16;
-
-#define COMPARE_32(vreg1,vreg2,offset,label1,label2) \
- LXVP(vreg1+32,offset,r3); \
- LXVP(vreg2+32,offset,r4); \
- vcmpnezb. v7,vreg1+1,vreg2+1; \
- bne cr6,L(label1); \
- vcmpnezb. v7,vreg1,vreg2; \
- bne cr6,L(label2); \
- cmpldi cr7,r5,32; \
- ble cr7,L(ret0); \
- addi r5,r5,-32;
-
-#define TAIL_FIRST_16B(vreg1,vreg2) \
- vctzlsbb r6,v7; \
- cmpld cr7,r5,r6; \
- ble cr7,L(ret0); \
- vextubrx r5,r6,vreg1; \
- vextubrx r4,r6,vreg2; \
- subf r3,r4,r5; \
- blr;
-
-#define TAIL_SECOND_16B(vreg1,vreg2) \
- vctzlsbb r6,v7; \
- addi r0,r6,16; \
- cmpld cr7,r5,r0; \
- ble cr7,L(ret0); \
- vextubrx r5,r6,vreg1; \
- vextubrx r4,r6,vreg2; \
- subf r3,r4,r5; \
- blr;
-
-#define CHECK_N_BYTES(reg1,reg2,len_reg) \
- sldi r6,len_reg,56; \
- lxvl 32+v4,reg1,r6; \
- lxvl 32+v5,reg2,r6; \
- add reg1,reg1,len_reg; \
- add reg2,reg2,len_reg; \
- vcmpnezb v7,v4,v5; \
- vctzlsbb r6,v7; \
- cmpld cr7,r6,len_reg; \
- blt cr7,L(different); \
- cmpld cr7,r5,len_reg; \
- ble cr7,L(ret0); \
- sub r5,r5,len_reg; \
-
- /* TODO: change this to .machine power10 when the minimum required
- binutils allows it. */
- .machine power9
-ENTRY_TOCLESS (STRNCMP, 4)
- /* Check if size is 0. */
- cmpdi cr0,r5,0
- beq cr0,L(ret0)
- andi. r7,r3,4095
- andi. r8,r4,4095
- cmpldi cr0,r7,4096-16
- cmpldi cr1,r8,4096-16
- bgt cr0,L(crosses)
- bgt cr1,L(crosses)
- COMPARE_16(v4,v5,0)
- addi r3,r3,16
- addi r4,r4,16
-
-L(crosses):
- andi. r7,r3,15
- subfic r7,r7,16 /* r7(nalign1) = 16 - (str1 & 15). */
- andi. r9,r4,15
- subfic r8,r9,16 /* r8(nalign2) = 16 - (str2 & 15). */
- cmpld cr7,r7,r8
- beq cr7,L(same_aligned)
- blt cr7,L(nalign1_min)
-
- /* nalign2 is minimum and s2 pointer is aligned. */
- CHECK_N_BYTES(r3,r4,r8)
- /* Are we on the 64B hunk which crosses a page? */
- andi. r10,r3,63 /* Determine offset into 64B hunk. */
- andi. r8,r3,15 /* The offset into the 16B hunk. */
- neg r7,r3
- andi. r9,r7,15 /* Number of bytes after a 16B cross. */
- rlwinm. r7,r7,26,0x3F /* ((r4-4096))>>6&63. */
- beq L(compare_64_pagecross)
- mtctr r7
- b L(compare_64B_unaligned)
-
- /* nalign1 is minimum and s1 pointer is aligned. */
-L(nalign1_min):
- CHECK_N_BYTES(r3,r4,r7)
- /* Are we on the 64B hunk which crosses a page? */
- andi. r10,r4,63 /* Determine offset into 64B hunk. */
- andi. r8,r4,15 /* The offset into the 16B hunk. */
- neg r7,r4
- andi. r9,r7,15 /* Number of bytes after a 16B cross. */
- rlwinm. r7,r7,26,0x3F /* ((r4-4096))>>6&63. */
- beq L(compare_64_pagecross)
- mtctr r7
-
- .p2align 5
-L(compare_64B_unaligned):
- COMPARE_16(v4,v5,0)
- COMPARE_16(v4,v5,16)
- COMPARE_16(v4,v5,32)
- COMPARE_16(v4,v5,48)
- addi r3,r3,64
- addi r4,r4,64
- bdnz L(compare_64B_unaligned)
-
- /* Cross the page boundary of s2, carefully. Only for first
- iteration we have to get the count of 64B blocks to be checked.
- From second iteration and beyond, loop counter is always 63. */
-L(compare_64_pagecross):
- li r11, 63
- mtctr r11
- cmpldi r10,16
- ble L(cross_4)
- cmpldi r10,32
- ble L(cross_3)
- cmpldi r10,48
- ble L(cross_2)
-L(cross_1):
- CHECK_N_BYTES(r3,r4,r9)
- CHECK_N_BYTES(r3,r4,r8)
- COMPARE_16(v4,v5,0)
- COMPARE_16(v4,v5,16)
- COMPARE_16(v4,v5,32)
- addi r3,r3,48
- addi r4,r4,48
- b L(compare_64B_unaligned)
-L(cross_2):
- COMPARE_16(v4,v5,0)
- addi r3,r3,16
- addi r4,r4,16
- CHECK_N_BYTES(r3,r4,r9)
- CHECK_N_BYTES(r3,r4,r8)
- COMPARE_16(v4,v5,0)
- COMPARE_16(v4,v5,16)
- addi r3,r3,32
- addi r4,r4,32
- b L(compare_64B_unaligned)
-L(cross_3):
- COMPARE_16(v4,v5,0)
- COMPARE_16(v4,v5,16)
- addi r3,r3,32
- addi r4,r4,32
- CHECK_N_BYTES(r3,r4,r9)
- CHECK_N_BYTES(r3,r4,r8)
- COMPARE_16(v4,v5,0)
- addi r3,r3,16
- addi r4,r4,16
- b L(compare_64B_unaligned)
-L(cross_4):
- COMPARE_16(v4,v5,0)
- COMPARE_16(v4,v5,16)
- COMPARE_16(v4,v5,32)
- addi r3,r3,48
- addi r4,r4,48
- CHECK_N_BYTES(r3,r4,r9)
- CHECK_N_BYTES(r3,r4,r8)
- b L(compare_64B_unaligned)
-
-L(same_aligned):
- CHECK_N_BYTES(r3,r4,r7)
- /* Align s1 to 32B and adjust s2 address.
- Use lxvp only if both s1 and s2 are 32B aligned. */
- COMPARE_16(v4,v5,0)
- COMPARE_16(v4,v5,16)
- COMPARE_16(v4,v5,32)
- COMPARE_16(v4,v5,48)
- addi r3,r3,64
- addi r4,r4,64
- COMPARE_16(v4,v5,0)
- COMPARE_16(v4,v5,16)
- addi r5,r5,32
-
- clrldi r6,r3,59
- subfic r7,r6,32
- add r3,r3,r7
- add r4,r4,r7
- subf r5,r7,r5
- andi. r7,r4,0x1F
- beq cr0,L(32B_aligned_loop)
-
- .p2align 5
-L(16B_aligned_loop):
- COMPARE_16(v4,v5,0)
- COMPARE_16(v4,v5,16)
- COMPARE_16(v4,v5,32)
- COMPARE_16(v4,v5,48)
- addi r3,r3,64
- addi r4,r4,64
- b L(16B_aligned_loop)
-
- /* Calculate and return the difference. */
-L(different):
- TAIL_FIRST_16B(v4,v5)
-
- .p2align 5
-L(32B_aligned_loop):
- COMPARE_32(v14,v16,0,tail1,tail2)
- COMPARE_32(v18,v20,32,tail3,tail4)
- COMPARE_32(v22,v24,64,tail5,tail6)
- COMPARE_32(v26,v28,96,tail7,tail8)
- addi r3,r3,128
- addi r4,r4,128
- b L(32B_aligned_loop)
-
-L(tail1): TAIL_FIRST_16B(v15,v17)
-L(tail2): TAIL_SECOND_16B(v14,v16)
-L(tail3): TAIL_FIRST_16B(v19,v21)
-L(tail4): TAIL_SECOND_16B(v18,v20)
-L(tail5): TAIL_FIRST_16B(v23,v25)
-L(tail6): TAIL_SECOND_16B(v22,v24)
-L(tail7): TAIL_FIRST_16B(v27,v29)
-L(tail8): TAIL_SECOND_16B(v26,v28)
-
- .p2align 5
-L(ret0):
- li r3,0
- blr
-
-END(STRNCMP)
-libc_hidden_builtin_def(strncmp)
diff --git a/sysdeps/powerpc/powerpc64/le/power9/strcmp.S b/sysdeps/powerpc/powerpc64/le/power9/strcmp.S
index 83b21c6..f0cde81 100644
--- a/sysdeps/powerpc/powerpc64/le/power9/strcmp.S
+++ b/sysdeps/powerpc/powerpc64/le/power9/strcmp.S
@@ -28,21 +28,6 @@
The implementation uses unaligned doubleword access for first 32 bytes
as in POWER8 patch and uses vectorised loops after that. */
-/* TODO: Change this to actual instructions when minimum binutils is upgraded
- to 2.27. Macros are defined below for these newer instructions in order
- to maintain compatibility. */
-#define VCTZLSBB(r,v) .long (0x10010602 | ((r)<<(32-11)) | ((v)<<(32-21)))
-
-#define VEXTUBRX(t,a,b) .long (0x1000070d \
- | ((t)<<(32-11)) \
- | ((a)<<(32-16)) \
- | ((b)<<(32-21)) )
-
-#define VCMPNEZB(t,a,b) .long (0x10000507 \
- | ((t)<<(32-11)) \
- | ((a)<<(32-16)) \
- | ((b)<<(32-21)) )
-
/* Get 16 bytes for unaligned case.
reg1: Vector to hold next 16 bytes.
reg2: Address to read from.
@@ -61,10 +46,7 @@
2: \
vperm reg1, v9, reg1, reg3;
-/* TODO: change this to .machine power9 when the minimum required binutils
- allows it. */
-
- .machine power7
+ .machine power9
ENTRY_TOCLESS (STRCMP, 4)
li r0, 0
@@ -116,7 +98,7 @@ L(align):
/* Both s1 and s2 are unaligned. */
GET16BYTES(v4, r7, v10)
GET16BYTES(v5, r4, v6)
- VCMPNEZB(v7, v5, v4)
+ vcmpnezb. v7, v5, v4
beq cr6, L(match)
b L(different)
@@ -136,28 +118,28 @@ L(match):
L(s1_align):
lvx v4, r7, r0
GET16BYTES(v5, r4, v6)
- VCMPNEZB(v7, v5, v4)
+ vcmpnezb. v7, v5, v4
addi r7, r7, 16
addi r4, r4, 16
bne cr6, L(different)
lvx v4, r7, r0
GET16BYTES(v5, r4, v6)
- VCMPNEZB(v7, v5, v4)
+ vcmpnezb. v7, v5, v4
addi r7, r7, 16
addi r4, r4, 16
bne cr6, L(different)
lvx v4, r7, r0
GET16BYTES(v5, r4, v6)
- VCMPNEZB(v7, v5, v4)
+ vcmpnezb. v7, v5, v4
addi r7, r7, 16
addi r4, r4, 16
bne cr6, L(different)
lvx v4, r7, r0
GET16BYTES(v5, r4, v6)
- VCMPNEZB(v7, v5, v4)
+ vcmpnezb. v7, v5, v4
addi r7, r7, 16
addi r4, r4, 16
beq cr6, L(s1_align)
@@ -167,37 +149,37 @@ L(s1_align):
L(aligned):
lvx v4, 0, r7
lvx v5, 0, r4
- VCMPNEZB(v7, v5, v4)
+ vcmpnezb. v7, v5, v4
addi r7, r7, 16
addi r4, r4, 16
bne cr6, L(different)
lvx v4, 0, r7
lvx v5, 0, r4
- VCMPNEZB(v7, v5, v4)
+ vcmpnezb. v7, v5, v4
addi r7, r7, 16
addi r4, r4, 16
bne cr6, L(different)
lvx v4, 0, r7
lvx v5, 0, r4
- VCMPNEZB(v7, v5, v4)
+ vcmpnezb. v7, v5, v4
addi r7, r7, 16
addi r4, r4, 16
bne cr6, L(different)
lvx v4, 0, r7
lvx v5, 0, r4
- VCMPNEZB(v7, v5, v4)
+ vcmpnezb. v7, v5, v4
addi r7, r7, 16
addi r4, r4, 16
beq cr6, L(aligned)
/* Calculate and return the difference. */
L(different):
- VCTZLSBB(r6, v7)
- VEXTUBRX(r5, r6, v4)
- VEXTUBRX(r4, r6, v5)
+ vctzlsbb r6, v7
+ vextubrx r5, r6, v4
+ vextubrx r4, r6, v5
subf r3, r4, r5
extsw r3, r3
blr
diff --git a/sysdeps/powerpc/powerpc64/le/power9/strncmp.S b/sysdeps/powerpc/powerpc64/le/power9/strncmp.S
index 60c74ab..5a25f94 100644
--- a/sysdeps/powerpc/powerpc64/le/power9/strncmp.S
+++ b/sysdeps/powerpc/powerpc64/le/power9/strncmp.S
@@ -29,21 +29,6 @@
# define STRNCMP strncmp
#endif
-/* TODO: Change this to actual instructions when minimum binutils is upgraded
- to 2.27. Macros are defined below for these newer instructions in order
- to maintain compatibility. */
-#define VCTZLSBB(r,v) .long (0x10010602 | ((r)<<(32-11)) | ((v)<<(32-21)))
-
-#define VEXTUBRX(t,a,b) .long (0x1000070d \
- | ((t)<<(32-11)) \
- | ((a)<<(32-16)) \
- | ((b)<<(32-21)) )
-
-#define VCMPNEZB(t,a,b) .long (0x10000507 \
- | ((t)<<(32-11)) \
- | ((a)<<(32-16)) \
- | ((b)<<(32-21)) )
-
/* Get 16 bytes for unaligned case.
reg1: Vector to hold next 16 bytes.
reg2: Address to read from.
@@ -64,9 +49,7 @@
2: \
vperm reg1, v9, reg1, reg3;
-/* TODO: change this to .machine power9 when minimum binutils
- is upgraded to 2.27. */
- .machine power7
+ .machine power9
ENTRY_TOCLESS (STRNCMP, 4)
/* Check if size is 0. */
cmpdi cr0, r5, 0
@@ -163,7 +146,7 @@ L(align):
clrldi r6, r3, 60
subfic r11, r6, 16
GET16BYTES(v4, r3, v10)
- VCMPNEZB(v7, v5, v4)
+ vcmpnezb. v7, v5, v4
beq cr6, L(match)
b L(different)
@@ -186,7 +169,7 @@ L(match):
L(s1_align):
lvx v4, 0, r3
GET16BYTES(v5, r4, v6)
- VCMPNEZB(v7, v5, v4)
+ vcmpnezb. v7, v5, v4
bne cr6, L(different)
cmpldi cr7, r5, 16
ble cr7, L(ret0)
@@ -196,7 +179,7 @@ L(s1_align):
lvx v4, 0, r3
GET16BYTES(v5, r4, v6)
- VCMPNEZB(v7, v5, v4)
+ vcmpnezb. v7, v5, v4
bne cr6, L(different)
cmpldi cr7, r5, 16
ble cr7, L(ret0)
@@ -206,7 +189,7 @@ L(s1_align):
lvx v4, 0, r3
GET16BYTES(v5, r4, v6)
- VCMPNEZB(v7, v5, v4)
+ vcmpnezb. v7, v5, v4
bne cr6, L(different)
cmpldi cr7, r5, 16
ble cr7, L(ret0)
@@ -216,7 +199,7 @@ L(s1_align):
lvx v4, 0, r3
GET16BYTES(v5, r4, v6)
- VCMPNEZB(v7, v5, v4)
+ vcmpnezb. v7, v5, v4
bne cr6, L(different)
cmpldi cr7, r5, 16
ble cr7, L(ret0)
@@ -228,7 +211,7 @@ L(s1_align):
L(aligned):
lvx v4, 0, r3
lvx v5, 0, r4
- VCMPNEZB(v7, v5, v4)
+ vcmpnezb. v7, v5, v4
bne cr6, L(different)
cmpldi cr7, r5, 16
ble cr7, L(ret0)
@@ -238,7 +221,7 @@ L(aligned):
lvx v4, 0, r3
lvx v5, 0, r4
- VCMPNEZB(v7, v5, v4)
+ vcmpnezb. v7, v5, v4
bne cr6, L(different)
cmpldi cr7, r5, 16
ble cr7, L(ret0)
@@ -248,7 +231,7 @@ L(aligned):
lvx v4, 0, r3
lvx v5, 0, r4
- VCMPNEZB(v7, v5, v4)
+ vcmpnezb. v7, v5, v4
bne cr6, L(different)
cmpldi cr7, r5, 16
ble cr7, L(ret0)
@@ -258,7 +241,7 @@ L(aligned):
lvx v4, 0, r3
lvx v5, 0, r4
- VCMPNEZB(v7, v5, v4)
+ vcmpnezb. v7, v5, v4
bne cr6, L(different)
cmpldi cr7, r5, 16
ble cr7, L(ret0)
@@ -268,11 +251,11 @@ L(aligned):
b L(aligned)
/* Calculate and return the difference. */
L(different):
- VCTZLSBB(r6, v7)
+ vctzlsbb r6, v7
cmplw cr7, r5, r6
ble cr7, L(ret0)
- VEXTUBRX(r5, r6, v4)
- VEXTUBRX(r4, r6, v5)
+ vextubrx r5, r6, v4
+ vextubrx r4, r6, v5
subf r3, r4, r5
extsw r3, r3
blr
diff --git a/sysdeps/powerpc/powerpc64/multiarch/Makefile b/sysdeps/powerpc/powerpc64/multiarch/Makefile
index dc7c5b1..e321ce5 100644
--- a/sysdeps/powerpc/powerpc64/multiarch/Makefile
+++ b/sysdeps/powerpc/powerpc64/multiarch/Makefile
@@ -11,7 +11,6 @@ sysdep_routines += memcpy-power8-cached memcpy-power7 memcpy-a2 memcpy-power6 \
strlen-power7 strlen-ppc64 \
strnlen-power8 strnlen-power7 strnlen-ppc64 \
strcasecmp-power7 strcasecmp_l-power7 \
- strncase-power7 strncase_l-power7 \
strncmp-power8 strncmp-ppc64 \
strchr-power8 strchr-power7 strchr-ppc64 \
strchrnul-power8 strchrnul-power7 strchrnul-ppc64 \
@@ -31,15 +30,12 @@ sysdep_routines += memcpy-power8-cached memcpy-power7 memcpy-a2 memcpy-power6 \
strncase-power8
ifneq (,$(filter %le,$(config-machine)))
-sysdep_routines += memchr-power10 memcmp-power10 memcpy-power10 \
- memmove-power10 memset-power10 rawmemchr-power9 \
- rawmemchr-power10 strcmp-power9 strcmp-power10 \
- strncmp-power9 strncmp-power10 strcpy-power9 strcat-power10 \
- stpcpy-power9 strlen-power9 strncpy-power9 stpncpy-power9 \
- strlen-power10
+sysdep_routines += memcmp-power10 memcpy-power10 memmove-power10 memset-power10 \
+ rawmemchr-power9 rawmemchr-power10 \
+ strcmp-power9 strncmp-power9 \
+ strcpy-power9 strcat-power10 stpcpy-power9 \
+ strlen-power9 strncpy-power9 stpncpy-power9 strlen-power10
endif
-CFLAGS-strncase-power7.c += -mcpu=power7 -funroll-loops
-CFLAGS-strncase_l-power7.c += -mcpu=power7 -funroll-loops
endif
# Called during static initialization
diff --git a/sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c b/sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c
index 0a31a58..016d05f 100644
--- a/sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c
+++ b/sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c
@@ -164,9 +164,6 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array,
/* Support sysdeps/powerpc/powerpc64/multiarch/strncmp.c. */
IFUNC_IMPL (i, name, strncmp,
#ifdef __LITTLE_ENDIAN__
- IFUNC_IMPL_ADD (array, i, strncmp, hwcap2 & PPC_FEATURE2_ARCH_3_1
- && hwcap & PPC_FEATURE_HAS_VSX,
- __strncmp_power10)
IFUNC_IMPL_ADD (array, i, strncmp, hwcap2 & PPC_FEATURE2_ARCH_3_00
&& hwcap & PPC_FEATURE_HAS_ALTIVEC,
__strncmp_power9)
@@ -229,12 +226,6 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array,
/* Support sysdeps/powerpc/powerpc64/multiarch/memchr.c. */
IFUNC_IMPL (i, name, memchr,
-#ifdef __LITTLE_ENDIAN__
- IFUNC_IMPL_ADD (array, i, memchr,
- hwcap2 & PPC_FEATURE2_ARCH_3_1
- && hwcap & PPC_FEATURE_HAS_VSX,
- __memchr_power10)
-#endif
IFUNC_IMPL_ADD (array, i, memchr,
hwcap2 & PPC_FEATURE2_ARCH_2_07
&& hwcap & PPC_FEATURE_HAS_ALTIVEC,
@@ -311,19 +302,8 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array,
hwcap2 & PPC_FEATURE2_ARCH_2_07
&& hwcap & PPC_FEATURE_HAS_ALTIVEC,
__strncasecmp_power8)
- IFUNC_IMPL_ADD (array, i, strncasecmp,
- hwcap & PPC_FEATURE_ARCH_2_06,
- __strncasecmp_power7)
IFUNC_IMPL_ADD (array, i, strncasecmp, 1, __strncasecmp_ppc))
- /* Support sysdeps/powerpc/powerpc64/multiarch/strncase_l.c. */
- IFUNC_IMPL (i, name, strncasecmp_l,
- IFUNC_IMPL_ADD (array, i, strncasecmp_l,
- hwcap & PPC_FEATURE_ARCH_2_06,
- __strncasecmp_l_power7)
- IFUNC_IMPL_ADD (array, i, strncasecmp_l, 1,
- __strncasecmp_l_ppc))
-
/* Support sysdeps/powerpc/powerpc64/multiarch/strrchr.c. */
IFUNC_IMPL (i, name, strrchr,
IFUNC_IMPL_ADD (array, i, strrchr,
@@ -387,10 +367,6 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array,
IFUNC_IMPL (i, name, strcmp,
#ifdef __LITTLE_ENDIAN__
IFUNC_IMPL_ADD (array, i, strcmp,
- (hwcap2 & PPC_FEATURE2_ARCH_3_1)
- && (hwcap & PPC_FEATURE_HAS_VSX),
- __strcmp_power10)
- IFUNC_IMPL_ADD (array, i, strcmp,
hwcap2 & PPC_FEATURE2_ARCH_3_00
&& hwcap & PPC_FEATURE_HAS_ALTIVEC,
__strcmp_power9)
diff --git a/sysdeps/powerpc/powerpc64/multiarch/memchr.c b/sysdeps/powerpc/powerpc64/multiarch/memchr.c
index b63c796..3abd64a 100644
--- a/sysdeps/powerpc/powerpc64/multiarch/memchr.c
+++ b/sysdeps/powerpc/powerpc64/multiarch/memchr.c
@@ -25,23 +25,15 @@ extern __typeof (__memchr) __memchr_ppc attribute_hidden;
extern __typeof (__memchr) __memchr_power7 attribute_hidden;
extern __typeof (__memchr) __memchr_power8 attribute_hidden;
-# ifdef __LITTLE_ENDIAN__
-extern __typeof (__memchr) __memchr_power10 attribute_hidden;
-# endif
/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
ifunc symbol properly. */
libc_ifunc (__memchr,
-# ifdef __LITTLE_ENDIAN__
- (hwcap2 & PPC_FEATURE2_ARCH_3_1
- && hwcap & PPC_FEATURE_HAS_VSX)
- ? __memchr_power10 :
-# endif
- (hwcap2 & PPC_FEATURE2_ARCH_2_07
- && hwcap & PPC_FEATURE_HAS_ALTIVEC)
- ? __memchr_power8 :
- (hwcap & PPC_FEATURE_ARCH_2_06)
- ? __memchr_power7
- : __memchr_ppc);
+ (hwcap2 & PPC_FEATURE2_ARCH_2_07
+ && hwcap & PPC_FEATURE_HAS_ALTIVEC)
+ ? __memchr_power8 :
+ (hwcap & PPC_FEATURE_ARCH_2_06)
+ ? __memchr_power7
+ : __memchr_ppc);
weak_alias (__memchr, memchr)
libc_hidden_builtin_def (memchr)
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strcmp.c b/sysdeps/powerpc/powerpc64/multiarch/strcmp.c
index 3c636e3..7c77c08 100644
--- a/sysdeps/powerpc/powerpc64/multiarch/strcmp.c
+++ b/sysdeps/powerpc/powerpc64/multiarch/strcmp.c
@@ -29,16 +29,12 @@ extern __typeof (strcmp) __strcmp_power7 attribute_hidden;
extern __typeof (strcmp) __strcmp_power8 attribute_hidden;
# ifdef __LITTLE_ENDIAN__
extern __typeof (strcmp) __strcmp_power9 attribute_hidden;
-extern __typeof (strcmp) __strcmp_power10 attribute_hidden;
# endif
# undef strcmp
libc_ifunc_redirected (__redirect_strcmp, strcmp,
# ifdef __LITTLE_ENDIAN__
- (hwcap2 & PPC_FEATURE2_ARCH_3_1
- && hwcap & PPC_FEATURE_HAS_VSX)
- ? __strcmp_power10 :
(hwcap2 & PPC_FEATURE2_ARCH_3_00
&& hwcap & PPC_FEATURE_HAS_ALTIVEC)
? __strcmp_power9 :
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strncase.c b/sysdeps/powerpc/powerpc64/multiarch/strncase.c
index a83c11a..807b0af 100644
--- a/sysdeps/powerpc/powerpc64/multiarch/strncase.c
+++ b/sysdeps/powerpc/powerpc64/multiarch/strncase.c
@@ -23,15 +23,12 @@
extern __typeof (__strncasecmp) __libc_strncasecmp;
extern __typeof (__strncasecmp) __strncasecmp_ppc attribute_hidden;
-extern __typeof (__strncasecmp) __strncasecmp_power7 attribute_hidden;
extern __typeof (__strncasecmp) __strncasecmp_power8 attribute_hidden;
libc_ifunc (__libc_strncasecmp,
(hwcap2 & PPC_FEATURE2_ARCH_2_07
&& hwcap & PPC_FEATURE_HAS_ALTIVEC)
- ? __strncasecmp_power8:
- (hwcap & PPC_FEATURE_ARCH_2_06)
- ? __strncasecmp_power7
- : __strncasecmp_ppc);
+ ? __strncasecmp_power8
+ : __strncasecmp_ppc);
weak_alias (__libc_strncasecmp, strncasecmp)
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strncase_l.c b/sysdeps/powerpc/powerpc64/multiarch/strncase_l.c
deleted file mode 100644
index 1f28448..0000000
--- a/sysdeps/powerpc/powerpc64/multiarch/strncase_l.c
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Multiple versions of strncasecmp_l
- Copyright (C) 2013-2025 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <https://www.gnu.org/licenses/>. */
-
-#if IS_IN (libc)
-# include <string.h>
-# define strncasecmp_l __strncasecmp_l_ppc
-extern __typeof (__strncasecmp_l) __strncasecmp_l_ppc attribute_hidden;
-extern __typeof (__strncasecmp_l) __strncasecmp_l_power7 attribute_hidden;
-#endif
-
-#include <string/strncase_l.c>
-#undef strncasecmp_l
-
-#if IS_IN (libc)
-# include <shlib-compat.h>
-# include "init-arch.h"
-
-/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
- ifunc symbol properly. */
-extern __typeof (__strncasecmp_l) __libc_strncasecmp_l;
-libc_ifunc (__libc_strncasecmp_l,
- (hwcap & PPC_FEATURE_ARCH_2_06)
- ? __strncasecmp_l_power7
- : __strncasecmp_l_ppc);
-
-weak_alias (__libc_strncasecmp_l, strncasecmp_l)
-#endif
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strncmp.c b/sysdeps/powerpc/powerpc64/multiarch/strncmp.c
index 0a664a6..4cfe27f 100644
--- a/sysdeps/powerpc/powerpc64/multiarch/strncmp.c
+++ b/sysdeps/powerpc/powerpc64/multiarch/strncmp.c
@@ -29,7 +29,6 @@ extern __typeof (strncmp) __strncmp_ppc attribute_hidden;
extern __typeof (strncmp) __strncmp_power8 attribute_hidden;
# ifdef __LITTLE_ENDIAN__
extern __typeof (strncmp) __strncmp_power9 attribute_hidden;
-extern __typeof (strncmp) __strncmp_power10 attribute_hidden;
# endif
# undef strncmp
@@ -37,9 +36,6 @@ extern __typeof (strncmp) __strncmp_power10 attribute_hidden;
ifunc symbol properly. */
libc_ifunc_redirected (__redirect_strncmp, strncmp,
# ifdef __LITTLE_ENDIAN__
- (hwcap2 & PPC_FEATURE2_ARCH_3_1
- && hwcap & PPC_FEATURE_HAS_VSX)
- ? __strncmp_power10 :
(hwcap2 & PPC_FEATURE2_ARCH_3_00
&& hwcap & PPC_FEATURE_HAS_ALTIVEC)
? __strncmp_power9 :
diff --git a/sysdeps/pthread/Makefile b/sysdeps/pthread/Makefile
index d4869c6..7572f62 100644
--- a/sysdeps/pthread/Makefile
+++ b/sysdeps/pthread/Makefile
@@ -62,7 +62,6 @@ tests += \
tst-abstime \
tst-atfork1 \
tst-attr1 \
- tst-backtrace1 \
tst-bad-schedattr \
tst-barrier1 \
tst-barrier2 \
@@ -273,6 +272,7 @@ tests += \
tst-spin4 \
tst-spin5 \
tst-stack1 \
+ tst-stack2 \
tst-stdio1 \
tst-stdio2 \
tst-thrd-detach \
@@ -368,6 +368,7 @@ modules-names += \
tst-atfork4mod \
tst-create1mod \
tst-fini1mod \
+ tst-stack2-mod \
tst-tls4moda \
tst-tls4modb \
# modules-names
@@ -541,4 +542,12 @@ LDFLAGS-tst-create1 = -Wl,-export-dynamic
$(objpfx)tst-create1: $(shared-thread-library)
$(objpfx)tst-create1.out: $(objpfx)tst-create1mod.so
+$(objpfx)tst-stack2.out: $(objpfx)tst-stack2-mod.so
+$(objpfx)tst-stack2-mod.so: $(shared-thread-library)
+LDFLAGS-tst-stack2-mod.so = -Wl,-z,execstack
+ifeq ($(have-no-error-execstack),yes)
+LDFLAGS-tst-stack2-mod.so += -Wl,--no-error-execstack
+endif
+tst-stack2-ENV = GLIBC_TUNABLES=glibc.rtld.execstack=2
+
endif
diff --git a/sysdeps/pthread/tst-cond23.c b/sysdeps/pthread/tst-cond23.c
index 0a68472..a338397 100644
--- a/sysdeps/pthread/tst-cond23.c
+++ b/sysdeps/pthread/tst-cond23.c
@@ -151,7 +151,7 @@ do_test (void)
#if !defined _POSIX_CLOCK_SELECTION || _POSIX_CLOCK_SELECTION == -1
puts ("_POSIX_CLOCK_SELECTION not supported, test skipped");
- return 0;
+ return EXIT_UNSUPPORTED;
#else
diff --git a/sysdeps/pthread/tst-stack2-mod.c b/sysdeps/pthread/tst-stack2-mod.c
new file mode 100644
index 0000000..806fdbc
--- /dev/null
+++ b/sysdeps/pthread/tst-stack2-mod.c
@@ -0,0 +1,39 @@
+/* Check if pthread_getattr_np works within modules with non-exectuble
+ stacks (BZ 32897).
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <pthread.h>
+
+bool init_result;
+
+void
+__attribute__ ((constructor))
+init (void)
+{
+ pthread_t me = pthread_self ();
+ pthread_attr_t attr;
+ init_result = pthread_getattr_np (me, &attr) == 0;
+}
+
+int
+mod_func (void)
+{
+ pthread_t me = pthread_self ();
+ pthread_attr_t attr;
+ return pthread_getattr_np (me, &attr);
+}
diff --git a/sysdeps/unix/sysv/linux/kernel_termios.h b/sysdeps/pthread/tst-stack2.c
index f02a197..20ab5af 100644
--- a/sysdeps/unix/sysv/linux/kernel_termios.h
+++ b/sysdeps/pthread/tst-stack2.c
@@ -1,4 +1,6 @@
-/* Copyright (C) 1997-2025 Free Software Foundation, Inc.
+/* Check if pthread_getattr_np works within modules with non-exectuble
+ stacks (BZ 32897).
+ Copyright (C) 2025 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -15,23 +17,31 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
-#ifndef _KERNEL_TERMIOS_H
-#define _KERNEL_TERMIOS_H 1
-/* The following corresponds to the values from the Linux 2.1.20 kernel. */
+#include <pthread.h>
+#include <stdbool.h>
+#include <support/xdlfcn.h>
+#include <support/check.h>
-#define __KERNEL_NCCS 19
-
-struct __kernel_termios
+static int
+do_test (void)
+{
{
- tcflag_t c_iflag; /* input mode flags */
- tcflag_t c_oflag; /* output mode flags */
- tcflag_t c_cflag; /* control mode flags */
- tcflag_t c_lflag; /* local mode flags */
- cc_t c_line; /* line discipline */
- cc_t c_cc[__KERNEL_NCCS]; /* control characters */
- };
-
-#define _HAVE_C_ISPEED 0
-#define _HAVE_C_OSPEED 0
-
-#endif /* kernel_termios.h */
+ pthread_t me = pthread_self ();
+ pthread_attr_t attr;
+ TEST_COMPARE (pthread_getattr_np (me, &attr), 0);
+ }
+
+ void *h = xdlopen ("tst-stack2-mod.so", RTLD_NOW);
+
+ bool *init_result = xdlsym (h, "init_result");
+ TEST_COMPARE (*init_result, true);
+
+ int (*mod_func)(void) = xdlsym (h, "mod_func");
+ TEST_COMPARE (mod_func (), 0);
+
+ xdlclose (h);
+
+ return 0;
+}
+
+#include <support/test-driver.c>
diff --git a/sysdeps/pthread/tst-stdio2.c b/sysdeps/pthread/tst-stdio2.c
index 08948cb..0876ed6 100644
--- a/sysdeps/pthread/tst-stdio2.c
+++ b/sysdeps/pthread/tst-stdio2.c
@@ -75,7 +75,7 @@ do_test (void)
exit (1);
}
- puts ("join returned succsefully");
+ puts ("join returned successfully");
return 0;
}
diff --git a/sysdeps/riscv/math-use-builtins-ffs.h b/sysdeps/riscv/math-use-builtins-ffs.h
new file mode 100644
index 0000000..97d13e9
--- /dev/null
+++ b/sysdeps/riscv/math-use-builtins-ffs.h
@@ -0,0 +1,10 @@
+#if __GNUC_PREREQ (12, 0) && defined __riscv_zbb
+# define USE_FFS_BUILTIN 1
+# define USE_FFSLL_BUILTIN 1
+#elif __GNUC_PREREQ (13, 0) && defined __riscv_xtheadbb
+# define USE_FFS_BUILTIN 0
+# define USE_FFSLL_BUILTIN 1
+#else
+# define USE_FFS_BUILTIN 0
+# define USE_FFSLL_BUILTIN 0
+#endif
diff --git a/sysdeps/s390/cpu-features.c b/sysdeps/s390/cpu-features.c
index 31a1f4d..106874b 100644
--- a/sysdeps/s390/cpu-features.c
+++ b/sysdeps/s390/cpu-features.c
@@ -27,7 +27,7 @@
#define S390_COPY_CPU_FEATURES(SRC_PTR, DEST_PTR) \
(DEST_PTR)->hwcap = (SRC_PTR)->hwcap; \
- (DEST_PTR)->stfle_bits[0] = (SRC_PTR)->stfle_bits[0];
+ (DEST_PTR)->stfle_filtered = (SRC_PTR)->stfle_filtered;
static void
TUNABLE_CALLBACK (set_hwcaps) (tunable_val_t *valp)
@@ -77,7 +77,7 @@ TUNABLE_CALLBACK (set_hwcaps) (tunable_val_t *valp)
disable = true;
hwcap_mask = HWCAP_S390_VXRS | HWCAP_S390_VXRS_EXT
| HWCAP_S390_VXRS_EXT2;
- stfle_bits0_mask = S390_STFLE_MASK_ARCH13_MIE3;
+ stfle_bits0_mask = S390_STFLE_BIT61_ARCH13_MIE3;
}
else if (tunable_str_comma_strcmp_cte (&t, "z13")
|| tunable_str_comma_strcmp_cte (&t, "arch11"))
@@ -85,7 +85,7 @@ TUNABLE_CALLBACK (set_hwcaps) (tunable_val_t *valp)
reset_features = true;
disable = true;
hwcap_mask = HWCAP_S390_VXRS_EXT | HWCAP_S390_VXRS_EXT2;
- stfle_bits0_mask = S390_STFLE_MASK_ARCH13_MIE3;
+ stfle_bits0_mask = S390_STFLE_BIT61_ARCH13_MIE3;
}
else if (tunable_str_comma_strcmp_cte (&t, "z14")
|| tunable_str_comma_strcmp_cte (&t, "arch12"))
@@ -93,12 +93,14 @@ TUNABLE_CALLBACK (set_hwcaps) (tunable_val_t *valp)
reset_features = true;
disable = true;
hwcap_mask = HWCAP_S390_VXRS_EXT2;
- stfle_bits0_mask = S390_STFLE_MASK_ARCH13_MIE3;
+ stfle_bits0_mask = S390_STFLE_BIT61_ARCH13_MIE3;
}
else if (tunable_str_comma_strcmp_cte (&t, "z15")
|| tunable_str_comma_strcmp_cte (&t, "z16")
+ || tunable_str_comma_strcmp_cte (&t, "z17")
|| tunable_str_comma_strcmp_cte (&t, "arch13")
- || tunable_str_comma_strcmp_cte (&t, "arch14"))
+ || tunable_str_comma_strcmp_cte (&t, "arch14")
+ || tunable_str_comma_strcmp_cte (&t, "arch15"))
{
/* For z15 or newer we don't have to disable something, but we have
to reset to the original values. */
@@ -125,7 +127,7 @@ TUNABLE_CALLBACK (set_hwcaps) (tunable_val_t *valp)
hwcap_mask |= HWCAP_S390_VXRS | HWCAP_S390_VXRS_EXT;
}
else if (tunable_str_comma_strcmp_cte (&t, "STFLE_MIE3"))
- stfle_bits0_mask = S390_STFLE_MASK_ARCH13_MIE3;
+ stfle_bits0_mask = S390_STFLE_BIT61_ARCH13_MIE3;
/* Perform the actions determined above. */
if (reset_features)
@@ -144,22 +146,26 @@ TUNABLE_CALLBACK (set_hwcaps) (tunable_val_t *valp)
if (stfle_bits0_mask != 0ULL)
{
if (disable)
- cpu_features_curr.stfle_bits[0] &= ~stfle_bits0_mask;
+ cpu_features_curr.stfle_filtered &= ~stfle_bits0_mask;
else
- cpu_features_curr.stfle_bits[0] |= stfle_bits0_mask;
+ cpu_features_curr.stfle_filtered |= stfle_bits0_mask;
}
}
/* Copy back the features after checking that no unsupported features were
enabled by user. */
cpu_features->hwcap = cpu_features_curr.hwcap & cpu_features_orig.hwcap;
- cpu_features->stfle_bits[0] = cpu_features_curr.stfle_bits[0]
- & cpu_features_orig.stfle_bits[0];
+ cpu_features->stfle_filtered = cpu_features_curr.stfle_filtered
+ & cpu_features_orig.stfle_filtered;
}
static inline void
-init_cpu_features (struct cpu_features *cpu_features)
+init_cpu_features_no_tunables (struct cpu_features *cpu_features)
{
+ /* Only initialize once. */
+ if (cpu_features->hwcap != 0)
+ return;
+
/* Fill cpu_features as passed by kernel and machine. */
cpu_features->hwcap = GLRO(dl_hwcap);
@@ -168,20 +174,57 @@ init_cpu_features (struct cpu_features *cpu_features)
&& (cpu_features->hwcap & HWCAP_S390_ZARCH)
&& (cpu_features->hwcap & HWCAP_S390_HIGH_GPRS)))
{
- register unsigned long reg0 __asm__("0") = 0;
+ unsigned long long stfle_bits[4] = { 0 };
+ register unsigned long reg0 __asm__("0") = 3;
__asm__ __volatile__(".machine push" "\n\t"
".machine \"z9-109\"" "\n\t"
".machinemode \"zarch_nohighgprs\"\n\t"
"stfle %0" "\n\t"
".machine pop" "\n"
- : "=QS" (cpu_features->stfle_bits[0]),
+ : "=QS" (stfle_bits[0]),
"+d" (reg0)
: : "cc");
+
+ unsigned long long internal_stfle_bits = 0;
+
+ /* Facility bit 34: z10: General instructions extension. */
+ if ((stfle_bits[0] & (1ULL << (63 - 34))) != 0)
+ internal_stfle_bits |= S390_STFLE_BIT34_Z10;
+
+ /* Facility bit 45: z196: Distinct operands, popcount, ... */
+ if ((stfle_bits[0] & (1ULL << (63 - 45))) != 0)
+ internal_stfle_bits |= S390_STFLE_BIT45_Z196;
+
+ /* Facility bit 61: arch13/z15: Miscellaneous-Instruction-Extensions
+ Facility 3, e.g. mvcrl. */
+ if ((stfle_bits[0] & (1ULL << (63 - 61))) != 0)
+ internal_stfle_bits |= S390_STFLE_BIT61_ARCH13_MIE3;
+
+ /* Facility bit 84: arch15/z17: Miscellaneous-instruction-extensions 4 */
+ if ((stfle_bits[1] & (1ULL << (127 - 84))) != 0)
+ internal_stfle_bits |= S390_STFLE_BIT84_ARCH15_MIE4;
+
+ /* Facility bit 198: arch15/z17: Vector-enhancements-facility 3 */
+ if ((stfle_bits[3] & (1ULL << (255 - 198))) != 0)
+ internal_stfle_bits |= S390_STFLE_BIT198_ARCH15_VXRS_EXT3;
+
+ /* Facility bit 199: arch15/z17: Vector-Packed-Decimal-Enhancement 3 */
+ if ((stfle_bits[3] & (1ULL << (255 - 199))) != 0)
+ internal_stfle_bits |= S390_STFLE_BIT199_ARCH15_VXRS_PDE3;
+
+ /* Facility bit 201: arch15/z17: CPU: Concurrent-Functions Facility */
+ if ((stfle_bits[3] & (1ULL << (255 - 201))) != 0)
+ internal_stfle_bits |= S390_STFLE_BIT201_ARCH15_CON;
+
+ cpu_features->stfle_orig = internal_stfle_bits;
+ cpu_features->stfle_filtered = internal_stfle_bits;
}
- else
- {
- cpu_features->stfle_bits[0] = 0ULL;
- }
+}
+
+static inline void
+init_cpu_features (struct cpu_features *cpu_features)
+{
+ init_cpu_features_no_tunables (cpu_features);
TUNABLE_GET (glibc, cpu, hwcaps, tunable_val_t *, TUNABLE_CALLBACK (set_hwcaps));
}
diff --git a/sysdeps/s390/cpu-features.h b/sysdeps/s390/cpu-features.h
index 4ff4421..2441b27 100644
--- a/sysdeps/s390/cpu-features.h
+++ b/sysdeps/s390/cpu-features.h
@@ -18,29 +18,58 @@
#ifndef __CPU_FEATURES_S390X_H
# define __CPU_FEATURES_S390X_H
-#define S390_STFLE_BITS_Z10 34 /* General instructions extension */
-#define S390_STFLE_BITS_Z196 45 /* Distinct operands, pop ... */
-#define S390_STFLE_BITS_ARCH13_MIE3 61 /* Miscellaneous-Instruction-Extensions
- Facility 3, e.g. mvcrl. */
+/* The following stfle bit definitions are intended to be used for the
+ glibc internal stfle_orig and stfle_filtered fields in cpu_features
+ struct. They can't be used on the double words retrieved by the
+ stfle-instruction. */
-#define S390_STFLE_MASK_ARCH13_MIE3 (1ULL << (63 - S390_STFLE_BITS_ARCH13_MIE3))
+/* Facility bit 34: z10: General instructions extension. */
+#define S390_STFLE_BIT34_Z10 (1ULL << 0)
+/* Facility bit 45: z196: Distinct operands, popcount, ... */
+#define S390_STFLE_BIT45_Z196 (1ULL << 1)
-#define S390_IS_ARCH13_MIE3(STFLE_BITS_ARRAY) \
- (((STFLE_BITS_ARRAY)[0] & S390_STFLE_MASK_ARCH13_MIE3) != 0)
+/* Facility bit 61: arch13/z15: Miscellaneous-Instruction-Extensions
+ Facility 3, e.g. mvcrl. */
+#define S390_STFLE_BIT61_ARCH13_MIE3 (1ULL << 2)
-#define S390_IS_Z196(STFLE_BITS_ARRAY) \
- (((STFLE_BITS_ARRAY)[0] & (1ULL << (63 - S390_STFLE_BITS_Z196))) != 0)
+/* Facility bit 84: arch15/z17: Miscellaneous-instruction-extensions
+ facility 4 */
+#define S390_STFLE_BIT84_ARCH15_MIE4 (1ULL << 3)
-#define S390_IS_Z10(STFLE_BITS_ARRAY) \
- (((STFLE_BITS_ARRAY)[0] & (1ULL << (63 - S390_STFLE_BITS_Z10))) != 0)
+/* Facility bit 198: arch15/z17: Vector-enhancements-facility 3 */
+#define S390_STFLE_BIT198_ARCH15_VXRS_EXT3 (1ULL << 4)
+
+/* Facility bit 199: arch15/z17: Vector-Packed-Decimal-Enhancement
+ Facility 3 */
+#define S390_STFLE_BIT199_ARCH15_VXRS_PDE3 (1ULL << 5)
+
+/* Facility bit 201: arch15/z17: CPU: Concurrent-Functions Facility */
+#define S390_STFLE_BIT201_ARCH15_CON (1ULL << 6)
+
+#define S390_IS_ARCH15(STFLE_BITS) \
+ ((((STFLE_BITS) & S390_STFLE_BIT84_ARCH15_MIE4) != 0) \
+ && (((STFLE_BITS) & S390_STFLE_BIT198_ARCH15_VXRS_EXT3) != 0) \
+ && (((STFLE_BITS) & S390_STFLE_BIT199_ARCH15_VXRS_PDE3) != 0) \
+ && (((STFLE_BITS) & S390_STFLE_BIT201_ARCH15_CON) != 0))
+
+#define S390_IS_ARCH13_MIE3(STFLE_BITS) \
+ (((STFLE_BITS) & S390_STFLE_BIT61_ARCH13_MIE3) != 0)
+
+#define S390_IS_Z196(STFLE_BITS) \
+ (((STFLE_BITS) & S390_STFLE_BIT45_Z196) != 0)
+
+#define S390_IS_Z10(STFLE_BITS) \
+ (((STFLE_BITS) & S390_STFLE_BIT34_Z10) != 0)
struct cpu_features
{
unsigned long int hwcap;
unsigned long int __reserved_hwcap2;
- unsigned long long stfle_bits[3];
- unsigned long long __reserved[11];
+ unsigned long long __reserved;
+ unsigned long long stfle_orig;
+ unsigned long long stfle_filtered;
+ unsigned long long __reserved2[11];
};
#endif /* __CPU_FEATURES_S390X_H */
diff --git a/sysdeps/s390/dl-diagnostics-cpu.c b/sysdeps/s390/dl-diagnostics-cpu.c
new file mode 100644
index 0000000..426af2d
--- /dev/null
+++ b/sysdeps/s390/dl-diagnostics-cpu.c
@@ -0,0 +1,37 @@
+/* Print CPU diagnostics data in ld.so. s390 version.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <dl-diagnostics.h>
+#include <ldsodefs.h>
+#include <cpu-features.h>
+
+static void
+print_cpu_features_value (const char *label, uint64_t value)
+{
+ _dl_printf ("s390.cpu_features.");
+ _dl_diagnostics_print_labeled_value (label, value);
+}
+
+void
+_dl_diagnostics_cpu (void)
+{
+ const struct cpu_features *cpu_features = &GLRO(dl_s390_cpu_features);
+ print_cpu_features_value ("hwcap", cpu_features->hwcap);
+ print_cpu_features_value ("stfle_orig", cpu_features->stfle_orig);
+ print_cpu_features_value ("stfle_filtered", cpu_features->stfle_filtered);
+}
diff --git a/sysdeps/s390/multiarch/ifunc-impl-list.c b/sysdeps/s390/multiarch/ifunc-impl-list.c
index 48c8ce1..14b1f763 100644
--- a/sysdeps/s390/multiarch/ifunc-impl-list.c
+++ b/sysdeps/s390/multiarch/ifunc-impl-list.c
@@ -81,8 +81,8 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array,
/* Get hardware information. */
const struct cpu_features *features = &GLRO(dl_s390_cpu_features);
unsigned long int dl_hwcap __attribute__ ((unused)) = features->hwcap;
- const unsigned long long * __attribute__((unused)) stfle_bits
- = features->stfle_bits;
+ const unsigned long long __attribute__((unused)) stfle_bits
+ = features->stfle_filtered;
#if HAVE_MEMSET_IFUNC
IFUNC_IMPL (i, name, memset,
diff --git a/sysdeps/s390/multiarch/ifunc-resolve.h b/sysdeps/s390/multiarch/ifunc-resolve.h
index 34f3b0d..b28c503 100644
--- a/sysdeps/s390/multiarch/ifunc-resolve.h
+++ b/sysdeps/s390/multiarch/ifunc-resolve.h
@@ -23,7 +23,7 @@
#include <sys/auxv.h>
#define s390_libc_ifunc_expr_stfle_init() \
- const unsigned long long *stfle_bits = features->stfle_bits;
+ const unsigned long long stfle_bits = features->stfle_filtered;
#define s390_libc_ifunc_expr_init() \
const struct cpu_features *features = &GLRO(dl_s390_cpu_features); \
diff --git a/sysdeps/s390/s390-32/s390-mcount.S b/sysdeps/s390/s390-32/s390-mcount.S
index 59614ee..7f8457f 100644
--- a/sysdeps/s390/s390-32/s390-mcount.S
+++ b/sysdeps/s390/s390-32/s390-mcount.S
@@ -54,11 +54,7 @@ C_LABEL(_mcount)
/* Save the caller-clobbered registers. */
ahi %r15,-128
cfi_adjust_cfa_offset (128)
- /* binutils 2.28+: .cfi_val_offset r15, -96 */
- .cfi_escape \
- /* DW_CFA_val_offset */ 0x14, \
- /* r15 */ 0x0f, \
- /* scaled offset */ 0x18
+ cfi_val_offset (r15, -96)
stm %r14,%r5,96(%r15)
cfi_offset (r14, -128)
l %r2,132(%r15) # callers address = first parameter
diff --git a/sysdeps/s390/s390-64/Makefile b/sysdeps/s390/s390-64/Makefile
index 66ed844..991025c 100644
--- a/sysdeps/s390/s390-64/Makefile
+++ b/sysdeps/s390/s390-64/Makefile
@@ -11,7 +11,8 @@ $(objpfx)tst-glibc-hwcaps: \
$(objpfx)libmarkermod2-1.so \
$(objpfx)libmarkermod3-1.so \
$(objpfx)libmarkermod4-1.so \
- $(objpfx)libmarkermod5-1.so
+ $(objpfx)libmarkermod5-1.so \
+ $(objpfx)libmarkermod6-1.so
$(objpfx)tst-glibc-hwcaps.out: \
$(objpfx)libmarkermod2.so \
$(objpfx)glibc-hwcaps/z13/libmarkermod2.so \
@@ -26,7 +27,14 @@ $(objpfx)tst-glibc-hwcaps.out: \
$(objpfx)glibc-hwcaps/z13/libmarkermod5.so \
$(objpfx)glibc-hwcaps/z14/libmarkermod5.so \
$(objpfx)glibc-hwcaps/z15/libmarkermod5.so \
- $(objpfx)glibc-hwcaps/z16/libmarkermod5.so
+ $(objpfx)glibc-hwcaps/z16/libmarkermod5.so \
+ $(objpfx)libmarkermod6.so \
+ $(objpfx)glibc-hwcaps/z13/libmarkermod6.so \
+ $(objpfx)glibc-hwcaps/z14/libmarkermod6.so \
+ $(objpfx)glibc-hwcaps/z15/libmarkermod6.so \
+ $(objpfx)glibc-hwcaps/z16/libmarkermod6.so \
+ $(objpfx)glibc-hwcaps/z17/libmarkermod6.so
+
$(objpfx)glibc-hwcaps/z13/libmarkermod2.so: $(objpfx)libmarkermod2-2.so
$(make-target-directory)
@@ -58,6 +66,21 @@ $(objpfx)glibc-hwcaps/z15/libmarkermod5.so: $(objpfx)libmarkermod5-4.so
$(objpfx)glibc-hwcaps/z16/libmarkermod5.so: $(objpfx)libmarkermod5-5.so
$(make-target-directory)
cp $< $@
+$(objpfx)glibc-hwcaps/z13/libmarkermod6.so: $(objpfx)libmarkermod6-2.so
+ $(make-target-directory)
+ cp $< $@
+$(objpfx)glibc-hwcaps/z14/libmarkermod6.so: $(objpfx)libmarkermod6-3.so
+ $(make-target-directory)
+ cp $< $@
+$(objpfx)glibc-hwcaps/z15/libmarkermod6.so: $(objpfx)libmarkermod6-4.so
+ $(make-target-directory)
+ cp $< $@
+$(objpfx)glibc-hwcaps/z16/libmarkermod6.so: $(objpfx)libmarkermod6-5.so
+ $(make-target-directory)
+ cp $< $@
+$(objpfx)glibc-hwcaps/z17/libmarkermod6.so: $(objpfx)libmarkermod6-6.so
+ $(make-target-directory)
+ cp $< $@
ifeq (no,$(build-hardcoded-path-in-tests))
diff --git a/sysdeps/s390/s390-64/dl-hwcap-check.h b/sysdeps/s390/s390-64/dl-hwcap-check.h
index 815cf3e..736e654 100644
--- a/sysdeps/s390/s390-64/dl-hwcap-check.h
+++ b/sysdeps/s390/s390-64/dl-hwcap-check.h
@@ -25,8 +25,23 @@
static inline void
dl_hwcap_check (void)
{
-#if defined __ARCH__
-# if GCCMACRO__ARCH__ >= 14
+ /* Note: The s390x kernel won't introduce new HWCAP-Bits if there is
+ no special handling needed in kernel itself. Thus we have have
+ to check the facility-list retrieved with the stfle instruction.
+ We already have a common storage of this list in cpu-features.c.
+ This dl-hwcap-check.h file is included in
+ sysdeps/unix/sysv/linux/dl-sysdep.c, where also dl-machine.h and
+ cpu-features.c is included. Therefore we don't have a special
+ include here. */
+
+#if defined GCCMACRO__ARCH__
+# if GCCMACRO__ARCH__ >= 15
+ init_cpu_features_no_tunables (&GLRO(dl_s390_cpu_features));
+ if (!(S390_IS_ARCH15 (GLRO(dl_s390_cpu_features).stfle_orig)))
+ _dl_fatal_printf ("\
+Fatal glibc error: CPU lacks VXRS_EXT3/VXRS_PDE3/MIE4/Concurrent-functions \
+support (z17 or later required)\n");
+# elif GCCMACRO__ARCH__ >= 14
if (!(GLRO(dl_hwcap) & HWCAP_S390_VXRS_PDE2))
_dl_fatal_printf ("\
Fatal glibc error: CPU lacks VXRS_PDE2 support (z16 or later required)\n");
@@ -39,7 +54,7 @@ Fatal glibc error: CPU lacks VXRS_EXT2 support (z15 or later required)\n");
_dl_fatal_printf ("\
Fatal glibc error: CPU lacks VXE support (z14 or later required)\n");
# endif
-#endif /* __ARCH__ */
+#endif /* GCCMACRO__ARCH__ */
}
#endif /* _DL_HWCAP_CHECK_H */
diff --git a/sysdeps/s390/s390-64/dl-hwcaps-subdirs.c b/sysdeps/s390/s390-64/dl-hwcaps-subdirs.c
index 32fdabd..1ae9fdd 100644
--- a/sysdeps/s390/s390-64/dl-hwcaps-subdirs.c
+++ b/sysdeps/s390/s390-64/dl-hwcaps-subdirs.c
@@ -19,9 +19,10 @@
#include <dl-hwcaps.h>
#include <ldsodefs.h>
#include <sys/auxv.h>
+#include <cpu-features.h>
-const char _dl_hwcaps_subdirs[] = "z16:z15:z14:z13";
-enum { subdirs_count = 4 }; /* Number of components in _dl_hwcaps_subdirs. */
+const char _dl_hwcaps_subdirs[] = "z17:z16:z15:z14:z13";
+enum { subdirs_count = 5 }; /* Number of components in _dl_hwcaps_subdirs. */
uint32_t
_dl_hwcaps_subdirs_active (void)
@@ -58,5 +59,12 @@ _dl_hwcaps_subdirs_active (void)
return _dl_hwcaps_subdirs_build_bitmask (subdirs_count, active);
++active;
+ /* z17.
+ Note: The kernel has not introduced new HWCAP bits as the new facilities do
+ not require kernel interaction. Thus we check the features via stfle. */
+ if (!(S390_IS_ARCH15 (GLRO(dl_s390_cpu_features).stfle_orig)))
+ return _dl_hwcaps_subdirs_build_bitmask (subdirs_count, active);
+ ++active;
+
return _dl_hwcaps_subdirs_build_bitmask (subdirs_count, active);
}
diff --git a/sysdeps/s390/s390-64/s390x-mcount.h b/sysdeps/s390/s390-64/s390x-mcount.h
index b82f1a8..c5bd70d 100644
--- a/sysdeps/s390/s390-64/s390x-mcount.h
+++ b/sysdeps/s390/s390-64/s390x-mcount.h
@@ -68,11 +68,7 @@ C_LABEL(MCOUNT_SYMBOL)
/* Save the caller-clobbered registers. */
aghi %r15,-224
cfi_adjust_cfa_offset (224)
- /* binutils 2.28+: .cfi_val_offset r15, -160 */
- .cfi_escape \
- /* DW_CFA_val_offset */ 0x14, \
- /* r15 */ 0x0f, \
- /* scaled offset */ 0x14
+ cfi_val_offset (r15, -160)
stmg %r14,%r5,160(%r15)
cfi_offset (r14, -224)
cfi_offset (r0, -224+16)
diff --git a/sysdeps/s390/s390-64/tst-glibc-hwcaps.c b/sysdeps/s390/s390-64/tst-glibc-hwcaps.c
index 1652bd7..b9d8781 100644
--- a/sysdeps/s390/s390-64/tst-glibc-hwcaps.c
+++ b/sysdeps/s390/s390-64/tst-glibc-hwcaps.c
@@ -26,35 +26,53 @@ extern int marker2 (void);
extern int marker3 (void);
extern int marker4 (void);
extern int marker5 (void);
+extern int marker6 (void);
/* Return the arch level, 10 for the baseline libmarkermod*.so's. */
static int
compute_level (void)
{
const char *platform = (const char *) getauxval (AT_PLATFORM);
+ const unsigned long int hwcap = getauxval (AT_HWCAP);
+ const int latest_level = 15;
/* The arch* versions refer to the edition of the Principles of
Operation, and they are off by two when compared with the recent
product names. (The code below should not be considered an
accurate mapping to Principles of Operation editions for earlier
AT_PLATFORM strings). */
- if (strcmp (platform, "z900") == 0)
- return 10;
- if (strcmp (platform, "z990") == 0)
- return 10;
- if (strcmp (platform, "z9-109") == 0)
- return 10;
- if (strcmp (platform, "z10") == 0)
- return 10;
- if (strcmp (platform, "z196") == 0)
- return 10;
- if (strcmp (platform, "zEC12") == 0)
- return 10;
+ if ((strcmp (platform, "z900") == 0)
+ || (strcmp (platform, "z990") == 0)
+ || (strcmp (platform, "z9-109") == 0)
+ || (strcmp (platform, "z10") == 0)
+ || (strcmp (platform, "z196") == 0)
+ || (strcmp (platform, "zEC12") == 0))
+ {
+ if ((hwcap & HWCAP_S390_VX) == 0)
+ {
+ /* As vector-support was introduced with the newer z13
+ architecture, we are really on one of the tested older
+ architectures. */
+ return 10;
+ }
+ else
+ {
+ /* According to AT_PLATFORM we are on an older architecture
+ without vector-support, but according to HWCAPs vector
+ registers are supported. This means we are running on a
+ new architecture which is not yet known by the kernel.
+ Thus the default AT_PLATFORM string is used, which is the
+ oldest supported one. For this test, assume we are on
+ the latest known architecture. See
+ <kernel>/arch/s390/kernel/processor.c:setup_elf_platform().
+ */
+ return latest_level;
+ }
+ }
/* If we are running on z13 or newer and the kernel was booted with novx,
then AT_PLATFORM is z13 or newer, but _dl_hwcaps_subdirs_active will
return zero and the _dl_hwcaps_subdirs are not searched. */
- const unsigned long int hwcap = getauxval (AT_HWCAP);
if ((hwcap & HWCAP_S390_VX) == 0)
return 10;
@@ -66,9 +84,12 @@ compute_level (void)
return 13;
if (strcmp (platform, "z16") == 0)
return 14;
+ if (strcmp (platform, "z17") == 0)
+ return latest_level;
+
printf ("warning: unrecognized AT_PLATFORM value: %s\n", platform);
- /* Assume that the new platform supports z16. */
- return 14;
+ /* Assume that the new platform supports the latest known architecture. */
+ return latest_level;
}
static int
@@ -80,6 +101,7 @@ do_test (void)
TEST_COMPARE (marker3 (), MIN (level - 9, 3));
TEST_COMPARE (marker4 (), MIN (level - 9, 4));
TEST_COMPARE (marker5 (), MIN (level - 9, 5));
+ TEST_COMPARE (marker6 (), MIN (level - 9, 6));
return 0;
}
diff --git a/sysdeps/sparc/sparc32/start.S b/sysdeps/sparc/sparc32/start.S
index 694b020..8393760 100644
--- a/sysdeps/sparc/sparc32/start.S
+++ b/sysdeps/sparc/sparc32/start.S
@@ -35,6 +35,7 @@
#include <sysdep.h>
+#define FRAME_SIZE 104
.section ".text"
.align 4
@@ -48,12 +49,12 @@ _start:
/* Terminate the stack frame, and reserve space for functions to
drop their arguments. */
mov %g0, %fp
- sub %sp, 6*4, %sp
+ sub %sp, FRAME_SIZE, %sp
/* Extract the arguments and environment as encoded on the stack. The
argument info starts after one register window (16 words) past the SP. */
- ld [%sp+22*4], %o1
- add %sp, 23*4, %o2
+ ld [%sp+168], %o1
+ add %sp, 172, %o2
/* Load the addresses of the user entry points. */
#ifndef PIC
@@ -73,6 +74,10 @@ _start:
be NULL. */
mov %g1, %o5
+ /* Provide the highest stack address to update the __libc_stack_end (used
+ to enable executable stacks if required). */
+ st %sp, [%sp+23*4]
+
/* Let libc do the rest of the initialization, and call main. */
call __libc_start_main
nop
diff --git a/sysdeps/sparc/sparc64/start.S b/sysdeps/sparc/sparc64/start.S
index c9c25c2..08e1e77 100644
--- a/sysdeps/sparc/sparc64/start.S
+++ b/sysdeps/sparc/sparc64/start.S
@@ -74,6 +74,10 @@ _start:
be NULL. */
mov %g1, %o5
+ /* Provide the highest stack address to update the __libc_stack_end (used
+ to enable executable stacks if required). */
+ stx %sp, [%sp+STACK_BIAS+22*8]
+
/* Let libc do the rest of the initialization, and call main. */
call __libc_start_main
nop
diff --git a/sysdeps/unix/bsd/tcsetattr.c b/sysdeps/unix/bsd/tcsetattr.c
index 38b5f71..8693d94 100644
--- a/sysdeps/unix/bsd/tcsetattr.c
+++ b/sysdeps/unix/bsd/tcsetattr.c
@@ -32,7 +32,7 @@
/* Set the state of FD to *TERMIOS_P. */
int
-tcsetattr (int fd, int optional_actions, const struct termios *termios_p)
+__tcsetattr (int fd, int optional_actions, const struct termios *termios_p)
{
struct termios myt;
@@ -56,4 +56,6 @@ tcsetattr (int fd, int optional_actions, const struct termios *termios_p)
return __ioctl (fd, TIOCSETAF, termios_p);
}
}
-libc_hidden_def (tcsetattr)
+
+libc_hidden_def (__tcsetattr)
+weak_alias (__tcsetattr, tcsetattr)
diff --git a/sysdeps/unix/sysv/linux/Makefile b/sysdeps/unix/sysv/linux/Makefile
index dcd87b2..c47cbdf 100644
--- a/sysdeps/unix/sysv/linux/Makefile
+++ b/sysdeps/unix/sysv/linux/Makefile
@@ -151,15 +151,6 @@ sysdep_headers += \
bits/struct_stat.h \
bits/struct_stat_time64_helper.h \
bits/syscall.h \
- bits/termios-baud.h \
- bits/termios-c_cc.h \
- bits/termios-c_cflag.h \
- bits/termios-c_iflag.h \
- bits/termios-c_lflag.h \
- bits/termios-c_oflag.h \
- bits/termios-misc.h \
- bits/termios-struct.h \
- bits/termios-tcflow.h \
bits/timerfd.h \
bits/types/struct_msqid64_ds.h \
bits/types/struct_msqid64_ds_helper.h \
@@ -421,6 +412,24 @@ tst-rseq-disable-static-ENV = GLIBC_TUNABLES=glibc.pthread.rseq=0
endif # $(subdir) == misc
+ifeq ($(subdir),termios)
+sysdep_headers += \
+ bits/termios-c_cc.h \
+ bits/termios-c_cflag.h \
+ bits/termios-c_iflag.h \
+ bits/termios-c_lflag.h \
+ bits/termios-c_oflag.h \
+ bits/termios-cbaud.h \
+ bits/termios-misc.h \
+ bits/termios-struct.h \
+ bits/termios-tcflow.h \
+ # sysdep_headers
+
+tests += \
+ tst-termios-linux \
+ # tests
+endif
+
ifeq ($(subdir),time)
sysdep_headers += \
bits/timex.h \
@@ -506,12 +515,6 @@ sysdep_headers += \
# sysdep_headers
endif
-ifeq ($(subdir),termios)
-sysdep_headers += \
- termio.h \
- # sysdep_headers
-endif
-
ifeq ($(subdir),posix)
sysdep_headers += \
bits/initspin.h \
@@ -609,6 +612,7 @@ endif
ifeq ($(subdir),io)
sysdep_routines += \
close_nocancel \
+ close_nocancel_nostatus \
fallocate \
fallocate64 \
fcntl_nocancel \
diff --git a/sysdeps/unix/sysv/linux/Versions b/sysdeps/unix/sysv/linux/Versions
index 55d5655..585dec7 100644
--- a/sysdeps/unix/sysv/linux/Versions
+++ b/sysdeps/unix/sysv/linux/Versions
@@ -332,6 +332,13 @@ libc {
sched_getattr;
sched_setattr;
}
+ GLIBC_2.42 {
+ cfgetospeed;
+ cfgetispeed;
+ cfsetospeed;
+ cfsetispeed;
+ cfsetspeed;
+ }
GLIBC_PRIVATE {
# functions used in other libraries
__syscall_rt_sigqueueinfo;
@@ -339,6 +346,7 @@ libc {
__read_nocancel;
__pread64_nocancel;
__close_nocancel;
+ __close_nocancel_nostatus;
__sigtimedwait;
# functions used by nscd
__netlink_assert_response;
diff --git a/sysdeps/unix/sysv/linux/aarch64/arch-syscall.h b/sysdeps/unix/sysv/linux/aarch64/arch-syscall.h
index 89aced0..ba4a461 100644
--- a/sysdeps/unix/sysv/linux/aarch64/arch-syscall.h
+++ b/sysdeps/unix/sysv/linux/aarch64/arch-syscall.h
@@ -175,6 +175,7 @@
#define __NR_nfsservctl 42
#define __NR_open_by_handle_at 265
#define __NR_open_tree 428
+#define __NR_open_tree_attr 467
#define __NR_openat 56
#define __NR_openat2 437
#define __NR_perf_event_open 241
diff --git a/sysdeps/unix/sysv/linux/aarch64/cpu-features.c b/sysdeps/unix/sysv/linux/aarch64/cpu-features.c
index 6d63c8a..1acc82d 100644
--- a/sysdeps/unix/sysv/linux/aarch64/cpu-features.c
+++ b/sysdeps/unix/sysv/linux/aarch64/cpu-features.c
@@ -23,6 +23,7 @@
#include <sys/prctl.h>
#include <sys/utsname.h>
#include <dl-tunables-parse.h>
+#include <dl-symbol-redir-ifunc.h>
#define DCZID_DZP_MASK (1 << 4)
#define DCZID_BS_MASK (0xf)
diff --git a/sysdeps/unix/sysv/linux/aarch64/libc.abilist b/sysdeps/unix/sysv/linux/aarch64/libc.abilist
index 41f8f39..a22e651 100644
--- a/sysdeps/unix/sysv/linux/aarch64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/aarch64/libc.abilist
@@ -2752,4 +2752,18 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
diff --git a/sysdeps/unix/sysv/linux/aarch64/libm.abilist b/sysdeps/unix/sysv/linux/aarch64/libm.abilist
index 4fdeb0d..bb8114b 100644
--- a/sysdeps/unix/sysv/linux/aarch64/libm.abilist
+++ b/sysdeps/unix/sysv/linux/aarch64/libm.abilist
@@ -1245,6 +1245,14 @@ GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpif64x F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf128 F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnf64x F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf128 F
@@ -1261,6 +1269,14 @@ GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrf64x F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf128 F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnf64x F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf128 F
diff --git a/sysdeps/unix/sysv/linux/aarch64/libmvec.abilist b/sysdeps/unix/sysv/linux/aarch64/libmvec.abilist
index a56ce7f..f7f72b6 100644
--- a/sysdeps/unix/sysv/linux/aarch64/libmvec.abilist
+++ b/sysdeps/unix/sysv/linux/aarch64/libmvec.abilist
@@ -148,3 +148,23 @@ GLIBC_2.41 _ZGVsMxv_sinpi F
GLIBC_2.41 _ZGVsMxv_sinpif F
GLIBC_2.41 _ZGVsMxv_tanpi F
GLIBC_2.41 _ZGVsMxv_tanpif F
+GLIBC_2.42 _ZGVnN2v_acospi F
+GLIBC_2.42 _ZGVnN2v_acospif F
+GLIBC_2.42 _ZGVnN2v_asinpi F
+GLIBC_2.42 _ZGVnN2v_asinpif F
+GLIBC_2.42 _ZGVnN2v_atanpi F
+GLIBC_2.42 _ZGVnN2v_atanpif F
+GLIBC_2.42 _ZGVnN2vv_atan2pi F
+GLIBC_2.42 _ZGVnN2vv_atan2pif F
+GLIBC_2.42 _ZGVnN4v_acospif F
+GLIBC_2.42 _ZGVnN4v_asinpif F
+GLIBC_2.42 _ZGVnN4v_atanpif F
+GLIBC_2.42 _ZGVnN4vv_atan2pif F
+GLIBC_2.42 _ZGVsMxv_acospi F
+GLIBC_2.42 _ZGVsMxv_acospif F
+GLIBC_2.42 _ZGVsMxv_asinpi F
+GLIBC_2.42 _ZGVsMxv_asinpif F
+GLIBC_2.42 _ZGVsMxv_atanpi F
+GLIBC_2.42 _ZGVsMxv_atanpif F
+GLIBC_2.42 _ZGVsMxvv_atan2pi F
+GLIBC_2.42 _ZGVsMxvv_atan2pif F
diff --git a/sysdeps/unix/sysv/linux/aarch64/makecontext.c b/sysdeps/unix/sysv/linux/aarch64/makecontext.c
index a2eab9e..4485723 100644
--- a/sysdeps/unix/sysv/linux/aarch64/makecontext.c
+++ b/sysdeps/unix/sysv/linux/aarch64/makecontext.c
@@ -36,9 +36,7 @@ static struct _aarch64_ctx *extension (void *p)
static void *
alloc_makecontext_gcs (size_t stack_size)
{
- void *base;
- size_t size;
- void *gcsp = __alloc_gcs (stack_size, &base, &size);
+ void *gcsp = __alloc_gcs (stack_size, NULL);
if (gcsp == NULL)
/* ENOSYS, bad size or OOM. */
abort ();
diff --git a/sysdeps/unix/sysv/linux/aarch64/setcontext.S b/sysdeps/unix/sysv/linux/aarch64/setcontext.S
index 022a263..d9716f0 100644
--- a/sysdeps/unix/sysv/linux/aarch64/setcontext.S
+++ b/sysdeps/unix/sysv/linux/aarch64/setcontext.S
@@ -48,25 +48,16 @@ ENTRY (__setcontext)
cbz x0, 1f
b C_SYMBOL_NAME (__syscall_error)
1:
- /* Disable ZA of SME. */
-#if HAVE_AARCH64_PAC_RET
- PACIASP
- cfi_window_save
-#endif
- stp x29, x30, [sp, -16]!
- cfi_adjust_cfa_offset (16)
- cfi_rel_offset (x29, 0)
- cfi_rel_offset (x30, 8)
- mov x29, sp
+ /* Clear ZA state of SME. */
+ /* The calling convention of __libc_arm_za_disable allows to do
+ this thus allowing to avoid saving to and reading from stack.
+ As a result we also don't need to sign the return address and
+ check it after returning because it is not stored to stack. */
+ mov x13, x30
+ cfi_register (x30, x13)
bl __libc_arm_za_disable
- ldp x29, x30, [sp], 16
- cfi_adjust_cfa_offset (-16)
- cfi_restore (x29)
- cfi_restore (x30)
-#if HAVE_AARCH64_PAC_RET
- AUTIASP
- cfi_window_save
-#endif
+ mov x30, x13
+ cfi_register (x13, x30)
/* Restore the general purpose registers. */
mov x0, x9
cfi_def_cfa (x0, 0)
diff --git a/sysdeps/unix/sysv/linux/aarch64/swapcontext.S b/sysdeps/unix/sysv/linux/aarch64/swapcontext.S
index cc41253..58ddb95 100644
--- a/sysdeps/unix/sysv/linux/aarch64/swapcontext.S
+++ b/sysdeps/unix/sysv/linux/aarch64/swapcontext.S
@@ -119,7 +119,7 @@ L(gcs_done):
2:
/* The oucp context is restored here via an indirect branch,
x1 must be restored too which has the real return address. */
- BTI_J
+ bti j
mov x30, x1
RET
PSEUDO_END (__swapcontext)
diff --git a/sysdeps/unix/sysv/linux/aarch64/uw-sigframe.h b/sysdeps/unix/sysv/linux/aarch64/uw-sigframe.h
new file mode 100644
index 0000000..9d5d345
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/aarch64/uw-sigframe.h
@@ -0,0 +1,78 @@
+/* Signal frame backtracing support for SFrame on AARCH64.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public License
+ as published by the Free Software Foundation; either version 2.1 of
+ the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be
+ useful, but WITHOUT ANY WARRANTY; without even the implied warranty
+ of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+/* This code is inspired from libgcc's MD_FALLBACK_FRAME_STATE_FOR
+ implementation. See libgcc/config/aarch64/linux-unwind.h */
+
+#include <signal.h>
+#include <sys/ucontext.h>
+#include <kernel_rt_sigframe.h>
+
+#ifdef __AARCH64EL__
+#define MOVZ_X8_8B 0xd2801168
+#define SVC_0 0xd4000001
+#else
+#define MOVZ_X8_8B 0x681180d2
+#define SVC_0 0x010000d4
+#endif
+
+#define MD_DECODE_SIGNAL_FRAME aarch64_decode_signal_frame
+
+static _Unwind_Reason_Code
+aarch64_decode_signal_frame (frame *frame)
+{
+ unsigned int *pc = (unsigned int *) frame->pc;
+ mcontext_t *mt;
+ struct kernel_rt_sigframe *rt_;
+
+ if ((frame->pc & 3) != 0)
+ return _URC_END_OF_STACK;
+
+ /* A signal frame will have a return address pointing to
+ __kernel_rt_sigreturn. This code is hardwired as:
+
+ 0xd2801168 movz x8, #0x8b
+ 0xd4000001 svc 0x0
+ */
+ if (pc[0] != MOVZ_X8_8B || pc[1] != SVC_0)
+ return _URC_END_OF_STACK;
+
+ rt_ = (struct kernel_rt_sigframe *) frame->sp;
+ mt = &rt_->uc.uc_mcontext;
+
+ /* Frame pointer register number. */
+#define FP_REGNUM 30
+
+ frame->pc = (_Unwind_Ptr) mt->pc;
+ frame->sp = (_Unwind_Ptr) mt->sp;
+ frame->fp = (_Unwind_Ptr) mt->regs[FP_REGNUM];
+ return _URC_NO_REASON;
+}
+
+#define MD_DETECT_OUTERMOST_FRAME aarch64_detect_outermost_frame
+
+static _Unwind_Reason_Code
+aarch64_detect_outermost_frame (frame *frame)
+{
+ /* Initial frame has LR and FP set to zero. We track only FP. */
+ if (frame->fp == 0)
+ return _URC_END_OF_STACK;
+
+ return _URC_NO_REASON;
+}
diff --git a/sysdeps/unix/sysv/linux/alpha/arch-syscall.h b/sysdeps/unix/sysv/linux/alpha/arch-syscall.h
index 455da93..840d6fe 100644
--- a/sysdeps/unix/sysv/linux/alpha/arch-syscall.h
+++ b/sysdeps/unix/sysv/linux/alpha/arch-syscall.h
@@ -209,6 +209,7 @@
#define __NR_open 45
#define __NR_open_by_handle_at 498
#define __NR_open_tree 538
+#define __NR_open_tree_attr 577
#define __NR_openat 450
#define __NR_openat2 547
#define __NR_osf_adjtime 140
diff --git a/sysdeps/unix/sysv/linux/alpha/bits/termios-c_cflag.h b/sysdeps/unix/sysv/linux/alpha/bits/termios-c_cflag.h
index 1f9f7f2..d830884 100644
--- a/sysdeps/unix/sysv/linux/alpha/bits/termios-c_cflag.h
+++ b/sysdeps/unix/sysv/linux/alpha/bits/termios-c_cflag.h
@@ -36,4 +36,6 @@
#ifdef __USE_MISC
# define ADDRB 04000000000
+# define CMSPAR 010000000000 /* Mark or space (stick) parity. */
+# define CRTSCTS 020000000000 /* Flow control. */
#endif
diff --git a/sysdeps/unix/sysv/linux/alpha/bits/termios-baud.h b/sysdeps/unix/sysv/linux/alpha/bits/termios-cbaud.h
index 324d5d8..69421f6 100644
--- a/sysdeps/unix/sysv/linux/alpha/bits/termios-baud.h
+++ b/sysdeps/unix/sysv/linux/alpha/bits/termios-cbaud.h
@@ -17,30 +17,29 @@
<https://www.gnu.org/licenses/>. */
#ifndef _TERMIOS_H
-# error "Never include <bits/termios-baud.h> directly; use <termios.h> instead."
+# error "Never include <bits/termios-cbaud.h> directly; use <termios.h> instead."
#endif
#ifdef __USE_MISC
-# define CBAUD 0000037
-# define CBAUDEX 0000000
-# define CMSPAR 010000000000 /* mark or space (stick) parity */
-# define CRTSCTS 020000000000 /* flow control */
+# define CBAUD 000000037
+# define CBAUDEX 000000000
+# define CIBAUD 007600000
+# define IBSHIFT 16
#endif
-#define B57600 00020
-#define B115200 00021
-#define B230400 00022
-#define B460800 00023
-#define B500000 00024
-#define B576000 00025
-#define B921600 00026
-#define B1000000 00027
-#define B1152000 00030
-#define B1500000 00031
-#define B2000000 00032
-#define B2500000 00033
-#define B3000000 00034
-#define B3500000 00035
-#define B4000000 00036
-
-#define __MAX_BAUD B4000000
+#define __B57600 00020
+#define __B115200 00021
+#define __B230400 00022
+#define __B460800 00023
+#define __B500000 00024
+#define __B576000 00025
+#define __B921600 00026
+#define __B1000000 00027
+#define __B1152000 00030
+#define __B1500000 00031
+#define __B2000000 00032
+#define __B2500000 00033
+#define __B3000000 00034
+#define __B3500000 00035
+#define __B4000000 00036
+#define __BOTHER 00037
diff --git a/sysdeps/unix/sysv/linux/alpha/bits/termios-struct.h b/sysdeps/unix/sysv/linux/alpha/bits/termios-struct.h
index de4d5fc..f50e9ef 100644
--- a/sysdeps/unix/sysv/linux/alpha/bits/termios-struct.h
+++ b/sysdeps/unix/sysv/linux/alpha/bits/termios-struct.h
@@ -30,8 +30,15 @@ struct termios
tcflag_t c_lflag; /* local mode flags */
cc_t c_cc[NCCS]; /* control characters */
cc_t c_line; /* line discipline (== c_cc[33]) */
- speed_t c_ispeed; /* input speed */
- speed_t c_ospeed; /* output speed */
+ /* Input and output baud rates. */
+ __extension__ union {
+ speed_t __ispeed;
+ speed_t c_ispeed;
+ };
#define _HAVE_STRUCT_TERMIOS_C_ISPEED 1
+ __extension__ union {
+ speed_t __ospeed;
+ speed_t c_ospeed;
+ };
#define _HAVE_STRUCT_TERMIOS_C_OSPEED 1
};
diff --git a/sysdeps/unix/sysv/linux/alpha/kernel-features.h b/sysdeps/unix/sysv/linux/alpha/kernel-features.h
index 6eae48f..83fdf91 100644
--- a/sysdeps/unix/sysv/linux/alpha/kernel-features.h
+++ b/sysdeps/unix/sysv/linux/alpha/kernel-features.h
@@ -54,4 +54,15 @@
#undef __ASSUME_CLONE3
#define __ASSUME_CLONE3 0
+/* Alpha did not provide BOTHER, CIBAUD or the termios2 ioctls until
+ kernel 4.20. Even though struct __kernel_termios and struct
+ termios2 are the same on Alpha, Calling the legacy TCSETS* ioctls
+ with BOTHER set triggers a bug in these old kernels, so only use
+ the legacy TCSETS* ioctl numbers if neither BOTHER nor split speed is
+ needed; that way the code will fail gracefully. */
+#if __LINUX_KERNEL_VERSION < 0x041400
+# undef __ASSUME_TERMIOS2
+# define __ASSUME_TERMIOS2 0
+#endif
+
#endif /* _KERNEL_FEATURES_H */
diff --git a/sysdeps/unix/sysv/linux/alpha/kernel_termios.h b/sysdeps/unix/sysv/linux/alpha/kernel_termios.h
deleted file mode 100644
index 6a777dd..0000000
--- a/sysdeps/unix/sysv/linux/alpha/kernel_termios.h
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Copyright (C) 1997-2025 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library. If not, see
- <https://www.gnu.org/licenses/>. */
-
-#ifndef _KERNEL_TERMIOS_H
-#define _KERNEL_TERMIOS_H 1
-
-/* The following corresponds to the values from the Linux 2.1.20 kernel. */
-
-/* We need the definition of tcflag_t, cc_t, and speed_t. */
-#include <termios.h>
-
-#define __KERNEL_NCCS 19
-
-struct __kernel_termios
- {
- tcflag_t c_iflag; /* input mode flags */
- tcflag_t c_oflag; /* output mode flags */
- tcflag_t c_cflag; /* control mode flags */
- tcflag_t c_lflag; /* local mode flags */
- cc_t c_cc[__KERNEL_NCCS]; /* control characters */
- cc_t c_line; /* line discipline */
- speed_t c_ispeed; /* input speed */
- speed_t c_ospeed; /* output speed */
- };
-
-#define _HAVE_C_ISPEED 1
-#define _HAVE_C_OSPEED 1
-
-#endif /* kernel_termios.h */
diff --git a/sysdeps/unix/sysv/linux/alpha/libc.abilist b/sysdeps/unix/sysv/linux/alpha/libc.abilist
index 34efc96..4b5736a 100644
--- a/sysdeps/unix/sysv/linux/alpha/libc.abilist
+++ b/sysdeps/unix/sysv/linux/alpha/libc.abilist
@@ -3099,7 +3099,21 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
GLIBC_2.5 __readlinkat_chk F
GLIBC_2.5 inet6_opt_append F
GLIBC_2.5 inet6_opt_find F
diff --git a/sysdeps/unix/sysv/linux/alpha/libm.abilist b/sysdeps/unix/sysv/linux/alpha/libm.abilist
index 06cec45..4b383b1 100644
--- a/sysdeps/unix/sysv/linux/alpha/libm.abilist
+++ b/sysdeps/unix/sysv/linux/alpha/libm.abilist
@@ -1404,6 +1404,14 @@ GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpif64x F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf128 F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnf64x F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf128 F
@@ -1420,6 +1428,14 @@ GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrf64x F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf128 F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnf64x F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf128 F
diff --git a/sysdeps/unix/sysv/linux/alpha/termios_arch.h b/sysdeps/unix/sysv/linux/alpha/termios_arch.h
new file mode 100644
index 0000000..20025f2
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/alpha/termios_arch.h
@@ -0,0 +1,26 @@
+/* Architectural parameters for Linux termios - Alpha/PowerPC version
+
+ Copyright (C) 1997-2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#ifndef TERMIOS_INTERNALS_H
+# error "<termios_arch.h> should only be included from <termios_internals.h>"
+#endif
+
+#define _TERMIOS2_NCCS 19
+#define _HAVE_TERMIOS2_C_CC_BEFORE_C_LINE 1
+#define _HAVE_STRUCT_OLD_TERMIOS 0
diff --git a/sysdeps/unix/sysv/linux/arc/arch-syscall.h b/sysdeps/unix/sysv/linux/arc/arch-syscall.h
index 01075e8..2534f0f 100644
--- a/sysdeps/unix/sysv/linux/arc/arch-syscall.h
+++ b/sysdeps/unix/sysv/linux/arc/arch-syscall.h
@@ -177,6 +177,7 @@
#define __NR_nfsservctl 42
#define __NR_open_by_handle_at 265
#define __NR_open_tree 428
+#define __NR_open_tree_attr 467
#define __NR_openat 56
#define __NR_openat2 437
#define __NR_perf_event_open 241
diff --git a/sysdeps/unix/sysv/linux/arc/libc.abilist b/sysdeps/unix/sysv/linux/arc/libc.abilist
index de7c618..b8a4478 100644
--- a/sysdeps/unix/sysv/linux/arc/libc.abilist
+++ b/sysdeps/unix/sysv/linux/arc/libc.abilist
@@ -2513,4 +2513,18 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
diff --git a/sysdeps/unix/sysv/linux/arc/libm.abilist b/sysdeps/unix/sysv/linux/arc/libm.abilist
index ab3f09c..c865ec8 100644
--- a/sysdeps/unix/sysv/linux/arc/libm.abilist
+++ b/sysdeps/unix/sysv/linux/arc/libm.abilist
@@ -829,6 +829,12 @@ GLIBC_2.41 tanpif32 F
GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf32 F
@@ -841,6 +847,12 @@ GLIBC_2.42 powrf32 F
GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf32 F
diff --git a/sysdeps/unix/sysv/linux/arm/arch-syscall.h b/sysdeps/unix/sysv/linux/arm/arch-syscall.h
index 9704472..8e585a4 100644
--- a/sysdeps/unix/sysv/linux/arm/arch-syscall.h
+++ b/sysdeps/unix/sysv/linux/arm/arch-syscall.h
@@ -223,6 +223,7 @@
#define __NR_open 5
#define __NR_open_by_handle_at 371
#define __NR_open_tree 428
+#define __NR_open_tree_attr 467
#define __NR_openat 322
#define __NR_openat2 437
#define __NR_pause 29
diff --git a/sysdeps/unix/sysv/linux/arm/be/libc.abilist b/sysdeps/unix/sysv/linux/arm/be/libc.abilist
index 96f0314..959e446 100644
--- a/sysdeps/unix/sysv/linux/arm/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/arm/be/libc.abilist
@@ -2805,7 +2805,21 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
GLIBC_2.5 __readlinkat_chk F
GLIBC_2.5 inet6_opt_append F
GLIBC_2.5 inet6_opt_find F
diff --git a/sysdeps/unix/sysv/linux/arm/be/libm.abilist b/sysdeps/unix/sysv/linux/arm/be/libm.abilist
index efa90f9..63bad09 100644
--- a/sysdeps/unix/sysv/linux/arm/be/libm.abilist
+++ b/sysdeps/unix/sysv/linux/arm/be/libm.abilist
@@ -920,6 +920,12 @@ GLIBC_2.41 tanpif32 F
GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf32 F
@@ -932,6 +938,12 @@ GLIBC_2.42 powrf32 F
GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf32 F
diff --git a/sysdeps/unix/sysv/linux/arm/le/libc.abilist b/sysdeps/unix/sysv/linux/arm/le/libc.abilist
index 635468f..a930d1a 100644
--- a/sysdeps/unix/sysv/linux/arm/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/arm/le/libc.abilist
@@ -2802,7 +2802,21 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
GLIBC_2.5 __readlinkat_chk F
GLIBC_2.5 inet6_opt_append F
GLIBC_2.5 inet6_opt_find F
diff --git a/sysdeps/unix/sysv/linux/arm/le/libm.abilist b/sysdeps/unix/sysv/linux/arm/le/libm.abilist
index efa90f9..63bad09 100644
--- a/sysdeps/unix/sysv/linux/arm/le/libm.abilist
+++ b/sysdeps/unix/sysv/linux/arm/le/libm.abilist
@@ -920,6 +920,12 @@ GLIBC_2.41 tanpif32 F
GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf32 F
@@ -932,6 +938,12 @@ GLIBC_2.42 powrf32 F
GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf32 F
diff --git a/sysdeps/unix/sysv/linux/bits/fcntl-linux.h b/sysdeps/unix/sysv/linux/bits/fcntl-linux.h
index dfc554a..f425a4b 100644
--- a/sysdeps/unix/sysv/linux/bits/fcntl-linux.h
+++ b/sysdeps/unix/sysv/linux/bits/fcntl-linux.h
@@ -379,6 +379,8 @@ struct file_handle
identity and may not
be usable to
open_by_handle_at. */
+# define AT_HANDLE_MNT_ID_UNIQUE 1 /* Return the 64-bit unique mount
+ ID. */
#endif
__BEGIN_DECLS
diff --git a/sysdeps/unix/sysv/linux/bits/ioctl-types.h b/sysdeps/unix/sysv/linux/bits/ioctl-types.h
index cc2c9d7..e8e5084 100644
--- a/sysdeps/unix/sysv/linux/bits/ioctl-types.h
+++ b/sysdeps/unix/sysv/linux/bits/ioctl-types.h
@@ -32,17 +32,6 @@ struct winsize
unsigned short int ws_ypixel;
};
-#define NCC 8
-struct termio
- {
- unsigned short int c_iflag; /* input mode flags */
- unsigned short int c_oflag; /* output mode flags */
- unsigned short int c_cflag; /* control mode flags */
- unsigned short int c_lflag; /* local mode flags */
- unsigned char c_line; /* line discipline */
- unsigned char c_cc[NCC]; /* control characters */
-};
-
/* modem lines */
#define TIOCM_LE 0x001
#define TIOCM_DTR 0x002
diff --git a/sysdeps/unix/sysv/linux/bits/ioctls.h b/sysdeps/unix/sysv/linux/bits/ioctls.h
index 7e226e4..1ddcd4f 100644
--- a/sysdeps/unix/sysv/linux/bits/ioctls.h
+++ b/sysdeps/unix/sysv/linux/bits/ioctls.h
@@ -22,87 +22,4 @@
/* Use the definitions from the kernel header files. */
#include <asm/ioctls.h>
-/* Routing table calls. */
-#define SIOCADDRT 0x890B /* add routing table entry */
-#define SIOCDELRT 0x890C /* delete routing table entry */
-#define SIOCRTMSG 0x890D /* call to routing system */
-
-/* Socket configuration controls. */
-#define SIOCGIFNAME 0x8910 /* get iface name */
-#define SIOCSIFLINK 0x8911 /* set iface channel */
-#define SIOCGIFCONF 0x8912 /* get iface list */
-#define SIOCGIFFLAGS 0x8913 /* get flags */
-#define SIOCSIFFLAGS 0x8914 /* set flags */
-#define SIOCGIFADDR 0x8915 /* get PA address */
-#define SIOCSIFADDR 0x8916 /* set PA address */
-#define SIOCGIFDSTADDR 0x8917 /* get remote PA address */
-#define SIOCSIFDSTADDR 0x8918 /* set remote PA address */
-#define SIOCGIFBRDADDR 0x8919 /* get broadcast PA address */
-#define SIOCSIFBRDADDR 0x891a /* set broadcast PA address */
-#define SIOCGIFNETMASK 0x891b /* get network PA mask */
-#define SIOCSIFNETMASK 0x891c /* set network PA mask */
-#define SIOCGIFMETRIC 0x891d /* get metric */
-#define SIOCSIFMETRIC 0x891e /* set metric */
-#define SIOCGIFMEM 0x891f /* get memory address (BSD) */
-#define SIOCSIFMEM 0x8920 /* set memory address (BSD) */
-#define SIOCGIFMTU 0x8921 /* get MTU size */
-#define SIOCSIFMTU 0x8922 /* set MTU size */
-#define SIOCSIFNAME 0x8923 /* set interface name */
-#define SIOCSIFHWADDR 0x8924 /* set hardware address */
-#define SIOCGIFENCAP 0x8925 /* get/set encapsulations */
-#define SIOCSIFENCAP 0x8926
-#define SIOCGIFHWADDR 0x8927 /* Get hardware address */
-#define SIOCGIFSLAVE 0x8929 /* Driver slaving support */
-#define SIOCSIFSLAVE 0x8930
-#define SIOCADDMULTI 0x8931 /* Multicast address lists */
-#define SIOCDELMULTI 0x8932
-#define SIOCGIFINDEX 0x8933 /* name -> if_index mapping */
-#define SIOGIFINDEX SIOCGIFINDEX /* misprint compatibility :-) */
-#define SIOCSIFPFLAGS 0x8934 /* set/get extended flags set */
-#define SIOCGIFPFLAGS 0x8935
-#define SIOCDIFADDR 0x8936 /* delete PA address */
-#define SIOCSIFHWBROADCAST 0x8937 /* set hardware broadcast addr */
-#define SIOCGIFCOUNT 0x8938 /* get number of devices */
-
-#define SIOCGIFBR 0x8940 /* Bridging support */
-#define SIOCSIFBR 0x8941 /* Set bridging options */
-
-#define SIOCGIFTXQLEN 0x8942 /* Get the tx queue length */
-#define SIOCSIFTXQLEN 0x8943 /* Set the tx queue length */
-
-
-/* ARP cache control calls. */
- /* 0x8950 - 0x8952 * obsolete calls, don't re-use */
-#define SIOCDARP 0x8953 /* delete ARP table entry */
-#define SIOCGARP 0x8954 /* get ARP table entry */
-#define SIOCSARP 0x8955 /* set ARP table entry */
-
-/* RARP cache control calls. */
-#define SIOCDRARP 0x8960 /* delete RARP table entry */
-#define SIOCGRARP 0x8961 /* get RARP table entry */
-#define SIOCSRARP 0x8962 /* set RARP table entry */
-
-/* Driver configuration calls */
-
-#define SIOCGIFMAP 0x8970 /* Get device parameters */
-#define SIOCSIFMAP 0x8971 /* Set device parameters */
-
-/* DLCI configuration calls */
-
-#define SIOCADDDLCI 0x8980 /* Create new DLCI device */
-#define SIOCDELDLCI 0x8981 /* Delete DLCI device */
-
-/* Device private ioctl calls. */
-
-/* These 16 ioctls are available to devices via the do_ioctl() device
- vector. Each device should include this file and redefine these
- names as their own. Because these are device dependent it is a good
- idea _NOT_ to issue them to random objects and hope. */
-
-#define SIOCDEVPRIVATE 0x89F0 /* to 89FF */
-
-/*
- * These 16 ioctl calls are protocol private
- */
-
-#define SIOCPROTOPRIVATE 0x89E0 /* to 89EF */
+#include <linux/sockios.h>
diff --git a/sysdeps/unix/sysv/linux/bits/mman-shared.h b/sysdeps/unix/sysv/linux/bits/mman-shared.h
index 3159097..0be4b47 100644
--- a/sysdeps/unix/sysv/linux/bits/mman-shared.h
+++ b/sysdeps/unix/sysv/linux/bits/mman-shared.h
@@ -43,10 +43,9 @@
# endif
/* Access restrictions for pkey_alloc. */
-# ifndef PKEY_DISABLE_ACCESS
-# define PKEY_DISABLE_ACCESS 0x1
-# define PKEY_DISABLE_WRITE 0x2
-# endif
+# define PKEY_UNRESTRICTED 0x0
+# define PKEY_DISABLE_ACCESS 0x1
+# define PKEY_DISABLE_WRITE 0x2
__BEGIN_DECLS
diff --git a/sysdeps/unix/sysv/linux/bits/termios-c_cflag.h b/sysdeps/unix/sysv/linux/bits/termios-c_cflag.h
index bbbb621..befd25a 100644
--- a/sysdeps/unix/sysv/linux/bits/termios-c_cflag.h
+++ b/sysdeps/unix/sysv/linux/bits/termios-c_cflag.h
@@ -34,5 +34,7 @@
#define CLOCAL 0004000
#ifdef __USE_MISC
-# define ADDRB 04000000000
+# define ADDRB 04000000000
+# define CMSPAR 010000000000 /* Mark or space (stick) parity. */
+# define CRTSCTS 020000000000 /* Flow control. */
#endif
diff --git a/sysdeps/unix/sysv/linux/bits/termios-baud.h b/sysdeps/unix/sysv/linux/bits/termios-cbaud.h
index e63a3eb..b9aadff 100644
--- a/sysdeps/unix/sysv/linux/bits/termios-baud.h
+++ b/sysdeps/unix/sysv/linux/bits/termios-cbaud.h
@@ -17,32 +17,31 @@
<https://www.gnu.org/licenses/>. */
#ifndef _TERMIOS_H
-# error "Never include <bits/termios-baud.h> directly; use <termios.h> instead."
+# error "Never include <bits/termios-cbaud.h> directly; use <termios.h> instead."
#endif
#ifdef __USE_MISC
# define CBAUD 000000010017 /* Baud speed mask (not in POSIX). */
# define CBAUDEX 000000010000 /* Extra baud speed mask, included in CBAUD.
(not in POSIX). */
-# define CIBAUD 002003600000 /* Input baud rate (not used). */
-# define CMSPAR 010000000000 /* Mark or space (stick) parity. */
-# define CRTSCTS 020000000000 /* Flow control. */
+# define CIBAUD 002003600000 /* Input baud rate. */
+# define IBSHIFT 16
#endif
/* Extra output baud rates (not in POSIX). */
-#define B57600 0010001
-#define B115200 0010002
-#define B230400 0010003
-#define B460800 0010004
-#define B500000 0010005
-#define B576000 0010006
-#define B921600 0010007
-#define B1000000 0010010
-#define B1152000 0010011
-#define B1500000 0010012
-#define B2000000 0010013
-#define B2500000 0010014
-#define B3000000 0010015
-#define B3500000 0010016
-#define B4000000 0010017
-#define __MAX_BAUD B4000000
+#define __BOTHER 0010000
+#define __B57600 0010001
+#define __B115200 0010002
+#define __B230400 0010003
+#define __B460800 0010004
+#define __B500000 0010005
+#define __B576000 0010006
+#define __B921600 0010007
+#define __B1000000 0010010
+#define __B1152000 0010011
+#define __B1500000 0010012
+#define __B2000000 0010013
+#define __B2500000 0010014
+#define __B3000000 0010015
+#define __B3500000 0010016
+#define __B4000000 0010017
diff --git a/sysdeps/unix/sysv/linux/bits/termios-struct.h b/sysdeps/unix/sysv/linux/bits/termios-struct.h
index 4c501a5..0aba1a4 100644
--- a/sysdeps/unix/sysv/linux/bits/termios-struct.h
+++ b/sysdeps/unix/sysv/linux/bits/termios-struct.h
@@ -29,8 +29,15 @@ struct termios
tcflag_t c_lflag; /* local mode flags */
cc_t c_line; /* line discipline */
cc_t c_cc[NCCS]; /* control characters */
- speed_t c_ispeed; /* input speed */
- speed_t c_ospeed; /* output speed */
+ /* Input and output baud rates. */
+ __extension__ union {
+ speed_t __ispeed;
+ speed_t c_ispeed;
+ };
#define _HAVE_STRUCT_TERMIOS_C_ISPEED 1
+ __extension__ union {
+ speed_t __ospeed;
+ speed_t c_ospeed;
+ };
#define _HAVE_STRUCT_TERMIOS_C_OSPEED 1
};
diff --git a/sysdeps/unix/sysv/linux/bits/termios.h b/sysdeps/unix/sysv/linux/bits/termios.h
index 3bd1e22..20746a0 100644
--- a/sysdeps/unix/sysv/linux/bits/termios.h
+++ b/sysdeps/unix/sysv/linux/bits/termios.h
@@ -24,35 +24,41 @@ typedef unsigned char cc_t;
typedef unsigned int speed_t;
typedef unsigned int tcflag_t;
-#include <bits/termios-struct.h>
+#ifdef _TERMIOS_H
+# include <bits/termios-struct.h>
+#endif
+
#include <bits/termios-c_cc.h>
#include <bits/termios-c_iflag.h>
#include <bits/termios-c_oflag.h>
/* c_cflag bit meaning */
-#define B0 0000000 /* hang up */
-#define B50 0000001
-#define B75 0000002
-#define B110 0000003
-#define B134 0000004
-#define B150 0000005
-#define B200 0000006
-#define B300 0000007
-#define B600 0000010
-#define B1200 0000011
-#define B1800 0000012
-#define B2400 0000013
-#define B4800 0000014
-#define B9600 0000015
-#define B19200 0000016
-#define B38400 0000017
+#include <bits/termios-c_cflag.h>
+
#ifdef __USE_MISC
-# define EXTA B19200
-# define EXTB B38400
+#define __B0 0000000 /* hang up */
+#define __B50 0000001
+#define __B75 0000002
+#define __B110 0000003
+#define __B134 0000004
+#define __B150 0000005
+#define __B200 0000006
+#define __B300 0000007
+#define __B600 0000010
+#define __B1200 0000011
+#define __B1800 0000012
+#define __B2400 0000013
+#define __B4800 0000014
+#define __B9600 0000015
+#define __B19200 0000016
+#define __B38400 0000017
+#include <bits/termios-cbaud.h>
+
+# define __EXTA __B19200
+# define __EXTB __B38400
+# define BOTHER __BOTHER
#endif
-#include <bits/termios-baud.h>
-#include <bits/termios-c_cflag.h>
#include <bits/termios-c_lflag.h>
#ifdef __USE_MISC
@@ -74,3 +80,5 @@ typedef unsigned int tcflag_t;
#include <bits/termios-tcflow.h>
#include <bits/termios-misc.h>
+
+#include <bits/termios-baud.h>
diff --git a/sysdeps/unix/sysv/linux/cfsetspeed.c b/sysdeps/unix/sysv/linux/cfsetspeed.c
new file mode 100644
index 0000000..8ce46f8
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/cfsetspeed.c
@@ -0,0 +1,59 @@
+/* cfsetspeed(), Linux version.
+ Copyright (C) 1991-2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <termios_internals.h>
+
+/* Set both the input and output baud rates stored in *TERMIOS_P to SPEED. */
+int
+__cfsetspeed (struct termios *termios_p, speed_t speed)
+{
+ tcflag_t cbaud = ___speed_to_cbaud (speed);
+
+ termios_p->c_ospeed = speed;
+ termios_p->c_ispeed = speed;
+ termios_p->c_cflag &= ~(CBAUD | CIBAUD);
+ termios_p->c_cflag |= cbaud | (cbaud << IBSHIFT);
+
+ return 0;
+}
+libc_hidden_def (__cfsetspeed)
+versioned_symbol (libc, __cfsetspeed, cfsetspeed, GLIBC_2_42);
+
+#if _TERMIOS_OLD_COMPAT
+
+int
+attribute_compat_text_section
+__old_cfsetspeed (old_termios_t *termios_p, speed_t speed)
+{
+ speed_t real_speed = ___cbaud_to_speed (speed, -1);
+ if (real_speed == (speed_t)-1)
+ return INLINE_SYSCALL_ERROR_RETURN_VALUE (EINVAL);
+
+#if !_HAVE_STRUCT_OLD_TERMIOS
+ /* Otherwise these fields don't exist in old_termios_t */
+ termios_p->c_ospeed = real_speed;
+ termios_p->c_ispeed = real_speed;
+#endif
+ termios_p->c_cflag &= ~(CBAUD | CIBAUD);
+ termios_p->c_cflag |= speed | (speed << IBSHIFT);
+
+ return 0;
+}
+compat_symbol (libc, __old_cfsetspeed, cfsetspeed, GLIBC_2_0);
+
+#endif /* _TERMIOS_OLD_COMPAT */
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strncase_l-power7.c b/sysdeps/unix/sysv/linux/close_nocancel_nostatus.c
index d425680..b1df5ed 100644
--- a/sysdeps/powerpc/powerpc32/power4/multiarch/strncase_l-power7.c
+++ b/sysdeps/unix/sysv/linux/close_nocancel_nostatus.c
@@ -1,5 +1,5 @@
-/* Optimized strcasecmp_l implementation for POWER7.
- Copyright (C) 2013-2025 Free Software Foundation, Inc.
+/* Linux close syscall implementation -- non-cancellable, no errno update.
+ Copyright (C) 2025 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -16,11 +16,13 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
-#include <string.h>
+#include <unistd.h>
+#include <sysdep-cancel.h>
+#include <not-cancel.h>
-#define __strncasecmp_l __strncasecmp_l_power7
-#define USE_IN_EXTENDED_LOCALE_MODEL 1
-
-extern __typeof (strncasecmp_l) __strncasecmp_l_power7 attribute_hidden;
-
-#include <string/strncase.c>
+void
+__close_nocancel_nostatus (int fd)
+{
+ INTERNAL_SYSCALL_CALL (close, fd);
+}
+libc_hidden_def (__close_nocancel_nostatus)
diff --git a/sysdeps/unix/sysv/linux/csky/arch-syscall.h b/sysdeps/unix/sysv/linux/csky/arch-syscall.h
index a719a55..73fdba1 100644
--- a/sysdeps/unix/sysv/linux/csky/arch-syscall.h
+++ b/sysdeps/unix/sysv/linux/csky/arch-syscall.h
@@ -184,6 +184,7 @@
#define __NR_nfsservctl 42
#define __NR_open_by_handle_at 265
#define __NR_open_tree 428
+#define __NR_open_tree_attr 467
#define __NR_openat 56
#define __NR_openat2 437
#define __NR_perf_event_open 241
diff --git a/sysdeps/unix/sysv/linux/csky/libc.abilist b/sysdeps/unix/sysv/linux/csky/libc.abilist
index 490694d..6325fc1 100644
--- a/sysdeps/unix/sysv/linux/csky/libc.abilist
+++ b/sysdeps/unix/sysv/linux/csky/libc.abilist
@@ -2789,4 +2789,18 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
diff --git a/sysdeps/unix/sysv/linux/csky/libm.abilist b/sysdeps/unix/sysv/linux/csky/libm.abilist
index 8ae4be4..4ed463c 100644
--- a/sysdeps/unix/sysv/linux/csky/libm.abilist
+++ b/sysdeps/unix/sysv/linux/csky/libm.abilist
@@ -895,6 +895,12 @@ GLIBC_2.41 tanpif32 F
GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf32 F
@@ -907,6 +913,12 @@ GLIBC_2.42 powrf32 F
GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf32 F
diff --git a/sysdeps/unix/sysv/linux/dl-execstack.c b/sysdeps/unix/sysv/linux/dl-execstack.c
index 9791b33..6db9601 100644
--- a/sysdeps/unix/sysv/linux/dl-execstack.c
+++ b/sysdeps/unix/sysv/linux/dl-execstack.c
@@ -19,10 +19,10 @@
#include <ldsodefs.h>
int
-_dl_make_stack_executable (void **stack_endp)
+_dl_make_stack_executable (const void *stack_endp)
{
/* This gives us the highest/lowest page that needs to be changed. */
- uintptr_t page = ((uintptr_t) *stack_endp
+ uintptr_t page = ((uintptr_t) stack_endp
& -(intptr_t) GLRO(dl_pagesize));
if (__mprotect ((void *) page, GLRO(dl_pagesize),
@@ -35,9 +35,6 @@ _dl_make_stack_executable (void **stack_endp)
) != 0)
return errno;
- /* Clear the address. */
- *stack_endp = NULL;
-
/* Remember that we changed the permission. */
GL(dl_stack_flags) |= PF_X;
diff --git a/sysdeps/unix/sysv/linux/hppa/arch-syscall.h b/sysdeps/unix/sysv/linux/hppa/arch-syscall.h
index dc592c5..d8ffab9 100644
--- a/sysdeps/unix/sysv/linux/hppa/arch-syscall.h
+++ b/sysdeps/unix/sysv/linux/hppa/arch-syscall.h
@@ -214,6 +214,7 @@
#define __NR_open 5
#define __NR_open_by_handle_at 326
#define __NR_open_tree 428
+#define __NR_open_tree_attr 467
#define __NR_openat 275
#define __NR_openat2 437
#define __NR_pause 29
diff --git a/sysdeps/unix/sysv/linux/hppa/libc.abilist b/sysdeps/unix/sysv/linux/hppa/libc.abilist
index b1905da..86b3fbd 100644
--- a/sysdeps/unix/sysv/linux/hppa/libc.abilist
+++ b/sysdeps/unix/sysv/linux/hppa/libc.abilist
@@ -2826,7 +2826,21 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
GLIBC_2.5 __readlinkat_chk F
GLIBC_2.5 inet6_opt_append F
GLIBC_2.5 inet6_opt_find F
diff --git a/sysdeps/unix/sysv/linux/hppa/libm.abilist b/sysdeps/unix/sysv/linux/hppa/libm.abilist
index 5797cf4..d681d6e 100644
--- a/sysdeps/unix/sysv/linux/hppa/libm.abilist
+++ b/sysdeps/unix/sysv/linux/hppa/libm.abilist
@@ -920,6 +920,12 @@ GLIBC_2.41 tanpif32 F
GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf32 F
@@ -932,6 +938,12 @@ GLIBC_2.42 powrf32 F
GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf32 F
diff --git a/sysdeps/unix/sysv/linux/i386/arch-syscall.h b/sysdeps/unix/sysv/linux/i386/arch-syscall.h
index c10897f..196dfec 100644
--- a/sysdeps/unix/sysv/linux/i386/arch-syscall.h
+++ b/sysdeps/unix/sysv/linux/i386/arch-syscall.h
@@ -245,6 +245,7 @@
#define __NR_open 5
#define __NR_open_by_handle_at 342
#define __NR_open_tree 428
+#define __NR_open_tree_attr 467
#define __NR_openat 295
#define __NR_openat2 437
#define __NR_pause 29
diff --git a/sysdeps/unix/sysv/linux/i386/libc.abilist b/sysdeps/unix/sysv/linux/i386/libc.abilist
index 424ef34..6555592 100644
--- a/sysdeps/unix/sysv/linux/i386/libc.abilist
+++ b/sysdeps/unix/sysv/linux/i386/libc.abilist
@@ -3009,7 +3009,21 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
GLIBC_2.5 __readlinkat_chk F
GLIBC_2.5 inet6_opt_append F
GLIBC_2.5 inet6_opt_find F
diff --git a/sysdeps/unix/sysv/linux/i386/libm.abilist b/sysdeps/unix/sysv/linux/i386/libm.abilist
index aa00f7e..de77b0f 100644
--- a/sysdeps/unix/sysv/linux/i386/libm.abilist
+++ b/sysdeps/unix/sysv/linux/i386/libm.abilist
@@ -1284,6 +1284,14 @@ GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpif64x F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf128 F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnf64x F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf128 F
@@ -1300,6 +1308,14 @@ GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrf64x F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf128 F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnf64x F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf128 F
diff --git a/sysdeps/unix/sysv/linux/if_index.c b/sysdeps/unix/sysv/linux/if_index.c
index 0b01fd1..5d13759 100644
--- a/sysdeps/unix/sysv/linux/if_index.c
+++ b/sysdeps/unix/sysv/linux/if_index.c
@@ -32,35 +32,23 @@
unsigned int
__if_nametoindex (const char *ifname)
{
-#ifndef SIOCGIFINDEX
- __set_errno (ENOSYS);
- return 0;
-#else
- struct ifreq ifr;
if (strlen (ifname) >= IFNAMSIZ)
{
__set_errno (ENODEV);
return 0;
}
- strncpy (ifr.ifr_name, ifname, sizeof (ifr.ifr_name));
-
int fd = __opensock ();
-
if (fd < 0)
return 0;
- if (__ioctl (fd, SIOCGIFINDEX, &ifr) < 0)
- {
- int saved_errno = errno;
- __close_nocancel_nostatus (fd);
- if (saved_errno == EINVAL)
- __set_errno (ENOSYS);
- return 0;
- }
+ struct ifreq ifr;
+ strncpy (ifr.ifr_name, ifname, sizeof (ifr.ifr_name));
+
+ int status = __ioctl (fd, SIOCGIFINDEX, &ifr);
__close_nocancel_nostatus (fd);
- return ifr.ifr_ifindex;
-#endif
+
+ return status < 0 ? 0 : ifr.ifr_ifindex;
}
libc_hidden_def (__if_nametoindex)
weak_alias (__if_nametoindex, if_nametoindex)
@@ -83,8 +71,8 @@ weak_alias (__if_freenameindex, if_freenameindex)
libc_hidden_weak (if_freenameindex)
-static struct if_nameindex *
-if_nameindex_netlink (void)
+struct if_nameindex *
+__if_nameindex (void)
{
struct netlink_handle nh = { 0, 0, 0, NULL, NULL };
struct if_nameindex *idx = NULL;
@@ -196,19 +184,6 @@ if_nameindex_netlink (void)
return idx;
}
-
-
-struct if_nameindex *
-__if_nameindex (void)
-{
-#ifndef SIOCGIFINDEX
- __set_errno (ENOSYS);
- return NULL;
-#else
- struct if_nameindex *result = if_nameindex_netlink ();
- return result;
-#endif
-}
weak_alias (__if_nameindex, if_nameindex)
libc_hidden_weak (if_nameindex)
diff --git a/sysdeps/powerpc/powerpc64/multiarch/memchr-power10.S b/sysdeps/unix/sysv/linux/isatty.c
index c9d2f4e..3faaec5 100644
--- a/sysdeps/powerpc/powerpc64/multiarch/memchr-power10.S
+++ b/sysdeps/unix/sysv/linux/isatty.c
@@ -1,5 +1,5 @@
-/* Optimized memchr implementation for POWER10/PPC64.
- Copyright (C) 2016-2025 Free Software Foundation, Inc.
+/* Test whether a file descriptor refers to a terminal. Linux version.
+ Copyright (C) 1991-2025 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -16,13 +16,14 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
-#if defined __LITTLE_ENDIAN__ && IS_IN (libc)
-#define MEMCHR __memchr_power10
+#include <termios_internals.h>
-#undef libc_hidden_builtin_def
-#define libc_hidden_builtin_def(name)
-#undef weak_alias
-#define weak_alias(name,alias)
-
-#include <sysdeps/powerpc/powerpc64/le/power10/memchr.S>
-#endif
+/* Return 1 if FD is a terminal, 0 if not. This simply does a
+ TCGETS2 ioctl into a dummy buffer without parsing the result. */
+int
+__isatty (int fd)
+{
+ struct termios2 k_termios;
+ return INLINE_SYSCALL_CALL (ioctl, fd, TCGETS2, &k_termios) == 0;
+}
+weak_alias (__isatty, isatty)
diff --git a/sysdeps/unix/sysv/linux/isatty_nostatus.c b/sysdeps/unix/sysv/linux/isatty_nostatus.c
new file mode 100644
index 0000000..406decb
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/isatty_nostatus.c
@@ -0,0 +1,26 @@
+/* Copyright (C) 1991-2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <termios_internals.h>
+
+/* Return 1 if FD is a terminal, 0 if not, without changing errno */
+int
+__isatty_nostatus (int fd)
+{
+ struct termios2 k_termios;
+ return INTERNAL_SYSCALL_CALL (ioctl, fd, TCGETS2, &k_termios) == 0;
+}
diff --git a/sysdeps/unix/sysv/linux/kernel-features.h b/sysdeps/unix/sysv/linux/kernel-features.h
index 86b2d3c..a49a915 100644
--- a/sysdeps/unix/sysv/linux/kernel-features.h
+++ b/sysdeps/unix/sysv/linux/kernel-features.h
@@ -54,6 +54,10 @@
configurations). */
#define __ASSUME_SET_ROBUST_LIST 1
+/* The termios2 interface was introduced across all architectures except
+ Alpha in kernel 2.6.22. */
+#define __ASSUME_TERMIOS2 1
+
/* Support for various CLOEXEC and NONBLOCK flags was added in
2.6.27. */
#define __ASSUME_IN_NONBLOCK 1
diff --git a/sysdeps/unix/sysv/linux/libc_sigaction.c b/sysdeps/unix/sysv/linux/libc_sigaction.c
index bbfc177..67dbc04 100644
--- a/sysdeps/unix/sysv/linux/libc_sigaction.c
+++ b/sysdeps/unix/sysv/linux/libc_sigaction.c
@@ -49,7 +49,7 @@ __libc_sigaction (int sig, const struct sigaction *act, struct sigaction *oact)
{
kact.k_sa_handler = act->sa_handler;
memcpy (&kact.sa_mask, &act->sa_mask, sizeof (sigset_t));
- kact.sa_flags = act->sa_flags;
+ kact.sa_flags = (unsigned int) act->sa_flags;
SET_SA_RESTORER (&kact, act);
}
diff --git a/sysdeps/unix/sysv/linux/loongarch/arch-syscall.h b/sysdeps/unix/sysv/linux/loongarch/arch-syscall.h
index f123d84..f57a152 100644
--- a/sysdeps/unix/sysv/linux/loongarch/arch-syscall.h
+++ b/sysdeps/unix/sysv/linux/loongarch/arch-syscall.h
@@ -171,6 +171,7 @@
#define __NR_nfsservctl 42
#define __NR_open_by_handle_at 265
#define __NR_open_tree 428
+#define __NR_open_tree_attr 467
#define __NR_openat 56
#define __NR_openat2 437
#define __NR_perf_event_open 241
diff --git a/sysdeps/unix/sysv/linux/loongarch/lp64/libc.abilist b/sysdeps/unix/sysv/linux/loongarch/lp64/libc.abilist
index 420471e..a6cab96 100644
--- a/sysdeps/unix/sysv/linux/loongarch/lp64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/loongarch/lp64/libc.abilist
@@ -2273,4 +2273,18 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
diff --git a/sysdeps/unix/sysv/linux/loongarch/lp64/libm.abilist b/sysdeps/unix/sysv/linux/loongarch/lp64/libm.abilist
index 601ad1b..4b3ea80 100644
--- a/sysdeps/unix/sysv/linux/loongarch/lp64/libm.abilist
+++ b/sysdeps/unix/sysv/linux/loongarch/lp64/libm.abilist
@@ -1124,6 +1124,14 @@ GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpif64x F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf128 F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnf64x F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf128 F
@@ -1140,6 +1148,14 @@ GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrf64x F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf128 F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnf64x F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf128 F
diff --git a/sysdeps/unix/sysv/linux/m68k/arch-syscall.h b/sysdeps/unix/sysv/linux/m68k/arch-syscall.h
index 715809a..a95cb41 100644
--- a/sysdeps/unix/sysv/linux/m68k/arch-syscall.h
+++ b/sysdeps/unix/sysv/linux/m68k/arch-syscall.h
@@ -234,6 +234,7 @@
#define __NR_open 5
#define __NR_open_by_handle_at 341
#define __NR_open_tree 428
+#define __NR_open_tree_attr 467
#define __NR_openat 288
#define __NR_openat2 437
#define __NR_pause 29
diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
index 95a68c7..7b7b72a 100644
--- a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
@@ -2785,7 +2785,21 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
GLIBC_2.5 __readlinkat_chk F
GLIBC_2.5 inet6_opt_append F
GLIBC_2.5 inet6_opt_find F
diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist
index efa90f9..63bad09 100644
--- a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist
@@ -920,6 +920,12 @@ GLIBC_2.41 tanpif32 F
GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf32 F
@@ -932,6 +938,12 @@ GLIBC_2.42 powrf32 F
GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf32 F
diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
index 442e82b..df398e4 100644
--- a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
@@ -2952,7 +2952,21 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
GLIBC_2.5 __readlinkat_chk F
GLIBC_2.5 inet6_opt_append F
GLIBC_2.5 inet6_opt_find F
diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist
index 040303a..9dba60b 100644
--- a/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist
@@ -956,6 +956,12 @@ GLIBC_2.41 tanpif32 F
GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf32 F
@@ -968,6 +974,12 @@ GLIBC_2.42 powrf32 F
GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf32 F
diff --git a/sysdeps/unix/sysv/linux/microblaze/arch-syscall.h b/sysdeps/unix/sysv/linux/microblaze/arch-syscall.h
index 24e218f..fe08f5c 100644
--- a/sysdeps/unix/sysv/linux/microblaze/arch-syscall.h
+++ b/sysdeps/unix/sysv/linux/microblaze/arch-syscall.h
@@ -244,6 +244,7 @@
#define __NR_open 5
#define __NR_open_by_handle_at 372
#define __NR_open_tree 428
+#define __NR_open_tree_attr 467
#define __NR_openat 295
#define __NR_openat2 437
#define __NR_pause 29
diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
index 20f7712..ca8df6f 100644
--- a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
@@ -2838,4 +2838,18 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist
index ad55190..5596e08 100644
--- a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist
@@ -920,6 +920,12 @@ GLIBC_2.41 tanpif32 F
GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf32 F
@@ -932,6 +938,12 @@ GLIBC_2.42 powrf32 F
GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf32 F
diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
index f61ed3b..9508154 100644
--- a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
@@ -2835,4 +2835,18 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist
index ad55190..5596e08 100644
--- a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist
@@ -920,6 +920,12 @@ GLIBC_2.41 tanpif32 F
GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf32 F
@@ -932,6 +938,12 @@ GLIBC_2.42 powrf32 F
GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf32 F
diff --git a/sysdeps/unix/sysv/linux/mips/Versions b/sysdeps/unix/sysv/linux/mips/Versions
index 9ea0fa6..48f0037 100644
--- a/sysdeps/unix/sysv/linux/mips/Versions
+++ b/sysdeps/unix/sysv/linux/mips/Versions
@@ -26,6 +26,10 @@ libc {
pthread_attr_setstack;
pthread_attr_setstacksize;
}
+ GLIBC_2.42 {
+ tcgetattr;
+ tcsetattr;
+ }
GLIBC_PRIVATE {
# nptl/pthread_cond_timedwait.c uses INTERNAL_VSYSCALL(clock_gettime).
__vdso_clock_gettime;
diff --git a/sysdeps/unix/sysv/linux/mips/bits/ioctl-types.h b/sysdeps/unix/sysv/linux/mips/bits/ioctl-types.h
index 03ebf1e..84bb6fc 100644
--- a/sysdeps/unix/sysv/linux/mips/bits/ioctl-types.h
+++ b/sysdeps/unix/sysv/linux/mips/bits/ioctl-types.h
@@ -31,18 +31,6 @@ struct winsize
unsigned short int ws_ypixel;
};
-#define NCC 8
-struct termio
- {
- unsigned short int c_iflag; /* input mode flags */
- unsigned short int c_oflag; /* output mode flags */
- unsigned short int c_cflag; /* control mode flags */
- unsigned short int c_lflag; /* local mode flags */
- char c_line; /* line discipline */
- /* Yes, this is really NCCS. */
- unsigned char c_cc[32 /* NCCS */]; /* control characters */
- };
-
/* modem lines */
#define TIOCM_LE 0x001 /* line enable */
#define TIOCM_DTR 0x002 /* data terminal ready */
diff --git a/sysdeps/unix/sysv/linux/mips/bits/termios-struct.h b/sysdeps/unix/sysv/linux/mips/bits/termios-struct.h
deleted file mode 100644
index ef69821..0000000
--- a/sysdeps/unix/sysv/linux/mips/bits/termios-struct.h
+++ /dev/null
@@ -1,34 +0,0 @@
-/* struct termios definition. Linux/mips version.
- Copyright (C) 2019-2025 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library. If not, see
- <https://www.gnu.org/licenses/>. */
-
-#ifndef _TERMIOS_H
-# error "Never include <bits/termios-struct.h> directly; use <termios.h> instead."
-#endif
-
-#define NCCS 32
-struct termios
- {
- tcflag_t c_iflag; /* input mode flags */
- tcflag_t c_oflag; /* output mode flags */
- tcflag_t c_cflag; /* control mode flags */
- tcflag_t c_lflag; /* local mode flags */
- cc_t c_line; /* line discipline */
- cc_t c_cc[NCCS]; /* control characters */
-#define _HAVE_STRUCT_TERMIOS_C_ISPEED 0
-#define _HAVE_STRUCT_TERMIOS_C_OSPEED 0
- };
diff --git a/sysdeps/unix/sysv/linux/mips/kernel_termios.h b/sysdeps/unix/sysv/linux/mips/kernel_termios.h
deleted file mode 100644
index fd8d35a..0000000
--- a/sysdeps/unix/sysv/linux/mips/kernel_termios.h
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Copyright (C) 1997-2025 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library. If not, see
- <https://www.gnu.org/licenses/>. */
-
-#ifndef _KERNEL_TERMIOS_H
-#define _KERNEL_TERMIOS_H 1
-/* The following corresponds to the values from the Linux 2.1.24 kernel. */
-
-#define __KERNEL_NCCS 23
-
-struct __kernel_termios
- {
- tcflag_t c_iflag; /* input mode flags */
- tcflag_t c_oflag; /* output mode flags */
- tcflag_t c_cflag; /* control mode flags */
- tcflag_t c_lflag; /* local mode flags */
- cc_t c_line; /* line discipline */
- cc_t c_cc[__KERNEL_NCCS]; /* control characters */
- };
-
-#define _HAVE_C_ISPEED 0
-#define _HAVE_C_OSPEED 0
-
-#endif /* kernel_termios.h */
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/arch-syscall.h b/sysdeps/unix/sysv/linux/mips/mips32/arch-syscall.h
index a7615cb..7d76d65 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/arch-syscall.h
+++ b/sysdeps/unix/sysv/linux/mips/mips32/arch-syscall.h
@@ -229,6 +229,7 @@
#define __NR_open 4005
#define __NR_open_by_handle_at 4340
#define __NR_open_tree 4428
+#define __NR_open_tree_attr 4467
#define __NR_openat 4288
#define __NR_openat2 4437
#define __NR_pause 4029
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
index 381120c..4d51cc4 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
@@ -2913,7 +2913,23 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 tcgetattr F
+GLIBC_2.42 tcsetattr F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
GLIBC_2.5 __readlinkat_chk F
GLIBC_2.5 inet6_opt_append F
GLIBC_2.5 inet6_opt_find F
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist
index afe1c25..cdcc488 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist
@@ -920,6 +920,12 @@ GLIBC_2.41 tanpif32 F
GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf32 F
@@ -932,6 +938,12 @@ GLIBC_2.42 powrf32 F
GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf32 F
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
index 2f51146..7f90fad 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
@@ -2911,7 +2911,23 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 tcgetattr F
+GLIBC_2.42 tcsetattr F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
GLIBC_2.5 __readlinkat_chk F
GLIBC_2.5 inet6_opt_append F
GLIBC_2.5 inet6_opt_find F
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist
index 1e1085d..888164b 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist
@@ -1245,6 +1245,14 @@ GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpif64x F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf128 F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnf64x F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf128 F
@@ -1261,6 +1269,14 @@ GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrf64x F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf128 F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnf64x F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf128 F
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n32/arch-syscall.h b/sysdeps/unix/sysv/linux/mips/mips64/n32/arch-syscall.h
index 4d863c2..bca3ea6 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/n32/arch-syscall.h
+++ b/sysdeps/unix/sysv/linux/mips/mips64/n32/arch-syscall.h
@@ -212,6 +212,7 @@
#define __NR_open 6002
#define __NR_open_by_handle_at 6304
#define __NR_open_tree 6428
+#define __NR_open_tree_attr 6467
#define __NR_openat 6251
#define __NR_openat2 6437
#define __NR_pause 6033
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
index e6071be..fc366d1 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
@@ -2919,7 +2919,23 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 tcgetattr F
+GLIBC_2.42 tcsetattr F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
GLIBC_2.5 __readlinkat_chk F
GLIBC_2.5 inet6_opt_append F
GLIBC_2.5 inet6_opt_find F
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n64/arch-syscall.h b/sysdeps/unix/sysv/linux/mips/mips64/n64/arch-syscall.h
index 9b6683e..5bcd929 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/n64/arch-syscall.h
+++ b/sysdeps/unix/sysv/linux/mips/mips64/n64/arch-syscall.h
@@ -201,6 +201,7 @@
#define __NR_open 5002
#define __NR_open_by_handle_at 5299
#define __NR_open_tree 5428
+#define __NR_open_tree_attr 5467
#define __NR_openat 5247
#define __NR_openat2 5437
#define __NR_pause 5033
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
index f41e209..debd5c3 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
@@ -2821,7 +2821,23 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 tcgetattr F
+GLIBC_2.42 tcsetattr F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
GLIBC_2.5 __readlinkat_chk F
GLIBC_2.5 inet6_opt_append F
GLIBC_2.5 inet6_opt_find F
diff --git a/sysdeps/unix/sysv/linux/mips/termios_arch.h b/sysdeps/unix/sysv/linux/mips/termios_arch.h
new file mode 100644
index 0000000..392d9aa
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/mips/termios_arch.h
@@ -0,0 +1,34 @@
+/* Architectural parameters for Linux termios - MIPS version
+
+ Copyright (C) 1991-2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#define _TERMIOS2_NCCS 23
+#define _HAVE_TERMIOS2_C_CC_BEFORE_C_LINE 0
+
+#define _HAVE_STRUCT_OLD_TERMIOS 1
+
+#define OLD_NCCS 32
+struct old_termios
+{
+ tcflag_t c_iflag; /* input mode flags */
+ tcflag_t c_oflag; /* output mode flags */
+ tcflag_t c_cflag; /* control mode flags */
+ tcflag_t c_lflag; /* local mode flags */
+ cc_t c_line; /* line discipline */
+ cc_t c_cc[OLD_NCCS]; /* control characters */
+};
diff --git a/sysdeps/unix/sysv/linux/not-cancel.h b/sysdeps/unix/sysv/linux/not-cancel.h
index ece3297..5ac6dd4 100644
--- a/sysdeps/unix/sysv/linux/not-cancel.h
+++ b/sysdeps/unix/sysv/linux/not-cancel.h
@@ -53,6 +53,9 @@ __typeof (__write) __write_nocancel;
/* Uncancelable close. */
__typeof (__close) __close_nocancel;
+/* Uncancellable close that does not also set errno in case of failure. */
+void __close_nocancel_nostatus (int);
+
/* Uncancelable fcntl. */
int __fcntl64_nocancel (int, int, ...);
@@ -65,17 +68,10 @@ hidden_proto (__read_nocancel)
hidden_proto (__pread64_nocancel)
hidden_proto (__write_nocancel)
hidden_proto (__close_nocancel)
+hidden_proto (__close_nocancel_nostatus)
hidden_proto (__fcntl64_nocancel)
#endif
-/* Non cancellable close syscall that does not also set errno in case of
- failure. */
-static inline void
-__close_nocancel_nostatus (int fd)
-{
- __close_nocancel (fd);
-}
-
/* Non cancellable writev syscall that does not also set errno in case of
failure. */
static inline void
diff --git a/sysdeps/unix/sysv/linux/old_termios.h b/sysdeps/unix/sysv/linux/old_termios.h
new file mode 100644
index 0000000..56d19ba
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/old_termios.h
@@ -0,0 +1,23 @@
+/* old_termios.h for Linux other than MIPS and SPARC
+
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+/* By default, no old termios structure */
+#define _HAVE_STRUCT_OLD_TERMIOS 0
+#define OLD_NCCS NCCS
+typedef struct termios old_termios_t;
diff --git a/sysdeps/unix/sysv/linux/or1k/arch-syscall.h b/sysdeps/unix/sysv/linux/or1k/arch-syscall.h
index a071c76..c2a1d51 100644
--- a/sysdeps/unix/sysv/linux/or1k/arch-syscall.h
+++ b/sysdeps/unix/sysv/linux/or1k/arch-syscall.h
@@ -183,6 +183,7 @@
#define __NR_nfsservctl 42
#define __NR_open_by_handle_at 265
#define __NR_open_tree 428
+#define __NR_open_tree_attr 467
#define __NR_openat 56
#define __NR_openat2 437
#define __NR_or1k_atomic 244
diff --git a/sysdeps/unix/sysv/linux/or1k/libc.abilist b/sysdeps/unix/sysv/linux/or1k/libc.abilist
index bbcdb31..b62d59f 100644
--- a/sysdeps/unix/sysv/linux/or1k/libc.abilist
+++ b/sysdeps/unix/sysv/linux/or1k/libc.abilist
@@ -2263,4 +2263,18 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
diff --git a/sysdeps/unix/sysv/linux/or1k/libm.abilist b/sysdeps/unix/sysv/linux/or1k/libm.abilist
index 80e4ba1..bef7a98 100644
--- a/sysdeps/unix/sysv/linux/or1k/libm.abilist
+++ b/sysdeps/unix/sysv/linux/or1k/libm.abilist
@@ -829,6 +829,12 @@ GLIBC_2.41 tanpif32 F
GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf32 F
@@ -841,6 +847,12 @@ GLIBC_2.42 powrf32 F
GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf32 F
diff --git a/sysdeps/unix/sysv/linux/powerpc/bits/ioctl-types.h b/sysdeps/unix/sysv/linux/powerpc/bits/ioctl-types.h
index f2b360c..267fa09 100644
--- a/sysdeps/unix/sysv/linux/powerpc/bits/ioctl-types.h
+++ b/sysdeps/unix/sysv/linux/powerpc/bits/ioctl-types.h
@@ -32,17 +32,6 @@ struct winsize
unsigned short int ws_ypixel;
};
-#define NCC 10
-struct termio
- {
- unsigned short int c_iflag; /* input mode flags */
- unsigned short int c_oflag; /* output mode flags */
- unsigned short int c_cflag; /* control mode flags */
- unsigned short int c_lflag; /* local mode flags */
- unsigned char c_line; /* line discipline */
- unsigned char c_cc[NCC]; /* control characters */
-};
-
/* modem lines */
#define TIOCM_LE 0x001
#define TIOCM_DTR 0x002
diff --git a/sysdeps/unix/sysv/linux/powerpc/bits/termios-c_cflag.h b/sysdeps/unix/sysv/linux/powerpc/bits/termios-c_cflag.h
index 9ea8cfb..a90d581 100644
--- a/sysdeps/unix/sysv/linux/powerpc/bits/termios-c_cflag.h
+++ b/sysdeps/unix/sysv/linux/powerpc/bits/termios-c_cflag.h
@@ -35,5 +35,7 @@
#define CLOCAL 00100000
#ifdef __USE_MISC
-# define ADDRB 04000000000
+# define ADDRB 04000000000
+# define CMSPAR 010000000000 /* Mark or space (stick) parity. */
+# define CRTSCTS 020000000000 /* Flow control. */
#endif
diff --git a/sysdeps/unix/sysv/linux/powerpc/bits/termios-baud.h b/sysdeps/unix/sysv/linux/powerpc/bits/termios-cbaud.h
index 374d9f8..7bcbba4 100644
--- a/sysdeps/unix/sysv/linux/powerpc/bits/termios-baud.h
+++ b/sysdeps/unix/sysv/linux/powerpc/bits/termios-cbaud.h
@@ -17,29 +17,29 @@
<https://www.gnu.org/licenses/>. */
#ifndef _TERMIOS_H
-# error "Never include <bits/termios-baud.h> directly; use <termios.h> instead."
+# error "Never include <bits/termios-cbaud.h> directly; use <termios.h> instead."
#endif
#ifdef __USE_MISC
-# define CBAUD 0000377
-# define CBAUDEX 0000020
-# define CMSPAR 010000000000 /* mark or space (stick) parity */
-# define CRTSCTS 020000000000 /* flow control */
+# define CBAUD 000000377
+# define CBAUDEX 000000020
+# define CIBAUD 077600000
+# define IBSHIFT 16
#endif
-#define B57600 00020
-#define B115200 00021
-#define B230400 00022
-#define B460800 00023
-#define B500000 00024
-#define B576000 00025
-#define B921600 00026
-#define B1000000 00027
-#define B1152000 00030
-#define B1500000 00031
-#define B2000000 00032
-#define B2500000 00033
-#define B3000000 00034
-#define B3500000 00035
-#define B4000000 00036
-#define __MAX_BAUD B4000000
+#define __B57600 00020
+#define __B115200 00021
+#define __B230400 00022
+#define __B460800 00023
+#define __B500000 00024
+#define __B576000 00025
+#define __B921600 00026
+#define __B1000000 00027
+#define __B1152000 00030
+#define __B1500000 00031
+#define __B2000000 00032
+#define __B2500000 00033
+#define __B3000000 00034
+#define __B3500000 00035
+#define __B4000000 00036
+#define __BOTHER 00037
diff --git a/sysdeps/unix/sysv/linux/powerpc/configure b/sysdeps/unix/sysv/linux/powerpc/configure
index 61ae675..ef2055d 100644
--- a/sysdeps/unix/sysv/linux/powerpc/configure
+++ b/sysdeps/unix/sysv/linux/powerpc/configure
@@ -40,48 +40,7 @@ fi
printf "%s\n" "$libc_cv_mlong_double_128ibm" >&6; }
if test "$libc_cv_mlong_double_128ibm" = no; then
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC $CFLAGS supports -mabi=ibmlongdouble" >&5
-printf %s "checking whether $CC $CFLAGS supports -mabi=ibmlongdouble... " >&6; }
-if test ${libc_cv_mabi_ibmlongdouble+y}
-then :
- printf %s "(cached) " >&6
-else case e in #(
- e) save_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -mlong-double-128 -mabi=ibmlongdouble"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <float.h>
-int
-main (void)
-{
-
-#if LDBL_MANT_DIG != 106
-# error "compiler doesn't implement IBM extended format of long double"
-#endif
-long double foobar (long double x) { return x; }
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"
-then :
- libc_cv_mabi_ibmlongdouble=yes
-else case e in #(
- e) libc_cv_mabi_ibmlongdouble=no ;;
-esac
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
- CFLAGS="$save_CFLAGS" ;;
-esac
-fi
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_mabi_ibmlongdouble" >&5
-printf "%s\n" "$libc_cv_mabi_ibmlongdouble" >&6; }
-
- if test "$libc_cv_mabi_ibmlongdouble" = yes; then
- CFLAGS="$CFLAGS -mabi=ibmlongdouble"
- else
- as_fn_error $? "this configuration requires -mlong-double-128 IBM extended format support" "$LINENO" 5
- fi
+ CFLAGS="$CFLAGS -mabi=ibmlongdouble"
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for linker that supports --no-tls-get-addr-optimize" >&5
diff --git a/sysdeps/unix/sysv/linux/powerpc/configure.ac b/sysdeps/unix/sysv/linux/powerpc/configure.ac
index 8d2ec60..42347a6 100644
--- a/sysdeps/unix/sysv/linux/powerpc/configure.ac
+++ b/sysdeps/unix/sysv/linux/powerpc/configure.ac
@@ -16,24 +16,7 @@ long double foobar (long double x) { return x; }]])],
CFLAGS="$save_CFLAGS"])
if test "$libc_cv_mlong_double_128ibm" = no; then
- AC_CACHE_CHECK(whether $CC $CFLAGS supports -mabi=ibmlongdouble,
- libc_cv_mabi_ibmlongdouble, [dnl
- save_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -mlong-double-128 -mabi=ibmlongdouble"
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <float.h>]], [[
-#if LDBL_MANT_DIG != 106
-# error "compiler doesn't implement IBM extended format of long double"
-#endif
-long double foobar (long double x) { return x; }]])],
- libc_cv_mabi_ibmlongdouble=yes,
- libc_cv_mabi_ibmlongdouble=no)
- CFLAGS="$save_CFLAGS"])
-
- if test "$libc_cv_mabi_ibmlongdouble" = yes; then
- CFLAGS="$CFLAGS -mabi=ibmlongdouble"
- else
- AC_MSG_ERROR([this configuration requires -mlong-double-128 IBM extended format support])
- fi
+ CFLAGS="$CFLAGS -mabi=ibmlongdouble"
fi
LIBC_LINKER_FEATURE([--no-tls-get-addr-optimize], [-Wl,--no-tls-get-addr-optimize],
diff --git a/sysdeps/unix/sysv/linux/powerpc/kernel_termios.h b/sysdeps/unix/sysv/linux/powerpc/kernel_termios.h
deleted file mode 100644
index f6ea570..0000000
--- a/sysdeps/unix/sysv/linux/powerpc/kernel_termios.h
+++ /dev/null
@@ -1,53 +0,0 @@
-/* Copyright (C) 1997-2025 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <https://www.gnu.org/licenses/>. */
-
-#ifndef _KERNEL_TERMIOS_H
-#define _KERNEL_TERMIOS_H 1
-
-/* We need the definition of tcflag_t, cc_t, and speed_t. */
-#include <termios.h>
-
-#define __KERNEL_NCCS 19
-
-struct __kernel_termios
- {
- tcflag_t c_iflag; /* input mode flags */
- tcflag_t c_oflag; /* output mode flags */
- tcflag_t c_cflag; /* control mode flags */
- tcflag_t c_lflag; /* local mode flags */
- cc_t c_cc[__KERNEL_NCCS]; /* control characters */
- cc_t c_line; /* line discipline */
- speed_t c_ispeed; /* input speed */
- speed_t c_ospeed; /* output speed */
- };
-
-#define _HAVE_C_ISPEED 1
-#define _HAVE_C_OSPEED 1
-
-/* We have the kernel termios structure, so we can presume this code knows
- what it's doing... */
-
-#undef TCGETS
-#undef TCSETS
-#undef TCSETSW
-#undef TCSETSF
-#define TCGETS _IOR ('t', 19, struct __kernel_termios)
-#define TCSETS _IOW ('t', 20, struct __kernel_termios)
-#define TCSETSW _IOW ('t', 21, struct __kernel_termios)
-#define TCSETSF _IOW ('t', 22, struct __kernel_termios)
-
-#endif /* kernel_termios.h */
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/arch-syscall.h b/sysdeps/unix/sysv/linux/powerpc/powerpc32/arch-syscall.h
index b3481e4..c371df8 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/arch-syscall.h
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/arch-syscall.h
@@ -235,6 +235,7 @@
#define __NR_open 5
#define __NR_open_by_handle_at 346
#define __NR_open_tree 428
+#define __NR_open_tree_attr 467
#define __NR_openat 286
#define __NR_openat2 437
#define __NR_pause 29
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
index e0ea22b..883e66f 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
@@ -3142,7 +3142,21 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
GLIBC_2.5 __readlinkat_chk F
GLIBC_2.5 inet6_opt_append F
GLIBC_2.5 inet6_opt_find F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist
index 4bb7707..7f584d3 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist
@@ -1067,6 +1067,12 @@ GLIBC_2.41 tanpif32 F
GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf32 F
@@ -1079,6 +1085,12 @@ GLIBC_2.42 powrf32 F
GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf32 F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
index 16b9a77..84cd9e0 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
@@ -3187,7 +3187,21 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
GLIBC_2.5 __readlinkat_chk F
GLIBC_2.5 inet6_opt_append F
GLIBC_2.5 inet6_opt_find F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist
index 99faf37..d1cd4b1 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist
@@ -1066,6 +1066,12 @@ GLIBC_2.41 tanpif32 F
GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf32 F
@@ -1078,6 +1084,12 @@ GLIBC_2.42 powrf32 F
GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf32 F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/arch-syscall.h b/sysdeps/unix/sysv/linux/powerpc/powerpc64/arch-syscall.h
index 45108e8..df8844d 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/arch-syscall.h
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/arch-syscall.h
@@ -220,6 +220,7 @@
#define __NR_open 5
#define __NR_open_by_handle_at 346
#define __NR_open_tree 428
+#define __NR_open_tree_attr 467
#define __NR_openat 286
#define __NR_openat2 437
#define __NR_pause 29
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
index 070f6f5..8832568 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
@@ -2896,7 +2896,21 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
GLIBC_2.5 __readlinkat_chk F
GLIBC_2.5 inet6_opt_append F
GLIBC_2.5 inet6_opt_find F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist
index a7059f8..bfc5310 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist
@@ -1060,6 +1060,12 @@ GLIBC_2.41 tanpif32 F
GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf32 F
@@ -1072,6 +1078,12 @@ GLIBC_2.42 powrf32 F
GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf32 F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
index 4378d1d..b6ff801 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
@@ -2972,4 +2972,18 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist
index 5f5f543..dedfefc 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist
@@ -1429,9 +1429,19 @@ GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpif64x F
GLIBC_2.41 tanpil F
+GLIBC_2.42 __compoundnieee128 F
GLIBC_2.42 __pownieee128 F
GLIBC_2.42 __powrieee128 F
+GLIBC_2.42 __rootnieee128 F
GLIBC_2.42 __rsqrtieee128 F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf128 F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnf64x F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf128 F
@@ -1448,6 +1458,14 @@ GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrf64x F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf128 F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnf64x F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf128 F
diff --git a/sysdeps/unix/sysv/linux/powerpc/termios_arch.h b/sysdeps/unix/sysv/linux/powerpc/termios_arch.h
new file mode 100644
index 0000000..919b437
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/powerpc/termios_arch.h
@@ -0,0 +1,33 @@
+/* Architectural parameters for Linux termios - PowerPC version
+
+ Copyright (C) 1997-2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#define _TERMIOS2_NCCS 19
+#define _HAVE_TERMIOS2_C_CC_BEFORE_C_LINE 1
+#define _HAVE_STRUCT_OLD_TERMIOS 0
+
+/* PowerPC quirk: on PowerPC only, ioctl() emulates the TCGETS/TCSETS*
+ ioctls with tcgetattr/tcsetattr using the glibc struct termios.
+ As struct termios2 is the same as the kernel struct termios on PowerPC,
+ simply consider the kernel ones as the termios2 interface, even
+ though the kernel doesn't call it that. */
+
+#define TCGETS2 _IOR ('t', 19, struct termios2)
+#define TCSETS2 _IOW ('t', 20, struct termios2)
+#define TCSETSW2 _IOW ('t', 21, struct termios2)
+#define TCSETSF2 _IOW ('t', 22, struct termios2)
diff --git a/sysdeps/unix/sysv/linux/riscv/hwprobe.c b/sysdeps/unix/sysv/linux/riscv/hwprobe.c
index e0cbd22..bc7f6f3 100644
--- a/sysdeps/unix/sysv/linux/riscv/hwprobe.c
+++ b/sysdeps/unix/sysv/linux/riscv/hwprobe.c
@@ -23,13 +23,13 @@
#include <sysdep-vdso.h>
int __riscv_hwprobe (struct riscv_hwprobe *pairs, size_t pair_count,
- size_t cpu_count, unsigned long int *cpus,
+ size_t cpusetsize, __RISCV_HWPROBE_CPUS_TYPE cpus,
unsigned int flags)
{
int r;
r = INTERNAL_VSYSCALL (riscv_hwprobe, 5, pairs, pair_count,
- cpu_count, cpus, flags);
+ cpusetsize, cpus.__ul, flags);
/* Negate negative errno values to match pthreads API. */
return -r;
diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/arch-syscall.h b/sysdeps/unix/sysv/linux/riscv/rv32/arch-syscall.h
index 5333879..1bae763 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv32/arch-syscall.h
+++ b/sysdeps/unix/sysv/linux/riscv/rv32/arch-syscall.h
@@ -168,6 +168,7 @@
#define __NR_nfsservctl 42
#define __NR_open_by_handle_at 265
#define __NR_open_tree 428
+#define __NR_open_tree_attr 467
#define __NR_openat 56
#define __NR_openat2 437
#define __NR_perf_event_open 241
diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist
index 48c6e26..1771a23 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist
@@ -2516,4 +2516,18 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libm.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libm.abilist
index 2fc2680..9342294 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv32/libm.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv32/libm.abilist
@@ -1124,6 +1124,14 @@ GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpif64x F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf128 F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnf64x F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf128 F
@@ -1140,6 +1148,14 @@ GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrf64x F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf128 F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnf64x F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf128 F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/arch-syscall.h b/sysdeps/unix/sysv/linux/riscv/rv64/arch-syscall.h
index eed1dff..1a1ebf8 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv64/arch-syscall.h
+++ b/sysdeps/unix/sysv/linux/riscv/rv64/arch-syscall.h
@@ -175,6 +175,7 @@
#define __NR_nfsservctl 42
#define __NR_open_by_handle_at 265
#define __NR_open_tree 428
+#define __NR_open_tree_attr 467
#define __NR_openat 56
#define __NR_openat2 437
#define __NR_perf_event_open 241
diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist
index a8b0c6a..4b48352 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist
@@ -2716,4 +2716,18 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libm.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libm.abilist
index a731d27..76e74c9 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv64/libm.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv64/libm.abilist
@@ -1221,6 +1221,14 @@ GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpif64x F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf128 F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnf64x F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf128 F
@@ -1237,6 +1245,14 @@ GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrf64x F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf128 F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnf64x F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf128 F
diff --git a/sysdeps/unix/sysv/linux/riscv/sys/hwprobe.h b/sysdeps/unix/sysv/linux/riscv/sys/hwprobe.h
index bebad6c..40415aa 100644
--- a/sysdeps/unix/sysv/linux/riscv/sys/hwprobe.h
+++ b/sysdeps/unix/sysv/linux/riscv/sys/hwprobe.h
@@ -21,6 +21,7 @@
#define _SYS_HWPROBE_H 1
#include <features.h>
+#include <sched.h>
#include <stddef.h>
#include <errno.h>
#ifdef __has_include
@@ -63,22 +64,39 @@ struct riscv_hwprobe {
__BEGIN_DECLS
-extern int __riscv_hwprobe (struct riscv_hwprobe *__pairs, size_t __pair_count,
- size_t __cpu_count, unsigned long int *__cpus,
+#if defined __cplusplus || !__GNUC_PREREQ (2, 7)
+# define __RISCV_HWPROBE_CPUS_TYPE cpu_set_t *
+#else
+/* The fourth argument to __riscv_hwprobe should be a null pointer or a
+ pointer to a cpu_set_t (either the fixed-size type or allocated with
+ CPU_ALLOC). However, early versions of this header file used the
+ argument type unsigned long int *. The transparent union allows
+ the argument to be either cpu_set_t * or unsigned long int * for
+ compatibility. The older header file requiring unsigned long int *
+ can be identified by the lack of the __RISCV_HWPROBE_CPUS_TYPE macro.
+ In C++ and with compilers that do not support transparent unions, the
+ argument type must be cpu_set_t *. */
+typedef union {
+ cpu_set_t *__cs;
+ unsigned long int *__ul;
+} __RISCV_HWPROBE_CPUS_TYPE __attribute__ ((__transparent_union__));
+# define __RISCV_HWPROBE_CPUS_TYPE __RISCV_HWPROBE_CPUS_TYPE
+#endif
+
+extern int __riscv_hwprobe (struct riscv_hwprobe *__pairs,
+ size_t __pair_count, size_t __cpusetsize,
+ __RISCV_HWPROBE_CPUS_TYPE __cpus,
unsigned int __flags)
- __nonnull ((1)) __wur
- __fortified_attr_access (__read_write__, 1, 2)
- __fortified_attr_access (__read_only__, 4, 3);
+ __THROW __nonnull ((1)) __attr_access ((__read_write__, 1, 2));
-/* A pointer to the __riscv_hwprobe vDSO function is passed as the second
+/* A pointer to the __riscv_hwprobe function is passed as the second
argument to ifunc selector routines. Include a function pointer type for
convenience in calling the function in those settings. */
-typedef int (*__riscv_hwprobe_t) (struct riscv_hwprobe *__pairs, size_t __pair_count,
- size_t __cpu_count, unsigned long int *__cpus,
+typedef int (*__riscv_hwprobe_t) (struct riscv_hwprobe *__pairs,
+ size_t __pair_count, size_t __cpusetsize,
+ __RISCV_HWPROBE_CPUS_TYPE __cpus,
unsigned int __flags)
- __nonnull ((1)) __wur
- __fortified_attr_access (__read_write__, 1, 2)
- __fortified_attr_access (__read_only__, 4, 3);
+ __nonnull ((1)) __attr_access ((__read_write__, 1, 2));
/* Helper function usable from ifunc selectors that probes a single key. */
static __inline int
diff --git a/sysdeps/unix/sysv/linux/riscv/sysdep.h b/sysdeps/unix/sysv/linux/riscv/sysdep.h
index ee015df..05e0e05 100644
--- a/sysdeps/unix/sysv/linux/riscv/sysdep.h
+++ b/sysdeps/unix/sysv/linux/riscv/sysdep.h
@@ -145,11 +145,12 @@
# define HAVE_CLOCK_GETRES64_VSYSCALL "__vdso_clock_getres"
# define HAVE_CLOCK_GETTIME64_VSYSCALL "__vdso_clock_gettime"
# define HAVE_GETTIMEOFDAY_VSYSCALL "__vdso_gettimeofday"
+# define HAVE_GETRANDOM_VSYSCALL "__vdso_getrandom"
# else
# define VDSO_NAME "LINUX_5.4"
# define VDSO_HASH 61765876
-/* RV32 does not support the gettime VDSO syscalls. */
+/* RV32 does not support the gettime and getrandom VDSO syscalls. */
# endif
# define HAVE_CLONE3_WRAPPER 1
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/arch-syscall.h b/sysdeps/unix/sysv/linux/s390/s390-32/arch-syscall.h
index 0bf8f95..f77f39f 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/arch-syscall.h
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/arch-syscall.h
@@ -232,6 +232,7 @@
#define __NR_open 5
#define __NR_open_by_handle_at 336
#define __NR_open_tree 428
+#define __NR_open_tree_attr 467
#define __NR_openat 288
#define __NR_openat2 437
#define __NR_pause 29
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
index 6c00b84..f0decc7 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
@@ -3140,7 +3140,21 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
GLIBC_2.5 __readlinkat_chk F
GLIBC_2.5 inet6_opt_append F
GLIBC_2.5 inet6_opt_find F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist
index ec5dd91..be2d177 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist
@@ -1348,6 +1348,14 @@ GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpif64x F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf128 F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnf64x F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf128 F
@@ -1364,6 +1372,14 @@ GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrf64x F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf128 F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnf64x F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf128 F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/arch-syscall.h b/sysdeps/unix/sysv/linux/s390/s390-64/arch-syscall.h
index 061f8db..65d6644 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/arch-syscall.h
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/arch-syscall.h
@@ -204,6 +204,7 @@
#define __NR_open 5
#define __NR_open_by_handle_at 336
#define __NR_open_tree 428
+#define __NR_open_tree_attr 467
#define __NR_openat 288
#define __NR_openat2 437
#define __NR_pause 29
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
index f866e5d..da8a2bf 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
@@ -2933,7 +2933,21 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
GLIBC_2.5 __readlinkat_chk F
GLIBC_2.5 inet6_opt_append F
GLIBC_2.5 inet6_opt_find F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist
index c755532..7d7ba26 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist
@@ -1348,6 +1348,14 @@ GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpif64x F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf128 F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnf64x F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf128 F
@@ -1364,6 +1372,14 @@ GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrf64x F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf128 F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnf64x F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf128 F
diff --git a/sysdeps/unix/sysv/linux/s390/sysconf.c b/sysdeps/unix/sysv/linux/s390/sysconf.c
index 8386523..dcb335a 100644
--- a/sysdeps/unix/sysv/linux/s390/sysconf.c
+++ b/sysdeps/unix/sysv/linux/s390/sysconf.c
@@ -66,7 +66,7 @@ get_cache_info (int level, int attr, int type)
return 0L;
}
- if (!S390_IS_Z10 (features->stfle_bits))
+ if (!S390_IS_Z10 (features->stfle_orig))
{
/* We are at least on a z9 machine.
Return 256byte for LINESIZE for L1 d/i-cache,
diff --git a/sysdeps/unix/sysv/linux/sh/arch-syscall.h b/sysdeps/unix/sysv/linux/sh/arch-syscall.h
index 52cc320..5948ab0 100644
--- a/sysdeps/unix/sysv/linux/sh/arch-syscall.h
+++ b/sysdeps/unix/sysv/linux/sh/arch-syscall.h
@@ -228,6 +228,7 @@
#define __NR_open 5
#define __NR_open_by_handle_at 360
#define __NR_open_tree 428
+#define __NR_open_tree_attr 467
#define __NR_openat 295
#define __NR_openat2 437
#define __NR_pause 29
diff --git a/sysdeps/unix/sysv/linux/sh/be/libc.abilist b/sysdeps/unix/sysv/linux/sh/be/libc.abilist
index 4f2db8c..fb30341 100644
--- a/sysdeps/unix/sysv/linux/sh/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sh/be/libc.abilist
@@ -2832,7 +2832,21 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
GLIBC_2.5 __readlinkat_chk F
GLIBC_2.5 inet6_opt_append F
GLIBC_2.5 inet6_opt_find F
diff --git a/sysdeps/unix/sysv/linux/sh/be/libm.abilist b/sysdeps/unix/sysv/linux/sh/be/libm.abilist
index 799996c..5b0b080 100644
--- a/sysdeps/unix/sysv/linux/sh/be/libm.abilist
+++ b/sysdeps/unix/sysv/linux/sh/be/libm.abilist
@@ -920,6 +920,12 @@ GLIBC_2.41 tanpif32 F
GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf32 F
@@ -932,6 +938,12 @@ GLIBC_2.42 powrf32 F
GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf32 F
diff --git a/sysdeps/unix/sysv/linux/sh/le/libc.abilist b/sysdeps/unix/sysv/linux/sh/le/libc.abilist
index a73473e..d716673 100644
--- a/sysdeps/unix/sysv/linux/sh/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sh/le/libc.abilist
@@ -2829,7 +2829,21 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
GLIBC_2.5 __readlinkat_chk F
GLIBC_2.5 inet6_opt_append F
GLIBC_2.5 inet6_opt_find F
diff --git a/sysdeps/unix/sysv/linux/sh/le/libm.abilist b/sysdeps/unix/sysv/linux/sh/le/libm.abilist
index 799996c..5b0b080 100644
--- a/sysdeps/unix/sysv/linux/sh/le/libm.abilist
+++ b/sysdeps/unix/sysv/linux/sh/le/libm.abilist
@@ -920,6 +920,12 @@ GLIBC_2.41 tanpif32 F
GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf32 F
@@ -932,6 +938,12 @@ GLIBC_2.42 powrf32 F
GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf32 F
diff --git a/sysdeps/unix/sysv/linux/sparc/Versions b/sysdeps/unix/sysv/linux/sparc/Versions
index f127bdf..7dd61a5 100644
--- a/sysdeps/unix/sysv/linux/sparc/Versions
+++ b/sysdeps/unix/sysv/linux/sparc/Versions
@@ -29,6 +29,10 @@ libc {
__getshmlba;
}
+ GLIBC_2.42 {
+ tcgetattr;
+ tcsetattr;
+ }
GLIBC_PRIVATE {
# nptl/pthread_cond_timedwait.c uses INTERNAL_VSYSCALL(clock_gettime).
__vdso_clock_gettime;
diff --git a/sysdeps/unix/sysv/linux/sparc/bits/termios-baud.h b/sysdeps/unix/sysv/linux/sparc/bits/termios-cbaud.h
index 677db7b..34eba18 100644
--- a/sysdeps/unix/sysv/linux/sparc/bits/termios-baud.h
+++ b/sysdeps/unix/sysv/linux/sparc/bits/termios-cbaud.h
@@ -17,30 +17,29 @@
<https://www.gnu.org/licenses/>. */
#ifndef _TERMIOS_H
-# error "Never include <bits/termios-baud.h> directly; use <termios.h> instead."
+# error "Never include <bits/termios-cbaud.h> directly; use <termios.h> instead."
#endif
#ifdef __USE_MISC
# define CBAUD 0x0000100f
# define CBAUDEX 0x00001000
-# define CIBAUD 0x100f0000 /* input baud rate (not used) */
-# define CMSPAR 0x40000000 /* mark or space (stick) parity */
-# define CRTSCTS 0x80000000 /* flow control */
+# define CIBAUD 0x100f0000 /* input baud rate */
+# define IBSHIFT 16
#endif
-#define B57600 0x00001001
-#define B115200 0x00001002
-#define B230400 0x00001003
-#define B460800 0x00001004
-#define B76800 0x00001005
-#define B153600 0x00001006
-#define B307200 0x00001007
-#define B614400 0x00001008
-#define B921600 0x00001009
-#define B500000 0x0000100a
-#define B576000 0x0000100b
-#define B1000000 0x0000100c
-#define B1152000 0x0000100d
-#define B1500000 0x0000100e
-#define B2000000 0x0000100f
-#define __MAX_BAUD B2000000
+#define __B57600 0x00001001
+#define __B115200 0x00001002
+#define __B230400 0x00001003
+#define __B460800 0x00001004
+#define __B76800 0x00001005
+#define __B153600 0x00001006
+#define __B307200 0x00001007
+#define __B614400 0x00001008
+#define __B921600 0x00001009
+#define __B500000 0x0000100a
+#define __B576000 0x0000100b
+#define __B1000000 0x0000100c
+#define __B1152000 0x0000100d
+#define __B1500000 0x0000100e
+#define __B2000000 0x0000100f
+#define __BOTHER 0x00001000
diff --git a/sysdeps/unix/sysv/linux/sparc/bits/termios-struct.h b/sysdeps/unix/sysv/linux/sparc/bits/termios-struct.h
deleted file mode 100644
index 269ca9d..0000000
--- a/sysdeps/unix/sysv/linux/sparc/bits/termios-struct.h
+++ /dev/null
@@ -1,34 +0,0 @@
-/* struct termios definition. Linux/sparc version.
- Copyright (C) 2019-2025 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library. If not, see
- <https://www.gnu.org/licenses/>. */
-
-#ifndef _TERMIOS_H
-# error "Never include <bits/termios-struct.h> directly; use <termios.h> instead."
-#endif
-
-#define NCCS 17
-struct termios
- {
- tcflag_t c_iflag; /* input mode flags */
- tcflag_t c_oflag; /* output mode flags */
- tcflag_t c_cflag; /* control mode flags */
- tcflag_t c_lflag; /* local mode flags */
- cc_t c_line; /* line discipline */
- cc_t c_cc[NCCS]; /* control characters */
-#define _HAVE_STRUCT_TERMIOS_C_ISPEED 0
-#define _HAVE_STRUCT_TERMIOS_C_OSPEED 0
- };
diff --git a/sysdeps/unix/sysv/linux/sparc/kernel_termios.h b/sysdeps/unix/sysv/linux/sparc/kernel_termios.h
deleted file mode 100644
index 401079c..0000000
--- a/sysdeps/unix/sysv/linux/sparc/kernel_termios.h
+++ /dev/null
@@ -1,40 +0,0 @@
-/* Copyright (C) 1997-2025 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <https://www.gnu.org/licenses/>. */
-
-#ifndef _KERNEL_TERMIOS_H
-#define _KERNEL_TERMIOS_H 1
-/* The following corresponds to the values from the Linux 2.1.20 kernel. */
-
-/* We need the definition of tcflag_t, cc_t, and speed_t. */
-#include <termios.h>
-
-#define __KERNEL_NCCS 17
-
-struct __kernel_termios
- {
- tcflag_t c_iflag; /* input mode flags */
- tcflag_t c_oflag; /* output mode flags */
- tcflag_t c_cflag; /* control mode flags */
- tcflag_t c_lflag; /* local mode flags */
- cc_t c_line; /* line discipline */
- cc_t c_cc[__KERNEL_NCCS]; /* control characters */
- };
-
-#define _HAVE_C_ISPEED 0
-#define _HAVE_C_OSPEED 0
-
-#endif /* kernel_termios.h */
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/arch-syscall.h b/sysdeps/unix/sysv/linux/sparc/sparc32/arch-syscall.h
index ee870bc..85828a8 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/arch-syscall.h
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/arch-syscall.h
@@ -230,6 +230,7 @@
#define __NR_open 5
#define __NR_open_by_handle_at 333
#define __NR_open_tree 428
+#define __NR_open_tree_attr 467
#define __NR_openat 284
#define __NR_openat2 437
#define __NR_pause 29
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
index dc7e27d..6deedf2 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
@@ -3161,7 +3161,23 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 tcgetattr F
+GLIBC_2.42 tcsetattr F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
GLIBC_2.5 __readlinkat_chk F
GLIBC_2.5 inet6_opt_append F
GLIBC_2.5 inet6_opt_find F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist
index f33a969..8107101 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist
@@ -1355,6 +1355,14 @@ GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpif64x F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf128 F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnf64x F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf128 F
@@ -1371,6 +1379,14 @@ GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrf64x F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf128 F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnf64x F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf128 F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/arch-syscall.h b/sysdeps/unix/sysv/linux/sparc/sparc64/arch-syscall.h
index 3acbebe..d83ecd1 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/arch-syscall.h
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/arch-syscall.h
@@ -211,6 +211,7 @@
#define __NR_open 5
#define __NR_open_by_handle_at 333
#define __NR_open_tree 428
+#define __NR_open_tree_attr 467
#define __NR_openat 284
#define __NR_openat2 437
#define __NR_pause 29
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
index 2ee97f4..1ce22bf 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
@@ -2797,7 +2797,23 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 tcgetattr F
+GLIBC_2.42 tcsetattr F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
GLIBC_2.5 __readlinkat_chk F
GLIBC_2.5 inet6_opt_append F
GLIBC_2.5 inet6_opt_find F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist
index 609fdb5..418ed9d 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist
@@ -1245,6 +1245,14 @@ GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpif64x F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf128 F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnf64x F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf128 F
@@ -1261,6 +1269,14 @@ GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrf64x F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf128 F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnf64x F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf128 F
diff --git a/sysdeps/unix/sysv/linux/sparc/termios_arch.h b/sysdeps/unix/sysv/linux/sparc/termios_arch.h
new file mode 100644
index 0000000..f3b3f65
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/sparc/termios_arch.h
@@ -0,0 +1,34 @@
+/* Architectural parameters for Linux termios - SPARC version
+
+ Copyright (C) 1991-2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#define _TERMIOS2_NCCS 19
+#define _HAVE_TERMIOS2_C_CC_BEFORE_C_LINE 0
+
+#define _HAVE_STRUCT_OLD_TERMIOS 1
+
+#define OLD_NCCS 17
+struct old_termios
+{
+ tcflag_t c_iflag; /* input mode flags */
+ tcflag_t c_oflag; /* output mode flags */
+ tcflag_t c_cflag; /* control mode flags */
+ tcflag_t c_lflag; /* local mode flags */
+ cc_t c_line; /* line discipline */
+ cc_t c_cc[OLD_NCCS]; /* control characters */
+};
diff --git a/sysdeps/unix/sysv/linux/speed.c b/sysdeps/unix/sysv/linux/speed.c
index 017f741..4efb0de 100644
--- a/sysdeps/unix/sysv/linux/speed.c
+++ b/sysdeps/unix/sysv/linux/speed.c
@@ -16,82 +16,351 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
-#include <stddef.h>
-#include <errno.h>
-#include <termios.h>
-#include <sysdep.h>
+#include <termios_internals.h>
-/* This is a gross hack around a kernel bug. If the cfsetispeed functions
- is called with the SPEED argument set to zero this means use the same
- speed as for output. But we don't have independent input and output
- speeds and therefore cannot record this.
+/* Conversions between legacy c_cflag fields and actual baud rates */
- We use an unused bit in the `c_iflag' field to keep track of this
- use of `cfsetispeed'. The value here must correspond to the one used
- in `tcsetattr.c'. */
-#define IBAUD0 020000000000
+/* These expressions may seem complicated; the _cbix() macro
+ compresses the CBAUD field into an index in the range 0-31. On most
+ Linux platforms, the CBAUD field is 5 bits, but the topmost bit
+ indicated by CBAUDEX, is discontinous with the rest.
+
+ The resulting masks look like:
+
+ Alpha PowerPC others
+
+ CBAUD 0x001f 0x00ff 0x100f
+ CBAUDEX 0x0000 0x0010 0x1000
+
+ LOWCBAUD 0x001f 0x000f 0x000f
+ CBAUDMASK 0x001f 0x001f 0x100f
+
+ CBAUDMASK is used to test for invalid values passed to the
+ compatibility functions or in termios::c_cflag on PowerPC.
+
+ The divide-multiply sequence in the _cbix() macro gets converted
+ to shift and masks as necessary by the compiler. */
+
+#define LOWCBAUD (CBAUD & (CBAUDEX-1))
+#define _cbix(x) (((x) & LOWCBAUD) | \
+ (CBAUDEX ? ((x) & CBAUDEX)/CBAUDEX * (LOWCBAUD+1) : 0))
+#define CBAUDMASK (LOWCBAUD | CBAUDEX)
+
+/* Compile time sanity checks for broken CBAUD or CIBAUD definitions */
+#if CIBAUD != (CBAUD << IBSHIFT)
+# error "CIBAUD should == CBAUD << IBSHIFT"
+#elif CBAUDEX & (CBAUDEX-1)
+# error "CBAUDEX should either be 0 or a single bit"
+#elif !(CBAUD & 1)
+# error "The CBAUD field should start at bit 0"
+#elif CBAUDEX & ~CBAUD
+# error "CBAUD should include the CBAUDEX bit"
+#endif
+
+speed_t
+___cbaud_to_speed (tcflag_t c_cflag, speed_t other)
+{
+ static const speed_t cbaudix_to_speed [] =
+ {
+ [0 ... _cbix(CBAUDMASK)] = -1,
+ [_cbix(__B0)] = 0,
+ [_cbix(__B50)] = 50,
+ [_cbix(__B75)] = 75,
+ [_cbix(__B110)] = 110,
+ [_cbix(__B134)] = 134,
+ [_cbix(__B150)] = 150,
+ [_cbix(__B200)] = 200,
+ [_cbix(__B300)] = 300,
+ [_cbix(__B600)] = 600,
+ [_cbix(__B1200)] = 1200,
+ [_cbix(__B1800)] = 1800,
+ [_cbix(__B2400)] = 2400,
+ [_cbix(__B4800)] = 4800,
+ [_cbix(__B9600)] = 9600,
+ [_cbix(__B19200)] = 19200,
+ [_cbix(__B38400)] = 38400,
+ [_cbix(__B57600)] = 57600,
+ [_cbix(__B115200)] = 115200,
+ [_cbix(__B230400)] = 230400,
+ [_cbix(__B460800)] = 460800,
+ [_cbix(__B500000)] = 500000,
+ [_cbix(__B576000)] = 576000,
+ [_cbix(__B921600)] = 921600,
+ [_cbix(__B1000000)] = 1000000,
+ [_cbix(__B1152000)] = 1152000,
+ [_cbix(__B1500000)] = 1500000,
+ [_cbix(__B2000000)] = 2000000,
+#ifdef __B7200
+ [_cbix(__B7200)] = 7200,
+#endif
+#ifdef __B14400
+ [_cbix(__B14400)] = 14400,
+#endif
+#ifdef __B28800
+ [_cbix(__B28800)] = 28800,
+#endif
+#ifdef __B76800
+ [_cbix(__B76800)] = 76800,
+#endif
+#ifdef __B153600
+ [_cbix(__B153600)] = 153600,
+#endif
+#ifdef __B307200
+ [_cbix(__B307200)] = 307200,
+#endif
+#ifdef __B614400
+ [_cbix(__B614400)] = 614400,
+#endif
+#ifdef __B2500000
+ [_cbix(__B2500000)] = 2500000,
+#endif
+#ifdef __B3000000
+ [_cbix(__B3000000)] = 3000000,
+#endif
+#ifdef __B3500000
+ [_cbix(__B3500000)] = 3500000,
+#endif
+#ifdef __B4000000
+ [_cbix(__B4000000)] = 4000000,
+#endif
+ };
+ speed_t speed;
+
+ if (c_cflag & (tcflag_t)(~CBAUDMASK))
+ return other;
+
+ speed = cbaudix_to_speed[_cbix(c_cflag)];
+ return speed == (speed_t)-1 ? other : speed;
+}
+
+tcflag_t
+___speed_to_cbaud (speed_t speed)
+{
+ switch (speed) {
+ case 0:
+ return __B0;
+ case 50:
+ return __B50;
+ case 75:
+ return __B75;
+ case 110:
+ return __B110;
+ case 134:
+ return __B134;
+ case 150:
+ return __B150;
+ case 200:
+ return __B200;
+ case 300:
+ return __B300;
+ case 600:
+ return __B600;
+ case 1200:
+ return __B1200;
+ case 1800:
+ return __B1800;
+ case 2400:
+ return __B2400;
+ case 4800:
+ return __B4800;
+ case 9600:
+ return __B9600;
+ case 19200:
+ return __B19200;
+ case 38400:
+ return __B38400;
+ case 57600:
+ return __B57600;
+ case 115200:
+ return __B115200;
+ case 230400:
+ return __B230400;
+ case 460800:
+ return __B460800;
+ case 500000:
+ return __B500000;
+ case 576000:
+ return __B576000;
+ case 921600:
+ return __B921600;
+ case 1000000:
+ return __B1000000;
+ case 1152000:
+ return __B1152000;
+ case 1500000:
+ return __B1500000;
+ case 2000000:
+ return __B2000000;
+#ifdef __B76800
+ case 76800:
+ return __B76800;
+#endif
+#ifdef __B153600
+ case 153600:
+ return __B153600;
+#endif
+#ifdef __B307200
+ case 307200:
+ return __B307200;
+#endif
+#ifdef __B614400
+ case 614400:
+ return __B614400;
+#endif
+#ifdef __B2500000
+ case 2500000:
+ return __B2500000;
+#endif
+#ifdef __B3000000
+ case 3000000:
+ return __B3000000;
+#endif
+#ifdef __B3500000
+ case 3500000:
+ return __B3500000;
+#endif
+#ifdef __B4000000
+ case 4000000:
+ return __B4000000;
+#endif
+ default:
+ return __BOTHER;
+ }
+}
+
+
+/* Canonicalize the representation of speed fields in a kernel
+ termios2 structure. Specifically, if there is a valid legacy cbaud
+ representation (not __BOTHER), use it and propagate the
+ corresponding speed value to ispeed/ospeed, otherwise the other way
+ around if possible. Finally, if the input speed is zero, copy the
+ output speed to the input speed.
+
+ The kernel doesn't do this canonicalization, which can affect
+ legacy utilities, so do it here.
+
+ This is used by tcgetattr() and tcsetattr(). */
+void
+___termios2_canonicalize_speeds (struct termios2 *k_termios_p)
+{
+ k_termios_p->c_ospeed =
+ ___cbaud_to_speed (cbaud (k_termios_p->c_cflag), k_termios_p->c_ospeed);
+ k_termios_p->c_ispeed =
+ ___cbaud_to_speed (cibaud (k_termios_p->c_cflag), k_termios_p->c_ispeed);
+
+ if (!k_termios_p->c_ispeed)
+ k_termios_p->c_ispeed = k_termios_p->c_ospeed;
+
+ k_termios_p->c_cflag &= ~(CBAUD | CIBAUD);
+ k_termios_p->c_cflag |= ___speed_to_cbaud (k_termios_p->c_ospeed);
+ k_termios_p->c_cflag |= ___speed_to_cbaud (k_termios_p->c_ispeed) << IBSHIFT;
+}
/* Return the output baud rate stored in *TERMIOS_P. */
speed_t
-cfgetospeed (const struct termios *termios_p)
+__cfgetospeed (const struct termios *termios_p)
{
- return termios_p->c_cflag & (CBAUD | CBAUDEX);
+ return termios_p->c_ospeed;
}
+libc_hidden_def (__cfgetospeed)
+versioned_symbol (libc, __cfgetospeed, cfgetospeed, GLIBC_2_42);
-/* Return the input baud rate stored in *TERMIOS_P.
- Although for Linux there is no difference between input and output
- speed, the numerical 0 is a special case for the input baud rate. It
- should set the input baud rate to the output baud rate. */
+/* Return the input baud rate stored in *TERMIOS_P. */
speed_t
-cfgetispeed (const struct termios *termios_p)
+__cfgetispeed (const struct termios *termios_p)
{
- return ((termios_p->c_iflag & IBAUD0)
- ? 0 : termios_p->c_cflag & (CBAUD | CBAUDEX));
+ return termios_p->c_ispeed;
}
+libc_hidden_def (__cfgetispeed)
+versioned_symbol (libc, __cfgetispeed, cfgetispeed, GLIBC_2_42);
/* Set the output baud rate stored in *TERMIOS_P to SPEED. */
int
-cfsetospeed (struct termios *termios_p, speed_t speed)
+__cfsetospeed (struct termios *termios_p, speed_t speed)
{
- if ((speed & ~CBAUD) != 0
- && (speed < B57600 || speed > __MAX_BAUD))
- return INLINE_SYSCALL_ERROR_RETURN_VALUE (EINVAL);
+ tcflag_t cbaud = ___speed_to_cbaud (speed);
-#if _HAVE_STRUCT_TERMIOS_C_OSPEED
termios_p->c_ospeed = speed;
+ termios_p->c_cflag &= ~CBAUD;
+ termios_p->c_cflag |= cbaud;
+
+ return 0;
+}
+libc_hidden_def (__cfsetospeed)
+versioned_symbol (libc, __cfsetospeed, cfsetospeed, GLIBC_2_42);
+
+/* Set the input baud rate stored in *TERMIOS_P to SPEED. */
+int
+__cfsetispeed (struct termios *termios_p, speed_t speed)
+{
+ tcflag_t cbaud = ___speed_to_cbaud (speed);
+
+ termios_p->c_ispeed = speed;
+ termios_p->c_cflag &= ~CIBAUD;
+ termios_p->c_cflag |= cbaud << IBSHIFT;
+
+ return 0;
+}
+libc_hidden_def (__cfsetispeed)
+versioned_symbol (libc, __cfsetispeed, cfsetispeed, GLIBC_2_42);
+
+#if _TERMIOS_OLD_COMPAT
+
+/* Legacy versions which returns cbaud-encoded speed_t values */
+
+speed_t
+attribute_compat_text_section
+__old_cfgetospeed (const old_termios_t *termios_p)
+{
+ return cbaud (termios_p->c_cflag);
+}
+compat_symbol (libc, __old_cfgetospeed, cfgetospeed, GLIBC_2_0);
+
+speed_t
+attribute_compat_text_section
+__old_cfgetispeed (const old_termios_t *termios_p)
+{
+ return cibaud (termios_p->c_cflag);
+}
+compat_symbol (libc, __old_cfgetispeed, cfgetispeed, GLIBC_2_0);
+
+int
+attribute_compat_text_section
+__old_cfsetospeed (old_termios_t *termios_p, speed_t speed)
+{
+ speed_t real_speed = ___cbaud_to_speed (speed, -1);
+ if (real_speed == (speed_t)-1)
+ return INLINE_SYSCALL_ERROR_RETURN_VALUE (EINVAL);
+
+#if !_HAVE_STRUCT_OLD_TERMIOS
+ /* Otherwise this field doesn't exist in old_termios_t */
+ termios_p->c_ospeed = real_speed;
#endif
- termios_p->c_cflag &= ~(CBAUD | CBAUDEX);
+ termios_p->c_cflag &= ~CBAUD;
termios_p->c_cflag |= speed;
return 0;
}
-libc_hidden_def (cfsetospeed)
+compat_symbol (libc, __old_cfsetospeed, cfsetospeed, GLIBC_2_0);
-
-/* Set the input baud rate stored in *TERMIOS_P to SPEED.
- Although for Linux there is no difference between input and output
- speed, the numerical 0 is a special case for the input baud rate. It
- should set the input baud rate to the output baud rate. */
int
-cfsetispeed (struct termios *termios_p, speed_t speed)
+attribute_compat_text_section
+__old_cfsetispeed (old_termios_t *termios_p, speed_t speed)
{
- if ((speed & ~CBAUD) != 0
- && (speed < B57600 || speed > __MAX_BAUD))
+ speed_t real_speed = ___cbaud_to_speed (speed, -1);
+ if (real_speed == (speed_t)-1)
return INLINE_SYSCALL_ERROR_RETURN_VALUE (EINVAL);
-#if _HAVE_STRUCT_TERMIOS_C_ISPEED
- termios_p->c_ispeed = speed;
+#if !_HAVE_STRUCT_OLD_TERMIOS
+ /* Otherwise this field doesn't exist in old_termios_t */
+ termios_p->c_ispeed = real_speed;
#endif
- if (speed == 0)
- termios_p->c_iflag |= IBAUD0;
- else
- {
- termios_p->c_iflag &= ~IBAUD0;
- termios_p->c_cflag &= ~(CBAUD | CBAUDEX);
- termios_p->c_cflag |= speed;
- }
+ termios_p->c_cflag &= ~CIBAUD;
+ termios_p->c_cflag |= speed << IBSHIFT;
return 0;
}
-libc_hidden_def (cfsetispeed)
+compat_symbol (libc, __old_cfsetispeed, cfsetispeed, GLIBC_2_0);
+
+#endif /* _TERMIOS_OLD_COMPAT */
diff --git a/sysdeps/unix/sysv/linux/syscall-names.list b/sysdeps/unix/sysv/linux/syscall-names.list
index 6f3351a..bde20e4 100644
--- a/sysdeps/unix/sysv/linux/syscall-names.list
+++ b/sysdeps/unix/sysv/linux/syscall-names.list
@@ -21,8 +21,8 @@
# This file can list all potential system calls. The names are only
# used if the installed kernel headers also provide them.
-# The list of system calls is current as of Linux 6.14.
-kernel 6.14
+# The list of system calls is current as of Linux 6.15.
+kernel 6.15
FAST_atomic_update
FAST_cmpxchg
@@ -316,6 +316,7 @@ olduname
open
open_by_handle_at
open_tree
+open_tree_attr
openat
openat2
or1k_atomic
diff --git a/sysdeps/unix/sysv/linux/tcgetattr.c b/sysdeps/unix/sysv/linux/tcgetattr.c
index d672e0c..ca17569 100644
--- a/sysdeps/unix/sysv/linux/tcgetattr.c
+++ b/sysdeps/unix/sysv/linux/tcgetattr.c
@@ -15,66 +15,56 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
-#include <errno.h>
-#include <string.h>
-#include <termios.h>
-#include <unistd.h>
-#include <sys/ioctl.h>
-#include <sys/types.h>
-#include <sysdep.h>
-
-/* The difference here is that the termios structure used in the
- kernel is not the same as we use in the libc. Therefore we must
- translate it here. */
-#include <kernel_termios.h>
+#include <termios_internals.h>
/* Put the state of FD into *TERMIOS_P. */
int
__tcgetattr (int fd, struct termios *termios_p)
{
- struct __kernel_termios k_termios;
- int retval;
-
- retval = INLINE_SYSCALL (ioctl, 3, fd, TCGETS, &k_termios);
+ struct termios2 k_termios;
+ long int retval = INLINE_SYSCALL_CALL (ioctl, fd, TCGETS2, &k_termios);
- if (__glibc_likely (retval == 0))
+ if (__glibc_likely (retval != -1))
{
- termios_p->c_iflag = k_termios.c_iflag;
- termios_p->c_oflag = k_termios.c_oflag;
- termios_p->c_cflag = k_termios.c_cflag;
- termios_p->c_lflag = k_termios.c_lflag;
- termios_p->c_line = k_termios.c_line;
-#if _HAVE_STRUCT_TERMIOS_C_ISPEED
-# if _HAVE_C_ISPEED
- termios_p->c_ispeed = k_termios.c_ispeed;
-# else
- termios_p->c_ispeed = k_termios.c_cflag & (CBAUD | CBAUDEX);
-# endif
-#endif
-#if _HAVE_STRUCT_TERMIOS_C_OSPEED
-# if _HAVE_C_OSPEED
+ ___termios2_canonicalize_speeds (&k_termios);
+
+ memset (termios_p, 0, sizeof (*termios_p));
+ termios_p->c_iflag = k_termios.c_iflag;
+ termios_p->c_oflag = k_termios.c_oflag;
+ termios_p->c_cflag = k_termios.c_cflag;
+ termios_p->c_lflag = k_termios.c_lflag;
+ termios_p->c_line = k_termios.c_line;
termios_p->c_ospeed = k_termios.c_ospeed;
-# else
- termios_p->c_ospeed = k_termios.c_cflag & (CBAUD | CBAUDEX);
-# endif
-#endif
- if (sizeof (cc_t) == 1 || _POSIX_VDISABLE == 0
- || (unsigned char) _POSIX_VDISABLE == (unsigned char) -1)
- memset (__mempcpy (&termios_p->c_cc[0], &k_termios.c_cc[0],
- __KERNEL_NCCS * sizeof (cc_t)),
- _POSIX_VDISABLE, (NCCS - __KERNEL_NCCS) * sizeof (cc_t));
- else
- {
- memcpy (&termios_p->c_cc[0], &k_termios.c_cc[0],
- __KERNEL_NCCS * sizeof (cc_t));
+ termios_p->c_ispeed = k_termios.c_ispeed;
- for (size_t cnt = __KERNEL_NCCS; cnt < NCCS; ++cnt)
- termios_p->c_cc[cnt] = _POSIX_VDISABLE;
- }
+ copy_c_cc (termios_p->c_cc, NCCS, k_termios.c_cc, _TERMIOS2_NCCS);
}
return retval;
}
-
libc_hidden_def (__tcgetattr)
+
+#if _TERMIOS_OLD_COMPAT && _HAVE_STRUCT_OLD_TERMIOS
+
+versioned_symbol (libc, __tcgetattr, tcgetattr, GLIBC_2_42);
+
+/* Legacy version for shorter struct termios */
+int
+attribute_compat_text_section
+__old_tcgetattr (int fd, old_termios_t *termios_p)
+{
+ struct termios new_termios;
+ int retval = __tcgetattr (fd, &new_termios);
+ if (__glibc_likely (retval != -1))
+ {
+ memcpy (termios_p, &new_termios, sizeof (*termios_p));
+ }
+ return retval;
+}
+compat_symbol (libc, __old_tcgetattr, tcgetattr, GLIBC_2_0);
+
+#else
+
weak_alias (__tcgetattr, tcgetattr)
+
+#endif
diff --git a/sysdeps/unix/sysv/linux/tcsetattr.c b/sysdeps/unix/sysv/linux/tcsetattr.c
index 5a13ad8..4f07a03 100644
--- a/sysdeps/unix/sysv/linux/tcsetattr.c
+++ b/sysdeps/unix/sysv/linux/tcsetattr.c
@@ -15,67 +15,94 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
-#include <errno.h>
-#include <string.h>
-#include <termios.h>
-#include <sys/ioctl.h>
-#include <sys/types.h>
-#include <sysdep.h>
-
-/* The difference here is that the termios structure used in the
- kernel is not the same as we use in the libc. Therefore we must
- translate it here. */
-#include <kernel_termios.h>
-
-
-/* This is a gross hack around a kernel bug. If the cfsetispeed functions
- is called with the SPEED argument set to zero this means use the same
- speed as for output. But we don't have independent input and output
- speeds and therefore cannot record this.
-
- We use an unused bit in the `c_iflag' field to keep track of this
- use of `cfsetispeed'. The value here must correspond to the one used
- in `speed.c'. */
-#define IBAUD0 020000000000
+#include <termios_internals.h>
+#define static_assert_equal(x,y) _Static_assert ((x) == (y), #x " != " #y)
/* Set the state of FD to *TERMIOS_P. */
int
__tcsetattr (int fd, int optional_actions, const struct termios *termios_p)
{
- struct __kernel_termios k_termios;
- unsigned long int cmd;
+ struct termios2 k_termios;
+ unsigned long cmd;
- switch (optional_actions)
- {
- case TCSANOW:
- cmd = TCSETS;
- break;
- case TCSADRAIN:
- cmd = TCSETSW;
- break;
- case TCSAFLUSH:
- cmd = TCSETSF;
- break;
- default:
- return INLINE_SYSCALL_ERROR_RETURN_VALUE (EINVAL);
- }
+ memset (&k_termios, 0, sizeof k_termios);
- k_termios.c_iflag = termios_p->c_iflag & ~IBAUD0;
+ k_termios.c_iflag = termios_p->c_iflag;
k_termios.c_oflag = termios_p->c_oflag;
k_termios.c_cflag = termios_p->c_cflag;
k_termios.c_lflag = termios_p->c_lflag;
- k_termios.c_line = termios_p->c_line;
-#if _HAVE_C_ISPEED && _HAVE_STRUCT_TERMIOS_C_ISPEED
- k_termios.c_ispeed = termios_p->c_ispeed;
-#endif
-#if _HAVE_C_OSPEED && _HAVE_STRUCT_TERMIOS_C_OSPEED
+ k_termios.c_line = termios_p->c_line;
+
k_termios.c_ospeed = termios_p->c_ospeed;
-#endif
- memcpy (&k_termios.c_cc[0], &termios_p->c_cc[0],
- __KERNEL_NCCS * sizeof (cc_t));
+ k_termios.c_ispeed = termios_p->c_ispeed;
+
+ ___termios2_canonicalize_speeds (&k_termios);
+
+ copy_c_cc (k_termios.c_cc, _TERMIOS2_NCCS, termios_p->c_cc, NCCS);
+
+ /*
+ * Choose the proper ioctl number to invoke.
+ *
+ * Alpha got TCSETS2 late (Linux 4.20), but has the same structure
+ * format, and it only needs TCSETS2 if either it needs to use
+ * __BOTHER or split speed. All other architectures have TCSETS2 as
+ * far back as the current glibc supports. Calling TCSETS with
+ * __BOTHER causes unpredictable results on old Alpha kernels and
+ * could even crash them.
+ */
+ static_assert_equal(TCSADRAIN, TCSANOW + 1);
+ static_assert_equal(TCSAFLUSH, TCSANOW + 2);
+ static_assert_equal(TCSETSW2, TCSETS2 + 1);
+ static_assert_equal(TCSETSF2, TCSETS2 + 2);
+ static_assert_equal(TCSETSW, TCSETS + 1);
+ static_assert_equal(TCSETSF, TCSETS + 2);
+
+ cmd = (long)optional_actions - TCSANOW;
+ if (cmd > 2)
+ return INLINE_SYSCALL_ERROR_RETURN_VALUE (EINVAL);
+
+ if (__ASSUME_TERMIOS2 ||
+ k_termios.c_ospeed != k_termios.c_ispeed ||
+ cbaud (k_termios.c_cflag) == __BOTHER)
+ {
+ cmd += TCSETS2;
+ }
+ else
+ {
+ cmd += TCSETS;
+ k_termios.c_cflag &= ~CIBAUD;
+ }
+
+ return INLINE_SYSCALL_CALL (ioctl, fd, cmd, &k_termios);
+}
+libc_hidden_def (__tcsetattr)
+
+#if _HAVE_STRUCT_OLD_TERMIOS && _TERMIOS_OLD_COMPAT
+
+versioned_symbol (libc, __tcsetattr, tcsetattr, GLIBC_2_42);
- return INLINE_SYSCALL (ioctl, 3, fd, cmd, &k_termios);
+/* Legacy version for shorter struct termios without speed fields */
+int
+attribute_compat_text_section
+__old_tcsetattr (int fd, int optional_actions, const old_termios_t *termios_p)
+{
+ struct termios new_termios;
+
+ memset (&new_termios, 0, sizeof (new_termios));
+ new_termios.c_iflag = termios_p->c_iflag;
+ new_termios.c_oflag = termios_p->c_oflag;
+ new_termios.c_cflag = termios_p->c_cflag;
+ new_termios.c_lflag = termios_p->c_lflag;
+ new_termios.c_line = termios_p->c_line;
+ copy_c_cc(new_termios.c_cc, NCCS, termios_p->c_cc, OLD_NCCS);
+
+ return __tcsetattr (fd, optional_actions, &new_termios);
}
+compat_symbol (libc, __old_tcsetattr, tcsetattr, GLIBC_2_0);
+
+#else
+
weak_alias (__tcsetattr, tcsetattr)
-libc_hidden_def (tcsetattr)
+
+#endif
diff --git a/sysdeps/unix/sysv/linux/termio.h b/sysdeps/unix/sysv/linux/termio.h
deleted file mode 100644
index 0e610f0..0000000
--- a/sysdeps/unix/sysv/linux/termio.h
+++ /dev/null
@@ -1,6 +0,0 @@
-/* Compatible <termio.h> for old `struct termio' ioctl interface.
- This is obsolete; use the POSIX.1 `struct termios' interface
- defined in <termios.h> instead. */
-
-#include <termios.h>
-#include <sys/ioctl.h>
diff --git a/sysdeps/unix/sysv/linux/termios_arch.h b/sysdeps/unix/sysv/linux/termios_arch.h
new file mode 100644
index 0000000..8dbf420
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/termios_arch.h
@@ -0,0 +1,23 @@
+/* Architectural parameters for Linux termios - generic version
+
+ Copyright (C) 1997-2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#define _TERMIOS2_NCCS 19
+#define _HAVE_TERMIOS2_C_CC_BEFORE_C_LINE 0
+
+#define _HAVE_STRUCT_OLD_TERMIOS 0
diff --git a/sysdeps/unix/sysv/linux/termios_internals.h b/sysdeps/unix/sysv/linux/termios_internals.h
new file mode 100644
index 0000000..e8dbfe7
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/termios_internals.h
@@ -0,0 +1,143 @@
+/* termios functions internal implementation header for Linux
+
+ Copyright (C) 1991-2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#ifndef TERMIOS_INTERNALS_H
+#define TERMIOS_INTERNALS_H 1
+
+#include <stddef.h>
+#include <errno.h>
+#include <string.h>
+#include <unistd.h>
+#include <termios.h>
+#include <sys/ioctl.h>
+#include <sys/types.h>
+#include <sysdep.h>
+#include <shlib-compat.h>
+
+#include <termios_arch.h>
+
+/* ---- Kernel interface definitions ---- */
+
+/* The the termios2 structure used in the kernel interfaces is not the
+ same as the termios structure we use in the libc. Therefore we
+ must translate it here. */
+
+struct termios2
+{
+ tcflag_t c_iflag; /* input mode flags */
+ tcflag_t c_oflag; /* output mode flags */
+ tcflag_t c_cflag; /* control mode flags */
+ tcflag_t c_lflag; /* local mode flags */
+#if _HAVE_TERMIOS2_C_CC_BEFORE_C_LINE
+ cc_t c_cc[_TERMIOS2_NCCS]; /* control characters */
+ cc_t c_line; /* line discipline */
+#else
+ cc_t c_line; /* line discipline */
+ cc_t c_cc[_TERMIOS2_NCCS]; /* control characters */
+#endif
+ speed_t c_ispeed; /* input speed */
+ speed_t c_ospeed; /* output speed */
+};
+
+/* Alpha got termios2 late, but TCGETS has exactly the same structure
+ format and function as TCGETS2. On all other platforms, the termios2
+ interface exists as far back as this version of glibc supports.
+
+ For TCSETS* it is more complicated; this is handled in tcsetattr.c.
+
+ Some other architectures only have the equivalent of the termios2
+ interface, in which case the old ioctl names are the only ones
+ presented, but are equivalent to the new ones. */
+#ifndef TCGETS2
+# define TCGETS2 TCGETS
+# define TCSETS2 TCSETS
+# define TCSETSW2 TCSETSW
+# define TCSETSF2 TCSETSF
+#elif !__ASSUME_TERMIOS2
+/* Hack for Alpha */
+# undef TCGETS2
+# define TCGETS2 TCGETS
+#endif
+
+/* ---- Application interface definitions ---- */
+
+/*
+ * Should old speed_t and struct termios (if applicable) compatibility
+ * functions be included?
+ */
+#define _TERMIOS_OLD_COMPAT SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_42)
+
+/*
+ * Old struct termios (without c_ispeed and c_ospeed fields) if
+ * applicable. The new struct termios *must* be binary identical up to
+ * the sizeof the old structure.
+ *
+ * This only applies to SPARC and MIPS; for other architectures the
+ * new and old speed_t interfaces both use the same struct termios.
+ */
+#if _HAVE_STRUCT_OLD_TERMIOS
+typedef struct old_termios old_termios_t;
+#else
+# define OLD_NCCS NCCS
+typedef struct termios old_termios_t;
+#endif
+
+/* ---- Internal function definitions ---- */
+
+/*
+ * Copy a set of c_cc fields of possibly different width. If the target
+ * field is longer, then fill with _POSIX_VDISABLE == -1.
+ */
+static inline void
+copy_c_cc (cc_t *to, size_t nto, const cc_t *from, size_t nfrom)
+{
+ if (nto < nfrom)
+ nfrom = nto;
+
+ to = __mempcpy (to, from, nfrom * sizeof(cc_t));
+ if (nto > nfrom)
+ memset (to, _POSIX_VDISABLE, (nto - nfrom) * sizeof(cc_t));
+}
+
+/* Extract the output and input legacy speed fields from c_cflag. */
+static inline tcflag_t
+cbaud (tcflag_t c_cflag)
+{
+ return c_cflag & CBAUD;
+}
+
+static inline tcflag_t
+cibaud (tcflag_t c_cflag)
+{
+ return cbaud (c_cflag >> IBSHIFT);
+}
+
+extern speed_t
+___cbaud_to_speed (tcflag_t c_cflag, speed_t other)
+ __attribute_const__ attribute_hidden;
+
+extern tcflag_t
+___speed_to_cbaud (speed_t speed)
+ __attribute_const__ attribute_hidden;
+
+extern void
+___termios2_canonicalize_speeds (struct termios2 *k_termios_p)
+ attribute_hidden;
+
+#endif /* TERMIOS_INTERNALS_H */
diff --git a/sysdeps/unix/sysv/linux/tst-pkey.c b/sysdeps/unix/sysv/linux/tst-pkey.c
index 4d12d2e..1000d8f 100644
--- a/sysdeps/unix/sysv/linux/tst-pkey.c
+++ b/sysdeps/unix/sysv/linux/tst-pkey.c
@@ -191,7 +191,7 @@ do_test (void)
pthread_t delayed_thread = xpthread_create
(NULL, &delayed_thread_func, &delayed_thread_check_access);
- keys[0] = pkey_alloc (0, 0);
+ keys[0] = pkey_alloc (0, PKEY_UNRESTRICTED);
if (keys[0] < 0)
{
if (errno == ENOSYS)
@@ -333,7 +333,7 @@ do_test (void)
if (i == allowed_key)
{
if (do_write)
- TEST_COMPARE (pkey_set (keys[i], 0), 0);
+ TEST_COMPARE (pkey_set (keys[i], PKEY_UNRESTRICTED), 0);
else
TEST_COMPARE (pkey_set (keys[i], PKEY_DISABLE_WRITE), 0);
}
@@ -360,7 +360,7 @@ do_test (void)
inherit that access. */
for (int i = 0; i < key_count; ++i)
{
- TEST_COMPARE (pkey_set (keys[i], 0), 0);
+ TEST_COMPARE (pkey_set (keys[i], PKEY_UNRESTRICTED), 0);
TEST_VERIFY (check_page_access (i, false));
TEST_VERIFY (check_page_access (i, true));
}
diff --git a/sysdeps/unix/sysv/linux/tst-termios-linux.c b/sysdeps/unix/sysv/linux/tst-termios-linux.c
new file mode 100644
index 0000000..e4b0c8b
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/tst-termios-linux.c
@@ -0,0 +1,592 @@
+/* Linux termios regression tests
+
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public License as
+ published by the Free Software Foundation; either version 2.1 of the
+ License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If
+ not, see <https://www.gnu.org/licenses/>. */
+
+#include <errno.h>
+#include <fcntl.h>
+#include <limits.h>
+#include <stdbool.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <sys/ioctl.h>
+#include <termios.h>
+#include <unistd.h>
+
+#include <shlib-compat.h>
+#include <array_length.h>
+
+#include <support/check.h>
+#include <support/namespace.h>
+#include <support/support.h>
+#include <support/temp_file.h>
+#include <support/test-driver.h>
+#include <support/tty.h>
+
+/* Evaluate an expression and make sure errno did not get set; return
+ the value of the expression */
+#define CHECKERR(expr) \
+ ({ \
+ errno = 0; \
+ const __typeof (expr) _val = (expr); \
+ TEST_COMPARE(errno, 0); \
+ _val; \
+ })
+
+/* Evaluate an expression and verify that is return a specific value,
+ as well as errno not having been set. */
+#define VERIFY(expr,val) TEST_COMPARE(CHECKERR(expr), val)
+/* Check for zero and errno not set */
+#define CHECKZERO(expr) VERIFY(expr, 0)
+
+/* Table of legacy speed constants */
+
+#define BOGUS ((speed_t)-1)
+#define ANY ((speed_t)-2)
+
+struct cbaud_table
+{
+ speed_t speed;
+ speed_t cbaud;
+ const char *name;
+};
+
+static const struct cbaud_table cbaud_table [] =
+{
+ { 0, __B0, "__B0" },
+ { 50, __B50, "__B50" },
+ { 75, __B75, "__B75" },
+ { 110, __B110, "__B110" },
+ { 134, __B134, "__B134" },
+ { 150, __B150, "__B150" },
+ { 200, __B200, "__B200" },
+ { 300, __B300, "__B300" },
+ { 600, __B600, "__B600" },
+ { 1200, __B1200, "__B1200" },
+ { 1800, __B1800, "__B1800" },
+ { 2400, __B2400, "__B2400" },
+ { 4800, __B4800, "__B4800" },
+#ifdef __B7200
+ { 7200, __B7200, "__B7200" },
+#endif
+ { 9600, __B9600, "__B9600" },
+#ifdef __B14400
+ { 14400, __B14400, "__B14400" },
+#endif
+ { 19200, __B19200, "__B19200" },
+#ifdef __B28800
+ { 28800, __B28800, "__B28800" },
+#endif
+ { 38400, __B38400, "__B38400" },
+ { 57600, __B57600, "__B57600" },
+#ifdef __B76800
+ { 76800, __B76800, "__B76800" },
+#endif
+ { 115200, __B115200, "__B115200" },
+#ifdef __B153600
+ { 153600, __B153600, "__B153600" },
+#endif
+ { 230400, __B230400, "__B230400" },
+#ifdef __B307200
+ { 307200, __B307200, "__B307200" },
+#endif
+ { 460800, __B460800, "__B460800" },
+ { 500000, __B500000, "__B500000" },
+ { 576000, __B576000, "__B576000" },
+#ifdef __B614400
+ { 614400, __B614400, "__B614400" },
+#endif
+ { 921600, __B921600, "__B921600" },
+ { 1000000, __B1000000, "__B1000000" },
+ { 1152000, __B1152000, "__B1152000" },
+ { 1500000, __B1500000, "__B1500000" },
+ { 2000000, __B2000000, "__B2000000" },
+#ifdef __B2500000
+ { 2500000, __B2500000, "__B2500000" },
+#endif
+#ifdef __B3000000
+ { 3000000, __B3000000, "__B3000000" },
+#endif
+#ifdef __B3500000
+ { 3500000, __B3500000, "__B3500000" },
+#endif
+#ifdef __B4000000
+ { 4000000, __B4000000, "__B4000000" },
+#endif
+ { ANY, __BOTHER, "__BOTHER" },
+ { BOGUS, BOGUS, "invalid" }
+};
+
+/* List of common speeds to test */
+
+static const speed_t test_speeds [] =
+{
+ 0, 50, 75, 110, 134, 150, 200, 300, 600, 1200, 1800, 2400,
+ 4800, 7200, 9600, 14400, 19200, 28800, 33600, 38400, 57600,
+ 76800, 115200, 153600, 230400, 307200, 460800, 500000,
+ 576000, 614400, 921600, 1000000, 1152000, 1500000, 2000000,
+ 2500000, 3000000, 3500000, 4000000, 5000000, 10000000
+};
+
+/* Speed function tests */
+
+/* These intentionally are a separate implementation from speed.c;
+ these should be "trivially correct" and don't need to be optimized
+ in any way */
+
+/* Returns __BOTHER if there is no legacy value for this speed */
+static speed_t speed_to_cbaud (speed_t speed)
+{
+ const struct cbaud_table *ct;
+ for (ct = cbaud_table; ct->speed != ANY; ct++)
+ {
+ if (ct->speed == speed)
+ break;
+ }
+ return ct->cbaud;
+}
+
+/* Returns ANY if cbaud is __BOTHER, or BOGUS if invalid */
+static speed_t cbaud_to_speed (speed_t cbaud)
+{
+ const struct cbaud_table *ct;
+ for (ct = cbaud_table; ct->cbaud != BOGUS; ct++)
+ {
+ if (ct->cbaud == cbaud)
+ break;
+ }
+ return ct->speed;
+}
+
+static const char *cbaud_name (speed_t cbaud)
+{
+ const struct cbaud_table *ct;
+ for (ct = cbaud_table; ct->cbaud != BOGUS; ct++)
+ {
+ if (ct->cbaud == cbaud)
+ break;
+ }
+ return ct->name;
+}
+
+static int check_speed (speed_t expected, speed_t speed, speed_t cbaud,
+ speed_t cfspeed, baud_t cfbaud, char io)
+{
+ speed_t want_cbaud;
+ cbaud &= CBAUD;
+
+ if (expected != ANY && speed != expected)
+ FAIL_RET ("c_%cspeed = %u, expected %u", io, speed, expected);
+
+ if (cfspeed != speed)
+ FAIL_RET ("cfget%cspeed = %u, expected %u", io, cfspeed, speed);
+
+ if (cfbaud != cfspeed)
+ FAIL_RET ("cfget%cbaud = %u, but cfget%cspeed = %u",
+ io, cfbaud, io, cfspeed);
+
+ want_cbaud = speed_to_cbaud (speed);
+
+ if (cbaud != want_cbaud)
+ FAIL_RET ("c_%cspeed = %u: %s = %s (%06o), should be %s (%06o)",
+ io, speed,
+ io == 'o' ? "CBAUD" : "CIBAUD", cbaud_name (cbaud), cbaud,
+ cbaud_name (want_cbaud), want_cbaud);
+
+ return 0;
+}
+
+/* Validate that the speeds in the struct termios are properly normalized.
+ The difference is the handling of ispeed == 0. */
+
+/* Use this after cfset* () */
+static void check_speeds_cf (const struct termios *tio_p,
+ speed_t ospeed, speed_t ispeed)
+{
+ check_speed (ospeed, tio_p->c_ospeed, tio_p->c_cflag,
+ CHECKERR (cfgetospeed (tio_p)),
+ CHECKERR (cfgetobaud (tio_p)), 'o');
+ check_speed (ispeed, tio_p->c_ispeed, tio_p->c_cflag >> IBSHIFT,
+ CHECKERR (cfgetispeed (tio_p)),
+ CHECKERR (cfgetibaud (tio_p)), 'i');
+}
+
+/* Use this after tc[gs]etattr () */
+static void check_speeds_tc (int fd, speed_t ospeed, speed_t ispeed)
+{
+ struct termios tio;
+
+ CHECKZERO (tcgetattr (fd, &tio));
+ check_speeds_cf (&tio, ospeed, ispeed ? ispeed : ospeed);
+}
+
+/* For search and replace convenience */
+#define check_bauds_cf check_speeds_cf
+#define check_bauds_tc check_speeds_tc
+
+/* Common routine for setting speeds, with checking */
+static void
+set_speeds (int fd, speed_t ospeed, speed_t ispeed)
+{
+ struct termios tio;
+
+ CHECKZERO (tcgetattr (fd, &tio));
+ CHECKZERO (cfsetospeed (&tio, ospeed));
+ CHECKZERO (cfsetispeed (&tio, ispeed));
+ check_speeds_cf (&tio, ospeed, ispeed);
+ CHECKZERO (tcsetattr (fd, TCSANOW, &tio));
+ check_speeds_tc (fd, ospeed, ispeed ? ispeed : ospeed);
+}
+
+/* Actual tests */
+
+typedef void (*speed_test_t)(int ttyfd, speed_t speed);
+static void
+run_speed_test (int fd, speed_test_t test);
+
+/* New interface cfset*speed test */
+static void
+new_cfspeed_test (int fd, speed_t speed)
+{
+ struct termios tio;
+ speed_t old_ospeed, old_ispeed;
+
+ CHECKZERO (tcgetattr (fd, &tio));
+ old_ospeed = CHECKERR (cfgetospeed (&tio));
+ old_ispeed = CHECKERR (cfgetispeed (&tio));
+
+ /* Check initial normalization */
+ check_speeds_cf (&tio, old_ospeed, old_ispeed);
+
+ /* Check cfset*speed normalization */
+ CHECKZERO (cfsetospeed (&tio, speed));
+ check_speeds_cf (&tio, speed, old_ispeed);
+ CHECKZERO (cfsetispeed (&tio, speed));
+ check_speeds_cf (&tio, speed, speed);
+ CHECKZERO (cfsetospeed (&tio, old_ospeed));
+ check_speeds_cf (&tio, old_ospeed, speed);
+ CHECKZERO (cfsetispeed (&tio, B0));
+ check_speeds_cf (&tio, old_ospeed, B0);
+ CHECKZERO (cfsetspeed (&tio, speed));
+ check_speeds_cf (&tio, speed, speed);
+ CHECKZERO (cfsetospeed (&tio, old_ospeed));
+ CHECKZERO (cfsetispeed (&tio, old_ispeed));
+ check_speeds_cf (&tio, old_ospeed, old_ispeed);
+}
+
+/* New interface cfset*speed test with tcsetattr */
+static void
+new_tcspeed_test (int fd, speed_t speed)
+{
+ struct termios tio;
+ speed_t old_ospeed, old_ispeed;
+
+ CHECKZERO (tcgetattr (fd, &tio));
+ old_ospeed = CHECKERR (cfgetospeed (&tio));
+ old_ispeed = CHECKERR (cfgetispeed (&tio));
+
+ /* Check initial normalization */
+ check_speeds_cf (&tio, old_ospeed, old_ispeed);
+
+ /* Check cfset*speed normalization */
+ CHECKZERO (cfsetospeed (&tio, speed));
+ CHECKZERO (tcsetattr (fd, TCSANOW, &tio));
+ check_speeds_tc (fd, speed, old_ispeed);
+ CHECKZERO (cfsetispeed (&tio, speed));
+ CHECKZERO (tcsetattr (fd, TCSANOW, &tio));
+ check_speeds_tc (fd, speed, speed);
+ CHECKZERO (cfsetospeed (&tio, old_ospeed));
+ CHECKZERO (tcsetattr (fd, TCSANOW, &tio));
+ check_speeds_tc (fd, old_ospeed, speed);
+ CHECKZERO (cfsetispeed (&tio, B0));
+ CHECKZERO (tcsetattr (fd, TCSANOW, &tio));
+ check_speeds_tc (fd, old_ospeed, B0);
+ CHECKZERO (cfsetspeed (&tio, speed));
+ CHECKZERO (tcsetattr (fd, TCSANOW, &tio));
+ check_speeds_tc (fd, speed, speed);
+ CHECKZERO (cfsetospeed (&tio, old_ospeed));
+ CHECKZERO (cfsetispeed (&tio, old_ispeed));
+ CHECKZERO (tcsetattr (fd, TCSANOW, &tio));
+ check_speeds_tc (fd, old_ospeed, old_ispeed);
+}
+
+/* New interface cfset*baud test */
+static void
+new_cfbaud_test (int fd, baud_t baud)
+{
+ struct termios tio;
+ baud_t old_obaud, old_ibaud;
+
+ CHECKZERO (tcgetattr (fd, &tio));
+ old_obaud = CHECKERR (cfgetobaud (&tio));
+ old_ibaud = CHECKERR (cfgetibaud (&tio));
+
+ /* Check initial normalization */
+ check_bauds_cf (&tio, old_obaud, old_ibaud);
+
+ /* Check cfset*baud normalization */
+ CHECKZERO (cfsetobaud (&tio, baud));
+ check_bauds_cf (&tio, baud, old_ibaud);
+ CHECKZERO (cfsetibaud (&tio, baud));
+ check_bauds_cf (&tio, baud, baud);
+ CHECKZERO (cfsetobaud (&tio, old_obaud));
+ check_bauds_cf (&tio, old_obaud, baud);
+ CHECKZERO (cfsetibaud (&tio, B0));
+ check_bauds_cf (&tio, old_obaud, B0);
+ CHECKZERO (cfsetbaud (&tio, baud));
+ check_bauds_cf (&tio, baud, baud);
+ CHECKZERO (cfsetobaud (&tio, old_obaud));
+ CHECKZERO (cfsetibaud (&tio, old_ibaud));
+ check_bauds_cf (&tio, old_obaud, old_ibaud);
+}
+
+/* New interface cfset*baud test with tcsetattr */
+static void
+new_tcbaud_test (int fd, baud_t baud)
+{
+ struct termios tio;
+ baud_t old_obaud, old_ibaud;
+
+ CHECKZERO (tcgetattr (fd, &tio));
+ old_obaud = CHECKERR (cfgetobaud (&tio));
+ old_ibaud = CHECKERR (cfgetibaud (&tio));
+
+ /* Check initial normalization */
+ check_bauds_cf (&tio, old_obaud, old_ibaud);
+
+ /* Check cfset*baud normalization */
+ CHECKZERO (cfsetobaud (&tio, baud));
+ CHECKZERO (tcsetattr (fd, TCSANOW, &tio));
+ check_bauds_tc (fd, baud, old_ibaud);
+ CHECKZERO (cfsetibaud (&tio, baud));
+ CHECKZERO (tcsetattr (fd, TCSANOW, &tio));
+ check_bauds_tc (fd, baud, baud);
+ CHECKZERO (cfsetobaud (&tio, old_obaud));
+ CHECKZERO (tcsetattr (fd, TCSANOW, &tio));
+ check_bauds_tc (fd, old_obaud, baud);
+ CHECKZERO (cfsetibaud (&tio, B0));
+ CHECKZERO (tcsetattr (fd, TCSANOW, &tio));
+ check_bauds_tc (fd, old_obaud, B0);
+ CHECKZERO (cfsetbaud (&tio, baud));
+ CHECKZERO (tcsetattr (fd, TCSANOW, &tio));
+ check_bauds_tc (fd, baud, baud);
+ CHECKZERO (cfsetobaud (&tio, old_obaud));
+ CHECKZERO (cfsetibaud (&tio, old_ibaud));
+ CHECKZERO (tcsetattr (fd, TCSANOW, &tio));
+ check_bauds_tc (fd, old_obaud, old_ibaud);
+}
+
+/*
+ * Old interface tests. This depends critically on the new struct
+ * termios being guaranteed to be a superset of the legacy struct
+ * termios.
+ */
+#if TEST_COMPAT (libc, GLIBC_2_0, GLIBC_2_42)
+extern int __old_cfsetospeed (struct termios *tio_p, speed_t speed);
+compat_symbol_reference (libc, __old_cfsetospeed, cfsetospeed, GLIBC_2_0);
+extern int __old_cfsetispeed (struct termios *tio_p, speed_t speed);
+compat_symbol_reference (libc, __old_cfsetispeed, cfsetispeed, GLIBC_2_0);
+extern speed_t __old_cfgetospeed (const struct termios *tio_p);
+compat_symbol_reference (libc, __old_cfgetospeed, cfgetospeed, GLIBC_2_0);
+extern speed_t __old_cfgetispeed (const struct termios *tio_p);
+compat_symbol_reference (libc, __old_cfgetispeed, cfgetispeed, GLIBC_2_0);
+extern int __old_tcsetattr (int fd, int act, const struct termios *tio_p);
+compat_symbol_reference (libc, __old_tcsetattr, tcsetattr, GLIBC_2_0);
+extern int __old_tcgetattr (int fd, struct termios *tio_p);
+compat_symbol_reference (libc, __old_tcgetattr, tcgetattr, GLIBC_2_0);
+
+static int old_tcsetattr (int fd, const struct termios *tio_p)
+{
+ struct termios old_tio = *tio_p;
+
+ /* Deliberately corrupt c_ispeed and c_ospeed */
+ old_tio.c_ispeed = 0xdeadbeef;
+ old_tio.c_ospeed = 0xfeedface;
+ return __old_tcsetattr (fd, TCSANOW, &old_tio);
+}
+static int old_tcgetattr (int fd, struct termios *tio_p)
+{
+ int rv;
+ memset (tio_p, 0xde, sizeof *tio_p);
+ rv = __old_tcgetattr (fd, tio_p);
+ if (rv)
+ return rv;
+
+ /* Deliberately corrupt c_ispeed and c_ospeed */
+ tio_p->c_ispeed = 0xdeadbeef;
+ tio_p->c_ospeed = 0xfeedface;
+ return 0;
+}
+
+/* Old interface test. This relies on the new struct termios always
+ being a binary superset of the old one.
+ This doesn't bother testing split speed, since that never worked
+ on the old glibc. */
+static void
+old_tcspeed_test (int fd, speed_t speed)
+{
+ struct termios tio;
+ speed_t cbaud;
+
+ if (!speed)
+ return; /* Skip B0 for this test */
+
+ cbaud = speed_to_cbaud (speed);
+ if (cbaud == __BOTHER)
+ return;
+
+ CHECKZERO (old_tcgetattr (fd, &tio));
+ CHECKZERO (__old_cfsetospeed (&tio, cbaud));
+ VERIFY (__old_cfgetospeed (&tio), cbaud);
+ CHECKZERO (__old_cfsetispeed (&tio, cbaud));
+ VERIFY (__old_cfgetispeed (&tio), cbaud);
+ CHECKZERO (old_tcsetattr (fd, &tio));
+ check_speeds_tc (fd, speed, speed);
+}
+
+/* Verify that invalid CBAUD values return error for the old interfaces */
+static void
+old_invalid_speeds_test (int fd)
+{
+ struct termios tio;
+ speed_t cbaud;
+
+ for (cbaud = 0 ; cbaud ; cbaud > 0xffff ? (cbaud <<= 1) : cbaud++) {
+ speed_t realspeed;
+ realspeed = (cbaud & ~CBAUD) ? BOGUS : cbaud_to_speed (cbaud);
+ if (realspeed >= ANY)
+ {
+ int rv;
+
+ errno = 0;
+ rv = __old_cfsetospeed (&tio, cbaud);
+ if (rv != -1 || errno != EINVAL)
+ FAIL("__old_cfsetospeed() accepted invalid value %06o", cbaud);
+
+ errno = 0;
+ rv = __old_cfsetispeed (&tio, cbaud);
+ if (rv != -1 || errno != EINVAL)
+ FAIL("__old_cfsetispeed() accepted invalid value %06o", cbaud);
+ }
+ else
+ {
+ CHECKZERO (__old_cfsetospeed (&tio, cbaud));
+ VERIFY (__old_cfgetospeed (&tio), cbaud);
+ CHECKZERO (__old_cfsetispeed (&tio, cbaud));
+ VERIFY (__old_cfgetispeed (&tio), cbaud);
+ if (cbaud)
+ {
+ CHECKZERO (old_tcsetattr (fd, &tio));
+ check_speeds_tc (fd, realspeed, realspeed);
+ }
+ }
+ }
+}
+
+static void
+compat_tests (int fd)
+{
+ run_speed_test (fd, old_tcspeed_test);
+ old_invalid_speeds_test (fd);
+}
+#else /* No TEST_COMPAT */
+#define compat_tests(fd) ((void)(fd))
+#endif
+
+static void
+run_speed_test (int fd, speed_test_t test)
+{
+ unsigned short seed [3] = { 0x1234, 0x5678, 0x9abc };
+ struct speeds {
+ speed_t ospeed, ispeed;
+ };
+ static const struct speeds initial_speeds [] = {
+ { 2400, 2400 }, /* Standard speed, non-split */
+ { 123456, 123456 }, /* Nonstandard speed, non-split */
+ { 75, 1200 }, /* Standard split speeds */
+ { 9600, 456789 }, /* One standard, one nonstandard */
+ { 54321, 1234567890 } /* Nonstandard, one very high */
+ };
+
+ array_foreach_const (is, initial_speeds)
+ {
+ /* Set up initial conditions */
+ set_speeds (fd, is->ospeed, is->ispeed);
+
+ /* Test all common speeds */
+ array_foreach_const (ts, test_speeds)
+ test (fd, *ts);
+
+ /* Test pseudorandom speeds; array_length(test_speeds)
+ here is an arbitrary value */
+ const size_t random_test_count = array_length(test_speeds);
+ for (size_t i = 0 ; i < random_test_count ; i++)
+ test (fd, (speed_t) jrand48 (seed));
+
+ /* Test power-of-2 speeds */
+ for (speed_t s = 1 ; s ; s <<= 1)
+ test (fd, s);
+
+ /* Test power of 2 multiples of 75; 75 << 25 is the maximum below 2^32 */
+ for (int i = 0 ; i < 26 ; i++)
+ test (fd, (speed_t)75 << i);
+ }
+}
+
+static void
+run_speed_tests (int fd)
+{
+ /* Test proper canonicalization using the new interface */
+ run_speed_test (fd, new_cfspeed_test);
+ run_speed_test (fd, new_tcspeed_test);
+
+ /* Try the new cfset*baud() functions */
+ run_speed_test (fd, new_cfbaud_test);
+ run_speed_test (fd, new_tcbaud_test);
+
+ /* Tests of the legacy functions */
+ compat_tests (fd);
+}
+
+/* test dispatch */
+
+static void
+run_in_chroot (void)
+{
+ /* Create a pty slave to use as a tty. Most of the termios settings,
+ including the speeds, have no impact on a pty, but they are still
+ settable like for any other tty, which makes them very convenient
+ for testing. */
+ int ptmfd, ttyfd;
+
+ support_openpty (&ptmfd, &ttyfd, NULL, NULL, NULL);
+ run_speed_tests (ttyfd);
+ close (ttyfd);
+ close (ptmfd);
+}
+
+static int
+do_test (void)
+{
+ support_become_root ();
+ run_in_chroot ();
+
+ return 0;
+}
+
+#include <support/test-driver.c>
diff --git a/sysdeps/unix/sysv/linux/x86_64/64/arch-syscall.h b/sysdeps/unix/sysv/linux/x86_64/64/arch-syscall.h
index 17b84c7..06fbae5 100644
--- a/sysdeps/unix/sysv/linux/x86_64/64/arch-syscall.h
+++ b/sysdeps/unix/sysv/linux/x86_64/64/arch-syscall.h
@@ -207,6 +207,7 @@
#define __NR_open 2
#define __NR_open_by_handle_at 304
#define __NR_open_tree 428
+#define __NR_open_tree_attr 467
#define __NR_openat 257
#define __NR_openat2 437
#define __NR_pause 34
diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
index a7ada1e..5648772 100644
--- a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
@@ -2748,7 +2748,21 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
GLIBC_2.5 __readlinkat_chk F
GLIBC_2.5 inet6_opt_append F
GLIBC_2.5 inet6_opt_find F
diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist
index b7207e1..6719814 100644
--- a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist
@@ -1278,6 +1278,14 @@ GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpif64x F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf128 F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnf64x F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf128 F
@@ -1294,6 +1302,14 @@ GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrf64x F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf128 F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnf64x F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf128 F
diff --git a/sysdeps/unix/sysv/linux/x86_64/Makefile b/sysdeps/unix/sysv/linux/x86_64/Makefile
index fb834a7..6938382 100644
--- a/sysdeps/unix/sysv/linux/x86_64/Makefile
+++ b/sysdeps/unix/sysv/linux/x86_64/Makefile
@@ -87,10 +87,10 @@ $(objpfx)tst-gnu2-tls2-amx-mod0.so: $(libsupport)
$(objpfx)tst-gnu2-tls2-amx-mod1.so: $(libsupport)
$(objpfx)tst-gnu2-tls2-amx-mod2.so: $(libsupport)
-CFLAGS-tst-gnu2-tls2-amx.c += -mamx-tile
-CFLAGS-tst-gnu2-tls2-amx-mod0.c += -mamx-tile -mtls-dialect=gnu2
-CFLAGS-tst-gnu2-tls2-amx-mod1.c += -mamx-tile -mtls-dialect=gnu2
-CFLAGS-tst-gnu2-tls2-amx-mod2.c += -mamx-tile -mtls-dialect=gnu2
+CFLAGS-tst-gnu2-tls2-amx.c += -mamx-tile -DTEST_AMX
+CFLAGS-tst-gnu2-tls2-amx-mod0.c += -mamx-tile -DTEST_AMX -mtls-dialect=gnu2
+CFLAGS-tst-gnu2-tls2-amx-mod1.c += -mamx-tile -DTEST_AMX -mtls-dialect=gnu2
+CFLAGS-tst-gnu2-tls2-amx-mod2.c += -mamx-tile -DTEST_AMX -mtls-dialect=gnu2
endif
endif # $(subdir) == elf
diff --git a/sysdeps/unix/sysv/linux/x86_64/libc_sigaction.c b/sysdeps/unix/sysv/linux/x86_64/libc_sigaction.c
index 006c532..812e023 100644
--- a/sysdeps/unix/sysv/linux/x86_64/libc_sigaction.c
+++ b/sysdeps/unix/sysv/linux/x86_64/libc_sigaction.c
@@ -22,7 +22,7 @@
extern void restore_rt (void) asm ("__restore_rt") attribute_hidden;
#define SET_SA_RESTORER(kact, act) \
- (kact)->sa_flags = (act)->sa_flags | SA_RESTORER; \
+ (kact)->sa_flags |= SA_RESTORER; \
(kact)->sa_restorer = &restore_rt
#define RESET_SA_RESTORER(act, kact) \
diff --git a/sysdeps/unix/sysv/linux/x86_64/uw-sigframe.h b/sysdeps/unix/sysv/linux/x86_64/uw-sigframe.h
new file mode 100644
index 0000000..585ca01
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/x86_64/uw-sigframe.h
@@ -0,0 +1,76 @@
+/* Signal frame backtracing support for SFrame on AMD, x86-64 and x86.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public License
+ as published by the Free Software Foundation; either version 2.1 of
+ the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be
+ useful, but WITHOUT ANY WARRANTY; without even the implied warranty
+ of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+/* This code is inspired from libgcc's MD_FALLBACK_FRAME_STATE_FOR
+ implementation. See libgcc/config/i386/linux-unwind.h */
+
+#include <signal.h>
+#include <sys/ucontext.h>
+
+#ifdef __x86_64__
+
+/* SFrame is only supported by x86_64 targets. */
+
+#define MD_DECODE_SIGNAL_FRAME x86_64_decode_signal_frame
+
+#ifdef __LP64__
+#define RT_SIGRETURN_SYSCALL 0x050f0000000fc0c7ULL
+#else
+#define RT_SIGRETURN_SYSCALL 0x050f40000201c0c7ULL
+#endif
+
+static _Unwind_Reason_Code
+x86_64_decode_signal_frame (frame *frame)
+{
+ unsigned char *pc = (unsigned char *) frame->pc;
+ mcontext_t *st;
+
+ unsigned char pc0 = *(unsigned char *)(pc + 0);
+ unsigned long long pc1;
+ memcpy (&pc1, pc + 1, sizeof (unsigned long long));
+
+ /* movq $__NR_rt_sigreturn, %rax ; syscall. */
+ if ( pc0 == 0x48
+ && pc1 == RT_SIGRETURN_SYSCALL)
+ {
+ ucontext_t *uc_ = (ucontext_t *)frame->sp;
+ st = &uc_->uc_mcontext;
+ }
+ else
+ return _URC_END_OF_STACK;
+
+ frame->pc = (_Unwind_Ptr) st->gregs[REG_RIP];
+ frame->sp = (_Unwind_Ptr) st->gregs[REG_RSP];
+ frame->fp = (_Unwind_Ptr) st->gregs[REG_RBP];
+ return _URC_NO_REASON;
+}
+
+#define MD_DETECT_OUTERMOST_FRAME x86_64_detect_outermost_frame
+
+static _Unwind_Reason_Code
+x86_64_detect_outermost_frame (frame *frame)
+{
+ /* Outermost frame has the frame pointer cleared. */
+ if (frame->fp == 0)
+ return _URC_END_OF_STACK;
+
+ return _URC_NO_REASON;
+}
+
+#endif /* ifdef __x86_64__ */
diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/arch-syscall.h b/sysdeps/unix/sysv/linux/x86_64/x32/arch-syscall.h
index 1dcd6ab..135ef3d 100644
--- a/sysdeps/unix/sysv/linux/x86_64/x32/arch-syscall.h
+++ b/sysdeps/unix/sysv/linux/x86_64/x32/arch-syscall.h
@@ -200,6 +200,7 @@
#define __NR_open 1073741826
#define __NR_open_by_handle_at 1073742128
#define __NR_open_tree 1073742252
+#define __NR_open_tree_attr 1073742291
#define __NR_openat 1073742081
#define __NR_openat2 1073742261
#define __NR_pause 1073741858
diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
index f41ab77..25a39d0 100644
--- a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
@@ -2767,4 +2767,18 @@ GLIBC_2.41 sched_getattr F
GLIBC_2.41 sched_setattr F
GLIBC_2.42 __inet_ntop_chk F
GLIBC_2.42 __inet_pton_chk F
+GLIBC_2.42 cfgetibaud F
+GLIBC_2.42 cfgetispeed F
+GLIBC_2.42 cfgetobaud F
+GLIBC_2.42 cfgetospeed F
+GLIBC_2.42 cfsetbaud F
+GLIBC_2.42 cfsetibaud F
+GLIBC_2.42 cfsetispeed F
+GLIBC_2.42 cfsetobaud F
+GLIBC_2.42 cfsetospeed F
+GLIBC_2.42 cfsetspeed F
GLIBC_2.42 pthread_gettid_np F
+GLIBC_2.42 uabs F
+GLIBC_2.42 uimaxabs F
+GLIBC_2.42 ulabs F
+GLIBC_2.42 ullabs F
diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist
index 14fa3f8..1a1069a 100644
--- a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist
@@ -1278,6 +1278,14 @@ GLIBC_2.41 tanpif32x F
GLIBC_2.41 tanpif64 F
GLIBC_2.41 tanpif64x F
GLIBC_2.41 tanpil F
+GLIBC_2.42 compoundn F
+GLIBC_2.42 compoundnf F
+GLIBC_2.42 compoundnf128 F
+GLIBC_2.42 compoundnf32 F
+GLIBC_2.42 compoundnf32x F
+GLIBC_2.42 compoundnf64 F
+GLIBC_2.42 compoundnf64x F
+GLIBC_2.42 compoundnl F
GLIBC_2.42 pown F
GLIBC_2.42 pownf F
GLIBC_2.42 pownf128 F
@@ -1294,6 +1302,14 @@ GLIBC_2.42 powrf32x F
GLIBC_2.42 powrf64 F
GLIBC_2.42 powrf64x F
GLIBC_2.42 powrl F
+GLIBC_2.42 rootn F
+GLIBC_2.42 rootnf F
+GLIBC_2.42 rootnf128 F
+GLIBC_2.42 rootnf32 F
+GLIBC_2.42 rootnf32x F
+GLIBC_2.42 rootnf64 F
+GLIBC_2.42 rootnf64x F
+GLIBC_2.42 rootnl F
GLIBC_2.42 rsqrt F
GLIBC_2.42 rsqrtf F
GLIBC_2.42 rsqrtf128 F
diff --git a/sysdeps/x86/Makefile b/sysdeps/x86/Makefile
index 01b0192..4fbd48e 100644
--- a/sysdeps/x86/Makefile
+++ b/sysdeps/x86/Makefile
@@ -4,7 +4,13 @@ endif
ifeq ($(subdir),elf)
sysdep_routines += get-cpuid-feature-leaf
-sysdep-dl-routines += dl-get-cpu-features
+sysdep-dl-routines += \
+ dl-get-cpu-features \
+ dl-tlsdesc \
+ tls_get_addr \
+ tlsdesc \
+# sysdep-dl-routines
+
sysdep_headers += \
bits/platform/features.h \
bits/platform/x86.h \
@@ -90,14 +96,22 @@ tst-ifunc-isa-2-ENV = GLIBC_TUNABLES=glibc.cpu.hwcaps=-SSE4_2,-AVX,-AVX2,-AVX512
tst-ifunc-isa-2-static-ENV = $(tst-ifunc-isa-2-ENV)
tst-hwcap-tunables-ARGS = -- $(host-test-program-cmd)
-CFLAGS-tst-gnu2-tls2.c += -msse
+CFLAGS-tst-gnu2-tls2.c += -msse2
CFLAGS-tst-gnu2-tls2mod0.c += -msse2 -mtune=haswell
CFLAGS-tst-gnu2-tls2mod1.c += -msse2 -mtune=haswell
CFLAGS-tst-gnu2-tls2mod2.c += -msse2 -mtune=haswell
-LDFLAGS-tst-gnu2-tls2-x86-noxsave += -Wl,-z,lazy
-LDFLAGS-tst-gnu2-tls2-x86-noxsavec += -Wl,-z,lazy
-LDFLAGS-tst-gnu2-tls2-x86-noxsavexsavec += -Wl,-z,lazy
+LDFLAGS-tst-gnu2-tls2 += -rdynamic
+LDFLAGS-tst-gnu2-tls2mod0.so += -Wl,-z,undefs
+LDFLAGS-tst-gnu2-tls2mod1.so += -Wl,-z,undefs
+LDFLAGS-tst-gnu2-tls2mod2.so += -Wl,-z,undefs
+
+CFLAGS-tst-gnu2-tls2-x86-noxsave.c += -msse2
+CFLAGS-tst-gnu2-tls2-x86-noxsavec.c += -msse2
+CFLAGS-tst-gnu2-tls2-x86-noxsavexsavec.c += -msse2
+LDFLAGS-tst-gnu2-tls2-x86-noxsave += -Wl,-z,lazy -rdynamic
+LDFLAGS-tst-gnu2-tls2-x86-noxsavec += -Wl,-z,lazy -rdynamic
+LDFLAGS-tst-gnu2-tls2-x86-noxsavexsavec += -Wl,-z,lazy -rdynamic
# Test for bug 32810: incorrect XSAVE state size if XSAVEC is disabled
# via tunable.
@@ -113,6 +127,18 @@ $(objpfx)tst-gnu2-tls2-x86-noxsavexsavec.out: \
$(objpfx)tst-gnu2-tls2mod0.so \
$(objpfx)tst-gnu2-tls2mod1.so \
$(objpfx)tst-gnu2-tls2mod2.so
+
+CFLAGS-tst-tls23.c += -msse2
+CFLAGS-tst-tls23-mod.c += -msse2 -mtune=haswell
+
+LDFLAGS-tst-tls23 += -rdynamic
+tst-tls23-mod.so-no-z-defs = yes
+
+$(objpfx)tst-tls23-mod.so: $(libsupport)
+endif
+
+ifeq ($(subdir),gmon)
+CFLAGS-mcount.c += -mgeneral-regs-only
endif
ifeq ($(subdir),math)
diff --git a/sysdeps/x86/configure b/sysdeps/x86/configure
index c7ea9ac..dff26e9 100644
--- a/sysdeps/x86/configure
+++ b/sysdeps/x86/configure
@@ -171,8 +171,12 @@ fi
config_vars="$config_vars
have-x86-isa-level = $libc_cv_have_x86_isa_level"
config_vars="$config_vars
+x86-isa-level-2-or-above = 2 3 4"
+config_vars="$config_vars
x86-isa-level-3-or-above = 3 4"
config_vars="$config_vars
+x86-isa-level-4-or-above = 4"
+config_vars="$config_vars
enable-x86-isa-level = $libc_cv_include_x86_isa_level"
diff --git a/sysdeps/x86/configure.ac b/sysdeps/x86/configure.ac
index 031f917..54960a7 100644
--- a/sysdeps/x86/configure.ac
+++ b/sysdeps/x86/configure.ac
@@ -117,7 +117,9 @@ else
AC_DEFINE_UNQUOTED(MINIMUM_X86_ISA_LEVEL, $libc_cv_have_x86_isa_level)
fi
LIBC_CONFIG_VAR([have-x86-isa-level], [$libc_cv_have_x86_isa_level])
+LIBC_CONFIG_VAR([x86-isa-level-2-or-above], [2 3 4])
LIBC_CONFIG_VAR([x86-isa-level-3-or-above], [3 4])
+LIBC_CONFIG_VAR([x86-isa-level-4-or-above], [4])
LIBC_CONFIG_VAR([enable-x86-isa-level], [$libc_cv_include_x86_isa_level])
dnl Check if TEST_CC supports -mfpmath=387
diff --git a/sysdeps/x86/cpu-features.c b/sysdeps/x86/cpu-features.c
index 6cf7e4c..b7d1506 100644
--- a/sysdeps/x86/cpu-features.c
+++ b/sysdeps/x86/cpu-features.c
@@ -325,13 +325,8 @@ update_active (struct cpu_features *cpu_features)
/* Check if XSAVEC is available. */
if (CPU_FEATURES_CPU_P (cpu_features, XSAVEC))
{
- unsigned int xstate_comp_offsets[32];
- unsigned int xstate_comp_sizes[32];
-#ifdef __x86_64__
- unsigned int xstate_amx_comp_offsets[32];
- unsigned int xstate_amx_comp_sizes[32];
- unsigned int amx_ecx;
-#endif
+ unsigned int xstate_comp_offsets[X86_XSTATE_MAX_ID + 1];
+ unsigned int xstate_comp_sizes[X86_XSTATE_MAX_ID + 1];
unsigned int i;
xstate_comp_offsets[0] = 0;
@@ -339,39 +334,16 @@ update_active (struct cpu_features *cpu_features)
xstate_comp_offsets[2] = 576;
xstate_comp_sizes[0] = 160;
xstate_comp_sizes[1] = 256;
-#ifdef __x86_64__
- xstate_amx_comp_offsets[0] = 0;
- xstate_amx_comp_offsets[1] = 160;
- xstate_amx_comp_offsets[2] = 576;
- xstate_amx_comp_sizes[0] = 160;
- xstate_amx_comp_sizes[1] = 256;
-#endif
- for (i = 2; i < 32; i++)
+ for (i = 2; i <= X86_XSTATE_MAX_ID; i++)
{
if ((FULL_STATE_SAVE_MASK & (1 << i)) != 0)
{
__cpuid_count (0xd, i, eax, ebx, ecx, edx);
-#ifdef __x86_64__
- /* Include this in xsave_state_full_size. */
- amx_ecx = ecx;
- xstate_amx_comp_sizes[i] = eax;
- if ((AMX_STATE_SAVE_MASK & (1 << i)) != 0)
- {
- /* Exclude this from xsave_state_size. */
- ecx = 0;
- xstate_comp_sizes[i] = 0;
- }
- else
-#endif
- xstate_comp_sizes[i] = eax;
+ xstate_comp_sizes[i] = eax;
}
else
{
-#ifdef __x86_64__
- amx_ecx = 0;
- xstate_amx_comp_sizes[i] = 0;
-#endif
ecx = 0;
xstate_comp_sizes[i] = 0;
}
@@ -380,42 +352,32 @@ update_active (struct cpu_features *cpu_features)
{
xstate_comp_offsets[i]
= (xstate_comp_offsets[i - 1]
- + xstate_comp_sizes[i -1]);
+ + xstate_comp_sizes[i - 1]);
if ((ecx & (1 << 1)) != 0)
xstate_comp_offsets[i]
= ALIGN_UP (xstate_comp_offsets[i], 64);
-#ifdef __x86_64__
- xstate_amx_comp_offsets[i]
- = (xstate_amx_comp_offsets[i - 1]
- + xstate_amx_comp_sizes[i - 1]);
- if ((amx_ecx & (1 << 1)) != 0)
- xstate_amx_comp_offsets[i]
- = ALIGN_UP (xstate_amx_comp_offsets[i],
- 64);
-#endif
}
}
/* Use XSAVEC. */
unsigned int size
- = xstate_comp_offsets[31] + xstate_comp_sizes[31];
+ = (xstate_comp_offsets[X86_XSTATE_MAX_ID]
+ + xstate_comp_sizes[X86_XSTATE_MAX_ID]);
if (size)
{
+ size = ALIGN_UP (size + TLSDESC_CALL_REGISTER_SAVE_AREA,
+ 64);
#ifdef __x86_64__
- unsigned int amx_size
- = (xstate_amx_comp_offsets[31]
- + xstate_amx_comp_sizes[31]);
- amx_size
- = ALIGN_UP ((amx_size
- + TLSDESC_CALL_REGISTER_SAVE_AREA),
- 64);
- /* Set TLSDESC state size to the compact AMX
- state size for XSAVEC. */
- _dl_x86_features_tlsdesc_state_size = amx_size;
+ _dl_x86_features_tlsdesc_state_size = size;
+ /* Exclude the AMX space from the start of TILECFG
+ space to the end of TILEDATA space. If CPU
+ doesn't support AMX, TILECFG offset is the same
+ as TILEDATA + 1 offset. Otherwise, they are
+ multiples of 64. */
+ size -= (xstate_comp_offsets[X86_XSTATE_TILEDATA_ID + 1]
+ - xstate_comp_offsets[X86_XSTATE_TILECFG_ID]);
#endif
- cpu_features->xsave_state_size
- = ALIGN_UP (size + TLSDESC_CALL_REGISTER_SAVE_AREA,
- 64);
+ cpu_features->xsave_state_size = size;
CPU_FEATURE_SET (cpu_features, XSAVEC);
}
}
@@ -540,8 +502,8 @@ _Static_assert (((index_arch_Fast_Unaligned_Load
"Incorrect index_arch_Fast_Unaligned_Load");
-/* Intel Family-6 microarch list. */
-enum
+/* Intel microarch list. */
+enum intel_microarch
{
/* Atom processors. */
INTEL_ATOM_BONNELL,
@@ -550,6 +512,7 @@ enum
INTEL_ATOM_GOLDMONT,
INTEL_ATOM_GOLDMONT_PLUS,
INTEL_ATOM_SIERRAFOREST,
+ INTEL_ATOM_CLEARWATERFOREST,
INTEL_ATOM_GRANDRIDGE,
INTEL_ATOM_TREMONT,
@@ -577,7 +540,9 @@ enum
INTEL_BIGCORE_METEORLAKE,
INTEL_BIGCORE_LUNARLAKE,
INTEL_BIGCORE_ARROWLAKE,
+ INTEL_BIGCORE_PANTHERLAKE,
INTEL_BIGCORE_GRANITERAPIDS,
+ INTEL_BIGCORE_DIAMONDRAPIDS,
/* Mixed (bigcore + atom SOC). */
INTEL_MIXED_LAKEFIELD,
@@ -591,7 +556,7 @@ enum
INTEL_UNKNOWN,
};
-static unsigned int
+static enum intel_microarch
intel_get_fam6_microarch (unsigned int model,
__attribute__ ((unused)) unsigned int stepping)
{
@@ -622,6 +587,8 @@ intel_get_fam6_microarch (unsigned int model,
return INTEL_ATOM_GOLDMONT_PLUS;
case 0xAF:
return INTEL_ATOM_SIERRAFOREST;
+ case 0xDD:
+ return INTEL_ATOM_CLEARWATERFOREST;
case 0xB6:
return INTEL_ATOM_GRANDRIDGE;
case 0x86:
@@ -729,8 +696,12 @@ intel_get_fam6_microarch (unsigned int model,
return INTEL_BIGCORE_METEORLAKE;
case 0xbd:
return INTEL_BIGCORE_LUNARLAKE;
+ case 0xb5:
+ case 0xc5:
case 0xc6:
return INTEL_BIGCORE_ARROWLAKE;
+ case 0xCC:
+ return INTEL_BIGCORE_PANTHERLAKE;
case 0xAD:
case 0xAE:
return INTEL_BIGCORE_GRANITERAPIDS;
@@ -794,133 +765,20 @@ init_cpu_features (struct cpu_features *cpu_features)
cpu_features->preferred[index_arch_Avoid_Non_Temporal_Memset]
&= ~bit_arch_Avoid_Non_Temporal_Memset;
+ enum intel_microarch microarch = INTEL_UNKNOWN;
if (family == 0x06)
{
model += extended_model;
- unsigned int microarch
- = intel_get_fam6_microarch (model, stepping);
+ microarch = intel_get_fam6_microarch (model, stepping);
+ /* Disable TSX on some processors to avoid TSX on kernels that
+ weren't updated with the latest microcode package (which
+ disables broken feature by default). */
switch (microarch)
{
- /* Atom / KNL tuning. */
- case INTEL_ATOM_BONNELL:
- /* BSF is slow on Bonnell. */
- cpu_features->preferred[index_arch_Slow_BSF]
- |= bit_arch_Slow_BSF;
- break;
-
- /* Unaligned load versions are faster than SSSE3
- on Airmont, Silvermont, Goldmont, and Goldmont Plus. */
- case INTEL_ATOM_AIRMONT:
- case INTEL_ATOM_SILVERMONT:
- case INTEL_ATOM_GOLDMONT:
- case INTEL_ATOM_GOLDMONT_PLUS:
-
- /* Knights Landing. Enable Silvermont optimizations. */
- case INTEL_KNIGHTS_LANDING:
-
- cpu_features->preferred[index_arch_Fast_Unaligned_Load]
- |= (bit_arch_Fast_Unaligned_Load
- | bit_arch_Fast_Unaligned_Copy
- | bit_arch_Prefer_PMINUB_for_stringop
- | bit_arch_Slow_SSE4_2);
- break;
-
- case INTEL_ATOM_TREMONT:
- /* Enable rep string instructions, unaligned load, unaligned
- copy, pminub and avoid SSE 4.2 on Tremont. */
- cpu_features->preferred[index_arch_Fast_Rep_String]
- |= (bit_arch_Fast_Rep_String
- | bit_arch_Fast_Unaligned_Load
- | bit_arch_Fast_Unaligned_Copy
- | bit_arch_Prefer_PMINUB_for_stringop
- | bit_arch_Slow_SSE4_2);
- break;
-
- /*
- Default tuned Knights microarch.
- case INTEL_KNIGHTS_MILL:
- */
-
- /*
- Default tuned atom microarch.
- case INTEL_ATOM_SIERRAFOREST:
- case INTEL_ATOM_GRANDRIDGE:
- */
-
- /* Bigcore/Default Tuning. */
default:
- default_tuning:
- /* Unknown family 0x06 processors. Assuming this is one
- of Core i3/i5/i7 processors if AVX is available. */
- if (!CPU_FEATURES_CPU_P (cpu_features, AVX))
- break;
-
- enable_modern_features:
- /* Rep string instructions, unaligned load, unaligned copy,
- and pminub are fast on Intel Core i3, i5 and i7. */
- cpu_features->preferred[index_arch_Fast_Rep_String]
- |= (bit_arch_Fast_Rep_String
- | bit_arch_Fast_Unaligned_Load
- | bit_arch_Fast_Unaligned_Copy
- | bit_arch_Prefer_PMINUB_for_stringop);
break;
- case INTEL_BIGCORE_NEHALEM:
- case INTEL_BIGCORE_WESTMERE:
- /* Older CPUs prefer non-temporal stores at lower threshold. */
- cpu_features->cachesize_non_temporal_divisor = 8;
- goto enable_modern_features;
-
- /* Older Bigcore microarch (smaller non-temporal store
- threshold). */
- case INTEL_BIGCORE_SANDYBRIDGE:
- case INTEL_BIGCORE_IVYBRIDGE:
- case INTEL_BIGCORE_HASWELL:
- case INTEL_BIGCORE_BROADWELL:
- cpu_features->cachesize_non_temporal_divisor = 8;
- goto default_tuning;
-
- /* Newer Bigcore microarch (larger non-temporal store
- threshold). */
- case INTEL_BIGCORE_SKYLAKE_AVX512:
- case INTEL_BIGCORE_CANNONLAKE:
- /* Benchmarks indicate non-temporal memset is not
- necessarily profitable on SKX (and in some cases much
- worse). This is likely unique to SKX due its it unique
- mesh interconnect (not present on ICX or BWD). Disable
- non-temporal on all Skylake servers. */
- cpu_features->preferred[index_arch_Avoid_Non_Temporal_Memset]
- |= bit_arch_Avoid_Non_Temporal_Memset;
- /* fallthrough */
- case INTEL_BIGCORE_COMETLAKE:
- case INTEL_BIGCORE_SKYLAKE:
- case INTEL_BIGCORE_KABYLAKE:
- case INTEL_BIGCORE_ICELAKE:
- case INTEL_BIGCORE_TIGERLAKE:
- case INTEL_BIGCORE_ROCKETLAKE:
- case INTEL_BIGCORE_RAPTORLAKE:
- case INTEL_BIGCORE_METEORLAKE:
- case INTEL_BIGCORE_LUNARLAKE:
- case INTEL_BIGCORE_ARROWLAKE:
- case INTEL_BIGCORE_SAPPHIRERAPIDS:
- case INTEL_BIGCORE_EMERALDRAPIDS:
- case INTEL_BIGCORE_GRANITERAPIDS:
- cpu_features->cachesize_non_temporal_divisor = 2;
- goto default_tuning;
-
- /* Default tuned Mixed (bigcore + atom SOC). */
- case INTEL_MIXED_LAKEFIELD:
- case INTEL_MIXED_ALDERLAKE:
- cpu_features->cachesize_non_temporal_divisor = 2;
- goto default_tuning;
- }
-
- /* Disable TSX on some processors to avoid TSX on kernels that
- weren't updated with the latest microcode package (which
- disables broken feature by default). */
- switch (microarch)
- {
case INTEL_BIGCORE_SKYLAKE_AVX512:
/* 0x55 (Skylake-avx512) && stepping <= 5 disable TSX. */
if (stepping <= 5)
@@ -929,38 +787,163 @@ init_cpu_features (struct cpu_features *cpu_features)
case INTEL_BIGCORE_KABYLAKE:
/* NB: Although the errata documents that for model == 0x8e
- (kabylake skylake client), only 0xb stepping or lower are
- impacted, the intention of the errata was to disable TSX on
- all client processors on all steppings. Include 0xc
- stepping which is an Intel Core i7-8665U, a client mobile
- processor. */
+ (kabylake skylake client), only 0xb stepping or lower are
+ impacted, the intention of the errata was to disable TSX on
+ all client processors on all steppings. Include 0xc
+ stepping which is an Intel Core i7-8665U, a client mobile
+ processor. */
if (stepping > 0xc)
break;
/* Fall through. */
case INTEL_BIGCORE_SKYLAKE:
- /* Disable Intel TSX and enable RTM_ALWAYS_ABORT for
- processors listed in:
-
-https://www.intel.com/content/www/us/en/support/articles/000059422/processors.html
- */
- disable_tsx:
- CPU_FEATURE_UNSET (cpu_features, HLE);
- CPU_FEATURE_UNSET (cpu_features, RTM);
- CPU_FEATURE_SET (cpu_features, RTM_ALWAYS_ABORT);
- break;
+ /* Disable Intel TSX and enable RTM_ALWAYS_ABORT for
+ processors listed in:
+
+ https://www.intel.com/content/www/us/en/support/articles/000059422/processors.html
+ */
+disable_tsx:
+ CPU_FEATURE_UNSET (cpu_features, HLE);
+ CPU_FEATURE_UNSET (cpu_features, RTM);
+ CPU_FEATURE_SET (cpu_features, RTM_ALWAYS_ABORT);
+ break;
case INTEL_BIGCORE_HASWELL:
- /* Xeon E7 v3 (model == 0x3f) with stepping >= 4 has working
- TSX. Haswell also include other model numbers that have
- working TSX. */
- if (model == 0x3f && stepping >= 4)
+ /* Xeon E7 v3 (model == 0x3f) with stepping >= 4 has working
+ TSX. Haswell also includes other model numbers that have
+ working TSX. */
+ if (model == 0x3f && stepping >= 4)
break;
- CPU_FEATURE_UNSET (cpu_features, RTM);
- break;
+ CPU_FEATURE_UNSET (cpu_features, RTM);
+ break;
}
}
+ else if (family == 19)
+ switch (model)
+ {
+ case 0x01:
+ microarch = INTEL_BIGCORE_DIAMONDRAPIDS;
+ break;
+
+ default:
+ break;
+ }
+ switch (microarch)
+ {
+ /* Atom / KNL tuning. */
+ case INTEL_ATOM_BONNELL:
+ /* BSF is slow on Bonnell. */
+ cpu_features->preferred[index_arch_Slow_BSF]
+ |= bit_arch_Slow_BSF;
+ break;
+
+ /* Unaligned load versions are faster than SSSE3
+ on Airmont, Silvermont, Goldmont, and Goldmont Plus. */
+ case INTEL_ATOM_AIRMONT:
+ case INTEL_ATOM_SILVERMONT:
+ case INTEL_ATOM_GOLDMONT:
+ case INTEL_ATOM_GOLDMONT_PLUS:
+
+ /* Knights Landing. Enable Silvermont optimizations. */
+ case INTEL_KNIGHTS_LANDING:
+
+ cpu_features->preferred[index_arch_Fast_Unaligned_Load]
+ |= (bit_arch_Fast_Unaligned_Load
+ | bit_arch_Fast_Unaligned_Copy
+ | bit_arch_Prefer_PMINUB_for_stringop
+ | bit_arch_Slow_SSE4_2);
+ break;
+
+ case INTEL_ATOM_TREMONT:
+ /* Enable rep string instructions, unaligned load, unaligned
+ copy, pminub and avoid SSE 4.2 on Tremont. */
+ cpu_features->preferred[index_arch_Fast_Rep_String]
+ |= (bit_arch_Fast_Rep_String
+ | bit_arch_Fast_Unaligned_Load
+ | bit_arch_Fast_Unaligned_Copy
+ | bit_arch_Prefer_PMINUB_for_stringop
+ | bit_arch_Slow_SSE4_2);
+ break;
+
+ /*
+ Default tuned Knights microarch.
+ case INTEL_KNIGHTS_MILL:
+ */
+
+ /*
+ Default tuned atom microarch.
+ case INTEL_ATOM_SIERRAFOREST:
+ case INTEL_ATOM_GRANDRIDGE:
+ case INTEL_ATOM_CLEARWATERFOREST:
+ */
+
+ /* Bigcore/Default Tuning. */
+ default:
+ default_tuning:
+ /* Unknown Intel processors. Assuming this is one of Core
+ i3/i5/i7 processors if AVX is available. */
+ if (!CPU_FEATURES_CPU_P (cpu_features, AVX))
+ break;
+
+ enable_modern_features:
+ /* Rep string instructions, unaligned load, unaligned copy,
+ and pminub are fast on Intel Core i3, i5 and i7. */
+ cpu_features->preferred[index_arch_Fast_Rep_String]
+ |= (bit_arch_Fast_Rep_String
+ | bit_arch_Fast_Unaligned_Load
+ | bit_arch_Fast_Unaligned_Copy
+ | bit_arch_Prefer_PMINUB_for_stringop);
+ break;
+
+ case INTEL_BIGCORE_NEHALEM:
+ case INTEL_BIGCORE_WESTMERE:
+ /* Older CPUs prefer non-temporal stores at lower threshold. */
+ cpu_features->cachesize_non_temporal_divisor = 8;
+ goto enable_modern_features;
+
+ /* Older Bigcore microarch (smaller non-temporal store
+ threshold). */
+ case INTEL_BIGCORE_SANDYBRIDGE:
+ case INTEL_BIGCORE_IVYBRIDGE:
+ case INTEL_BIGCORE_HASWELL:
+ case INTEL_BIGCORE_BROADWELL:
+ cpu_features->cachesize_non_temporal_divisor = 8;
+ goto default_tuning;
+
+ /* Newer Bigcore microarch (larger non-temporal store
+ threshold). */
+ case INTEL_BIGCORE_SKYLAKE_AVX512:
+ case INTEL_BIGCORE_CANNONLAKE:
+ /* Benchmarks indicate non-temporal memset is not
+ necessarily profitable on SKX (and in some cases much
+ worse). This is likely unique to SKX due to its unique
+ mesh interconnect (not present on ICX or BWD). Disable
+ non-temporal on all Skylake servers. */
+ cpu_features->preferred[index_arch_Avoid_Non_Temporal_Memset]
+ |= bit_arch_Avoid_Non_Temporal_Memset;
+ /* fallthrough */
+ case INTEL_BIGCORE_COMETLAKE:
+ case INTEL_BIGCORE_SKYLAKE:
+ case INTEL_BIGCORE_KABYLAKE:
+ case INTEL_BIGCORE_ICELAKE:
+ case INTEL_BIGCORE_TIGERLAKE:
+ case INTEL_BIGCORE_ROCKETLAKE:
+ case INTEL_BIGCORE_RAPTORLAKE:
+ case INTEL_BIGCORE_METEORLAKE:
+ case INTEL_BIGCORE_LUNARLAKE:
+ case INTEL_BIGCORE_ARROWLAKE:
+ case INTEL_BIGCORE_PANTHERLAKE:
+ case INTEL_BIGCORE_SAPPHIRERAPIDS:
+ case INTEL_BIGCORE_EMERALDRAPIDS:
+ case INTEL_BIGCORE_GRANITERAPIDS:
+ case INTEL_BIGCORE_DIAMONDRAPIDS:
+ /* Default tuned Mixed (bigcore + atom SOC). */
+ case INTEL_MIXED_LAKEFIELD:
+ case INTEL_MIXED_ALDERLAKE:
+ cpu_features->cachesize_non_temporal_divisor = 2;
+ goto default_tuning;
+ }
/* Since AVX512ER is unique to Xeon Phi, set Prefer_No_VZEROUPPER
if AVX512ER is available. Don't use AVX512 to avoid lower CPU
@@ -1273,7 +1256,7 @@ no_cpuid:
#endif
if (MINIMUM_X86_ISA_LEVEL >= AVX_X86_ISA_LEVEL
- || (GLRO(dl_x86_cpu_features).xsave_state_size != 0))
+ || cpu_features->xsave_state_size != 0)
{
if (CPU_FEATURE_USABLE_P (cpu_features, XSAVEC))
{
diff --git a/sysdeps/x86/sysdep.h b/sysdeps/x86/sysdep.h
index 541393f..b8e963b 100644
--- a/sysdeps/x86/sysdep.h
+++ b/sysdeps/x86/sysdep.h
@@ -102,6 +102,9 @@
| (1 << X86_XSTATE_ZMM_ID) \
| (1 << X86_XSTATE_APX_F_ID))
+/* The maximum supported xstate ID. */
+# define X86_XSTATE_MAX_ID X86_XSTATE_APX_F_ID
+
/* AMX state mask. */
# define AMX_STATE_SAVE_MASK \
((1 << X86_XSTATE_TILECFG_ID) | (1 << X86_XSTATE_TILEDATA_ID))
@@ -123,6 +126,9 @@
| (1 << X86_XSTATE_K_ID) \
| (1 << X86_XSTATE_ZMM_H_ID))
+/* The maximum supported xstate ID. */
+# define X86_XSTATE_MAX_ID X86_XSTATE_ZMM_H_ID
+
/* States to be included in xsave_state_size. */
# define FULL_STATE_SAVE_MASK STATE_SAVE_MASK
#endif
@@ -177,6 +183,29 @@
#define atom_text_section .section ".text.atom", "ax"
+#ifndef DL_STACK_ALIGNMENT
+/* Due to GCC bug:
+
+ https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58066
+
+ __tls_get_addr may be called with 8-byte/4-byte stack alignment.
+ Although this bug has been fixed in GCC 4.9.4, 5.3 and 6, we can't
+ assume that stack will be always aligned at 16 bytes. */
+# ifdef __x86_64__
+# define DL_STACK_ALIGNMENT 8
+# define MINIMUM_ALIGNMENT 16
+# else
+# define DL_STACK_ALIGNMENT 4
+# endif
+#endif
+
+/* True if _dl_runtime_resolve/_dl_tlsdesc_dynamic should align stack for
+ STATE_SAVE or align stack to MINIMUM_ALIGNMENT bytes before calling
+ _dl_fixup/__tls_get_addr. */
+#define DL_RUNTIME_RESOLVE_REALIGN_STACK \
+ (STATE_SAVE_ALIGNMENT > DL_STACK_ALIGNMENT \
+ || MINIMUM_ALIGNMENT > DL_STACK_ALIGNMENT)
+
#endif /* __ASSEMBLER__ */
#endif /* _X86_SYSDEP_H */
diff --git a/sysdeps/x86/tst-gnu2-tls2-x86-noxsave.c b/sysdeps/x86/tst-gnu2-tls2-x86-noxsave.c
index f0024c1..963c4f3 100644
--- a/sysdeps/x86/tst-gnu2-tls2-x86-noxsave.c
+++ b/sysdeps/x86/tst-gnu2-tls2-x86-noxsave.c
@@ -1 +1 @@
-#include <elf/tst-gnu2-tls2.c>
+#include <tst-gnu2-tls2.c>
diff --git a/sysdeps/x86/tst-gnu2-tls2-x86-noxsavec.c b/sysdeps/x86/tst-gnu2-tls2-x86-noxsavec.c
index f0024c1..963c4f3 100644
--- a/sysdeps/x86/tst-gnu2-tls2-x86-noxsavec.c
+++ b/sysdeps/x86/tst-gnu2-tls2-x86-noxsavec.c
@@ -1 +1 @@
-#include <elf/tst-gnu2-tls2.c>
+#include <tst-gnu2-tls2.c>
diff --git a/sysdeps/x86/tst-gnu2-tls2-x86-noxsavexsavec.c b/sysdeps/x86/tst-gnu2-tls2-x86-noxsavexsavec.c
index f0024c1..963c4f3 100644
--- a/sysdeps/x86/tst-gnu2-tls2-x86-noxsavexsavec.c
+++ b/sysdeps/x86/tst-gnu2-tls2-x86-noxsavexsavec.c
@@ -1 +1 @@
-#include <elf/tst-gnu2-tls2.c>
+#include <tst-gnu2-tls2.c>
diff --git a/sysdeps/x86/tst-gnu2-tls2.c b/sysdeps/x86/tst-gnu2-tls2.c
index de900a4..b3195ff 100644
--- a/sysdeps/x86/tst-gnu2-tls2.c
+++ b/sysdeps/x86/tst-gnu2-tls2.c
@@ -1,20 +1,26 @@
-#ifndef __x86_64__
-#include <sys/platform/x86.h>
+#ifndef TEST_AMX
+# ifndef __x86_64__
+# include <sys/platform/x86.h>
-#define IS_SUPPORTED() CPU_FEATURE_ACTIVE (SSE2)
-#endif
+# define IS_SUPPORTED() CPU_FEATURE_ACTIVE (SSE2)
+# endif
-/* Clear XMM0...XMM7 */
-#define PREPARE_MALLOC() \
-{ \
- asm volatile ("xorps %%xmm0, %%xmm0" : : : "xmm0" ); \
- asm volatile ("xorps %%xmm1, %%xmm1" : : : "xmm1" ); \
- asm volatile ("xorps %%xmm2, %%xmm2" : : : "xmm2" ); \
- asm volatile ("xorps %%xmm3, %%xmm3" : : : "xmm3" ); \
- asm volatile ("xorps %%xmm4, %%xmm4" : : : "xmm4" ); \
- asm volatile ("xorps %%xmm5, %%xmm5" : : : "xmm5" ); \
- asm volatile ("xorps %%xmm6, %%xmm6" : : : "xmm6" ); \
- asm volatile ("xorps %%xmm7, %%xmm7" : : : "xmm7" ); \
+/* Set XMM0...XMM7 to all 1s. */
+# define PREPARE_MALLOC() \
+{ \
+ asm volatile ("pcmpeqd %%xmm0, %%xmm0" : : : "xmm0" ); \
+ asm volatile ("pcmpeqd %%xmm1, %%xmm1" : : : "xmm1" ); \
+ asm volatile ("pcmpeqd %%xmm2, %%xmm2" : : : "xmm2" ); \
+ asm volatile ("pcmpeqd %%xmm3, %%xmm3" : : : "xmm3" ); \
+ asm volatile ("pcmpeqd %%xmm4, %%xmm4" : : : "xmm4" ); \
+ asm volatile ("pcmpeqd %%xmm5, %%xmm5" : : : "xmm5" ); \
+ asm volatile ("pcmpeqd %%xmm6, %%xmm6" : : : "xmm6" ); \
+ asm volatile ("pcmpeqd %%xmm7, %%xmm7" : : : "xmm7" ); \
}
+#endif
#include <elf/tst-gnu2-tls2.c>
+
+#ifndef TEST_AMX
+v2di v1, v2, v3;
+#endif
diff --git a/sysdeps/x86/tst-gnu2-tls2.h b/sysdeps/x86/tst-gnu2-tls2.h
new file mode 100644
index 0000000..fdbb565
--- /dev/null
+++ b/sysdeps/x86/tst-gnu2-tls2.h
@@ -0,0 +1,37 @@
+/* Test TLSDESC relocation, x86 version.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#ifndef TEST_AMX
+# include <support/check.h>
+
+typedef long long v2di __attribute__((vector_size(16)));
+extern v2di v1, v2, v3;
+
+# define BEFORE_TLSDESC_CALL() \
+ v1 = __extension__(v2di){0, 0}; \
+ v2 = __extension__(v2di){0, 0};
+
+# define AFTER_TLSDESC_CALL() \
+ v3 = __extension__(v2di){0, 0}; \
+ asm volatile ("" : "+x" (v3)); \
+ union { v2di x; long long a[2]; } u; \
+ u.x = v3; \
+ TEST_VERIFY_EXIT (u.a[0] == 0 && u.a[1] == 0);
+#endif
+
+#include <elf/tst-gnu2-tls2.h>
diff --git a/sysdeps/x86/tst-tls23.c b/sysdeps/x86/tst-tls23.c
new file mode 100644
index 0000000..6130d91
--- /dev/null
+++ b/sysdeps/x86/tst-tls23.c
@@ -0,0 +1,22 @@
+#ifndef __x86_64__
+#include <sys/platform/x86.h>
+
+#define IS_SUPPORTED() CPU_FEATURE_ACTIVE (SSE2)
+#endif
+
+/* Set XMM0...XMM7 to all 1s. */
+#define PREPARE_MALLOC() \
+{ \
+ asm volatile ("pcmpeqd %%xmm0, %%xmm0" : : : "xmm0" ); \
+ asm volatile ("pcmpeqd %%xmm1, %%xmm1" : : : "xmm1" ); \
+ asm volatile ("pcmpeqd %%xmm2, %%xmm2" : : : "xmm2" ); \
+ asm volatile ("pcmpeqd %%xmm3, %%xmm3" : : : "xmm3" ); \
+ asm volatile ("pcmpeqd %%xmm4, %%xmm4" : : : "xmm4" ); \
+ asm volatile ("pcmpeqd %%xmm5, %%xmm5" : : : "xmm5" ); \
+ asm volatile ("pcmpeqd %%xmm6, %%xmm6" : : : "xmm6" ); \
+ asm volatile ("pcmpeqd %%xmm7, %%xmm7" : : : "xmm7" ); \
+}
+
+#include <elf/tst-tls23.c>
+
+v2di v1, v2, v3;
diff --git a/sysdeps/x86/tst-tls23.h b/sysdeps/x86/tst-tls23.h
new file mode 100644
index 0000000..21cee4c
--- /dev/null
+++ b/sysdeps/x86/tst-tls23.h
@@ -0,0 +1,35 @@
+/* Test that __tls_get_addr preserves XMM registers.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <support/check.h>
+
+typedef long long v2di __attribute__((vector_size(16)));
+extern v2di v1, v2, v3;
+
+#define BEFORE_TLS_CALL() \
+ v1 = __extension__(v2di){0, 0}; \
+ v2 = __extension__(v2di){0, 0};
+
+#define AFTER_TLS_CALL() \
+ v3 = __extension__(v2di){0, 0}; \
+ asm volatile ("" : "+x" (v3)); \
+ union { v2di x; long long a[2]; } u; \
+ u.x = v3; \
+ TEST_VERIFY_EXIT (u.a[0] == 0 && u.a[1] == 0);
+
+#include <elf/tst-tls23.h>
diff --git a/sysdeps/x86_64/Makefile b/sysdeps/x86_64/Makefile
index 9d31685..8cace35 100644
--- a/sysdeps/x86_64/Makefile
+++ b/sysdeps/x86_64/Makefile
@@ -11,6 +11,7 @@ endif
ifeq ($(subdir),csu)
gen-as-const-headers += link-defines.sym
+gen-as-const-headers += tlsdesc.sym rtld-offsets.sym
endif
ifeq ($(subdir),gmon)
@@ -19,6 +20,10 @@ sysdep_routines += _mcount
# recursive calls when ENTRY is used. Just copy the normal static
# object.
sysdep_noprof += _mcount
+
+ifeq (yes,$(have-x86-apx))
+CFLAGS-mcount.c += -mno-apxf
+endif
endif
ifeq ($(subdir),string)
@@ -41,9 +46,6 @@ ifeq ($(subdir),elf)
CFLAGS-.os += $(if $(filter $(@F),$(patsubst %,%.os,$(all-rtld-routines))),\
-mno-mmx)
-sysdep-dl-routines += tlsdesc dl-tlsdesc tls_get_addr
-
-tests += ifuncmain8
modules-names += ifuncmod8
$(objpfx)ifuncmain8: $(objpfx)ifuncmod8.so
@@ -142,7 +144,6 @@ CFLAGS-tst-avxmod.c += $(AVX-CFLAGS)
AVX512-CFLAGS = -mavx512f
CFLAGS-tst-audit10-aux.c += $(AVX512-CFLAGS)
CFLAGS-tst-auditmod10a.c += $(AVX512-CFLAGS)
-CFLAGS-tst-auditmod10b.c += $(AVX512-CFLAGS)
CFLAGS-tst-avx512-aux.c += $(AVX512-CFLAGS)
CFLAGS-tst-avx512mod.c += $(AVX512-CFLAGS)
@@ -215,11 +216,25 @@ $(objpfx)tst-plt-rewrite2: $(objpfx)tst-plt-rewritemod2.so
endif
test-internal-extras += tst-gnu2-tls2mod1
-endif # $(subdir) == elf
-ifeq ($(subdir),csu)
-gen-as-const-headers += tlsdesc.sym rtld-offsets.sym
-endif
+tests-special += $(objpfx)check-rtld.out
+
+$(objpfx)rtld.reloc: $(objpfx)rtld.os
+ @rm -f $@T
+ LC_ALL=C $(READELF) -rW $< > $@T
+ test -s $@T
+ mv -f $@T $@
+common-generated += $(objpfx)rtld.reloc
+
+# Verify that there are no run-time relocations against __ehdr_start nor
+# _end.
+$(objpfx)check-rtld.out: $(objpfx)rtld.reloc
+ LC_ALL=C; \
+ if grep -E "R_X86_64_64.*(__ehdr_start|_end)" $^ > $@; \
+ then false; else true; fi; \
+ $(evaluate-test)
+generated += check-rtld.out
+endif # $(subdir) == elf
ifeq ($(subdir),wcsmbs)
@@ -251,6 +266,15 @@ endif
ifneq ($(enable-cet),no)
+# Add -fcf-protection to CFLAGS when CET is enabled.
+CFLAGS-.o += -fcf-protection
+CFLAGS-.os += -fcf-protection
+CFLAGS-.op += -fcf-protection
+CFLAGS-.oS += -fcf-protection
+
+# Compile assembly codes with <cet.h> when CET is enabled.
+asm-CPPFLAGS += -fcf-protection -include cet.h
+
ifeq ($(subdir),elf)
sysdep-dl-routines += dl-cet
@@ -443,18 +467,7 @@ $(objpfx)tst-shstk-legacy-1g.out: \
$(..)/sysdeps/x86_64/tst-shstk-legacy-1g.sh $(objpfx)tst-shstk-legacy-1g
$(SHELL) $< $(common-objpfx) '$(test-program-prefix)' 2> $@; \
$(evaluate-test)
-endif
-# Add -fcf-protection to CFLAGS when CET is enabled.
-CFLAGS-.o += -fcf-protection
-CFLAGS-.os += -fcf-protection
-CFLAGS-.op += -fcf-protection
-CFLAGS-.oS += -fcf-protection
-
-# Compile assembly codes with <cet.h> when CET is enabled.
-asm-CPPFLAGS += -fcf-protection -include cet.h
-
-ifeq ($(subdir),elf)
ifeq (yes,$(build-shared))
tests-special += $(objpfx)check-cet.out
endif
diff --git a/sysdeps/x86_64/configure b/sysdeps/x86_64/configure
index bbf520b..32324f6 100644
--- a/sysdeps/x86_64/configure
+++ b/sysdeps/x86_64/configure
@@ -289,6 +289,8 @@ fi
config_vars="$config_vars
have-x86-apx = $libc_cv_x86_have_apx"
+libc_cv_support_sframe=yes
+
test -n "$critic_missing" && as_fn_error $? "
*** $critic_missing" "$LINENO" 5
diff --git a/sysdeps/x86_64/configure.ac b/sysdeps/x86_64/configure.ac
index 4a3f7f4..a00958e 100644
--- a/sysdeps/x86_64/configure.ac
+++ b/sysdeps/x86_64/configure.ac
@@ -104,5 +104,7 @@ if test $libc_cv_x86_have_apx = yes; then
fi
LIBC_CONFIG_VAR([have-x86-apx], [$libc_cv_x86_have_apx])
+libc_cv_support_sframe=yes
+
test -n "$critic_missing" && AC_MSG_ERROR([
*** $critic_missing])
diff --git a/sysdeps/x86_64/dl-tlsdesc.S b/sysdeps/x86_64/dl-tlsdesc.S
index d1bb125..9a55fc5 100644
--- a/sysdeps/x86_64/dl-tlsdesc.S
+++ b/sysdeps/x86_64/dl-tlsdesc.S
@@ -22,7 +22,6 @@
#include <features-offsets.h>
#include <isa-level.h>
#include "tlsdesc.h"
-#include "dl-trampoline-save.h"
/* Area on stack to save and restore registers used for parameter
passing when calling _dl_tlsdesc_dynamic. */
diff --git a/sysdeps/x86_64/dl-trampoline.S b/sysdeps/x86_64/dl-trampoline.S
index a055722..ac85f96 100644
--- a/sysdeps/x86_64/dl-trampoline.S
+++ b/sysdeps/x86_64/dl-trampoline.S
@@ -22,7 +22,6 @@
#include <features-offsets.h>
#include <link-defines.h>
#include <isa-level.h>
-#include "dl-trampoline-save.h"
/* Area on stack to save and restore registers used for parameter
passing when calling _dl_fixup. */
diff --git a/sysdeps/x86_64/fpu/math-use-builtins-trunc.h b/sysdeps/x86_64/fpu/math-use-builtins-trunc.h
new file mode 100644
index 0000000..c2387eb
--- /dev/null
+++ b/sysdeps/x86_64/fpu/math-use-builtins-trunc.h
@@ -0,0 +1,9 @@
+#ifdef __SSE4_1__
+# define USE_TRUNC_BUILTIN 1
+# define USE_TRUNCF_BUILTIN 1
+#else
+# define USE_TRUNC_BUILTIN 0
+# define USE_TRUNCF_BUILTIN 0
+#endif
+#define USE_TRUNCL_BUILTIN 0
+#define USE_TRUNCF128_BUILTIN 0
diff --git a/sysdeps/x86_64/fpu/multiarch/Makefile b/sysdeps/x86_64/fpu/multiarch/Makefile
index 3403422..708b142 100644
--- a/sysdeps/x86_64/fpu/multiarch/Makefile
+++ b/sysdeps/x86_64/fpu/multiarch/Makefile
@@ -26,6 +26,14 @@ CFLAGS-s_sinf-fma.c = -mfma -mavx2
CFLAGS-s_cosf-fma.c = -mfma -mavx2
CFLAGS-s_sincosf-fma.c = -mfma -mavx2
+# Check if ISA level is 2 or above.
+ifeq (,$(filter $(have-x86-isa-level),$(x86-isa-level-2-or-above)))
+sysdep_calls += \
+ s_modf-sse4_1 \
+ s_modff-sse4_1 \
+# sysdep_calls
+endif
+
# Check if ISA level is 3 or above.
ifneq (,$(filter $(have-x86-isa-level),$(x86-isa-level-3-or-above)))
libm-sysdep_routines += \
@@ -43,6 +51,10 @@ libm-sysdep_routines += \
s_truncf-avx \
# libm-sysdep_routines
else
+sysdep_calls += \
+ s_modf-avx \
+ s_modff-avx \
+# sysdep_calls
ifeq (no,$(have-x86-apx))
libm-sysdep_routines += \
e_asin-fma4 \
@@ -121,6 +133,11 @@ libm-sysdep_routines += \
s_truncf-c \
# libm-sysdep_routines
endif
+
+# $(sysdep_calls) functions are built both for libc and libm. While the
+# libc objects have the prefix s_, the libm ones are prefixed with m_.
+sysdep_routines += $(sysdep_calls)
+libm-sysdep_routines += $(sysdep_calls:s_%=m_%)
endif
CFLAGS-e_asin-fma4.c = -mfma4
@@ -140,6 +157,12 @@ CFLAGS-s_atan-avx.c = -msse2avx -DSSE2AVX
CFLAGS-s_sin-avx.c = -msse2avx -DSSE2AVX
CFLAGS-s_tan-avx.c = -msse2avx -DSSE2AVX
CFLAGS-s_sincos-avx.c = -msse2avx -DSSE2AVX
+
+CFLAGS-s_modf-sse4_1.c = -msse4.1 -fno-builtin-modff32x -fno-builtin-modff64
+CFLAGS-s_modff-sse4_1.c = -msse4.1 -fno-builtin-modff32
+
+CFLAGS-s_modf-avx.c = -mavx -fno-builtin-modff32x -fno-builtin-modff64
+CFLAGS-s_modff-avx.c = -mavx -fno-builtin-modff32
endif
ifeq ($(subdir),mathvec)
diff --git a/sysdeps/x86_64/fpu/multiarch/ifunc-sse4_1-avx.h b/sysdeps/x86_64/fpu/multiarch/ifunc-sse4_1-avx.h
new file mode 100644
index 0000000..071595f
--- /dev/null
+++ b/sysdeps/x86_64/fpu/multiarch/ifunc-sse4_1-avx.h
@@ -0,0 +1,41 @@
+/* Common definition for ifunc selections optimized with SSE4.1 and AVX.
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <init-arch.h>
+
+extern __typeof (REDIRECT_NAME) OPTIMIZE (sse2) attribute_hidden;
+extern __typeof (REDIRECT_NAME) OPTIMIZE (sse41) attribute_hidden;
+extern __typeof (REDIRECT_NAME) OPTIMIZE (avx) attribute_hidden;
+
+static inline void *
+IFUNC_SELECTOR (void)
+{
+ const struct cpu_features* cpu_features = __get_cpu_features ();
+
+ if (CPU_FEATURE_USABLE_P (cpu_features, AVX))
+ return OPTIMIZE (avx);
+
+#if MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL
+ return OPTIMIZE (sse41);
+#else
+ if (CPU_FEATURE_USABLE_P (cpu_features, SSE4_1))
+ return OPTIMIZE (sse41);
+
+ return OPTIMIZE (sse2);
+#endif
+}
diff --git a/sysdeps/x86_64/fpu/multiarch/s_modf-avx.c b/sysdeps/x86_64/fpu/multiarch/s_modf-avx.c
new file mode 100644
index 0000000..ab4f03d
--- /dev/null
+++ b/sysdeps/x86_64/fpu/multiarch/s_modf-avx.c
@@ -0,0 +1,3 @@
+#define __modf __modf_avx
+
+#include <sysdeps/ieee754/dbl-64/s_modf.c>
diff --git a/sysdeps/x86_64/fpu/multiarch/s_modf-sse4_1.c b/sysdeps/x86_64/fpu/multiarch/s_modf-sse4_1.c
new file mode 100644
index 0000000..00aa8cd
--- /dev/null
+++ b/sysdeps/x86_64/fpu/multiarch/s_modf-sse4_1.c
@@ -0,0 +1,3 @@
+#define __modf __modf_sse41
+
+#include <sysdeps/ieee754/dbl-64/s_modf.c>
diff --git a/sysdeps/x86_64/fpu/multiarch/s_modf.c b/sysdeps/x86_64/fpu/multiarch/s_modf.c
new file mode 100644
index 0000000..e365bfc
--- /dev/null
+++ b/sysdeps/x86_64/fpu/multiarch/s_modf.c
@@ -0,0 +1,41 @@
+/* Multiple versions of modf
+ Copyright (C) 2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <sysdeps/x86/isa-level.h>
+#if MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL
+# define NO_MATH_REDIRECT
+# include <libm-alias-double.h>
+
+# define modf __redirect_modf
+# define __modf __redirect___modf
+# include <math.h>
+# undef modf
+# undef __modf
+
+# define SYMBOL_NAME modf
+# include "ifunc-sse4_1-avx.h"
+
+libc_ifunc_redirected (__redirect_modf, __modf, IFUNC_SELECTOR ());
+libm_alias_double (__modf, modf)
+# if MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL
+# define __modf __modf_sse41
+# else
+# define __modf __modf_sse2
+# endif
+#endif
+#include <sysdeps/ieee754/dbl-64/s_modf.c>
diff --git a/sysdeps/x86_64/fpu/multiarch/s_modff-avx.c b/sysdeps/x86_64/fpu/multiarch/s_modff-avx.c
new file mode 100644
index 0000000..07cb9c1
--- /dev/null
+++ b/sysdeps/x86_64/fpu/multiarch/s_modff-avx.c
@@ -0,0 +1,3 @@
+#define __modff __modff_avx
+
+#include <sysdeps/ieee754/flt-32/s_modff.c>
diff --git a/sysdeps/x86_64/fpu/multiarch/s_modff-sse4_1.c b/sysdeps/x86_64/fpu/multiarch/s_modff-sse4_1.c
new file mode 100644
index 0000000..060c5e3
--- /dev/null
+++ b/sysdeps/x86_64/fpu/multiarch/s_modff-sse4_1.c
@@ -0,0 +1,3 @@
+#define __modff __modff_sse41
+
+#include <sysdeps/ieee754/flt-32/s_modff.c>
diff --git a/sysdeps/x86_64/dl-trampoline-save.h b/sysdeps/x86_64/fpu/multiarch/s_modff.c
index 761128d..a4b5429 100644
--- a/sysdeps/x86_64/dl-trampoline-save.h
+++ b/sysdeps/x86_64/fpu/multiarch/s_modff.c
@@ -1,5 +1,5 @@
-/* x86-64 PLT trampoline register save macros.
- Copyright (C) 2024-2025 Free Software Foundation, Inc.
+/* Multiple versions of modff
+ Copyright (C) 2025 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -16,19 +16,26 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
-#ifndef DL_STACK_ALIGNMENT
-/* Due to GCC bug:
+#include <sysdeps/x86/isa-level.h>
+#if MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL
+# define NO_MATH_REDIRECT
+# include <libm-alias-float.h>
- https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58066
+# define modff __redirect_modff
+# define __modff __redirect___modff
+# include <math.h>
+# undef modff
+# undef __modff
- __tls_get_addr may be called with 8-byte stack alignment. Although
- this bug has been fixed in GCC 4.9.4, 5.3 and 6, we can't assume
- that stack will be always aligned at 16 bytes. */
-# define DL_STACK_ALIGNMENT 8
-#endif
+# define SYMBOL_NAME modff
+# include "ifunc-sse4_1-avx.h"
-/* True if _dl_runtime_resolve should align stack for STATE_SAVE or align
- stack to 16 bytes before calling _dl_fixup. */
-#define DL_RUNTIME_RESOLVE_REALIGN_STACK \
- (STATE_SAVE_ALIGNMENT > DL_STACK_ALIGNMENT \
- || 16 > DL_STACK_ALIGNMENT)
+libc_ifunc_redirected (__redirect_modff, __modff, IFUNC_SELECTOR ());
+libm_alias_float (__modf, modf)
+# if MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL
+# define __modff __modff_sse41
+# else
+# define __modff __modff_sse2
+# endif
+#endif
+#include <sysdeps/ieee754/flt-32/s_modff.c>
diff --git a/sysdeps/x86_64/multiarch/ifunc-impl-list.c b/sysdeps/x86_64/multiarch/ifunc-impl-list.c
index a834977..c2dcadd 100644
--- a/sysdeps/x86_64/multiarch/ifunc-impl-list.c
+++ b/sysdeps/x86_64/multiarch/ifunc-impl-list.c
@@ -922,7 +922,7 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array,
(CPU_FEATURE_USABLE (AVX2)
&& CPU_FEATURE_USABLE (BMI2)),
__wcsncpy_avx2)
- X86_IFUNC_IMPL_ADD_V2 (array, i, wcpncpy,
+ X86_IFUNC_IMPL_ADD_V2 (array, i, wcsncpy,
1,
__wcsncpy_generic))
@@ -952,7 +952,7 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array,
(CPU_FEATURE_USABLE (AVX2)
&& CPU_FEATURE_USABLE (BMI2)),
__wcpncpy_avx2)
- X86_IFUNC_IMPL_ADD_V2 (array, i, wcsncpy,
+ X86_IFUNC_IMPL_ADD_V2 (array, i, wcpncpy,
1,
__wcpncpy_generic))
diff --git a/sysdeps/x86_64/tst-auditmod10b.c b/sysdeps/x86_64/tst-auditmod10b.c
index 6eb21b6..0b994ef 100644
--- a/sysdeps/x86_64/tst-auditmod10b.c
+++ b/sysdeps/x86_64/tst-auditmod10b.c
@@ -125,7 +125,6 @@ la_symbind64 (Elf64_Sym *sym, unsigned int ndx, uintptr_t *refcook,
#include <tst-audit.h>
-#ifdef __AVX512F__
#include <immintrin.h>
#include <cpuid.h>
@@ -148,9 +147,37 @@ check_avx512 (void)
return (eax & 0xe6) == 0xe6;
}
-#else
-#include <emmintrin.h>
-#endif
+void
+__attribute__ ((target ("avx512f")))
+pltenter_avx512f (La_regs *regs, long int *framesizep)
+{
+ __m512i zero = _mm512_setzero_si512 ();
+ if (memcmp (&regs->lr_vector[0], &zero, sizeof (zero))
+ || memcmp (&regs->lr_vector[1], &zero, sizeof (zero))
+ || memcmp (&regs->lr_vector[2], &zero, sizeof (zero))
+ || memcmp (&regs->lr_vector[3], &zero, sizeof (zero))
+ || memcmp (&regs->lr_vector[4], &zero, sizeof (zero))
+ || memcmp (&regs->lr_vector[5], &zero, sizeof (zero))
+ || memcmp (&regs->lr_vector[6], &zero, sizeof (zero))
+ || memcmp (&regs->lr_vector[7], &zero, sizeof (zero)))
+ abort ();
+
+ for (int i = 0; i < 8; i++)
+ regs->lr_vector[i].zmm[0]
+ = (La_x86_64_zmm) _mm512_set1_epi64 (i + 1);
+
+ __m512i zmm = _mm512_set1_epi64 (-1);
+ asm volatile ("vmovdqa64 %0, %%zmm0" : : "x" (zmm) : "xmm0" );
+ asm volatile ("vmovdqa64 %0, %%zmm1" : : "x" (zmm) : "xmm1" );
+ asm volatile ("vmovdqa64 %0, %%zmm2" : : "x" (zmm) : "xmm2" );
+ asm volatile ("vmovdqa64 %0, %%zmm3" : : "x" (zmm) : "xmm3" );
+ asm volatile ("vmovdqa64 %0, %%zmm4" : : "x" (zmm) : "xmm4" );
+ asm volatile ("vmovdqa64 %0, %%zmm5" : : "x" (zmm) : "xmm5" );
+ asm volatile ("vmovdqa64 %0, %%zmm6" : : "x" (zmm) : "xmm6" );
+ asm volatile ("vmovdqa64 %0, %%zmm7" : : "x" (zmm) : "xmm7" );
+
+ *framesizep = 1024;
+}
ElfW(Addr)
pltenter (ElfW(Sym) *sym, unsigned int ndx, uintptr_t *refcook,
@@ -160,39 +187,33 @@ pltenter (ElfW(Sym) *sym, unsigned int ndx, uintptr_t *refcook,
printf ("pltenter: symname=%s, st_value=%#lx, ndx=%u, flags=%u\n",
symname, (long int) sym->st_value, ndx, *flags);
-#ifdef __AVX512F__
if (check_avx512 () && strcmp (symname, "audit_test") == 0)
+ pltenter_avx512f (regs, framesizep);
+
+ return sym->st_value;
+}
+
+void
+__attribute__ ((target ("avx512f")))
+pltexit_avx512f (const La_regs *inregs, La_retval *outregs)
+{
+ __m512i zero = _mm512_setzero_si512 ();
+ if (memcmp (&outregs->lrv_vector0, &zero, sizeof (zero)))
+ abort ();
+
+ for (int i = 0; i < 8; i++)
{
- __m512i zero = _mm512_setzero_si512 ();
- if (memcmp (&regs->lr_vector[0], &zero, sizeof (zero))
- || memcmp (&regs->lr_vector[1], &zero, sizeof (zero))
- || memcmp (&regs->lr_vector[2], &zero, sizeof (zero))
- || memcmp (&regs->lr_vector[3], &zero, sizeof (zero))
- || memcmp (&regs->lr_vector[4], &zero, sizeof (zero))
- || memcmp (&regs->lr_vector[5], &zero, sizeof (zero))
- || memcmp (&regs->lr_vector[6], &zero, sizeof (zero))
- || memcmp (&regs->lr_vector[7], &zero, sizeof (zero)))
- abort ();
-
- for (int i = 0; i < 8; i++)
- regs->lr_vector[i].zmm[0]
- = (La_x86_64_zmm) _mm512_set1_epi64 (i + 1);
-
- __m512i zmm = _mm512_set1_epi64 (-1);
- asm volatile ("vmovdqa64 %0, %%zmm0" : : "x" (zmm) : "xmm0" );
- asm volatile ("vmovdqa64 %0, %%zmm1" : : "x" (zmm) : "xmm1" );
- asm volatile ("vmovdqa64 %0, %%zmm2" : : "x" (zmm) : "xmm2" );
- asm volatile ("vmovdqa64 %0, %%zmm3" : : "x" (zmm) : "xmm3" );
- asm volatile ("vmovdqa64 %0, %%zmm4" : : "x" (zmm) : "xmm4" );
- asm volatile ("vmovdqa64 %0, %%zmm5" : : "x" (zmm) : "xmm5" );
- asm volatile ("vmovdqa64 %0, %%zmm6" : : "x" (zmm) : "xmm6" );
- asm volatile ("vmovdqa64 %0, %%zmm7" : : "x" (zmm) : "xmm7" );
-
- *framesizep = 1024;
+ __m512i zmm = _mm512_set1_epi64 (i + 1);
+ if (memcmp (&inregs->lr_vector[i], &zmm, sizeof (zmm)) != 0)
+ abort ();
}
-#endif
- return sym->st_value;
+ outregs->lrv_vector0.zmm[0]
+ = (La_x86_64_zmm) _mm512_set1_epi64 (0x12349876);
+
+ __m512i zmm = _mm512_set1_epi64 (-1);
+ asm volatile ("vmovdqa64 %0, %%zmm0" : : "x" (zmm) : "xmm0" );
+ asm volatile ("vmovdqa64 %0, %%zmm1" : : "x" (zmm) : "xmm1" );
}
unsigned int
@@ -204,28 +225,8 @@ pltexit (ElfW(Sym) *sym, unsigned int ndx, uintptr_t *refcook,
symname, (long int) sym->st_value, ndx,
(ptrdiff_t) outregs->int_retval);
-#ifdef __AVX512F__
if (check_avx512 () && strcmp (symname, "audit_test") == 0)
- {
- __m512i zero = _mm512_setzero_si512 ();
- if (memcmp (&outregs->lrv_vector0, &zero, sizeof (zero)))
- abort ();
-
- for (int i = 0; i < 8; i++)
- {
- __m512i zmm = _mm512_set1_epi64 (i + 1);
- if (memcmp (&inregs->lr_vector[i], &zmm, sizeof (zmm)) != 0)
- abort ();
- }
-
- outregs->lrv_vector0.zmm[0]
- = (La_x86_64_zmm) _mm512_set1_epi64 (0x12349876);
-
- __m512i zmm = _mm512_set1_epi64 (-1);
- asm volatile ("vmovdqa64 %0, %%zmm0" : : "x" (zmm) : "xmm0" );
- asm volatile ("vmovdqa64 %0, %%zmm1" : : "x" (zmm) : "xmm1" );
- }
-#endif
+ pltexit_avx512f (inregs, outregs);
return 0;
}
diff --git a/termios/Makefile b/termios/Makefile
index 0807542..1e23608 100644
--- a/termios/Makefile
+++ b/termios/Makefile
@@ -22,11 +22,33 @@ subdir := termios
include ../Makeconfig
-headers := termios.h bits/termios.h sys/ttydefaults.h sys/termios.h \
- sys/ttychars.h
-
-routines := speed cfsetspeed tcsetattr tcgetattr tcgetpgrp tcsetpgrp \
- tcdrain tcflow tcflush tcsendbrk cfmakeraw tcgetsid
+headers := \
+ bits/termios-baud.h \
+ bits/termios.h \
+ sys/termios.h \
+ sys/ttychars.h \
+ sys/ttydefaults.h \
+ termios.h \
+ # headers
+
+routines := \
+ baud \
+ cfmakeraw \
+ cfsetbaud \
+ cfsetspeed \
+ isatty \
+ isatty_nostatus \
+ speed \
+ tcdrain \
+ tcflow \
+ tcflush \
+ tcgetattr \
+ tcgetpgrp \
+ tcgetsid \
+ tcsendbrk \
+ tcsetattr \
+ tcsetpgrp \
+ # routines
include ../Rules
diff --git a/termios/Versions b/termios/Versions
index 711ed03..03e2063 100644
--- a/termios/Versions
+++ b/termios/Versions
@@ -3,6 +3,9 @@ libc {
# c*
cfgetispeed; cfgetospeed; cfmakeraw; cfsetispeed; cfsetospeed; cfsetspeed;
+ # i*
+ isatty;
+
# t*
tcdrain; tcflow; tcflush; tcgetattr; tcgetpgrp; tcsendbreak; tcsetattr;
tcsetpgrp;
@@ -11,4 +14,8 @@ libc {
# t*
tcgetsid;
}
+ GLIBC_2.42 {
+ # cf*baud
+ cfgetibaud; cfgetobaud; cfsetibaud; cfsetobaud; cfsetbaud;
+ }
}
diff --git a/termios/baud.c b/termios/baud.c
new file mode 100644
index 0000000..27c06e9
--- /dev/null
+++ b/termios/baud.c
@@ -0,0 +1,56 @@
+/* `struct termios' speed frobnication functions, baud rate wrappers.
+ Any platform which doesn't have Bxxx == xxx for all baud rate
+ constants will need to override this file.
+
+ Copyright (C) 1991-2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <stddef.h>
+#include <errno.h>
+#include <termios.h>
+
+baud_t
+__cfgetobaud (const struct termios *termios_p)
+{
+ return __cfgetospeed (termios_p);
+}
+libc_hidden_def (__cfgetobaud)
+weak_alias (__cfgetobaud, cfgetobaud)
+
+baud_t
+__cfgetibaud (const struct termios *termios_p)
+{
+ return __cfgetispeed (termios_p);
+}
+libc_hidden_def (__cfgetibaud)
+weak_alias (__cfgetibaud, cfgetibaud)
+
+int
+__cfsetobaud (struct termios *termios_p, baud_t baud)
+{
+ return __cfsetospeed (termios_p, baud);
+}
+libc_hidden_def (__cfsetobaud)
+weak_alias (__cfsetobaud, cfsetobaud)
+
+int
+__cfsetibaud (struct termios *termios_p, baud_t baud)
+{
+ return __cfsetispeed (termios_p, baud);
+}
+libc_hidden_def (__cfsetibaud)
+weak_alias (__cfsetibaud, cfsetibaud)
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strcmp-power10.S b/termios/cfsetbaud.c
index 7b45fcd..b76b51e 100644
--- a/sysdeps/powerpc/powerpc64/multiarch/strcmp-power10.S
+++ b/termios/cfsetbaud.c
@@ -1,5 +1,4 @@
-/* Optimized strcmp implementation for POWER10/PPC64.
- Copyright (C) 2021-2025 Free Software Foundation, Inc.
+/* Copyright (C) 1992-2025 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -16,11 +15,15 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
-#if defined __LITTLE_ENDIAN__ && IS_IN (libc)
-#define STRCMP __strcmp_power10
+#include <termios.h>
+#include <errno.h>
+#include <stddef.h>
-#undef libc_hidden_builtin_def
-#define libc_hidden_builtin_def(name)
-
-#include <sysdeps/powerpc/powerpc64/le/power10/strcmp.S>
-#endif /* __LITTLE_ENDIAN__ && IS_IN (libc) */
+/* Set both the input and output baud rates stored in *TERMIOS_P to BAUD. */
+int
+__cfsetbaud (struct termios *termios_p, baud_t baud)
+{
+ return __cfsetspeed (termios_p, baud);
+}
+libc_hidden_def (__cfsetbaud)
+weak_alias (__cfsetbaud, cfsetbaud)
diff --git a/termios/cfsetspeed.c b/termios/cfsetspeed.c
index 053e394..a68e63a 100644
--- a/termios/cfsetspeed.c
+++ b/termios/cfsetspeed.c
@@ -19,143 +19,17 @@
#include <errno.h>
#include <stddef.h>
-struct speed_struct
-{
- speed_t value;
- speed_t internal;
-};
-
-static const struct speed_struct speeds[] =
- {
-#ifdef B0
- { 0, B0 },
-#endif
-#ifdef B50
- { 50, B50 },
-#endif
-#ifdef B75
- { 75, B75 },
-#endif
-#ifdef B110
- { 110, B110 },
-#endif
-#ifdef B134
- { 134, B134 },
-#endif
-#ifdef B150
- { 150, B150 },
-#endif
-#ifdef B200
- { 200, B200 },
-#endif
-#ifdef B300
- { 300, B300 },
-#endif
-#ifdef B600
- { 600, B600 },
-#endif
-#ifdef B1200
- { 1200, B1200 },
-#endif
-#ifdef B1200
- { 1200, B1200 },
-#endif
-#ifdef B1800
- { 1800, B1800 },
-#endif
-#ifdef B2400
- { 2400, B2400 },
-#endif
-#ifdef B4800
- { 4800, B4800 },
-#endif
-#ifdef B9600
- { 9600, B9600 },
-#endif
-#ifdef B19200
- { 19200, B19200 },
-#endif
-#ifdef B38400
- { 38400, B38400 },
-#endif
-#ifdef B57600
- { 57600, B57600 },
-#endif
-#ifdef B76800
- { 76800, B76800 },
-#endif
-#ifdef B115200
- { 115200, B115200 },
-#endif
-#ifdef B153600
- { 153600, B153600 },
-#endif
-#ifdef B230400
- { 230400, B230400 },
-#endif
-#ifdef B307200
- { 307200, B307200 },
-#endif
-#ifdef B460800
- { 460800, B460800 },
-#endif
-#ifdef B500000
- { 500000, B500000 },
-#endif
-#ifdef B576000
- { 576000, B576000 },
-#endif
-#ifdef B921600
- { 921600, B921600 },
-#endif
-#ifdef B1000000
- { 1000000, B1000000 },
-#endif
-#ifdef B1152000
- { 1152000, B1152000 },
-#endif
-#ifdef B1500000
- { 1500000, B1500000 },
-#endif
-#ifdef B2000000
- { 2000000, B2000000 },
-#endif
-#ifdef B2500000
- { 2500000, B2500000 },
-#endif
-#ifdef B3000000
- { 3000000, B3000000 },
-#endif
-#ifdef B3500000
- { 3500000, B3500000 },
-#endif
-#ifdef B4000000
- { 4000000, B4000000 },
-#endif
- };
-
-
/* Set both the input and output baud rates stored in *TERMIOS_P to SPEED. */
int
-cfsetspeed (struct termios *termios_p, speed_t speed)
+__cfsetspeed (struct termios *termios_p, speed_t speed)
{
- size_t cnt;
-
- for (cnt = 0; cnt < sizeof (speeds) / sizeof (speeds[0]); ++cnt)
- if (speed == speeds[cnt].internal)
- {
- cfsetispeed (termios_p, speed);
- cfsetospeed (termios_p, speed);
- return 0;
- }
- else if (speed == speeds[cnt].value)
- {
- cfsetispeed (termios_p, speeds[cnt].internal);
- cfsetospeed (termios_p, speeds[cnt].internal);
- return 0;
- }
+ int rv;
- __set_errno (EINVAL);
+ rv = __cfsetospeed (termios_p, speed);
+ if (rv)
+ return rv;
- return -1;
+ return __cfsetispeed (termios_p, speed);
}
+libc_hidden_def (__cfsetspeed)
+weak_alias (__cfsetspeed, cfsetspeed)
diff --git a/io/isatty.c b/termios/isatty.c
index 3f3912d..3f3912d 100644
--- a/io/isatty.c
+++ b/termios/isatty.c
diff --git a/termios/isatty_nostatus.c b/termios/isatty_nostatus.c
new file mode 100644
index 0000000..e8ee796
--- /dev/null
+++ b/termios/isatty_nostatus.c
@@ -0,0 +1,29 @@
+/* Copyright (C) 1991-2025 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <errno.h>
+#include <unistd.h>
+
+/* Return 1 if FD is a terminal, 0 if not, without changing errno */
+int
+__isatty_nostatus (int fd)
+{
+ int save_errno = errno;
+ int res = __isatty (fd);
+ __set_errno (save_errno);
+ return res;
+}
diff --git a/termios/speed.c b/termios/speed.c
index d65bf03..5030621 100644
--- a/termios/speed.c
+++ b/termios/speed.c
@@ -22,21 +22,25 @@
/* Return the output baud rate stored in *TERMIOS_P. */
speed_t
-cfgetospeed (const struct termios *termios_p)
+__cfgetospeed (const struct termios *termios_p)
{
return termios_p->__ospeed;
}
+libc_hidden_def (__cfgetospeed)
+weak_alias (__cfgetospeed, cfgetospeed)
/* Return the input baud rate stored in *TERMIOS_P. */
speed_t
-cfgetispeed (const struct termios *termios_p)
+__cfgetispeed (const struct termios *termios_p)
{
return termios_p->__ispeed;
}
+libc_hidden_def (__cfgetispeed)
+weak_alias (__cfgetispeed, cfgetispeed)
/* Set the output baud rate stored in *TERMIOS_P to SPEED. */
int
-cfsetospeed (struct termios *termios_p, speed_t speed)
+__cfsetospeed (struct termios *termios_p, speed_t speed)
{
if (termios_p == NULL)
{
@@ -47,11 +51,12 @@ cfsetospeed (struct termios *termios_p, speed_t speed)
termios_p->__ospeed = speed;
return 0;
}
-libc_hidden_def (cfsetospeed)
+libc_hidden_def (__cfsetospeed)
+weak_alias (__cfsetospeed, cfsetospeed)
/* Set the input baud rate stored in *TERMIOS_P to SPEED. */
int
-cfsetispeed (struct termios *termios_p, speed_t speed)
+__cfsetispeed (struct termios *termios_p, speed_t speed)
{
if (termios_p == NULL)
{
@@ -62,4 +67,5 @@ cfsetispeed (struct termios *termios_p, speed_t speed)
termios_p->__ispeed = speed;
return 0;
}
-libc_hidden_def (cfsetispeed)
+libc_hidden_def (__cfsetispeed)
+weak_alias (__cfsetispeed, cfsetispeed)
diff --git a/termios/sys/ttychars.h b/termios/sys/ttychars.h
index 7043f60..eb1a815 100644
--- a/termios/sys/ttychars.h
+++ b/termios/sys/ttychars.h
@@ -54,8 +54,4 @@ struct ttychars {
char tc_lnextc; /* literal next character */
};
-#ifdef __USE_OLD_TTY
-#include <sys/ttydefaults.h> /* to pick up character defaults */
-#endif
-
#endif /* sys/ttychars.h */
diff --git a/termios/tcsetattr.c b/termios/tcsetattr.c
index 30bc6d6..f0756be 100644
--- a/termios/tcsetattr.c
+++ b/termios/tcsetattr.c
@@ -23,7 +23,7 @@ static int bad_speed (speed_t speed);
/* Set the state of FD to *TERMIOS_P. */
int
-tcsetattr (int fd, int optional_actions, const struct termios *termios_p)
+__tcsetattr (int fd, int optional_actions, const struct termios *termios_p)
{
if (fd < 0)
{
@@ -57,7 +57,8 @@ tcsetattr (int fd, int optional_actions, const struct termios *termios_p)
__set_errno (ENOSYS);
return -1;
}
-libc_hidden_def (tcsetattr)
+libc_hidden_def (__tcsetattr)
+weak_alias (__tcsetattr, tcsetattr)
/* Strychnine checking. */
static int
diff --git a/termios/termios.h b/termios/termios.h
index 1755c50..91cbe87 100644
--- a/termios/termios.h
+++ b/termios/termios.h
@@ -61,6 +61,26 @@ extern int cfsetispeed (struct termios *__termios_p, speed_t __speed) __THROW;
extern int cfsetspeed (struct termios *__termios_p, speed_t __speed) __THROW;
#endif
+#ifdef __USE_GNU
+/* Interfaces that are explicitly numeric representations of baud rates */
+typedef speed_t baud_t;
+#define BAUD_MAX SPEED_MAX
+
+/* Return the output baud rate stored in *TERMIOS_P. */
+extern baud_t cfgetobaud (const struct termios *__termios_p) __THROW;
+
+/* Return the input baud rate stored in *TERMIOS_P. */
+extern baud_t cfgetibaud (const struct termios *__termios_p) __THROW;
+
+/* Set the output baud rate stored in *TERMIOS_P to BAUD. */
+extern int cfsetobaud (struct termios *__termios_p, baud_t __baud) __THROW;
+
+/* Set the input baud rate stored in *TERMIOS_P to BAUD. */
+extern int cfsetibaud (struct termios *__termios_p, baud_t __baud) __THROW;
+
+/* Set both the input and output baud rates in *TERMIOS_OP to BAUD. */
+extern int cfsetbaud (struct termios *__termios_p, baud_t __baud) __THROW;
+#endif
/* Put the state of FD into *TERMIOS_P. */
extern int tcgetattr (int __fd, struct termios *__termios_p) __THROW;
diff --git a/time/strftime_l.c b/time/strftime_l.c
index f51d926..5cb5f5d 100644
--- a/time/strftime_l.c
+++ b/time/strftime_l.c
@@ -40,6 +40,7 @@
#endif
#include <ctype.h>
+#include <errno.h>
#include <sys/types.h> /* Some systems define `time_t' here. */
#ifdef TIME_WITH_SYS_TIME
diff --git a/timezone/tst-bz28707.c b/timezone/tst-bz28707.c
index a5723f4..a03cd1f 100644
--- a/timezone/tst-bz28707.c
+++ b/timezone/tst-bz28707.c
@@ -15,10 +15,11 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
-#include <time.h>
+#include <errno.h>
#include <stdio.h>
#include <stdlib.h>
-#include <string.h>
+#include <support/check.h>
+#include <time.h>
/* Test that we can use a truncated timezone-file, where the time-type
at index 0 is not indexed by the transition-types array (and the
@@ -28,19 +29,24 @@
static int
do_test (void)
{
- if (setenv ("TZ", "XT5", 1))
- {
- puts ("setenv failed.");
- return 1;
- }
+ if (setenv ("TZ", "XT5", 1) != 0)
+ FAIL_EXIT1 ("setenv: %m");
+ errno = 0;
tzset ();
-
- return
- /* Sanity-check that we got the right abbreviation for DST. For
- normal time, we're likely to get "-00" (the "unspecified" marker),
- even though the POSIX timezone string says "-04". Let's not test
- that. */
- !(strcmp (tzname[1], "-03") == 0);
+ if (errno != 0)
+ /* This is not a test failure because checking errno this way is
+ not a documented way for determining tzset success. We do this
+ only to gather additional diagnostics. */
+ printf ("warning: tzset set errno to %d (%m)", errno);
+
+ /* Sanity-check that we got the right abbreviation for DST. For
+ normal time, we're likely to get "-00" (the "unspecified" marker),
+ even though the POSIX timezone string says "-04". Let's not test
+ that. */
+ TEST_COMPARE_STRING (tzname[1], "-03");
+
+ return 0;
}
+
#include <support/test-driver.c>
diff --git a/version.h b/version.h
index abc0364..c5dcdde 100644
--- a/version.h
+++ b/version.h
@@ -1,4 +1,4 @@
/* This file just defines the current version number of libc. */
#define RELEASE "development"
-#define VERSION "2.41.9000"
+#define VERSION "2.42.9000"